From f529cf225f2e37f68d9d223e54f6636ebcdfba05 Mon Sep 17 00:00:00 2001 From: David Baldwynn Date: Thu, 5 Oct 2017 04:19:13 -0400 Subject: [PATCH] sped up rendering of form submission page --- app/controllers/forms.server.controller.js | 29 +- app/models/form_submission.server.model.js | 11 +- app/routes/forms.server.routes.js | 8 +- app/views/form.server.view.html | 73 +- app/views/layout.server.view.html | 5 + config/env/all.js | 12 +- config/express.js | 9 +- gruntfile.js | 6 +- public/dist/application.js | 20 +- public/dist/application.min.css | 2 +- public/dist/application.min.js | 6 +- public/dist/form-application.js | 18 +- public/dist/form-application.min.js | 4 +- public/dist/form_populate_template_cache.js | 2 +- public/dist/vendor.min.js | 1170 +---------------- .../submit-form.client.directive.js | 16 + .../form/submit-form.client.view.html | 12 +- .../edit-submissions-form.client.directive.js | 2 +- public/modules/forms/base/css/form.css | 2 +- 19 files changed, 155 insertions(+), 1252 deletions(-) diff --git a/app/controllers/forms.server.controller.js b/app/controllers/forms.server.controller.js index d425544c..1b83a154 100644 --- a/app/controllers/forms.server.controller.js +++ b/app/controllers/forms.server.controller.js @@ -46,17 +46,16 @@ exports.deleteSubmissions = function(req, res) { * Submit a form entry */ exports.createSubmission = function(req, res) { - var form = req.form; var timeElapsed = 0; - + + console.log(req.body); if(typeof req.body.timeElapsed === 'number'){ timeElapsed = req.body.timeElapsed; } var submission = new FormSubmission({ - admin: form.admin._id, - form: form._id, - title: form.title, + form: req.body._id, + title: req.body.title, form_fields: req.body.form_fields, timeElapsed: timeElapsed, percentageComplete: req.body.percentageComplete, @@ -73,8 +72,8 @@ exports.createSubmission = function(req, res) { message: errorHandler.getErrorMessage(err) }); } - - form.submissions.push(submission); + res.status(200).send('Form submission successfully saved'); + /*form.submissions.push(submission); form.save(function (err) { if (err) { @@ -84,7 +83,7 @@ exports.createSubmission = function(req, res) { }); } res.status(200).send('Form submission successfully saved'); - }); + });*/ }); }; @@ -94,10 +93,10 @@ exports.createSubmission = function(req, res) { exports.listSubmissions = function(req, res) { var _form = req.form; - FormSubmission.find({ form: _form._id }).exec(function(err, _submissions) { + FormSubmission.find({ form: _form._id }).sort('-created').lean().exec(function(err, _submissions) { if (err) { console.error(err); - res.status(400).send({ + res.status(500).send({ message: errorHandler.getErrorMessage(err) }); } @@ -172,9 +171,6 @@ var readForRender = exports.readForRender = function(req, res) { }); } - delete newForm.submissions; - //delete newForm.analytics; - delete newForm.admin; delete newForm.lastModified; delete newForm.__v; delete newForm.created; @@ -190,7 +186,7 @@ var readForRender = exports.readForRender = function(req, res) { * Update a form */ exports.update = function(req, res) { - var form = req.form; + var form = req.form; var updatedForm = req.body.form; delete updatedForm.__v; @@ -326,10 +322,9 @@ exports.formByIDFast = function(req, res, next, id) { }); } Form.findById(id) - .select('title language form_fields startPage endPage hideFooter isLive design admin analytics.gaCode') - .populate('admin') - .cache() .lean() + .cache() + .select('title language form_fields startPage endPage hideFooter isLive design analytics.gaCode') .exec(function(err, form) { if (err) { return next(err); diff --git a/app/models/form_submission.server.model.js b/app/models/form_submission.server.model.js index 3b420f11..cf213bb8 100644 --- a/app/models/form_submission.server.model.js +++ b/app/models/form_submission.server.model.js @@ -16,12 +16,6 @@ var FormSubmissionSchema = new Schema({ type: String }, - admin: { - type: Schema.Types.ObjectId, - ref: 'User', - required: true - }, - form_fields: [FieldSchema], form: { @@ -59,20 +53,19 @@ var FormSubmissionSchema = new Schema({ }); FormSubmissionSchema.pre('save', function (next) { - //Iterate through form fields and format data + //Iterate through form fields and format data for(var i = 0; i < this.form_fields.length; i++){ if(this.form_fields[i].fieldType === 'dropdown'){ this.form_fields[i].fieldValue = this.form_fields[i].fieldValue.option_value; } } - next(); + next(); }); FormSubmissionSchema.path('form_fields', { set: function(form_fields){ for (var i = 0; i < form_fields.length; i++) { form_fields[i].isSubmission = true; - form_fields[i].submissionId = form_fields[i]._id; form_fields[i]._id = new mongoose.mongo.ObjectID(); } return form_fields; diff --git a/app/routes/forms.server.routes.js b/app/routes/forms.server.routes.js index ce9b62dc..5695ae01 100644 --- a/app/routes/forms.server.routes.js +++ b/app/routes/forms.server.routes.js @@ -14,19 +14,22 @@ module.exports = function(app) { app.route('/subdomain/:userSubdomain((?!api$)[A-Za-z0-9]+)/') .get(core.form); - app.route('/subdomain/:userSubdomain((?!api$)[A-Za-z0-9]+)/forms/:formId([a-zA-Z0-9]+)') + app.route('/subdomain/:userSubdomain((?!api$)[A-Za-z0-9]+)/forms/([a-zA-Z0-9]+)') .post(forms.createSubmission); app.route('/subdomain/:userSubdomain((?!api$)[A-Za-z0-9]+)/forms/:formIdFast([a-zA-Z0-9]+)/render') .get(forms.readForRender); app.route('/forms/:formId([a-zA-Z0-9]+)/render') - .put(auth.isAuthenticatedOrApiKey, forms.hasAuthorization, forms.readForRender) .get(auth.isAuthenticatedOrApiKey, forms.hasAuthorization, forms.readForRender); } else { app.route('/forms/:formIdFast([a-zA-Z0-9]+)/render') .get(forms.readForRender); } + + app.route('/forms/:formIdFast([a-zA-Z0-9]+)') + .post(forms.createSubmission) + app.route('/forms') .get(auth.isAuthenticatedOrApiKey, forms.list) .post(auth.isAuthenticatedOrApiKey, forms.create); @@ -46,4 +49,5 @@ module.exports = function(app) { // Fast formId middleware app.param('formIdFast', forms.formByIDFast); + }; diff --git a/app/views/form.server.view.html b/app/views/form.server.view.html index 0bc127bd..a0b0b4cd 100644 --- a/app/views/form.server.view.html +++ b/app/views/form.server.view.html @@ -43,32 +43,9 @@ } - - - - - - {% for bowerCssFile in bowerCssFiles %} - - {% endfor %} - - - - - - - {% for cssFile in cssFiles %} - - {% endfor %} - - - - - + + + + + + + {% for bowerCssFile in bowerCssFiles %} + + {% endfor %} + + + + + + + {% for cssFile in cssFiles %} + + {% endfor %} + + + + - + {% for jsFile in formJSFiles %} @@ -124,11 +116,12 @@ {% endif %} - - + {% endif %} + + diff --git a/app/views/layout.server.view.html b/app/views/layout.server.view.html index 52c92a11..4bbef45c 100755 --- a/app/views/layout.server.view.html +++ b/app/views/layout.server.view.html @@ -126,6 +126,11 @@ ga('send', 'pageview'); + + diff --git a/config/env/all.js b/config/env/all.js index 691880e4..2651bae1 100755 --- a/config/env/all.js +++ b/config/env/all.js @@ -14,11 +14,6 @@ module.exports = { pass: '' } }, - aws: { - 'accessKeyId': process.env.AWS_ACCESS_ID, - 'secretAccessKey': process.env.AWS_SECRET_KEY, - 'region': process.env.AWS_REGION - }, port: process.env.PORT || 3000, socketPort: process.env.SOCKET_PORT || 20523, @@ -32,11 +27,6 @@ module.exports = { baseUrl: '', tempUserCollection: 'temporary_users', - mailosaur: { - key: process.env.MAILOSAUR_KEY || '', - mailbox_id: process.env.MAILOSAUR_MAILBOX || '' - }, - subdomainsDisabled: (process.env.SUBDOMAINS_DISABLED === 'TRUE'), //Sentry DSN Client Key @@ -44,7 +34,7 @@ module.exports = { // The secret should be set to a non-guessable string that // is used to compute a session hash - sessionSecret: 'MEAN', + sessionSecret: process.env.SESSION_SECRET || 'CHANGE_ME_PLEASE', // The name of the MongoDB collection to store sessions in sessionCollection: 'sessions', // The session cookie settings diff --git a/config/express.js b/config/express.js index ae850b44..84301c80 100755 --- a/config/express.js +++ b/config/express.js @@ -27,7 +27,7 @@ var fs = require('fs-extra'), var mongoose = require('mongoose'); var cacheOpts = { - max:1000, + max:100000, maxAge:1000*60 }; @@ -201,6 +201,7 @@ module.exports = function(db) { app.set('view cache', false); } else if (process.env.NODE_ENV === 'production') { app.locals.cache = 'memory'; + app.set('view cache', true); } // Request body parsing middleware should be above methodOverride @@ -294,16 +295,16 @@ module.exports = function(db) { // Log it client.captureError(err); - if(process.env.NODE_ENV === 'production'){ + /*if(process.env.NODE_ENV === 'production'){ res.status(500).render('500', { error: 'Internal Server Error' }); - } else { + } else {*/ // Error page res.status(500).render('500', { error: err.stack }); - } + //} }); // Assume 404 since no middleware responded diff --git a/gruntfile.js b/gruntfile.js index 14798ebc..7fb0d3bc 100755 --- a/gruntfile.js +++ b/gruntfile.js @@ -120,10 +120,10 @@ module.exports = function(grunt) { productionForms: { options: { mangled: true, - beautify: true + compress: true }, files: { - 'public/dist/vendor_forms_uglified.js': bowerArray + 'public/dist/vendor.min.js': bowerArray } } }, @@ -367,7 +367,7 @@ module.exports = function(grunt) { grunt.registerTask('lint:tests', ['jshint:allTests']); // Build task(s). - grunt.registerTask('build', ['lint', 'loadConfig', 'cssmin', 'ngAnnotate', 'uglify', 'closure-compiler', 'html2js:main', 'html2js:forms']); + grunt.registerTask('build', ['lint', 'loadConfig', 'cssmin', 'ngAnnotate', 'uglify', 'html2js:main', 'html2js:forms']); //Setup task(s). grunt.registerTask('setup', ['execute']); diff --git a/public/dist/application.js b/public/dist/application.js index 787f57ab..88301b7d 100644 --- a/public/dist/application.js +++ b/public/dist/application.js @@ -645,7 +645,7 @@ angular.module('TellForm.templates', []).run(['$templateCache', function($templa $templateCache.put("form_modules/forms/base/views/directiveViews/field/yes_no.html", "

{{index+1}} {{field.title}} {{ 'OPTIONAL' | translate }}

{{field.description}}


"); $templateCache.put("form_modules/forms/base/views/directiveViews/form/submit-form.client.view.html", - "

{{myform.startPage.introTitle}}

{{myform.startPage.introParagraph}}

{{ 'COMPLETING_NEEDED' | translate:translateAdvancementData }}
{{ 'ENTER' | translate }}

{{ 'ADVANCEMENT' | translate:translateAdvancementData }}

{{ 'FORM_SUCCESS' | translate }}

{{myform.endPage.title}}

{{myform.endPage.paragraph}}

"); + "

{{myform.startPage.introTitle}}

{{myform.startPage.introParagraph}}

{{ 'COMPLETING_NEEDED' | translate:translateAdvancementData }}
{{ 'ENTER' | translate }}

{{ 'ADVANCEMENT' | translate:translateAdvancementData }}

{{ 'FORM_SUCCESS' | translate }}

{{myform.endPage.title}}

{{myform.endPage.paragraph}}

"); $templateCache.put("form_modules/forms/base/views/form-unauthorized.client.view.html", "

Not Authorized to Access Form

The form you are trying to access is currently private and not accesible publically.
If you are the owner of the form, you can set it to \"Public\" in the \"Configuration\" panel in the form admin.
"); $templateCache.put("form_modules/forms/base/views/submit-form.client.view.html", @@ -2507,7 +2507,7 @@ angular.module('forms').directive('editSubmissionsFormDirective', ['$rootScope', rows: [] }; - var submissions = $scope.myform.submissions || []; + var submissions = $scope.myform.submissions || []; //Iterate through form's submissions for(var i = 0; i < submissions.length; i++){ @@ -4459,14 +4459,30 @@ angular.module('view-form').directive('submitFormDirective', ['$http', 'TimeCoun form.timeElapsed = _timeElapsed; form.percentageComplete = $filter('formValidity')($scope.myform) / $scope.myform.visible_form_fields.length * 100; + delete form.endPage + delete form.isLive + delete form.provider + delete form.startPage delete form.visible_form_fields; delete form.analytics; delete form.design; delete form.submissions; + delete form.submitted; for(var i=0; i < $scope.myform.form_fields.length; i++){ if($scope.myform.form_fields[i].fieldType === 'dropdown' && !$scope.myform.form_fields[i].deletePreserved){ $scope.myform.form_fields[i].fieldValue = $scope.myform.form_fields[i].fieldValue.option_value; } + + //Get rid of unnessecary attributes for each form field + delete form.form_fields[i].submissionId; + delete form.form_fields[i].disabled; + delete form.form_fields[i].ratingOptions; + delete form.form_fields[i].fieldOptions; + delete form.form_fields[i].logicJump; + delete form.form_fields[i].description; + delete form.form_fields[i].validFieldTypes; + delete form.form_fields[i].fieldType; + } setTimeout(function () { diff --git a/public/dist/application.min.css b/public/dist/application.min.css index 6176fa9e..fe5c55a6 100644 --- a/public/dist/application.min.css +++ b/public/dist/application.min.css @@ -1,4 +1,4 @@ .navbar,.navbar-nav,.navbar-nav>li{min-height:60px}.image-background,.opacity-background{position:fixed;height:100%;width:100%;top:0;left:0}.btn-rounded,.field-title-row,section.auth .btn{text-transform:uppercase}.form-item .title-row>.list-group-item-heading{color:#34628a}.form-item.paused .title-row>.list-group-item-heading,.form-item:hover .title-row>.list-group-item-heading{color:#fff}.form-item:hover .title-row{text-decoration:none}body{overflow-x:hidden;font-family:'Source Sans Pro',sans-serif;font-size:16px}.vcenter{display:inline-block;vertical-align:middle;float:none}.btn-rounded{border-radius:100px;font-size:14px;padding:10px 28px;margin:1em 2px 0;text-decoration:none!important}.current-fields .panel-heading a:hover,.current-fields .tool-panel.panel .panel-heading a:hover,.footer-basic-centered .footer-links a,.undecorated-link:hover{text-decoration:none}.btn-secondary{background:#DDD;color:#4c4c4c;border:2px solid #4c4c4c}.btn-secondary:hover{background:#cacaca;border-color:#cacaca}.navbar{padding:10px 0}.navbar-inverse{background-color:#3FA2F7;border:0;color:#fff!important}.navbar .navbar-brand{min-height:60px;padding:10px}.navbar-nav>li>a{padding-top:20px;color:#fff}.navbar-nav>li.active,.navbar-nav>li:hover{background-color:#4b7096}.navbar-inverse .navbar-nav>.open>a,.navbar-inverse .navbar-nav>.open>a:focus,.navbar-inverse .navbar-nav>.open>a:hover{background-color:transparent;color:inherit;border:none}.navbar-inverse .navbar-nav>li>a{color:#fff}.navbar li.dropdown a.dropdown-toggle:hover>*{color:#f9f9f9}.navbar-inverse .navbar-toggle{border:none}.ng-cloak,.x-ng-cloak,[data-ng-cloak],[ng-cloak],[ng\:cloak],[x-ng-cloak]{display:none!important}.dropdown-menu>li>a{color:#515151}section.hero-section{width:100%}section.hero-section .jumbotron{background-color:transparent;color:#fff}.image-background{z-index:-98;background-image:url(http://yourplaceandmine.ie/wp-content/uploads/2014/09/Daingean-meeting-048_13-1080x675.jpg);background-repeat:no-repeat;background-position:0 50%;background-size:cover}.opacity-background{background-color:#000;background-color:rgba(0,0,0,.5);z-index:-97}section.hero-section .jumbotron .signup-btn{background-color:#FA787E;border:none;font-size:2em;padding:.3em .9em;color:#fff}.footer-basic-centered{background-color:#292c2f;box-shadow:0 1px 1px 0 rgba(0,0,0,.12);box-sizing:border-box;width:100%;text-align:center;font:400 18px sans-serif;padding:45px;margin-top:80px}.footer-basic-centered .footer-company-motto{color:#8d9093;font-size:24px;margin:0}.footer-basic-centered .footer-company-name{color:#8f9296;font-size:14px;margin:0}.footer-basic-centered .footer-links{list-style:none;font-weight:700;color:#fff;padding:35px 0 23px;margin:0}.footer-basic-centered .footer-links a{display:inline-block;color:inherit}@media (max-width:600px){.footer-basic-centered{padding:35px}.footer-basic-centered .footer-company-motto{font-size:18px}.footer-basic-centered .footer-company-name{font-size:12px}.footer-basic-centered .footer-links{font-size:14px;padding:25px 0 20px}.footer-basic-centered .footer-links a{line-height:1.8}}/*! * "Fork me on GitHub" CSS ribbon v0.1.1 | MIT License * https://github.com/simonwhitaker/github-fork-ribbon-css -*/.github-fork-ribbon{position:absolute;padding:2px 0;background-color:#a00;background-image:-webkit-gradient(linear,left top,left bottom,from(rgba(0,0,0,0)),to(rgba(0,0,0,.15)));background-image:-webkit-linear-gradient(top,rgba(0,0,0,0),rgba(0,0,0,.15));background-image:-moz-linear-gradient(top,rgba(0,0,0,0),rgba(0,0,0,.15));background-image:-ms-linear-gradient(top,rgba(0,0,0,0),rgba(0,0,0,.15));background-image:-o-linear-gradient(top,rgba(0,0,0,0),rgba(0,0,0,.15));background-image:linear-gradient(to bottom,rgba(0,0,0,0),rgba(0,0,0,.15));-webkit-box-shadow:0 2px 3px 0 rgba(0,0,0,.5);-moz-box-shadow:0 2px 3px 0 rgba(0,0,0,.5);box-shadow:0 2px 3px 0 rgba(0,0,0,.5);font:700 13px "Helvetica Neue",Helvetica,Arial,sans-serif;z-index:9999;pointer-events:auto}.github-fork-ribbon a,.github-fork-ribbon a:hover{color:#fff;text-decoration:none;text-shadow:0 -1px rgba(0,0,0,.5);text-align:center;width:200px;line-height:20px;display:inline-block;padding:2px 0;border-width:1px 0;border-style:dotted;border-color:#fff;border-color:rgba(255,255,255,.7)}.github-fork-ribbon-wrapper{width:150px;height:150px;position:absolute;overflow:hidden;top:0;z-index:9998;pointer-events:none}.github-fork-ribbon-wrapper.fixed{position:fixed}.github-fork-ribbon-wrapper.left{left:0}.github-fork-ribbon-wrapper.right{right:0}.github-fork-ribbon-wrapper.left-bottom{position:fixed;top:inherit;bottom:0;left:0}.github-fork-ribbon-wrapper.right-bottom{position:fixed;top:inherit;bottom:0;right:0}.github-fork-ribbon-wrapper.right .github-fork-ribbon{top:42px;right:-43px;-webkit-transform:rotate(45deg);-moz-transform:rotate(45deg);-ms-transform:rotate(45deg);-o-transform:rotate(45deg);transform:rotate(45deg)}.github-fork-ribbon-wrapper.left .github-fork-ribbon{top:42px;left:-43px;-webkit-transform:rotate(-45deg);-moz-transform:rotate(-45deg);-ms-transform:rotate(-45deg);-o-transform:rotate(-45deg);transform:rotate(-45deg)}.github-fork-ribbon-wrapper.left-bottom .github-fork-ribbon{top:80px;left:-43px;-webkit-transform:rotate(45deg);-moz-transform:rotate(45deg);-ms-transform:rotate(45deg);-o-transform:rotate(45deg);transform:rotate(45deg)}.github-fork-ribbon-wrapper.right-bottom .github-fork-ribbon{top:80px;right:-43px;-webkit-transform:rotate(-45deg);-moz-transform:rotate(-45deg);-ms-transform:rotate(-45deg);-o-transform:rotate(-45deg);transform:rotate(-45deg)}.custom-select{position:relative;display:block;padding:0}.custom-select select{width:100%;margin:0;background:0 0;border:1px solid transparent;border-radius:0;-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box;appearance:none;-webkit-appearance:none;-moz-appearance:none;font-size:1em;font-family:helvetica,sans-serif;font-weight:700;color:#444;padding:.6em 1.9em .5em .8em;line-height:1.3}.custom-select option,.modal-header{font-weight:400}.custom-select::after{content:"";position:absolute;width:9px;height:8px;top:50%;right:1em;margin-top:-4px;background-image:url(http://filamentgroup.com/files/select-arrow.png);background-repeat:no-repeat;background-size:100%;z-index:2;pointer-events:none}.custom-select:hover{border:1px solid #888}.custom-select select:focus{outline:0;box-shadow:0 0 1px 3px rgba(180,222,250,1);background-color:transparent;color:#222;border:1px solid #aaa}.custom-select::after,x:-o-prefocus{display:none}@media screen and (-ms-high-contrast:active),(-ms-high-contrast:none){.custom-select select::-ms-expand{display:none}.custom-select select:focus::-ms-value{background:0 0;color:#222}}.custom-select select:-moz-focusring{color:transparent;text-shadow:0 0 0 #000}.pull-top{display:inline-block;vertical-align:top;float:none}.nav.nav-pills.nav-stacked,div.tab-content{position:relative;min-height:1px;float:left}.box{padding:0 5px!important}.current-fields .field-row{padding:5px 0}.current-fields .panel{background-color:#f1f1f1;margin-top:0!important}.current-fields .panel:hover{background-color:#fff;cursor:pointer}.current-fields .panel.tool-panel{background-color:#fff}.current-fields .panel-heading{background-color:#f1f1f1;position:relative}.current-fields .panel-heading:hover{background-color:#fff;cursor:pointer}.current-fields .tool-panel.panel:hover{border-color:#9d9d9d;background-color:#eee;cursor:pointer}.current-fields .tool-panel.panel:hover .panel-heading{background-color:inherit;color:#000;cursor:pointer}.current-fields .tool-panel.panel .panel-heading{background-color:#fff;color:#9d9d9d}.current-fields .tool-panel.panel .panel-heading a{color:inherit}.nav.nav-pills.nav-stacked{width:16.66666667%;padding-right:15px}div.tab-content{width:83.33333333%;padding-top:0!important}.panel-default.startPage{border-style:dashed;border-color:#a9a9a9;border-width:3px}.busy-updating-wrapper{text-align:center;font-size:20px;position:fixed;bottom:0;right:55px;z-index:1}.busy-submitting-wrapper{position:fixed;top:50%;left:0;right:0;bottom:0}.dropzone h4.panel-title{height:17px;overflow:hidden}.container.admin-form{margin-top:70px}.edit-modal-window .modal-dialog{width:90%}.edit-modal-window .modal-body{padding:0}.edit-modal-window .edit-panel{background-color:#F1F1F1;padding:0 35px}.edit-modal-window .preview-field-panel{display:flex;flex-direction:column;justify-content:center}.edit-modal-window .preview-field-panel form{padding-right:20px}.edit-modal-window .preview-field{resize:vertical}.admin-form .ui-sortable-placeholder{visibility:visible!important;border:none;padding:1px;background:rgba(0,0,0,.5)!important}.config-form{max-width:100%}.config-form>.row{padding:19px;margin-bottom:20px;background-color:#f5f5f5;border:1px solid #e3e3e3;border-radius:4px;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,.05);-moz-box-shadow:inset 0 1px 1px rgba(0,0,0,.05);box-shadow:inset 0 1px 1px rgba(0,0,0,.05)}div.config-form .row.field{padding-top:1.5em}div.config-form>.row>.container:nth-of-type(odd){border-right:1px #ddd solid}div.config-form.design>.row>.container:nth-of-type(odd){border-right:none}div.config-form .row>.field-input{padding-left:.1em}div.config-form .row>.field-input label{padding-left:1.3em;display:block}.admin-form>.page-header{padding-bottom:0;margin-bottom:40px}.admin-form>.page-header h1{margin-bottom:0;margin-top:0}.admin-form>.page-header>.col-xs-3{padding-top:1.4em}.admin-form .form-controls .row{padding:5px}.admin-form .page-header{border:none;margin-top:none;margin-bottom:none}.admin-form .tab-content{padding-top:3em}.submissions-table .table-outer.row{margin:1.5em 0 2em!important}.submissions-table .table-outer .col-xs-12{padding-left:0!important;border:1px solid #ddd;overflow-x:scroll;border-radius:3px}.submissions-table .table>thead>tr>th{min-width:8em}.submissions-table .table>tbody>tr.selected{background-color:#efefef}.admin-form .add-field{background-color:#ddd;padding:0 2%;border-radius:3px}.admin-form .add-field .col-xs-6{padding:.25em .4em}.admin-form .add-field .col-xs-6 .panel-heading{border-width:1px;border-style:solid;border-color:#bbb;border-radius:4px}.admin-form .oscar-field-select{margin:10px 0}.view-form-btn.span{padding-right:.6em}.status-light.status-light-off{color:#BE0000}.status-light.status-light-on{color:#3C0}.analytics .header-title{font-size:1em;color:#bab8b8}.analytics .header-numbers{font-size:4em;padding-bottom:.1em;margin-bottom:.5em;border-bottom:#fafafa solid 1px}.analytics .detailed-title{font-size:1.8em;margin-bottom:1.1em}.analytics .detailed-row{padding-bottom:.8em}.analytics .detailed-row .row{font-size:1.2em}.analytics .detailed-row .row.header{font-size:.8em;color:#bab8b8;text-transform:uppercase}.field-title-row{padding-top:2em;padding-bottom:1em;border-top:#fafafa solid 1px;font-size:1.2em;color:#bab8b8}.field-detailed-row{font-size:1.2em;padding-bottom:.3em}.table-tools{border-top:#fafafa solid 1px;padding-top:2.5em}.public-form.preview{border:none;box-shadow:0 0 10px 0 grey;overflow-y:scroll;overflow-x:hidden;height:400px;width:90%;position:absolute}.public-form input,.public-form textarea{background-color:#000;background-color:rgba(0,0,0,0);border:2px dashed #ddd!important}.public-form input:focus,.public-form textarea:focus{border:2px dashed #ddd!important;outline:0}.public-form input.ng-valid,.public-form textarea.ng-valid{border-color:#20FF20!important;border-style:solid!important;border-width:3px!important}.public-form input.ng-invalid.ng-dirty,.public-form textarea.ng-invalid.ng-dirty{border-color:#FA787E!important;border-style:solid!important;border-width:3px!important}section.content p.breakwords{word-break:break-all}.public-form .btn{border:1px solid #c6c6c6}.public-form .btn[type=submit]{font-size:1.5em;padding:.35em 1.2em}section.content>section>section.container{margin-top:70px}.modal-header{padding:15px;border-bottom:1px solid #e5e5e5;font-size:18px}.public-form .input-block{display:block;width:100%}.modal-footer input[type=text]{min-height:34px;padding:7px 8px;font-size:13px;color:#333;vertical-align:middle;background-color:#fff;background-repeat:no-repeat;background-position:right 8px center;border:1px solid #ccc;border-radius:3px;box-shadow:inset 0 1px 2px rgba(0,0,0,.075)}.modal-body>.modal-body-alert{color:#796620;background-color:#f8eec7;border-color:#f2e09a;margin:-16px -15px 15px;padding:10px 15px;border-style:solid;border-width:1px 0}div.form-fields{position:relative;padding-top:10%}.public-form .letter{position:relative;display:-moz-inline-stack;display:inline-block;vertical-align:top;zoom:1;width:16px;padding:0;height:17px;font-size:12px;line-height:19px;border:1px solid #000;border:1px solid rgba(0,0,0,.2);margin-right:7px;-webkit-border-radius:3px;-moz-border-radius:3px;border-radius:3px;text-align:center;font-weight:700}div.form-submitted>.field.row{padding-bottom:2%;margin-top:10%}div.form-submitted>.field.row>div{font-size:1.7em}form .accordion-edit{width:inherit}.ui-datepicker.ui-widget{z-index:99!important}form .row.field .field-number{margin-right:.5em}form .row.field{padding:1em 0 0;width:inherit}form .row.field>.field-title{margin-top:.5em;font-size:1.2em;padding-bottom:1.8em;width:inherit}form .row.field>.field-input{font-size:1.4em;color:#777}form.submission-form .row.field.statement>.field-title{font-size:1.7em}form.submission-form .row.field.statement>.field-input{font-size:1em;color:#ddd}form.submission-form .select.radio>.field-input input,form.submission-form .select>.field-input input{width:20%}form.submission-form .field.row.radio .btn.activeBtn{background-color:#000!important;background-color:rgba(0,0,0,.7)!important;color:#fff}form.submission-form .field.row.radio .btn{margin-right:1.2em}form.submission-form .select>.field-input .btn{text-align:left;margin-bottom:.7em}form.submission-form .select>.field-input .btn>span{font-size:1.1em}form .field-input>textarea{padding:.45em .9em;width:100%;line-height:160%}form .field-input>input.hasDatepicker{padding:.45em .9em;width:50%;line-height:160%}form .field-input>input.text-field-input{padding:.45em .9em;width:100%;line-height:160%}form .required-error{color:#ddd;font-size:.8em}form .row.field.dropdown>.field-input input{min-height:34px;border-width:0 0 2px;border-radius:5px}form .row.field.dropdown>.field-input input:focus{border:none}form .dropdown>.field-input .ui-select-choices-row-inner{border-radius:3px;margin:5px;padding:10px;background-color:#000;background-color:rgba(0,0,0,.05)}form .dropdown>.field-input .ui-select-choices-row-inner.active,form .dropdown>.field-input .ui-select-choices-row-inner.active:focus{background-color:#000;background-color:rgba(0,0,0,.1)}.current-fields .panel-body .row.description textarea,.current-fields .panel-body .row.question input[type=text]{width:100%}.current-fields .panel-body .row.options input[type=text]{width:80%}.ui-select-choices.ui-select-dropdown{top:2.5em!important}.ui-select-toggle{box-shadow:none!important;border:none!important}section.public-form{padding:0 10%}section.public-form .form-submitted{height:100%}section.public-form .btn{border:1px solid}.form-item{border-radius:5px;text-align:center;width:180px;position:relative;height:215px;margin-bottom:45px}.form-item.paused{background-color:red;color:#fff}.form-item.paused:hover{background-color:#8b0000;color:#fff}.form-item.create-new input[type=text]{width:inherit;color:#000;border:none}.form-item.create-new{background-color:#3FA2F7;color:#fff}.form-item.create-new.new-form{background-color:#ff8383;z-index:11}.form-item.create-new.new-form:hover{background-color:#3079b5}.form-item.new-form input[type=text]{margin-top:.2em;width:inherit;color:#000;border:none;padding:.3em .6em}.form-item.new-form .custom-select{margin-top:.2em}.form-item.new-form .custom-select select{background-color:#fff}.form-item.new-form .details-row{margin-top:1em}.form-item.new-form .details-row.submit{margin-top:1.7em}.form-item.new-form .details-row.submit .btn{font-size:.95em}.form-item.new-form .title-row{margin-top:1em;top:0}.overlay{position:fixed;top:0;left:0;height:100%;width:100%;background-color:#000;background-color:rgba(0,0,0,.5);z-index:10}.overlay.submitform{background-color:#fff;background-color:rgba(256,256,256,.8)}.activeField,.activeField input{background-color:transparent}.field-directive{z-index:9;padding:10% 10% 10% 0;border:25px solid transparent;position:relative}.activeField{z-index:11;position:relative}.activeField.field-directive{display:inline-block;border-radius:7px;width:100%;border:25px solid transparent}h3.forms-list-title{color:#3FA2F7;font-weight:600;margin-bottom:3em}.form-item{color:#71AADD;background-color:#E4F1FD}.form-item:hover{background-color:#3FA2F7;color:#23527C}.form-item.create-new:hover{color:#fff;background-color:#515151}.form-item>.row.footer{position:absolute;bottom:0;left:30%}.form-item .title-row{position:relative;top:15px;padding-top:3em;padding-bottom:1em}.form-item .title-row h4{font-size:1.3em}.form-item.create-new .title-row{padding:0}.form-item.create-new .title-row h4{font-size:7em}.form-item .details-row{margin-top:3.2em}.form-item .details-row small{font-size:.6em}.form-item.create-new .details-row small{font-size:.95em}section.auth{padding:70px 0;position:absolute;min-height:100%;top:0;left:0;width:100%;color:#fff;background-color:#50B5C1;background:-moz-linear-gradient(137deg,#50B5C1 0,#6450A0 100%);background:-webkit-gradient(linear,left top,left bottom,color-stop(0,#50B5C1),color-stop(100%,#6450A0));background:-webkit-linear-gradient(137deg,#50B5C1 0,#6450A0 100%);background:-o-linear-gradient(137deg,#50B5C1 0,#6450A0 100%);background:-ms-linear-gradient(137deg,#50B5C1 0,#6450A0 100%)}section.auth>h3{font-size:2em;font-weight:500}.valign-wrapper{display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-align-items:center;-ms-flex-align:center;align-items:center}.valign-wrapper .valign{display:block;width:100%}section.auth a{color:#fff;text-decoration:underline}section.auth.signup-view>h3{font-size:3em;padding-bottom:.5em}section.auth form .field-input select{padding:.45em .9em;width:100%;background:0 0;font-size:16px;border:1px solid #ccc;min-height:34px}section.auth input{color:#4c4c4c}section.auth .btn{border-radius:100px;font-size:14px;padding:12px 28px;margin-top:1em}.btn-rounded.btn-signup{background-color:#FFD747;color:#896D0B;border:2px solid #FFD747}.btn-rounded.btn-signup:hover{color:#FFD747;background-color:#896D0B;border:2px solid #896D0B}.btn-rounded.btn-default{background-color:transparent;color:#fff;border:2px solid #fff}.btn-rounded.btn-default:focus,.btn-rounded.btn-default:hover{color:#6450A0;background-color:#fff;border-color:#fff}@media (min-width:992px){.nav-users{position:fixed}}.remove-account-container{display:inline-block;position:relative}.btn-remove-account{top:10px;right:10px;position:absolute}section.auth input.form-control{min-height:30px!important;border:none}input.form-control{height:auto;border-radius:4px;box-shadow:none;font-size:18px;padding:20px 10px}.btn{border:none} \ No newline at end of file +*/.github-fork-ribbon{position:absolute;padding:2px 0;background-color:#a00;background-image:-webkit-gradient(linear,left top,left bottom,from(rgba(0,0,0,0)),to(rgba(0,0,0,.15)));background-image:-webkit-linear-gradient(top,rgba(0,0,0,0),rgba(0,0,0,.15));background-image:-moz-linear-gradient(top,rgba(0,0,0,0),rgba(0,0,0,.15));background-image:-ms-linear-gradient(top,rgba(0,0,0,0),rgba(0,0,0,.15));background-image:-o-linear-gradient(top,rgba(0,0,0,0),rgba(0,0,0,.15));background-image:linear-gradient(to bottom,rgba(0,0,0,0),rgba(0,0,0,.15));-webkit-box-shadow:0 2px 3px 0 rgba(0,0,0,.5);-moz-box-shadow:0 2px 3px 0 rgba(0,0,0,.5);box-shadow:0 2px 3px 0 rgba(0,0,0,.5);font:700 13px "Helvetica Neue",Helvetica,Arial,sans-serif;z-index:9999;pointer-events:auto}.github-fork-ribbon a,.github-fork-ribbon a:hover{color:#fff;text-decoration:none;text-shadow:0 -1px rgba(0,0,0,.5);text-align:center;width:200px;line-height:20px;display:inline-block;padding:2px 0;border-width:1px 0;border-style:dotted;border-color:#fff;border-color:rgba(255,255,255,.7)}.github-fork-ribbon-wrapper{width:150px;height:150px;position:absolute;overflow:hidden;top:0;z-index:9998;pointer-events:none}.github-fork-ribbon-wrapper.fixed{position:fixed}.github-fork-ribbon-wrapper.left{left:0}.github-fork-ribbon-wrapper.right{right:0}.github-fork-ribbon-wrapper.left-bottom{position:fixed;top:inherit;bottom:0;left:0}.github-fork-ribbon-wrapper.right-bottom{position:fixed;top:inherit;bottom:0;right:0}.github-fork-ribbon-wrapper.right .github-fork-ribbon{top:42px;right:-43px;-webkit-transform:rotate(45deg);-moz-transform:rotate(45deg);-ms-transform:rotate(45deg);-o-transform:rotate(45deg);transform:rotate(45deg)}.github-fork-ribbon-wrapper.left .github-fork-ribbon{top:42px;left:-43px;-webkit-transform:rotate(-45deg);-moz-transform:rotate(-45deg);-ms-transform:rotate(-45deg);-o-transform:rotate(-45deg);transform:rotate(-45deg)}.github-fork-ribbon-wrapper.left-bottom .github-fork-ribbon{top:80px;left:-43px;-webkit-transform:rotate(45deg);-moz-transform:rotate(45deg);-ms-transform:rotate(45deg);-o-transform:rotate(45deg);transform:rotate(45deg)}.github-fork-ribbon-wrapper.right-bottom .github-fork-ribbon{top:80px;right:-43px;-webkit-transform:rotate(-45deg);-moz-transform:rotate(-45deg);-ms-transform:rotate(-45deg);-o-transform:rotate(-45deg);transform:rotate(-45deg)}.custom-select{position:relative;display:block;padding:0}.custom-select select{width:100%;margin:0;background:0 0;border:1px solid transparent;border-radius:0;-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box;appearance:none;-webkit-appearance:none;-moz-appearance:none;font-size:1em;font-family:helvetica,sans-serif;font-weight:700;color:#444;padding:.6em 1.9em .5em .8em;line-height:1.3}.custom-select option,.modal-header{font-weight:400}.custom-select::after{content:"";position:absolute;width:9px;height:8px;top:50%;right:1em;margin-top:-4px;background-image:url(http://filamentgroup.com/files/select-arrow.png);background-repeat:no-repeat;background-size:100%;z-index:2;pointer-events:none}.custom-select:hover{border:1px solid #888}.custom-select select:focus{outline:0;box-shadow:0 0 1px 3px rgba(180,222,250,1);background-color:transparent;color:#222;border:1px solid #aaa}.custom-select::after,x:-o-prefocus{display:none}@media screen and (-ms-high-contrast:active),(-ms-high-contrast:none){.custom-select select::-ms-expand{display:none}.custom-select select:focus::-ms-value{background:0 0;color:#222}}.custom-select select:-moz-focusring{color:transparent;text-shadow:0 0 0 #000}.pull-top{display:inline-block;vertical-align:top;float:none}.nav.nav-pills.nav-stacked,div.tab-content{position:relative;min-height:1px;float:left}.box{padding:0 5px!important}.current-fields .field-row{padding:5px 0}.current-fields .panel{background-color:#f1f1f1;margin-top:0!important}.current-fields .panel:hover{background-color:#fff;cursor:pointer}.current-fields .panel.tool-panel{background-color:#fff}.current-fields .panel-heading{background-color:#f1f1f1;position:relative}.current-fields .panel-heading:hover{background-color:#fff;cursor:pointer}.current-fields .tool-panel.panel:hover{border-color:#9d9d9d;background-color:#eee;cursor:pointer}.current-fields .tool-panel.panel:hover .panel-heading{background-color:inherit;color:#000;cursor:pointer}.current-fields .tool-panel.panel .panel-heading{background-color:#fff;color:#9d9d9d}.current-fields .tool-panel.panel .panel-heading a{color:inherit}.nav.nav-pills.nav-stacked{width:16.66666667%;padding-right:15px}div.tab-content{width:83.33333333%;padding-top:0!important}.panel-default.startPage{border-style:dashed;border-color:#a9a9a9;border-width:3px}.busy-updating-wrapper{text-align:center;font-size:20px;position:fixed;bottom:0;right:55px;z-index:1}.busy-submitting-wrapper{position:fixed;top:50%;left:0;right:0;bottom:0}.dropzone h4.panel-title{height:17px;overflow:hidden}.container.admin-form{margin-top:70px}.edit-modal-window .modal-dialog{width:90%}.edit-modal-window .modal-body{padding:0}.edit-modal-window .edit-panel{background-color:#F1F1F1;padding:0 35px}.edit-modal-window .preview-field-panel{display:flex;flex-direction:column;justify-content:center}.edit-modal-window .preview-field-panel form{padding-right:20px}.edit-modal-window .preview-field{resize:vertical}.admin-form .ui-sortable-placeholder{visibility:visible!important;border:none;padding:1px;background:rgba(0,0,0,.5)!important}.config-form{max-width:100%}.config-form>.row{padding:19px;margin-bottom:20px;background-color:#f5f5f5;border:1px solid #e3e3e3;border-radius:4px;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,.05);-moz-box-shadow:inset 0 1px 1px rgba(0,0,0,.05);box-shadow:inset 0 1px 1px rgba(0,0,0,.05)}div.config-form .row.field{padding-top:1.5em}div.config-form>.row>.container:nth-of-type(odd){border-right:1px #ddd solid}div.config-form.design>.row>.container:nth-of-type(odd){border-right:none}div.config-form .row>.field-input{padding-left:.1em}div.config-form .row>.field-input label{padding-left:1.3em;display:block}.admin-form>.page-header{padding-bottom:0;margin-bottom:40px}.admin-form>.page-header h1{margin-bottom:0;margin-top:0}.admin-form>.page-header>.col-xs-3{padding-top:1.4em}.admin-form .form-controls .row{padding:5px}.admin-form .page-header{border:none;margin-top:none;margin-bottom:none}.admin-form .tab-content{padding-top:3em}.submissions-table .table-outer.row{margin:1.5em 0 2em!important}.submissions-table .table-outer .col-xs-12{padding-left:0!important;border:1px solid #ddd;overflow-x:scroll;border-radius:3px}.submissions-table .table>thead>tr>th{min-width:8em}.submissions-table .table>tbody>tr.selected{background-color:#efefef}.admin-form .add-field{background-color:#ddd;padding:0 2%;border-radius:3px}.admin-form .add-field .col-xs-6{padding:.25em .4em}.admin-form .add-field .col-xs-6 .panel-heading{border-width:1px;border-style:solid;border-color:#bbb;border-radius:4px}.admin-form .oscar-field-select{margin:10px 0}.view-form-btn.span{padding-right:.6em}.status-light.status-light-off{color:#BE0000}.status-light.status-light-on{color:#3C0}.analytics .header-title{font-size:1em;color:#bab8b8}.analytics .header-numbers{font-size:4em;padding-bottom:.1em;margin-bottom:.5em;border-bottom:#fafafa solid 1px}.analytics .detailed-title{font-size:1.8em;margin-bottom:1.1em}.analytics .detailed-row{padding-bottom:.8em}.analytics .detailed-row .row{font-size:1.2em}.analytics .detailed-row .row.header{font-size:.8em;color:#bab8b8;text-transform:uppercase}.field-title-row{padding-top:2em;padding-bottom:1em;border-top:#fafafa solid 1px;font-size:1.2em;color:#bab8b8}.field-detailed-row{font-size:1.2em;padding-bottom:.3em}.table-tools{border-top:#fafafa solid 1px;padding-top:2.5em}.public-form.preview{border:none;box-shadow:0 0 10px 0 grey;overflow-y:scroll;overflow-x:hidden;height:400px;width:90%;position:absolute}.public-form input,.public-form textarea{background-color:#000;background-color:rgba(0,0,0,0);border:2px dashed #ddd!important}.public-form input:focus,.public-form textarea:focus{border:2px dashed #ddd!important;outline:0}.public-form input.ng-valid,.public-form textarea.ng-valid{border-color:#20FF20!important;border-style:solid!important;border-width:3px!important}.public-form input.ng-invalid.ng-dirty,.public-form textarea.ng-invalid.ng-dirty{border-color:#FA787E!important;border-style:solid!important;border-width:3px!important}section.content p.breakwords{word-break:break-all}.public-form .btn{border:1px solid #c6c6c6}.public-form .btn[type=submit]{font-size:1.5em;padding:.35em 1.2em}section.content>section>section.container{margin-top:70px}.modal-header{padding:15px;border-bottom:1px solid #e5e5e5;font-size:18px}.public-form .input-block{display:block;width:100%}.modal-footer input[type=text]{min-height:34px;padding:7px 8px;font-size:13px;color:#333;vertical-align:middle;background-color:#fff;background-repeat:no-repeat;background-position:right 8px center;border:1px solid #ccc;border-radius:3px;box-shadow:inset 0 1px 2px rgba(0,0,0,.075)}.modal-body>.modal-body-alert{color:#796620;background-color:#f8eec7;border-color:#f2e09a;margin:-16px -15px 15px;padding:10px 15px;border-style:solid;border-width:1px 0}div.form-fields{position:relative;padding-top:10%}.public-form .letter{position:relative;display:-moz-inline-stack;display:inline-block;vertical-align:top;zoom:1;width:16px;padding:0;height:17px;font-size:12px;line-height:19px;border:1px solid #000;border:1px solid rgba(0,0,0,.2);margin-right:7px;-webkit-border-radius:3px;-moz-border-radius:3px;border-radius:3px;text-align:center;font-weight:700}div.form-submitted>.field.row{padding-bottom:2%;margin-top:10%}div.form-submitted>.field.row>div{font-size:1.7em}form .accordion-edit{width:inherit}.ui-datepicker.ui-widget{z-index:99!important}form .row.field .field-number{margin-right:.5em}form .row.field{padding:1em 0 0;width:inherit}form .row.field>.field-title{margin-top:.5em;font-size:1.2em;padding-bottom:1.8em;width:inherit}form .row.field>.field-input{font-size:1.4em;color:#777}form.submission-form .row.field.statement>.field-title{font-size:1.7em}form.submission-form .row.field.statement>.field-input{font-size:1em;color:#ddd}form.submission-form .select.radio>.field-input input,form.submission-form .select>.field-input input{width:20%}form.submission-form .field.row.radio .btn.activeBtn{background-color:#000!important;background-color:rgba(0,0,0,.7)!important;color:#fff}form.submission-form .field.row.radio .btn{margin-right:1.2em}form.submission-form .select>.field-input .btn{text-align:left;margin-bottom:.7em}form.submission-form .select>.field-input .btn>span{font-size:1.1em}form .field-input>textarea{padding:.45em .9em;width:100%;line-height:160%}form .field-input>input.hasDatepicker{padding:.45em .9em;width:50%;line-height:160%}form .field-input>input.text-field-input{padding:.45em .9em;width:100%;line-height:160%}form .required-error{color:#ddd;font-size:.8em}form .row.field.dropdown>.field-input input{min-height:34px;border-width:0 0 2px;border-radius:5px}form .row.field.dropdown>.field-input input:focus{border:none}form .dropdown>.field-input .ui-select-choices-row-inner{border-radius:3px;margin:5px;padding:10px;background-color:#000;background-color:rgba(0,0,0,.05)}form .dropdown>.field-input .ui-select-choices-row-inner.active,form .dropdown>.field-input .ui-select-choices-row-inner.active:focus{background-color:#000;background-color:rgba(0,0,0,.1)}.current-fields .panel-body .row.description textarea,.current-fields .panel-body .row.question input[type=text]{width:100%}.current-fields .panel-body .row.options input[type=text]{width:80%}.ui-select-choices.ui-select-dropdown{top:2.5em!important}.ui-select-toggle{box-shadow:none!important;border:none!important}section.public-form{padding:0 10%}section.public-form .form-submitted{height:100vh}section.public-form .btn{border:1px solid}.form-item{border-radius:5px;text-align:center;width:180px;position:relative;height:215px;margin-bottom:45px}.form-item.paused{background-color:red;color:#fff}.form-item.paused:hover{background-color:#8b0000;color:#fff}.form-item.create-new input[type=text]{width:inherit;color:#000;border:none}.form-item.create-new{background-color:#3FA2F7;color:#fff}.form-item.create-new.new-form{background-color:#ff8383;z-index:11}.form-item.create-new.new-form:hover{background-color:#3079b5}.form-item.new-form input[type=text]{margin-top:.2em;width:inherit;color:#000;border:none;padding:.3em .6em}.form-item.new-form .custom-select{margin-top:.2em}.form-item.new-form .custom-select select{background-color:#fff}.form-item.new-form .details-row{margin-top:1em}.form-item.new-form .details-row.submit{margin-top:1.7em}.form-item.new-form .details-row.submit .btn{font-size:.95em}.form-item.new-form .title-row{margin-top:1em;top:0}.overlay{position:fixed;top:0;left:0;height:100%;width:100%;background-color:#000;background-color:rgba(0,0,0,.5);z-index:10}.overlay.submitform{background-color:#fff;background-color:rgba(256,256,256,.8)}.activeField,.activeField input{background-color:transparent}.field-directive{z-index:9;padding:10% 10% 10% 0;border:25px solid transparent;position:relative}.activeField{z-index:11;position:relative}.activeField.field-directive{display:inline-block;border-radius:7px;width:100%;border:25px solid transparent}h3.forms-list-title{color:#3FA2F7;font-weight:600;margin-bottom:3em}.form-item{color:#71AADD;background-color:#E4F1FD}.form-item:hover{background-color:#3FA2F7;color:#23527C}.form-item.create-new:hover{color:#fff;background-color:#515151}.form-item>.row.footer{position:absolute;bottom:0;left:30%}.form-item .title-row{position:relative;top:15px;padding-top:3em;padding-bottom:1em}.form-item .title-row h4{font-size:1.3em}.form-item.create-new .title-row{padding:0}.form-item.create-new .title-row h4{font-size:7em}.form-item .details-row{margin-top:3.2em}.form-item .details-row small{font-size:.6em}.form-item.create-new .details-row small{font-size:.95em}section.auth{padding:70px 0;position:absolute;min-height:100%;top:0;left:0;width:100%;color:#fff;background-color:#50B5C1;background:-moz-linear-gradient(137deg,#50B5C1 0,#6450A0 100%);background:-webkit-gradient(linear,left top,left bottom,color-stop(0,#50B5C1),color-stop(100%,#6450A0));background:-webkit-linear-gradient(137deg,#50B5C1 0,#6450A0 100%);background:-o-linear-gradient(137deg,#50B5C1 0,#6450A0 100%);background:-ms-linear-gradient(137deg,#50B5C1 0,#6450A0 100%)}section.auth>h3{font-size:2em;font-weight:500}.valign-wrapper{display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-align-items:center;-ms-flex-align:center;align-items:center}.valign-wrapper .valign{display:block;width:100%}section.auth a{color:#fff;text-decoration:underline}section.auth.signup-view>h3{font-size:3em;padding-bottom:.5em}section.auth form .field-input select{padding:.45em .9em;width:100%;background:0 0;font-size:16px;border:1px solid #ccc;min-height:34px}section.auth input{color:#4c4c4c}section.auth .btn{border-radius:100px;font-size:14px;padding:12px 28px;margin-top:1em}.btn-rounded.btn-signup{background-color:#FFD747;color:#896D0B;border:2px solid #FFD747}.btn-rounded.btn-signup:hover{color:#FFD747;background-color:#896D0B;border:2px solid #896D0B}.btn-rounded.btn-default{background-color:transparent;color:#fff;border:2px solid #fff}.btn-rounded.btn-default:focus,.btn-rounded.btn-default:hover{color:#6450A0;background-color:#fff;border-color:#fff}@media (min-width:992px){.nav-users{position:fixed}}.remove-account-container{display:inline-block;position:relative}.btn-remove-account{top:10px;right:10px;position:absolute}section.auth input.form-control{min-height:30px!important;border:none}input.form-control{height:auto;border-radius:4px;box-shadow:none;font-size:18px;padding:20px 10px}.btn{border:none} \ No newline at end of file diff --git a/public/dist/application.min.js b/public/dist/application.min.js index 0bb7dc79..d4816cb4 100644 --- a/public/dist/application.min.js +++ b/public/dist/application.min.js @@ -1,5 +1,5 @@ "use strict";var ApplicationConfiguration=function(){var a="TellForm",b=["duScroll","ui.select","ngSanitize","vButton","ngResource","TellForm.templates","ui.router","ui.bootstrap","ui.utils","pascalprecht.translate","view-form"],c=function(b,c){angular.module(b,c||[]),angular.module(a).requires.push(b)};return{applicationModuleName:a,applicationModuleVendorDependencies:b,registerModule:c}}();angular.module(ApplicationConfiguration.applicationModuleName,ApplicationConfiguration.applicationModuleVendorDependencies),angular.module(ApplicationConfiguration.applicationModuleName).config(["$locationProvider",function(a){a.hashPrefix("!")}]),angular.module(ApplicationConfiguration.applicationModuleName).constant("APP_PERMISSIONS",{viewAdminSettings:"viewAdminSettings",editAdminSettings:"editAdminSettings",editForm:"editForm",viewPrivateForm:"viewPrivateForm"}),angular.module(ApplicationConfiguration.applicationModuleName).constant("USER_ROLES",{admin:"admin",normal:"user",superuser:"superuser"}),angular.module(ApplicationConfiguration.applicationModuleName).constant("FORM_URL","/forms/:formId"),angular.element(document).ready(function(){"#_=_"===window.location.hash&&(window.location.hash="#!"),angular.bootstrap(document,[ApplicationConfiguration.applicationModuleName])}),angular.module("TellForm.templates",[]).run(["$templateCache",function(a){a.put("modules/core/views/header.client.view.html",''),a.put("modules/forms/admin/views/admin-form.client.view.html",'
{{ \'TELLFORM_URL\' | translate }}
{{ \'COPY_AND_PASTE\' | translate }}
{{ \'BACKGROUND_COLOR\' | translate }}
{{ \'QUESTION_TEXT_COLOR\' | translate }}
{{ \'ANSWER_TEXT_COLOR\' | translate }}
{{ \'BTN_BACKGROUND_COLOR\' | translate }}
{{ \'BTN_TEXT_COLOR\' | translate }}
'),a.put("modules/forms/admin/views/list-forms.client.view.html",'

{{ \'CREATE_A_NEW_FORM\' | translate }}
{{ \'NAME\' | translate }}
{{ \'LANGUAGE\' | translate }}

{{ form.numberOfResponses }} {{ \'RESPONSES\' | translate }}

{{ \'FORM_PAUSED\' | translate }}
'),a.put("modules/forms/admin/views/adminTabs/analyze.html",""),a.put("modules/forms/admin/views/adminTabs/configure.html",""),a.put("modules/forms/admin/views/adminTabs/create.html",""),a.put("modules/forms/admin/views/directiveViews/form/configure-form.client.view.html",'
{{ \'FORM_NAME\' | translate }}
{{ \'FORM_STATUS\' | translate }}
{{ \'LANGUAGE\' | translate }}
* {{ \'REQUIRED_FIELD\' | translate }}
{{ \'GA_TRACKING_CODE\' | translate }}
{{ \'DISPLAY_FOOTER\' | translate }}
{{ \'DISPLAY_START_PAGE\' | translate }}
{{ \'DISPLAY_END_PAGE\' | translate }}
'),a.put("modules/forms/admin/views/directiveViews/form/edit-form.client.view.html",'

{{ \'WELCOME_SCREEN\' | translate }}


{{field.title}} *

{{ \'CLICK_FIELDS_FOOTER\' | translate }}


{{ \'END_SCREEN\' | translate }}

'), a.put("modules/forms/admin/views/directiveViews/form/edit-submissions-form.client.view.html","
{{ 'TOTAL_VIEWS' | translate }}
{{ 'RESPONSES' | translate }}
{{ 'COMPLETION_RATE' | translate }}
{{ 'AVERAGE_TIME_TO_COMPLETE' | translate }}
{{myform.analytics.visitors.length}}
{{myform.analytics.submissions}}
{{myform.analytics.conversionRate | number:0}}%
{{ AverageTimeElapsed | secondsToDateTime | date:'mm:ss'}}
{{ 'DESKTOP_AND_LAPTOP' | translate }}
{{ 'TABLETS' | translate }}
{{ 'PHONES' | translate }}
{{ 'OTHER' | translate }}
{{ 'UNIQUE_VISITS' | translate }}
{{DeviceStatistics.desktop.visits}}
{{ 'UNIQUE_VISITS' | translate }}
{{DeviceStatistics.tablet.visits}}
{{ 'UNIQUE_VISITS' | translate }}
{{DeviceStatistics.tablet.visits}}
{{ 'UNIQUE_VISITS' | translate }}
{{DeviceStatistics.other.visits}}
{{ 'RESPONSES' | translate }}
{{DeviceStatistics.desktop.responses}}
{{ 'RESPONSES' | translate }}
{{DeviceStatistics.tablet.responses}}
{{ 'RESPONSES' | translate }}
{{DeviceStatistics.phone.responses}}
{{ 'RESPONSES' | translate }}
{{DeviceStatistics.other.responses}}
{{ 'COMPLETION_RATE' | translate }}
{{DeviceStatistics.desktop.completion}}%
{{ 'COMPLETION_RATE' | translate }}
{{DeviceStatistics.tablet.completion}}%
{{ 'COMPLETION_RATE' | translate }}
{{DeviceStatistics.phone.completion}}%
{{ 'COMPLETION_RATE' | translate }}
{{DeviceStatistics.other.completion}}%
{{ 'AVERAGE_TIME_TO_COMPLETE' | translate }}
{{DeviceStatistics.desktop.average_time | secondsToDateTime | date:'mm:ss'}}
{{ 'AVERAGE_TIME_TO_COMPLETE' | translate }}
{{DeviceStatistics.tablet.average_time | secondsToDateTime | date:'mm:ss'}}
{{ 'AVERAGE_TIME_TO_COMPLETE' | translate }}
{{DeviceStatistics.phone.average_time | secondsToDateTime | date:'mm:ss'}}
{{ 'AVERAGE_TIME_TO_COMPLETE' | translate }}
{{DeviceStatistics.other.average_time | secondsToDateTime | date:'mm:ss'}}
{{ 'FIELD_TITLE' | translate }}
{{ 'FIELD_VIEWS' | translate }}
{{ 'FIELD_RESPONSES' | translate }}
{{ 'FIELD_DROPOFF' | translate }}
{{fieldStats.field.title}}
{{fieldStats.totalViews}}
{{fieldStats.responses}}
{{fieldStats.continueRate}}%

#{{value.title}}{{ 'PERCENTAGE_COMPLETE' | translate }}{{ 'TIME_ELAPSED' | translate }}{{ 'DEVICE' | translate }}{{ 'LOCATION' | translate }}{{ 'IP_ADDRESS' | translate }}{{ 'DATE_SUBMITTED' | translate }} (UTC)
{{$index+1}}{{field.fieldValue}}{{row.percentageComplete}}%{{row.timeElapsed | secondsToDateTime | date:'mm:ss'}}{{row.device.name}}, {{row.device.type}}{{row.geoLocation.City}}, {{row.geoLocation.Country}}{{row.ipAddr}}{{row.created | date:'yyyy-MM-dd HH:mm:ss'}}
"),a.put("modules/users/views/authentication/access-denied.client.view.html","

{{ 'ACCESS_DENIED_TEXT' | translate }}

{{ 'SIGNIN_BTN' | translate }}
"),a.put("modules/users/views/authentication/signin.client.view.html",'
'),a.put("modules/users/views/authentication/signup-success.client.view.html",'

{{ \'SUCCESS_HEADER\' | translate }}

{{ \'SUCCESS_TEXT\' | translate }}

{{ \'NOT_ACTIVATED_YET\' | translate }}



{{ \'BEFORE_YOU_CONTINUE\' | translate }} polydaic@gmail.com

'),a.put("modules/users/views/authentication/signup.client.view.html",'
'),a.put("modules/users/views/password/forgot-password.client.view.html",'
{{error}}
{{success}}
'),a.put("modules/users/views/password/reset-password-invalid.client.view.html","

{{ 'PASSWORD_RESET_INVALID' | translate }}

{{ 'ASK_FOR_NEW_PASSWORD' | translate }}
"),a.put("modules/users/views/password/reset-password-success.client.view.html","

{{ 'PASSWORD_RESET_SUCCESS' | translate }}

{{ 'CONTINUE_TO_LOGIN' | translate }}
"),a.put("modules/users/views/password/reset-password.client.view.html",'

{{ \'RESET_PASSWORD\' | translate }}

'),a.put("modules/users/views/settings/change-password.client.view.html",'

{{ \'CHANGE_PASSWORD\' | translate }}

'),a.put("modules/users/views/settings/edit-profile.client.view.html",'

{{ \'EDIT_PROFILE\' | translate }}

'),a.put("modules/users/views/settings/social-accounts.client.view.html",'

{{ \'CONNECTED_SOCIAL_ACCOUNTS\' | translate }}:

{{ \'CONNECT_OTHER_SOCIAL_ACCOUNTS\' | translate }}

'),a.put("modules/users/views/verify/resend-verify-email.client.view.html",'
{{error}}

{{ \'VERIFICATION_EMAIL_SENT\' | translate }}

{{ \'VERIFICATION_EMAIL_SENT_TO\' | translate }} {{username}}.
{{ \'NOT_ACTIVATED_YET\' | translate }}

{{ \'CHECK_YOUR_EMAIL\' | translate }} polydaic@gmail.com

'),a.put("modules/users/views/verify/verify-account.client.view.html",'

{{ \'VERIFY_SUCCESS\' | translate }}

'),a.put("form_modules/forms/base/views/directiveViews/entryPage/startPage.html",'

{{pageData.introTitle}}

{{pageData.introParagraph}}

'),a.put("form_modules/forms/base/views/directiveViews/field/date.html",'

{{index+1}} {{field.title}} {{ \'OPTIONAL\' | translate }}

{{field.description}}

'),a.put("form_modules/forms/base/views/directiveViews/field/dropdown.html",'
'),a.put("form_modules/forms/base/views/directiveViews/field/hidden.html",""),a.put("form_modules/forms/base/views/directiveViews/field/legal.html",'
'),a.put("form_modules/forms/base/views/directiveViews/field/radio.html",'

{{index+1}} {{field.title}} {{ \'OPTIONAL\' | translate }}

{{field.description}}


'),a.put("form_modules/forms/base/views/directiveViews/field/rating.html",'

{{index+1}} {{field.title}} {{ \'OPTIONAL\' | translate }}

{{field.description}}

'),a.put("form_modules/forms/base/views/directiveViews/field/statement.html",'

{{field.title}}

{{field.description}}

{{field.description}}


'),a.put("form_modules/forms/base/views/directiveViews/field/textarea.html",'

{{index+1}} {{field.title}} {{ \'OPTIONAL\' | translate }}

{{ \'NEWLINE\' | translate }}

{{field.description}}

Press SHIFT+ENTER to add a newline
{{ \'ENTER\' | translate }}
'),a.put("form_modules/forms/base/views/directiveViews/field/textfield.html",'

{{index+1}} {{field.title}} ({{ \'OPTIONAL\' | translate }})

{{field.description}}

{{ \'ENTER\' | translate }}
'), -a.put("form_modules/forms/base/views/directiveViews/field/yes_no.html",'

{{index+1}} {{field.title}} {{ \'OPTIONAL\' | translate }}

{{field.description}}


'),a.put("form_modules/forms/base/views/directiveViews/form/submit-form.client.view.html",'

{{myform.startPage.introTitle}}

{{myform.startPage.introParagraph}}

{{ \'COMPLETING_NEEDED\' | translate:translateAdvancementData }}
{{ \'FORM_SUCCESS\' | translate }}

{{myform.endPage.title}}

{{myform.endPage.paragraph}}

'),a.put("form_modules/forms/base/views/form-unauthorized.client.view.html",'

Not Authorized to Access Form

The form you are trying to access is currently private and not accesible publically.
If you are the owner of the form, you can set it to "Public" in the "Configuration" panel in the form admin.
'),a.put("form_modules/forms/base/views/submit-form.client.view.html","
")}]),ApplicationConfiguration.registerModule("core",["users"]),ApplicationConfiguration.registerModule("forms",["ngFileUpload","ui.router.tabs","ui.date","ui.sortable","angular-input-stars","users","ngclipboard"]),ApplicationConfiguration.registerModule("users"),angular.module("core").config(["$stateProvider","$urlRouterProvider",function(a,b,c){b.otherwise("/forms")}]),angular.module(ApplicationConfiguration.applicationModuleName).run(["$rootScope","Auth","$state","$stateParams",function(a,b,c,d){a.$state=c,a.$stateParams=d,a.$on("$stateChangeSuccess",function(a,d,e,f){c.previous=f;var g=["home","signin","resendVerifyEmail","verify","signup","signup-success","forgot","reset-invalid","reset","reset-success"];g.indexOf(d.name)>0?b.isAuthenticated()&&(a.preventDefault(),c.go("listForms")):"access_denied"===d.name||b.isAuthenticated()||"submitForm"===d.name||(a.preventDefault(),c.go("listForms"))})}]),angular.module(ApplicationConfiguration.applicationModuleName).run(["$rootScope","Auth","User","Authorizer","$state","$stateParams",function(a,b,c,d,e,f){a.$on("$stateChangeStart",function(a,f){var g,h,i;h=f&&f.data&&f.data.permissions?f.data.permissions:null,b.ensureHasCurrentUser(c),i=b.currentUser,i&&(g=new d(i),null!==h&&(g.canAccess(h)||(a.preventDefault(),e.go("access_denied"))))})}]),angular.module("core").controller("HeaderController",["$rootScope","$scope","Menus","$state","Auth","User","$window","$translate","$locale",function(a,b,c,d,e,f,g,h,i){a.signupDisabled=g.signupDisabled,b.user=a.user=e.ensureHasCurrentUser(f),b.authentication=a.authentication=e,a.languages=b.languages=["en","fr","es","it","de"],b.authentication.isAuthenticated()?a.language=b.user.language:a.language=i.id.substring(0,2),h.use(a.language),b.isCollapsed=!1,a.hideNav=!1,b.menu=c.getMenu("topbar"),b.signout=function(){var c=f.logout();c.then(function(){e.logout(),e.ensureHasCurrentUser(f),b.user=a.user=null,d.go("listForms"),d.reload()},function(a){console.error("Logout Failed: "+a)})},b.toggleCollapsibleMenu=function(){b.isCollapsed=!b.isCollapsed},b.$on("$stateChangeSuccess",function(c,d,e,f,g){b.isCollapsed=!1,a.hideNav=!1,angular.isDefined(d.data)&&angular.isDefined(d.data.hideNav)&&(a.hideNav=d.data.hideNav)})}]),angular.module("core").service("Menus",[function(){this.defaultRoles=["*"],this.menus={};var a=function(a){if(a){if(~this.roles.indexOf("*"))return!0;for(var b in a.roles)for(var c in this.roles)if(this.roles[c]===a.roles[b])return!0;return!1}return this.isPublic};this.validateMenuExistance=function(a){if(a&&a.length){if(this.menus[a])return!0;throw new Error("Menu does not exists")}throw new Error("MenuId was not provided")},this.getMenu=function(a){return this.validateMenuExistance(a),this.menus[a]},this.addMenu=function(b,c,d){return this.menus[b]={isPublic:c||!1,roles:d||this.defaultRoles,items:[],shouldRender:a},this.menus[b]},this.removeMenu=function(a){this.validateMenuExistance(a),delete this.menus[a]},this.addMenuItem=function(b,c,d,e,f,g,h,i){return this.validateMenuExistance(b),this.menus[b].items.push({title:c,link:d,menuItemType:e||"item",menuItemClass:e,uiRoute:f||"/"+d,isPublic:null===g||"undefined"==typeof g?this.menus[b].isPublic:g,roles:null===h||"undefined"==typeof h?this.menus[b].roles:h,position:i||0,items:[],shouldRender:a}),this.menus[b]},this.addSubMenuItem=function(b,c,d,e,f,g,h,i){this.validateMenuExistance(b);for(var j in this.menus[b].items)this.menus[b].items[j].link===c&&this.menus[b].items[j].items.push({title:d,link:e,uiRoute:f||"/"+e,isPublic:null===g||"undefined"==typeof g?this.menus[b].items[j].isPublic:g,roles:null===h||"undefined"==typeof h?this.menus[b].items[j].roles:h,position:i||0,shouldRender:a});return this.menus[b]},this.removeMenuItem=function(a,b){this.validateMenuExistance(a);for(var c in this.menus[a].items)this.menus[a].items[c].link===b&&this.menus[a].items.splice(c,1);return this.menus[a]},this.removeSubMenuItem=function(a,b){this.validateMenuExistance(a);for(var c in this.menus[a].items)for(var d in this.menus[a].items[c].items)this.menus[a].items[c].items[d].link===b&&this.menus[a].items[c].items.splice(d,1);return this.menus[a]},this.addMenu("topbar",!1,["*"]),this.addMenu("bottombar",!1,["*"])}]),angular.module("core").factory("subdomain",["$location",function(a){var b=a.host();return b.indexOf(".")<0?null:b.split(".")[0]}]),angular.module("forms").run(["Menus",function(a){a.addMenuItem("topbar","My Forms","forms","","/forms",!1)}]).filter("secondsToDateTime",[function(){return function(a){return new Date(1970,0,1).setSeconds(a)}}]).filter("formValidity",[function(){return function(a){if(a&&a.form_fields&&a.visible_form_fields){var b=Object.keys(a),c=(b.filter(function(a){return"$"!==a[0]}),a.form_fields),d=c.filter(function(a){return"object"==typeof a&&"statement"!==a.fieldType&&"rating"!==a.fieldType?!!a.fieldValue:"rating"===a.fieldType||void 0}).length;return d-(a.form_fields.length-a.visible_form_fields.length)}return 0}}]).filter("trustSrc",["$sce",function(a){return function(b){return" $sce.trustAsResourceUrl(formUrl): "+a.trustAsResourceUrl(b),a.trustAsResourceUrl(b)}}]).config(["$provide",function(a){a.decorator("accordionDirective",["$delegate",function(a){var b=a[0];return b.replace=!0,a}])}]),angular.module("forms").config(["$stateProvider",function(a){a.state("listForms",{url:"/forms",templateUrl:"modules/forms/admin/views/list-forms.client.view.html"}).state("submitForm",{url:"/forms/:formId",templateUrl:"/static/form_modules/forms/base/views/submit-form.client.view.html",data:{hideNav:!0},resolve:{Forms:"GetForms",myForm:["GetForms","$stateParams","$q",function(a,b,c){var d=c.defer();return a.get({formId:b.formId},function(a){d.resolve(a)}),d.promise}]},controller:"SubmitFormController",controllerAs:"ctrl"}).state("viewForm",{url:"/forms/:formId/admin",templateUrl:"modules/forms/admin/views/admin-form.client.view.html",data:{permissions:["editForm"]},resolve:{GetForms:"GetForms",myForm:["GetForms","$stateParams","$q",function(a,b,c){var d=c.defer();return a.get({formId:b.formId},function(a){d.resolve(a)}),d.promise}]},controller:"AdminFormController"}).state("viewForm.configure",{url:"/configure",templateUrl:"modules/forms/admin/views/adminTabs/configure.html"}).state("viewForm.design",{url:"/design",templateUrl:"modules/forms/admin/views/adminTabs/design.html"}).state("viewForm.analyze",{url:"/analyze",templateUrl:"modules/forms/admin/views/adminTabs/analyze.html"}).state("viewForm.create",{url:"/create",templateUrl:"modules/forms/admin/views/adminTabs/create.html"})}]),angular.module("forms").factory("GetForms",["$resource","FORM_URL",function(a,b){return a(b,{formId:"@_id"},{query:{method:"GET",isArray:!0},get:{method:"GET",transformResponse:function(a,b){var c=angular.fromJson(a);return c.visible_form_fields=_.filter(c.form_fields,function(a){return a.deletePreserved===!1}),c}},update:{method:"PUT"},save:{method:"POST"}})}]),angular.module("users").config(["$httpProvider",function(a){a.interceptors.push(["$q","$location",function(a,b){return{responseError:function(c){return"/users/me"!==b.path()&&c.config&&"/users/me"!==c.config.url&&(console.log("intercepted rejection of ",c.config.url,c.status),401===c.status?(console.log(b.path()),b.nextAfterLogin=b.path(),b.path("/signin")):403===c.status&&b.path("/access_denied")),a.reject(c)}}}])}]),angular.module("users").config(["$stateProvider",function(a){var b=function(a,b,c,d,e){var f=a.defer();return e.currentUser&&e.currentUser.email?b(f.resolve):e.currentUser=d.getCurrent(function(){e.login(),b(f.resolve())},function(){e.logout(),b(f.reject()),c.go("signin",{reload:!0})}),f.promise};b.$inject=["$q","$timeout","$state","User","Auth"];var c=function(a,b,c){var d=c.defer();return b(a.signupDisabled?d.reject():d.resolve()),d.promise};c.$inject=["$window","$timeout","$q"],a.state("profile",{resolve:{loggedin:b},url:"/settings/profile",templateUrl:"modules/users/views/settings/edit-profile.client.view.html"}).state("password",{resolve:{loggedin:b},url:"/settings/password",templateUrl:"modules/users/views/settings/change-password.client.view.html"}).state("accounts",{resolve:{loggedin:b},url:"/settings/accounts",templateUrl:"modules/users/views/settings/social-accounts.client.view.html"}).state("signup",{resolve:{isDisabled:c},url:"/signup",templateUrl:"modules/users/views/authentication/signup.client.view.html"}).state("signup-success",{resolve:{isDisabled:c},url:"/signup-success",templateUrl:"modules/users/views/authentication/signup-success.client.view.html"}).state("signin",{url:"/signin",templateUrl:"modules/users/views/authentication/signin.client.view.html"}).state("access_denied",{url:"/access_denied",templateUrl:"modules/users/views/authentication/access-denied.client.view.html"}).state("verify",{resolve:{isDisabled:c},url:"/verify/:token",templateUrl:"modules/users/views/verify/verify-account.client.view.html"}).state("resendVerifyEmail",{resolve:{isDisabled:c},url:"/verify",templateUrl:"modules/users/views/verify/resend-verify-email.client.view.html"}).state("forgot",{url:"/password/forgot",templateUrl:"modules/users/views/password/forgot-password.client.view.html"}).state("reset-invalid",{url:"/password/reset/invalid",templateUrl:"modules/users/views/password/reset-password-invalid.client.view.html"}).state("reset-success",{url:"/password/reset/success",templateUrl:"modules/users/views/password/reset-password-success.client.view.html"}).state("reset",{url:"/password/reset/:token",templateUrl:"modules/users/views/password/reset-password.client.view.html"})}]),angular.module("users").controller("AuthenticationController",["$scope","$location","$state","$rootScope","User","Auth",function(a,b,c,d,e,f){a=d,a.credentials={},a.error="",a.signin=function(){e.login(a.credentials).then(function(b){f.login(b),a.user=d.user=f.ensureHasCurrentUser(e),"home"!==c.previous.name&&"verify"!==c.previous.name&&""!==c.previous.name?c.go(c.previous.name):c.go("listForms")},function(b){d.user=f.ensureHasCurrentUser(e),a.user=d.user,a.error=b,console.error("loginError: "+b)})},a.signup=function(){return"admin"===a.credentials?void(a.error="Username cannot be 'admin'. Please pick another username."):void e.signup(a.credentials).then(function(a){c.go("signup-success")},function(b){console.error(b),b?(a.error=b,console.error(b)):console.error("No response received")})}}]),angular.module("users").controller("PasswordController",["$scope","$stateParams","$state","User",function(a,b,c,d){a.error="",a.askForPasswordReset=function(){d.askForPasswordReset(a.credentials).then(function(b){a.success=b.message,a.credentials=null},function(b){a.error=b,a.credentials=null})},a.resetUserPassword=function(){a.success=a.error=null,d.resetPassword(a.passwordDetails,b.token).then(function(b){console.log(b),a.success=b.message,a.passwordDetails=null,c.go("reset-success")},function(b){a.error=b.message||b,a.passwordDetails=null})}}]),angular.module("users").controller("SettingsController",["$scope","$rootScope","$http","$state","Users","Auth",function(a,b,c,d,e,f){a.user=f.currentUser,a.hasConnectedAdditionalSocialAccounts=function(b){for(var c in a.user.additionalProvidersData)return!0;return!1},a.cancel=function(){a.user=f.currentUser},a.isConnectedSocialAccount=function(b){return a.user.provider===b||a.user.additionalProvidersData&&a.user.additionalProvidersData[b]},a.removeUserSocialAccount=function(b){a.success=a.error=null,c["delete"]("/users/accounts",{params:{provider:b}}).success(function(b){a.success=!0,a.user=b}).error(function(b){a.error=b.message})},a.updateUserProfile=function(b){if(b){a.success=a.error=null;var c=new e(a.user);c.$update(function(b){a.success=!0,a.user=b},function(b){a.error=b.data.message})}else a.submitted=!0},a.changeUserPassword=function(){a.success=a.error=null,c.post("/users/password",a.passwordDetails).success(function(b){a.success=!0,a.passwordDetails=null}).error(function(b){a.error=b.message})}}]),angular.module("users").controller("VerifyController",["$scope","$state","$rootScope","User","Auth","$stateParams",function(a,b,c,d,e,f){a.isResetSent=!1,a.credentials={},a.error="",a.resendVerifyEmail=function(){d.resendVerifyEmail(a.credentials.email).then(function(b){console.log(b),a.success=b.message,a.credentials=null,a.isResetSent=!0},function(b){a.error=b,a.credentials.email=null,a.isResetSent=!1})},a.validateVerifyToken=function(){f.token&&(console.log(f.token),d.validateVerifyToken(f.token).then(function(b){console.log("Success: "+b.message),a.success=b.message,a.isResetSent=!0,a.credentials.email=null},function(b){console.log("Error: "+b.message),a.isResetSent=!1,a.error=b,a.credentials.email=null}))}}]),angular.module("users").factory("Auth",["$window",function(a){var b={isLoggedIn:!1},c={_currentUser:null,get currentUser(){return this._currentUser},ensureHasCurrentUser:function(d){return c._currentUser&&c._currentUser.username?c._currentUser:a.user?(c._currentUser=a.user,c._currentUser):void d.getCurrent().then(function(d){return c._currentUser=d,b.isLoggedIn=!0,a.user=c._currentUser,c._currentUser},function(d){return b.isLoggedIn=!1,c._currentUser=null,a.user=null,console.log("User.getCurrent() err",d),null})},isAuthenticated:function(){return!!c._currentUser},getUserState:function(){return b},login:function(a){b.isLoggedIn=!0,c._currentUser=a},logout:function(){a.user=null,b.isLoggedIn=!1,c._currentUser=null}};return c}]),angular.module("users").service("Authorizer",["APP_PERMISSIONS","USER_ROLES",function(a,b){return function(c){return{canAccess:function(d){var e,f,g;for(angular.isArray(d)||(d=[d]),e=0,f=d.length;e-1;case a.viewPrivateForm:case a.editForm:return c.roles.indexOf(b.admin)>-1||c.roles.indexOf(b.normal)>-1}}return!1}}}}]),angular.module("users").factory("User",["$window","$q","$timeout","$http","$state",function(a,b,c,d,e){var f={getCurrent:function(){var a=b.defer();return d.get("/users/me").success(function(b){a.resolve(b)}).error(function(){a.reject("User's session has expired")}),a.promise},login:function(a){var c=b.defer();return d.post("/auth/signin",a).then(function(a){c.resolve(a.data)},function(a){c.reject(a.data.message||a.data)}),c.promise},logout:function(){var a=b.defer();return d.get("/auth/signout").then(function(b){a.resolve(null)},function(b){a.reject(b.data.message||b.data)}),a.promise},signup:function(a){var c=b.defer();return d.post("/auth/signup",a).then(function(a){c.resolve(a.data)},function(a){c.reject(a.data.message||a.data)}),c.promise},resendVerifyEmail:function(a){var c=b.defer();return d.post("/auth/verify",{email:a}).then(function(a){c.resolve(a.data)},function(a){c.reject(a.data.message||a.data)}),c.promise},validateVerifyToken:function(a){var c=/^([A-Za-z0-9]{48})$/g;if(!c.test(a))throw new Error("Error token: "+a+" is not a valid verification token");var e=b.defer();return d.get("/auth/verify/"+a).then(function(a){e.resolve(a.data)},function(a){e.reject(a.data)}),e.promise},resetPassword:function(a,c){var e=b.defer();return d.post("/auth/reset/"+c,a).then(function(a){e.resolve(a)},function(a){e.reject(a.data.message||a.data)}),e.promise},askForPasswordReset:function(a){var c=b.defer();return d.post("/auth/forgot",a).then(function(a){c.resolve(a.data)},function(a){c.reject(a.data.message||a.data)}),c.promise}};return f}]),angular.module("users").factory("Users",["$resource",function(a){return a("users",{},{update:{method:"PUT"}})}]),angular.module("core").config(["$translateProvider",function(a){a.translations("en",{MENU:"MENU",SIGNUP_TAB:"Sign Up",SIGNIN_TAB:"Sign In",SIGNOUT_TAB:"Signout",EDIT_PROFILE:"Edit Profile",MY_FORMS:"My Forms",MY_SETTINGS:"My Settings",CHANGE_PASSWORD:"Change Password"}),a.preferredLanguage("en").fallbackLanguage("en").useSanitizeValueStrategy("escape")}]),angular.module("core").config(["$translateProvider",function(a){a.translations("fr",{MENU:"MENU",SIGNUP_TAB:"Créer un Compte",SIGNIN_TAB:"Connexion",SIGNOUT_TAB:"Créer un compte",EDIT_PROFILE:"Modifier Mon Profil",MY_FORMS:"Mes Formulaires",MY_SETTINGS:"Mes Paramètres",CHANGE_PASSWORD:"Changer mon Mot de Pass"})}]),angular.module("core").config(["$translateProvider",function(a){a.translations("es",{MENU:"MENU",SIGNUP_TAB:"Registrarse",SIGNIN_TAB:"Entrar",SIGNOUT_TAB:"Salir",EDIT_PROFILE:"Editar Perfil",MY_FORMS:"Mis formularios",MY_SETTINGS:"Mis configuraciones",CHANGE_PASSWORD:"Cambiar contraseña"})}]),angular.module("forms").controller("AdminFormController",["$rootScope","$window","$scope","$stateParams","$state","Forms","CurrentForm","$http","$uibModal","myForm","$filter",function(a,b,c,d,e,f,g,h,i,j,k){c.activePill=0,c.copied=!1,c.onCopySuccess=function(a){c.copied=!0},c=a,c.animationsEnabled=!0,c.myform=j,a.saveInProgress=!1,g.setForm(c.myform),console.log("$scope.myform"),console.log(c.myform),c.formURL="/#!/forms/"+c.myform._id,c.myform.isLive?b.subdomainsDisabled===!0?c.actualFormURL=window.location.protocol+"//"+window.location.host+"/view"+c.formURL:window.location.host.split(".").length<3?c.actualFormURL=window.location.protocol+"//"+c.myform.admin.username+"."+window.location.host+c.formURL:c.actualFormURL=window.location.protocol+"//"+c.myform.admin.username+"."+window.location.host.split(".").slice(1,3).join(".")+c.formURL:c.actualFormURL=window.location.protocol+"//"+window.location.host+c.formURL;var l=c.refreshFrame=function(){document.getElementById("iframe")&&document.getElementById("iframe").contentWindow.location.reload()};c.tabData=[{heading:k("translate")("CONFIGURE_TAB"),templateName:"configure"}],c.setForm=function(a){c.myform=a},a.resetForm=function(){c.myform=f.get({formId:d.formId})},c.openDeleteModal=function(){c.deleteModal=i.open({animation:c.animationsEnabled,templateUrl:"formDeleteModal.html",controller:"AdminFormController",resolve:{myForm:function(){return c.myform}}}),c.deleteModal.result.then(function(a){c.selected=a},function(){console.log("Modal dismissed at: "+new Date)})},c.cancelDeleteModal=function(){c.deleteModal&&c.deleteModal.dismiss("cancel")},c.removeCurrentForm=function(){if(c.deleteModal&&c.deleteModal.opened){c.deleteModal.close();var a=c.myform._id;if(!a)throw new Error("Error - removeCurrentForm(): $scope.myform._id does not exist");h["delete"]("/forms/"+a).then(function(a){console.log("form deleted successfully"),e.go("listForms",{},{reload:!0})},function(a){console.log("ERROR: Form could not be deleted."),console.error(a)})}},c.update=a.update=function(b,d,e,f,g){l();var i=!0;if(b||(i=!a.saveInProgress),i){var j=null;if(b||(a.saveInProgress=!0),e)c.updatePromise=h.put("/forms/"+c.myform._id,{changes:d}).then(function(b){f&&(a.myform=c.myform=b.data)})["catch"](function(a){console.log("Error occured during form UPDATE.\n"),j=a.data})["finally"](function(){if(b||(a.saveInProgress=!1),"function"==typeof g)return g(j)});else{var k=d;k.analytics&&k.analytics.visitors&&delete k.analytics.visitors,k.submissions&&delete k.submissions,c.updatePromise=h.put("/forms/"+c.myform._id,{form:k}).then(function(b){f&&(a.myform=c.myform=b.data)})["catch"](function(a){console.log("Error occured during form UPDATE.\n"),j=a.data})["finally"](function(){if(b||(a.saveInProgress=!1),"function"==typeof g)return g(j)})}}}}]),angular.module("forms").controller("ListFormsController",["$rootScope","$scope","$stateParams","$state","GetForms","CurrentForm","$http","$uibModal",function(a,b,c,d,e,f,g,h){b=a,b.forms={},b.showCreateModal=!1,a.languageRegExp={regExp:/[@!#$%^&*()\-+={}\[\]|\\/'";:`.,~№?<>]+/i,test:function(a){return!this.regExp.test(a)}},b.openDeleteModal=function(a){b.deleteModal=h.open({animation:b.animationsEnabled,templateUrl:"deleteModalListForms.html",controller:["$uibModalInstance","items","$scope",function(a,b,c){c.content=b,c.cancel=c.cancelDeleteModal,c.deleteForm=function(){c.$parent.removeForm(b.formIndex)}}],resolve:{items:function(){return{currFormTitle:b.myforms[a].title,formIndex:a}}}})},b.cancelDeleteModal=function(){b.deleteModal&&b.deleteModal.dismiss("cancel")},b.findAll=function(){e.query(function(a){b.myforms=a})},b.openCreateModal=function(){b.showCreateModal||(b.showCreateModal=!0)},b.closeCreateModal=function(){b.showCreateModal&&(b.showCreateModal=!1)},b.setForm=function(a){b.myform=a},b.goToWithId=function(a,b){d.go(a,{formId:b},{reload:!0})},b.duplicateForm=function(a){var c=_.cloneDeep(b.myforms[a]);delete c._id,g.post("/forms",{form:c}).success(function(c,d,e){b.myforms.splice(a+1,0,c)}).error(function(a){console.error(a),null===a&&(b.error=a.data.message)})},b.createNewForm=function(){var a={};a.title=b.forms.createForm.title.$modelValue,a.language=b.forms.createForm.language.$modelValue,b.forms.createForm.$valid&&b.forms.createForm.$dirty&&g.post("/forms",{form:a}).success(function(a,c,d){b.goToWithId("viewForm.create",a._id+"")}).error(function(a){console.error(a),b.error=a.data.message})},b.removeForm=function(a){if(a>=b.myforms.length||a<0)throw new Error("Error: form_index in removeForm() must be between 0 and "+b.myforms.length-1);g["delete"]("/forms/"+b.myforms[a]._id).success(function(c,d,e){b.myforms.splice(a,1),b.cancelDeleteModal()}).error(function(a){console.error(a)})}}]),angular.module("forms").directive("configureFormDirective",["$rootScope","$http","Upload","CurrentForm",function(a,b,c,d){return{templateUrl:"modules/forms/admin/views/directiveViews/form/configure-form.client.view.html",restrict:"E",scope:{myform:"=",user:"=",pdfFields:"@",formFields:"@"},controller:["$scope",function(b){b.log="",b.languages=a.languages,b.resetForm=a.resetForm,b.update=a.update}]}}]),angular.module("forms").directive("editFormDirective",["$rootScope","FormFields","$uibModal",function(a,b,c){return{templateUrl:"modules/forms/admin/views/directiveViews/form/edit-form.client.view.html",restrict:"E",transclude:!0,scope:{myform:"="}, -controller:["$scope",function(d){var e;d.sortableOptions={appendTo:".dropzone",forceHelperSize:!0,forcePlaceholderSize:!0,update:function(a,b){d.update(!1,d.myform,!1,!1,function(a){})}},d.openEditModal=function(a){d.editFieldModal=c.open({animation:!0,templateUrl:"editFieldModal.html",windowClass:"edit-modal-window",controller:["$uibModalInstance","$scope",function(b,c){c.field=a,c.showLogicJump=!1,c.showAddOptions=function(a){return"dropdown"===a.fieldType||"checkbox"===a.fieldType||"radio"===a.fieldType},c.validShapes=["Heart","Star","thumbs-up","thumbs-down","Circle","Square","Check Circle","Smile Outlined","Hourglass","bell","Paper Plane","Comment","Trash"],c.addOption=function(a){if("checkbox"===a.fieldType||"dropdown"===a.fieldType||"radio"===a.fieldType){a.fieldOptions||(a.fieldOptions=[]);var b=a.fieldOptions.length+1,c={option_id:Math.floor(1e5*Math.random()),option_title:"Option "+b,option_value:"Option "+b};a.fieldOptions.push(c)}},c.deleteOption=function(a,b){if("checkbox"===a.fieldType||"dropdown"===a.fieldType||"radio"===a.fieldType)for(var c=0;c',restrict:"E",scope:{typeName:"@"},controller:["$scope",function(a){var b={textfield:"fa fa-pencil-square-o",dropdown:"fa fa-th-list",date:"fa fa-calendar",checkbox:"fa fa-check-square-o",radio:"fa fa-dot-circle-o",email:"fa fa-envelope-o",textarea:"fa fa-pencil-square",legal:"fa fa-legal",file:"fa fa-cloud-upload",rating:"fa fa-star-half-o",link:"fa fa-link",scale:"fa fa-sliders",stripe:"fa fa-credit-card",statement:"fa fa-quote-left",yes_no:"fa fa-toggle-on",number:"fa fa-slack"};a.typeIcon=b[a.typeName]}]}});var __indexOf=[].indexOf||function(a){for(var b=0,c=this.length;b=0&&(c=c+b+".html"),d.get(c)};return{template:"
{{field.title}}
",restrict:"E",scope:{field:"=",required:"&",design:"=",index:"=",forms:"="},link:function(a,d){c.chooseDefaultOption=a.chooseDefaultOption=function(b){"yes_no"===b?a.field.fieldValue="true":"rating"===b?a.field.fieldValue=0:"radio"===a.field.fieldType?(console.log(a.field),a.field.fieldValue=a.field.fieldOptions[0].option_value,console.log(a.field.fieldValue)):"legal"===b&&(a.field.fieldValue="true",c.nextField())},a.nextField=c.nextField,a.setActiveField=c.setActiveField,"date"===a.field.fieldType&&(a.dateOptions={changeYear:!0,changeMonth:!0,altFormat:"mm/dd/yyyy",yearRange:"1900:-0",defaultDate:0});var e=a.field.fieldType;if("number"===a.field.fieldType||"textfield"===a.field.fieldType||"email"===a.field.fieldType||"link"===a.field.fieldType){switch(a.field.fieldType){case"textfield":a.input_type="text";break;case"email":a.input_type="email",a.placeholder="joesmith@example.com";break;case"number":a.input_type="text",a.validateRegex=/^-?\d+$/;break;default:a.input_type="url",a.placeholder="http://example.com"}e="textfield"}var g=f(e);d.html(g).show();b(d.contents())(a)}}}]),angular.module("view-form").directive("onEnterKey",["$rootScope",function(a){return{restrict:"A",link:function(b,c,d){c.bind("keydown keypress",function(b){var c=b.which||b.keyCode,e=!1;null!==d.onEnterKeyDisabled&&(e=d.onEnterKeyDisabled),13!==c||b.shiftKey||e||(b.preventDefault(),a.$apply(function(){a.$eval(d.onEnterKey)}))})}}}]).directive("onTabKey",["$rootScope",function(a){return{restrict:"A",link:function(b,c,d){c.bind("keydown keypress",function(b){var c=b.which||b.keyCode;9!==c||b.shiftKey||(b.preventDefault(),a.$apply(function(){a.$eval(d.onTabKey)}))})}}}]).directive("onEnterOrTabKey",["$rootScope",function(a){return{restrict:"A",link:function(b,c,d){c.bind("keydown keypress",function(b){var c=b.which||b.keyCode;13!==c&&9!==c||b.shiftKey||(b.preventDefault(),a.$apply(function(){a.$eval(d.onEnterOrTabKey)}))})}}}]).directive("onTabAndShiftKey",["$rootScope",function(a){return{restrict:"A",link:function(b,c,d){c.bind("keydown keypress",function(b){var c=b.which||b.keyCode;9===c&&b.shiftKey&&(b.preventDefault(),a.$apply(function(){a.$eval(d.onTabAndShiftKey)}))})}}}]),angular.module("view-form").directive("onFinishRender",["$rootScope","$timeout",function(a,b){return{restrict:"A",link:function(b,c,d){if(c.attr("ng-repeat")||c.attr("data-ng-repeat")){var e=d.onFinishRender||"ngRepeat";b.$first&&!b.$last?b.$evalAsync(function(){a.$broadcast(e+" Started")}):b.$last&&b.$evalAsync(function(){a.$broadcast(e+" Finished")})}}}}]),jsep.addBinaryOp("contains",10),jsep.addBinaryOp("!contains",10),jsep.addBinaryOp("begins",10),jsep.addBinaryOp("!begins",10),jsep.addBinaryOp("ends",10),jsep.addBinaryOp("!ends",10),angular.module("view-form").directive("submitFormDirective",["$http","TimeCounter","$filter","$rootScope","SendVisitorData","$translate",function(a,b,c,d,e,f){return{templateUrl:"form_modules/forms/base/views/directiveViews/form/submit-form.client.view.html",restrict:"E",scope:{myform:"=",ispreview:"="},controller:["$document","$window","$scope",function(f,g,h){h.noscroll=!1,h.forms={},h.ispreview&&b.restartClock();var i=h.myform.visible_form_fields.filter(function(a){return"statement"!==a.fieldType}).length,j=c("formValidity")(h.myform);h.translateAdvancementData={done:j,total:i,answers_not_completed:i-j},h.reloadForm=function(){h.myform.submitted=!1,h.myform.form_fields=_.chain(h.myform.visible_form_fields).map(function(a){return a.fieldValue="",a}).value(),h.loading=!1,h.error="",h.selected={_id:"",index:0},h.setActiveField(h.myform.visible_form_fields[0]._id,0,!1),b.restartClock()},g.onscroll=function(){h.scrollPos=document.body.scrollTop||document.documentElement.scrollTop||0;var a=document.getElementsByClassName("activeField")[0].getBoundingClientRect();h.fieldTop=a.top,h.fieldBottom=a.bottom;var b,c;h.noscroll||(h.selected.index===h.myform.visible_form_fields.length-1&&h.fieldBottom<200?(c=h.selected.index+1,b="submit_field",h.setActiveField(b,c,!1)):h.selected.index===h.myform.visible_form_fields.length?h.fieldTop>200&&(c=h.selected.index-1,b=h.myform.visible_form_fields[c]._id,h.setActiveField(b,c,!1)):h.fieldBottom<0?(c=h.selected.index+1,b=h.myform.visible_form_fields[c]._id,h.setActiveField(b,c,!1)):0!==h.selected.index&&h.fieldTop>0&&(c=h.selected.index-1,b=h.myform.visible_form_fields[c]._id,h.setActiveField(b,c,!1)),h.$apply())};var k=function(a){var b=a.logicJump;if(b.expressionString&&b.valueB&&a.fieldValue){var c,d,e=jsep(b.expressionString);if("field"===e.left.name?(c=a.fieldValue,d=b.valueB):(c=b.valueB,d=a.fieldValue),"number"===a.fieldType||"scale"===a.fieldType||"rating"===a.fieldType)switch(e.operator){case"==":return parseInt(c)===parseInt(d);case"!==":return parseInt(c)!==parseInt(d);case">":return parseInt(c)>parseInt(d);case">=":return parseInt(c)>parseInt(d);case"<":return parseInt(c)-1;case"!contains":return!(c.indexOf(d)>-1);case"begins":return c.startsWith(d);case"!begins":return!c.startsWith(d);case"ends":return c.endsWith(d);case"!ends":return c.endsWith(d);default:return!1}}},l=function(){if(null===h.selected)throw console.error("current active field is null"),new Error("current active field is null");return"submit_field"===h.selected._id?h.myform.form_fields.length-1:h.selected.index};h.setActiveField=d.setActiveField=function(a,d,g){if(null!==h.selected&&h.selected._id!==a){if(h.selected._id=a,h.selected.index=d,!d)for(var j=0;j-1)if(a.logicJump&&k(a))d.setActiveField(a.logicJump.jumpTo,null,!0);else{var b,c;h.selected.index0){var a=h.selected.index-1,b=h.myform.visible_form_fields[a]._id;h.setActiveField(b,a,!0)}},h.exitStartPage=function(){h.myform.startPage.showStart=!1,h.myform.visible_form_fields.length>0&&(h.selected._id=h.myform.visible_form_fields[0]._id)},d.goToInvalid=h.goToInvalid=function(){document.querySelectorAll(".ng-invalid.focusOn")[0].focus()};var m=function(){var a=new MobileDetect(window.navigator.userAgent),b="other";return a.tablet()?b="tablet":a.mobile()?b="mobile":a.is("bot")||(b="desktop"),{type:b,name:window.navigator.platform}},n=function(){$.ajaxSetup({async:!1});var a=$.getJSON("https://freegeoip.net/json/").responseJSON;return $.ajaxSetup({async:!0}),a&&a.ip||(a={ip:"Adblocker"}),{ipAddr:a.ip,geoLocation:{City:a.city,Country:a.country_name}}};d.submitForm=h.submitForm=function(){var d=b.stopClock();h.loading=!0;var f=_.cloneDeep(h.myform),g=m();f.device=g;var i=n();f.ipAddr=i.ipAddr,f.geoLocation=i.geoLocation,f.timeElapsed=d,f.percentageComplete=c("formValidity")(h.myform)/h.myform.visible_form_fields.length*100,delete f.visible_form_fields,delete f.analytics,delete f.design,delete f.submissions;for(var j=0;j

{{index+1}} {{field.title}} {{ \'OPTIONAL\' | translate }}

{{field.description}}


'),a.put("form_modules/forms/base/views/directiveViews/form/submit-form.client.view.html",'
{{ \'COMPLETING_NEEDED\' | translate:translateAdvancementData }}
'),a.put("form_modules/forms/base/views/form-unauthorized.client.view.html",'

Not Authorized to Access Form

The form you are trying to access is currently private and not accesible publically.
If you are the owner of the form, you can set it to "Public" in the "Configuration" panel in the form admin.
'),a.put("form_modules/forms/base/views/submit-form.client.view.html","
")}]),ApplicationConfiguration.registerModule("core",["users"]),ApplicationConfiguration.registerModule("forms",["ngFileUpload","ui.router.tabs","ui.date","ui.sortable","angular-input-stars","users","ngclipboard"]),ApplicationConfiguration.registerModule("users"),angular.module("core").config(["$stateProvider","$urlRouterProvider",function(a,b,c){b.otherwise("/forms")}]),angular.module(ApplicationConfiguration.applicationModuleName).run(["$rootScope","Auth","$state","$stateParams",function(a,b,c,d){a.$state=c,a.$stateParams=d,a.$on("$stateChangeSuccess",function(a,d,e,f){c.previous=f;var g=["home","signin","resendVerifyEmail","verify","signup","signup-success","forgot","reset-invalid","reset","reset-success"];g.indexOf(d.name)>0?b.isAuthenticated()&&(a.preventDefault(),c.go("listForms")):"access_denied"===d.name||b.isAuthenticated()||"submitForm"===d.name||(a.preventDefault(),c.go("listForms"))})}]),angular.module(ApplicationConfiguration.applicationModuleName).run(["$rootScope","Auth","User","Authorizer","$state","$stateParams",function(a,b,c,d,e,f){a.$on("$stateChangeStart",function(a,f){var g,h,i;h=f&&f.data&&f.data.permissions?f.data.permissions:null,b.ensureHasCurrentUser(c),i=b.currentUser,i&&(g=new d(i),null!==h&&(g.canAccess(h)||(a.preventDefault(),e.go("access_denied"))))})}]),angular.module("core").controller("HeaderController",["$rootScope","$scope","Menus","$state","Auth","User","$window","$translate","$locale",function(a,b,c,d,e,f,g,h,i){a.signupDisabled=g.signupDisabled,b.user=a.user=e.ensureHasCurrentUser(f),b.authentication=a.authentication=e,a.languages=b.languages=["en","fr","es","it","de"],b.authentication.isAuthenticated()?a.language=b.user.language:a.language=i.id.substring(0,2),h.use(a.language),b.isCollapsed=!1,a.hideNav=!1,b.menu=c.getMenu("topbar"),b.signout=function(){var c=f.logout();c.then(function(){e.logout(),e.ensureHasCurrentUser(f),b.user=a.user=null,d.go("listForms"),d.reload()},function(a){console.error("Logout Failed: "+a)})},b.toggleCollapsibleMenu=function(){b.isCollapsed=!b.isCollapsed},b.$on("$stateChangeSuccess",function(c,d,e,f,g){b.isCollapsed=!1,a.hideNav=!1,angular.isDefined(d.data)&&angular.isDefined(d.data.hideNav)&&(a.hideNav=d.data.hideNav)})}]),angular.module("core").service("Menus",[function(){this.defaultRoles=["*"],this.menus={};var a=function(a){if(a){if(~this.roles.indexOf("*"))return!0;for(var b in a.roles)for(var c in this.roles)if(this.roles[c]===a.roles[b])return!0;return!1}return this.isPublic};this.validateMenuExistance=function(a){if(a&&a.length){if(this.menus[a])return!0;throw new Error("Menu does not exists")}throw new Error("MenuId was not provided")},this.getMenu=function(a){return this.validateMenuExistance(a),this.menus[a]},this.addMenu=function(b,c,d){return this.menus[b]={isPublic:c||!1,roles:d||this.defaultRoles,items:[],shouldRender:a},this.menus[b]},this.removeMenu=function(a){this.validateMenuExistance(a),delete this.menus[a]},this.addMenuItem=function(b,c,d,e,f,g,h,i){return this.validateMenuExistance(b),this.menus[b].items.push({title:c,link:d,menuItemType:e||"item",menuItemClass:e,uiRoute:f||"/"+d,isPublic:null===g||"undefined"==typeof g?this.menus[b].isPublic:g,roles:null===h||"undefined"==typeof h?this.menus[b].roles:h,position:i||0,items:[],shouldRender:a}),this.menus[b]},this.addSubMenuItem=function(b,c,d,e,f,g,h,i){this.validateMenuExistance(b);for(var j in this.menus[b].items)this.menus[b].items[j].link===c&&this.menus[b].items[j].items.push({title:d,link:e,uiRoute:f||"/"+e,isPublic:null===g||"undefined"==typeof g?this.menus[b].items[j].isPublic:g,roles:null===h||"undefined"==typeof h?this.menus[b].items[j].roles:h,position:i||0,shouldRender:a});return this.menus[b]},this.removeMenuItem=function(a,b){this.validateMenuExistance(a);for(var c in this.menus[a].items)this.menus[a].items[c].link===b&&this.menus[a].items.splice(c,1);return this.menus[a]},this.removeSubMenuItem=function(a,b){this.validateMenuExistance(a);for(var c in this.menus[a].items)for(var d in this.menus[a].items[c].items)this.menus[a].items[c].items[d].link===b&&this.menus[a].items[c].items.splice(d,1);return this.menus[a]},this.addMenu("topbar",!1,["*"]),this.addMenu("bottombar",!1,["*"])}]),angular.module("core").factory("subdomain",["$location",function(a){var b=a.host();return b.indexOf(".")<0?null:b.split(".")[0]}]),angular.module("forms").run(["Menus",function(a){a.addMenuItem("topbar","My Forms","forms","","/forms",!1)}]).filter("secondsToDateTime",[function(){return function(a){return new Date(1970,0,1).setSeconds(a)}}]).filter("formValidity",[function(){return function(a){if(a&&a.form_fields&&a.visible_form_fields){var b=Object.keys(a),c=(b.filter(function(a){return"$"!==a[0]}),a.form_fields),d=c.filter(function(a){return"object"==typeof a&&"statement"!==a.fieldType&&"rating"!==a.fieldType?!!a.fieldValue:"rating"===a.fieldType||void 0}).length;return d-(a.form_fields.length-a.visible_form_fields.length)}return 0}}]).filter("trustSrc",["$sce",function(a){return function(b){return" $sce.trustAsResourceUrl(formUrl): "+a.trustAsResourceUrl(b),a.trustAsResourceUrl(b)}}]).config(["$provide",function(a){a.decorator("accordionDirective",["$delegate",function(a){var b=a[0];return b.replace=!0,a}])}]),angular.module("forms").config(["$stateProvider",function(a){a.state("listForms",{url:"/forms",templateUrl:"modules/forms/admin/views/list-forms.client.view.html"}).state("submitForm",{url:"/forms/:formId",templateUrl:"/static/form_modules/forms/base/views/submit-form.client.view.html",data:{hideNav:!0},resolve:{Forms:"GetForms",myForm:["GetForms","$stateParams","$q",function(a,b,c){var d=c.defer();return a.get({formId:b.formId},function(a){d.resolve(a)}),d.promise}]},controller:"SubmitFormController",controllerAs:"ctrl"}).state("viewForm",{url:"/forms/:formId/admin",templateUrl:"modules/forms/admin/views/admin-form.client.view.html",data:{permissions:["editForm"]},resolve:{GetForms:"GetForms",myForm:["GetForms","$stateParams","$q",function(a,b,c){var d=c.defer();return a.get({formId:b.formId},function(a){d.resolve(a)}),d.promise}]},controller:"AdminFormController"}).state("viewForm.configure",{url:"/configure",templateUrl:"modules/forms/admin/views/adminTabs/configure.html"}).state("viewForm.design",{url:"/design",templateUrl:"modules/forms/admin/views/adminTabs/design.html"}).state("viewForm.analyze",{url:"/analyze",templateUrl:"modules/forms/admin/views/adminTabs/analyze.html"}).state("viewForm.create",{url:"/create",templateUrl:"modules/forms/admin/views/adminTabs/create.html"})}]),angular.module("forms").factory("GetForms",["$resource","FORM_URL",function(a,b){return a(b,{formId:"@_id"},{query:{method:"GET",isArray:!0},get:{method:"GET",transformResponse:function(a,b){var c=angular.fromJson(a);return c.visible_form_fields=_.filter(c.form_fields,function(a){return a.deletePreserved===!1}),c}},update:{method:"PUT"},save:{method:"POST"}})}]),angular.module("users").config(["$httpProvider",function(a){a.interceptors.push(["$q","$location",function(a,b){return{responseError:function(c){return"/users/me"!==b.path()&&c.config&&"/users/me"!==c.config.url&&(console.log("intercepted rejection of ",c.config.url,c.status),401===c.status?(console.log(b.path()),b.nextAfterLogin=b.path(),b.path("/signin")):403===c.status&&b.path("/access_denied")),a.reject(c)}}}])}]),angular.module("users").config(["$stateProvider",function(a){var b=function(a,b,c,d,e){var f=a.defer();return e.currentUser&&e.currentUser.email?b(f.resolve):e.currentUser=d.getCurrent(function(){e.login(),b(f.resolve())},function(){e.logout(),b(f.reject()),c.go("signin",{reload:!0})}),f.promise};b.$inject=["$q","$timeout","$state","User","Auth"];var c=function(a,b,c){var d=c.defer();return b(a.signupDisabled?d.reject():d.resolve()),d.promise};c.$inject=["$window","$timeout","$q"],a.state("profile",{resolve:{loggedin:b},url:"/settings/profile",templateUrl:"modules/users/views/settings/edit-profile.client.view.html"}).state("password",{resolve:{loggedin:b},url:"/settings/password",templateUrl:"modules/users/views/settings/change-password.client.view.html"}).state("accounts",{resolve:{loggedin:b},url:"/settings/accounts",templateUrl:"modules/users/views/settings/social-accounts.client.view.html"}).state("signup",{resolve:{isDisabled:c},url:"/signup",templateUrl:"modules/users/views/authentication/signup.client.view.html"}).state("signup-success",{resolve:{isDisabled:c},url:"/signup-success",templateUrl:"modules/users/views/authentication/signup-success.client.view.html"}).state("signin",{url:"/signin",templateUrl:"modules/users/views/authentication/signin.client.view.html"}).state("access_denied",{url:"/access_denied",templateUrl:"modules/users/views/authentication/access-denied.client.view.html"}).state("verify",{resolve:{isDisabled:c},url:"/verify/:token",templateUrl:"modules/users/views/verify/verify-account.client.view.html"}).state("resendVerifyEmail",{resolve:{isDisabled:c},url:"/verify",templateUrl:"modules/users/views/verify/resend-verify-email.client.view.html"}).state("forgot",{url:"/password/forgot",templateUrl:"modules/users/views/password/forgot-password.client.view.html"}).state("reset-invalid",{url:"/password/reset/invalid",templateUrl:"modules/users/views/password/reset-password-invalid.client.view.html"}).state("reset-success",{url:"/password/reset/success",templateUrl:"modules/users/views/password/reset-password-success.client.view.html"}).state("reset",{url:"/password/reset/:token",templateUrl:"modules/users/views/password/reset-password.client.view.html"})}]),angular.module("users").controller("AuthenticationController",["$scope","$location","$state","$rootScope","User","Auth",function(a,b,c,d,e,f){a=d,a.credentials={},a.error="",a.signin=function(){e.login(a.credentials).then(function(b){f.login(b),a.user=d.user=f.ensureHasCurrentUser(e),"home"!==c.previous.name&&"verify"!==c.previous.name&&""!==c.previous.name?c.go(c.previous.name):c.go("listForms")},function(b){d.user=f.ensureHasCurrentUser(e),a.user=d.user,a.error=b,console.error("loginError: "+b)})},a.signup=function(){return"admin"===a.credentials?void(a.error="Username cannot be 'admin'. Please pick another username."):void e.signup(a.credentials).then(function(a){c.go("signup-success")},function(b){console.error(b),b?(a.error=b,console.error(b)):console.error("No response received")})}}]),angular.module("users").controller("PasswordController",["$scope","$stateParams","$state","User",function(a,b,c,d){a.error="",a.askForPasswordReset=function(){d.askForPasswordReset(a.credentials).then(function(b){a.success=b.message,a.credentials=null},function(b){a.error=b,a.credentials=null})},a.resetUserPassword=function(){a.success=a.error=null,d.resetPassword(a.passwordDetails,b.token).then(function(b){console.log(b),a.success=b.message,a.passwordDetails=null,c.go("reset-success")},function(b){a.error=b.message||b,a.passwordDetails=null})}}]),angular.module("users").controller("SettingsController",["$scope","$rootScope","$http","$state","Users","Auth",function(a,b,c,d,e,f){a.user=f.currentUser,a.hasConnectedAdditionalSocialAccounts=function(b){for(var c in a.user.additionalProvidersData)return!0;return!1},a.cancel=function(){a.user=f.currentUser},a.isConnectedSocialAccount=function(b){return a.user.provider===b||a.user.additionalProvidersData&&a.user.additionalProvidersData[b]},a.removeUserSocialAccount=function(b){a.success=a.error=null,c["delete"]("/users/accounts",{params:{provider:b}}).success(function(b){a.success=!0,a.user=b}).error(function(b){a.error=b.message})},a.updateUserProfile=function(b){if(b){a.success=a.error=null;var c=new e(a.user);c.$update(function(b){a.success=!0,a.user=b},function(b){a.error=b.data.message})}else a.submitted=!0},a.changeUserPassword=function(){a.success=a.error=null,c.post("/users/password",a.passwordDetails).success(function(b){a.success=!0,a.passwordDetails=null}).error(function(b){a.error=b.message})}}]),angular.module("users").controller("VerifyController",["$scope","$state","$rootScope","User","Auth","$stateParams",function(a,b,c,d,e,f){a.isResetSent=!1,a.credentials={},a.error="",a.resendVerifyEmail=function(){d.resendVerifyEmail(a.credentials.email).then(function(b){console.log(b),a.success=b.message,a.credentials=null,a.isResetSent=!0},function(b){a.error=b,a.credentials.email=null,a.isResetSent=!1})},a.validateVerifyToken=function(){f.token&&(console.log(f.token),d.validateVerifyToken(f.token).then(function(b){console.log("Success: "+b.message),a.success=b.message,a.isResetSent=!0,a.credentials.email=null},function(b){console.log("Error: "+b.message),a.isResetSent=!1,a.error=b,a.credentials.email=null}))}}]),angular.module("users").factory("Auth",["$window",function(a){var b={isLoggedIn:!1},c={_currentUser:null,get currentUser(){return this._currentUser},ensureHasCurrentUser:function(d){return c._currentUser&&c._currentUser.username?c._currentUser:a.user?(c._currentUser=a.user,c._currentUser):void d.getCurrent().then(function(d){return c._currentUser=d,b.isLoggedIn=!0,a.user=c._currentUser,c._currentUser},function(d){return b.isLoggedIn=!1,c._currentUser=null,a.user=null,console.log("User.getCurrent() err",d),null})},isAuthenticated:function(){return!!c._currentUser},getUserState:function(){return b},login:function(a){b.isLoggedIn=!0,c._currentUser=a},logout:function(){a.user=null,b.isLoggedIn=!1,c._currentUser=null}};return c}]),angular.module("users").service("Authorizer",["APP_PERMISSIONS","USER_ROLES",function(a,b){return function(c){return{canAccess:function(d){var e,f,g;for(angular.isArray(d)||(d=[d]),e=0,f=d.length;e-1;case a.viewPrivateForm:case a.editForm:return c.roles.indexOf(b.admin)>-1||c.roles.indexOf(b.normal)>-1}}return!1}}}}]),angular.module("users").factory("User",["$window","$q","$timeout","$http","$state",function(a,b,c,d,e){var f={getCurrent:function(){var a=b.defer();return d.get("/users/me").success(function(b){a.resolve(b)}).error(function(){a.reject("User's session has expired")}),a.promise},login:function(a){var c=b.defer();return d.post("/auth/signin",a).then(function(a){c.resolve(a.data)},function(a){c.reject(a.data.message||a.data)}),c.promise},logout:function(){var a=b.defer();return d.get("/auth/signout").then(function(b){a.resolve(null)},function(b){a.reject(b.data.message||b.data)}),a.promise},signup:function(a){var c=b.defer();return d.post("/auth/signup",a).then(function(a){c.resolve(a.data)},function(a){c.reject(a.data.message||a.data)}),c.promise},resendVerifyEmail:function(a){var c=b.defer();return d.post("/auth/verify",{email:a}).then(function(a){c.resolve(a.data)},function(a){c.reject(a.data.message||a.data)}),c.promise},validateVerifyToken:function(a){var c=/^([A-Za-z0-9]{48})$/g;if(!c.test(a))throw new Error("Error token: "+a+" is not a valid verification token");var e=b.defer();return d.get("/auth/verify/"+a).then(function(a){e.resolve(a.data)},function(a){e.reject(a.data)}),e.promise},resetPassword:function(a,c){var e=b.defer();return d.post("/auth/reset/"+c,a).then(function(a){e.resolve(a)},function(a){e.reject(a.data.message||a.data)}),e.promise},askForPasswordReset:function(a){var c=b.defer();return d.post("/auth/forgot",a).then(function(a){c.resolve(a.data)},function(a){c.reject(a.data.message||a.data)}),c.promise}};return f}]),angular.module("users").factory("Users",["$resource",function(a){return a("users",{},{update:{method:"PUT"}})}]),angular.module("core").config(["$translateProvider",function(a){a.translations("en",{MENU:"MENU",SIGNUP_TAB:"Sign Up",SIGNIN_TAB:"Sign In",SIGNOUT_TAB:"Signout",EDIT_PROFILE:"Edit Profile",MY_FORMS:"My Forms",MY_SETTINGS:"My Settings",CHANGE_PASSWORD:"Change Password"}),a.preferredLanguage("en").fallbackLanguage("en").useSanitizeValueStrategy("escape")}]),angular.module("core").config(["$translateProvider",function(a){a.translations("fr",{MENU:"MENU",SIGNUP_TAB:"Créer un Compte",SIGNIN_TAB:"Connexion",SIGNOUT_TAB:"Créer un compte",EDIT_PROFILE:"Modifier Mon Profil",MY_FORMS:"Mes Formulaires",MY_SETTINGS:"Mes Paramètres",CHANGE_PASSWORD:"Changer mon Mot de Pass"})}]),angular.module("core").config(["$translateProvider",function(a){a.translations("es",{MENU:"MENU",SIGNUP_TAB:"Registrarse",SIGNIN_TAB:"Entrar",SIGNOUT_TAB:"Salir",EDIT_PROFILE:"Editar Perfil",MY_FORMS:"Mis formularios",MY_SETTINGS:"Mis configuraciones",CHANGE_PASSWORD:"Cambiar contraseña"})}]),angular.module("forms").controller("AdminFormController",["$rootScope","$window","$scope","$stateParams","$state","Forms","CurrentForm","$http","$uibModal","myForm","$filter",function(a,b,c,d,e,f,g,h,i,j,k){c.activePill=0,c.copied=!1,c.onCopySuccess=function(a){c.copied=!0},c=a,c.animationsEnabled=!0,c.myform=j,a.saveInProgress=!1,g.setForm(c.myform),console.log("$scope.myform"),console.log(c.myform),c.formURL="/#!/forms/"+c.myform._id,c.myform.isLive?b.subdomainsDisabled===!0?c.actualFormURL=window.location.protocol+"//"+window.location.host+"/view"+c.formURL:window.location.host.split(".").length<3?c.actualFormURL=window.location.protocol+"//"+c.myform.admin.username+"."+window.location.host+c.formURL:c.actualFormURL=window.location.protocol+"//"+c.myform.admin.username+"."+window.location.host.split(".").slice(1,3).join(".")+c.formURL:c.actualFormURL=window.location.protocol+"//"+window.location.host+c.formURL;var l=c.refreshFrame=function(){document.getElementById("iframe")&&document.getElementById("iframe").contentWindow.location.reload()};c.tabData=[{heading:k("translate")("CONFIGURE_TAB"),templateName:"configure"}],c.setForm=function(a){c.myform=a},a.resetForm=function(){c.myform=f.get({formId:d.formId})},c.openDeleteModal=function(){c.deleteModal=i.open({animation:c.animationsEnabled,templateUrl:"formDeleteModal.html",controller:"AdminFormController",resolve:{myForm:function(){return c.myform}}}),c.deleteModal.result.then(function(a){c.selected=a},function(){console.log("Modal dismissed at: "+new Date)})},c.cancelDeleteModal=function(){c.deleteModal&&c.deleteModal.dismiss("cancel")},c.removeCurrentForm=function(){if(c.deleteModal&&c.deleteModal.opened){c.deleteModal.close();var a=c.myform._id;if(!a)throw new Error("Error - removeCurrentForm(): $scope.myform._id does not exist");h["delete"]("/forms/"+a).then(function(a){console.log("form deleted successfully"),e.go("listForms",{},{reload:!0})},function(a){console.log("ERROR: Form could not be deleted."),console.error(a)})}},c.update=a.update=function(b,d,e,f,g){l();var i=!0;if(b||(i=!a.saveInProgress),i){var j=null;if(b||(a.saveInProgress=!0),e)c.updatePromise=h.put("/forms/"+c.myform._id,{changes:d}).then(function(b){f&&(a.myform=c.myform=b.data)})["catch"](function(a){console.log("Error occured during form UPDATE.\n"),j=a.data})["finally"](function(){if(b||(a.saveInProgress=!1),"function"==typeof g)return g(j)});else{var k=d;k.analytics&&k.analytics.visitors&&delete k.analytics.visitors,k.submissions&&delete k.submissions,c.updatePromise=h.put("/forms/"+c.myform._id,{form:k}).then(function(b){f&&(a.myform=c.myform=b.data)})["catch"](function(a){console.log("Error occured during form UPDATE.\n"),j=a.data})["finally"](function(){if(b||(a.saveInProgress=!1),"function"==typeof g)return g(j)})}}}}]),angular.module("forms").controller("ListFormsController",["$rootScope","$scope","$stateParams","$state","GetForms","CurrentForm","$http","$uibModal",function(a,b,c,d,e,f,g,h){b=a,b.forms={},b.showCreateModal=!1,a.languageRegExp={regExp:/[@!#$%^&*()\-+={}\[\]|\\/'";:`.,~№?<>]+/i,test:function(a){return!this.regExp.test(a)}},b.openDeleteModal=function(a){b.deleteModal=h.open({animation:b.animationsEnabled,templateUrl:"deleteModalListForms.html",controller:["$uibModalInstance","items","$scope",function(a,b,c){c.content=b,c.cancel=c.cancelDeleteModal,c.deleteForm=function(){c.$parent.removeForm(b.formIndex)}}],resolve:{items:function(){return{currFormTitle:b.myforms[a].title,formIndex:a}}}})},b.cancelDeleteModal=function(){b.deleteModal&&b.deleteModal.dismiss("cancel")},b.findAll=function(){e.query(function(a){b.myforms=a})},b.openCreateModal=function(){b.showCreateModal||(b.showCreateModal=!0)},b.closeCreateModal=function(){b.showCreateModal&&(b.showCreateModal=!1)},b.setForm=function(a){b.myform=a},b.goToWithId=function(a,b){d.go(a,{formId:b},{reload:!0})},b.duplicateForm=function(a){var c=_.cloneDeep(b.myforms[a]);delete c._id,g.post("/forms",{form:c}).success(function(c,d,e){b.myforms.splice(a+1,0,c)}).error(function(a){console.error(a),null===a&&(b.error=a.data.message)})},b.createNewForm=function(){var a={};a.title=b.forms.createForm.title.$modelValue,a.language=b.forms.createForm.language.$modelValue,b.forms.createForm.$valid&&b.forms.createForm.$dirty&&g.post("/forms",{form:a}).success(function(a,c,d){b.goToWithId("viewForm.create",a._id+"")}).error(function(a){console.error(a),b.error=a.data.message})},b.removeForm=function(a){if(a>=b.myforms.length||a<0)throw new Error("Error: form_index in removeForm() must be between 0 and "+b.myforms.length-1);g["delete"]("/forms/"+b.myforms[a]._id).success(function(c,d,e){b.myforms.splice(a,1),b.cancelDeleteModal()}).error(function(a){console.error(a)})}}]),angular.module("forms").directive("configureFormDirective",["$rootScope","$http","Upload","CurrentForm",function(a,b,c,d){return{templateUrl:"modules/forms/admin/views/directiveViews/form/configure-form.client.view.html",restrict:"E",scope:{myform:"=",user:"=",pdfFields:"@",formFields:"@"},controller:["$scope",function(b){b.log="",b.languages=a.languages,b.resetForm=a.resetForm,b.update=a.update; +}]}}]),angular.module("forms").directive("editFormDirective",["$rootScope","FormFields","$uibModal",function(a,b,c){return{templateUrl:"modules/forms/admin/views/directiveViews/form/edit-form.client.view.html",restrict:"E",transclude:!0,scope:{myform:"="},controller:["$scope",function(d){var e;d.sortableOptions={appendTo:".dropzone",forceHelperSize:!0,forcePlaceholderSize:!0,update:function(a,b){d.update(!1,d.myform,!1,!1,function(a){})}},d.openEditModal=function(a){d.editFieldModal=c.open({animation:!0,templateUrl:"editFieldModal.html",windowClass:"edit-modal-window",controller:["$uibModalInstance","$scope",function(b,c){c.field=a,c.showLogicJump=!1,c.showAddOptions=function(a){return"dropdown"===a.fieldType||"checkbox"===a.fieldType||"radio"===a.fieldType},c.validShapes=["Heart","Star","thumbs-up","thumbs-down","Circle","Square","Check Circle","Smile Outlined","Hourglass","bell","Paper Plane","Comment","Trash"],c.addOption=function(a){if("checkbox"===a.fieldType||"dropdown"===a.fieldType||"radio"===a.fieldType){a.fieldOptions||(a.fieldOptions=[]);var b=a.fieldOptions.length+1,c={option_id:Math.floor(1e5*Math.random()),option_title:"Option "+b,option_value:"Option "+b};a.fieldOptions.push(c)}},c.deleteOption=function(a,b){if("checkbox"===a.fieldType||"dropdown"===a.fieldType||"radio"===a.fieldType)for(var c=0;c',restrict:"E",scope:{typeName:"@"},controller:["$scope",function(a){var b={textfield:"fa fa-pencil-square-o",dropdown:"fa fa-th-list",date:"fa fa-calendar",checkbox:"fa fa-check-square-o",radio:"fa fa-dot-circle-o",email:"fa fa-envelope-o",textarea:"fa fa-pencil-square",legal:"fa fa-legal",file:"fa fa-cloud-upload",rating:"fa fa-star-half-o",link:"fa fa-link",scale:"fa fa-sliders",stripe:"fa fa-credit-card",statement:"fa fa-quote-left",yes_no:"fa fa-toggle-on",number:"fa fa-slack"};a.typeIcon=b[a.typeName]}]}});var __indexOf=[].indexOf||function(a){for(var b=0,c=this.length;b=0&&(c=c+b+".html"),d.get(c)};return{template:"
{{field.title}}
",restrict:"E",scope:{field:"=",required:"&",design:"=",index:"=",forms:"="},link:function(a,d){c.chooseDefaultOption=a.chooseDefaultOption=function(b){"yes_no"===b?a.field.fieldValue="true":"rating"===b?a.field.fieldValue=0:"radio"===a.field.fieldType?(console.log(a.field),a.field.fieldValue=a.field.fieldOptions[0].option_value,console.log(a.field.fieldValue)):"legal"===b&&(a.field.fieldValue="true",c.nextField())},a.nextField=c.nextField,a.setActiveField=c.setActiveField,"date"===a.field.fieldType&&(a.dateOptions={changeYear:!0,changeMonth:!0,altFormat:"mm/dd/yyyy",yearRange:"1900:-0",defaultDate:0});var e=a.field.fieldType;if("number"===a.field.fieldType||"textfield"===a.field.fieldType||"email"===a.field.fieldType||"link"===a.field.fieldType){switch(a.field.fieldType){case"textfield":a.input_type="text";break;case"email":a.input_type="email",a.placeholder="joesmith@example.com";break;case"number":a.input_type="text",a.validateRegex=/^-?\d+$/;break;default:a.input_type="url",a.placeholder="http://example.com"}e="textfield"}var g=f(e);d.html(g).show();b(d.contents())(a)}}}]),angular.module("view-form").directive("onEnterKey",["$rootScope",function(a){return{restrict:"A",link:function(b,c,d){c.bind("keydown keypress",function(b){var c=b.which||b.keyCode,e=!1;null!==d.onEnterKeyDisabled&&(e=d.onEnterKeyDisabled),13!==c||b.shiftKey||e||(b.preventDefault(),a.$apply(function(){a.$eval(d.onEnterKey)}))})}}}]).directive("onTabKey",["$rootScope",function(a){return{restrict:"A",link:function(b,c,d){c.bind("keydown keypress",function(b){var c=b.which||b.keyCode;9!==c||b.shiftKey||(b.preventDefault(),a.$apply(function(){a.$eval(d.onTabKey)}))})}}}]).directive("onEnterOrTabKey",["$rootScope",function(a){return{restrict:"A",link:function(b,c,d){c.bind("keydown keypress",function(b){var c=b.which||b.keyCode;13!==c&&9!==c||b.shiftKey||(b.preventDefault(),a.$apply(function(){a.$eval(d.onEnterOrTabKey)}))})}}}]).directive("onTabAndShiftKey",["$rootScope",function(a){return{restrict:"A",link:function(b,c,d){c.bind("keydown keypress",function(b){var c=b.which||b.keyCode;9===c&&b.shiftKey&&(b.preventDefault(),a.$apply(function(){a.$eval(d.onTabAndShiftKey)}))})}}}]),angular.module("view-form").directive("onFinishRender",["$rootScope","$timeout",function(a,b){return{restrict:"A",link:function(b,c,d){if(c.attr("ng-repeat")||c.attr("data-ng-repeat")){var e=d.onFinishRender||"ngRepeat";b.$first&&!b.$last?b.$evalAsync(function(){a.$broadcast(e+" Started")}):b.$last&&b.$evalAsync(function(){a.$broadcast(e+" Finished")})}}}}]),jsep.addBinaryOp("contains",10),jsep.addBinaryOp("!contains",10),jsep.addBinaryOp("begins",10),jsep.addBinaryOp("!begins",10),jsep.addBinaryOp("ends",10),jsep.addBinaryOp("!ends",10),angular.module("view-form").directive("submitFormDirective",["$http","TimeCounter","$filter","$rootScope","SendVisitorData","$translate",function(a,b,c,d,e,f){return{templateUrl:"form_modules/forms/base/views/directiveViews/form/submit-form.client.view.html",restrict:"E",scope:{myform:"=",ispreview:"="},controller:["$document","$window","$scope",function(f,g,h){h.noscroll=!1,h.forms={},h.ispreview&&b.restartClock();var i=h.myform.visible_form_fields.filter(function(a){return"statement"!==a.fieldType}).length,j=c("formValidity")(h.myform);h.translateAdvancementData={done:j,total:i,answers_not_completed:i-j},h.reloadForm=function(){h.myform.submitted=!1,h.myform.form_fields=_.chain(h.myform.visible_form_fields).map(function(a){return a.fieldValue="",a}).value(),h.loading=!1,h.error="",h.selected={_id:"",index:0},h.setActiveField(h.myform.visible_form_fields[0]._id,0,!1),b.restartClock()},g.onscroll=function(){h.scrollPos=document.body.scrollTop||document.documentElement.scrollTop||0;var a=document.getElementsByClassName("activeField")[0].getBoundingClientRect();h.fieldTop=a.top,h.fieldBottom=a.bottom;var b,c;h.noscroll||(h.selected.index===h.myform.visible_form_fields.length-1&&h.fieldBottom<200?(c=h.selected.index+1,b="submit_field",h.setActiveField(b,c,!1)):h.selected.index===h.myform.visible_form_fields.length?h.fieldTop>200&&(c=h.selected.index-1,b=h.myform.visible_form_fields[c]._id,h.setActiveField(b,c,!1)):h.fieldBottom<0?(c=h.selected.index+1,b=h.myform.visible_form_fields[c]._id,h.setActiveField(b,c,!1)):0!==h.selected.index&&h.fieldTop>0&&(c=h.selected.index-1,b=h.myform.visible_form_fields[c]._id,h.setActiveField(b,c,!1)),h.$apply())};var k=function(a){var b=a.logicJump;if(b.expressionString&&b.valueB&&a.fieldValue){var c,d,e=jsep(b.expressionString);if("field"===e.left.name?(c=a.fieldValue,d=b.valueB):(c=b.valueB,d=a.fieldValue),"number"===a.fieldType||"scale"===a.fieldType||"rating"===a.fieldType)switch(e.operator){case"==":return parseInt(c)===parseInt(d);case"!==":return parseInt(c)!==parseInt(d);case">":return parseInt(c)>parseInt(d);case">=":return parseInt(c)>parseInt(d);case"<":return parseInt(c)-1;case"!contains":return!(c.indexOf(d)>-1);case"begins":return c.startsWith(d);case"!begins":return!c.startsWith(d);case"ends":return c.endsWith(d);case"!ends":return c.endsWith(d);default:return!1}}},l=function(){if(null===h.selected)throw console.error("current active field is null"),new Error("current active field is null");return"submit_field"===h.selected._id?h.myform.form_fields.length-1:h.selected.index};h.setActiveField=d.setActiveField=function(a,d,g){if(null!==h.selected&&h.selected._id!==a){if(h.selected._id=a,h.selected.index=d,!d)for(var j=0;j-1)if(a.logicJump&&k(a))d.setActiveField(a.logicJump.jumpTo,null,!0);else{var b,c;h.selected.index0){var a=h.selected.index-1,b=h.myform.visible_form_fields[a]._id;h.setActiveField(b,a,!0)}},h.exitStartPage=function(){h.myform.startPage.showStart=!1,h.myform.visible_form_fields.length>0&&(h.selected._id=h.myform.visible_form_fields[0]._id)},d.goToInvalid=h.goToInvalid=function(){document.querySelectorAll(".ng-invalid.focusOn")[0].focus()};var m=function(){var a=new MobileDetect(window.navigator.userAgent),b="other";return a.tablet()?b="tablet":a.mobile()?b="mobile":a.is("bot")||(b="desktop"),{type:b,name:window.navigator.platform}},n=function(){$.ajaxSetup({async:!1});var a=$.getJSON("https://freegeoip.net/json/").responseJSON;return $.ajaxSetup({async:!0}),a&&a.ip||(a={ip:"Adblocker"}),{ipAddr:a.ip,geoLocation:{City:a.city,Country:a.country_name}}};d.submitForm=h.submitForm=function(){var d=b.stopClock();h.loading=!0;var f=_.cloneDeep(h.myform),g=m();f.device=g;var i=n();f.ipAddr=i.ipAddr,f.geoLocation=i.geoLocation,f.timeElapsed=d,f.percentageComplete=c("formValidity")(h.myform)/h.myform.visible_form_fields.length*100,delete f.endPage,delete f.isLive,delete f.provider,delete f.startPage,delete f.visible_form_fields,delete f.analytics,delete f.design,delete f.submissions,delete f.submitted;for(var j=0;j

{{index+1}} {{field.title}} {{ 'OPTIONAL' | translate }}

{{field.description}}


"); $templateCache.put("form_modules/forms/base/views/directiveViews/form/submit-form.client.view.html", - "
{{ 'COMPLETING_NEEDED' | translate:translateAdvancementData }}
{{ 'ENTER' | translate }}

{{ 'ADVANCEMENT' | translate:translateAdvancementData }}

"); + "
{{ 'COMPLETING_NEEDED' | translate:translateAdvancementData }}
{{ 'ENTER' | translate }}

{{ 'ADVANCEMENT' | translate:translateAdvancementData }}

"); }]); 'use strict'; @@ -941,14 +941,30 @@ angular.module('view-form').directive('submitFormDirective', ['$http', 'TimeCoun form.timeElapsed = _timeElapsed; form.percentageComplete = $filter('formValidity')($scope.myform) / $scope.myform.visible_form_fields.length * 100; + delete form.endPage + delete form.isLive + delete form.provider + delete form.startPage delete form.visible_form_fields; delete form.analytics; delete form.design; delete form.submissions; + delete form.submitted; for(var i=0; i < $scope.myform.form_fields.length; i++){ if($scope.myform.form_fields[i].fieldType === 'dropdown' && !$scope.myform.form_fields[i].deletePreserved){ $scope.myform.form_fields[i].fieldValue = $scope.myform.form_fields[i].fieldValue.option_value; } + + //Get rid of unnessecary attributes for each form field + delete form.form_fields[i].submissionId; + delete form.form_fields[i].disabled; + delete form.form_fields[i].ratingOptions; + delete form.form_fields[i].fieldOptions; + delete form.form_fields[i].logicJump; + delete form.form_fields[i].description; + delete form.form_fields[i].validFieldTypes; + delete form.form_fields[i].fieldType; + } setTimeout(function () { diff --git a/public/dist/form-application.min.js b/public/dist/form-application.min.js index 32db0e88..a6c6296b 100644 --- a/public/dist/form-application.min.js +++ b/public/dist/form-application.min.js @@ -1,2 +1,2 @@ -"use strict";var ApplicationConfiguration=function(){var a="TellForm-Form",b=["duScroll","ui.select","ngSanitize","vButton","ngResource","TellForm-Form.form_templates","ui.router","ui.bootstrap","pascalprecht.translate"],c=function(b,c){angular.module(b,c||[]),angular.module(a).requires.push(b)};return{applicationModuleName:a,applicationModuleVendorDependencies:b,registerModule:c}}();angular.module(ApplicationConfiguration.applicationModuleName,ApplicationConfiguration.applicationModuleVendorDependencies),angular.module(ApplicationConfiguration.applicationModuleName).config(["$locationProvider",function(a){a.hashPrefix("!")}]),angular.module(ApplicationConfiguration.applicationModuleName).constant("APP_PERMISSIONS",{viewAdminSettings:"viewAdminSettings",editAdminSettings:"editAdminSettings",editForm:"editForm",viewPrivateForm:"viewPrivateForm"}),angular.module(ApplicationConfiguration.applicationModuleName).constant("USER_ROLES",{admin:"admin",normal:"user",superuser:"superuser"}),angular.module(ApplicationConfiguration.applicationModuleName).constant("FORM_URL","/forms/:formId"),angular.element(document).ready(function(){"#_=_"===window.location.hash&&(window.location.hash="#!"),angular.bootstrap(document,[ApplicationConfiguration.applicationModuleName])}),angular.module("TellForm-Form.form_templates",[]).run(["$templateCache",function(a){a.put("form_modules/forms/base/views/form-unauthorized.client.view.html",'

Not Authorized to Access Form

The form you are trying to access is currently private and not accesible publically.
If you are the owner of the form, you can set it to "Public" in the "Configuration" panel in the form admin.
'),a.put("form_modules/forms/base/views/submit-form.client.view.html","
"),a.put("form_modules/forms/base/views/directiveViews/entryPage/startPage.html",'

{{pageData.introTitle}}

{{pageData.introParagraph}}

'),a.put("form_modules/forms/base/views/directiveViews/field/date.html",'

{{index+1}} {{field.title}} {{ \'OPTIONAL\' | translate }}

{{field.description}}

'),a.put("form_modules/forms/base/views/directiveViews/field/dropdown.html",'
'),a.put("form_modules/forms/base/views/directiveViews/field/hidden.html",""),a.put("form_modules/forms/base/views/directiveViews/field/legal.html",'
'),a.put("form_modules/forms/base/views/directiveViews/field/radio.html",'

{{index+1}} {{field.title}} {{ \'OPTIONAL\' | translate }}

{{field.description}}


'),a.put("form_modules/forms/base/views/directiveViews/field/rating.html",'

{{index+1}} {{field.title}} {{ \'OPTIONAL\' | translate }}

{{field.description}}

'),a.put("form_modules/forms/base/views/directiveViews/field/statement.html",'

{{field.title}}

{{field.description}}

{{field.description}}


'),a.put("form_modules/forms/base/views/directiveViews/field/textarea.html",'

{{index+1}} {{field.title}} {{ \'OPTIONAL\' | translate }}

{{ \'NEWLINE\' | translate }}

{{field.description}}

Press SHIFT+ENTER to add a newline
{{ \'ENTER\' | translate }}
'),a.put("form_modules/forms/base/views/directiveViews/field/textfield.html",'

{{index+1}} {{field.title}} ({{ \'OPTIONAL\' | translate }})

{{field.description}}

{{ \'ENTER\' | translate }}
'),a.put("form_modules/forms/base/views/directiveViews/field/yes_no.html",'

{{index+1}} {{field.title}} {{ \'OPTIONAL\' | translate }}

{{field.description}}


'),a.put("form_modules/forms/base/views/directiveViews/form/submit-form.client.view.html",'
{{ \'COMPLETING_NEEDED\' | translate:translateAdvancementData }}
')}]),ApplicationConfiguration.registerModule("view-form",["ngFileUpload","ui.date","angular-input-stars"]),angular.module("view-form").config(["$stateProvider",function(a){a.state("submitForm",{url:"/forms/:formId",templateUrl:"/static/form_modules/forms/base/views/submit-form.client.view.html",resolve:{Forms:"Forms",myForm:["Forms","$q","$state","$stateParams",function(a,b,c,d){var e=b.defer();return a.get({formId:d.formId}).$promise.then(function(a){return a},function(a){return console.error(a),c.go("unauthorizedFormAccess"),e.reject({redirectTo:"unauthorizedFormAccess"})})}]},controller:"SubmitFormController",controllerAs:"ctrl"}).state("unauthorizedFormAccess",{url:"/forms/unauthorized",templateUrl:"/static/form_modules/forms/base/views/form-unauthorized.client.view.html"})}]),function(){function a(a,b){function c(b,c,d){var e=window.navigator.userLanguage||window.navigator.language;e=e.slice(0,2);var f=navigator.userAgent,g=new MobileDetect(f),h="other";g.tablet()?h="tablet":g.mobile()?h="mobile":g.is("bot")||(h="desktop"),$.ajaxSetup({async:!1});var i=$.getJSON("https://freegeoip.net/json/").responseJSON;$.ajaxSetup({async:!0}),i||(i={ip:"",city:"",country_name:""});var j={referrer:document.referrer,isSubmitted:b.submitted,formId:b._id,lastActiveField:b.form_fields[c]._id,timeElapsed:d,language:e,deviceType:h,ipAddr:i.ip,geoLocation:{city:i.city,country:i.country_name}};console.log("sending form-visitor-data"),a.emit("form-visitor-data",j)}function d(){a.socket||a.connect(),a.on("disconnect",function(){console.log("reconnected to socket"),a.connect()})}var e={send:c};return d(),e}angular.module("view-form").factory("SendVisitorData",a),a.$inject=["Socket","$state"]}(),angular.module("view-form").directive("keyToOption",function(){return{restrict:"A",scope:{field:"="},link:function(a,b,c,d){b.bind("keydown keypress",function(b){var c=b.which||b.keyCode,d=parseInt(String.fromCharCode(c))-1;d',restrict:"E",scope:{typeName:"@"},controller:["$scope",function(a){var b={textfield:"fa fa-pencil-square-o",dropdown:"fa fa-th-list",date:"fa fa-calendar",checkbox:"fa fa-check-square-o",radio:"fa fa-dot-circle-o",email:"fa fa-envelope-o",textarea:"fa fa-pencil-square",legal:"fa fa-legal",file:"fa fa-cloud-upload",rating:"fa fa-star-half-o",link:"fa fa-link",scale:"fa fa-sliders",stripe:"fa fa-credit-card",statement:"fa fa-quote-left",yes_no:"fa fa-toggle-on",number:"fa fa-slack"};a.typeIcon=b[a.typeName]}]}});var __indexOf=[].indexOf||function(a){for(var b=0,c=this.length;b=0&&(c=c+b+".html"),d.get(c)};return{template:"
{{field.title}}
",restrict:"E",scope:{field:"=",required:"&",design:"=",index:"=",forms:"="},link:function(a,d){c.chooseDefaultOption=a.chooseDefaultOption=function(b){"yes_no"===b?a.field.fieldValue="true":"rating"===b?a.field.fieldValue=0:"radio"===a.field.fieldType?(console.log(a.field),a.field.fieldValue=a.field.fieldOptions[0].option_value,console.log(a.field.fieldValue)):"legal"===b&&(a.field.fieldValue="true",c.nextField())},a.nextField=c.nextField,a.setActiveField=c.setActiveField,"date"===a.field.fieldType&&(a.dateOptions={changeYear:!0,changeMonth:!0,altFormat:"mm/dd/yyyy",yearRange:"1900:-0",defaultDate:0});var e=a.field.fieldType;if("number"===a.field.fieldType||"textfield"===a.field.fieldType||"email"===a.field.fieldType||"link"===a.field.fieldType){switch(a.field.fieldType){case"textfield":a.input_type="text";break;case"email":a.input_type="email",a.placeholder="joesmith@example.com";break;case"number":a.input_type="text",a.validateRegex=/^-?\d+$/;break;default:a.input_type="url",a.placeholder="http://example.com"}e="textfield"}var g=f(e);d.html(g).show();b(d.contents())(a)}}}]),angular.module("view-form").directive("onEnterKey",["$rootScope",function(a){return{restrict:"A",link:function(b,c,d){c.bind("keydown keypress",function(b){var c=b.which||b.keyCode,e=!1;null!==d.onEnterKeyDisabled&&(e=d.onEnterKeyDisabled),13!==c||b.shiftKey||e||(b.preventDefault(),a.$apply(function(){a.$eval(d.onEnterKey)}))})}}}]).directive("onTabKey",["$rootScope",function(a){return{restrict:"A",link:function(b,c,d){c.bind("keydown keypress",function(b){var c=b.which||b.keyCode;9!==c||b.shiftKey||(b.preventDefault(),a.$apply(function(){a.$eval(d.onTabKey)}))})}}}]).directive("onEnterOrTabKey",["$rootScope",function(a){return{restrict:"A",link:function(b,c,d){c.bind("keydown keypress",function(b){var c=b.which||b.keyCode;13!==c&&9!==c||b.shiftKey||(b.preventDefault(),a.$apply(function(){a.$eval(d.onEnterOrTabKey)}))})}}}]).directive("onTabAndShiftKey",["$rootScope",function(a){return{restrict:"A",link:function(b,c,d){c.bind("keydown keypress",function(b){var c=b.which||b.keyCode;9===c&&b.shiftKey&&(b.preventDefault(),a.$apply(function(){a.$eval(d.onTabAndShiftKey)}))})}}}]),angular.module("view-form").directive("onFinishRender",["$rootScope","$timeout",function(a,b){return{restrict:"A",link:function(b,c,d){if(c.attr("ng-repeat")||c.attr("data-ng-repeat")){var e=d.onFinishRender||"ngRepeat";b.$first&&!b.$last?b.$evalAsync(function(){a.$broadcast(e+" Started")}):b.$last&&b.$evalAsync(function(){a.$broadcast(e+" Finished")})}}}}]),jsep.addBinaryOp("contains",10),jsep.addBinaryOp("!contains",10),jsep.addBinaryOp("begins",10),jsep.addBinaryOp("!begins",10),jsep.addBinaryOp("ends",10),jsep.addBinaryOp("!ends",10),angular.module("view-form").directive("submitFormDirective",["$http","TimeCounter","$filter","$rootScope","SendVisitorData","$translate",function(a,b,c,d,e,f){return{templateUrl:"form_modules/forms/base/views/directiveViews/form/submit-form.client.view.html",restrict:"E",scope:{myform:"=",ispreview:"="},controller:["$document","$window","$scope",function(f,g,h){h.noscroll=!1,h.forms={},h.ispreview&&b.restartClock();var i=h.myform.visible_form_fields.filter(function(a){return"statement"!==a.fieldType}).length,j=c("formValidity")(h.myform);h.translateAdvancementData={done:j,total:i,answers_not_completed:i-j},h.reloadForm=function(){h.myform.submitted=!1,h.myform.form_fields=_.chain(h.myform.visible_form_fields).map(function(a){return a.fieldValue="",a}).value(),h.loading=!1,h.error="",h.selected={_id:"",index:0},h.setActiveField(h.myform.visible_form_fields[0]._id,0,!1),b.restartClock()},g.onscroll=function(){h.scrollPos=document.body.scrollTop||document.documentElement.scrollTop||0;var a=document.getElementsByClassName("activeField")[0].getBoundingClientRect();h.fieldTop=a.top,h.fieldBottom=a.bottom;var b,c;h.noscroll||(h.selected.index===h.myform.visible_form_fields.length-1&&h.fieldBottom<200?(c=h.selected.index+1,b="submit_field",h.setActiveField(b,c,!1)):h.selected.index===h.myform.visible_form_fields.length?h.fieldTop>200&&(c=h.selected.index-1,b=h.myform.visible_form_fields[c]._id,h.setActiveField(b,c,!1)):h.fieldBottom<0?(c=h.selected.index+1,b=h.myform.visible_form_fields[c]._id,h.setActiveField(b,c,!1)):0!==h.selected.index&&h.fieldTop>0&&(c=h.selected.index-1,b=h.myform.visible_form_fields[c]._id,h.setActiveField(b,c,!1)), -h.$apply())};var k=function(a){var b=a.logicJump;if(b.expressionString&&b.valueB&&a.fieldValue){var c,d,e=jsep(b.expressionString);if("field"===e.left.name?(c=a.fieldValue,d=b.valueB):(c=b.valueB,d=a.fieldValue),"number"===a.fieldType||"scale"===a.fieldType||"rating"===a.fieldType)switch(e.operator){case"==":return parseInt(c)===parseInt(d);case"!==":return parseInt(c)!==parseInt(d);case">":return parseInt(c)>parseInt(d);case">=":return parseInt(c)>parseInt(d);case"<":return parseInt(c)-1;case"!contains":return!(c.indexOf(d)>-1);case"begins":return c.startsWith(d);case"!begins":return!c.startsWith(d);case"ends":return c.endsWith(d);case"!ends":return c.endsWith(d);default:return!1}}},l=function(){if(null===h.selected)throw console.error("current active field is null"),new Error("current active field is null");return"submit_field"===h.selected._id?h.myform.form_fields.length-1:h.selected.index};h.setActiveField=d.setActiveField=function(a,d,g){if(null!==h.selected&&h.selected._id!==a){if(h.selected._id=a,h.selected.index=d,!d)for(var j=0;j-1)if(a.logicJump&&k(a))d.setActiveField(a.logicJump.jumpTo,null,!0);else{var b,c;h.selected.index0){var a=h.selected.index-1,b=h.myform.visible_form_fields[a]._id;h.setActiveField(b,a,!0)}},h.exitStartPage=function(){h.myform.startPage.showStart=!1,h.myform.visible_form_fields.length>0&&(h.selected._id=h.myform.visible_form_fields[0]._id)},d.goToInvalid=h.goToInvalid=function(){document.querySelectorAll(".ng-invalid.focusOn")[0].focus()};var m=function(){var a=new MobileDetect(window.navigator.userAgent),b="other";return a.tablet()?b="tablet":a.mobile()?b="mobile":a.is("bot")||(b="desktop"),{type:b,name:window.navigator.platform}},n=function(){$.ajaxSetup({async:!1});var a=$.getJSON("https://freegeoip.net/json/").responseJSON;return $.ajaxSetup({async:!0}),a&&a.ip||(a={ip:"Adblocker"}),{ipAddr:a.ip,geoLocation:{City:a.city,Country:a.country_name}}};d.submitForm=h.submitForm=function(){var d=b.stopClock();h.loading=!0;var f=_.cloneDeep(h.myform),g=m();f.device=g;var i=n();f.ipAddr=i.ipAddr,f.geoLocation=i.geoLocation,f.timeElapsed=d,f.percentageComplete=c("formValidity")(h.myform)/h.myform.visible_form_fields.length*100,delete f.visible_form_fields,delete f.analytics,delete f.design,delete f.submissions;for(var j=0;j

Not Authorized to Access Form

The form you are trying to access is currently private and not accesible publically.
If you are the owner of the form, you can set it to "Public" in the "Configuration" panel in the form admin.
'),a.put("form_modules/forms/base/views/submit-form.client.view.html","
"),a.put("form_modules/forms/base/views/directiveViews/entryPage/startPage.html",'

{{pageData.introTitle}}

{{pageData.introParagraph}}

'),a.put("form_modules/forms/base/views/directiveViews/field/date.html",'

{{index+1}} {{field.title}} {{ \'OPTIONAL\' | translate }}

{{field.description}}

'),a.put("form_modules/forms/base/views/directiveViews/field/dropdown.html",'
'),a.put("form_modules/forms/base/views/directiveViews/field/hidden.html",""),a.put("form_modules/forms/base/views/directiveViews/field/legal.html",'
'),a.put("form_modules/forms/base/views/directiveViews/field/radio.html",'

{{index+1}} {{field.title}} {{ \'OPTIONAL\' | translate }}

{{field.description}}


'),a.put("form_modules/forms/base/views/directiveViews/field/rating.html",'

{{index+1}} {{field.title}} {{ \'OPTIONAL\' | translate }}

{{field.description}}

'),a.put("form_modules/forms/base/views/directiveViews/field/statement.html",'

{{field.title}}

{{field.description}}

{{field.description}}


'),a.put("form_modules/forms/base/views/directiveViews/field/textarea.html",'

{{index+1}} {{field.title}} {{ \'OPTIONAL\' | translate }}

{{ \'NEWLINE\' | translate }}

{{field.description}}

Press SHIFT+ENTER to add a newline
{{ \'ENTER\' | translate }}
'),a.put("form_modules/forms/base/views/directiveViews/field/textfield.html",'

{{index+1}} {{field.title}} ({{ \'OPTIONAL\' | translate }})

{{field.description}}

{{ \'ENTER\' | translate }}
'),a.put("form_modules/forms/base/views/directiveViews/field/yes_no.html",'

{{index+1}} {{field.title}} {{ \'OPTIONAL\' | translate }}

{{field.description}}


'),a.put("form_modules/forms/base/views/directiveViews/form/submit-form.client.view.html",'
{{ \'COMPLETING_NEEDED\' | translate:translateAdvancementData }}
')}]),ApplicationConfiguration.registerModule("view-form",["ngFileUpload","ui.date","angular-input-stars"]),angular.module("view-form").config(["$stateProvider",function(a){a.state("submitForm",{url:"/forms/:formId",templateUrl:"/static/form_modules/forms/base/views/submit-form.client.view.html",resolve:{Forms:"Forms",myForm:["Forms","$q","$state","$stateParams",function(a,b,c,d){var e=b.defer();return a.get({formId:d.formId}).$promise.then(function(a){return a},function(a){return console.error(a),c.go("unauthorizedFormAccess"),e.reject({redirectTo:"unauthorizedFormAccess"})})}]},controller:"SubmitFormController",controllerAs:"ctrl"}).state("unauthorizedFormAccess",{url:"/forms/unauthorized",templateUrl:"/static/form_modules/forms/base/views/form-unauthorized.client.view.html"})}]),function(){function a(a,b){function c(b,c,d){var e=window.navigator.userLanguage||window.navigator.language;e=e.slice(0,2);var f=navigator.userAgent,g=new MobileDetect(f),h="other";g.tablet()?h="tablet":g.mobile()?h="mobile":g.is("bot")||(h="desktop"),$.ajaxSetup({async:!1});var i=$.getJSON("https://freegeoip.net/json/").responseJSON;$.ajaxSetup({async:!0}),i||(i={ip:"",city:"",country_name:""});var j={referrer:document.referrer,isSubmitted:b.submitted,formId:b._id,lastActiveField:b.form_fields[c]._id,timeElapsed:d,language:e,deviceType:h,ipAddr:i.ip,geoLocation:{city:i.city,country:i.country_name}};console.log("sending form-visitor-data"),a.emit("form-visitor-data",j)}function d(){a.socket||a.connect(),a.on("disconnect",function(){console.log("reconnected to socket"),a.connect()})}var e={send:c};return d(),e}angular.module("view-form").factory("SendVisitorData",a),a.$inject=["Socket","$state"]}(),angular.module("view-form").directive("keyToOption",function(){return{restrict:"A",scope:{field:"="},link:function(a,b,c,d){b.bind("keydown keypress",function(b){var c=b.which||b.keyCode,d=parseInt(String.fromCharCode(c))-1;d',restrict:"E",scope:{typeName:"@"},controller:["$scope",function(a){var b={textfield:"fa fa-pencil-square-o",dropdown:"fa fa-th-list",date:"fa fa-calendar",checkbox:"fa fa-check-square-o",radio:"fa fa-dot-circle-o",email:"fa fa-envelope-o",textarea:"fa fa-pencil-square",legal:"fa fa-legal",file:"fa fa-cloud-upload",rating:"fa fa-star-half-o",link:"fa fa-link",scale:"fa fa-sliders",stripe:"fa fa-credit-card",statement:"fa fa-quote-left",yes_no:"fa fa-toggle-on",number:"fa fa-slack"};a.typeIcon=b[a.typeName]}]}});var __indexOf=[].indexOf||function(a){for(var b=0,c=this.length;b=0&&(c=c+b+".html"),d.get(c)};return{template:"
{{field.title}}
",restrict:"E",scope:{field:"=",required:"&",design:"=",index:"=",forms:"="},link:function(a,d){c.chooseDefaultOption=a.chooseDefaultOption=function(b){"yes_no"===b?a.field.fieldValue="true":"rating"===b?a.field.fieldValue=0:"radio"===a.field.fieldType?(console.log(a.field),a.field.fieldValue=a.field.fieldOptions[0].option_value,console.log(a.field.fieldValue)):"legal"===b&&(a.field.fieldValue="true",c.nextField())},a.nextField=c.nextField,a.setActiveField=c.setActiveField,"date"===a.field.fieldType&&(a.dateOptions={changeYear:!0,changeMonth:!0,altFormat:"mm/dd/yyyy",yearRange:"1900:-0",defaultDate:0});var e=a.field.fieldType;if("number"===a.field.fieldType||"textfield"===a.field.fieldType||"email"===a.field.fieldType||"link"===a.field.fieldType){switch(a.field.fieldType){case"textfield":a.input_type="text";break;case"email":a.input_type="email",a.placeholder="joesmith@example.com";break;case"number":a.input_type="text",a.validateRegex=/^-?\d+$/;break;default:a.input_type="url",a.placeholder="http://example.com"}e="textfield"}var g=f(e);d.html(g).show();b(d.contents())(a)}}}]),angular.module("view-form").directive("onEnterKey",["$rootScope",function(a){return{restrict:"A",link:function(b,c,d){c.bind("keydown keypress",function(b){var c=b.which||b.keyCode,e=!1;null!==d.onEnterKeyDisabled&&(e=d.onEnterKeyDisabled),13!==c||b.shiftKey||e||(b.preventDefault(),a.$apply(function(){a.$eval(d.onEnterKey)}))})}}}]).directive("onTabKey",["$rootScope",function(a){return{restrict:"A",link:function(b,c,d){c.bind("keydown keypress",function(b){var c=b.which||b.keyCode;9!==c||b.shiftKey||(b.preventDefault(),a.$apply(function(){a.$eval(d.onTabKey)}))})}}}]).directive("onEnterOrTabKey",["$rootScope",function(a){return{restrict:"A",link:function(b,c,d){c.bind("keydown keypress",function(b){var c=b.which||b.keyCode;13!==c&&9!==c||b.shiftKey||(b.preventDefault(),a.$apply(function(){a.$eval(d.onEnterOrTabKey)}))})}}}]).directive("onTabAndShiftKey",["$rootScope",function(a){return{restrict:"A",link:function(b,c,d){c.bind("keydown keypress",function(b){var c=b.which||b.keyCode;9===c&&b.shiftKey&&(b.preventDefault(),a.$apply(function(){a.$eval(d.onTabAndShiftKey)}))})}}}]),angular.module("view-form").directive("onFinishRender",["$rootScope","$timeout",function(a,b){return{restrict:"A",link:function(b,c,d){if(c.attr("ng-repeat")||c.attr("data-ng-repeat")){var e=d.onFinishRender||"ngRepeat";b.$first&&!b.$last?b.$evalAsync(function(){a.$broadcast(e+" Started")}):b.$last&&b.$evalAsync(function(){a.$broadcast(e+" Finished")})}}}}]),jsep.addBinaryOp("contains",10),jsep.addBinaryOp("!contains",10),jsep.addBinaryOp("begins",10),jsep.addBinaryOp("!begins",10),jsep.addBinaryOp("ends",10),jsep.addBinaryOp("!ends",10),angular.module("view-form").directive("submitFormDirective",["$http","TimeCounter","$filter","$rootScope","SendVisitorData","$translate",function(a,b,c,d,e,f){return{templateUrl:"form_modules/forms/base/views/directiveViews/form/submit-form.client.view.html",restrict:"E",scope:{myform:"=",ispreview:"="},controller:["$document","$window","$scope",function(f,g,h){h.noscroll=!1,h.forms={},h.ispreview&&b.restartClock();var i=h.myform.visible_form_fields.filter(function(a){return"statement"!==a.fieldType}).length,j=c("formValidity")(h.myform);h.translateAdvancementData={done:j,total:i,answers_not_completed:i-j},h.reloadForm=function(){h.myform.submitted=!1,h.myform.form_fields=_.chain(h.myform.visible_form_fields).map(function(a){return a.fieldValue="",a}).value(),h.loading=!1,h.error="",h.selected={_id:"",index:0},h.setActiveField(h.myform.visible_form_fields[0]._id,0,!1),b.restartClock()},g.onscroll=function(){h.scrollPos=document.body.scrollTop||document.documentElement.scrollTop||0;var a=document.getElementsByClassName("activeField")[0].getBoundingClientRect();h.fieldTop=a.top,h.fieldBottom=a.bottom;var b,c;h.noscroll||(h.selected.index===h.myform.visible_form_fields.length-1&&h.fieldBottom<200?(c=h.selected.index+1,b="submit_field",h.setActiveField(b,c,!1)):h.selected.index===h.myform.visible_form_fields.length?h.fieldTop>200&&(c=h.selected.index-1,b=h.myform.visible_form_fields[c]._id, +h.setActiveField(b,c,!1)):h.fieldBottom<0?(c=h.selected.index+1,b=h.myform.visible_form_fields[c]._id,h.setActiveField(b,c,!1)):0!==h.selected.index&&h.fieldTop>0&&(c=h.selected.index-1,b=h.myform.visible_form_fields[c]._id,h.setActiveField(b,c,!1)),h.$apply())};var k=function(a){var b=a.logicJump;if(b.expressionString&&b.valueB&&a.fieldValue){var c,d,e=jsep(b.expressionString);if("field"===e.left.name?(c=a.fieldValue,d=b.valueB):(c=b.valueB,d=a.fieldValue),"number"===a.fieldType||"scale"===a.fieldType||"rating"===a.fieldType)switch(e.operator){case"==":return parseInt(c)===parseInt(d);case"!==":return parseInt(c)!==parseInt(d);case">":return parseInt(c)>parseInt(d);case">=":return parseInt(c)>parseInt(d);case"<":return parseInt(c)-1;case"!contains":return!(c.indexOf(d)>-1);case"begins":return c.startsWith(d);case"!begins":return!c.startsWith(d);case"ends":return c.endsWith(d);case"!ends":return c.endsWith(d);default:return!1}}},l=function(){if(null===h.selected)throw console.error("current active field is null"),new Error("current active field is null");return"submit_field"===h.selected._id?h.myform.form_fields.length-1:h.selected.index};h.setActiveField=d.setActiveField=function(a,d,g){if(null!==h.selected&&h.selected._id!==a){if(h.selected._id=a,h.selected.index=d,!d)for(var j=0;j-1)if(a.logicJump&&k(a))d.setActiveField(a.logicJump.jumpTo,null,!0);else{var b,c;h.selected.index0){var a=h.selected.index-1,b=h.myform.visible_form_fields[a]._id;h.setActiveField(b,a,!0)}},h.exitStartPage=function(){h.myform.startPage.showStart=!1,h.myform.visible_form_fields.length>0&&(h.selected._id=h.myform.visible_form_fields[0]._id)},d.goToInvalid=h.goToInvalid=function(){document.querySelectorAll(".ng-invalid.focusOn")[0].focus()};var m=function(){var a=new MobileDetect(window.navigator.userAgent),b="other";return a.tablet()?b="tablet":a.mobile()?b="mobile":a.is("bot")||(b="desktop"),{type:b,name:window.navigator.platform}},n=function(){$.ajaxSetup({async:!1});var a=$.getJSON("https://freegeoip.net/json/").responseJSON;return $.ajaxSetup({async:!0}),a&&a.ip||(a={ip:"Adblocker"}),{ipAddr:a.ip,geoLocation:{City:a.city,Country:a.country_name}}};d.submitForm=h.submitForm=function(){var d=b.stopClock();h.loading=!0;var f=_.cloneDeep(h.myform),g=m();f.device=g;var i=n();f.ipAddr=i.ipAddr,f.geoLocation=i.geoLocation,f.timeElapsed=d,f.percentageComplete=c("formValidity")(h.myform)/h.myform.visible_form_fields.length*100,delete f.endPage,delete f.isLive,delete f.provider,delete f.startPage,delete f.visible_form_fields,delete f.analytics,delete f.design,delete f.submissions,delete f.submitted;for(var j=0;j

{{index+1}} {{field.title}} {{ 'OPTIONAL' | translate }}

{{field.description}}


"); $templateCache.put("form_modules/forms/base/views/directiveViews/form/submit-form.client.view.html", - "
{{ 'COMPLETING_NEEDED' | translate:translateAdvancementData }}
{{ 'ENTER' | translate }}

{{ 'ADVANCEMENT' | translate:translateAdvancementData }}

"); + "
{{ 'COMPLETING_NEEDED' | translate:translateAdvancementData }}
{{ 'ENTER' | translate }}

{{ 'ADVANCEMENT' | translate:translateAdvancementData }}

"); }]); diff --git a/public/dist/vendor.min.js b/public/dist/vendor.min.js index f72a11f1..a7a47ac7 100644 --- a/public/dist/vendor.min.js +++ b/public/dist/vendor.min.js @@ -1,1151 +1,19 @@ -!function(a,f,k){function h(d){return function(){var l,b=arguments[0];l="["+(d?d+":":"")+b+"] http://errors.angularjs.org/1.4.14/"+(d?d+"/":"")+b;for(b=1;b").append(d).html();try{return d[0].nodeType===Rb?sa(a):a.match(/^(<[^>]+>)/)[1].replace(/^<([\w\-]+)/,function(d,a){return"<"+sa(a)})}catch(Z){return sa(a)}}function ha(d){try{return decodeURIComponent(d)}catch(l){}}function pa(d){var a= -{};return b((d||"").split("&"),function(d){var b,l,c;d&&(l=d=d.replace(/\+/g,"%20"),b=d.indexOf("="),-1!==b&&(l=d.substring(0,b),c=d.substring(b+1)),l=ha(l),F(l)&&(c=!F(c)||ha(c),tb.call(a,l)?la(a[l])?a[l].push(c):a[l]=[a[l],c]:a[l]=c))}),a}function qa(d){var a=[];return b(d,function(d,l){la(d)?b(d,function(d){a.push(w(l,!0)+(!0===d?"":"="+w(d,!0)))}):a.push(w(l,!0)+(!0===d?"":"="+w(d,!0)))}),a.length?a.join("&"):""}function ga(d){return w(d,!0).replace(/%26/gi,"&").replace(/%3D/gi,"=").replace(/%2B/gi, -"+")}function w(d,a){return encodeURIComponent(d).replace(/%40/gi,"@").replace(/%3A/gi,":").replace(/%24/g,"$").replace(/%2C/gi,",").replace(/%3B/gi,";").replace(/%20/g,a?"%20":"+")}function ma(d,a){var b,l,c=ec.length;for(l=0;l/,">"));}return l=l||[],l.unshift(["$provide",function(a){a.value("$rootElement",d)}]),c.debugInfoEnabled&&l.push(["$compileProvider",function(d){d.debugInfoEnabled(!0)}]),l.unshift("ng"),a=eb(l,c.strictDi),a.invoke(["$rootScope","$rootElement", -"$compile","$injector",function(d,a,b,l){d.$apply(function(){a.data("$injector",l);b(a)(d)})}]),a},g=/^NG_ENABLE_DEBUG_INFO!/,e=/^NG_DEFER_BOOTSTRAP!/;return a&&g.test(a.name)&&(c.debugInfoEnabled=!0,a.name=a.name.replace(g,"")),a&&!e.test(a.name)?H():(a.name=a.name.replace(e,""),Na.resumeBootstrap=function(d){return b(d,function(d){l.push(d)}),H()},void(E(Na.resumeDeferredBootstrap)&&Na.resumeDeferredBootstrap()))}function na(){a.name="NG_ENABLE_DEBUG_INFO!"+a.name;a.location.reload()}function Ua(d){if(d= -Na.element(d).injector(),!d)throw Ta("test");return d.get("$$testability")}function ia(d,a){return a=a||"_",d.replace(ye,function(d,b){return(b?a:"")+d.toLowerCase()})}function ua(){var d;if(!Fd){var b=xc();(Da=B(b)?a.jQuery:b?a[b]:k)&&Da.fn.on?(fa=Da,n(Da.fn,{scope:Sb.scope,isolateScope:Sb.isolateScope,controller:Sb.controller,injector:Sb.injector,inheritedData:Sb.inheritedData}),d=Da.cleanData,Da.cleanData=function(a){var b;if(Zc)Zc=!1;else for(var l,c=0;null!=(l=a[c]);c++)(b=Da._data(l,"events"))&& -b.$destroy&&Da(l).triggerHandler("$destroy");d(a)}):fa=Oa;Na.element=fa;Fd=!0}}function jb(d,a,b){if(!d)throw Ta("areq",a||"?",b||"required");return d}function kb(d,a,b){return b&&la(d)&&(d=d[d.length-1]),jb(E(d),a,"not a function, got "+(d&&"object"==typeof d?d.constructor.name||"Object":typeof d)),d}function vb(d,a){if("hasOwnProperty"===d)throw Ta("badname",a);}function wb(d,a,b){if(!a)return d;a=a.split(".");for(var l,c=d,g=a.length,e=0;e")+c[2];for(c=c[0];c--;)l=l.lastChild;e=O(e,l.childNodes);l=g.firstChild;l.textContent=""}else e.push(a.createTextNode(d));return g.textContent="",g.innerHTML="",b(e,function(d){g.appendChild(d)}),g}function af(d,a){var b=d.parentNode; -b&&b.replaceChild(a,d);a.appendChild(d)}function Oa(d){if(d instanceof Oa)return d;var a;if(u(d)&&(d=Ea(d),a=!0),!(this instanceof Oa)){if(a&&"<"!=d.charAt(0))throw jd("nosel");return new Oa(d)}if(a){a=f;var b;d=(b=bf.exec(d))?[a.createElement(b[1])]:(b=Ze(d,a))?b.childNodes:[]}ta(this,d)}function kd(d){return d.cloneNode(!0)}function ld(d,a){if(a||da(d),d.querySelectorAll)for(var b=d.querySelectorAll("*"),l=0,c=b.length;lf&&this.remove(w.key),a}},get:function(d){if(f").append(d).html())):y?Sb.clone.call(d):d,c)for(var L in c)b.data("$"+L+"Controller",c[L].instance);return z.$$addScopeInfo(b,a),y&&y(b,a),e&&e(a,b,b,l),b}}function Qb(d,a,b,l,c,L){function g(d,b,C,l){var c,L,g,e,f,H,h;if(m)for(h= -Array(b.length),e=0;eq.priority)break;if((ba=q.scope)&&(q.templateUrl||(p(ba)?(wb("new/isolated scope",v||xa,q,F),v=q):wb("new/isolated scope",v, -q,F)),xa=xa||q),aa=q.name,!q.templateUrl&&q.controller&&(ba=q.controller,A=A||Ma(),wb("'"+aa+"' controller",A[aa],q,F),A[aa]=q),(ba=q.transclude)&&(B=!0,q.$$tlb||(wb("transclusion",G,q,F),G=q),"element"==ba?(P=!0,x=q.priority,ba=F,F=y.$$element=fa(f.createComment(" "+aa+": "+y[aa]+" ")),a=F[0],V(l,Db.call(ba,0),a),Cb=z(ba,b,x,e&&e.name,{nonTlbTranscludeDirective:G})):(ba=fa(kd(a)).contents(),F.empty(),Cb=z(ba,b,k,k,{needsNewScope:q.$$isolateScope||q.$$newScope}))),q.template)if(Qb=!0,wb("template", -zb,q,F),zb=q,ba=E(q.template)?q.template(F,y):q.template,ba=qc(ba),q.replace){if(e=q,ba=Fc.test(ba)?ug(ma(q.templateNamespace,Ea(ba))):[],a=ba[0],1!=ba.length||1!==a.nodeType)throw Za("tplrt",aa,"");V(l,F,a);ba={$attr:{}};var ua=C(a,[],ba),D=d.splice(ia+1,d.length-(ia+1));(v||xa)&&J(ua,v,xa);d=d.concat(ua).concat(D);I(y,ba);dc=d.length}else F.html(ba);if(q.templateUrl)Qb=!0,wb("template",zb,q,F),zb=q,q.replace&&(e=q),t=S(d.splice(ia,d.length-ia),F,y,l,B&&Cb,g,H,{controllerDirectives:A,newScopeDirective:xa!== -q&&xa,newIsolateScopeDirective:v,templateDirective:zb,nonTlbTranscludeDirective:G}),dc=d.length;else if(q.compile)try{La=q.compile(F,y,Cb),E(La)?m(null,La,na,mg):La&&m(La.pre,La.post,na,mg)}catch(Jg){c(Jg,Y(F))}q.terminal&&(t.terminal=!0,x=Math.max(x,q.priority))}return t.scope=xa&&!0===xa.scope,t.transcludeOnThisElement=B,t.templateOnThisElement=Qb,t.transclude=Cb,h.hasElementTranscludeDirective=P,t}function J(d,a,y){for(var b=0,C=d.length;bk.priority)&&-1!=k.restrict.indexOf(b)){if(g&&(k=x(k,{$$start:g,$$end:f})),!k.$$bindings){var m=k,n=k,w=k.name,r={isolateScope:null,bindToController:null};if(p(n.scope)&&(!0===n.bindToController?(r.bindToController=l(n.scope,w,!0),r.isolateScope={}):r.isolateScope=l(n.scope,w,!1)),p(n.bindToController)&&(r.bindToController=l(n.bindToController,w,!0)), -p(r.bindToController)){var q=n.controller,t=n.controllerAs;if(!q)throw Za("noctrl",w);var Z;a:{var n=q,Aa=t;if(Aa&&u(Aa))Z=Aa;else{if(u(n)){var aa=Kc.exec(n);if(aa){Z=aa[3];break a}}Z=void 0}}if(!Z)throw Za("noident",w);}var ba=m.$$bindings=r;p(ba.isolateScope)&&(k.$$isolateBindings=ba.isolateScope)}a.push(k);L=k}}catch(Hg){c(Hg)}}return L}function dc(a){if(e.hasOwnProperty(a))for(var y=d.get(a+"Directive"),b=0,C=y.length;b"+a+"",y.childNodes[0].childNodes;default:return a}} -function N(d,a){if("srcdoc"==a)return ba.HTML;var y=ja(d);return"xlinkHref"==a||"form"==y&&"action"==a||"img"!=y&&("src"==a||"ngSrc"==a)?ba.RESOURCE_URL:void 0}function W(d,y,b,C,l){var c=N(d,C);l=w[C]||l;var L=a(b,!0,c,l);if(L){if("multiple"===C&&"select"===ja(d))throw Za("selmulti",Y(d));y.push({priority:100,compile:function(){return{pre:function(d,y,e){if(y=e.$$observers||(e.$$observers=Ma()),t.test(C))throw Za("nodomevents");var g=e[C];g!==b&&(L=g&&a(g,!0,c,l),b=g);L&&(e[C]=L(d),(y[C]||(y[C]= -[])).$$inter=!0,(e.$$observers&&e.$$observers[C].$$scope||d).$watch(L,function(d,a){"class"===C&&d!=a?e.$updateClass(d,a):e.$set(C,d)}))}}}})}}function V(d,a,y){var b,C,l=a[0],c=a.length,L=l.parentNode;if(d)for(b=0,C=d.length;b=a)return d;for(;a--;)8===d[a].nodeType&&ff.call(d,a,1);return d}function xb(){var d={},a=!1;this.register=function(a,b){vb(a,"controller");p(a)?n(d,a):d[a]=b};this.allowGlobals=function(){a=!0};this.$get=["$injector","$window",function(b,l){function c(d,a,b,l){if(!d||!p(d.$scope))throw h("$controller")("noscp", -l,a);d.$scope[a]=b}return function(e,g,f,h){var H,m,w;if(f=!0===f,h&&u(h)&&(w=h),u(e)){if(h=e.match(Kc),!h)throw gf("ctrlfmt",e);m=h[1];w=w||h[3];e=d.hasOwnProperty(m)?d[m]:wb(g.$scope,m,!0)||(a?wb(l,m,!0):k);kb(e,m,!0)}return f?(f=(la(e)?e[e.length-1]:e).prototype,H=Object.create(f||null),w&&c(g,w,H,m||e.name),n(function(){var d=b.invoke(e,H,g,m);return d!==H&&(p(d)||E(d))&&(H=d,w&&c(g,w,H,m||e.name)),H},{instance:H,identifier:w})):(H=b.instantiate(e,g,m),w&&c(g,w,H,m||e.name),H)}}]}function va(){this.$get= -["$window",function(d){return fa(d.document)}]}function Ag(){this.$get=["$log",function(d){return function(a,b){d.error.apply(d,arguments)}}]}function ng(d){return p(d)?J(d)?d.toISOString():ka(d):d}function Cg(){this.$get=function(){return function(d){if(!d)return"";var a=[];return e(d,function(d,l){null===d||B(d)||(la(d)?b(d,function(d,b){a.push(w(l)+"="+w(ng(d)))}):a.push(w(l)+"="+w(ng(d))))}),a.join("&")}}}function bb(){this.$get=function(){return function(d){function a(d,l,g){null===d||B(d)|| -(la(d)?b(d,function(d,b){a(d,l+"["+(p(d)?b:"")+"]")}):p(d)&&!J(d)?e(d,function(d,b){a(d,l+(g?"":"[")+b+(g?"":"]"))}):c.push(w(l)+"="+w(ng(d))))}if(!d)return"";var c=[];return a(d,"",!0),c.join("&")}}}function ob(d,a){if(u(d)){var b=d.replace(Ja,"").trim();if(b){var l=a("Content-Type");(l=l&&0===l.indexOf(Xd))||(l=(l=b.match(hf))&&qd[l[0]].test(b));l&&(d=ca(b))}}return d}function vg(d){var a,c=Ma();return u(d)?b(d.split("\n"),function(d){a=d.indexOf(":");var b=sa(Ea(d.substr(0,a)));d=Ea(d.substr(a+ -1));b&&(c[b]=c[b]?c[b]+", "+d:d)}):p(d)&&b(d,function(d,a){var b=sa(a),l=Ea(d);b&&(c[b]=c[b]?c[b]+", "+l:l)}),c}function wg(d){var a;return function(b){return a||(a=vg(d)),b?(b=a[sa(b)],void 0===b&&(b=null),b):a}}function kc(d,a,c,e){return E(e)?e(d,a,c):(b(e,function(b){d=b(d,a,c)}),d)}function Bg(){var d=this.defaults={transformResponse:[ob],transformRequest:[function(d){return p(d)&&"[object File]"!==ub.call(d)&&"[object Blob]"!==ub.call(d)&&"[object FormData]"!==ub.call(d)?ka(d):d}],headers:{common:{Accept:"application/json, text/plain, */*"}, -post:za(Lc),put:za(Lc),patch:za(Lc)},xsrfCookieName:"XSRF-TOKEN",xsrfHeaderName:"X-XSRF-TOKEN",paramSerializer:"$httpParamSerializer"},a=!1;this.useApplyAsync=function(d){return F(d)?(a=!!d,this):a};var c=!0;this.useLegacyPromiseExtensions=function(d){return F(d)?(c=!!d,this):c};var e=this.interceptors=[];this.$get=["$httpBackend","$$cookieReader","$cacheFactory","$rootScope","$q","$injector",function(l,g,f,m,H,w){function r(a){function l(d){var a=n({},d);return a.data=kc(d.data,d.headers,d.status, -g.transformResponse),d=d.status,200<=d&&300>d?a:H.reject(a)}function e(d,a){var l,c={};return b(d,function(d,b){E(d)?(l=d(a),null!=l&&(c[b]=l)):c[b]=d}),c}if(!Na.isObject(a))throw h("$http")("badreq",a);if(!u(a.url))throw h("$http")("badreq",a.url);var g=n({method:"get",transformRequest:d.transformRequest,transformResponse:d.transformResponse,paramSerializer:d.paramSerializer},a);g.headers=function(a){var b,l,c,y=d.headers,C=n({},a.headers),y=n({},y.common,y[sa(a.method)]);a:for(b in y){l=sa(b);for(c in C)if(sa(c)=== -l)continue a;C[b]=y[b]}return e(C,za(a))}(a);g.method=lb(g.method);g.paramSerializer=u(g.paramSerializer)?w.get(g.paramSerializer):g.paramSerializer;var f=[function(a){var c=a.headers,e=kc(a.data,wg(c),k,a.transformRequest);return B(e)&&b(c,function(d,a){"content-type"===sa(a)&&delete c[a]}),B(a.withCredentials)&&!B(d.withCredentials)&&(a.withCredentials=d.withCredentials),q(a,e).then(l,l)},k],m=H.when(g);for(b(aa,function(d){(d.request||d.requestError)&&f.unshift(d.request,d.requestError);(d.response|| -d.responseError)&&f.push(d.response,d.responseError)});f.length;){a=f.shift();var r=f.shift(),m=m.then(a,r)}return c?(m.success=function(d){return kb(d,"fn"),m.then(function(a){d(a.data,a.status,a.headers,g)}),m},m.error=function(d){return kb(d,"fn"),m.then(null,function(a){d(a.data,a.status,a.headers,g)}),m}):(m.success=jf("success"),m.error=jf("error")),m}function q(b,c){function e(d,b,l,c){function C(){f(b,d,l,c)}w&&(200<=d&&300>d?w.put(y,[d,b,vg(l),c]):w.remove(y));a?m.$applyAsync(C):(C(),m.$$phase|| -m.$apply())}function f(d,a,y,l){a=-1<=a?a:0;(200<=a&&300>a?u.resolve:u.reject)({data:d,status:a,headers:wg(y),config:b,statusText:l})}function h(d){f(d.data,d.status,za(d.headers()),d.statusText)}function n(){var d=r.pendingRequests.indexOf(b);-1!==d&&r.pendingRequests.splice(d,1)}var w,q,u=H.defer(),aa=u.promise,ba=b.headers,y=t(b.url,b.paramSerializer(b.params));return r.pendingRequests.push(b),aa.then(n,n),!b.cache&&!d.cache||!1===b.cache||"GET"!==b.method&&"JSONP"!==b.method||(w=p(b.cache)?b.cache: -p(d.cache)?d.cache:Z),w&&(q=w.get(y),F(q)?q&&E(q.then)?q.then(h,h):la(q)?f(q[1],q[0],za(q[2]),q[3]):f(q,200,{},"OK"):w.put(y,aa)),B(q)&&((q=Yd(b.url)?g()[b.xsrfCookieName||d.xsrfCookieName]:k)&&(ba[b.xsrfHeaderName||d.xsrfHeaderName]=q),l(b.method,y,c,e,ba,b.timeout,b.withCredentials,b.responseType)),aa}function t(d,a){return 0=f&&(q.resolve(n),w(t.$$intervalId),delete e[t.$$intervalId]);r||d.$apply()},g),e[t.$$intervalId]=q,t}var e={};return l.cancel=function(d){return!!(d&&d.$$intervalId in e)&&(e[d.$$intervalId].reject("canceled"),a.clearInterval(d.$$intervalId),delete e[d.$$intervalId],!0)},l}]}function rd(d){d=d.split("/");for(var a=d.length;a--;)d[a]=ga(d[a]);return d.join("/")}function Zd(d,a){var b=Ob(d); -a.$$protocol=b.protocol;a.$$host=b.hostname;a.$$port=parseInt(b.port,10)||lf[b.protocol]||null}function Mc(d,a){var b="/"!==d.charAt(0);b&&(d="/"+d);var l=Ob(d);a.$$path=decodeURIComponent(b&&"/"===l.pathname.charAt(0)?l.pathname.substring(1):l.pathname);a.$$search=pa(l.search);a.$$hash=decodeURIComponent(l.hash);a.$$path&&"/"!=a.$$path.charAt(0)&&(a.$$path="/"+a.$$path)}function $a(d,a){if(0===a.indexOf(d))return a.substr(d.length)}function Xb(d){var a=d.indexOf("#");return-1==a?d:d.substr(0,a)} -function Pb(d){return d.replace(/(#.+)|#$/,"$1")}function $d(d,a,b){this.$$html5=!0;b=b||"";Zd(d,this);this.$$parse=function(d){var b=$a(a,d);if(!u(b))throw Jb("ipthprfx",d,a);Mc(b,this);this.$$path||(this.$$path="/");this.$$compose()};this.$$compose=function(){var d=qa(this.$$search),b=this.$$hash?"#"+ga(this.$$hash):"";this.$$url=rd(this.$$path)+(d?"?"+d:"")+b;this.$$absUrl=a+this.$$url.substr(1)};this.$$parseLinkUrl=function(l,c){if(c&&"#"===c[0])return this.hash(c.slice(1)),!0;var e,g;return F(e= -$a(d,l))?(g=e,g=F(e=$a(b,e))?a+($a("/",e)||e):d+g):F(e=$a(a,l))?g=a+e:a==l+"/"&&(g=a),g&&this.$$parse(g),!!g}}function ae(d,a,b){Zd(d,this);this.$$parse=function(l){var c,e=$a(d,l)||$a(a,l);B(e)||"#"!==e.charAt(0)?this.$$html5?c=e:(c="",B(e)&&(d=l,this.replace())):(c=$a(b,e),B(c)&&(c=e));Mc(c,this);l=this.$$path;var e=d,g=/^\/[A-Z]:(\/.*)/;0===c.indexOf(e)&&(c=c.replace(e,""));g.exec(c)||(l=(c=g.exec(l))?c[1]:l);this.$$path=l;this.$$compose()};this.$$compose=function(){var a=qa(this.$$search),l=this.$$hash? -"#"+ga(this.$$hash):"";this.$$url=rd(this.$$path)+(a?"?"+a:"")+l;this.$$absUrl=d+(this.$$url?b+this.$$url:"")};this.$$parseLinkUrl=function(a,b){return Xb(d)==Xb(a)&&(this.$$parse(a),!0)}}function be(d,a,b){this.$$html5=!0;ae.apply(this,arguments);this.$$parseLinkUrl=function(l,c){if(c&&"#"===c[0])return this.hash(c.slice(1)),!0;var e,g;return d==Xb(l)?e=l:(g=$a(a,l))?e=d+b+g:a===l+"/"&&(e=a),e&&this.$$parse(e),!!e};this.$$compose=function(){var a=qa(this.$$search),l=this.$$hash?"#"+ga(this.$$hash): -"";this.$$url=rd(this.$$path)+(a?"?"+a:"")+l;this.$$absUrl=d+b+this.$$url}}function Nc(d){return function(){return this[d]}}function cb(d,a){return function(b){return B(b)?this[d]:(this[d]=a(b),this.$$compose(),this)}}function Pe(){var d="",a={enabled:!1,requireBase:!0,rewriteLinks:!0};this.hashPrefix=function(a){return F(a)?(d=a,this):d};this.html5Mode=function(d){return P(d)?(a.enabled=d,this):p(d)?(P(d.enabled)&&(a.enabled=d.enabled),P(d.requireBase)&&(a.requireBase=d.requireBase),P(d.rewriteLinks)&& -(a.rewriteLinks=d.rewriteLinks),this):a};this.$get=["$rootScope","$browser","$sniffer","$rootElement","$window",function(b,l,c,e,g){function f(d,a,b){var c=h.url(),e=h.$$state;try{l.url(d,a,b),h.$$state=l.state()}catch(Sd){throw h.url(c),h.$$state=e,Sd;}}function k(d,a){b.$broadcast("$locationChangeSuccess",h.absUrl(),d,h.$$state,a)}var h,m;m=l.baseHref();var w,n=l.url();if(a.enabled){if(!m&&a.requireBase)throw Jb("nobase");w=n.substring(0,n.indexOf("/",n.indexOf("//")+2))+(m||"/");m=c.history?$d: -be}else w=Xb(n),m=ae;var H=w.substr(0,Xb(w).lastIndexOf("/")+1);h=new m(w,H,"#"+d);h.$$parseLinkUrl(n,n);h.$$state=l.state();var q=/^\s*(javascript|mailto):/i;e.on("click",function(d){if(a.rewriteLinks&&!d.ctrlKey&&!d.metaKey&&!d.shiftKey&&2!=d.which&&2!=d.button){for(var c=fa(d.target);"a"!==ja(c[0]);)if(c[0]===e[0]||!(c=c.parent())[0])return;var f=c.prop("href"),k=c.attr("href")||c.attr("xlink:href");p(f)&&"[object SVGAnimatedString]"===f.toString()&&(f=Ob(f.animVal).href);q.test(f)||!f||c.attr("target")|| -d.isDefaultPrevented()||!h.$$parseLinkUrl(f,k)||(d.preventDefault(),h.absUrl()!=l.url()&&(b.$apply(),g.angular["ff-684208-preventDefault"]=!0))}});Pb(h.absUrl())!=Pb(n)&&l.url(h.absUrl(),!0);var r=!0;return l.onUrlChange(function(d,a){B($a(H,d))?g.location.href=d:(b.$evalAsync(function(){var l,c=h.absUrl(),e=h.$$state;d=Pb(d);h.$$parse(d);h.$$state=a;l=b.$broadcast("$locationChangeStart",d,c,a,e).defaultPrevented;h.absUrl()===d&&(l?(h.$$parse(c),h.$$state=e,f(c,!1,e)):(r=!1,k(c,e)))}),b.$$phase|| -b.$digest())}),b.$watch(function(){var d=Pb(l.url()),a=Pb(h.absUrl()),e=l.state(),g=h.$$replace,m=d!==a||h.$$html5&&c.history&&e!==h.$$state;(r||m)&&(r=!1,b.$evalAsync(function(){var a=h.absUrl(),l=b.$broadcast("$locationChangeStart",a,d,h.$$state,e).defaultPrevented;h.absUrl()===a&&(l?(h.$$parse(d),h.$$state=e):(m&&f(a,g,e===h.$$state?null:h.$$state),k(d,e)))}));h.$$replace=!1}),h}]}function Mb(){var d=!0,a=this;this.debugEnabled=function(a){return F(a)?(d=a,this):d};this.$get=["$window",function(l){function c(d){return d instanceof -Error&&(d.stack?d=d.message&&-1===d.stack.indexOf(d.message)?"Error: "+d.message+"\n"+d.stack:d.stack:d.sourceURL&&(d=d.message+"\n"+d.sourceURL+":"+d.line)),d}function e(d){var a=l.console||{},e=a[d]||a.log||q;d=!1;try{d=!!e.apply}catch(Qb){}return d?function(){var d=[];return b(arguments,function(a){d.push(c(a))}),e.apply(a,d)}:function(d,a){e(d,null==a?"":a)}}return{log:e("log"),info:e("info"),warn:e("warn"),error:e("error"),debug:function(){var b=e("debug");return function(){d&&b.apply(a,arguments)}}()}}]} -function Zb(d,a){if("__defineGetter__"===d||"__defineSetter__"===d||"__lookupGetter__"===d||"__lookupSetter__"===d||"__proto__"===d)throw ab("isecfld",a);return d}function sd(d,a){if(d+="",!u(d))throw ab("iseccst",a);return d}function fb(d,a){if(d){if(d.constructor===d)throw ab("isecfn",a);if(d.window===d)throw ab("isecwindow",a);if(d.children&&(d.nodeName||d.prop&&d.attr&&d.find))throw ab("isecdom",a);if(d===Object)throw ab("isecobj",a);}return d}function Oc(d,a){if(d){if(d.constructor===d)throw ab("isecfn", -a);if(d===sb||d===mf||d===ce)throw ab("isecff",a);}}function Pc(d,a){if(d&&(d===(0).constructor||d===(!1).constructor||d==="".constructor||d==={}.constructor||d===[].constructor||d===Function.constructor))throw ab("isecaf",a);}function de(d,a){return"undefined"!=typeof d?d:a}function rc(d,a){return"undefined"==typeof d?a:"undefined"==typeof a?d:d+a}function Sa(d,a){var c,l;switch(d.type){case Q.Program:c=!0;b(d.body,function(d){Sa(d.expression,a);c=c&&d.expression.constant});d.constant=c;break;case Q.Literal:d.constant= -!0;d.toWatch=[];break;case Q.UnaryExpression:Sa(d.argument,a);d.constant=d.argument.constant;d.toWatch=d.argument.toWatch;break;case Q.BinaryExpression:Sa(d.left,a);Sa(d.right,a);d.constant=d.left.constant&&d.right.constant;d.toWatch=d.left.toWatch.concat(d.right.toWatch);break;case Q.LogicalExpression:Sa(d.left,a);Sa(d.right,a);d.constant=d.left.constant&&d.right.constant;d.toWatch=d.constant?[]:[d];break;case Q.ConditionalExpression:Sa(d.test,a);Sa(d.alternate,a);Sa(d.consequent,a);d.constant=d.test.constant&& -d.alternate.constant&&d.consequent.constant;d.toWatch=d.constant?[]:[d];break;case Q.Identifier:d.constant=!1;d.toWatch=[d];break;case Q.MemberExpression:Sa(d.object,a);d.computed&&Sa(d.property,a);d.constant=d.object.constant&&(!d.computed||d.property.constant);d.toWatch=[d];break;case Q.CallExpression:c=!!d.filter&&!a(d.callee.name).$stateful;l=[];b(d.arguments,function(d){Sa(d,a);c=c&&d.constant;d.constant||l.push.apply(l,d.toWatch)});d.constant=c;d.toWatch=d.filter&&!a(d.callee.name).$stateful? -l:[d];break;case Q.AssignmentExpression:Sa(d.left,a);Sa(d.right,a);d.constant=d.left.constant&&d.right.constant;d.toWatch=[d];break;case Q.ArrayExpression:c=!0;l=[];b(d.elements,function(d){Sa(d,a);c=c&&d.constant;d.constant||l.push.apply(l,d.toWatch)});d.constant=c;d.toWatch=l;break;case Q.ObjectExpression:c=!0;l=[];b(d.properties,function(d){Sa(d.value,a);c=c&&d.value.constant;d.value.constant||l.push.apply(l,d.value.toWatch)});d.constant=c;d.toWatch=l;break;case Q.ThisExpression:d.constant=!1, -d.toWatch=[]}}function ee(d){if(1==d.length){d=d[0].expression;var a=d.toWatch;return 1!==a.length?a:a[0]!==d?a:k}}function td(d){return d.type===Q.Identifier||d.type===Q.MemberExpression}function nf(d){if(1===d.body.length&&td(d.body[0].expression))return{type:Q.AssignmentExpression,left:d.body[0].expression,right:{type:Q.NGValueParameter},operator:"="}}function fe(d){return 0===d.body.length||1===d.body.length&&(d.body[0].expression.type===Q.Literal||d.body[0].expression.type===Q.ArrayExpression|| -d.body[0].expression.type===Q.ObjectExpression)}function ud(d,a){this.astBuilder=d;this.$filter=a}function of(d,a){this.astBuilder=d;this.$filter=a}function gb(d){return E(d.valueOf)?d.valueOf():Kg.call(d)}function Eg(){var d=Ma(),a=Ma();this.$get=["$filter",function(c){function l(b,l,g){var k,H,r;switch(g=g||Z,typeof b){case "string":r=b=b.trim();var x=g?a:d;if(k=x[r],!k){":"===b.charAt(0)&&":"===b.charAt(1)&&(H=!0,b=b.substring(2));k=g?u:t;var aa=new Pa(k);k=(new db(aa,c,k)).parse(b);k.constant? -k.$$watchDelegate=w:H?k.$$watchDelegate=k.literal?m:h:k.inputs&&(k.$$watchDelegate=f);g&&(k=e(k));x[r]=k}return n(k,l);case "function":return n(b,l);default:return n(q,l)}}function e(d){function a(a,b,c,l){var e=Z;Z=!0;try{return d(a,b,c,l)}finally{Z=e}}if(!d)return d;a.$$watchDelegate=d.$$watchDelegate;a.assign=e(d.assign);a.constant=d.constant;a.literal=d.literal;for(var b=0;d.inputs&&b=this.promise.$$state.status&&c&&c.length&&d(function(){for(var d,l,e=0,g=c.length;ed)for(a in f++,y)tb.call(l,a)||(H--,delete y[a])}else y!==l&&(y=l,f++);return f}}b.$stateful=!0;var l,y,C,e=this,g=1q&&(n=4-q,t[n]||(t[n]=[]),t[n].push({msg:E(d.exp)?"fn: "+(d.exp.name||d.exp.toString()):d.exp,newVal:b,oldVal:c}))}catch(Vd){h(Vd)}if(!(C=w.$$watchersCount&&w.$$childHead||w!==this&&w.$$nextSibling))for(;w!==this&&!(C=w.$$nextSibling);)w=w.$parent}while(w=C);if((k||v.length)&&!q--)throw ba.$$phase= -null,e("infdig",a,t);}while(k||v.length);for(ba.$$phase=null;La.length;)try{La.shift()()}catch(Vd){h(Vd)}},$destroy:function(){if(!this.$$destroyed){var d=this.$parent;this.$broadcast("$destroy");this.$$destroyed=!0;this===ba&&m.$$applicationDestroyed();t(this,-this.$$watchersCount);for(var a in this.$$listenerCount)u(this,this.$$listenerCount[a],a);d&&d.$$childHead==this&&(d.$$childHead=this.$$nextSibling);d&&d.$$childTail==this&&(d.$$childTail=this.$$prevSibling);this.$$prevSibling&&(this.$$prevSibling.$$nextSibling= -this.$$nextSibling);this.$$nextSibling&&(this.$$nextSibling.$$prevSibling=this.$$prevSibling);this.$destroy=this.$digest=this.$apply=this.$evalAsync=this.$applyAsync=q;this.$on=this.$watch=this.$watchGroup=function(){return q};this.$$listeners={};this.$$nextSibling=null;n(this)}},$eval:function(d,a){return k(d)(this,a)},$evalAsync:function(d,a){ba.$$phase||v.length||m.defer(function(){v.length&&ba.$digest()});v.push({scope:this,expression:k(d),locals:a})},$$postDigest:function(d){La.push(d)},$apply:function(d){try{r("$apply"); -try{return this.$eval(d)}finally{ba.$$phase=null}}catch(pd){h(pd)}finally{try{ba.$digest()}catch(pd){throw h(pd),pd;}}},$applyAsync:function(d){function a(){b.$eval(d)}var b=this;d&&A.push(a);d=k(d);aa()},$on:function(d,a){var b=this.$$listeners[d];b||(this.$$listeners[d]=b=[]);b.push(a);var c=this;do c.$$listenerCount[d]||(c.$$listenerCount[d]=0),c.$$listenerCount[d]++;while(c=c.$parent);var y=this;return function(){var C=b.indexOf(a);-1!==C&&(b[C]=null,u(y,1,d))}},$emit:function(d,a){var b,c,y, -C=[],l=this,e=!1,g={name:d,targetScope:l,stopPropagation:function(){e=!0},preventDefault:function(){g.defaultPrevented=!0},defaultPrevented:!1},f=O([g],arguments,1);do{b=l.$$listeners[d]||C;g.currentScope=l;c=0;for(y=b.length;cjc)throw $b("iequirks");var l=za(Ab);l.isEnabled=function(){return d};l.trustAs=c.trustAs;l.getTrusted=c.getTrusted;l.valueOf=c.valueOf;d||(l.trustAs=l.getTrusted=function(d,a){return a},l.valueOf=v);l.parseAs=function(d,b){var c=a(b);return c.literal&&c.constant?c:a(b,function(a){return l.getTrusted(d,a)})};var e=l.parseAs,g=l.getTrusted,f=l.trustAs;return b(Ab, -function(d,a){var b=sa(a);l[pc("parse_as_"+b)]=function(a){return e(d,a)};l[pc("get_trusted_"+b)]=function(a){return g(d,a)};l[pc("trust_as_"+b)]=function(a){return f(d,a)}}),l}]}function Te(){this.$get=["$window","$document",function(d,a){var b,c={},l=parseInt((/android (\d+)/.exec(sa((d.navigator||{}).userAgent))||[])[1],10),e=/Boxee/i.test((d.navigator||{}).userAgent),g=a[0]||{},f=/^(Moz|webkit|ms)(?=[A-Z])/,h=g.body&&g.body.style,k=!1,m=!1;if(h){for(var w in h)if(k=f.exec(w)){b=k[0];b=b.substr(0, -1).toUpperCase()+b.substr(1);break}b||(b="WebkitOpacity"in h&&"webkit");k=!!("transition"in h||b+"Transition"in h);m=!!("animation"in h||b+"Animation"in h);!l||k&&m||(k=u(h.webkitTransition),m=u(h.webkitAnimation))}return{history:!(!d.history||!d.history.pushState||4>l||e),hasEvent:function(d){if("input"===d&&11>=jc)return!1;if(B(c[d])){var a=g.createElement("div");c[d]="on"+d in a}return c[d]},csp:Ub(),vendorPrefix:b,transitions:k,animations:m,android:l}}]}function Ue(){this.$get=["$templateCache", -"$http","$q","$sce",function(d,a,b,c){function l(e,g){l.totalPendingRequests++;u(e)&&!B(d.get(e))||(e=c.getTrustedResourceUrl(e));var f=a.defaults&&a.defaults.transformResponse;return la(f)?f=f.filter(function(d){return d!==ob}):f===ob&&(f=null),a.get(e,{cache:d,transformResponse:f})["finally"](function(){l.totalPendingRequests--}).then(function(a){return d.put(e,a.data),a.data},function(d){if(!g)throw Za("tpload",e,d.status,d.statusText);return b.reject(d)})}return l.totalPendingRequests=0,l}]}function Ve(){this.$get= -["$rootScope","$browser","$location",function(d,a,c){return{findBindings:function(d,a,c){d=d.getElementsByClassName("ng-binding");var l=[];return b(d,function(d){var e=Na.element(d).data("$binding");e&&b(e,function(b){c?(new RegExp("(^|\\s)"+sc(a)+"(\\s|\\||$)")).test(b)&&l.push(d):-1!=b.indexOf(a)&&l.push(d)})}),l},findModels:function(d,a,b){for(var c=["ng-","data-ng-","ng\\:"],l=0;lb&&(b=c),b+=+d.slice(c+1),d=d.substring(0,c)):0>b&&(b=d.length);for(c=0;d.charAt(c)==tc;c++);if(c==(g=d.length))a=[0],b=1;else{for(g--;d.charAt(g)==tc;)g--;b-=c;a=[];for(e=0;c<=g;c++,e++)a[e]=+d.charAt(c)}return b>yf&&(a=a.splice(0,yf-1),f=b-1,b=1),{d:a,e:f,i:b}}function zf(d, -a,b,c){var l=d.d,e=l.length-d.i;if(a=B(a)?Math.min(Math.max(b,e),c):+a,b=a+d.i,c=l[b],0f;)h.unshift(0),f++;0=a.lgSize&&f.unshift(h.splice(-a.lgSize,h.length).join(""));h.length>a.gSize;)f.unshift(h.splice(-a.gSize,h.length).join(""));h.length&&f.unshift(h.join(""));h=f.join(b);l.length&&(h+=c+l.join(""));e&&(h+="e+"+e)}return 0>d&&!g?a.negPre+h+a.negSuf:a.posPre+h+a.posSuf}function Qc(d,a,b){var c="";0>d&&(c="-",d=-d);for(d=""+d;d.length-b)&&(l+=b),0===l&&-12==b&&(l=12),Qc(l,a,c)}}function Rc(d,a){return function(b,c){var l=b["get"+d](),e=lb(a?"SHORT"+d:d);return c[e][l]}}function me(d){var a=(new Date(d,0,1)).getDay();return new Date(d,0,(4>=a?5:12)-a)}function ne(d){return function(a){var b=me(a.getFullYear());return a=+new Date(a.getFullYear(),a.getMonth(),a.getDate()+(4-a.getDay()))-+b,a=1+Math.round(a/6048E5),Qc(a,d)}}function Sc(d,a){return 0>=d.getFullYear()?a.ERAS[0]: -a.ERAS[1]}function he(d){function a(d){var a;if(a=d.match(c)){d=new Date(0);var b=0,l=0,e=a[8]?d.setUTCFullYear:d.setFullYear,g=a[8]?d.setUTCHours:d.setHours;a[9]&&(b=parseInt(a[9]+a[10],10),l=parseInt(a[9]+a[11],10));e.call(d,parseInt(a[1],10),parseInt(a[2],10)-1,parseInt(a[3],10));b=parseInt(a[4]||0,10)-b;l=parseInt(a[5]||0,10)-l;e=parseInt(a[6]||0,10);a=Math.round(1E3*parseFloat("0."+(a[7]||0)));g.call(d,b,l,e,a)}return d}var c=/^(\d{4})-?(\d\d)-?(\d\d)(?:T(\d\d)(?::?(\d\d)(?::?(\d\d)(?:\.(\d+))?)?)?(Z|([+-])(\d\d):?(\d\d))?)?$/; -return function(c,l,e){var g,f,h="",k=[];if(l=l||"mediumDate",l=d.DATETIME_FORMATS[l]||l,u(c)&&(c=Af.test(c)?parseInt(c,10):a(c)),I(c)&&(c=new Date(c)),!J(c)||!isFinite(c.getTime()))return c;for(;l;)(f=Bf.exec(l))?(k=O(k,f,1),l=k.pop()):(k.push(l),l=null);var m=c.getTimezoneOffset();return e&&(m=R(e,m),c=ea(c,e,!0)),b(k,function(a){g=yd[a];h+=g?g(c,d.DATETIME_FORMATS,m):"''"===a?"'":a.replace(/(^'|'$)/g,"").replace(/''/g,"'")}),h}}function Lg(){return function(d,a){return B(a)&&(a=2),ka(d,a)}}function ie(){return function(d, -a,b){return a=1/0===Math.abs(Number(a))?Number(a):parseInt(a,10),isNaN(a)?d:(I(d)&&(d=d.toString()),la(d)||u(d)?(b=!b||isNaN(b)?0:parseInt(b,10),b=0>b?Math.max(0,d.length+b):b,0<=a?d.slice(b,b+a):0===b?d.slice(a,d.length):d.slice(Math.max(0,b+a),b)):d)}}function ke(d){function a(a,b){return b=b?-1:1,a.map(function(a){var c=1,l=v;if(E(a))l=a;else if(u(a)&&("+"!=a.charAt(0)&&"-"!=a.charAt(0)||(c="-"==a.charAt(0)?-1:1,a=a.substring(1)),""!==a&&(l=d(a),l.constant)))var e=l(),l=function(d){return d[e]}; -return{get:l,descending:c*b}})}function b(d){switch(typeof d){case "number":case "boolean":case "string":return!0;default:return!1}}return function(d,l,e){if(!c(d))return d;la(l)||(l=[l]);0===l.length&&(l=["+"]);var g=a(l,e);return g.push({get:function(){return{}},descending:e?-1:1}),d=Array.prototype.map.call(d,function(d,a){return{value:d,predicateValues:g.map(function(c){var l=c.get(d);return c=typeof l,null===l?(c="string",l="null"):"string"===c?l=l.toLowerCase():"object"===c&&("function"==typeof l.valueOf&& -(l=l.valueOf(),b(l))||A(l)&&(l=l.toString(),b(l))||(l=a)),{value:l,type:c}})}}),d.sort(function(d,a){for(var b=0,c=0,l=g.length;ca||37<=a&&40>=a||m(d,this,this.value)});e.hasEvent("paste")&& -a.on("paste cut",m)}a.on("change",k);Uc[l]&&c.$$hasNativeValidators&&l===b.type&&a.on("keydown wheel mousedown",function(d){if(!h){var a=this.validity,b=a.badInput,c=a.typeMismatch;h=g.defer(function(){h=null;a.badInput===b&&a.typeMismatch===c||k(d)})}});c.$render=function(){var d=c.$isEmpty(c.$viewValue)?"":c.$viewValue;a.val()!==d&&a.val(d)}}function Ca(d,a){return function(c,l){var e,g;if(J(c))return c;if(u(c)){if('"'==c.charAt(0)&&'"'==c.charAt(c.length-1)&&(c=c.substring(1,c.length-1)),ib.test(c))return new Date(c); -if(d.lastIndex=0,e=d.exec(c))return e.shift(),g=l?{yyyy:l.getFullYear(),MM:l.getMonth()+1,dd:l.getDate(),HH:l.getHours(),mm:l.getMinutes(),ss:l.getSeconds(),sss:l.getMilliseconds()/1E3}:{yyyy:1970,MM:1,dd:1,HH:0,mm:0,ss:0,sss:0},b(e,function(d,b){b=u};g.$observe("min",function(d){u=r(d);f.$validate()})}if(F(g.max)||g.ngMax){var H;f.$validators.max= -function(d){return!n(d)||B(H)||b(d)<=H};g.$observe("max",function(d){H=r(d);f.$validate()})}}}function lc(d,a,b,c){(c.$$hasNativeValidators=p(a[0].validity))&&c.$parsers.push(function(d){var b=a.prop("validity")||{};return b.badInput&&!b.typeMismatch?k:d})}function pe(d,a,b,c,e){if(F(c)){if(d=d(c),!d.constant)throw Vc("constexpr",b,c);return d(a)}return e}function cc(d,a){return d="ngClass"+d,["$animate",function(c){function l(d,a){var b=[],c=0;a:for(;c(?:<\/\1>|)$/,Fc=/<|&#?\w+;/,Ba=/<([\w:-]+)/,$e=/<(?!area|br|col|embed|hr|img|input|link|meta|param)(([\w:-]+)[^>]*)\/>/gi,Ra={option:[1,'"],thead:[1,"","
"],col:[2, -"","
"],tr:[2,"","
"],td:[3,"","
"],_default:[0,"",""]};Ra.optgroup=Ra.option;Ra.tbody=Ra.tfoot=Ra.colgroup=Ra.caption=Ra.thead;Ra.th=Ra.td;var ef=Node.prototype.contains||function(d){return!!(16&this.compareDocumentPosition(d))},Sb=Oa.prototype={ready:function(d){function b(){c||(c=!0,d())}var c=!1;"complete"===f.readyState?setTimeout(b):(this.on("DOMContentLoaded",b),Oa(a).on("load",b))},toString:function(){var d= -[];return b(this,function(a){d.push(""+a)}),"["+d.join(", ")+"]"},eq:function(d){return fa(0<=d?this[d]:this[this.length+d])},length:0,push:Gf,sort:[].sort,splice:[].splice},Hb={};b("multiple selected checked disabled readOnly required open".split(" "),function(d){Hb[sa(d)]=d});var Fa={};b("input select option textarea button form details".split(" "),function(d){Fa[d]=!0});var Wd={ngMinlength:"minlength",ngMaxlength:"maxlength",ngMin:"min",ngMax:"max",ngPattern:"pattern"};b({data:wa,removeData:da, -hasData:function(d){for(var a in gc[d.ng339])return!0;return!1}},function(d,a){Oa[a]=d});b({data:wa,inheritedData:Gb,scope:function(d){return fa.data(d,"$scope")||Gb(d.parentNode||d,["$isolateScope","$scope"])},isolateScope:function(d){return fa.data(d,"$isolateScope")||fa.data(d,"$isolateScopeNoTemplate")},controller:Ic,injector:function(d){return Gb(d,"$injector")},removeAttr:function(d,a){d.removeAttribute(a)},hasClass:md,css:function(d,a,b){return a=pc(a),F(b)?void(d.style[a]=b):d.style[a]},attr:function(d, -a,b){var c=d.nodeType;if(c!==Rb&&2!==c&&8!==c)if(c=sa(a),Hb[c]){if(!F(b))return d[a]||(d.attributes.getNamedItem(a)||q).specified?c:k;b?(d[a]=!0,d.setAttribute(a,c)):(d[a]=!1,d.removeAttribute(c))}else if(F(b))d.setAttribute(a,b);else if(d.getAttribute)return d=d.getAttribute(a,2),null===d?k:d},prop:function(d,a,b){return F(b)?void(d[a]=b):d[a]},text:function(){function d(d,a){if(B(a)){var b=d.nodeType;return 1===b||b===Rb?d.textContent:""}d.textContent=a}return d.$dv="",d}(),val:function(d,a){if(B(a)){if(d.multiple&& -"select"===ja(d)){var c=[];return b(d.options,function(d){d.selected&&c.push(d.value||d.text)}),0===c.length?null:c}return d.value}d.value=a},html:function(d,a){return B(a)?d.innerHTML:(ld(d,!0),void(d.innerHTML=a))},empty:nd},function(d,a){Oa.prototype[a]=function(a,b){var c,e,l=this.length;if(d!==nd&&B(2==d.length&&d!==md&&d!==Ic?a:b)){if(p(a)){for(c=0;c <= >= && || ! = |".split(" "),function(d){Cd[d]=!0});var Jf={n:"\n",f:"\f",r:"\r",t:"\t",v:"\x0B","'":"'",'"':'"'},Pa=function(d){this.options=d};Pa.prototype={constructor:Pa,lex:function(d){this.text=d;this.index=0;for(this.tokens=[];this.index=d&&"string"==typeof d},isWhitespace:function(d){return" "===d||"\r"===d||"\t"===d||"\n"===d||"\x0B"===d||"\u00a0"===d},isIdent:function(d){return"a"<=d&&"z">=d||"A"<=d&&"Z">=d||"_"===d||"$"===d},isExpOperator:function(d){return"-"===d||"+"===d||this.isNumber(d)},throwError:function(d,a,b){throw b= -b||this.index,a=F(a)?"s "+a+"-"+this.index+" ["+this.text.substring(a,b)+"]":" "+b,ab("lexerr",d,a,this.text);},readNumber:function(){for(var d="",a=this.index;this.index","<=",">=");)a={type:Q.BinaryExpression,operator:d.text,left:a,right:this.additive()};return a},additive:function(){for(var d,a=this.multiplicative();d= -this.expect("+","-");)a={type:Q.BinaryExpression,operator:d.text,left:a,right:this.multiplicative()};return a},multiplicative:function(){for(var d,a=this.unary();d=this.expect("*","/","%");)a={type:Q.BinaryExpression,operator:d.text,left:a,right:this.unary()};return a},unary:function(){var d;return(d=this.expect("+","-","!"))?{type:Q.UnaryExpression,operator:d.text,prefix:!0,argument:this.unary()}:this.primary()},primary:function(){var d;this.expect("(")?(d=this.filterChain(),this.consume(")")):this.expect("[")? -d=this.arrayDeclaration():this.expect("{")?d=this.object():this.constants.hasOwnProperty(this.peek().text)?d=Ga(this.constants[this.consume().text]):this.peek().identifier?d=this.identifier():this.peek().constant?d=this.constant():this.throwError("not a primary expression",this.peek());for(var a;a=this.expect("(","[",".");)"("===a.text?(d={type:Q.CallExpression,callee:d,arguments:this.parseArguments()},this.consume(")")):"["===a.text?(d={type:Q.MemberExpression,object:d,property:this.expression(), -computed:!0},this.consume("]")):"."===a.text?d={type:Q.MemberExpression,object:d,property:this.identifier(),computed:!1}:this.throwError("IMPOSSIBLE");return d},filter:function(d){d=[d];for(var a={type:Q.CallExpression,callee:this.identifier(),arguments:d,filter:!0};this.expect(":");)d.push(this.expression());return a},parseArguments:function(){var d=[];if(")"!==this.peekToken().text){do d.push(this.expression());while(this.expect(","))}return d},identifier:function(){var d=this.consume();return d.identifier|| -this.throwError("is not a valid identifier",d),{type:Q.Identifier,name:d.text}},constant:function(){return{type:Q.Literal,value:this.consume().value}},arrayDeclaration:function(){var d=[];if("]"!==this.peekToken().text){do{if(this.peek("]"))break;d.push(this.expression())}while(this.expect(","))}return this.consume("]"),{type:Q.ArrayExpression,elements:d}},object:function(){var d,a=[];if("}"!==this.peekToken().text){do{if(this.peek("}"))break;d={type:Q.Property,kind:"init"};this.peek().constant?d.key= -this.constant():this.peek().identifier?d.key=this.identifier():this.throwError("invalid key",this.peek());this.consume(":");d.value=this.expression();a.push(d)}while(this.expect(","))}return this.consume("}"),{type:Q.ObjectExpression,properties:a}},throwError:function(d,a){throw ab("syntax",a.text,d,a.index+1,this.text,this.text.substring(a.index));},consume:function(d){if(0===this.tokens.length)throw ab("ueoe",this.text);var a=this.expect(d);return a||this.throwError("is unexpected, expecting ["+ -d+"]",this.peek()),a},peekToken:function(){if(0===this.tokens.length)throw ab("ueoe",this.text);return this.tokens[0]},peek:function(d,a,b,c){return this.peekAhead(0,d,a,b,c)},peekAhead:function(d,a,b,c,e){if(this.tokens.length>d){d=this.tokens[d];var g=d.text;if(g===a||g===b||g===c||g===e||!(a||b||c||e))return d}return!1},expect:function(d,a,b,c){return!!(d=this.peek(d,a,b,c))&&(this.tokens.shift(),d)},constants:{"true":{type:Q.Literal,value:!0},"false":{type:Q.Literal,value:!1},"null":{type:Q.Literal, -value:null},undefined:{type:Q.Literal,value:k},"this":{type:Q.ThisExpression}}};ud.prototype={compile:function(d,a){var c=this,e=this.astBuilder.ast(d);this.state={nextId:0,filters:{},expensiveChecks:a,fn:{vars:[],body:[],own:{}},assign:{vars:[],body:[],own:{}},inputs:[]};Sa(e,c.$filter);var g,l="";return this.stage="assign",(g=nf(e))&&(this.state.computing="assign",l=this.nextId(),this.recurse(g,l),this.return_(l),l="fn.assign="+this.generateFunction("assign","s,v,l")),g=ee(e.body),c.stage="inputs", -b(g,function(d,a){var b="fn"+a;c.state[b]={vars:[],body:[],own:{}};c.state.computing=b;var e=c.nextId();c.recurse(d,e);c.return_(e);c.state.inputs.push(b);d.watchId=a}),this.state.computing="fn",this.stage="main",this.recurse(e),l='"'+this.USE+" "+this.STRICT+'";\n'+this.filterPrefix()+"var fn="+this.generateFunction("fn","s,l,a,i")+l+this.watchFns()+"return fn;",l=(new Function("$filter","ensureSafeMemberName","ensureSafeObject","ensureSafeFunction","getStringValue","ensureSafeAssignContext","ifDefined", -"plus","text",l))(this.$filter,Zb,fb,Oc,sd,Pc,de,rc,d),this.state=this.stage=k,l.literal=fe(e),l.constant=e.constant,l},USE:"use",STRICT:"strict",watchFns:function(){var d=[],a=this.state.inputs,c=this;return b(a,function(a){d.push("var "+a+"="+c.generateFunction(a,"s"))}),a.length&&d.push("fn.inputs=["+a.join(",")+"];"),d.join("")},generateFunction:function(d,a){return"function("+a+"){"+this.varsPrefix(d)+this.body(d)+"};"},filterPrefix:function(){var d=[],a=this;return b(this.state.filters,function(b, -c){d.push(b+"=$filter("+a.escape(c)+")")}),d.length?"var "+d.join(",")+";":""},varsPrefix:function(d){return this.state[d].vars.length?"var "+this.state[d].vars.join(",")+";":""},body:function(d){return this.state[d].body.join("")},recurse:function(d,a,c,e,g,f){var l,h,m,w,n=this;if(e=e||q,!f&&F(d.watchId))a=a||this.nextId(),this.if_("i",this.lazyAssign(a,this.computedMember("i",d.watchId)),this.lazyRecurse(d,a,c,e,g,!0));else switch(d.type){case Q.Program:b(d.body,function(a,b){n.recurse(a.expression, -k,k,function(d){h=d});b!==d.body.length-1?n.current().body.push(h,";"):n.return_(h)});break;case Q.Literal:w=this.escape(d.value);this.assign(a,w);e(w);break;case Q.UnaryExpression:this.recurse(d.argument,k,k,function(d){h=d});w=d.operator+"("+this.ifDefined(h,0)+")";this.assign(a,w);e(w);break;case Q.BinaryExpression:this.recurse(d.left,k,k,function(d){l=d});this.recurse(d.right,k,k,function(d){h=d});w="+"===d.operator?this.plus(l,h):"-"===d.operator?this.ifDefined(l,0)+d.operator+this.ifDefined(h, -0):"("+l+")"+d.operator+"("+h+")";this.assign(a,w);e(w);break;case Q.LogicalExpression:a=a||this.nextId();n.recurse(d.left,a);n.if_("&&"===d.operator?a:n.not(a),n.lazyRecurse(d.right,a));e(a);break;case Q.ConditionalExpression:a=a||this.nextId();n.recurse(d.test,a);n.if_(a,n.lazyRecurse(d.alternate,a),n.lazyRecurse(d.consequent,a));e(a);break;case Q.Identifier:a=a||this.nextId();c&&(c.context="inputs"===n.stage?"s":this.assign(this.nextId(),this.getHasOwnProperty("l",d.name)+"?l:s"),c.computed=!1, -c.name=d.name);Zb(d.name);n.if_("inputs"===n.stage||n.not(n.getHasOwnProperty("l",d.name)),function(){n.if_("inputs"===n.stage||"s",function(){g&&1!==g&&n.if_(n.not(n.nonComputedMember("s",d.name)),n.lazyAssign(n.nonComputedMember("s",d.name),"{}"));n.assign(a,n.nonComputedMember("s",d.name))})},a&&n.lazyAssign(a,n.nonComputedMember("l",d.name)));(n.state.expensiveChecks||"constructor"==d.name)&&n.addEnsureSafeObject(a);e(a);break;case Q.MemberExpression:l=c&&(c.context=this.nextId())||this.nextId(); -a=a||this.nextId();n.recurse(d.object,l,k,function(){n.if_(n.notNull(l),function(){g&&1!==g&&n.addEnsureSafeAssignContext(l);d.computed?(h=n.nextId(),n.recurse(d.property,h),n.getStringValue(h),n.addEnsureSafeMemberName(h),g&&1!==g&&n.if_(n.not(n.computedMember(l,h)),n.lazyAssign(n.computedMember(l,h),"{}")),w=n.ensureSafeObject(n.computedMember(l,h)),n.assign(a,w),c&&(c.computed=!0,c.name=h)):(Zb(d.property.name),g&&1!==g&&n.if_(n.not(n.nonComputedMember(l,d.property.name)),n.lazyAssign(n.nonComputedMember(l, -d.property.name),"{}")),w=n.nonComputedMember(l,d.property.name),(n.state.expensiveChecks||"constructor"==d.property.name)&&(w=n.ensureSafeObject(w)),n.assign(a,w),c&&(c.computed=!1,c.name=d.property.name))},function(){n.assign(a,"undefined")});e(a)},!!g);break;case Q.CallExpression:a=a||this.nextId();d.filter?(h=n.filter(d.callee.name),m=[],b(d.arguments,function(d){var a=n.nextId();n.recurse(d,a);m.push(a)}),w=h+"("+m.join(",")+")",n.assign(a,w),e(a)):(h=n.nextId(),l={},m=[],n.recurse(d.callee, -h,l,function(){n.if_(n.notNull(h),function(){n.addEnsureSafeFunction(h);b(d.arguments,function(d){n.recurse(d,n.nextId(),k,function(d){m.push(n.ensureSafeObject(d))})});l.name?(n.state.expensiveChecks||n.addEnsureSafeObject(l.context),w=n.member(l.context,l.name,l.computed)+"("+m.join(",")+")"):w=h+"("+m.join(",")+")";w=n.ensureSafeObject(w);n.assign(a,w)},function(){n.assign(a,"undefined")});e(a)}));break;case Q.AssignmentExpression:if(h=this.nextId(),l={},!td(d.left))throw ab("lval");this.recurse(d.left, -k,l,function(){n.if_(n.notNull(l.context),function(){n.recurse(d.right,h);n.addEnsureSafeObject(n.member(l.context,l.name,l.computed));n.addEnsureSafeAssignContext(l.context);w=n.member(l.context,l.name,l.computed)+d.operator+h;n.assign(a,w);e(a||w)})},1);break;case Q.ArrayExpression:m=[];b(d.elements,function(d){n.recurse(d,n.nextId(),k,function(d){m.push(d)})});w="["+m.join(",")+"]";this.assign(a,w);e(w);break;case Q.ObjectExpression:m=[];b(d.properties,function(d){n.recurse(d.value,n.nextId(), -k,function(a){m.push(n.escape(d.key.type===Q.Identifier?d.key.name:""+d.key.value)+":"+a)})});w="{"+m.join(",")+"}";this.assign(a,w);e(w);break;case Q.ThisExpression:this.assign(a,"s");e("s");break;case Q.NGValueParameter:this.assign(a,"v"),e("v")}},getHasOwnProperty:function(d,a){var b=d+"."+a,c=this.current().own;return c.hasOwnProperty(b)||(c[b]=this.nextId(!1,d+"&&("+this.escape(a)+" in "+d+")")),c[b]},assign:function(d,a){if(d)return this.current().body.push(d,"=",a,";"),d},filter:function(d){return this.state.filters.hasOwnProperty(d)|| -(this.state.filters[d]=this.nextId(!0)),this.state.filters[d]},ifDefined:function(d,a){return"ifDefined("+d+","+this.escape(a)+")"},plus:function(d,a){return"plus("+d+","+a+")"},return_:function(d){this.current().body.push("return ",d,";")},if_:function(d,a,b){if(!0===d)a();else{var c=this.current().body;c.push("if(",d,"){");a();c.push("}");b&&(c.push("else{"),b(),c.push("}"))}},not:function(d){return"!("+d+")"},notNull:function(d){return d+"!=null"},nonComputedMember:function(d,a){return d+"."+a}, -computedMember:function(d,a){return d+"["+a+"]"},member:function(d,a,b){return b?this.computedMember(d,a):this.nonComputedMember(d,a)},addEnsureSafeObject:function(d){this.current().body.push(this.ensureSafeObject(d),";")},addEnsureSafeMemberName:function(d){this.current().body.push(this.ensureSafeMemberName(d),";")},addEnsureSafeFunction:function(d){this.current().body.push(this.ensureSafeFunction(d),";")},addEnsureSafeAssignContext:function(d){this.current().body.push(this.ensureSafeAssignContext(d), -";")},ensureSafeObject:function(d){return"ensureSafeObject("+d+",text)"},ensureSafeMemberName:function(d){return"ensureSafeMemberName("+d+",text)"},ensureSafeFunction:function(d){return"ensureSafeFunction("+d+",text)"},getStringValue:function(d){this.assign(d,"getStringValue("+d+",text)")},ensureSafeAssignContext:function(d){return"ensureSafeAssignContext("+d+",text)"},lazyRecurse:function(d,a,b,c,e,g){var l=this;return function(){l.recurse(d,a,b,c,e,g)}},lazyAssign:function(d,a){var b=this;return function(){b.assign(d, -a)}},stringEscapeRegex:/[^ a-zA-Z0-9]/g,stringEscapeFn:function(d){return"\\u"+("0000"+d.charCodeAt(0).toString(16)).slice(-4)},escape:function(d){if(u(d))return"'"+d.replace(this.stringEscapeRegex,this.stringEscapeFn)+"'";if(I(d))return d.toString();if(!0===d)return"true";if(!1===d)return"false";if(null===d)return"null";if("undefined"==typeof d)return"undefined";throw ab("esc");},nextId:function(d,a){var b="v"+this.state.nextId++;return d||this.current().vars.push(b+(a?"="+a:"")),b},current:function(){return this.state[this.state.computing]}}; -of.prototype={compile:function(d,a){var c=this,e=this.astBuilder.ast(d);this.expression=d;this.expensiveChecks=a;Sa(e,c.$filter);var g,l;(g=nf(e))&&(l=this.recurse(g));g=ee(e.body);var f;g&&(f=[],b(g,function(d,a){var b=c.recurse(d);d.input=b;f.push(b);d.watchId=a}));var h=[];return b(e.body,function(d){h.push(c.recurse(d.expression))}),g=0===e.body.length?function(){}:1===e.body.length?h[0]:function(d,a){var c;return b(h,function(b){c=b(d,a)}),c},l&&(g.assign=function(d,a,b){return l(d,b,a)}),f&& -(g.inputs=f),g.literal=fe(e),g.constant=e.constant,g},recurse:function(d,a,c){var e,g,l,f=this;if(d.input)return this.inputs(d.input,d.watchId);switch(d.type){case Q.Literal:return this.value(d.value,a);case Q.UnaryExpression:return g=this.recurse(d.argument),this["unary"+d.operator](g,a);case Q.BinaryExpression:return e=this.recurse(d.left),g=this.recurse(d.right),this["binary"+d.operator](e,g,a);case Q.LogicalExpression:return e=this.recurse(d.left),g=this.recurse(d.right),this["binary"+d.operator](e, -g,a);case Q.ConditionalExpression:return this["ternary?:"](this.recurse(d.test),this.recurse(d.alternate),this.recurse(d.consequent),a);case Q.Identifier:return Zb(d.name,f.expression),f.identifier(d.name,f.expensiveChecks||"constructor"==d.name,a,c,f.expression);case Q.MemberExpression:return e=this.recurse(d.object,!1,!!c),d.computed||(Zb(d.property.name,f.expression),g=d.property.name),d.computed&&(g=this.recurse(d.property)),d.computed?this.computedMember(e,g,a,c,f.expression):this.nonComputedMember(e, -g,f.expensiveChecks,a,c,f.expression);case Q.CallExpression:return l=[],b(d.arguments,function(d){l.push(f.recurse(d))}),d.filter&&(g=this.$filter(d.callee.name)),d.filter||(g=this.recurse(d.callee,!0)),d.filter?function(d,b,c,e){for(var f=[],h=0;h":function(d,a,b){return function(c,e,g,l){return c=d(c,e,g,l)>a(c,e,g,l),b?{value:c}:c}},"binary<=":function(d,a,b){return function(c,e,g,l){return c=d(c,e,g,l)<=a(c,e,g,l),b?{value:c}:c}},"binary>=":function(d,a,b){return function(c,e,g,l){return c=d(c,e,g,l)>=a(c,e,g,l),b?{value:c}:c}},"binary&&":function(d,a,b){return function(c, -e,g,l){return c=d(c,e,g,l)&&a(c,e,g,l),b?{value:c}:c}},"binary||":function(d,a,b){return function(c,e,g,l){return c=d(c,e,g,l)||a(c,e,g,l),b?{value:c}:c}},"ternary?:":function(d,a,b,c){return function(e,g,l,f){return e=d(e,g,l,f)?a(e,g,l,f):b(e,g,l,f),c?{value:e}:e}},value:function(d,a){return function(){return a?{context:k,name:k,value:d}:d}},identifier:function(d,a,b,c,e){return function(g,l,f,h){return g=l&&d in l?l:g,c&&1!==c&&g&&!g[d]&&(g[d]={}),l=g?g[d]:k,a&&fb(l,e),b?{context:g,name:d,value:l}: -l}},computedMember:function(d,a,b,c,e){return function(g,l,f,h){var k,m,n=d(g,l,f,h);return null!=n&&(k=a(g,l,f,h),k=sd(k),Zb(k,e),c&&1!==c&&(Pc(n),n&&!n[k]&&(n[k]={})),m=n[k],fb(m,e)),b?{context:n,name:k,value:m}:m}},nonComputedMember:function(d,a,b,c,e,g){return function(l,f,h,m){return l=d(l,f,h,m),e&&1!==e&&(Pc(l),l&&!l[a]&&(l[a]={})),f=null!=l?l[a]:k,(b||"constructor"==a)&&fb(f,g),c?{context:l,name:a,value:f}:f}},inputs:function(d,a){return function(b,c,e,g){return g?g[a]:d(b,c,e)}}};var db= -function(d,a,b){this.lexer=d;this.$filter=a;this.options=b;this.ast=new Q(this.lexer);this.astCompiler=b.csp?new of(this.ast,a):new ud(this.ast,a)};db.prototype={constructor:db,parse:function(d){return this.astCompiler.compile(d,this.options.expensiveChecks)}};var Kg=Object.prototype.valueOf,$b=h("$sce"),Ab={HTML:"html",CSS:"css",URL:"url",RESOURCE_URL:"resourceUrl",JS:"js"},Za=h("$compile"),Qa=f.createElement("a"),rf=Ob(a.location.href);sf.$inject=["$document"];Dc.$inject=["$provide"];var yf=22, -xf=".",tc="0";ge.$inject=["$locale"];je.$inject=["$locale"];var yd={yyyy:Wa("FullYear",4),yy:Wa("FullYear",2,0,!0),y:Wa("FullYear",1),MMMM:Rc("Month"),MMM:Rc("Month",!0),MM:Wa("Month",2,1),M:Wa("Month",1,1),dd:Wa("Date",2),d:Wa("Date",1),HH:Wa("Hours",2),H:Wa("Hours",1),hh:Wa("Hours",2,-12),h:Wa("Hours",1,-12),mm:Wa("Minutes",2),m:Wa("Minutes",1),ss:Wa("Seconds",2),s:Wa("Seconds",1),sss:Wa("Milliseconds",3),EEEE:Rc("Day"),EEE:Rc("Day",!0),a:function(d,a){return 12>d.getHours()?a.AMPMS[0]:a.AMPMS[1]}, -Z:function(d,a,b){return d=-1*b,(0<=d?"+":"")+(Qc(Math[0=d.getFullYear()?a.ERANAMES[0]:a.ERANAMES[1]}},Bf=/((?:[^yMdHhmsaZEwG']+)|(?:'(?:[^']|'')*')|(?:E+|y+|M+|d+|H+|h+|m+|s+|a|Z|G+|w+))(.*)/,Af=/^\-?\d+$/;he.$inject=["$locale"];var uf=z(sa),wd=z(lb);ke.$inject=["$parse"];var cd=z({restrict:"E",compile:function(d,a){if(!a.href&&!a.xlinkHref)return function(d,a){if("a"===a[0].nodeName.toLowerCase()){var b= -"[object SVGAnimatedString]"===ub.call(a.prop("href"))?"xlink:href":"href";a.on("click",function(d){a.attr(b)||d.preventDefault()})}}}}),Eb={};b(Hb,function(d,a){function b(d,b,e){d.$watch(e[c],function(d){e.$set(a,!!d)})}if("multiple"!=d){var c=rb("ng-"+a),e=b;"checked"===d&&(e=function(d,a,e){e.ngModel!==e[c]&&b(d,a,e)});Eb[c]=function(){return{restrict:"A",priority:100,link:e}}}});b(Wd,function(d,a){Eb[a]=function(){return{priority:100,link:function(d,b,c){return"ngPattern"===a&&"/"==c.ngPattern.charAt(0)&& -(b=c.ngPattern.match(ra))?void c.$set("ngPattern",new RegExp(b[1],b[2])):void d.$watch(c[a],function(d){c.$set(a,d)})}}}});b(["src","srcset","href"],function(d){var a=rb("ng-"+d);Eb[a]=function(){return{priority:99,link:function(b,c,e){var g=d,f=d;"href"===d&&"[object SVGAnimatedString]"===ub.call(c.prop("href"))&&(f="xlinkHref",e.$attr[f]="xlink:href",g=null);e.$observe(a,function(a){a?(e.$set(f,a),jc&&g&&c.prop(g,e[f])):"href"===d&&e.$set(f,null)})}}}});var zd={$addControl:q,$$renameControl:function(d, -a){d.$name=a},$removeControl:q,$setValidity:q,$setDirty:q,$setPristine:q,$setSubmitted:q};Cf.$inject=["$element","$attrs","$scope","$animate","$interpolate"];var nc=function(d){return["$timeout","$parse",function(a,b){function c(d){return""===d?b('this[""]').assign:b(d).assign||q}return{name:"form",restrict:d?"EAC":"E",require:["form","^^?form"],controller:Cf,compile:function(b,e){b.addClass(uc).addClass(Wc);var g=e.name?"name":!(!d||!e.ngForm)&&"ngForm";return{pre:function(d,b,e,f){var l=f[0];if(!("action"in -e)){var h=function(a){d.$apply(function(){l.$commitViewValue();l.$setSubmitted()});a.preventDefault()};b[0].addEventListener("submit",h,!1);b.on("$destroy",function(){a(function(){b[0].removeEventListener("submit",h,!1)},0,!1)})}(f[1]||l.$$parentForm).$addControl(l);var m=g?c(l.$name):q;g&&(m(d,l),e.$observe(g,function(a){l.$name!==a&&(m(d,k),l.$$parentForm.$$renameControl(l,a),(m=c(l.$name))(d,l))}));b.on("$destroy",function(){l.$$parentForm.$removeControl(l);m(d,k);n(l,zd)})}}}}}]},Be=nc(),Va=nc(!0), -ib=/\d{4}-[01]\d-[0-3]\dT[0-2]\d:[0-5]\d:[0-5]\d\.\d+([+-][0-2]\d:[0-5]\d|Z)/,Mg=/^[a-z][a-z\d.+-]*:\/*(?:[^:@]+(?::[^@]+)?@)?(?:[^\s:\/?#]+|\[[a-f\d:]+\])(?::\d+)?(?:\/[^?#]*)?(?:\?[^#]*)?(?:#.*)?$/i,og=/^[a-z0-9!#$%&'*+\/=?^_`{|}~.-]+@[a-z0-9]([a-z0-9-]*[a-z0-9])?(\.[a-z0-9]([a-z0-9-]*[a-z0-9])?)*$/i,Kf=/^\s*(\-|\+)?(\d+|(\d*(\.\d*)))([eE][+-]?\d+)?\s*$/,Lf=/^(\d{4})-(\d{2})-(\d{2})$/,Xc=/^(\d{4})-(\d\d)-(\d\d)T(\d\d):(\d\d)(?::(\d\d)(\.\d{1,3})?)?$/,te=/^(\d{4})-W(\d\d)$/,Mf=/^(\d{4})-(\d\d)$/, -ue=/^(\d\d):(\d\d)(?::(\d\d)(\.\d{1,3})?)?$/,Uc=Ma();b(["date","datetime-local","month","time","week"],function(d){Uc[d]=!0});var Yc={text:function(d,a,b,c,e,g){Tc(d,a,b,c,e,g);oe(c)},date:bc("date",Lf,Ca(Lf,["yyyy","MM","dd"]),"yyyy-MM-dd"),"datetime-local":bc("datetimelocal",Xc,Ca(Xc,"yyyy MM dd HH mm ss sss".split(" ")),"yyyy-MM-ddTHH:mm:ss.sss"),time:bc("time",ue,Ca(ue,["HH","mm","ss","sss"]),"HH:mm:ss.sss"),week:bc("week",te,function(d,a){if(J(d))return d;if(u(d)){te.lastIndex=0;var b=te.exec(d); -if(b){var c=+b[1],e=+b[2],g=b=0,f=0,l=0,h=me(c),e=7*(e-1);return a&&(b=a.getHours(),g=a.getMinutes(),f=a.getSeconds(),l=a.getMilliseconds()),new Date(c,0,h.getDate()+e,b,g,f,l)}}return NaN},"yyyy-Www"),month:bc("month",Mf,Ca(Mf,["yyyy","MM"]),"yyyy-MM"),number:function(d,a,b,c,e,g){if(lc(d,a,b,c),Tc(d,a,b,c,e,g),c.$$parserName="number",c.$parsers.push(function(d){return c.$isEmpty(d)?null:Kf.test(d)?parseFloat(d):k}),c.$formatters.push(function(d){if(!c.$isEmpty(d)){if(!I(d))throw Vc("numfmt",d); -d=d.toString()}return d}),F(b.min)||b.ngMin){var f;c.$validators.min=function(d){return c.$isEmpty(d)||B(f)||d>=f};b.$observe("min",function(d){F(d)&&!I(d)&&(d=parseFloat(d,10));f=I(d)&&!isNaN(d)?d:k;c.$validate()})}if(F(b.max)||b.ngMax){var l;c.$validators.max=function(d){return c.$isEmpty(d)||B(l)||d<=l};b.$observe("max",function(d){F(d)&&!I(d)&&(d=parseFloat(d,10));l=I(d)&&!isNaN(d)?d:k;c.$validate()})}},url:function(d,a,b,c,e,g){Tc(d,a,b,c,e,g);oe(c);c.$$parserName="url";c.$validators.url=function(d, -a){var b=d||a;return c.$isEmpty(b)||Mg.test(b)}},email:function(d,a,b,c,e,g){Tc(d,a,b,c,e,g);oe(c);c.$$parserName="email";c.$validators.email=function(d,a){var b=d||a;return c.$isEmpty(b)||og.test(b)}},radio:function(d,a,b,c){B(b.name)&&a.attr("name",++wc);a.on("click",function(d){a[0].checked&&c.$setViewValue(b.value,d&&d.type)});c.$render=function(){a[0].checked=b.value==c.$viewValue};b.$observe("value",c.$render)},checkbox:function(d,a,b,c,e,g,f,h){var l=pe(h,d,"ngTrueValue",b.ngTrueValue,!0), -k=pe(h,d,"ngFalseValue",b.ngFalseValue,!1);a.on("click",function(d){c.$setViewValue(a[0].checked,d&&d.type)});c.$render=function(){a[0].checked=c.$viewValue};c.$isEmpty=function(d){return!1===d};c.$formatters.push(function(d){return X(d,l)});c.$parsers.push(function(d){return d?l:k})},hidden:q,button:q,submit:q,reset:q,file:q},oc=["$browser","$sniffer","$filter","$parse",function(d,a,b,c){return{restrict:"E",require:["?ngModel"],link:{pre:function(e,g,f,l){l[0]&&(Yc[sa(f.type)]||Yc.text)(e,g,f,l[0], -a,d,b,c)}}}}],Bb=/^(true|false|\d+)$/,Id=function(){return{restrict:"A",priority:100,compile:function(d,a){return Bb.test(a.ngValue)?function(d,a,b){b.$set("value",d.$eval(b.ngValue))}:function(d,a,b){d.$watch(b.ngValue,function(d){b.$set("value",d)})}}}},Gd=["$compile",function(d){return{restrict:"AC",compile:function(a){return d.$$addBindingClass(a),function(a,b,c){d.$$addBindingInfo(b,c.ngBind);b=b[0];a.$watch(c.ngBind,function(d){b.textContent=B(d)?"":d})}}}}],De=["$interpolate","$compile",function(d, -a){return{compile:function(b){return a.$$addBindingClass(b),function(b,c,e){b=d(c.attr(e.$attr.ngBindTemplate));a.$$addBindingInfo(c,b.expressions);c=c[0];e.$observe("ngBindTemplate",function(d){c.textContent=B(d)?"":d})}}}}],Ce=["$sce","$parse","$compile",function(d,a,b){return{restrict:"A",compile:function(c,e){var g=a(e.ngBindHtml),f=a(e.ngBindHtml,function(a){return d.valueOf(a)});return b.$$addBindingClass(c),function(a,c,e){b.$$addBindingInfo(c,e.ngBindHtml);a.$watch(f,function(){var b=g(a); -c.html(d.getTrustedHtml(b)||"")})}}}}],Hd=z({restrict:"A",require:"ngModel",link:function(d,a,b,c){c.$viewChangeListeners.push(function(){d.$eval(b.ngChange)})}}),Ac=cc("",!0),Ee=cc("Odd",0),Tf=cc("Even",1),Uf=hb({compile:function(d,a){a.$set("ngCloak",k);d.removeClass("ng-cloak")}}),Vf=[function(){return{restrict:"A",scope:!0,controller:"@",priority:500}}],Ke={},pg={blur:!0,focus:!0};b("click dblclick mousedown mouseup mouseover mouseout mousemove mouseenter mouseleave keydown keyup keypress submit focus blur copy cut paste".split(" "), -function(d){var a=rb("ng-"+d);Ke[a]=["$parse","$rootScope",function(b,c){return{restrict:"A",compile:function(e,g){var f=b(g[a],null,!0);return function(a,b){b.on(d,function(b){var e=function(){f(a,{$event:b})};pg[d]&&c.$$phase?a.$evalAsync(e):a.$apply(e)})}}}}]});var Xf=["$animate",function(d){return{multiElement:!0,transclude:"element",priority:600,terminal:!0,restrict:"A",$$tlb:!0,link:function(a,b,c,e,g){var l,h,k;a.$watch(c.ngIf,function(a){a?h||g(function(a,e){h=e;a[a.length++]=f.createComment(" end ngIf: "+ -c.ngIf+" ");l={clone:a};d.enter(a,b.parent(),b)}):(k&&(k.remove(),k=null),h&&(h.$destroy(),h=null),l&&(k=Tb(l.clone),d.leave(k).then(function(){k=null}),l=null))})}}}],Yf=["$templateRequest","$anchorScroll","$animate",function(d,a,b){return{restrict:"ECA",priority:400,terminal:!0,transclude:"element",controller:Na.noop,compile:function(c,e){var g=e.ngInclude||e.src,f=e.onload||"",l=e.autoscroll;return function(c,e,h,k,m){var n,w,r,q=0,t=function(){w&&(w.remove(),w=null);n&&(n.$destroy(),n=null);r&& -(b.leave(r).then(function(){w=null}),w=r,r=null)};c.$watch(g,function(g){var h=function(){!F(l)||l&&!c.$eval(l)||a()},w=++q;g?(d(g,!0).then(function(d){if(!c.$$destroyed&&w===q){var a=c.$new();k.template=d;d=m(a,function(d){t();b.enter(d,null,e).then(h)});n=a;r=d;n.$emit("$includeContentLoaded",g);c.$eval(f)}},function(){c.$$destroyed||w!==q||(t(),c.$emit("$includeContentError",g))}),c.$emit("$includeContentRequested",g)):(t(),k.template=null)})}}}}],hg=["$compile",function(d){return{restrict:"ECA", -priority:-400,require:"ngInclude",link:function(a,b,c,e){/SVG/.test(b[0].toString())?(b.empty(),d(Ze(e.template,f).childNodes)(a,function(d){b.append(d)},{futureParentElement:b})):(b.html(e.template),d(b.contents())(a))}}}],Zf=hb({priority:450,compile:function(){return{pre:function(d,a,b){d.$eval(b.ngInit)}}}}),fg=function(){return{restrict:"A",priority:100,require:"ngModel",link:function(d,a,c,e){var g=a.attr(c.$attr.ngList)||", ",f="false"!==c.ngTrim,l=f?Ea(g):g;e.$parsers.push(function(d){if(!B(d)){var a= -[];return d&&b(d.split(l),function(d){d&&a.push(f?Ea(d):d)}),a}});e.$formatters.push(function(d){return la(d)?d.join(g):k});e.$isEmpty=function(d){return!d||!d.length}}}},Wc="ng-valid",Ef="ng-invalid",uc="ng-pristine",Ad="ng-dirty",Bd="ng-pending",Vc=h("ngModel"),Nf=["$scope","$exceptionHandler","$attrs","$element","$parse","$animate","$timeout","$rootScope","$q","$interpolate",function(d,a,c,e,g,f,h,m,n,w){this.$modelValue=this.$viewValue=Number.NaN;this.$$rawModelValue=k;this.$validators={};this.$asyncValidators= -{};this.$parsers=[];this.$formatters=[];this.$viewChangeListeners=[];this.$untouched=!0;this.$touched=!1;this.$pristine=!0;this.$dirty=!1;this.$valid=!0;this.$invalid=!1;this.$error={};this.$$success={};this.$pending=k;this.$name=w(c.name||"",!1)(d);this.$$parentForm=zd;var l,r=g(c.ngModel),t=r.assign,u=r,x=t,p=null,v=this;this.$$setOptions=function(d){if((v.$options=d)&&d.getterSetter){var a=g(c.ngModel+"()"),b=g(c.ngModel+"($$$p)");u=function(d){var b=r(d);return E(b)&&(b=a(d)),b};x=function(d, -a){E(r(d))?b(d,{$$$p:v.$modelValue}):t(d,v.$modelValue)}}else if(!r.assign)throw Vc("nonassign",c.ngModel,Y(e));};this.$render=q;this.$isEmpty=function(d){return B(d)||""===d||null===d||d!==d};var A=0;Df({ctrl:this,$element:e,set:function(d,a){d[a]=!0},unset:function(d,a){delete d[a]},$animate:f});this.$setPristine=function(){v.$dirty=!1;v.$pristine=!0;f.removeClass(e,Ad);f.addClass(e,uc)};this.$setDirty=function(){v.$dirty=!0;v.$pristine=!1;f.removeClass(e,uc);f.addClass(e,Ad);v.$$parentForm.$setDirty()}; -this.$setUntouched=function(){v.$touched=!1;v.$untouched=!0;f.setClass(e,"ng-untouched","ng-touched")};this.$setTouched=function(){v.$touched=!0;v.$untouched=!1;f.setClass(e,"ng-touched","ng-untouched")};this.$rollbackViewValue=function(){h.cancel(p);v.$viewValue=v.$$lastCommittedViewValue;v.$render()};this.$validate=function(){if(!I(v.$modelValue)||!isNaN(v.$modelValue)){var d=v.$$rawModelValue,a=v.$valid,b=v.$modelValue,c=v.$options&&v.$options.allowInvalid;v.$$runValidators(d,v.$$lastCommittedViewValue, -function(e){c||a===e||(v.$modelValue=e?d:k,v.$modelValue!==b&&v.$$writeModelToScope())})}};this.$$runValidators=function(d,a,c){function e(){var c=!0;return b(v.$validators,function(b,e){var y=b(d,a);c=c&&y;f(e,y)}),!!c||(b(v.$asyncValidators,function(d,a){f(a,null)}),!1)}function g(){var e=[],y=!0;b(v.$asyncValidators,function(b,c){var g=b(d,a);if(!g||!E(g.then))throw Vc("nopromise",g);f(c,k);e.push(g.then(function(){f(c,!0)},function(d){y=!1;f(c,!1)}))});e.length?n.all(e).then(function(){h===A&& -c(y)},q):h===A&&c(!0)}function f(d,a){h===A&&v.$setValidity(d,a)}A++;var h=A;(function(){var d=v.$$parserName||"parse";return B(l)?(f(d,null),!0):(l||(b(v.$validators,function(d,a){f(a,null)}),b(v.$asyncValidators,function(d,a){f(a,null)})),f(d,l),l)})()&&e()?g():h===A&&c(!1)};this.$commitViewValue=function(){var d=v.$viewValue;h.cancel(p);(v.$$lastCommittedViewValue!==d||""===d&&v.$$hasNativeValidators)&&(v.$$lastCommittedViewValue=d,v.$pristine&&this.$setDirty(),this.$$parseAndValidate())};this.$$parseAndValidate= -function(){var a=v.$$lastCommittedViewValue;if(l=!B(a)||k)for(var b=0;be||c.$isEmpty(a)||a.length<=e}}}}}, -Je=function(){return{restrict:"A",require:"?ngModel",link:function(d,a,b,c){if(c){var e=0;b.$observe("minlength",function(d){e=parseInt(d,10)||0;c.$validate()});c.$validators.minlength=function(d,a){return c.$isEmpty(a)||a.length>=e}}}}};a.angular.bootstrap?a.console&&console.log("WARNING: Tried to load angular more than once."):(ua(),ze(Na),Na.module("ngLocale",[],["$provide",function(d){function a(d){d+="";var a=d.indexOf(".");return-1==a?0:d.length-a-1}d.value("$locale",{DATETIME_FORMATS:{AMPMS:["AM", -"PM"],DAY:"Sunday Monday Tuesday Wednesday Thursday Friday Saturday".split(" "),ERANAMES:["Before Christ","Anno Domini"],ERAS:["BC","AD"],FIRSTDAYOFWEEK:6,MONTH:"January February March April May June July August September October November December".split(" "),SHORTDAY:"Sun Mon Tue Wed Thu Fri Sat".split(" "),SHORTMONTH:"Jan Feb Mar Apr May Jun Jul Aug Sep Oct Nov Dec".split(" "),STANDALONEMONTH:"January February March April May June July August September October November December".split(" "),WEEKENDRANGE:[5, -6],fullDate:"EEEE, MMMM d, y",longDate:"MMMM d, y",medium:"MMM d, y h:mm:ss a",mediumDate:"MMM d, y",mediumTime:"h:mm:ss a","short":"M/d/yy h:mm a",shortDate:"M/d/yy",shortTime:"h:mm a"},NUMBER_FORMATS:{CURRENCY_SYM:"$",DECIMAL_SEP:".",GROUP_SEP:",",PATTERNS:[{gSize:3,lgSize:3,maxFrac:3,minFrac:0,minInt:1,negPre:"-",negSuf:"",posPre:"",posSuf:""},{gSize:3,lgSize:3,maxFrac:2,minFrac:2,minInt:1,negPre:"-\u00a4",negSuf:"",posPre:"\u00a4",posSuf:""}]},id:"en-us",localeID:"en_US",pluralCat:function(d, -b){var c=0|d,e=b;return k===e&&(e=Math.min(a(d),3)),Math.pow(10,e),1==c&&0==e?"one":"other"}})}]),fa(f).ready(function(){Ka(f,U)}))}(window,document);!window.angular.$$csp().noInlineStyle&&window.angular.element(document.head).prepend(''); -var duScrollDefaultEasing=function(a){return.5>a?Math.pow(2*a,2)/2:1-Math.pow(2*(1-a),2)/2},duScroll=angular.module("duScroll",["duScroll.scrollspy","duScroll.smoothScroll","duScroll.scrollContainer","duScroll.spyContext","duScroll.scrollHelpers"]).value("duScrollDuration",350).value("duScrollSpyWait",100).value("duScrollGreedy",!1).value("duScrollOffset",0).value("duScrollEasing",duScrollDefaultEasing).value("duScrollCancelOnEvents","scroll mousedown mousewheel touchmove keydown").value("duScrollBottomSpy", -!1).value("duScrollActiveClass","active");"undefined"!=typeof module&&module&&module.exports&&(module.exports=duScroll); -angular.module("duScroll.scrollHelpers",["duScroll.requestAnimation"]).run(["$window","$q","cancelAnimation","requestAnimation","duScrollEasing","duScrollDuration","duScrollOffset","duScrollCancelOnEvents",function(a,f,k,h,c,b,e,g){var r={},m=function(a){return"undefined"!=typeof HTMLDocument&&a instanceof HTMLDocument||a.nodeType&&a.nodeType===a.DOCUMENT_NODE},n=function(a){return"undefined"!=typeof HTMLElement&&a instanceof HTMLElement||a.nodeType&&a.nodeType===a.ELEMENT_NODE},t=function(a){return n(a)|| -m(a)?a:a[0]};r.duScrollTo=function(b,c,e,g){var f;if(angular.isElement(b)?f=this.duScrollToElement:angular.isDefined(e)&&(f=this.duScrollToAnimated),f)return f.apply(this,arguments);f=t(this);return m(f)?a.scrollTo(b,c):(f.scrollLeft=b,void(f.scrollTop=c))};var x,q;r.duScrollToAnimated=function(a,b,e,m){e&&!m&&(m=c);var n=this.duScrollLeft(),r=this.duScrollTop(),t=Math.round(a-n),v=Math.round(b-r),A=null,E=0,G=this,z=function(a){(!a||E&&0=e?1:m(E/e);G.scrollTo(n+Math.ceil(t*a),r+Math.ceil(v*a));1>a?x=h(B):(g&&G.unbind(g,z),x=null,q.resolve())};return G.duScrollTo(n,r),g&&G.bind(g,z),x=h(B),q.promise};r.duScrollToElement=function(a,b,c,g){var f=t(this);angular.isNumber(b)&&!isNaN(b)||(b=e);a=this.duScrollTop()+t(a).getBoundingClientRect().top-b;return n(f)&&(a-=f.getBoundingClientRect().top),this.duScrollTo(0, -a,c,g)};r.duScrollLeft=function(b,c,e){if(angular.isNumber(b))return this.duScrollTo(b,this.duScrollTop(),c,e);b=t(this);return m(b)?a.scrollX||document.documentElement.scrollLeft||document.body.scrollLeft:b.scrollLeft};r.duScrollTop=function(b,c,e){if(angular.isNumber(b))return this.duScrollTo(this.duScrollLeft(),b,c,e);b=t(this);return m(b)?a.scrollY||document.documentElement.scrollTop||document.body.scrollTop:b.scrollTop};r.duScrollToElementAnimated=function(a,c,e,g){return this.duScrollToElement(a, -c,e||b,g)};r.duScrollTopAnimated=function(a,c,e){return this.duScrollTop(a,c||b,e)};r.duScrollLeftAnimated=function(a,c,e){return this.duScrollLeft(a,c||b,e)};angular.forEach(r,function(a,b){angular.element.prototype[b]=a;var c=b.replace(/^duScroll/,"scroll");angular.isUndefined(angular.element.prototype[c])&&(angular.element.prototype[c]=a)})}]); -angular.module("duScroll.polyfill",[]).factory("polyfill",["$window",function(a){var f=["webkit","moz","o","ms"];return function(k,h){if(a[k])return a[k];for(var c,b=k.substr(0,1).toUpperCase()+k.substr(1),e=0;e= -e.scrollHeight):e=Math.round(k.pageYOffset+k.innerHeight)>=(h[0].body.scrollHeight||h[0].documentElement.scrollHeight);var m,q,t,x,p,v,A=g&&e?"bottom":"top";x=c.spies;q=c.currentlyActive;t=void 0;for(m=0;mv.top+p.offset-f&&(b||-1*v.top+f)=a},isVerticalMovement:function(f){return~[a.UP,a.DOWN].indexOf(f)},isHorizontalMovement:function(f){return~[a.LEFT,a.RIGHT,a.BACKSPACE,a.DELETE].indexOf(f)},toSeparator:function(f){var c={ENTER:"\n",TAB:"\t",SPACE:" "}[f];return c?c:a[f]?void 0: -f}};void 0===angular.element.prototype.querySelectorAll&&(angular.element.prototype.querySelectorAll=function(a){return angular.element(this[0].querySelectorAll(a))});void 0===angular.element.prototype.closest&&(angular.element.prototype.closest=function(a){for(var c=this[0],b=c.matches||c.webkitMatchesSelector||c.mozMatchesSelector||c.msMatchesSelector;c;){if(b.bind(c)(a))return c;c=c.parentElement}return!1});var f=0,k=angular.module("ui.select",[]).constant("uiSelectConfig",{theme:"bootstrap",searchEnabled:!0, -sortable:!1,placeholder:"",refreshDelay:1E3,closeOnSelect:!0,skipFocusser:!1,dropdownPosition:"auto",removeSelected:!0,generateId:function(){return f++},appendToBody:!1}).service("uiSelectMinErr",function(){var a=angular.$$minErr("ui.select");return function(){var c=a.apply(this,arguments).message.replace(/\nhttp:\/\/errors.angularjs.org\/.*/,"");return Error(c)}}).directive("uisTranscludeAppend",function(){return{link:function(a,c,b,e,g){g(a,function(a){c.append(a)})}}}).filter("highlight",function(){return function(a, -c){return c&&a?(""+a).replace(new RegExp((""+c).replace(/([.?*+^$[\]\\(){}|-])/g,"\\$1"),"gi"),'$&'):a}}).factory("uisOffset",["$document","$window",function(a,c){return function(b){var e=b[0].getBoundingClientRect();return{width:e.width||b.prop("offsetWidth"),height:e.height||b.prop("offsetHeight"),top:e.top+(c.pageYOffset||a[0].documentElement.scrollTop),left:e.left+(c.pageXOffset||a[0].documentElement.scrollLeft)}}}]);k.directive("uiSelectChoices",["uiSelectConfig", -"uisRepeatParser","uiSelectMinErr","$compile","$window",function(a,c,b,e,g){return{restrict:"EA",require:"^uiSelect",replace:!0,transclude:!0,templateUrl:function(b){b.addClass("ui-select-choices");return(b.parent().attr("theme")||a.theme)+"/choices.tpl.html"},compile:function(e,f){if(!f.repeat)throw b("repeat","Expected 'repeat' expression.");var h=f.groupBy,k=f.groupFilter;if(h){var m=e.querySelectorAll(".ui-select-choices-group");if(1!==m.length)throw b("rows","Expected 1 .ui-select-choices-group but got '{0}'.", -m.length);m.attr("ng-repeat",c.getGroupNgRepeatExpression())}var m=c.parse(f.repeat),q=e.querySelectorAll(".ui-select-choices-row");if(1!==q.length)throw b("rows","Expected 1 .ui-select-choices-row but got '{0}'.",q.length);q.attr("ng-repeat",m.repeatExpression(h)).attr("ng-if","$select.open");var r=e.querySelectorAll(".ui-select-choices-row-inner");if(1!==r.length)throw b("rows","Expected 1 .ui-select-choices-row-inner but got '{0}'.",r.length);r.attr("uis-transclude-append","");return(g.document.addEventListener? -q:r).attr("ng-click","$select.select("+m.itemName+",$select.skipFocusser,$event)"),function(b,c,e,g){g.parseRepeatAttr(e.repeat,h,k);g.disableChoiceExpression=e.uiDisableChoice;g.onHighlightCallback=e.onHighlight;g.dropdownPosition=e.position?e.position.toLowerCase():a.dropdownPosition;b.$on("$destroy",function(){q.remove()});b.$watch("$select.search",function(a){a&&!g.open&&g.multiple&&g.activate(!1,!0);g.activeIndex=g.tagging.isActivated?-1:0;!e.minimumInputLength||g.search.length>=e.minimumInputLength? -g.refresh(e.refresh):g.items=[]});e.$observe("refreshDelay",function(){var c=b.$eval(e.refreshDelay);g.refreshDelay=void 0!==c?c:a.refreshDelay})}}}}]);k.controller("uiSelectCtrl",["$scope","$element","$timeout","$filter","$$uisDebounce","uisRepeatParser","uiSelectMinErr","uiSelectConfig","$parse","$injector","$window",function(f,c,b,e,g,k,m,n,t,x,q){function h(a,b,c){if(a.findIndex)return a.findIndex(b,c);var e;a=Object(a);for(var g=a.length>>>0,f=0;g>f;f++)if(e=a[f],b.call(c,e,f,a))return f;return-1} -function r(){(p.resetSearchInput||void 0===p.resetSearchInput&&n.resetSearchInput)&&(p.search=u,p.selected&&p.items.length&&!p.multiple&&(p.activeIndex=h(p.items,function(a){return angular.equals(this,a)},p.selected)))}function A(a,b){var c,e,g=[];for(c=0;cb.length)throw m("choices", -"Expected multiple .ui-select-choices-row but got '{0}'.",b.length);if(!(0>p.activeIndex)){var b=b[p.activeIndex],e=b.offsetTop+b.clientHeight-a[0].scrollTop,g=a[0].offsetHeight;e>g?a[0].scrollTop+=e-g:e=p.items.length?0:p.activeIndex;-1===p.activeIndex&&!1!==p.taggingLabel&&(p.activeIndex= -0);var g=c.querySelectorAll(".ui-select-choices-content"),h=c.querySelectorAll(".ui-select-search");if(p.$animate&&p.$animate.on&&p.$animate.enabled(g[0])){var k=function(c,e){"start"===e&&0===p.items.length?(p.$animate.off("removeClass",h[0],k),b(function(){p.focusSearchInput(a)})):"close"===e&&(p.$animate.off("enter",g[0],k),b(function(){p.focusSearchInput(a)}))};0b)&&(c&&!angular.isUndefined(p.onHighlightCallback)&&a.$eval(p.onHighlightCallback),c)};var E=function(a){return p.selected&& -angular.isArray(p.selected)&&0p.activeIndex){if(a=void 0!==p.tagging.fct?p.tagging.fct(p.search):p.search,!a||angular.equals(p.items[0],a))return}else a=p.items[p.activeIndex];else if(0===p.activeIndex){if(void 0===a)return;if(void 0!==p.tagging.fct&&"string"==typeof a){if(a=p.tagging.fct(a),!a)return}else"string"==typeof a&&(a=a.replace(p.taggingLabel,"").trim())}if(E(a))return void p.close(c)}f.$broadcast("uis:select",a);var g={};g[p.parserResult.itemName]=a;b(function(){p.onSelectCallback(f,{$item:a,$model:p.parserResult.modelMapper(f, -g)})});p.closeOnSelect&&p.close(c);e&&"click"===e.type&&(p.clickTriggeredSelect=!0)}};p.close=function(a){p.open&&(p.ngModel&&p.ngModel.$setTouched&&p.ngModel.$setTouched(),r(),(p.setSearchToAnswer||void 0===p.setSearchToAnswer&&n.setSearchToAnswer)&&(console.log("searchBy: "+p.searchBy),p.searchBy&&(console.log("_setSearchToAnswer"),p.resetSearchInput=!1,p.search=p.selected[p.searchBy])),p.open=!1,f.$broadcast("uis:close",a))};p.setFocus=function(){p.focus||p.focusInput[0].focus()};p.clear=function(a){p.select(void 0); -a.stopPropagation();b(function(){p.focusser[0].focus()},0,!1)};p.toggle=function(a){p.open?(p.close(),a.preventDefault(),a.stopPropagation()):p.activate()};p.isLocked=function(a,b){var c,e=p.selected[b];return e&&!angular.isUndefined(p.lockChoiceExpression)&&(c=!!a.$eval(p.lockChoiceExpression),e._uiSelectChoiceLocked=c),c};var G=null,N=!1;p.sizeSearchInput=function(){var a=p.searchInput[0],c=p.searchInput.parent().parent()[0],e=function(b){if(0===b)return!1;var c=b-a.offsetLeft-10;return 50>c&&(c= -b),p.searchInput.css("width",c+"px"),!0};p.searchInput.css("width","10px");b(function(){null!==G||e(c.clientWidth*!!a.offsetParent)||(G=f.$watch(function(){N||(N=!0,f.$$postDigest(function(){N=!1;e(c.clientWidth*!!a.offsetParent)&&(G(),G=null)}))},angular.noop))})};p.searchInput.on("keydown",function(c){var e=c.which;~[a.ENTER,a.ESC].indexOf(e)&&(c.preventDefault(),c.stopPropagation());f.$apply(function(){var g=!1;if((0").removeAttr("multiple"):g.append(""),h.inputId&&(g.querySelectorAll("input.ui-select-search")[0].id= -h.inputId),function(g,h,m,n,r){function t(a){if(u.open){var b=!1;if(b=window.jQuery?window.jQuery.contains(h[0],a.target):h[0].contains(a.target),!b&&!u.clickTriggeredSelect){var c;u.skipFocusser?c=!0:(b=["input","button","textarea","select"],(c=(c=angular.element(a.target).controller("uiSelect"))&&c!==u)||(c=~b.indexOf(a.target.tagName.toLowerCase())));u.close(c);g.$digest()}u.clickTriggeredSelect=!1}}function q(){null!==x&&(x.replaceWith(h),x=null,h[0].style.position="",h[0].style.left="",h[0].style.top= -"",h[0].style.width=v,u.setFocus())}var u=n[0];n=n[1];u.generatedId=c.generateId();u.baseTitle=m.title||"Select box";u.focusserTitle=u.baseTitle+" focus";u.focusserId="focusser-"+u.generatedId;u.closeOnSelect=angular.isDefined(m.closeOnSelect)?f(m.closeOnSelect)():c.closeOnSelect;g.$watch("skipFocusser",function(){var a=g.$eval(m.skipFocusser);u.skipFocusser=void 0!==a?a:c.skipFocusser});u.onSelectCallback=f(m.onSelect);u.onRemoveCallback=f(m.onRemove);u.ngModel=n;u.choiceGrouped=function(a){return u.isGrouped&& -a&&a.name};m.tabindex&&m.$observe("tabindex",function(a){u.focusInput.attr("tabindex",a);h.removeAttr("tabindex")});g.$watch("searchEnabled",function(){var a=g.$eval(m.searchEnabled);u.searchEnabled=void 0!==a?a:c.searchEnabled});g.$watch("sortable",function(){var a=g.$eval(m.sortable);u.sortable=void 0!==a?a:c.sortable});m.$observe("limit",function(){u.limit=angular.isDefined(m.limit)?parseInt(m.limit,10):void 0});g.$watch("removeSelected",function(){var a=g.$eval(m.removeSelected);u.removeSelected= -void 0!==a?a:c.removeSelected});m.$observe("disabled",function(){u.disabled=void 0!==m.disabled&&m.disabled});m.$observe("resetSearchInput",function(){var a=g.$eval(m.resetSearchInput);u.resetSearchInput=void 0===a||a});m.$observe("setSearchToAnswer",function(){var a=g.$eval(m.setSearchToAnswer);u.setSearchToAnswer=void 0===a||a});m.$observe("searchBy",function(){u.searchBy=m.searchBy});m.$observe("paste",function(){u.paste=g.$eval(m.paste)});m.$observe("tagging",function(){if(void 0!==m.tagging){var a= -g.$eval(m.tagging);u.tagging={isActivated:!0,fct:!0!==a?a:void 0}}else u.tagging={isActivated:!1,fct:void 0}});m.$observe("taggingLabel",function(){void 0!==m.tagging&&("false"===m.taggingLabel?u.taggingLabel=!1:u.taggingLabel=void 0!==m.taggingLabel?m.taggingLabel:"(new)")});m.$observe("taggingTokens",function(){if(void 0!==m.tagging){var a=void 0!==m.taggingTokens?m.taggingTokens.split("|"):[",","ENTER"];u.taggingTokens={isActivated:!0,tokens:a}}});angular.isDefined(m.autofocus)&&k(function(){u.setFocus()}); -angular.isDefined(m.focusOn)&&g.$on(m.focusOn,function(){k(function(){u.setFocus()})});a.on("click",t);g.$on("$destroy",function(){a.off("click",t)});r(g,function(a){a=angular.element("
").append(a);var c=a.querySelectorAll(".ui-select-match");if(c.removeAttr("ui-select-match"),c.removeAttr("data-ui-select-match"),1!==c.length)throw b("transcluded","Expected 1 .ui-select-match but got '{0}'.",c.length);h.querySelectorAll(".ui-select-match").replaceWith(c);c=a.querySelectorAll(".ui-select-choices"); -if(c.removeAttr("ui-select-choices"),c.removeAttr("data-ui-select-choices"),1!==c.length)throw b("transcluded","Expected 1 .ui-select-choices but got '{0}'.",c.length);h.querySelectorAll(".ui-select-choices").replaceWith(c);a=a.querySelectorAll(".ui-select-no-choice");a.removeAttr("ui-select-no-choice");a.removeAttr("data-ui-select-no-choice");1==a.length&&h.querySelectorAll(".ui-select-no-choice").replaceWith(a)});r=g.$eval(m.appendToBody);(void 0!==r?r:c.appendToBody)&&(g.$watch("$select.open", -function(b){b?(b=e(h),x=angular.element('
'),x[0].style.width=b.width+"px",x[0].style.height=b.height+"px",h.after(x),v=h[0].style.width,a.find("body").append(h),h[0].style.position="absolute",h[0].style.left=b.left+"px",h[0].style.top=b.top+"px",h[0].style.width=b.width+"px"):q()}),g.$on("$destroy",function(){q()}));var x=null,v="",A=null;g.$watch("$select.open",function(){"auto"!==u.dropdownPosition&&"up"!==u.dropdownPosition||g.calculateDropdownPos()});var G= -function(a,b){a||e(h);b=b||e(A);A[0].style.position="absolute";A[0].style.top=-1*b.height+"px";h.addClass("direction-up")},B=function(){k(function(){if("up"===u.dropdownPosition)G();else{h.removeClass("direction-up");var b=e(h),c=e(A);b.top+b.height+c.height>(a[0].documentElement.scrollTop||a[0].body.scrollTop)+a[0].documentElement.clientHeight?G(b,c):(h.removeClass("direction-up"),b||e(h),c||e(A),A[0].style.position="",A[0].style.top="")}A[0].style.opacity=1})};g.calculateDropdownPos=function(){if(u.open){if(A= -angular.element(h).querySelectorAll(".ui-select-dropdown"),0!==A.length)if(A[0].style.opacity=0,!e(A).height&&u.$animate&&u.$animate.on&&u.$animate.enabled(A)){var a=!0;u.$animate.on("enter",A,function(b,c){"close"===c&&a&&(B(),a=!1)})}else B()}else null!==A&&0!==A.length&&(A[0].style.opacity=0,A[0].style.position="",A[0].style.top="",h.removeClass("direction-up"))}}}}}]);k.directive("uiSelectMatch",["uiSelectConfig",function(a){function c(a,c){return a[0].hasAttribute(c)?a.attr(c):a[0].hasAttribute("data-"+ -c)?a.attr("data-"+c):a[0].hasAttribute("x-"+c)?a.attr("x-"+c):void 0}return{restrict:"EA",require:"^uiSelect",replace:!0,transclude:!0,templateUrl:function(b){b.addClass("ui-select-match");var e=b.parent();b=c(e,"theme")||a.theme;e=angular.isDefined(c(e,"multiple"));return b+(e?"/match-multiple.tpl.html":"/match.tpl.html")},link:function(b,c,g,f){function e(a){f.allowClear=!!angular.isDefined(a)&&(""===a||"true"===a.toLowerCase())}f.lockChoiceExpression=g.uiLockChoice;g.$observe("placeholder",function(b){f.placeholder= -void 0!==b?b:a.placeholder});g.$observe("allowClear",e);e(g.allowClear);f.multiple&&f.sizeSearchInput()}}}]);k.directive("uiSelectMultiple",["uiSelectMinErr","$timeout",function(f,c){return{restrict:"EA",require:["^uiSelect","^ngModel"],controller:["$scope","$timeout",function(a,c){var b,e=this,f=a.$select;angular.isUndefined(f.selected)&&(f.selected=[]);a.$evalAsync(function(){b=a.ngModel});e.activeMatchIndex=-1;e.updateModel=function(){b.$setViewValue(Date.now());e.refreshComponent()};e.refreshComponent= -function(){f.refreshItems();f.sizeSearchInput()};e.removeChoice=function(b){var g=f.selected[b];if(!g._uiSelectChoiceLocked){var h={};h[f.parserResult.itemName]=g;f.selected.splice(b,1);e.activeMatchIndex=-1;f.sizeSearchInput();c(function(){f.onRemoveCallback(a,{$item:g,$model:f.parserResult.modelMapper(a,h)})});e.updateModel()}};e.getPlaceholder=function(){return f.selected&&f.selected.length?void 0:f.placeholder}}],controllerAs:"$selectMultiple",link:function(b,e,g,h){function k(a){return angular.isNumber(a.selectionStart)? -a.selectionStart:a.value.length}function n(b){function c(){switch(b){case a.LEFT:return~z.activeMatchIndex?m:g;case a.RIGHT:return~z.activeMatchIndex&&f!==g?h:(q.activate(),!1);case a.BACKSPACE:return~z.activeMatchIndex?(z.removeChoice(f),m):g;case a.DELETE:return!!~z.activeMatchIndex&&(z.removeChoice(z.activeMatchIndex),f)}}var e=k(q.searchInput[0]),g=q.selected.length-1,f=z.activeMatchIndex,h=z.activeMatchIndex+1,m=z.activeMatchIndex-1,n=f;return!(0=q.limit||(q.selected.push(b),z.updateModel())});b.$on("uis:activate",function(){z.activeMatchIndex= --1});b.$watch("$select.disabled",function(a,b){b&&!a&&q.sizeSearchInput()});q.searchInput.on("keydown",function(c){var e=c.which;b.$apply(function(){var b=!1;a.isHorizontalMovement(e)&&(b=n(e));b&&e!=a.TAB&&(c.preventDefault(),c.stopPropagation())})});q.searchInput.on("keyup",function(c){if((a.isVerticalMovement(c.which)||b.$evalAsync(function(){q.activeIndex=!1===q.taggingLabel?-1:0}),q.tagging.isActivated&&0"); -c(r)(b);k.focusser=r;k.focusInput=r;e.parent().append(r);r.bind("focus",function(){b.$evalAsync(function(){k.focus=!0})});r.bind("blur",function(){b.$evalAsync(function(){k.focus=!1})});r.bind("keydown",function(c){return c.which===a.BACKSPACE?(c.preventDefault(),c.stopPropagation(),k.select(void 0),void b.$apply()):void(c.which===a.TAB||a.isControl(c)||a.isFunctionKey(c)||c.which===a.ESC||(c.which!=a.DOWN&&c.which!=a.UP&&c.which!=a.ENTER&&c.which!=a.SPACE||(c.preventDefault(),c.stopPropagation(), -k.activate()),b.$digest()))});r.bind("keyup input",function(c){c.which===a.TAB||a.isControl(c)||a.isFunctionKey(c)||c.which===a.ESC||c.which==a.ENTER||c.which===a.BACKSPACE||(k.activate(r.val()),r.val(""),b.$digest())})}}}]);k.directive("uiSelectSort",["$timeout","uiSelectConfig","uiSelectMinErr",function(a,c,b){return{require:["^^uiSelect","^ngModel"],link:function(c,g,f,h){if(null===c[f.uiSelectSort])throw b("sort","Expected a list to sort");var e=h[0],k=h[1],m=angular.extend({axis:"horizontal"}, -c.$eval(f.uiSelectSortOptions)).axis;c.$watch(function(){return e.sortable},function(a){a?g.attr("draggable",!0):g.removeAttr("draggable")});g.on("dragstart",function(a){g.addClass("dragging");(a.dataTransfer||a.originalEvent.dataTransfer).setData("text",c.$index.toString())});g.on("dragend",function(){z("dragging")});var r,v=function(a,b){this.splice(b,0,this.splice(a,1)[0])},z=function(a){angular.forEach(e.$element.querySelectorAll("."+a),function(b){angular.element(b).removeClass(a)})},A=function(a){a.preventDefault(); -("vertical"===m?a.offsetY||a.layerY||(a.originalEvent?a.originalEvent.offsetY:0):a.offsetX||a.layerX||(a.originalEvent?a.originalEvent.offsetX:0))
  • ');a.put("bootstrap/match-multiple.tpl.html", -' × '); -a.put("bootstrap/match.tpl.html",'
    {{$select.placeholder}}
    '); -a.put("bootstrap/no-choice.tpl.html",'');a.put("bootstrap/select-multiple.tpl.html",''); -a.put("bootstrap/select.tpl.html",''); -a.put("select2/choices.tpl.html",'
    '); -a.put("select2/match-multiple.tpl.html",'
  • '); -a.put("select2/match.tpl.html",'{{$select.placeholder}} '); -a.put("select2/select-multiple.tpl.html",'
    '); -a.put("select2/select.tpl.html",'
    '); -a.put("selectize/choices.tpl.html",'
    '); -a.put("selectize/match.tpl.html",'
    ');a.put("selectize/select.tpl.html",'
    ')}]); -!function(a){function f(f,c){return{restrict:"A",scope:{isBusy:"=vBusy",busyLabel:"@vBusyLabel",busyText:"@vBusyText"},compile:function(b,e){var g=a.element(b.find("span"));return g[0]||(b.html(""+b.html()+""),g=a.element(b.find("span"))),function(a,b){var f=g.html(),h=a.busyLabel||c.busyLabel,k=a.busyText;a.$watch("isBusy",function(a){a?(b.addClass(c.states.busy),g.html(h)):(b.removeClass(c.states.busy),g.html(k||f))});e.$observe("vBusyLabel",function(a){h=a});e.$observe("vBusyText", -function(a){k=a})}}}}function k(f,c){return{restrict:"A",link:function(b,e){function g(){e.removeClass(c.states.pressed);t.unbind(n,g)}var h="undefined"!=typeof f[0].documentElement.ontouchstart,k=h?"touchstart":"mousedown",n=h?"touchend":"mouseup",t=a.element(f[0].body);e.bind(k,function(b){var h=b.pageX,k=b.pageY,m=e[0].getBoundingClientRect();b=e[0].querySelector("v-ripple");a.element(b).remove();b=f[0].createElement("v-ripple");b.style.height=b.style.width=Math.max(m.width,m.height)+"px";e.append(b); -h=h-m.left-b.offsetWidth/2-t[0].scrollLeft;k=k-m.top-b.offsetHeight/2-t[0].scrollTop;b.style.left=h+"px";b.style.top=k+"px";e.addClass(c.states.pressed);t.bind(n,g)})}}}a.module("vButton.config",[]).constant("buttonConfig",{busyLabel:"Loading",states:{busy:"is-busy",pressed:"is-pressed"}});a.module("vButton.directives",[]);a.module("vButton",["vButton.config","vButton.directives"]);a.module("vButton.directives").directive("vBusy",f);f.$inject=["$document","buttonConfig"];a.module("vButton.directives").directive("vPressable", -k);k.$inject=["$document","buttonConfig"]}(angular); -(function(a,f,k){function h(a,b){b=b||{};f.forEach(b,function(a,c){delete b[c]});for(var c in a)!a.hasOwnProperty(c)||"$"===c.charAt(0)&&"$"===c.charAt(1)||(b[c]=a[c]);return b}var c=f.$$minErr("$resource"),b=/^(\.[a-zA-Z_$@][0-9a-zA-Z_$@]*)+$/;f.module("ngResource",["ng"]).provider("$resource",function(){var a=/^https?:\/\/[^\/]*/,g=this;this.defaults={stripTrailingSlashes:!0,actions:{get:{method:"GET"},save:{method:"POST"},query:{method:"GET",isArray:!0},remove:{method:"DELETE"},"delete":{method:"DELETE"}}}; -this.$get=["$http","$log","$q",function(e,m,n){function r(a,b){this.template=a;this.defaults=z({},g.defaults,b);this.urlParams={}}function x(a,t,u,I){function p(a,e){var g={};return e=z({},t,e),v(e,function(e,h){B(e)&&(e=e());var m;if(e&&e.charAt&&"@"==e.charAt(0)){m=a;var n=e.substr(1);if(null==n||""===n||"hasOwnProperty"===n||!b.test("."+n))throw c("badmember",n);for(var n=n.split("."),r=0,t=n.length;r>>0;c=Number(c)||0;c=0>c?Math.ceil(c):Math.floor(c);for(0>c&&(c+=e);e>c;c++)if(c in a&&a[c]===b)return c;return-1}function g(a, -c,g,f){var h,k=[],m;for(m in g.path){if(g.path[m]!==f.path[m])break;k.push(g.path[m])}g={};f=[];for(var n in k)if(k[n]&&k[n].params&&(h=b(k[n].params),h.length))for(var w in h)0<=e(f,h[w])||(f.push(h[w]),g[h[w]]=a[h[w]]);return R({},g,c)}function r(a,b,c){if(!c){c=[];for(var e in a)c.push(e)}for(e=0;e "));if(v[b]=1,T(a))u.push(b,[function(){return g.get(a)}],h);else{var c=g.annotate(a);ca(c,function(a){a!==b&&n.hasOwnProperty(a)&&w(n[a],a)});u.push(b,a,c)}x.pop();v[b]=2}}function r(a){return M(a)&&a.then&&a.$$promises}if(!M(n))throw Error("'invocables' must be an object");var q=b(n||{}),u=[],x=[],v={};return ca(n,w),n=x=v=null,function(b,e,h){function n(){--G||(J||c(E,e.$$values),p.$$values=E,p.$$promises=p.$$promises||!0, -delete p.$$inheritedValues,v.resolve(E))}function w(a){p.$$failure=a;v.reject(a)}function x(c,e,f){function k(a){r.reject(a);w(a)}function m(){if(!X(p.$$failure))try{r.resolve(g.invoke(e,h,E)),r.promise.then(function(a){E[c]=a;n()},k)}catch(Gb){k(Gb)}}var r=a.defer(),t=0;ca(f,function(a){A.hasOwnProperty(a)&&!b.hasOwnProperty(a)&&(t++,A[a].then(function(b){E[a]=b;--t||m()},k))});t||m();A[c]=r.promise}if(r(b)&&h===k&&(h=e,e=b,b=null),b){if(!M(b))throw Error("'locals' must be an object");}else b=f; -if(e){if(!r(e))throw Error("'parent' must be a promise returned by $resolve.resolve()");}else e=m;var v=a.defer(),p=v.promise,A=p.$$promises={},E=R({},b),G=1+u.length/3,J=!1;if(X(e.$$failure))return w(e.$$failure),p;e.$$inheritedValues&&c(E,t(e.$$inheritedValues,q));R(A,e.$$promises);e.$$values?(J=c(E,t(e.$$values,q)),p.$$inheritedValues=t(e.$$values,q),n()):(e.$$inheritedValues&&(p.$$inheritedValues=t(e.$$inheritedValues,q)),e.then(n,w));for(var z=0,B=u.length;B>z;z+=3)b.hasOwnProperty(u[z])?n(): -x(u[z],u[z+1],u[z+2]);return p}};this.resolve=function(a,b,c,e){return this.study(a)(b,c,e)}}function z(a,b,c){this.fromConfig=function(a,b,c){return X(a.template)?this.fromString(a.template,b):X(a.templateUrl)?this.fromUrl(a.templateUrl,b):X(a.templateProvider)?this.fromProvider(a.templateProvider,b,c):null};this.fromString=function(a,b){return O(a)?a(b):a};this.fromUrl=function(c,e){return O(c)&&(c=c(e)),null==c?null:a.get(c,{cache:b,headers:{Accept:"text/html"}}).then(function(a){return a.data})}; -this.fromProvider=function(a,b,e){return c.invoke(a,null,e||{params:b})}}function A(a,b,c){function e(b,c,e,g){if(v.push(b),u[b])return u[b];if(!/^\w+([-.]+\w+)*(?:\[\])?$/.test(b))throw Error("Invalid parameter name '"+b+"' in pattern '"+a+"'");if(x[b])throw Error("Duplicate parameter name '"+b+"' in pattern '"+a+"'");return x[b]=new ha.Param(b,c,e,g),x[b]}function g(a,b,c,e){a=a.replace(/[\\\[\]\^$*+?.()|{}]/g,"\\$&");if(!b)return a;switch(c){case !1:c=["(",")"+(e?"?":"")];break;case !0:a=a.replace(/\/$/, -"");c=["(?:/(",")|/)?"];break;default:c=["("+c+"|",")?"]}return a+c[0]+b+c[1]}function f(c,e){var g,f,m,n,w;return g=c[2]||c[3],w=b.params[g],m=a.substring(t,c.index),f=e?c[4]:c[4]||("*"==c[1]?".*":null),f&&(n=ha.type(f)||h(ha.type("string"),{pattern:new RegExp(f,b.caseInsensitive?"i":k)})),{id:g,regexp:f,segment:m,type:n,cfg:w}}b=R({params:{}},M(b)?b:{});var m,n=/([:*])([\w\[\]]+)|\{([\w\[\]]+)(?:\:\s*((?:[^{}\\]+|\\.|\{(?:[^{}\\]+|\\.)*\})+))?\}/g,w=/([:]?)([\w\[\].-]+)|\{([\w\[\].-]+)(?:\:\s*((?:[^{}\\]+|\\.|\{(?:[^{}\\]+|\\.)*\})+))?\}/g, -r="^",t=0,q=this.segments=[],u=c?c.params:{},x=this.params=c?c.params.$$new():new ha.ParamSet,v=[];this.source=a;for(var p,A;(m=n.exec(a))&&(p=f(m,!1),!(0<=p.segment.indexOf("?")));)A=e(p.id,p.type,p.cfg,"path"),r+=g(p.segment,A.type.pattern.source,A.squash,A.isOptional),q.push(p.segment),t=n.lastIndex;c=a.substring(t);m=c.indexOf("?");if(0<=m){var E=this.sourceSearch=c.substring(m);if(c=c.substring(0,m),this.sourcePath=a.substring(0,t+m),0a;a++)if(c(n[a]))return;w&&c(w)}}function q(){return m=m||c.$on("$locationChangeSuccess",t)}var u,x=g.baseHref(),v=b.url();return r||q(),{sync:function(){t()},listen:function(){return q()},update:function(a){return a?void(v=b.url()):void(b.url()!==v&&(b.url(v),b.replace()))},push:function(a,c,e){a=a.format(c||{});null!==a&&c&&c["#"]&&(a+="#"+ -c["#"]);b.url(a);u=e&&e.$$avoidResync?b.url():k;e&&e.replace&&b.replace()},href:function(c,e,g){if(!c.validates(e))return null;var k=a.html5Mode();f.isObject(k)&&(k=k.enabled);k=k&&h.history;c=c.format(e);g=g||{};k||null===c||(c="#"+a.hashPrefix()+c);null!==c&&e&&e["#"]&&(c+="#"+e["#"]);e=c;var m=g.absolute;if(c="/"===x?e:k?x.slice(0,-1)+e:m?x.slice(1)+e:e,!g.absolute||!c)return c;g=!k&&c?"/":"";k=b.port();return k=80===k||443===k?"":":"+k,[b.protocol(),"://",b.host(),k,g,c].join("")}}}var m,n=[], -w=null,r=!1;this.rule=function(a){if(!O(a))throw Error("'rule' must be a function");return n.push(a),this};this.otherwise=function(a){if(T(a)){var b=a;a=function(){return b}}else if(!O(a))throw Error("'rule' must be a function");return w=a,this};this.when=function(a,f){var h,k=T(f);if(T(a)&&(a=b.compile(a)),!k&&!O(f)&&!ka(f))throw Error("invalid 'handler' in when()");var m={matcher:function(a,c){return k&&(h=b.compile(c),c=["$match",function(a){return h.format(a)}]),R(function(b,e){return g(b,c,a.exec(e.path(), -e.search()))},{prefix:T(a.prefix)?a.prefix:""})},regex:function(a,b){if(a.global||a.sticky)throw Error("when() RegExp must not be global or sticky");return k&&(h=b,b=["$match",function(a){return e(h,a)}]),R(function(c,e){return g(c,b,a.exec(e.path()))},{prefix:c(a)})}},n={matcher:b.isMatcher(a),regex:a instanceof RegExp},w;for(w in n)if(n[w])return this.rule(m[w](a,f));throw Error("invalid 'what' in when()");};this.deferIntercept=function(a){a===k&&(a=!0);r=a};this.$get=h;h.$inject=["$location","$rootScope", -"$injector","$browser","$sniffer"]}function u(a,c){function w(a,b){if(!a)return k;var c=T(a),e=c?a:a.name,g=e;if(0===g.indexOf(".")||0===g.indexOf("^")){if(!b)throw Error("No reference point given for path '"+e+"'");b=w(b);for(var g=e.split("."),f=0,h=g.length,m=b;h>f;f++)if(""!==g[f]||0!==f){if("^"!==g[f])break;if(!m.parent)throw Error("Path '"+e+"' not valid for state '"+b.name+"'");m=m.parent}else m=b;g=g.slice(f).join(".");e=m.name+(m.name&&g?".":"")+g}e=G[e];return!e||!c&&(c||e!==a&&e.self!== -a)?k:e}function t(a,b){J[a]||(J[a]=[]);J[a].push(b)}function u(a){for(a=J[a]||[];a.length;)x(a.shift())}function x(b){b=h(b,{self:b,resolve:b.resolve||{},toString:function(){return this.name}});var c=b.name;if(!T(c)||0<=c.indexOf("@"))throw Error("State must have a valid name");if(G.hasOwnProperty(c))throw Error("State '"+c+"' is already defined");var e=-1!==c.indexOf(".")?c.substring(0,c.lastIndexOf(".")):T(b.parent)?b.parent:M(b.parent)&&T(b.parent.name)?b.parent.name:"";if(e&&!G[e])return t(e, -b.self);for(var g in B)O(B[g])&&(b[g]=B[g](b,B.$delegates[g]));return G[c]=b,!b[z]&&b.url&&a.when(b.url,["$match","$stateParams",function(a,c){E.$current.navigable==b&&r(a,c)||E.transitionTo(b,a,{inherit:!0,location:!1})}]),u(c),b}function v(a,c,n,t,u,x,v,J,B){function ia(b,e,g,f){e=a.$broadcast("$stateNotFound",b,e,g);if(e.defaultPrevented)return v.update(),ua;if(!e.retry)return null;if(f.$retry)return v.update(),N;var h=E.transition=c.when(e.retry);return h.then(function(){return h!==E.transition? -I:(b.options.$retry=!0,E.transitionTo(b.to,b.toParams,b.options))},function(){return ua}),v.update(),h}function F(a,b,e,g,h,k){var w=e?b:m(a.params.$$keys(),b);h.resolve=u.resolve(a.resolve,{$stateParams:w},h.resolve,a);b=[h.resolve.then(function(a){h.globals=a})];return g&&b.push(g),c.all(b).then(function(){var b=[];return ca(a.views,function(c,e){var g=c.resolve&&c.resolve!==a.resolve?c.resolve:{};g.$template=[function(){return n.load(e,{view:c,locals:h.globals,params:w,notify:k.notify})||""}]; -b.push(u.resolve(g,h.globals,h.resolve,a).then(function(b){if(O(c.controllerProvider)||ka(c.controllerProvider)){var k=f.extend({},g,h.globals);b.$$controller=t.invoke(c.controllerProvider,null,k)}else b.$$controller=c.controller;b.$$state=a;b.$$controllerAs=c.controllerAs;h[e]=b}))}),c.all(b).then(function(){return h.globals})}).then(function(a){return h})}var I=c.reject(Error("transition superseded")),na=c.reject(Error("transition prevented")),ua=c.reject(Error("transition aborted")),N=c.reject(Error("transition failed")); -return A.locals={resolve:null,globals:{$stateParams:{}}},E={params:{},current:A.self,$current:A,transition:null},E.reload=function(a){return E.transitionTo(E.current,x,{reload:a||!0,inherit:!1,notify:!0})},E.go=function(a,b,c){return E.transitionTo(a,b,R({inherit:!0,relative:E.$current},c))},E.transitionTo=function(b,e,f){e=e||{};f=R({location:!0,inherit:!1,relative:null,notify:!0,reload:!1,$retry:!1},f||{});var k,n=E.$current,r=E.params,q=n.path,u=w(b,f.relative),G=e["#"];if(!X(u)){var J={to:b,toParams:e, -options:f},B=ia(J,n.self,r,f);if(B)return B;if(b=J.to,e=J.toParams,f=J.options,u=w(b,f.relative),!X(u)){if(!f.relative)throw Error("No such state '"+b+"'");throw Error("Could not resolve '"+b+"' from state '"+f.relative+"'");}}if(u[z])throw Error("Cannot transition to abstract state '"+b+"'");if(f.inherit&&(e=g(x,e||{},E.$current,u)),!u.params.$$validates(e))return N;e=u.params.$$values(e);b=u;var ua=b.path,K=0,u=ua[K],J=A.locals,S=[];if(f.reload){if(T(f.reload)||M(f.reload)){if(M(f.reload)&&!f.reload.name)throw Error("Invalid reload state object"); -B=!0===f.reload?q[0]:w(f.reload);if(f.reload&&!B)throw Error("No such reload state '"+(T(f.reload)?f.reload:f.reload.name)+"'");for(;u&&u===q[K]&&u!==B;)J=S[K]=u.locals,K++,u=ua[K]}}else for(;u&&u===q[K]&&u.ownParams.$$equals(e,r);)J=S[K]=u.locals,K++,u=ua[K];if(p(b,e,n,r,J,f))return G&&(e["#"]=G),E.params=e,ea(E.params,x),ea(m(b.params.$$keys(),x),b.locals.globals.$stateParams),f.location&&b.navigable&&b.navigable.url&&(v.push(b.navigable.url,e,{$$avoidResync:!0,replace:"replace"===f.location}), -v.update(!0)),E.transition=null,c.when(E.current);if(e=m(b.params.$$keys(),e||{}),G&&(e["#"]=G),f.notify&&a.$broadcast("$stateChangeStart",b.self,e,n.self,r,f).defaultPrevented)return a.$broadcast("$stateChangeCancel",b.self,e,n.self,r),null==E.transition&&v.update(),na;G=c.when(J);for(B=K;B=K;c--)g=q[c],g.self.onExit&&t.invoke(g.self.onExit,g.self,g.locals.globals), -g.locals=null;for(c=K;ch;h++)"*"===a[h]&&(f[h]="*");if("**"===a[0]&&(f=f.slice(e(f,a[1])),f.unshift("**")),"**"===a[a.length- -1]&&(f.splice(e(f,a[a.length-2])+1,Number.MAX_VALUE),f.push("**")),a.length!=f.length||f.join("")!==a.join(""))return!1;a=E.$current.name}g=w(a,g.relative);return X(g)?!!X(E.$current.includes[g.name])&&(!c||r(g.params.$$values(c),x,b(c))):k},E.href=function(a,b,c){c=R({lossy:!0,inherit:!0,absolute:!1,relative:E.$current},c||{});a=w(a,c.relative);if(!X(a))return null;c.inherit&&(b=g(x,b||{},E.$current,a));var e=a&&c.lossy?a.navigable:a;return e&&e.url!==k&&null!==e.url?v.href(e.url,m(a.params.$$keys().concat("#"), -b||{}),{absolute:c.absolute}):null},E.get=function(a,c){if(0===arguments.length)return q(b(G),function(a){return G[a].self});var e=w(a,c||E.$current);return e&&e.self?e.self:null},E}function p(a,b,c,e,g,f){function h(a,b,c){var e=a.params.$$keys().filter(function(b){return"search"!=a.params[b].location}),e=n.apply({},[a.params].concat(e));return(new ha.ParamSet(e)).$$equals(b,c)}return!(f.reload||a!==c||!(g===c.locals||!1===a.self.reloadOnSearch&&h(c,e,b)))||void 0}var A,E,G={},J={},z="abstract", -B={parent:function(a){return X(a.parent)&&a.parent?w(a.parent):(a=/^(.+)\.[^.]+$/.exec(a.name))?w(a[1]):A},data:function(a){return a.parent&&a.parent.data&&(a.data=a.self.data=h(a.parent.data,a.data)),a.data},url:function(a){var b=a.url,e={params:a.params||{}};if(T(b))return"^"==b.charAt(0)?c.compile(b.substring(1),e):(a.parent.navigable||A).url.concat(b,e);if(!b||c.isMatcher(b))return b;throw Error("Invalid url '"+b+"' in state '"+a+"'");},navigable:function(a){return a.url?a:a.parent?a.parent.navigable: -null},ownParams:function(a){var b=a.url&&a.url.params||new ha.ParamSet;return ca(a.params||{},function(a,c){b[c]||(b[c]=new ha.Param(c,null,a,"config"))}),b},params:function(a){var b=n(a.ownParams,a.ownParams.$$keys());return a.parent&&a.parent.params?R(a.parent.params.$$new(),b):new ha.ParamSet},views:function(a){var b={};return ca(X(a.views)?a.views:{"":a},function(c,e){0>e.indexOf("@")&&(e+="@"+a.parent.name);b[e]=c}),b},path:function(a){return a.parent?a.parent.path.concat(a):[]},includes:function(a){var b= -a.parent?R({},a.parent.includes):{};return b[a.name]=!0,b},$delegates:{}};A=x({name:"",url:"^",views:null,"abstract":!0});A.navigable=null;this.decorator=function(a,b){return T(a)&&!X(b)?B[a]:O(b)&&T(a)?(B[a]&&!B.$delegates[a]&&(B.$delegates[a]=B[a]),B[a]=b,this):this};this.state=function(a,b){return M(a)?b=a:b.name=a,x(b),this};this.$get=v;v.$inject="$rootScope $q $view $injector $resolve $stateParams $urlRouter $location $urlMatcherFactory".split(" ")}function I(){function a(a,b){return{load:function(a, -c){var e;return c=R({template:null,controller:null,view:null,locals:null,notify:!0,async:!0,params:{}},c),c.view&&(e=b.fromConfig(c.view,c.params,c.locals)),e}}}this.$get=a;a.$inject=["$rootScope","$templateFactory"]}function J(a,b,c,e){function g(a,b){function c(a){return 1===pa&&4<=qa?!!m.enabled(a):1===pa&&2<=qa?!!m.enabled():!!k}var e={enter:function(a,b,c){b.after(a);c()},leave:function(a,b){a.remove();b()}};if(a.noanimation)return e;if(m)return{enter:function(a,b,g){c(a)?2= -n--&&c.cancel(m)}}}}function S(a,b){return{relative:K(a)||b.$current,inherit:!0}}function W(a,b){return{restrict:"A",require:["?^uiSrefActive","?^uiSrefActiveEq"],link:function(c,e,g,h){var k=N(g.uiSref,a.current.name),m={state:k.state,href:null,params:null},n=P(e),w=h[1]||h[0];m.options=R(S(e,a),g.uiSrefOpts?c.$eval(g.uiSrefOpts):{});var r=function(b){b&&(m.params=f.copy(b));m.href=a.href(k.state,m.params,m.options);w&&w.$$addStateInfo(k.state,m.params);null!==m.href&&g.$set(n.attr,m.href)};k.paramExpr&& -(c.$watch(k.paramExpr,function(a){a!==m.params&&r(a)},!0),m.params=f.copy(c.$eval(k.paramExpr)));r();n.clickable&&e.bind("click",V(e,a,b,n,function(){return m}))}}}function ja(a,b){return{restrict:"A",require:["?^uiSrefActive","?^uiSrefActiveEq"],link:function(c,e,g,f){function h(b){n.state=b[0];n.params=b[1];n.options=b[2];n.href=a.href(n.state,n.params,n.options);m&&m.$$addStateInfo(n.state,n.params);n.href&&g.$set(k.attr,n.href)}var k=P(e),m=f[1]||f[0];f="["+[g.uiState,g.uiStateParams||null,g.uiStateOpts|| -null].map(function(a){return a||"null"}).join(", ")+"]";var n={state:null,params:null,options:null,href:null};c.$watch(f,h,!0);h(c.$eval(f));k.clickable&&e.bind("click",V(e,a,b,k,function(){return n}))}}}function ya(a,b,c){return{restrict:"A",controller:["$scope","$element","$attrs","$timeout",function(b,e,g,f){function h(c,g,f){var h=a.get(c,K(e)),k,m=g;if(!T(c))throw Error("state should be a string");k=M(m)?c+Y(m):(m=b.$eval(m),M(m)?c+Y(m):c);r.push({state:h||{name:c},params:g,hash:k});t[k]=f}function k(){for(var b= -0;bg;g++){h=k[g];r=this.params[h];t=e[g+1];for(f=0;f -g;g++){h=k[g];w[h]=this.params[h].value(b[h]);r=this.params[h];t=b[h];for(f=0;ff;f++){var r=k>f,t=e[f],u=g[t],x=u.value(a[t]),v=u.isOptional&&u.type.equals(u.value(),x),p=!!v&&u.squash,x=u.type.encode(x);r?(r=c[f+1],t=f+1===k,!1===p?(null!=x&&(n+=ka(x)?q(x,b).join("-"):encodeURIComponent(x)),n+=r):!0===p?(p=n.match(/\/$/)?/\/?(.*)/:/(.*)/,n+=r.match(p)[1]):T(p)&&(n+=p+r),t&&!0===u.squash&&"/"===n.slice(-1)&&(n=n.slice(0,-1))):null== -x||v&&!1!==p||(ka(x)||(x=[x]),0===x.length)||(x=q(x,encodeURIComponent).join("&"+t+"="),n+=(h?"&":"?")+(t+"="+x),h=!0)}return n};B.prototype.is=function(a,b){return!0};B.prototype.encode=function(a,b){return a};B.prototype.decode=function(a,b){return a};B.prototype.equals=function(a,b){return a==b};B.prototype.$subPattern=function(){var a=this.pattern.toString();return a.substr(1,a.length-2)};B.prototype.pattern=/.*/;B.prototype.toString=function(){return"{Type:"+this.name+"}"};B.prototype.$normalize= -function(a){return this.is(a)?a:this.decode(a)};B.prototype.$asArray=function(a,b){if(!a)return this;if("auto"===a&&!b)throw Error("'auto' array mode is for query parameters only");return new function(a,b){function c(a,b){return function(){return a[b].apply(a,arguments)}}function e(a){return ka(a)?a:X(a)?[a]:[]}function g(a){return!a}function f(a,c){return function(f){if(ka(f)&&0===f.length)return f;f=e(f);f=q(f,a);if(!0===c)f=0===x(f,g).length;else a:switch(f.length){case 0:f=k;break a;case 1:f= -"auto"===b?f[0]:f}return f}}this.encode=f(c(a,"encode"));this.decode=f(c(a,"decode"));this.is=f(c(a,"is"),!0);this.equals=function(a){return function(b,c){var g=e(b),f=e(c);if(g.length!==f.length)return!1;for(var h=0;ht.getCurrentIndex()?"next":"prev");b&&b!==t.currentSlide&&!a.$currentTransition&&c(b,g,e)};a.$on("$destroy",function(){A=!0});t.getCurrentIndex=function(){return t.currentSlide&&angular.isDefined(t.currentSlide.index)?+t.currentSlide.index:z};a.indexOfSlide=function(a){return angular.isDefined(a.index)?+a.index:x.indexOf(a)}; -a.next=function(){var c=(t.getCurrentIndex()+1)%x.length;return 0===c&&a.noWrap()?void a.pause():t.select(b(c),"next")};a.prev=function(){var c=0>t.getCurrentIndex()-1?x.length-1:t.getCurrentIndex()-1;return a.noWrap()&&c===x.length-1?void a.pause():t.select(b(c),"prev")};a.isActive=function(a){return t.currentSlide===a};a.$watch("interval",e);a.$watchCollection("slides",function(b){b.length||(a.$currentTransition=null)});a.$on("$destroy",g);a.play=function(){n||(n=!0,e())};a.pause=function(){a.noPause|| -(n=!1,g())};t.addSlide=function(b,c){b.$element=c;x.push(b);1===x.length||b.active?(t.select(x[x.length-1]),1===x.length&&a.play()):b.active=!1};t.removeSlide=function(a){angular.isDefined(a.index)&&x.sort(function(a,b){return+a.index>+b.index});var b=x.indexOf(a);x.splice(b,1);0=x.length?t.select(x[b-1]):t.select(x[b]):z>b&&z--;0===x.length&&(t.currentSlide=null)};a.$watch("noTransition",function(a){f.data("uib-noTransition",a)})}]).directive("uibCarousel",[function(){return{transclude:!0, -replace:!0,controller:"UibCarouselController",controllerAs:"carousel",require:"carousel",templateUrl:function(a,f){return f.templateUrl||"template/carousel/carousel.html"},scope:{interval:"=",noTransition:"=",noPause:"=",noWrap:"&"}}}]).directive("uibSlide",function(){return{require:"^uibCarousel",restrict:"EA",transclude:!0,replace:!0,templateUrl:function(a,f){return f.templateUrl||"template/carousel/slide.html"},scope:{active:"=?",actual:"=?",index:"=?"},link:function(a,f,k,h){h.addSlide(a,f);a.$on("$destroy", -function(){h.removeSlide(a)});a.$watch("active",function(c){c&&h.select(a)})}}}).animation(".item",["$injector","$animate",function(a,f){function k(a,b,e){a.removeClass(b);e&&e()}var h=null;return a.has("$animateCss")&&(h=a.get("$animateCss")),{beforeAddClass:function(a,b,e){if("active"==b&&a.parent()&&a.parent().parent()&&!a.parent().parent().data("uib-noTransition")){var c=!1;b=a.data("uib-slideDirection");var r="next"==b?"left":"right",m=k.bind(this,a,r+" "+b,e);return a.addClass(b),h?h(a,{addClass:r}).start().done(m): -f.addClass(a,r).then(function(){c||m();e()}),function(){c=!0}}e()},beforeRemoveClass:function(a,b,e){if("active"===b&&a.parent()&&a.parent().parent()&&!a.parent().parent().data("uib-noTransition")){var c=!1;b="next"==a.data("uib-slideDirection")?"left":"right";var r=k.bind(this,a,b,e);return h?h(a,{addClass:b}).start().done(r):f.addClass(a,b).then(function(){c||r();e()}),function(){c=!0}}e()}}}]); -angular.module("ui.bootstrap.carousel").value("$carouselSuppressWarning",!1).controller("CarouselController",["$scope","$element","$controller","$log","$carouselSuppressWarning",function(a,f,k,h,c){c||h.warn("CarouselController is now deprecated. Use UibCarouselController instead.");angular.extend(this,k("UibCarouselController",{$scope:a,$element:f}))}]).directive("carousel",["$log","$carouselSuppressWarning",function(a,f){return{transclude:!0,replace:!0,controller:"CarouselController",controllerAs:"carousel", -require:"carousel",templateUrl:function(a,f){return f.templateUrl||"template/carousel/carousel.html"},scope:{interval:"=",noTransition:"=",noPause:"=",noWrap:"&"},link:function(){f||a.warn("carousel is now deprecated. Use uib-carousel instead.")}}}]).directive("slide",["$log","$carouselSuppressWarning",function(a,f){return{require:"^carousel",transclude:!0,replace:!0,templateUrl:function(a,f){return f.templateUrl||"template/carousel/slide.html"},scope:{active:"=?",actual:"=?",index:"=?"},link:function(k, -h,c,b){f||a.warn("slide is now deprecated. Use uib-slide instead.");b.addSlide(k,h);k.$on("$destroy",function(){b.removeSlide(k)});k.$watch("active",function(a){a&&b.select(k)})}}}]); -angular.module("ui.bootstrap.dateparser",[]).service("uibDateParser",["$log","$locale","orderByFilter",function(a,f,k){function h(a){var c=[],e=a.split("");return angular.forEach(b,function(b,g){var f=a.indexOf(g);if(-1g)&&(1===b&&28g)&&(angular.isDate(m)&&!isNaN(m.getTime())?(x=new Date(m),x.setFullYear(r.year,r.month,r.date,r.hours,r.minutes,r.seconds,r.milliseconds||0)):x=new Date(r.year,r.month,r.date,r.hours,r.minutes,r.seconds,r.milliseconds||0)),x}}}]); -angular.module("ui.bootstrap.dateparser").value("$dateParserSuppressWarning",!1).service("dateParser",["$log","$dateParserSuppressWarning","uibDateParser",function(a,f,k){f||a.warn("dateParser is now deprecated. Use uibDateParser instead.");angular.extend(this,k)}]); -angular.module("ui.bootstrap.position",[]).factory("$uibPosition",["$document","$window",function(a,f){function k(a,c){return a.currentStyle?a.currentStyle[c]:f.getComputedStyle?f.getComputedStyle(a)[c]:a.style[c]}return{position:function(f){var c=this.offset(f),b={top:0,left:0},e;e=a[0];for(var g=f[0].offsetParent||e;g&&g!==e&&"static"===(k(g,"position")||"static");)g=g.offsetParent;e=g||e;e!=a[0]&&(b=this.offset(angular.element(e)),b.top+=e.clientTop-e.scrollTop,b.left+=e.clientLeft-e.scrollLeft); -e=f[0].getBoundingClientRect();return{width:e.width||f.prop("offsetWidth"),height:e.height||f.prop("offsetHeight"),top:c.top-b.top,left:c.left-b.left}},offset:function(h){var c=h[0].getBoundingClientRect();return{width:c.width||h.prop("offsetWidth"),height:c.height||h.prop("offsetHeight"),top:c.top+(f.pageYOffset||a[0].documentElement.scrollTop),left:c.left+(f.pageXOffset||a[0].documentElement.scrollLeft)}},positionElements:function(a,c,b,e){var g,f,h,k=b.split("-");b=k[0];k=k[1]||"center";g=e?this.offset(a): -this.position(a);f=c.prop("offsetWidth");h=c.prop("offsetHeight");a={center:function(){return g.left+g.width/2-f/2},left:function(){return g.left},right:function(){return g.left+g.width}};c={center:function(){return g.top+g.height/2-h/2},top:function(){return g.top},bottom:function(){return g.top+g.height}};switch(b){case "right":b={top:c[k](),left:a[b]()};break;case "left":b={top:c[k](),left:g.left-f};break;case "bottom":b={top:c[b](),left:a[k]()};break;default:b={top:g.top-h,left:a[k]()}}return b}}}]); -angular.module("ui.bootstrap.position").value("$positionSuppressWarning",!1).service("$position",["$log","$positionSuppressWarning","$uibPosition",function(a,f,k){f||a.warn("$position is now deprecated. Use $uibPosition instead.");angular.extend(this,k)}]); -angular.module("ui.bootstrap.datepicker",["ui.bootstrap.dateparser","ui.bootstrap.position"]).value("$datepickerSuppressError",!1).constant("uibDatepickerConfig",{formatDay:"dd",formatMonth:"MMMM",formatYear:"yyyy",formatDayHeader:"EEE",formatDayTitle:"MMMM yyyy",formatMonthTitle:"yyyy",datepickerMode:"day",minMode:"day",maxMode:"year",showWeeks:!0,startingDay:0,yearRange:20,minDate:null,maxDate:null,shortcutPropagation:!1}).controller("UibDatepickerController",["$scope","$attrs","$parse","$interpolate", -"$log","dateFilter","uibDatepickerConfig","$datepickerSuppressError",function(a,f,k,h,c,b,e,g){var r=this,m={$setViewValue:angular.noop};this.modes=["day","month","year"];angular.forEach("formatDay formatMonth formatYear formatDayHeader formatDayTitle formatMonthTitle showWeeks startingDay yearRange shortcutPropagation".split(" "),function(b,c){r[b]=angular.isDefined(f[b])?6>c?h(f[b])(a.$parent):a.$parent.$eval(f[b]):e[b]});angular.forEach(["minDate","maxDate"],function(b){f[b]?a.$parent.$watch(k(f[b]), -function(a){r[b]=a?new Date(a):null;r.refreshView()}):r[b]=e[b]?new Date(e[b]):null});angular.forEach(["minMode","maxMode"],function(b){f[b]?a.$parent.$watch(k(f[b]),function(c){r[b]=angular.isDefined(c)?c:f[b];a[b]=r[b];("minMode"==b&&r.modes.indexOf(a.datepickerMode)r.modes.indexOf(r[b]))&&(a.datepickerMode=r[b])}):(r[b]=e[b]||null,a[b]=r[b])});a.datepickerMode=a.datepickerMode||e.datepickerMode;a.uniqueId="datepicker-"+a.$id+ -"-"+Math.floor(1E4*Math.random());angular.isDefined(f.initDate)?(this.activeDate=a.$parent.$eval(f.initDate)||new Date,a.$parent.$watch(f.initDate,function(a){a&&(m.$isEmpty(m.$modelValue)||m.$invalid)&&(r.activeDate=a,r.refreshView())})):this.activeDate=new Date;a.isActive=function(b){return 0===r.compare(b.date,r.activeDate)&&(a.activeDateId=b.uid,!0)};this.init=function(a){m=a;m.$render=function(){r.render()}};this.render=function(){if(m.$viewValue){var a=new Date(m.$viewValue);isNaN(a)?g||c.error('Datepicker directive: "ng-model" value must be a Date object, a number of milliseconds since 01.01.1970 or a string representing an RFC2822 or ISO 8601 date.'): -this.activeDate=a}this.refreshView()};this.refreshView=function(){if(this.element){this._refreshView();var a=m.$viewValue?new Date(m.$viewValue):null;m.$setValidity("dateDisabled",!a||this.element&&!this.isDisabled(a))}};this.createDateObject=function(a,c){var e=m.$viewValue?new Date(m.$viewValue):null;return{date:a,label:b(a,c),selected:e&&0===this.compare(a,e),disabled:this.isDisabled(a),current:0===this.compare(a,new Date),customClass:this.customClass(a)}};this.isDisabled=function(b){return this.minDate&& -0>this.compare(b,this.minDate)||this.maxDate&&0b;b++)f[b]=angular.extend(this.createDateObject(f[b],this.formatDay),{secondary:f[b].getMonth()!==g,uid:a.uniqueId+"-"+b});a.labels=Array(7);for(g=0;7>g;g++)a.labels[g]={abbr:k(f[g].date,this.formatDayHeader),full:k(f[g].date,"EEEE")}; -if(a.title=k(this.activeDate,this.formatDayTitle),a.rows=this.split(f,7),a.showWeeks)for(a.weekNumbers=[],g=(11-this.startingDay)%7,f=a.rows.length,b=0;be;e++)f=new Date(this.activeDate),f.setFullYear(b,e,1),c[e]=angular.extend(this.createDateObject(f,this.formatMonth),{uid:a.uniqueId+"-"+e});a.title=k(this.activeDate,this.formatMonthTitle);a.rows=this.split(c,3)};this.compare=function(a,c){return new Date(a.getFullYear(),a.getMonth())-new Date(c.getFullYear(),c.getMonth())};this.handleKeyDown=function(a,c){var b=this.activeDate.getMonth();if("left"===a)--b;else if("up"===a)b-= -3;else if("right"===a)b+=1;else if("down"===a)b+=3;else if("pageup"===a||"pagedown"===a){var e=this.activeDate.getFullYear()+("pageup"===a?-1:1);this.activeDate.setFullYear(e)}else"home"===a?b=0:"end"===a&&(b=11);this.activeDate.setMonth(b)}}]).controller("UibYearpickerController",["$scope","$element","dateFilter",function(a,f,k){var h;this.element=f;this.yearpickerInit=function(){h=this.yearRange;this.step={years:h}};this._refreshView=function(){for(var c,b=Array(h),e=0,g=parseInt((this.activeDate.getFullYear()- -1)/h,10)*h+1;e
    "), -E.attr({"ng-model":"date","ng-change":"dateSelection(date)","template-url":I}),G=angular.element(E.children()[0]),G.attr("template-url",J),V&&"month"===k.type&&(G.attr("datepicker-mode",'"month"'),G.attr("min-mode","month")),k.datepickerOptions)(g=a.$parent.$eval(k.datepickerOptions))&&g.initDate&&(a.initDate=g.initDate,G.attr("init-date","initDate"),delete g.initDate),angular.forEach(g,function(a,b){G.attr(x(b),a)});angular.forEach("minMode maxMode minDate maxDate datepickerMode initDate shortcutPropagation".split(" "), -function(b){if(k[b]){var e=c(k[b]);if(a.$parent.$watch(e,function(c){a.watchData[b]=c;"minDate"!==b&&"maxDate"!==b||(P[b]=new Date(c))}),G.attr(x(b),"watchData."+b),"datepickerMode"===b){var g=e.assign;a.$watch("watchData."+b,function(b,c){angular.isFunction(g)&&b!==c&&g(a.$parent,b)})}}});k.dateDisabled&&G.attr("date-disabled","dateDisabled({ date: date, mode: mode })");k.showWeeks&&G.attr("show-weeks",k.showWeeks);k.customClass&&G.attr("custom-class","customClass({ date: date, mode: mode })");V? -N.$formatters.push(function(b){return a.date=b,b}):(N.$$parserName="date",N.$validators.date=v,N.$parsers.unshift(q),N.$formatters.push(function(b){return a.date=b,N.$isEmpty(b)?b:r(b,B)}));N.$viewChangeListeners.push(function(){a.date=m.parse(N.$viewValue,B,a.date)});f.bind("keydown",A);K=h(E)(a);E.remove();p?b.find("body").append(K):f.after(K);a.$on("$destroy",function(){!0===a.isOpen&&(e.$$phase||a.$apply(function(){a.isOpen=!1}));K.remove();f.unbind("keydown",A);b.unbind("click",z)})};a.getText= -function(b){return a[b+"Text"]||n[b+"Text"]};a.isDisabled=function(b){return"today"===b&&(b=new Date),a.watchData.minDate&&0>a.compare(b,P.minDate)||a.watchData.maxDate&&0c?h(f[b])(a.$parent):a.$parent.$eval(f[b]):e[b]});angular.forEach(["minDate","maxDate"],function(b){f[b]?a.$parent.$watch(k(f[b]),function(a){m[b]=a?new Date(a):null;m.refreshView()}):m[b]=e[b]?new Date(e[b]):null});angular.forEach(["minMode","maxMode"],function(b){f[b]?a.$parent.$watch(k(f[b]),function(c){m[b]=angular.isDefined(c)?c:f[b];a[b]=m[b];("minMode"==b&&m.modes.indexOf(a.datepickerMode) -m.modes.indexOf(m[b]))&&(a.datepickerMode=m[b])}):(m[b]=e[b]||null,a[b]=m[b])});a.datepickerMode=a.datepickerMode||e.datepickerMode;a.uniqueId="datepicker-"+a.$id+"-"+Math.floor(1E4*Math.random());angular.isDefined(f.initDate)?(this.activeDate=a.$parent.$eval(f.initDate)||new Date,a.$parent.$watch(f.initDate,function(a){a&&(n.$isEmpty(n.$modelValue)||n.$invalid)&&(m.activeDate=a,m.refreshView())})):this.activeDate=new Date;a.isActive=function(b){return 0===m.compare(b.date,m.activeDate)&&(a.activeDateId= -b.uid,!0)};this.init=function(a){n=a;n.$render=function(){m.render()}};this.render=function(){if(n.$viewValue){var a=new Date(n.$viewValue);isNaN(a)?g||c.error('Datepicker directive: "ng-model" value must be a Date object, a number of milliseconds since 01.01.1970 or a string representing an RFC2822 or ISO 8601 date.'):this.activeDate=a}this.refreshView()};this.refreshView=function(){if(this.element){this._refreshView();var a=n.$viewValue?new Date(n.$viewValue):null;n.$setValidity("dateDisabled", -!a||this.element&&!this.isDisabled(a))}};this.createDateObject=function(a,c){var e=n.$viewValue?new Date(n.$viewValue):null;return{date:a,label:b(a,c),selected:e&&0===this.compare(a,e),disabled:this.isDisabled(a),current:0===this.compare(a,new Date),customClass:this.customClass(a)}};this.isDisabled=function(b){return this.minDate&&0>this.compare(b,this.minDate)||this.maxDate&&0'), -q.dropdownMenu.replaceWith(k),q.dropdownMenu=k),b.close(v),q.selectedOption=null);angular.isFunction(A)&&A(a,c)});a.$on("$locationChangeSuccess",function(){"disabled"!==v.getAutoClose()&&(v.isOpen=!1)});c=a.$on("$destroy",function(){v.$destroy()});v.$on("$destroy",c)}]).directive("uibDropdown",function(){return{controller:"UibDropdownController",link:function(a,f,k,h){h.init()}}}).directive("uibDropdownMenu",function(){return{restrict:"AC",require:"?^uibDropdown",link:function(a,f,k,h){h&&!angular.isDefined(k.dropdownNested)&& -(f.addClass("dropdown-menu"),(a=k.templateUrl)&&(h.dropdownMenuTemplateUrl=a),h.dropdownMenu||(h.dropdownMenu=f))}}}).directive("uibKeyboardNav",function(){return{restrict:"A",require:"?^uibDropdown",link:function(a,f,k,h){f.bind("keydown",function(a){if(-1!==[38,40].indexOf(a.which)){a.preventDefault();a.stopPropagation();var b=h.dropdownMenu.find("a");switch(a.which){case 40:angular.isNumber(h.selectedOption)?h.selectedOption=h.selectedOption===b.length-1?h.selectedOption:h.selectedOption+1:h.selectedOption= -0;break;case 38:angular.isNumber(h.selectedOption)?h.selectedOption=0===h.selectedOption?0:h.selectedOption-1:h.selectedOption=b.length-1}b[h.selectedOption].focus()}})}}}).directive("uibDropdownToggle",function(){return{require:"?^uibDropdown",link:function(a,f,k,h){if(h){f.addClass("dropdown-toggle");h.toggleElement=f;var c=function(b){b.preventDefault();f.hasClass("disabled")||k.disabled||a.$apply(function(){h.toggle()})};f.bind("click",c);f.attr({"aria-haspopup":!0,"aria-expanded":!1});a.$watch(h.isOpen, -function(a){f.attr("aria-expanded",!!a)});a.$on("$destroy",function(){f.unbind("click",c)})}}}}); -angular.module("ui.bootstrap.dropdown").value("$dropdownSuppressWarning",!1).service("dropdownService",["$log","$dropdownSuppressWarning","uibDropdownService",function(a,f,k){f||a.warn("dropdownService is now deprecated. Use uibDropdownService instead.");angular.extend(this,k)}]).controller("DropdownController",["$scope","$element","$attrs","$parse","uibDropdownConfig","uibDropdownService","$animate","$uibPosition","$document","$compile","$templateRequest","$log","$dropdownSuppressWarning",function(a, -f,k,h,c,b,e,g,r,m,n,t,x){x||t.warn("DropdownController is now deprecated. Use UibDropdownController instead.");var q,v,z=this,A=a.$new(),B=c.openClass,F=angular.noop,p=k.onToggle?h(k.onToggle):angular.noop,u=!1,I=!1;f.addClass("dropdown");this.init=function(){k.isOpen&&(v=h(k.isOpen),F=v.assign,a.$watch(v,function(a){A.isOpen=!!a}));u=angular.isDefined(k.dropdownAppendToBody);I=angular.isDefined(k.uibKeyboardNav);u&&z.dropdownMenu&&(r.find("body").append(z.dropdownMenu),f.on("$destroy",function(){z.dropdownMenu.remove()}))}; -this.toggle=function(a){return A.isOpen=arguments.length?!!a:!A.isOpen};this.isOpen=function(){return A.isOpen};A.getToggleElement=function(){return z.toggleElement};A.getAutoClose=function(){return k.autoClose||"always"};A.getElement=function(){return f};A.isKeynavEnabled=function(){return I};A.focusDropdownEntry=function(a){var b=z.dropdownMenu?angular.element(z.dropdownMenu).find("a"):angular.element(f).find("ul").eq(0).find("a");switch(a){case 40:angular.isNumber(z.selectedOption)?z.selectedOption= -z.selectedOption===b.length-1?z.selectedOption:z.selectedOption+1:z.selectedOption=0;break;case 38:angular.isNumber(z.selectedOption)?z.selectedOption=0===z.selectedOption?0:z.selectedOption-1:z.selectedOption=b.length-1}b[z.selectedOption].focus()};A.getDropdownElement=function(){return z.dropdownMenu};A.focusToggleElement=function(){z.toggleElement&&z.toggleElement[0].focus()};A.$watch("isOpen",function(c,k){if(u&&z.dropdownMenu){var h=g.positionElements(f,z.dropdownMenu,"bottom-left",!0),r={top:h.top+ -"px",display:c?"block":"none"};z.dropdownMenu.hasClass("dropdown-menu-right")?(r.left="auto",r.right=window.innerWidth-(h.left+f.prop("offsetWidth"))+"px"):(r.left=h.left+"px",r.right="auto");z.dropdownMenu.css(r)}(e[c?"addClass":"removeClass"](f,B).then(function(){angular.isDefined(c)&&c!==k&&p(a,{open:!!c})}),c)?(z.dropdownMenuTemplateUrl&&n(z.dropdownMenuTemplateUrl).then(function(a){q=A.$new();m(a.trim())(q,function(a){z.dropdownMenu.replaceWith(a);z.dropdownMenu=a})}),A.focusToggleElement(), -b.open(A)):(z.dropdownMenuTemplateUrl&&(q&&q.$destroy(),h=angular.element(''),z.dropdownMenu.replaceWith(h),z.dropdownMenu=h),b.close(A),z.selectedOption=null);angular.isFunction(F)&&F(a,c)});a.$on("$locationChangeSuccess",function(){"disabled"!==A.getAutoClose()&&(A.isOpen=!1)});c=a.$on("$destroy",function(){A.$destroy()});A.$on("$destroy",c)}]).directive("dropdown",["$log","$dropdownSuppressWarning",function(a,f){return{controller:"DropdownController",link:function(k, -h,c,b){f||a.warn("dropdown is now deprecated. Use uib-dropdown instead.");b.init()}}}]).directive("dropdownMenu",["$log","$dropdownSuppressWarning",function(a,f){return{restrict:"AC",require:"?^dropdown",link:function(k,h,c,b){b&&!angular.isDefined(c.dropdownNested)&&(f||a.warn("dropdown-menu is now deprecated. Use uib-dropdown-menu instead."),h.addClass("dropdown-menu"),(k=c.templateUrl)&&(b.dropdownMenuTemplateUrl=k),b.dropdownMenu||(b.dropdownMenu=h))}}}]).directive("keyboardNav",["$log","$dropdownSuppressWarning", -function(a,f){return{restrict:"A",require:"?^dropdown",link:function(k,h,c,b){f||a.warn("keyboard-nav is now deprecated. Use uib-keyboard-nav instead.");h.bind("keydown",function(a){if(-1!==[38,40].indexOf(a.which)){a.preventDefault();a.stopPropagation();var c=b.dropdownMenu.find("a");switch(a.which){case 40:angular.isNumber(b.selectedOption)?b.selectedOption=b.selectedOption===c.length-1?b.selectedOption:b.selectedOption+1:b.selectedOption=0;break;case 38:angular.isNumber(b.selectedOption)?b.selectedOption= -0===b.selectedOption?0:b.selectedOption-1:b.selectedOption=c.length-1}c[b.selectedOption].focus()}})}}}]).directive("dropdownToggle",["$log","$dropdownSuppressWarning",function(a,f){return{require:"?^dropdown",link:function(k,h,c,b){if(f||a.warn("dropdown-toggle is now deprecated. Use uib-dropdown-toggle instead."),b){h.addClass("dropdown-toggle");b.toggleElement=h;var e=function(a){a.preventDefault();h.hasClass("disabled")||c.disabled||k.$apply(function(){b.toggle()})};h.bind("click",e);h.attr({"aria-haspopup":!0, -"aria-expanded":!1});k.$watch(b.isOpen,function(a){h.attr("aria-expanded",!!a)});k.$on("$destroy",function(){h.unbind("click",e)})}}}}]); -angular.module("ui.bootstrap.stackedMap",[]).factory("$$stackedMap",function(){return{createNew:function(){var a=[];return{add:function(f,k){a.push({key:f,value:k})},get:function(f){for(var k=0;k'),n.attr("backdrop-class",b.backdropClass),b.animation&&n.attr("modal-animation","true"),z=h(n)(A),f.append(z));n=angular.element('
    ');n.attr({"template-url":b.windowTemplateUrl,"window-class":b.windowClass,"window-top-class":b.windowTopClass, -size:b.size,index:p.length()-1,animate:"animate"}).html(b.content);b.animation&&n.attr("modal-animation","true");n=h(n)(b.scope);p.top().value.modalDomEl=n;p.top().value.modalOpener=e;f.append(n);f.addClass(g);I.clearFocusListCache()},I.close=function(a,b){var c=p.get(a);return c&&!c.value.modalScope.$broadcast("modal.closing",b,!0).defaultPrevented?(c.value.modalScope.$$uibDestructionScheduled=!0,c.value.deferred.resolve(b),n(a,c.value.modalOpener),!0):!c},I.dismiss=function(a,b){var c=p.get(a); -return c&&!c.value.modalScope.$broadcast("modal.closing",b,!1).defaultPrevented?(c.value.modalScope.$$uibDestructionScheduled=!0,c.value.deferred.reject(b),n(a,c.value.modalOpener),!0):!c},I.dismissAll=function(a){for(var b=this.getTop();b&&this.dismiss(b.key,a);)b=this.getTop()},I.getTop=function(){return p.top()},I.modalRendered=function(a){(a=p.get(a))&&a.value.renderDeferred.resolve()},I.focusFirstFocusableElement=function(){return 0e?a.selectPage(e):c.$render()})};this.calculateTotalPages=function(){return Math.max((1>this.itemsPerPage?1:Math.ceil(a.totalItems/this.itemsPerPage))||0,1)};this.render=function(){a.page=parseInt(c.$viewValue,10)||1};a.selectPage=function(b,g){g&&g.preventDefault();!(a.ngDisabled&&g||a.page===b)&&0b&&(f=b,e=f-g+1)):(e=(Math.ceil(a/g)-1)*g+1,f=Math.min(e+g-1,b)));for(var A=e;A<=f;A++)c.push({number:A,text:A,active:A===a});h&&!r&&(1b?a.selectPage(b):e.$render()})};this.calculateTotalPages=function(){return Math.max((1>this.itemsPerPage?1:Math.ceil(a.totalItems/this.itemsPerPage))||0,1)};this.render=function(){a.page=parseInt(e.$viewValue,10)||1};a.selectPage=function(b,c){c&&c.preventDefault(); -!(a.ngDisabled&&c||a.page===b)&&0b&&(f=b,g=f-m+1)):(g=(Math.ceil(a/m)-1)*m+1,f=Math.min(g+m-1,b)));for(var k=g;k<=f;k++)e.push({number:k, -text:k,active:k===a});h&&!n&&(1';return{compile:function(a,f){var h=b(z);return function(a,b,f,k){function m(){U.isOpen?p():u()}function u(){if(!Ka||a.$eval(f[n+"Enable"])){G();U.title=f[n+"Title"];ia?U.content=ia(a):U.content=f[c];U.popupClass=f[n+"Class"];U.placement=angular.isDefined(f[n+ -"Placement"])?f[n+"Placement"]:B.placement;var b=parseInt(f[n+"PopupDelay"],10),g=parseInt(f[n+"PopupCloseDelay"],10);U.popupDelay=isNaN(b)?B.popupDelay:b;U.popupCloseDelay=isNaN(g)?B.popupCloseDelay:g;U.popupDelay?V||(V=e(x,U.popupDelay,!1)):x()}}function p(){A();U.popupCloseDelay?qa||(qa=e(E,U.popupCloseDelay,!1)):E()}function x(){return A(),G(),U.content?(z(),void U.$evalAsync(function(){U.isOpen=!0;F(!0);jb()})):angular.noop}function A(){V&&(e.cancel(V),V=null);ga&&(e.cancel(ga),ga=null)}function E(){A(); -G();U&&U.$evalAsync(function(){U.isOpen=!1;F(!1);U.animation?S||(S=e(J,150,!1)):J()})}function G(){qa&&(e.cancel(qa),qa=null);S&&(e.cancel(S),S=null)}function z(){N||(P=U.$new(),N=h(P,function(a){w?g.find("body").append(a):b.after(a)}),I())}function J(){K();S=null;N&&(N.remove(),N=null);P&&(P.$destroy(),P=null)}function F(b){Ua&&angular.isFunction(Ua.assign)&&Ua.assign(a,b)}function I(){ua.length=0;ia?(ua.push(a.$watch(ia,function(a){U.content=a;!a&&U.isOpen&&E()})),ua.push(P.$watch(function(){na|| -(na=!0,P.$$postDigest(function(){na=!1;U&&U.isOpen&&jb()}))}))):ua.push(f.$observe(c,function(a){U.content=a;!a&&U.isOpen?E():jb()}));ua.push(f.$observe(n+"Title",function(a){U.title=a;U.isOpen&&jb()}));ua.push(f.$observe(n+"Placement",function(a){U.placement=a?a:B.placement;U.isOpen&&jb()}))}function K(){ua.length&&(angular.forEach(ua,function(a){a()}),ua.length=0)}var N,P,S,V,qa,ga,w=!!angular.isDefined(B.appendToBody)&&B.appendToBody,ma=v(void 0),Ka=angular.isDefined(f[n+"Enable"]),U=a.$new(!0), -na=!1,Ua=!!angular.isDefined(f[n+"IsOpen"])&&t(f[n+"IsOpen"]),ia=!!B.useContentExp&&t(f[c]),ua=[],jb=function(){N&&N.html()&&(ga||(ga=e(function(){N.css({top:0,left:0});var a=r.positionElements(b,N,U.placement,w);a.top+="px";a.left+="px";a.visibility="visible";N.css(a);ga=null},0,!1)))};U.origScope=a;U.isOpen=!1;q.add(U,{close:E});U.contentExp=function(){return U.content};f.$observe("disabled",function(a){a&&A();a&&U.isOpen&&E()});Ua&&a.$watch(Ua,function(a){U&&!a===U.isOpen&&m()});var kb=function(){ma.show.forEach(function(a){b.unbind(a, -u)});ma.hide.forEach(function(a){a.split(" ").forEach(function(a){b[0].removeEventListener(a,p)})})};(function(){var a=f[n+"Trigger"];kb();ma=v(a);"none"!==ma.show&&ma.show.forEach(function(a,c){a===ma.hide[c]?b[0].addEventListener(a,m):a&&(b[0].addEventListener(a,u),ma.hide[c].split(" ").forEach(function(a){b[0].addEventListener(a,p)}));b.on("keypress",function(a){27===a.which&&p()})})})();k=a.$eval(f[n+"Animation"]);U.animation=angular.isDefined(k)?!!k:B.animation;k=a.$eval(f[n+"AppendToBody"]); -(w=angular.isDefined(k)?k:w)&&a.$on("$locationChangeSuccess",function(){U.isOpen&&E()});a.$on("$destroy",function(){A();G();kb();J();q.remove(U);U=null})}}}}}]}).directive("uibTooltipTemplateTransclude",["$animate","$sce","$compile","$templateRequest",function(a,f,k,h){return{link:function(c,b,e){var g,r,m,n=c.$eval(e.tooltipTemplateTranscludeScope),t=0,x=function(){r&&(r.remove(),r=null);g&&(g.$destroy(),g=null);m&&(a.leave(m).then(function(){r=null}),r=m,m=null)};c.$watch(f.parseAsResourceUrl(e.uibTooltipTemplateTransclude), -function(e){var f=++t;e?(h(e,!0).then(function(c){if(f===t){var h=n.$new();c=k(c)(h,function(c){x();a.enter(c,b)});g=h;m=c;g.$emit("$includeContentLoaded",e)}},function(){f===t&&(x(),c.$emit("$includeContentError",e))}),c.$emit("$includeContentRequested",e)):x()});c.$on("$destroy",x)}}}]).directive("uibTooltipClasses",function(){return{restrict:"A",link:function(a,f,k){a.placement&&f.addClass(a.placement);a.popupClass&&f.addClass(a.popupClass);a.animation()&&f.addClass(k.tooltipAnimationClass)}}}).directive("uibTooltipPopup", -function(){return{replace:!0,scope:{content:"@",placement:"@",popupClass:"@",animation:"&",isOpen:"&"},templateUrl:"template/tooltip/tooltip-popup.html",link:function(a,f){f.addClass("tooltip")}}}).directive("uibTooltip",["$uibTooltip",function(a){return a("uibTooltip","tooltip","mouseenter")}]).directive("uibTooltipTemplatePopup",function(){return{replace:!0,scope:{contentExp:"&",placement:"@",popupClass:"@",animation:"&",isOpen:"&",originScope:"&"},templateUrl:"template/tooltip/tooltip-template-popup.html", -link:function(a,f){f.addClass("tooltip")}}}).directive("uibTooltipTemplate",["$uibTooltip",function(a){return a("uibTooltipTemplate","tooltip","mouseenter",{useContentExp:!0})}]).directive("uibTooltipHtmlPopup",function(){return{replace:!0,scope:{contentExp:"&",placement:"@",popupClass:"@",animation:"&",isOpen:"&"},templateUrl:"template/tooltip/tooltip-html-popup.html",link:function(a,f){f.addClass("tooltip")}}}).directive("uibTooltipHtml",["$uibTooltip",function(a){return a("uibTooltipHtml","tooltip", -"mouseenter",{useContentExp:!0})}]); -angular.module("ui.bootstrap.tooltip").value("$tooltipSuppressWarning",!1).provider("$tooltip",["$uibTooltipProvider",function(a){angular.extend(this,a);this.$get=["$log","$tooltipSuppressWarning","$injector",function(f,k,h){return k||f.warn("$tooltip is now deprecated. Use $uibTooltip instead."),h.invoke(a.$get)}]}]).directive("tooltipTemplateTransclude",["$animate","$sce","$compile","$templateRequest","$log","$tooltipSuppressWarning",function(a,f,k,h,c,b){return{link:function(e,g,r){b||c.warn("tooltip-template-transclude is now deprecated. Use uib-tooltip-template-transclude instead."); -var m,n,t,x=e.$eval(r.tooltipTemplateTranscludeScope),q=0,v=function(){n&&(n.remove(),n=null);m&&(m.$destroy(),m=null);t&&(a.leave(t).then(function(){n=null}),n=t,t=null)};e.$watch(f.parseAsResourceUrl(r.tooltipTemplateTransclude),function(b){var c=++q;b?(h(b,!0).then(function(e){if(c===q){var f=x.$new();e=k(e)(f,function(b){v();a.enter(b,g)});m=f;t=e;m.$emit("$includeContentLoaded",b)}},function(){c===q&&(v(),e.$emit("$includeContentError",b))}),e.$emit("$includeContentRequested",b)):v()});e.$on("$destroy", -v)}}}]).directive("tooltipClasses",["$log","$tooltipSuppressWarning",function(a,f){return{restrict:"A",link:function(k,h,c){f||a.warn("tooltip-classes is now deprecated. Use uib-tooltip-classes instead.");k.placement&&h.addClass(k.placement);k.popupClass&&h.addClass(k.popupClass);k.animation()&&h.addClass(c.tooltipAnimationClass)}}}]).directive("tooltipPopup",["$log","$tooltipSuppressWarning",function(a,f){return{replace:!0,scope:{content:"@",placement:"@",popupClass:"@",animation:"&",isOpen:"&"}, -templateUrl:"template/tooltip/tooltip-popup.html",link:function(k,h){f||a.warn("tooltip-popup is now deprecated. Use uib-tooltip-popup instead.");h.addClass("tooltip")}}}]).directive("tooltip",["$tooltip",function(a){return a("tooltip","tooltip","mouseenter")}]).directive("tooltipTemplatePopup",["$log","$tooltipSuppressWarning",function(a,f){return{replace:!0,scope:{contentExp:"&",placement:"@",popupClass:"@",animation:"&",isOpen:"&",originScope:"&"},templateUrl:"template/tooltip/tooltip-template-popup.html", -link:function(k,h){f||a.warn("tooltip-template-popup is now deprecated. Use uib-tooltip-template-popup instead.");h.addClass("tooltip")}}}]).directive("tooltipTemplate",["$tooltip",function(a){return a("tooltipTemplate","tooltip","mouseenter",{useContentExp:!0})}]).directive("tooltipHtmlPopup",["$log","$tooltipSuppressWarning",function(a,f){return{replace:!0,scope:{contentExp:"&",placement:"@",popupClass:"@",animation:"&",isOpen:"&"},templateUrl:"template/tooltip/tooltip-html-popup.html",link:function(k, -h){f||a.warn("tooltip-html-popup is now deprecated. Use uib-tooltip-html-popup instead.");h.addClass("tooltip")}}}]).directive("tooltipHtml",["$tooltip",function(a){return a("tooltipHtml","tooltip","mouseenter",{useContentExp:!0})}]); -angular.module("ui.bootstrap.popover",["ui.bootstrap.tooltip"]).directive("uibPopoverTemplatePopup",function(){return{replace:!0,scope:{title:"@",contentExp:"&",placement:"@",popupClass:"@",animation:"&",isOpen:"&",originScope:"&"},templateUrl:"template/popover/popover-template.html",link:function(a,f){f.addClass("popover")}}}).directive("uibPopoverTemplate",["$uibTooltip",function(a){return a("uibPopoverTemplate","popover","click",{useContentExp:!0})}]).directive("uibPopoverHtmlPopup",function(){return{replace:!0, -scope:{contentExp:"&",title:"@",placement:"@",popupClass:"@",animation:"&",isOpen:"&"},templateUrl:"template/popover/popover-html.html",link:function(a,f){f.addClass("popover")}}}).directive("uibPopoverHtml",["$uibTooltip",function(a){return a("uibPopoverHtml","popover","click",{useContentExp:!0})}]).directive("uibPopoverPopup",function(){return{replace:!0,scope:{title:"@",content:"@",placement:"@",popupClass:"@",animation:"&",isOpen:"&"},templateUrl:"template/popover/popover.html",link:function(a, -f){f.addClass("popover")}}}).directive("uibPopover",["$uibTooltip",function(a){return a("uibPopover","popover","click")}]); -angular.module("ui.bootstrap.popover").value("$popoverSuppressWarning",!1).directive("popoverTemplatePopup",["$log","$popoverSuppressWarning",function(a,f){return{replace:!0,scope:{title:"@",contentExp:"&",placement:"@",popupClass:"@",animation:"&",isOpen:"&",originScope:"&"},templateUrl:"template/popover/popover-template.html",link:function(k,h){f||a.warn("popover-template-popup is now deprecated. Use uib-popover-template-popup instead.");h.addClass("popover")}}}]).directive("popoverTemplate",["$tooltip", -function(a){return a("popoverTemplate","popover","click",{useContentExp:!0})}]).directive("popoverHtmlPopup",["$log","$popoverSuppressWarning",function(a,f){return{replace:!0,scope:{contentExp:"&",title:"@",placement:"@",popupClass:"@",animation:"&",isOpen:"&"},templateUrl:"template/popover/popover-html.html",link:function(k,h){f||a.warn("popover-html-popup is now deprecated. Use uib-popover-html-popup instead.");h.addClass("popover")}}}]).directive("popoverHtml",["$tooltip",function(a){return a("popoverHtml", -"popover","click",{useContentExp:!0})}]).directive("popoverPopup",["$log","$popoverSuppressWarning",function(a,f){return{replace:!0,scope:{title:"@",content:"@",placement:"@",popupClass:"@",animation:"&",isOpen:"&"},templateUrl:"template/popover/popover.html",link:function(k,h){f||a.warn("popover-popup is now deprecated. Use uib-popover-popup instead.");h.addClass("popover")}}}]).directive("popover",["$tooltip",function(a){return a("popover","popover","click")}]); -angular.module("ui.bootstrap.progressbar",[]).constant("uibProgressConfig",{animate:!0,max:100}).controller("UibProgressController",["$scope","$attrs","uibProgressConfig",function(a,f,k){var h=this,c=angular.isDefined(f.animate)?a.$parent.$eval(f.animate):k.animate;this.bars=[];a.max=angular.isDefined(a.max)?a.max:k.max;this.addBar=function(b,e,g){c||e.css({transition:"none"});this.bars.push(b);b.max=a.max;b.title=g&&angular.isDefined(g.title)?g.title:"progressbar";b.$watch("value",function(a){b.recalculatePercentage()}); -b.recalculatePercentage=function(){var a=h.bars.reduce(function(a,b){return b.percent=+(100*b.value/b.max).toFixed(2),a+b.percent},0);100=this.titles.length?a+1:this.titles[a]};a.rate=function(c){!a.readonly&&0<=c&&c<=a.range.length&&(h.$setViewValue(h.$viewValue===c?0:c),h.$render())};a.enter=function(c){a.readonly||(a.value=c);a.onHover({value:c})};a.reset=function(){a.value=h.$viewValue;a.onLeave()};a.onKeydown=function(c){/(37|38|39|40)/.test(c.which)&&(c.preventDefault(),c.stopPropagation(),a.rate(a.value+(38===c.which||39===c.which?1:-1)))};this.render=function(){a.value=h.$viewValue}}]).directive("uibRating", -function(){return{require:["uibRating","ngModel"],scope:{readonly:"=?",onHover:"&",onLeave:"&"},controller:"UibRatingController",templateUrl:"template/rating/rating.html",replace:!0,link:function(a,f,k,h){h[0].init(h[1])}}}); -angular.module("ui.bootstrap.rating").value("$ratingSuppressWarning",!1).controller("RatingController",["$scope","$attrs","$controller","$log","$ratingSuppressWarning",function(a,f,k,h,c){c||h.warn("RatingController is now deprecated. Use UibRatingController instead.");angular.extend(this,k("UibRatingController",{$scope:a,$attrs:f}))}]).directive("rating",["$log","$ratingSuppressWarning",function(a,f){return{require:["rating","ngModel"],scope:{readonly:"=?",onHover:"&",onLeave:"&"},controller:"RatingController", -templateUrl:"template/rating/rating.html",replace:!0,link:function(k,h,c,b){f||a.warn("rating is now deprecated. Use uib-rating instead.");b[0].init(b[1])}}}]); -angular.module("ui.bootstrap.tabs",[]).controller("UibTabsetController",["$scope",function(a){var f=this,k=f.tabs=a.tabs=[];f.select=function(a){angular.forEach(k,function(b){b.active&&b!==a&&(b.active=!1,b.onDeselect(),a.selectCalled=!1)});a.active=!0;a.selectCalled||(a.onSelect(),a.selectCalled=!0)};f.addTab=function(a){k.push(a);1===k.length&&!1!==a.active?a.active=!0:a.active?f.select(a):a.active=!1};f.removeTab=function(a){var b=k.indexOf(a);a.active&&1b:0<=b&&24>b)return a.showMeridian&&(12===b&&(b=0),a.meridian===B[1]&&(b+=12)),b}function r(){var b=parseInt(a.minutes, -10);return 0<=b&&60>b?b:void 0}function m(a){return angular.isDefined(a)&&2>a.toString().length?"0"+a:a.toString()}function n(a){t();A.$setViewValue(new Date(z));x(a)}function t(){A.$setValidity("time",!0);a.invalidHours=!1;a.invalidMinutes=!1}function x(b){var c=z.getHours(),e=z.getMinutes();a.showMeridian&&(c=0===c||12===c?12:c%12);a.hours="h"===b?c:m(c);"m"!==b&&(a.minutes=m(e));a.meridian=12>z.getHours()?B[0]:B[1]}function q(a,b){var c=new Date(a.getTime()+6E4*b),e=new Date(a);return e.setHours(c.getHours(), -c.getMinutes()),e}function v(a){z=q(z,a);n()}var z=new Date,A={$setViewValue:angular.noop},B=angular.isDefined(k.meridians)?a.$parent.$eval(k.meridians):e.meridians||b.DATETIME_FORMATS.AMPMS;a.tabindex=angular.isDefined(k.tabindex)?k.tabindex:0;f.removeAttr("tabindex");this.init=function(b,c){A=b;A.$render=this.render;A.$formatters.unshift(function(a){return a?new Date(a):null});var g=c.eq(0),f=c.eq(1);(angular.isDefined(k.mousewheel)?a.$parent.$eval(k.mousewheel):e.mousewheel)&&this.setupMousewheelEvents(g, -f);(angular.isDefined(k.arrowkeys)?a.$parent.$eval(k.arrowkeys):e.arrowkeys)&&this.setupArrowkeyEvents(g,f);a.readonlyInput=angular.isDefined(k.readonlyInput)?a.$parent.$eval(k.readonlyInput):e.readonlyInput;this.setupInputEvents(g,f)};var F=e.hourStep;k.hourStep&&a.$parent.$watch(h(k.hourStep),function(a){F=parseInt(a,10)});var p=e.minuteStep;k.minuteStep&&a.$parent.$watch(h(k.minuteStep),function(a){p=parseInt(a,10)});var u;a.$parent.$watch(h(k.min),function(a){a=new Date(a);u=isNaN(a)?void 0:a}); -var I;a.$parent.$watch(h(k.max),function(a){a=new Date(a);I=isNaN(a)?void 0:a});a.noIncrementHours=function(){var a=q(z,60*F);return a>I||az&&a>I};a.noIncrementMinutes=function(){var a=q(z,p);return a>I||az&&a>I};a.noToggleMeridian=function(){return 13>z.getHours()?q(z,720)>I:q(z,-720)I?e(!0):n("h")):e(!0)};b.bind("blur",function(b){!a.invalidHours&&10>a.hours&&a.$apply(function(){a.hours=m(a.hours)})});a.updateMinutes=function(){var a=r(),b=g();angular.isDefined(a)&&angular.isDefined(b)?(z.setMinutes(a),zI?e(void 0, -!0):n("m")):e(void 0,!0)};c.bind("blur",function(b){!a.invalidMinutes&&10>a.minutes&&a.$apply(function(){a.minutes=m(a.minutes)})})};this.render=function(){var b=A.$viewValue;isNaN(b)?(A.$setValidity("time",!1),c.error('Timepicker directive: "ng-model" value must be a Date object, a number of milliseconds since 01.01.1970 or a string representing an RFC2822 or ISO 8601 date.')):(b&&(z=b),zI?(A.$setValidity("time",!1),a.invalidHours=!0,a.invalidMinutes=!0):t(),x())};a.showSpinners=angular.isDefined(k.showSpinners)? -a.$parent.$eval(k.showSpinners):e.showSpinners;a.incrementHours=function(){a.noIncrementHours()||v(60*F)};a.decrementHours=function(){a.noDecrementHours()||v(60*-F)};a.incrementMinutes=function(){a.noIncrementMinutes()||v(p)};a.decrementMinutes=function(){a.noDecrementMinutes()||v(-p)};a.toggleMeridian=function(){a.noToggleMeridian()||v(720*(12>z.getHours()?1:-1))}}]).directive("uibTimepicker",function(){return{restrict:"EA",require:["uibTimepicker","?^ngModel"],controller:"UibTimepickerController", -controllerAs:"timepicker",replace:!0,scope:{},templateUrl:function(a,f){return f.templateUrl||"template/timepicker/timepicker.html"},link:function(a,f,k,h){a=h[0];(h=h[1])&&a.init(h,f.find("input"))}}}); -angular.module("ui.bootstrap.timepicker").value("$timepickerSuppressWarning",!1).controller("TimepickerController",["$scope","$element","$attrs","$controller","$log","$timepickerSuppressWarning",function(a,f,k,h,c,b){b||c.warn("TimepickerController is now deprecated. Use UibTimepickerController instead.");angular.extend(this,h("UibTimepickerController",{$scope:a,$element:f,$attrs:k}))}]).directive("timepicker",["$log","$timepickerSuppressWarning",function(a,f){return{restrict:"EA",require:["timepicker", -"?^ngModel"],controller:"TimepickerController",controllerAs:"timepicker",replace:!0,scope:{},templateUrl:function(a,f){return f.templateUrl||"template/timepicker/timepicker.html"},link:function(k,h,c,b){f||a.warn("timepicker is now deprecated. Use uib-timepicker instead.");k=b[0];(b=b[1])&&k.init(b,h.find("input"))}}}]); -angular.module("ui.bootstrap.typeahead",["ui.bootstrap.position"]).factory("uibTypeaheadParser",["$parse",function(a){var f=/^\s*([\s\S]+?)(?:\s+as\s+([\s\S]+?))?\s+for\s+(?:([\$\w][\$\w\d]*))\s+in\s+([\s\S]+?)$/;return{parse:function(k){var h=k.match(f);if(!h)throw Error('Expected typeahead specification in form of "_modelValue_ (as _label_)? for _item_ in _collection_" but got "'+k+'".');return{itemName:h[3],source:a(h[4]),viewMapper:a(h[2]||h[1]),modelMapper:a(h[1])}}}}]).controller("UibTypeaheadController", -["$scope","$element","$attrs","$compile","$parse","$q","$timeout","$document","$window","$rootScope","$uibPosition","uibTypeaheadParser",function(a,f,k,h,c,b,e,g,r,m,n,t){function x(){O.moveInProgress||(O.moveInProgress=!0,O.$digest());R&&e.cancel(R);R=e(function(){O.matches.length&&q();O.moveInProgress=!1},B)}function q(){O.position=V?n.offset(f):n.position(f);O.position.top+=f.prop("offsetHeight")}var v,z,A=[9,13,27,38,40],B=200,F=a.$eval(k.typeaheadMinLength);F||0===F||(F=1);var p,u,I=a.$eval(k.typeaheadWaitMs)|| -0,J=!1!==a.$eval(k.typeaheadEditable),E=c(k.typeaheadLoading).assign||angular.noop,G=c(k.typeaheadOnSelect),N=!!angular.isDefined(k.typeaheadSelectOnBlur)&&a.$eval(k.typeaheadSelectOnBlur),K=c(k.typeaheadNoResults).assign||angular.noop,P=k.typeaheadInputFormatter?c(k.typeaheadInputFormatter):void 0,V=!!k.typeaheadAppendToBody&&a.$eval(k.typeaheadAppendToBody),S=k.typeaheadAppendToElementId||!1,W=!1!==a.$eval(k.typeaheadFocusFirst),ja=!!k.typeaheadSelectOnExact&&a.$eval(k.typeaheadSelectOnExact),ya= -c(k.ngModel),Ga=c(k.ngModel+"($$$p)"),za=function(b,c){return angular.isFunction(ya(a))&&z&&z.$options&&z.$options.getterSetter?Ga(b,{$$$p:c}):ya.assign(b,c)},X=t.parse(k.uibTypeahead),O=a.$new();c=a.$on("$destroy",function(){O.$destroy()});O.$on("$destroy",c);var T="typeahead-"+O.$id+"-"+Math.floor(1E4*Math.random());f.attr({"aria-autocomplete":"list","aria-expanded":!1,"aria-owns":T});var M=angular.element("
    ");M.attr({id:T,matches:"matches",active:"activeIdx",select:"select(activeIdx)", -"move-in-progress":"moveInProgress",query:"query",position:"position"});angular.isDefined(k.typeaheadTemplateUrl)&&M.attr("template-url",k.typeaheadTemplateUrl);angular.isDefined(k.typeaheadPopupTemplateUrl)&&M.attr("popup-template-url",k.typeaheadPopupTemplateUrl);var ka=function(){O.matches=[];O.activeIdx=-1;f.attr("aria-expanded",!1)};O.$watch("activeIdx",function(a){0>a?f.removeAttr("aria-activedescendant"):f.attr("aria-activedescendant",T+"-option-"+a)});var ca=function(c){var e={$viewValue:c}; -E(a,!0);K(a,!1);b.when(X.source(a,e)).then(function(b){var g=c===v.$viewValue;if(g&&p)if(b&&0=F?0/g.test(c)&&k.warn("Unsafe use of typeahead please use ngSanitize"),c=b?(""+c).replace(new RegExp(b.replace(/([.?*+^$[\]\\(){}|-])/g, -"\\$1"),"gi"),"$&"):c,h||(c=a.trustAsHtml(c)),c}}]); -angular.module("ui.bootstrap.typeahead").value("$typeaheadSuppressWarning",!1).service("typeaheadParser",["$parse","uibTypeaheadParser","$log","$typeaheadSuppressWarning",function(a,f,k,h){return h||k.warn("typeaheadParser is now deprecated. Use uibTypeaheadParser instead."),f}]).directive("typeahead",["$compile","$parse","$q","$timeout","$document","$window","$rootScope","$uibPosition","typeaheadParser","$log","$typeaheadSuppressWarning",function(a,f,k,h,c,b,e,g,r,m,n){var t=[9,13,27,38,40];return{require:["ngModel", -"^?ngModelOptions"],link:function(x,q,v,z){function A(){M.moveInProgress||(M.moveInProgress=!0,M.$digest());Y&&h.cancel(Y);Y=h(function(){M.matches.length&&B();M.moveInProgress=!1},200)}function B(){M.position=W?g.offset(q):g.position(q);M.position.top+=q.prop("offsetHeight")}n||m.warn("typeahead is now deprecated. Use uib-typeahead instead.");var F=z[0],p=z[1],u=x.$eval(v.typeaheadMinLength);u||0===u||(u=1);var I,J,E=x.$eval(v.typeaheadWaitMs)||0,G=!1!==x.$eval(v.typeaheadEditable),N=f(v.typeaheadLoading).assign|| -angular.noop,K=f(v.typeaheadOnSelect),P=!!angular.isDefined(v.typeaheadSelectOnBlur)&&x.$eval(v.typeaheadSelectOnBlur),V=f(v.typeaheadNoResults).assign||angular.noop,S=v.typeaheadInputFormatter?f(v.typeaheadInputFormatter):void 0,W=!!v.typeaheadAppendToBody&&x.$eval(v.typeaheadAppendToBody),ja=v.typeaheadAppendToElementId||!1,ya=!1!==x.$eval(v.typeaheadFocusFirst),Ga=!!v.typeaheadSelectOnExact&&x.$eval(v.typeaheadSelectOnExact),za=f(v.ngModel),X=f(v.ngModel+"($$$p)"),O=function(a,b){return angular.isFunction(za(x))&& -p&&p.$options&&p.$options.getterSetter?X(a,{$$$p:b}):za.assign(a,b)},T=r.parse(v.typeahead),M=x.$new();z=x.$on("$destroy",function(){M.$destroy()});M.$on("$destroy",z);var ka="typeahead-"+M.$id+"-"+Math.floor(1E4*Math.random());q.attr({"aria-autocomplete":"list","aria-expanded":!1,"aria-owns":ka});var ca=angular.element("
    ");ca.attr({id:ka,matches:"matches",active:"activeIdx",select:"select(activeIdx)","move-in-progress":"moveInProgress",query:"query",position:"position"}); -angular.isDefined(v.typeaheadTemplateUrl)&&ca.attr("template-url",v.typeaheadTemplateUrl);angular.isDefined(v.typeaheadPopupTemplateUrl)&&ca.attr("popup-template-url",v.typeaheadPopupTemplateUrl);var R=function(){M.matches=[];M.activeIdx=-1;q.attr("aria-expanded",!1)};M.$watch("activeIdx",function(a){0>a?q.removeAttr("aria-activedescendant"):q.attr("aria-activedescendant",ka+"-option-"+a)});var ea=function(a){var b={$viewValue:a};N(x,!0);V(x,!1);k.when(T.source(x,b)).then(function(c){var e=a===F.$viewValue; -if(e&&I)if(c&&0=u?0/g.test(b)&&k.warn("Unsafe use of typeahead please use ngSanitize"), -b=e?(""+b).replace(new RegExp(e.replace(/([.?*+^$[\]\\(){}|-])/g,"\\$1"),"gi"),"$&"):b,c||(b=a.trustAsHtml(b)),b}}]);angular.module("template/accordion/accordion-group.html",[]).run(["$templateCache",function(a){a.put("template/accordion/accordion-group.html",'
    \n
    \n

    \n {{heading}}\n

    \n
    \n
    \n\t
    \n
    \n
    \n')}]); -angular.module("template/accordion/accordion.html",[]).run(["$templateCache",function(a){a.put("template/accordion/accordion.html",'
    ')}]);angular.module("template/alert/alert.html",[]).run(["$templateCache",function(a){a.put("template/alert/alert.html",'\n')}]); -angular.module("template/carousel/carousel.html",[]).run(["$templateCache",function(a){a.put("template/carousel/carousel.html",'')}]); -angular.module("template/carousel/slide.html",[]).run(["$templateCache",function(a){a.put("template/carousel/slide.html",'
    \n')}]);angular.module("template/datepicker/datepicker.html",[]).run(["$templateCache",function(a){a.put("template/datepicker/datepicker.html",'
    \n \n \n \n
    ')}]); -angular.module("template/datepicker/day.html",[]).run(["$templateCache",function(a){a.put("template/datepicker/day.html",'\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n
    {{::label.abbr}}
    {{ weekNumbers[$index] }}\n \n
    \n')}]); -angular.module("template/datepicker/month.html",[]).run(["$templateCache",function(a){a.put("template/datepicker/month.html",'\n \n \n \n \n \n \n \n \n \n \n \n \n
    \n \n
    \n')}]); -angular.module("template/datepicker/popup.html",[]).run(["$templateCache",function(a){a.put("template/datepicker/popup.html",'\n')}]); -angular.module("template/datepicker/year.html",[]).run(["$templateCache",function(a){a.put("template/datepicker/year.html",'\n \n \n \n \n \n \n \n \n \n \n \n \n
    \n \n
    \n')}]); -angular.module("template/modal/backdrop.html",[]).run(["$templateCache",function(a){a.put("template/modal/backdrop.html",'
    \n')}]);angular.module("template/modal/window.html",[]).run(["$templateCache",function(a){a.put("template/modal/window.html",'\n')}]); -angular.module("template/pagination/pager.html",[]).run(["$templateCache",function(a){a.put("template/pagination/pager.html",'\n')}]); -angular.module("template/pagination/pagination.html",[]).run(["$templateCache",function(a){a.put("template/pagination/pagination.html",'\n')}]); -angular.module("template/tooltip/tooltip-html-popup.html",[]).run(["$templateCache",function(a){a.put("template/tooltip/tooltip-html-popup.html",'\n
    \n
    \n\n')}]);angular.module("template/tooltip/tooltip-popup.html",[]).run(["$templateCache",function(a){a.put("template/tooltip/tooltip-popup.html",'\n
    \n
    \n\n')}]); -angular.module("template/tooltip/tooltip-template-popup.html",[]).run(["$templateCache",function(a){a.put("template/tooltip/tooltip-template-popup.html",'\n
    \n
    \n\n')}]); -angular.module("template/popover/popover-html.html",[]).run(["$templateCache",function(a){a.put("template/popover/popover-html.html",'
    \n
    \n\n
    \n

    \n
    \n
    \n
    \n')}]); -angular.module("template/popover/popover-template.html",[]).run(["$templateCache",function(a){a.put("template/popover/popover-template.html",'
    \n
    \n\n
    \n

    \n
    \n
    \n
    \n')}]); -angular.module("template/popover/popover.html",[]).run(["$templateCache",function(a){a.put("template/popover/popover.html",'
    \n
    \n\n
    \n

    \n
    \n
    \n
    \n')}]); -angular.module("template/progressbar/bar.html",[]).run(["$templateCache",function(a){a.put("template/progressbar/bar.html",'
    \n')}]); -angular.module("template/progressbar/progress.html",[]).run(["$templateCache",function(a){a.put("template/progressbar/progress.html",'
    ')}]);angular.module("template/progressbar/progressbar.html",[]).run(["$templateCache",function(a){a.put("template/progressbar/progressbar.html",'
    \n
    \n
    \n')}]); -angular.module("template/rating/rating.html",[]).run(["$templateCache",function(a){a.put("template/rating/rating.html",'\n ({{ $index < value ? \'*\' : \' \' }})\n \n\n')}]); -angular.module("template/tabs/tab.html",[]).run(["$templateCache",function(a){a.put("template/tabs/tab.html",'
  • \n {{heading}}\n
  • \n')}]);angular.module("template/tabs/tabset.html",[]).run(["$templateCache",function(a){a.put("template/tabs/tabset.html",'
    \n \n
    \n
    \n
    \n
    \n
    \n')}]); -angular.module("template/timepicker/timepicker.html",[]).run(["$templateCache",function(a){a.put("template/timepicker/timepicker.html",'\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n
     
    \n \n :\n \n
     
    \n')}]); -angular.module("template/typeahead/typeahead-match.html",[]).run(["$templateCache",function(a){a.put("template/typeahead/typeahead-match.html",'\n')}]);angular.module("template/typeahead/typeahead-popup.html",[]).run(["$templateCache",function(a){a.put("template/typeahead/typeahead-popup.html",'\n')}]); -!angular.$$csp()&&angular.element(document).find("head").prepend(''); -!function(a,f){"function"==typeof define&&define.amd?define([],function(){return f()}):"object"==typeof exports?module.exports=f():f()}(this,function(){function a(a){var b=a.storageKey(),c=a.storage(),e=function(){var e=a.preferredLanguage();angular.isString(e)?a.use(e):c.put(b,a.use())};e.displayName="fallbackFromIncorrectStorageValue";c?c.get(b)?a.use(c.get(b))["catch"](e):e():angular.isString(a.preferredLanguage())&&a.use(a.preferredLanguage())}function f(a,b,c,e){var g,f,h,k,m,n,r,q,t,x,G,N,K, -P,V,S,W={},ja=[],ya=a,Ga=[],za="translate-cloak",X=!1,O=!1,T=".",M=!1,ka=0,ca=!0,R="default",ea={"default":function(a){return(a||"").split("-").join("_")},java:function(a){a=(a||"").split("-").join("_");var b=a.split("_");return 1c;c++)if(a[c]===b)return c;return-1},qa=function(){return this.toString().replace(/^\s+|\s+$/g,"")},ga=function(a){if(a){for(var b=[],c=angular.lowercase(a),e=0,g=ja.length;g>e;e++)b.push(angular.lowercase(ja[e]));if(-1pa(h,g)&&h.push(g),this): -k?h[0]:h};this.use=function(a){if(a){if(!W[a]&&!G)throw Error("$translateProvider couldn't find translationTable for langKey: '"+a+"'");return m=a,this}return m};this.resolveClientLocale=function(){return ha()};var U=function(a){return a?(ya=a,this):q?q+ya:ya};this.storageKey=U;this.useUrlLoader=function(a,b){return this.useLoader("$translateUrlLoader",angular.extend({url:a},b))};this.useStaticFilesLoader=function(a){return this.useLoader("$translateStaticFilesLoader",a)};this.useLoader=function(a, -b){return G=a,N=b||{},this};this.useLocalStorage=function(){return this.useStorage("$translateLocalStorage")};this.useCookieStorage=function(){return this.useStorage("$translateCookieStorage")};this.useStorage=function(a){return r=a,this};this.storagePrefix=function(a){return a?(q=a,this):a};this.useMissingTranslationHandlerLog=function(){return this.useMissingTranslationHandler("$translateMissingTranslationHandlerLog")};this.useMissingTranslationHandler=function(a){return t=a,this};this.usePostCompiling= -function(a){return X=!!a,this};this.forceAsyncReload=function(a){return O=!!a,this};this.uniformLanguageTag=function(a){return a?angular.isString(a)&&(a={standard:a}):a={},R=a.standard,this};this.determinePreferredLanguage=function(a){a=a&&angular.isFunction(a)?a():ha();return g=ja.length?ga(a)||a:a,this};this.registerAvailableLanguageKeys=function(a,b){return a?(ja=a,b&&(f=b),this):ja};this.useLoaderCache=function(a){return!1===a?V=void 0:!0===a?V=!0:"undefined"==typeof a?V="$translationCache":a&& -(V=a),this};this.directivePriority=function(a){return void 0===a?ka:(ka=a,this)};this.statefulFilter=function(a){return void 0===a?ca:(ca=a,this)};this.postProcess=function(a){return S=a?a:void 0,this};this.$get=["$log","$injector","$rootScope","$q",function(a,b,c,e){var f,q,u,p=b.get(x||"$translateDefaultInterpolation"),v=!1,E={},A={},z=function(a,b,c,k,n){!m&&g&&(m=g);var w=n&&n!==m?ga(n)||n:m;if(n&&Xa(n),angular.isArray(a))return function(a){for(var g={},f=[],h=function(a){var f=e.defer(),h=function(b){g[a]= -b;f.resolve([a,b])};return z(a,b,c,k,n).then(h,h),f.promise},m=0,w=a.length;w>m;m++)f.push(h(a[m]));return e.all(f).then(function(){return g})}(a);var u=e.defer();a&&(a=qa.apply(a));var t=function(){var a=g?A[g]:A[w];if(q=0,r&&!a){var b=f.get(ya);if(a=A[b],h&&h.length)q=0===pa(h,b)?1:0,0>pa(h,g)&&h.push(g)}return a}();if(t){var p=function(){n||(w=m);Ua(a,b,c,k,w).then(u.resolve,u.reject)};p.displayName="promiseResolved";t["finally"](p)}else Ua(a,b,c,k,w).then(u.resolve,u.reject);return u.promise}, -B=function(a){return K&&(a=[K,a].join(" ")),P&&(a=[a,P].join(" ")),a},I=function(a){m=a;r&&f.put(z.storageKey(),m);c.$emit("$translateChangeSuccess",{language:a});p.setLocale(m);var b=function(a,b){E[b].setLocale(m)};b.displayName="eachInterpolatorLocaleSetter";angular.forEach(E,b);c.$emit("$translateChangeEnd",{language:a})},ia=function(a){if(!a)throw"No language key specified for loading.";var g=e.defer();c.$emit("$translateLoadingStart",{language:a});v=!0;var f=V;"string"==typeof f&&(f=b.get(f)); -var f=angular.extend({},N,{key:a,$http:angular.extend({},{cache:f},N.$http)}),h=function(b){var e={};c.$emit("$translateLoadingSuccess",{language:a});angular.isArray(b)?angular.forEach(b,function(a){angular.extend(e,ma(a))}):angular.extend(e,ma(b));v=!1;g.resolve({key:a,table:e});c.$emit("$translateLoadingEnd",{language:a})};h.displayName="onLoaderSuccess";var k=function(a){c.$emit("$translateLoadingError",{language:a});g.reject(a);c.$emit("$translateLoadingEnd",{language:a})};return k.displayName= -"onLoaderError",b.get(G)(f).then(h,k),g.promise};if(r&&(f=b.get(r),!f.get||!f.put))throw Error("Couldn't use storage '"+r+"', missing get() or put() method!");Ga.length&&(a=function(a){a=b.get(a);a.setLocale(g||m);E[a.getInterpolationIdentifier()]=a},a.displayName="interpolationFactoryAdder",angular.forEach(Ga,a));var J=function(a){var b=e.defer();if(Object.prototype.hasOwnProperty.call(W,a))b.resolve(W[a]);else if(A[a]){var c=function(a){w(a.key,a.table);b.resolve(a.table)};c.displayName="translationTableResolver"; -A[a].then(c,b.reject)}else b.reject();return b.promise},F=function(a,b,c,g){var f=e.defer(),h=function(e){if(Object.prototype.hasOwnProperty.call(e,b)){g.setLocale(a);var h=e[b];"@:"===h.substr(0,2)?F(a,h.substr(2),c,g).then(f.resolve,f.reject):(h=g.interpolate(e[b],c),h=Y(b,e[b],h,c,a),f.resolve(h));g.setLocale(m)}else f.reject()};return h.displayName="fallbackTranslationResolver",J(a).then(h,f.reject),f.promise},ua=function(a,b,c,e){var g,f=W[a];if(f&&Object.prototype.hasOwnProperty.call(f,b)){if(e.setLocale(a), -g=e.interpolate(f[b],c),"@:"===g.substr(0,2))return ua(a,g.substr(2),c,e);e.setLocale(m)}return g},R=function(a,c,e){return t?(c=b.get(t)(a,m,c,e),void 0!==c?c:a):a},na=function(a,b,c,g,f){var k=e.defer();aa;a++)A[h[a]]||(A[h[a]]=ia(h[a]))}z.use(z.use())}return k?h[0]:h};z.useFallbackLanguage=function(a){void 0!==a&&null!==a&&(a?(a=pa(h,a),-1r;r++)k.push(ia(h[r])),n[h[r]]=!0;m&&!n[m]&&k.push(ia(m));n=function(a){W={};angular.forEach(a,function(a){w(a.key,a.table)});m&&I(m);b()};n.displayName="refreshPostProcessor";e.all(k).then(n,g)}return f.promise};z.instant=function(a,b,c,e){var f=e&&e!==m?ga(e)||e:m;if(null===a||angular.isUndefined(a))return a;if(e&& -Xa(e),angular.isArray(a)){for(var f={},k=0,n=a.length;n>k;k++)f[a[k]]=z.instant(a[k],b,c,e);return f}if(angular.isString(a)&&1>a.length)return a;a&&(a=qa.apply(a));e=[];g&&e.push(g);f&&e.push(f);h&&h.length&&(e=e.concat(h));for(var n=0,w=e.length;w>n;n++){var r=e[n];if(W[r]&&"undefined"!=typeof W[r][a]&&(k=ea(a,b,c,f)),"undefined"!=typeof k)break}return k||""===k||(K||P?k=B(a):(k=p.interpolate(a,b),t&&!v&&(k=R(a,b)))),k};z.versionInfo=function(){return"2.11.0"};z.loaderCache=function(){return V}; -z.directivePriority=function(){return ka};z.statefulFilter=function(){return ca};z.isReady=function(){return M};var nb=e.defer();nb.promise.then(function(){M=!0});z.onReady=function(a){var b=e.defer();return angular.isFunction(a)&&b.promise.then(a),M?b.resolve():nb.promise.then(b.resolve),b.promise};z.getAvailableLanguageKeys=function(){return 0Gb;Gb++){var hc=h[Gb];!O&&W[hc]||(A[hc]=ia(hc).then(a))}}}else c.$emit("$translateReady",{language:z.use()});return z}]}function k(a,b){var c={};return c.setLocale=function(a){},c.getInterpolationIdentifier=function(){return"default"},c.useSanitizeValueStrategy=function(a){return b.useStrategy(a),this},c.interpolate= -function(c,e){e=e||{};e=b.sanitize(e,"params");var g=a(c)(e);return b.sanitize(g,"text")},c}function h(a,b,e,g,f,h){var k=function(){return this.toString().replace(/^\s+|\s+$/g,"")};return{restrict:"AE",scope:!0,priority:a.directivePriority(),compile:function(b,m){var n=m.translateValues?m.translateValues:void 0,r=m.translateInterpolation?m.translateInterpolation:void 0,q=b[0].outerHTML.match(/translate-value-+/i),t="^(.*)("+e.startSymbol()+".*"+e.endSymbol()+")(.*)",v="^(.*)"+e.startSymbol()+"(.*)"+ -e.endSymbol()+"(.*)";return function(b,u,p){b.interpolateParams={};b.preText="";b.postText="";b.translateNamespace=c(b);var x={},A=function(a){if(angular.isFunction(A._unwatchOld)&&(A._unwatchOld(),A._unwatchOld=void 0),angular.equals(a,"")||!angular.isDefined(a)){a=k.apply(u.text());var c=a.match(t);angular.isArray(c)?(b.preText=c[1],b.postText=c[3],x.translate=e(c[2])(b.$parent),a=a.match(v),angular.isArray(a)&&a[2]&&a[2].length&&(A._unwatchOld=b.$watch(a[2],function(a){x.translate=a;I()}))):x.translate= -a?a:void 0}else x.translate=a;I()},E=function(a){p.$observe(a,function(b){x[a]=b;I()})};(function(a,c,e){if(c.translateValues&&angular.extend(a,f(c.translateValues)(b.$parent)),q)for(var g in e)if(Object.prototype.hasOwnProperty.call(c,g)&&"translateValue"===g.substr(0,14)&&"translateValues"!==g){var h=angular.lowercase(g.substr(14,1))+g.substr(15);a[h]=e[g]}})(b.interpolateParams,p,m);var z=!0;p.$observe("translate",function(a){"undefined"==typeof a?A(""):""===a&&z||(x.translate=a,I());z=!1});for(var G in p)p.hasOwnProperty(G)&& -"translateAttr"===G.substr(0,13)&&E(G);if(p.$observe("translateDefault",function(a){b.defaultText=a;I()}),n&&p.$observe("translateValues",function(a){a&&b.$parent.$watch(function(){angular.extend(b.interpolateParams,f(a)(b.$parent))})}),q){var E=function(a){p.$observe(a,function(c){var e=angular.lowercase(a.substr(14,1))+a.substr(15);b.interpolateParams[e]=c})},B;for(B in p)Object.prototype.hasOwnProperty.call(p,B)&&"translateValue"===B.substr(0,14)&&"translateValues"!==B&&E(B)}var I=function(){for(var a in x)x.hasOwnProperty(a)&& -void 0!==x[a]&&J(a,x[a],b,b.interpolateParams,b.defaultText,b.translateNamespace)},J=function(b,c,e,g,f,h){c?(h&&"."===c.charAt(0)&&(c=h+c),a(c,g,r,f,e.translateLanguage).then(function(a){F(a,e,!0,b)},function(a){F(a,e,!1,b)})):F(c,e,!1,b)},F=function(b,c,e,f){(e||"undefined"!=typeof c.defaultText&&(b=c.defaultText),"translate"===f)?((e||!e&&"undefined"==typeof p.translateKeepContent)&&u.empty().append(c.preText+b+c.postText),b=a.isPostCompilingEnabled(),f=(e="undefined"!=typeof m.translateCompile)&& -"false"!==m.translateCompile,(b&&!e||f)&&g(u.contents())(c)):(c=p.$attr[f],"data-"===c.substr(0,5)&&(c=c.substr(5)),c=c.substr(15),u.attr(c,b))};(n||q||p.translateDefault)&&b.$watch("interpolateParams",I,!0);var K=b.$on("translateLanguageChanged",I),N=h.$on("$translateChangeSuccess",I);u.text().length?A(p.translate?p.translate:""):p.translate&&A(p.translate);I();b.$on("$destroy",function(){K();N()})}}}}function c(a){return a.translateNamespace?a.translateNamespace:a.$parent?c(a.$parent):void 0}function b(a, -b){return{compile:function(c){var e=function(){c.addClass(a.cloakClassName())},g=function(){c.removeClass(a.cloakClassName())};return a.onReady(function(){g()}),e(),function(c,f,h){h.translateCloak&&h.translateCloak.length&&(h.$observe("translateCloak",function(b){a(b).then(g,e)}),b.$on("$translateChangeSuccess",function(){a(h.translateCloak).then(g,e)}))}}}}function e(){return{restrict:"A",scope:!0,compile:function(){return{pre:function(a,b,e){a.translateNamespace=c(a);a.translateNamespace&&"."=== -e.translateNamespace.charAt(0)?a.translateNamespace+=e.translateNamespace:a.translateNamespace=e.translateNamespace}}}}}function c(a){return a.translateNamespace?a.translateNamespace:a.$parent?c(a.$parent):void 0}function g(){return{restrict:"A",scope:!0,compile:function(){return function(a,b,c){c.$observe("translateLanguage",function(b){a.translateLanguage=b});a.$watch("translateLanguage",function(){a.$broadcast("translateLanguageChanged")})}}}}function r(a,b){var c=function(c,e,g,f){return angular.isObject(e)|| -(e=a(e)(this)),b.instant(c,e,g,f)};return b.statefulFilter()&&(c.$stateful=!0),c}function m(a){return a("translations")}return a.$inject=["$translate"],f.$inject=["$STORAGE_KEY","$windowProvider","$translateSanitizationProvider","pascalprechtTranslateOverrider"],k.$inject=["$interpolate","$translateSanitization"],h.$inject="$translate $q $interpolate $compile $parse $rootScope".split(" "),b.$inject=["$translate","$rootScope"],r.$inject=["$parse","$translate"],m.$inject=["$cacheFactory"],angular.module("pascalprecht.translate", -["ng"]).run(a),a.displayName="runTranslate",angular.module("pascalprecht.translate").provider("$translateSanitization",function(){var a,b,c=null,e=!1,g=!1;b={sanitize:function(a,b){return"text"===b&&(a=h(a)),a},escape:function(a,b){return"text"===b&&(a=f(a)),a},sanitizeParameters:function(a,b){return"params"===b&&(a=k(a,h)),a},escapeParameters:function(a,b){return"params"===b&&(a=k(a,f)),a}};b.escaped=b.escapeParameters;this.addStrategy=function(a,c){return b[a]=c,this};this.removeStrategy=function(a){return delete b[a], -this};this.useStrategy=function(a){return e=!0,c=a,this};this.$get=["$injector","$log",function(f,h){var k={},m=function(a,c,e){return angular.forEach(e,function(e){if(angular.isFunction(e))a=e(a,c);else if(angular.isFunction(b[e]))a=b[e](a,c);else{if(!angular.isString(b[e]))throw Error("pascalprecht.translate.$translateSanitization: Unknown sanitization strategy: '"+e+"'");if(!k[b[e]])try{k[b[e]]=f.get(b[e])}catch(K){throw k[b[e]]=function(){},Error("pascalprecht.translate.$translateSanitization: Unknown sanitization strategy: '"+ -e+"'");}a=k[b[e]](a,c)}}),a};return f.has("$sanitize")&&(a=f.get("$sanitize")),{useStrategy:function(a){return function(b){a.useStrategy(b)}}(this),sanitize:function(a,b,f){c||e||g||(h.warn("pascalprecht.translate.$translateSanitization: No sanitization strategy has been configured. This can have serious security implications. See http://angular-translate.github.io/docs/#/guide/19_security for details."),g=!0);if(3>arguments.length&&(f=c),!f)return a;var k=angular.isArray(f)?f:[f];return m(a,b,k)}}}]; -var f=function(a){var b=angular.element("
    ");return b.text(a),b.html()},h=function(b){if(!a)throw Error("pascalprecht.translate.$translateSanitization: Error cannot find $sanitize service. Either include the ngSanitize module (https://docs.angularjs.org/api/ngSanitize) or use a sanitization strategy which does not depend on $sanitize, such as 'escape'.");return a(b)},k=function(a,b,c){if(angular.isObject(a)){var e=angular.isArray(a)?[]:{};if(c){if(-1=f.size&&(a._finished=!0,a._end=f.size);var k=f.slice(a._start,a._end||f.size);f=(k.name=f.name,k.ngfName=f.ngfName,a._chunkSize&&(c.append("_chunkSize",a._chunkSize),c.append("_currentChunkSize",a._end-a._start),c.append("_chunkNumber", -Math.floor(a._start/a._chunkSize)),c.append("_totalSize",a._file.size)),k)}k=h.split(",");k[1]&&(f.ngfName=k[1].replace(/^\s+|\s+$/g,""),h=k[0]);a._fileKey=a._fileKey||h;c.append(h,f,f.ngfName||f.name)}else if(angular.isObject(f)){if(f.$$ngfCircularDetection)throw"ngFileUpload: Circular reference in config.data. Make sure specified data for Upload.upload() has no circular reference: "+h;f.$$ngfCircularDetection=!0;try{for(k in f)if(f.hasOwnProperty(k)&&"$$ngfCircularDetection"!==k){var m=null==a.objectKey? -"[i]":a.objectKey;f.length&&-1parseInt(b[1])||parseInt(b[1])===a&&parseInt(b[2])');if(b!==a)for(var c=0;cupload");return c.css("visibility","hidden").css("position","absolute").css("overflow","hidden").css("width","0px").css("height","0px").css("border","none").css("margin","0px").css("padding","0px").attr("tabindex","-1"),e.push({el:b,ref:c}),document.body.appendChild(c.append(a)[0]),a}function t(f){if(b.attr("disabled"))return!1;if(!E("ngfSelectDisabled",a)){var h=u(f);if(null!=h)return h;I(f);try{g()||document.body.contains(K[0])||(e.push({el:b,ref:K.parent()}),document.body.appendChild(K.parent()[0]), -K.bind("change",n))}catch(S){}return c(navigator.userAgent)?setTimeout(function(){K[0].click()},0):K[0].click(),!1}}function u(a){var b=a.changedTouches||a.originalEvent&&a.originalEvent.changedTouches;if("touchstart"===a.type)return N=b?b[0].clientY:0,!0;if((a.stopPropagation(),a.preventDefault(),"touchend"===a.type)&&20b.size)&&(!window.FileAPI||-1===navigator.userAgent.indexOf("MSIE 9")||4E6>b.size)){var c=window.URL||window.webkitURL;if(c&&c.createObjectURL&&!e){var g;try{g=c.createObjectURL(b)}catch(x){return void f(function(){b.$ngfBlobUrl= -"";h.reject()})}f(function(){if(b.$ngfBlobUrl=g,g){h.resolve(g,b);a.blobUrls=a.blobUrls||[];a.blobUrlsTotalSize=a.blobUrlsTotalSize||0;a.blobUrls.push({url:g,size:b.size});a.blobUrlsTotalSize+=b.size||0;for(var e=a.defaults.blobUrlsMaxMemory||268435456,f=a.defaults.blobUrlsMaxQueueSize||200;(a.blobUrlsTotalSize>e||a.blobUrls.length>f)&&1|:\\-]", -"g"),"\\$&")+"$",b=b.replace(/\\\*/g,".*").replace(/\\\?/g,"."))}return{regexp:b,excludes:c}}function c(a,c){null==c||a.$dirty||(a.$setDirty?a.$setDirty():a.$dirty=!0)}return a.validatePattern=function(a,c){if(!c)return!0;var b=h(c),e=!0;b.regexp&&b.regexp.length&&(e=new RegExp(b.regexp,"i"),e=null!=a.type&&e.test(a.type)||null!=a.name&&e.test(a.name));for(var f=b.excludes.length;f--;)var k=new RegExp(b.excludes[f],"i"),e=e&&(null==a.type||k.test(a.type))&&(null==a.name||k.test(a.name));return e}, -a.ratioToFloat=function(a){a=a.toString();var b=a.search(/[x:]/i);return-1c+e});e("pattern",null,a.validatePattern);e("minSize","size.min",function(b,c){return b.size+.1>=a.translateScalars(c)});e("maxSize","size.max",function(b,c){return b.size-.1<=a.translateScalars(c)}); -var q=0;if(e("maxTotalSize",null,function(c,e){return q+=c.size,!(q>a.translateScalars(e))||(b.splice(0,b.length),!1)}),e("validateFn",null,function(a,b){return!0===b||null===b||""===b}),!b.length)return a.emptyPromise(g,g.$ngfValidations);var v=f.defer(),z=[];return z.push(a.happyPromise(m("maxHeight","height.max",/image/,this.imageDimensions,function(a,b){return a.height<=b}))),z.push(a.happyPromise(m("minHeight","height.min",/image/,this.imageDimensions,function(a,b){return a.height>=b}))),z.push(a.happyPromise(m("maxWidth", -"width.max",/image/,this.imageDimensions,function(a,b){return a.width<=b}))),z.push(a.happyPromise(m("minWidth","width.min",/image/,this.imageDimensions,function(a,b){return a.width>=b}))),z.push(a.happyPromise(m("dimensions",null,/image/,function(b,c){return a.emptyPromise(c)},function(a){return a}))),z.push(a.happyPromise(m("ratio",null,/image/,this.imageDimensions,function(b,c){for(var e=c.toString().split(","),f=!1,g=0;gMath.abs(b.width/b.height-a.ratioToFloat(e[g]))&&(f=!0); -return f}))),z.push(a.happyPromise(m("maxRatio","ratio.max",/image/,this.imageDimensions,function(b,c){return 1E-4>b.width/b.height-a.ratioToFloat(c)}))),z.push(a.happyPromise(m("minRatio","ratio.min",/image/,this.imageDimensions,function(b,c){return-1E-4=a.translateScalars(c)}))),z.push(a.happyPromise(m("duration",null,/audio|video/,function(b,c){return a.emptyPromise(c)},function(a){return a}))),z.push(a.happyPromise(m("validateAsyncFn",null,null,function(a,b){return b},function(a){return!0===a||null===a||""===a}))),f.all(z).then(function(){v.resolve(g,g.$ngfValidations)})},a.imageDimensions=function(b){if(b.$ngfWidth&&b.$ngfHeight){var c=f.defer();return k(function(){c.resolve({width:b.$ngfWidth,height:b.$ngfHeight})}),c.promise}if(b.$ngfDimensionPromise)return b.$ngfDimensionPromise; -var g=f.defer();return k(function(){return 0!==b.type.indexOf("image")?void g.reject("not image"):void a.dataUrl(b).then(function(a){function c(){var a=h[0].clientWidth,c=h[0].clientHeight;h.remove();b.$ngfWidth=a;b.$ngfHeight=c;g.resolve({width:a,height:c})}function e(){h.remove();g.reject("load error")}function f(){k(function(){h[0].parentNode&&(h[0].clientWidth?c():10").attr("src",a).css("visibility","hidden").css("position","fixed").css("max-width", -"none !important").css("max-height","none !important");h.on("load",c);h.on("error",e);var r=0;f();angular.element(document.getElementsByTagName("body")[0]).append(h)},function(){g.reject("load error")})}),b.$ngfDimensionPromise=g.promise,b.$ngfDimensionPromise["finally"](function(){delete b.$ngfDimensionPromise}),b.$ngfDimensionPromise},a.mediaDuration=function(b){if(b.$ngfDuration){var c=f.defer();return k(function(){c.resolve(b.$ngfDuration)}),c.promise}if(b.$ngfDurationPromise)return b.$ngfDurationPromise; -var g=f.defer();return k(function(){return 0!==b.type.indexOf("audio")&&0!==b.type.indexOf("video")?void g.reject("not media"):void a.dataUrl(b).then(function(a){function c(){var a=h[0].duration;b.$ngfDuration=a;h.remove();g.resolve(a)}function e(){h.remove();g.reject("load error")}function f(){k(function(){h[0].parentNode&&(h[0].duration?c():10":"