From 49d4ca78a0938150bc45de4d7d6bb19c386db2b1 Mon Sep 17 00:00:00 2001 From: root Date: Thu, 22 Jun 2017 15:48:15 +0300 Subject: [PATCH] First commit --- .DS_Store | Bin 0 -> 10244 bytes .editorconfig | 18 + .gitattributes | 36 + .gitignore | 4 + .htaccess | 5 + .travis.yml | 16 + AdminMappingsTable.php | 74 + README.md | 26 + bin/cake | 40 + bin/cake.bat | 27 + bin/cake.php | 33 + bower_components/bootstrap-toggle/.bower.json | 42 + .../bootstrap-toggle/Gruntfile.js | 37 + bower_components/bootstrap-toggle/LICENSE | 21 + bower_components/bootstrap-toggle/README.md | 175 + bower_components/bootstrap-toggle/bower.json | 32 + .../bootstrap-toggle/css/bootstrap-toggle.css | 83 + .../css/bootstrap-toggle.min.css | 28 + .../css/bootstrap2-toggle.css | 85 + .../css/bootstrap2-toggle.min.css | 28 + .../bootstrap-toggle/doc/header.png | Bin 0 -> 89486 bytes bower_components/bootstrap-toggle/doc/nyt.png | Bin 0 -> 5022 bytes .../bootstrap-toggle/doc/nytdev.svg | 239 + .../bootstrap-toggle/doc/script.js | 49 + .../bootstrap-toggle/doc/stylesheet.css | 112 + bower_components/bootstrap-toggle/index.html | 449 + .../bootstrap-toggle/js/bootstrap-toggle.js | 180 + .../js/bootstrap-toggle.min.js | 9 + .../js/bootstrap-toggle.min.js.map | 1 + .../bootstrap-toggle/js/bootstrap2-toggle.js | 180 + .../js/bootstrap2-toggle.min.js | 9 + .../js/bootstrap2-toggle.min.js.map | 1 + .../bootstrap-toggle/package.json | 28 + bower_components/bootstrap/.bower.json | 45 + bower_components/bootstrap/CHANGELOG.md | 5 + bower_components/bootstrap/Gruntfile.js | 533 + bower_components/bootstrap/LICENSE | 21 + bower_components/bootstrap/README.md | 139 + bower_components/bootstrap/bower.json | 34 + .../bootstrap/dist/css/bootstrap-theme.css | 587 + .../dist/css/bootstrap-theme.css.map | 1 + .../dist/css/bootstrap-theme.min.css | 6 + .../dist/css/bootstrap-theme.min.css.map | 1 + .../bootstrap/dist/css/bootstrap.css | 6760 + .../bootstrap/dist/css/bootstrap.css.map | 1 + .../bootstrap/dist/css/bootstrap.min.css | 6 + .../bootstrap/dist/css/bootstrap.min.css.map | 1 + .../fonts/glyphicons-halflings-regular.eot | Bin 0 -> 20127 bytes .../fonts/glyphicons-halflings-regular.svg | 288 + .../fonts/glyphicons-halflings-regular.ttf | Bin 0 -> 45404 bytes .../fonts/glyphicons-halflings-regular.woff | Bin 0 -> 23424 bytes .../fonts/glyphicons-halflings-regular.woff2 | Bin 0 -> 18028 bytes .../bootstrap/dist/js/bootstrap.js | 2363 + .../bootstrap/dist/js/bootstrap.min.js | 7 + bower_components/bootstrap/dist/js/npm.js | 13 + .../fonts/glyphicons-halflings-regular.eot | Bin 0 -> 20127 bytes .../fonts/glyphicons-halflings-regular.svg | 288 + .../fonts/glyphicons-halflings-regular.ttf | Bin 0 -> 45404 bytes .../fonts/glyphicons-halflings-regular.woff | Bin 0 -> 23424 bytes .../fonts/glyphicons-halflings-regular.woff2 | Bin 0 -> 18028 bytes bower_components/bootstrap/grunt/.jshintrc | 7 + .../bootstrap/grunt/bs-commonjs-generator.js | 30 + .../grunt/bs-glyphicons-data-generator.js | 42 + .../bootstrap/grunt/bs-lessdoc-parser.js | 237 + .../bootstrap/grunt/bs-raw-files-generator.js | 44 + .../bootstrap/grunt/configBridge.json | 46 + .../bootstrap/grunt/sauce_browsers.yml | 82 + bower_components/bootstrap/js/.jscsrc | 42 + bower_components/bootstrap/js/.jshintrc | 15 + bower_components/bootstrap/js/affix.js | 162 + bower_components/bootstrap/js/alert.js | 94 + bower_components/bootstrap/js/button.js | 120 + bower_components/bootstrap/js/carousel.js | 237 + bower_components/bootstrap/js/collapse.js | 211 + bower_components/bootstrap/js/dropdown.js | 165 + bower_components/bootstrap/js/modal.js | 337 + bower_components/bootstrap/js/popover.js | 108 + bower_components/bootstrap/js/scrollspy.js | 172 + bower_components/bootstrap/js/tab.js | 155 + bower_components/bootstrap/js/tooltip.js | 514 + bower_components/bootstrap/js/transition.js | 59 + bower_components/bootstrap/less/.csscomb.json | 304 + bower_components/bootstrap/less/.csslintrc | 19 + bower_components/bootstrap/less/alerts.less | 73 + bower_components/bootstrap/less/badges.less | 66 + .../bootstrap/less/bootstrap.less | 56 + .../bootstrap/less/breadcrumbs.less | 26 + .../bootstrap/less/button-groups.less | 244 + bower_components/bootstrap/less/buttons.less | 166 + bower_components/bootstrap/less/carousel.less | 270 + bower_components/bootstrap/less/close.less | 34 + bower_components/bootstrap/less/code.less | 69 + .../bootstrap/less/component-animations.less | 33 + .../bootstrap/less/dropdowns.less | 216 + bower_components/bootstrap/less/forms.less | 613 + .../bootstrap/less/glyphicons.less | 305 + bower_components/bootstrap/less/grid.less | 84 + .../bootstrap/less/input-groups.less | 171 + .../bootstrap/less/jumbotron.less | 54 + bower_components/bootstrap/less/labels.less | 64 + .../bootstrap/less/list-group.less | 130 + bower_components/bootstrap/less/media.less | 66 + bower_components/bootstrap/less/mixins.less | 40 + .../bootstrap/less/mixins/alerts.less | 14 + .../less/mixins/background-variant.less | 9 + .../bootstrap/less/mixins/border-radius.less | 18 + .../bootstrap/less/mixins/buttons.less | 65 + .../bootstrap/less/mixins/center-block.less | 7 + .../bootstrap/less/mixins/clearfix.less | 22 + .../bootstrap/less/mixins/forms.less | 85 + .../bootstrap/less/mixins/gradients.less | 59 + .../bootstrap/less/mixins/grid-framework.less | 91 + .../bootstrap/less/mixins/grid.less | 122 + .../bootstrap/less/mixins/hide-text.less | 21 + .../bootstrap/less/mixins/image.less | 33 + .../bootstrap/less/mixins/labels.less | 12 + .../bootstrap/less/mixins/list-group.less | 30 + .../bootstrap/less/mixins/nav-divider.less | 10 + .../less/mixins/nav-vertical-align.less | 9 + .../bootstrap/less/mixins/opacity.less | 8 + .../bootstrap/less/mixins/pagination.less | 24 + .../bootstrap/less/mixins/panels.less | 24 + .../bootstrap/less/mixins/progress-bar.less | 10 + .../bootstrap/less/mixins/reset-filter.less | 8 + .../bootstrap/less/mixins/reset-text.less | 18 + .../bootstrap/less/mixins/resize.less | 6 + .../less/mixins/responsive-visibility.less | 15 + .../bootstrap/less/mixins/size.less | 10 + .../bootstrap/less/mixins/tab-focus.less | 9 + .../bootstrap/less/mixins/table-row.less | 28 + .../bootstrap/less/mixins/text-emphasis.less | 9 + .../bootstrap/less/mixins/text-overflow.less | 8 + .../less/mixins/vendor-prefixes.less | 227 + bower_components/bootstrap/less/modals.less | 150 + bower_components/bootstrap/less/navbar.less | 660 + bower_components/bootstrap/less/navs.less | 242 + .../bootstrap/less/normalize.less | 424 + bower_components/bootstrap/less/pager.less | 54 + .../bootstrap/less/pagination.less | 89 + bower_components/bootstrap/less/panels.less | 271 + bower_components/bootstrap/less/popovers.less | 131 + bower_components/bootstrap/less/print.less | 101 + .../bootstrap/less/progress-bars.less | 87 + .../bootstrap/less/responsive-embed.less | 35 + .../bootstrap/less/responsive-utilities.less | 194 + .../bootstrap/less/scaffolding.less | 161 + bower_components/bootstrap/less/tables.less | 234 + bower_components/bootstrap/less/theme.less | 291 + .../bootstrap/less/thumbnails.less | 36 + bower_components/bootstrap/less/tooltip.less | 101 + bower_components/bootstrap/less/type.less | 302 + .../bootstrap/less/utilities.less | 55 + .../bootstrap/less/variables.less | 869 + bower_components/bootstrap/less/wells.less | 29 + bower_components/bootstrap/nuget/MyGet.ps1 | 8 + .../bootstrap/nuget/bootstrap.less.nuspec | 28 + .../bootstrap/nuget/bootstrap.nuspec | 28 + bower_components/bootstrap/package.js | 32 + bower_components/bootstrap/package.json | 87 + .../.bower.json | 45 + .../CONTRIBUTING.md | 38 + .../Gruntfile.js | 191 + .../eonasdan-bootstrap-datetimepicker/LICENSE | 21 + .../README.md | 37 + .../bower.json | 35 + .../bootstrap-datetimepicker-standalone.css | 103 + .../build/css/bootstrap-datetimepicker.css | 373 + .../css/bootstrap-datetimepicker.min.css | 5 + .../build/js/bootstrap-datetimepicker.min.js | 9 + .../component.json | 9 + .../composer.json | 28 + .../docs/ChangeLog.md | 222 + .../docs/ContributorsGuide.md | 126 + .../docs/Events.md | 96 + .../docs/Extras.md | 95 + .../docs/FAQ.md | 22 + .../docs/Functions.md | 670 + .../docs/Installing.md | 161 + .../docs/Options.md | 473 + .../docs/Version 4 Changelog.md | 6 + .../docs/Version 4 Contributors guide.md | 6 + .../docs/index.md | 592 + .../mkdocs.yml | 17 + .../package.json | 43 + .../src/js/bootstrap-datetimepicker.js | 2552 + .../src/less/_bootstrap-datetimepicker.less | 352 + .../less/bootstrap-datetimepicker-build.less | 17 + .../Bootstrap.v3.Datetimepicker.CSS.nuspec | 34 + .../nuget/Bootstrap.v3.Datetimepicker.nuspec | 34 + .../src/nuget/NuGet.exe | Bin 0 -> 1662976 bytes .../src/nuget/install.ps1 | 2 + .../src/sass/_bootstrap-datetimepicker.scss | 343 + .../sass/bootstrap-datetimepicker-build.scss | 16 + .../tasks/bump_version.js | 88 + bower_components/font-awesome/.bower.json | 37 + bower_components/font-awesome/.gitignore | 33 + bower_components/font-awesome/.npmignore | 42 + bower_components/font-awesome/HELP-US-OUT.txt | 7 + bower_components/font-awesome/bower.json | 22 + .../font-awesome/css/font-awesome.css | 2086 + .../font-awesome/css/font-awesome.css.map | 7 + .../font-awesome/css/font-awesome.min.css | 4 + .../font-awesome/fonts/FontAwesome.otf | Bin 0 -> 109688 bytes .../fonts/fontawesome-webfont.eot | Bin 0 -> 70807 bytes .../fonts/fontawesome-webfont.svg | 655 + .../fonts/fontawesome-webfont.ttf | Bin 0 -> 142072 bytes .../fonts/fontawesome-webfont.woff | Bin 0 -> 83588 bytes .../fonts/fontawesome-webfont.woff2 | Bin 0 -> 66624 bytes .../font-awesome/less/animated.less | 34 + .../font-awesome/less/bordered-pulled.less | 25 + bower_components/font-awesome/less/core.less | 12 + .../font-awesome/less/fixed-width.less | 6 + .../font-awesome/less/font-awesome.less | 17 + bower_components/font-awesome/less/icons.less | 697 + .../font-awesome/less/larger.less | 13 + bower_components/font-awesome/less/list.less | 19 + .../font-awesome/less/mixins.less | 26 + bower_components/font-awesome/less/path.less | 15 + .../font-awesome/less/rotated-flipped.less | 20 + .../font-awesome/less/stacked.less | 20 + .../font-awesome/less/variables.less | 708 + .../font-awesome/scss/_animated.scss | 34 + .../font-awesome/scss/_bordered-pulled.scss | 25 + bower_components/font-awesome/scss/_core.scss | 12 + .../font-awesome/scss/_fixed-width.scss | 6 + .../font-awesome/scss/_icons.scss | 697 + .../font-awesome/scss/_larger.scss | 13 + bower_components/font-awesome/scss/_list.scss | 19 + .../font-awesome/scss/_mixins.scss | 26 + bower_components/font-awesome/scss/_path.scss | 15 + .../font-awesome/scss/_rotated-flipped.scss | 20 + .../font-awesome/scss/_stacked.scss | 20 + .../font-awesome/scss/_variables.scss | 708 + .../font-awesome/scss/font-awesome.scss | 17 + bower_components/jquery/.bower.json | 25 + bower_components/jquery/AUTHORS.txt | 278 + bower_components/jquery/LICENSE.txt | 36 + bower_components/jquery/README.md | 65 + bower_components/jquery/bower.json | 14 + bower_components/jquery/dist/jquery.js | 9831 ++ bower_components/jquery/dist/jquery.min.js | 4 + bower_components/jquery/dist/jquery.min.map | 1 + bower_components/jquery/dist/jquery.slim.js | 7877 + .../jquery/dist/jquery.slim.min.js | 4 + .../jquery/dist/jquery.slim.min.map | 1 + bower_components/jquery/src/.jshintrc | 29 + bower_components/jquery/src/ajax.js | 845 + bower_components/jquery/src/ajax/jsonp.js | 100 + bower_components/jquery/src/ajax/load.js | 83 + bower_components/jquery/src/ajax/parseJSON.js | 13 + bower_components/jquery/src/ajax/parseXML.js | 27 + bower_components/jquery/src/ajax/script.js | 68 + .../jquery/src/ajax/var/location.js | 3 + bower_components/jquery/src/ajax/var/nonce.js | 5 + .../jquery/src/ajax/var/rquery.js | 3 + bower_components/jquery/src/ajax/xhr.js | 167 + bower_components/jquery/src/attributes.js | 11 + .../jquery/src/attributes/attr.js | 142 + .../jquery/src/attributes/classes.js | 177 + .../jquery/src/attributes/prop.js | 109 + .../jquery/src/attributes/support.js | 36 + bower_components/jquery/src/attributes/val.js | 170 + bower_components/jquery/src/callbacks.js | 232 + bower_components/jquery/src/core.js | 489 + bower_components/jquery/src/core/DOMEval.js | 14 + bower_components/jquery/src/core/access.js | 65 + bower_components/jquery/src/core/init.js | 134 + bower_components/jquery/src/core/parseHTML.js | 49 + bower_components/jquery/src/core/ready.js | 103 + bower_components/jquery/src/core/support.js | 18 + .../jquery/src/core/var/rsingleTag.js | 5 + bower_components/jquery/src/css.js | 515 + .../jquery/src/css/addGetHookIf.js | 24 + bower_components/jquery/src/css/adjustCSS.js | 65 + bower_components/jquery/src/css/curCSS.js | 60 + .../jquery/src/css/defaultDisplay.js | 72 + .../jquery/src/css/hiddenVisibleSelectors.js | 18 + bower_components/jquery/src/css/showHide.js | 48 + bower_components/jquery/src/css/support.js | 121 + .../jquery/src/css/var/cssExpand.js | 3 + .../jquery/src/css/var/getStyles.js | 15 + .../jquery/src/css/var/isHidden.js | 16 + .../jquery/src/css/var/rmargin.js | 3 + .../jquery/src/css/var/rnumnonpx.js | 5 + bower_components/jquery/src/css/var/swap.js | 24 + bower_components/jquery/src/data.js | 187 + bower_components/jquery/src/data/Data.js | 200 + bower_components/jquery/src/data/accepts.js | 20 + bower_components/jquery/src/data/support.js | 23 + .../jquery/src/data/var/acceptData.js | 18 + .../jquery/src/data/var/dataPriv.js | 5 + .../jquery/src/data/var/dataUser.js | 5 + bower_components/jquery/src/deferred.js | 158 + .../jquery/src/deferred/exceptionHook.js | 19 + bower_components/jquery/src/deprecated.js | 32 + bower_components/jquery/src/dimensions.js | 54 + bower_components/jquery/src/effects.js | 629 + bower_components/jquery/src/effects/Tween.js | 121 + .../jquery/src/effects/animatedSelector.js | 13 + .../jquery/src/effects/support.js | 58 + bower_components/jquery/src/event.js | 710 + bower_components/jquery/src/event/ajax.js | 20 + bower_components/jquery/src/event/alias.js | 27 + bower_components/jquery/src/event/focusin.js | 53 + bower_components/jquery/src/event/support.js | 9 + bower_components/jquery/src/event/trigger.js | 199 + bower_components/jquery/src/exports/amd.js | 24 + bower_components/jquery/src/exports/global.js | 26 + bower_components/jquery/src/intro.js | 44 + bower_components/jquery/src/jquery.js | 37 + bower_components/jquery/src/manipulation.js | 481 + .../jquery/src/manipulation/_evalUrl.js | 20 + .../jquery/src/manipulation/buildFragment.js | 102 + .../src/manipulation/createSafeFragment.js | 20 + .../jquery/src/manipulation/getAll.js | 21 + .../jquery/src/manipulation/setGlobalEval.js | 20 + .../jquery/src/manipulation/support.js | 33 + .../jquery/src/manipulation/var/nodeNames.js | 5 + .../src/manipulation/var/rcheckableType.js | 3 + .../manipulation/var/rleadingWhitespace.js | 3 + .../src/manipulation/var/rscriptType.js | 3 + .../jquery/src/manipulation/var/rtagName.js | 3 + .../jquery/src/manipulation/wrapMap.js | 27 + bower_components/jquery/src/offset.js | 218 + bower_components/jquery/src/outro.js | 2 + bower_components/jquery/src/queue.js | 143 + bower_components/jquery/src/queue/delay.js | 22 + .../jquery/src/selector-native.js | 211 + .../jquery/src/selector-sizzle.js | 14 + bower_components/jquery/src/selector.js | 1 + bower_components/jquery/src/serialize.js | 125 + bower_components/jquery/src/support.js | 63 + bower_components/jquery/src/traversing.js | 175 + .../jquery/src/traversing/findFilter.js | 100 + .../jquery/src/traversing/var/dir.js | 20 + .../src/traversing/var/rneedsContext.js | 6 + .../jquery/src/traversing/var/siblings.js | 15 + bower_components/jquery/src/var/arr.js | 3 + bower_components/jquery/src/var/class2type.js | 5 + bower_components/jquery/src/var/concat.js | 5 + bower_components/jquery/src/var/deletedIds.js | 3 + bower_components/jquery/src/var/document.js | 3 + .../jquery/src/var/documentElement.js | 5 + bower_components/jquery/src/var/hasOwn.js | 5 + bower_components/jquery/src/var/indexOf.js | 5 + bower_components/jquery/src/var/pnum.js | 3 + bower_components/jquery/src/var/push.js | 5 + bower_components/jquery/src/var/rcssNum.js | 7 + bower_components/jquery/src/var/rnotwhite.js | 3 + bower_components/jquery/src/var/slice.js | 5 + bower_components/jquery/src/var/support.js | 5 + bower_components/jquery/src/var/toString.js | 5 + bower_components/jquery/src/wrap.js | 79 + bower_components/moment-timezone/.bower.json | 29 + bower_components/moment-timezone/LICENSE | 20 + bower_components/moment-timezone/README.md | 36 + bower_components/moment-timezone/bower.json | 18 + .../moment-timezone-with-data-2010-2020.js | 1192 + ...moment-timezone-with-data-2010-2020.min.js | 7 + .../builds/moment-timezone-with-data.js | 1192 + .../builds/moment-timezone-with-data.min.js | 7 + .../builds/moment-timezone.min.js | 6 + bower_components/moment-timezone/changelog.md | 106 + .../moment-timezone/composer.json | 43 + .../moment-timezone/data/meta/latest.json | 5042 + .../moment-timezone/data/packed/latest.json | 593 + .../moment-timezone/data/unpacked/latest.json | 125092 +++++++++++++++ .../moment-timezone/moment-timezone-utils.js | 316 + .../moment-timezone/moment-timezone.js | 599 + bower_components/moment/.bower.json | 33 + bower_components/moment/CHANGELOG.md | 514 + bower_components/moment/LICENSE | 22 + bower_components/moment/README.md | 58 + bower_components/moment/bower.json | 22 + bower_components/moment/locale/af.js | 73 + bower_components/moment/locale/ar-ma.js | 59 + bower_components/moment/locale/ar-sa.js | 103 + bower_components/moment/locale/ar-tn.js | 57 + bower_components/moment/locale/ar.js | 136 + bower_components/moment/locale/az.js | 104 + bower_components/moment/locale/be.js | 134 + bower_components/moment/locale/bg.js | 90 + bower_components/moment/locale/bn.js | 119 + bower_components/moment/locale/bo.js | 119 + bower_components/moment/locale/br.js | 107 + bower_components/moment/locale/bs.js | 141 + bower_components/moment/locale/ca.js | 79 + bower_components/moment/locale/cs.js | 171 + bower_components/moment/locale/cv.js | 63 + bower_components/moment/locale/cy.js | 79 + bower_components/moment/locale/da.js | 60 + bower_components/moment/locale/de-at.js | 77 + bower_components/moment/locale/de.js | 76 + bower_components/moment/locale/dv.js | 99 + bower_components/moment/locale/el.js | 98 + bower_components/moment/locale/en-au.js | 66 + bower_components/moment/locale/en-ca.js | 63 + bower_components/moment/locale/en-gb.js | 67 + bower_components/moment/locale/en-ie.js | 67 + bower_components/moment/locale/en-nz.js | 66 + bower_components/moment/locale/eo.js | 73 + bower_components/moment/locale/es.js | 79 + bower_components/moment/locale/et.js | 80 + bower_components/moment/locale/eu.js | 64 + bower_components/moment/locale/fa.js | 105 + bower_components/moment/locale/fi.js | 107 + bower_components/moment/locale/fo.js | 60 + bower_components/moment/locale/fr-ca.js | 58 + bower_components/moment/locale/fr-ch.js | 62 + bower_components/moment/locale/fr.js | 62 + bower_components/moment/locale/fy.js | 71 + bower_components/moment/locale/gd.js | 76 + bower_components/moment/locale/gl.js | 75 + bower_components/moment/locale/he.js | 99 + bower_components/moment/locale/hi.js | 123 + bower_components/moment/locale/hr.js | 143 + bower_components/moment/locale/hu.js | 109 + bower_components/moment/locale/hy-am.js | 95 + bower_components/moment/locale/id.js | 83 + bower_components/moment/locale/is.js | 127 + bower_components/moment/locale/it.js | 70 + bower_components/moment/locale/ja.js | 76 + bower_components/moment/locale/jv.js | 83 + bower_components/moment/locale/ka.js | 89 + bower_components/moment/locale/kk.js | 87 + bower_components/moment/locale/km.js | 58 + bower_components/moment/locale/ko.js | 68 + bower_components/moment/locale/lb.js | 134 + bower_components/moment/locale/lo.js | 69 + bower_components/moment/locale/lt.js | 115 + bower_components/moment/locale/lv.js | 96 + bower_components/moment/locale/me.js | 109 + bower_components/moment/locale/mk.js | 90 + bower_components/moment/locale/ml.js | 80 + bower_components/moment/locale/mr.js | 158 + bower_components/moment/locale/ms-my.js | 82 + bower_components/moment/locale/ms.js | 82 + bower_components/moment/locale/my.js | 93 + bower_components/moment/locale/nb.js | 61 + bower_components/moment/locale/ne.js | 121 + bower_components/moment/locale/nl.js | 71 + bower_components/moment/locale/nn.js | 60 + bower_components/moment/locale/pa-in.js | 124 + bower_components/moment/locale/pl.js | 105 + bower_components/moment/locale/pt-br.js | 60 + bower_components/moment/locale/pt.js | 64 + bower_components/moment/locale/ro.js | 74 + bower_components/moment/locale/ru.js | 168 + bower_components/moment/locale/se.js | 61 + bower_components/moment/locale/si.js | 70 + bower_components/moment/locale/sk.js | 150 + bower_components/moment/locale/sl.js | 160 + bower_components/moment/locale/sq.js | 69 + bower_components/moment/locale/sr-cyrl.js | 108 + bower_components/moment/locale/sr.js | 108 + bower_components/moment/locale/sv.js | 67 + bower_components/moment/locale/sw.js | 58 + bower_components/moment/locale/ta.js | 129 + bower_components/moment/locale/te.js | 88 + bower_components/moment/locale/th.js | 65 + bower_components/moment/locale/tl-ph.js | 62 + bower_components/moment/locale/tlh.js | 119 + bower_components/moment/locale/tr.js | 90 + bower_components/moment/locale/tzl.js | 91 + bower_components/moment/locale/tzm-latn.js | 58 + bower_components/moment/locale/tzm.js | 58 + bower_components/moment/locale/uk.js | 146 + bower_components/moment/locale/uz.js | 58 + bower_components/moment/locale/vi.js | 77 + bower_components/moment/locale/zh-cn.js | 127 + bower_components/moment/locale/zh-tw.js | 101 + bower_components/moment/min/locales.js | 7734 + bower_components/moment/min/locales.min.js | 73 + .../moment/min/moment-with-locales.js | 11412 ++ .../moment/min/moment-with-locales.min.js | 75 + bower_components/moment/min/moment.min.js | 7 + bower_components/moment/min/tests.js | 52664 ++++++ bower_components/moment/moment.js | 3688 + .../moment/src/lib/create/check-overflow.js | 34 + .../moment/src/lib/create/date-from-array.js | 21 + .../moment/src/lib/create/from-anything.js | 101 + .../moment/src/lib/create/from-array.js | 136 + .../moment/src/lib/create/from-object.js | 16 + .../src/lib/create/from-string-and-array.js | 50 + .../src/lib/create/from-string-and-format.js | 104 + .../moment/src/lib/create/from-string.js | 120 + .../moment/src/lib/create/local.js | 5 + .../moment/src/lib/create/parsing-flags.js | 22 + bower_components/moment/src/lib/create/utc.js | 5 + .../moment/src/lib/create/valid.js | 37 + .../moment/src/lib/duration/abs.js | 18 + .../moment/src/lib/duration/add-subtract.js | 21 + .../moment/src/lib/duration/as.js | 55 + .../moment/src/lib/duration/bubble.js | 61 + .../moment/src/lib/duration/constructor.js | 41 + .../moment/src/lib/duration/create.js | 118 + .../moment/src/lib/duration/duration.js | 12 + .../moment/src/lib/duration/get.js | 25 + .../moment/src/lib/duration/humanize.js | 64 + .../moment/src/lib/duration/iso-string.js | 52 + .../moment/src/lib/duration/prototype.js | 48 + .../moment/src/lib/format/format.js | 92 + .../moment/src/lib/locale/calendar.js | 15 + .../moment/src/lib/locale/constructor.js | 5 + bower_components/moment/src/lib/locale/en.js | 15 + .../moment/src/lib/locale/formats.js | 23 + .../moment/src/lib/locale/invalid.js | 5 + .../moment/src/lib/locale/lists.js | 48 + .../moment/src/lib/locale/locale.js | 39 + .../moment/src/lib/locale/locales.js | 163 + .../moment/src/lib/locale/ordinal.js | 7 + .../moment/src/lib/locale/pre-post-format.js | 3 + .../moment/src/lib/locale/prototype.js | 76 + .../moment/src/lib/locale/relative.js | 29 + bower_components/moment/src/lib/locale/set.js | 38 + .../moment/src/lib/moment/add-subtract.js | 54 + .../moment/src/lib/moment/calendar.js | 21 + .../moment/src/lib/moment/clone.js | 5 + .../moment/src/lib/moment/compare.js | 57 + .../moment/src/lib/moment/constructor.js | 74 + .../moment/src/lib/moment/creation-data.js | 9 + .../moment/src/lib/moment/diff.js | 61 + .../moment/src/lib/moment/format.js | 28 + .../moment/src/lib/moment/from.js | 17 + .../moment/src/lib/moment/get-set.js | 43 + .../moment/src/lib/moment/locale.js | 34 + .../moment/src/lib/moment/min-max.js | 63 + .../moment/src/lib/moment/moment.js | 28 + bower_components/moment/src/lib/moment/now.js | 3 + .../moment/src/lib/moment/prototype.js | 149 + .../moment/src/lib/moment/start-end-of.js | 52 + .../moment/src/lib/moment/to-type.js | 34 + bower_components/moment/src/lib/moment/to.js | 17 + .../moment/src/lib/moment/valid.js | 15 + .../moment/src/lib/parse/regex.js | 54 + .../moment/src/lib/parse/token.js | 32 + .../moment/src/lib/units/aliases.js | 29 + .../moment/src/lib/units/constants.js | 9 + .../moment/src/lib/units/day-of-month.js | 32 + .../moment/src/lib/units/day-of-week.js | 162 + .../moment/src/lib/units/day-of-year.js | 32 + bower_components/moment/src/lib/units/hour.js | 129 + .../moment/src/lib/units/millisecond.js | 64 + .../moment/src/lib/units/minute.js | 24 + .../moment/src/lib/units/month.js | 212 + .../moment/src/lib/units/offset.js | 219 + .../moment/src/lib/units/quarter.js | 27 + .../moment/src/lib/units/second.js | 24 + .../moment/src/lib/units/timestamp.js | 20 + .../moment/src/lib/units/timezone.js | 16 + .../moment/src/lib/units/units.js | 20 + .../src/lib/units/week-calendar-utils.js | 65 + .../moment/src/lib/units/week-year.js | 100 + bower_components/moment/src/lib/units/week.js | 61 + bower_components/moment/src/lib/units/year.js | 70 + .../moment/src/lib/utils/abs-ceil.js | 7 + .../moment/src/lib/utils/abs-floor.js | 7 + .../moment/src/lib/utils/abs-round.js | 7 + .../moment/src/lib/utils/compare-arrays.js | 16 + .../moment/src/lib/utils/defaults.js | 10 + .../moment/src/lib/utils/deprecate.js | 33 + .../moment/src/lib/utils/extend.js | 19 + .../moment/src/lib/utils/has-own-prop.js | 3 + .../moment/src/lib/utils/hooks.js | 13 + .../moment/src/lib/utils/is-array.js | 3 + .../moment/src/lib/utils/is-date.js | 3 + .../moment/src/lib/utils/is-function.js | 3 + .../moment/src/lib/utils/is-object.js | 3 + .../moment/src/lib/utils/is-undefined.js | 3 + bower_components/moment/src/lib/utils/map.js | 7 + .../moment/src/lib/utils/to-int.js | 12 + .../moment/src/lib/utils/zero-fill.js | 7 + bower_components/moment/src/locale/af.js | 63 + bower_components/moment/src/locale/ar-ma.js | 50 + bower_components/moment/src/locale/ar-sa.js | 94 + bower_components/moment/src/locale/ar-tn.js | 48 + bower_components/moment/src/locale/ar.js | 127 + bower_components/moment/src/locale/az.js | 95 + bower_components/moment/src/locale/be.js | 125 + bower_components/moment/src/locale/bg.js | 81 + bower_components/moment/src/locale/bn.js | 110 + bower_components/moment/src/locale/bo.js | 110 + bower_components/moment/src/locale/br.js | 98 + bower_components/moment/src/locale/bs.js | 132 + bower_components/moment/src/locale/ca.js | 70 + bower_components/moment/src/locale/cs.js | 162 + bower_components/moment/src/locale/cv.js | 53 + bower_components/moment/src/locale/cy.js | 70 + bower_components/moment/src/locale/da.js | 51 + bower_components/moment/src/locale/de-at.js | 67 + bower_components/moment/src/locale/de.js | 66 + bower_components/moment/src/locale/dv.js | 89 + bower_components/moment/src/locale/el.js | 86 + bower_components/moment/src/locale/en-au.js | 57 + bower_components/moment/src/locale/en-ca.js | 53 + bower_components/moment/src/locale/en-gb.js | 58 + bower_components/moment/src/locale/en-ie.js | 58 + bower_components/moment/src/locale/en-nz.js | 56 + bower_components/moment/src/locale/eo.js | 64 + bower_components/moment/src/locale/es.js | 70 + bower_components/moment/src/locale/et.js | 71 + bower_components/moment/src/locale/eu.js | 55 + bower_components/moment/src/locale/fa.js | 96 + bower_components/moment/src/locale/fi.js | 98 + bower_components/moment/src/locale/fo.js | 51 + bower_components/moment/src/locale/fr-ca.js | 49 + bower_components/moment/src/locale/fr-ch.js | 53 + bower_components/moment/src/locale/fr.js | 53 + bower_components/moment/src/locale/fy.js | 62 + bower_components/moment/src/locale/gd.js | 67 + bower_components/moment/src/locale/gl.js | 66 + bower_components/moment/src/locale/he.js | 90 + bower_components/moment/src/locale/hi.js | 114 + bower_components/moment/src/locale/hr.js | 134 + bower_components/moment/src/locale/hu.js | 100 + bower_components/moment/src/locale/hy-am.js | 86 + bower_components/moment/src/locale/id.js | 74 + bower_components/moment/src/locale/is.js | 118 + bower_components/moment/src/locale/it.js | 61 + bower_components/moment/src/locale/ja.js | 67 + bower_components/moment/src/locale/jv.js | 73 + bower_components/moment/src/locale/ka.js | 80 + bower_components/moment/src/locale/kk.js | 77 + bower_components/moment/src/locale/km.js | 49 + bower_components/moment/src/locale/ko.js | 59 + bower_components/moment/src/locale/lb.js | 125 + bower_components/moment/src/locale/lo.js | 60 + bower_components/moment/src/locale/lt.js | 106 + bower_components/moment/src/locale/lv.js | 87 + bower_components/moment/src/locale/me.js | 99 + bower_components/moment/src/locale/mk.js | 81 + bower_components/moment/src/locale/ml.js | 71 + bower_components/moment/src/locale/mr.js | 149 + bower_components/moment/src/locale/ms-my.js | 73 + bower_components/moment/src/locale/ms.js | 73 + bower_components/moment/src/locale/my.js | 84 + bower_components/moment/src/locale/nb.js | 52 + bower_components/moment/src/locale/ne.js | 112 + bower_components/moment/src/locale/nl.js | 62 + bower_components/moment/src/locale/nn.js | 51 + bower_components/moment/src/locale/pa-in.js | 115 + bower_components/moment/src/locale/pl.js | 95 + bower_components/moment/src/locale/pt-br.js | 51 + bower_components/moment/src/locale/pt.js | 55 + bower_components/moment/src/locale/ro.js | 65 + bower_components/moment/src/locale/ru.js | 158 + bower_components/moment/src/locale/se.js | 51 + bower_components/moment/src/locale/si.js | 60 + bower_components/moment/src/locale/sk.js | 141 + bower_components/moment/src/locale/sl.js | 150 + bower_components/moment/src/locale/sq.js | 60 + bower_components/moment/src/locale/sr-cyrl.js | 99 + bower_components/moment/src/locale/sr.js | 99 + bower_components/moment/src/locale/sv.js | 58 + bower_components/moment/src/locale/sw.js | 49 + bower_components/moment/src/locale/ta.js | 120 + bower_components/moment/src/locale/te.js | 78 + bower_components/moment/src/locale/th.js | 56 + bower_components/moment/src/locale/tl-ph.js | 53 + bower_components/moment/src/locale/tlh.js | 109 + bower_components/moment/src/locale/tr.js | 81 + bower_components/moment/src/locale/tzl.js | 82 + .../moment/src/locale/tzm-latn.js | 49 + bower_components/moment/src/locale/tzm.js | 49 + bower_components/moment/src/locale/uk.js | 137 + bower_components/moment/src/locale/uz.js | 49 + bower_components/moment/src/locale/vi.js | 68 + bower_components/moment/src/locale/zh-cn.js | 118 + bower_components/moment/src/locale/zh-tw.js | 91 + bower_components/moment/src/moment.js | 75 + .../moment/templates/amd-named.js | 7 + bower_components/moment/templates/amd.js | 7 + bower_components/moment/templates/default.js | 5 + bower_components/moment/templates/globals.js | 5 + .../moment/templates/locale-header.js | 6 + .../moment/templates/test-header.js | 6 + components/require-built.js | 15566 ++ components/require.config.js | 21 + components/require.css | 0 components/require.js | 2041 + composer.json | 50 + composer.lock | 2362 + config/._version.txt | Bin 0 -> 4096 bytes config/app.default.php | 342 + config/bootstrap.php | 222 + config/bootstrap_cli.php | 36 + config/paths.php | 85 + config/permissions copy.php | 79 + config/permissions.php | 79 + config/routes.php | 83 + config/schema/i18n.sql | 18 + config/schema/sessions.sql | 13 + config/users.php | 148 + config/version.txt | 2 + index.php | 16 + phpunit.xml.dist | 40 + plugins/GoogleCharts | 1 + plugins/empty | 0 src/.DS_Store | Bin 0 -> 6148 bytes src/Console/Installer.php | 192 + src/Controller/.DS_Store | Bin 0 -> 6148 bytes src/Controller/AccountsController.php | 110 + src/Controller/AliasController.php | 173 + src/Controller/AliasDomainController.php | 163 + src/Controller/AppController.php | 82 + src/Controller/Component/GlobalComponent.php | 54 + src/Controller/Component/empty | 0 src/Controller/DomainController.php | 224 + src/Controller/MailboxController.php | 238 + src/Controller/PagesController.php | 65 + src/Controller/Quota2Controller.php | 108 + .../RecipientBccDomainController.php | 108 + src/Controller/RecipientBccUserController.php | 108 + src/Controller/SenderBccDomainController.php | 108 + src/Controller/SenderBccUserController.php | 108 + src/Controller/ShardsController.php | 131 + src/Model/Behavior/empty | 0 src/Model/Entity/.DS_Store | Bin 0 -> 6148 bytes src/Model/Entity/Account.php | 32 + src/Model/Entity/AccountMapping.php | 34 + src/Model/Entity/Admin.php | 42 + src/Model/Entity/AdminMapping.php | 33 + src/Model/Entity/Alias.php | 32 + src/Model/Entity/AliasDomain.php | 31 + src/Model/Entity/Domain.php | 38 + src/Model/Entity/Mailbox.php | 70 + src/Model/Entity/Quota2.php | 29 + src/Model/Entity/RecipientBccDomain.php | 32 + src/Model/Entity/RecipientBccUser.php | 33 + src/Model/Entity/SenderBccDomain.php | 32 + src/Model/Entity/SenderBccUser.php | 33 + src/Model/Entity/Shard.php | 33 + src/Model/Table/.DS_Store | Bin 0 -> 6148 bytes src/Model/Table/AccountsTable.php | 63 + src/Model/Table/AliasDomainTable.php | 97 + src/Model/Table/AliasTable.php | 165 + src/Model/Table/DomainTable.php | 187 + src/Model/Table/MailboxTable.php | 213 + src/Model/Table/Quota2Table.php | 93 + src/Model/Table/RecipientBccDomainTable.php | 67 + src/Model/Table/RecipientBccUserTable.php | 84 + src/Model/Table/SenderBccDomainTable.php | 66 + src/Model/Table/SenderBccUserTable.php | 84 + src/Model/Table/ShardsTable.php | 95 + src/Shell/ConsoleShell.php | 79 + src/Template/.DS_Store | Bin 0 -> 6148 bytes src/Template/Accounts/add.ctp | 49 + src/Template/Accounts/edit.ctp | 53 + src/Template/Accounts/index.ctp | 44 + src/Template/Accounts/view.ctp | 74 + src/Template/Alias/add.ctp | 57 + src/Template/Alias/edit.ctp | 50 + src/Template/Alias/forward.ctp | 61 + src/Template/Alias/index.ctp | 42 + src/Template/AliasDomain/add.ctp | 45 + src/Template/AliasDomain/edit.ctp | 40 + src/Template/AliasDomain/index.ctp | 46 + src/Template/Domain/.DS_Store | Bin 0 -> 6148 bytes src/Template/Domain/._dashboard.ctp | Bin 0 -> 4096 bytes src/Template/Domain/add.ctp | 81 + src/Template/Domain/dashboard.ctp | 91 + src/Template/Domain/edit.ctp | 83 + src/Template/Domain/view.ctp | 86 + src/Template/Element/._delete.ctp | Bin 0 -> 4096 bytes src/Template/Element/._edit.ctp | Bin 0 -> 4096 bytes src/Template/Element/._save.ctp | Bin 0 -> 4096 bytes src/Template/Element/Flash/default.ctp | 13 + src/Template/Element/Flash/error.ctp | 3 + src/Template/Element/Flash/success.ctp | 3 + src/Template/Element/create.ctp | 1 + src/Template/Element/delete.ctp | 1 + src/Template/Element/delete_no_var.ctp | 1 + src/Template/Element/delete_with_plugin.ctp | 1 + src/Template/Element/edit.ctp | 1 + src/Template/Element/edit_no_var.ctp | 1 + src/Template/Element/edit_with_plugin.ctp | 1 + src/Template/Element/reset.ctp | 2 + src/Template/Element/save.ctp | 2 + src/Template/Element/sidebar.ctp | 50 + src/Template/Element/sidebar.ctp.sample | 12 + src/Template/Email/html/default.ctp | 22 + src/Template/Email/text/default.ctp | 16 + src/Template/Error/error400.ctp | 41 + src/Template/Error/error500.ctp | 43 + src/Template/Layout/.DS_Store | Bin 0 -> 6148 bytes src/Template/Layout/Email/html/default.ctp | 24 + src/Template/Layout/Email/text/default.ctp | 16 + .../Layout/TwitterBootstrap/.DS_Store | Bin 0 -> 6148 bytes .../Layout/TwitterBootstrap/cover.ctp | 48 + .../Layout/TwitterBootstrap/dashboard.ctp | 63 + .../TwitterBootstrap/examples/cover.ctp | 48 + .../TwitterBootstrap/examples/dashboard.ctp | 65 + .../TwitterBootstrap/examples/signin.ctp | 30 + .../Layout/TwitterBootstrap/signin.ctp | 30 + src/Template/Layout/ajax.ctp | 16 + src/Template/Layout/custom.ctp | 118 + src/Template/Layout/default.ctp | 111 + src/Template/Layout/error.ctp | 55 + src/Template/Layout/rss/default.ctp | 14 + src/Template/Mailbox/add.ctp | 70 + src/Template/Mailbox/edit.ctp | 56 + src/Template/Mailbox/index.ctp | 63 + src/Template/Mailbox/password.ctp | 42 + src/Template/Mailbox/view.ctp | 68 + src/Template/Pages/home.ctp | 197 + src/Template/Plugin/CakeDC/Users/.DS_Store | Bin 0 -> 6148 bytes .../Users/Email/html/reset_password.ctp | 31 + .../Email/html/social_account_validation.ctp | 36 + .../CakeDC/Users/Email/html/validation.ctp | 31 + .../Users/Email/text/reset_password.ctp | 25 + .../Email/text/social_account_validation.ctp | 27 + .../CakeDC/Users/Email/text/validation.ctp | 25 + .../Plugin/CakeDC/Users/Users/add.ctp | 76 + .../CakeDC/Users/Users/change_password.ctp | 57 + .../Plugin/CakeDC/Users/Users/edit.ctp | 98 + .../Plugin/CakeDC/Users/Users/index.ctp | 60 + .../Plugin/CakeDC/Users/Users/login.ctp | 54 + .../Plugin/CakeDC/Users/Users/profile.ctp | 78 + .../Plugin/CakeDC/Users/Users/register.ctp | 83 + .../Users/Users/request_reset_password.ctp | 38 + .../Users/Users/resend_token_validation.ctp | 22 + .../CakeDC/Users/Users/social_email.ctp | 22 + .../Plugin/CakeDC/Users/Users/view.ctp | 88 + src/Template/Quota2/add.ctp | 27 + src/Template/Quota2/edit.ctp | 43 + src/Template/Quota2/index.ctp | 41 + src/Template/Quota2/view.ctp | 45 + src/Template/RecipientBccDomain/add.ctp | 28 + src/Template/RecipientBccDomain/edit.ctp | 44 + src/Template/RecipientBccDomain/index.ctp | 47 + src/Template/RecipientBccDomain/view.ctp | 57 + src/Template/RecipientBccUser/add.ctp | 29 + src/Template/RecipientBccUser/edit.ctp | 45 + src/Template/RecipientBccUser/index.ctp | 49 + src/Template/RecipientBccUser/view.ctp | 61 + src/Template/SenderBccDomain/add.ctp | 28 + src/Template/SenderBccDomain/edit.ctp | 44 + src/Template/SenderBccDomain/index.ctp | 47 + src/Template/SenderBccDomain/view.ctp | 57 + src/Template/SenderBccUser/add.ctp | 29 + src/Template/SenderBccUser/edit.ctp | 45 + src/Template/SenderBccUser/index.ctp | 49 + src/Template/SenderBccUser/view.ctp | 61 + src/Template/Shards/add.ctp | 60 + src/Template/Shards/edit.ctp | 64 + src/Template/Shards/index.ctp | 43 + src/Template/Shards/selector.ctp | 49 + src/Template/Shards/view.ctp | 115 + src/View/AjaxView.php | 49 + src/View/AppView.php | 31 + src/View/Helper/CustomHelper.php | 26 + src/View/Helper/empty | 0 tests/Fixture/AccountMappingsFixture.php | 50 + tests/Fixture/AccountsFixture.php | 49 + tests/Fixture/AdminFixture.php | 58 + tests/Fixture/AdminMappingsFixture.php | 50 + tests/Fixture/AdministratorsFixture.php | 78 + tests/Fixture/AliasDomainFixture.php | 60 + tests/Fixture/AliasFixture.php | 61 + tests/Fixture/DomainFixture.php | 68 + tests/Fixture/MailboxFixture.php | 69 + tests/Fixture/Quota2Fixture.php | 52 + tests/Fixture/RecipientBccDomainFixture.php | 63 + tests/Fixture/RecipientBccUserFixture.php | 65 + tests/Fixture/SenderBccDomainFixture.php | 63 + tests/Fixture/SenderBccUserFixture.php | 66 + tests/Fixture/ShardsFixture.php | 49 + tests/Fixture/UsersFixture.php | 71 + .../AccountMappingsControllerTest.php | 75 + .../Controller/AccountsControllerTest.php | 75 + .../Controller/AdminControllerTest.php | 73 + .../AdminMappingsControllerTest.php | 75 + .../AdministratorsControllerTest.php | 73 + .../Controller/AliasControllerTest.php | 73 + .../Controller/AliasDomainControllerTest.php | 71 + tests/TestCase/Controller/Component/empty | 0 .../Controller/DomainControllerTest.php | 73 + .../Controller/MailboxControllerTest.php | 71 + .../Controller/PagesControllerTest.php | 73 + .../Controller/Quota2ControllerTest.php | 71 + .../RecipientBccDomainControllerTest.php | 71 + .../RecipientBccUserControllerTest.php | 71 + .../Controller/SelectorControllerTest.php | 71 + .../SenderBccDomainControllerTest.php | 71 + .../SenderBccUserControllerTest.php | 71 + .../Controller/ShardsControllerTest.php | 75 + tests/TestCase/Model/Behavior/empty | 0 .../Model/Table/AccountMappingsTableTest.php | 87 + .../Model/Table/AccountsTableTest.php | 77 + .../Model/Table/AdminMappingsTableTest.php | 87 + tests/TestCase/Model/Table/AdminTableTest.php | 85 + .../Model/Table/AdministratorsTableTest.php | 65 + .../Model/Table/AliasDomainTableTest.php | 73 + tests/TestCase/Model/Table/AliasTableTest.php | 75 + .../TestCase/Model/Table/DomainTableTest.php | 75 + .../TestCase/Model/Table/MailboxTableTest.php | 83 + .../TestCase/Model/Table/Quota2TableTest.php | 83 + .../Table/RecipientBccDomainTableTest.php | 73 + .../Model/Table/RecipientBccUserTableTest.php | 83 + .../Model/Table/SenderBccDomainTableTest.php | 73 + .../Model/Table/SenderBccUserTableTest.php | 83 + .../TestCase/Model/Table/ShardsTableTest.php | 77 + tests/TestCase/View/Helper/empty | 0 tests/bootstrap.php | 8 + webroot/.htaccess | 5 + webroot/css/.DS_Store | Bin 0 -> 6148 bytes webroot/css/._dashboard.css | Bin 0 -> 4096 bytes webroot/css/awesome/font-awesome.css | 2086 + webroot/css/awesome/font-awesome.css.map | 7 + webroot/css/awesome/font-awesome.min.css | 4 + webroot/css/base.css | 450 + webroot/css/bootstrap/.DS_Store | Bin 0 -> 6148 bytes .../bootstrap-datetimepicker.min.css | 5 + webroot/css/bootstrap/bootstrap-slider.css | 264 + .../css/bootstrap/bootstrap-slider.min.css | 28 + webroot/css/bootstrap/bootstrap-theme.css | 587 + webroot/css/bootstrap/bootstrap-theme.css.map | 1 + webroot/css/bootstrap/bootstrap-theme.min.css | 6 + .../css/bootstrap/bootstrap-theme.min.css.map | 1 + webroot/css/bootstrap/bootstrap-toggle.css | 83 + .../css/bootstrap/bootstrap-toggle.min.css | 28 + webroot/css/bootstrap/bootstrap.css | 6760 + webroot/css/bootstrap/bootstrap.css.map | 1 + webroot/css/bootstrap/bootstrap.min.css | 6 + webroot/css/bootstrap/bootstrap.min.css.map | 1 + webroot/css/cake.css | 568 + webroot/css/dashboard.css | 143 + webroot/css/fonts/FontAwesome.otf | Bin 0 -> 109688 bytes webroot/css/fonts/fontawesome-webfont.eot | Bin 0 -> 70807 bytes webroot/css/fonts/fontawesome-webfont.svg | 655 + webroot/css/fonts/fontawesome-webfont.ttf | Bin 0 -> 142072 bytes webroot/css/fonts/fontawesome-webfont.woff | Bin 0 -> 83588 bytes webroot/css/fonts/fontawesome-webfont.woff2 | Bin 0 -> 66624 bytes .../fonts/glyphicons-halflings-regular.eot | Bin 0 -> 20127 bytes .../fonts/glyphicons-halflings-regular.svg | 288 + .../fonts/glyphicons-halflings-regular.ttf | Bin 0 -> 45404 bytes .../fonts/glyphicons-halflings-regular.woff | Bin 0 -> 23424 bytes .../fonts/glyphicons-halflings-regular.woff2 | Bin 0 -> 18028 bytes webroot/css/form-signin.css | 54 + webroot/favicon.ico | Bin 0 -> 2460 bytes webroot/img/.DS_Store | Bin 0 -> 6148 bytes webroot/img/._horizontal-logo.png | Bin 0 -> 4096 bytes webroot/img/Fotolia_107158734_M.jpg | Bin 0 -> 512143 bytes webroot/img/background copy.jpg | Bin 0 -> 667033 bytes webroot/img/background.jpg | Bin 0 -> 512143 bytes webroot/img/cake.icon.png | Bin 0 -> 943 bytes webroot/img/cake.power.gif | Bin 0 -> 201 bytes webroot/img/horizontal-logo.png | Bin 0 -> 5839 bytes webroot/img/sophimail-logo.png | Bin 0 -> 4029 bytes webroot/img/sophimail.jpg | Bin 0 -> 35350 bytes webroot/index.php | 37 + webroot/js/._filesize.min.js | Bin 0 -> 4096 bytes .../bootstrap/bootstrap-datetimepicker.min.js | 9 + webroot/js/bootstrap/bootstrap-slider.js | 1644 + webroot/js/bootstrap/bootstrap-slider.min.js | 4 + webroot/js/bootstrap/bootstrap-toggle.js | 180 + webroot/js/bootstrap/bootstrap-toggle.min.js | 9 + .../js/bootstrap/bootstrap-toggle.min.js.map | 1 + webroot/js/bootstrap/bootstrap.js | 2363 + webroot/js/bootstrap/bootstrap.min.js | 7 + webroot/js/bootstrap/npm.js | 13 + webroot/js/chart.min.js | 14 + webroot/js/empty | 0 webroot/js/filesize.min.js | 6 + webroot/js/jquery/.DS_Store | Bin 0 -> 6148 bytes webroot/js/jquery/jquery.js | 9831 ++ webroot/js/jquery/jquery.min.js | 4 + webroot/js/jquery/jquery.min.map | 1 + webroot/js/jquery/jquery.slim.js | 7877 + webroot/js/jquery/jquery.slim.min.js | 4 + webroot/js/jquery/jquery.slim.min.map | 1 + webroot/js/moment.min.js | 7 + 972 files changed, 363017 insertions(+) create mode 100755 .DS_Store create mode 100644 .editorconfig create mode 100644 .gitattributes create mode 100644 .gitignore create mode 100644 .htaccess create mode 100644 .travis.yml create mode 100755 AdminMappingsTable.php create mode 100644 README.md create mode 100755 bin/cake create mode 100644 bin/cake.bat create mode 100644 bin/cake.php create mode 100644 bower_components/bootstrap-toggle/.bower.json create mode 100644 bower_components/bootstrap-toggle/Gruntfile.js create mode 100644 bower_components/bootstrap-toggle/LICENSE create mode 100644 bower_components/bootstrap-toggle/README.md create mode 100644 bower_components/bootstrap-toggle/bower.json create mode 100644 bower_components/bootstrap-toggle/css/bootstrap-toggle.css create mode 100644 bower_components/bootstrap-toggle/css/bootstrap-toggle.min.css create mode 100644 bower_components/bootstrap-toggle/css/bootstrap2-toggle.css create mode 100644 bower_components/bootstrap-toggle/css/bootstrap2-toggle.min.css create mode 100644 bower_components/bootstrap-toggle/doc/header.png create mode 100644 bower_components/bootstrap-toggle/doc/nyt.png create mode 100644 bower_components/bootstrap-toggle/doc/nytdev.svg create mode 100644 bower_components/bootstrap-toggle/doc/script.js create mode 100644 bower_components/bootstrap-toggle/doc/stylesheet.css create mode 100644 bower_components/bootstrap-toggle/index.html create mode 100644 bower_components/bootstrap-toggle/js/bootstrap-toggle.js create mode 100644 bower_components/bootstrap-toggle/js/bootstrap-toggle.min.js create mode 100644 bower_components/bootstrap-toggle/js/bootstrap-toggle.min.js.map create mode 100644 bower_components/bootstrap-toggle/js/bootstrap2-toggle.js create mode 100644 bower_components/bootstrap-toggle/js/bootstrap2-toggle.min.js create mode 100644 bower_components/bootstrap-toggle/js/bootstrap2-toggle.min.js.map create mode 100644 bower_components/bootstrap-toggle/package.json create mode 100644 bower_components/bootstrap/.bower.json create mode 100644 bower_components/bootstrap/CHANGELOG.md create mode 100644 bower_components/bootstrap/Gruntfile.js create mode 100644 bower_components/bootstrap/LICENSE create mode 100644 bower_components/bootstrap/README.md create mode 100644 bower_components/bootstrap/bower.json create mode 100644 bower_components/bootstrap/dist/css/bootstrap-theme.css create mode 100644 bower_components/bootstrap/dist/css/bootstrap-theme.css.map create mode 100644 bower_components/bootstrap/dist/css/bootstrap-theme.min.css create mode 100644 bower_components/bootstrap/dist/css/bootstrap-theme.min.css.map create mode 100644 bower_components/bootstrap/dist/css/bootstrap.css create mode 100644 bower_components/bootstrap/dist/css/bootstrap.css.map create mode 100644 bower_components/bootstrap/dist/css/bootstrap.min.css create mode 100644 bower_components/bootstrap/dist/css/bootstrap.min.css.map create mode 100644 bower_components/bootstrap/dist/fonts/glyphicons-halflings-regular.eot create mode 100644 bower_components/bootstrap/dist/fonts/glyphicons-halflings-regular.svg create mode 100644 bower_components/bootstrap/dist/fonts/glyphicons-halflings-regular.ttf create mode 100644 bower_components/bootstrap/dist/fonts/glyphicons-halflings-regular.woff create mode 100644 bower_components/bootstrap/dist/fonts/glyphicons-halflings-regular.woff2 create mode 100644 bower_components/bootstrap/dist/js/bootstrap.js create mode 100644 bower_components/bootstrap/dist/js/bootstrap.min.js create mode 100644 bower_components/bootstrap/dist/js/npm.js create mode 100644 bower_components/bootstrap/fonts/glyphicons-halflings-regular.eot create mode 100644 bower_components/bootstrap/fonts/glyphicons-halflings-regular.svg create mode 100644 bower_components/bootstrap/fonts/glyphicons-halflings-regular.ttf create mode 100644 bower_components/bootstrap/fonts/glyphicons-halflings-regular.woff create mode 100644 bower_components/bootstrap/fonts/glyphicons-halflings-regular.woff2 create mode 100644 bower_components/bootstrap/grunt/.jshintrc create mode 100644 bower_components/bootstrap/grunt/bs-commonjs-generator.js create mode 100644 bower_components/bootstrap/grunt/bs-glyphicons-data-generator.js create mode 100644 bower_components/bootstrap/grunt/bs-lessdoc-parser.js create mode 100644 bower_components/bootstrap/grunt/bs-raw-files-generator.js create mode 100644 bower_components/bootstrap/grunt/configBridge.json create mode 100644 bower_components/bootstrap/grunt/sauce_browsers.yml create mode 100644 bower_components/bootstrap/js/.jscsrc create mode 100644 bower_components/bootstrap/js/.jshintrc create mode 100644 bower_components/bootstrap/js/affix.js create mode 100644 bower_components/bootstrap/js/alert.js create mode 100644 bower_components/bootstrap/js/button.js create mode 100644 bower_components/bootstrap/js/carousel.js create mode 100644 bower_components/bootstrap/js/collapse.js create mode 100644 bower_components/bootstrap/js/dropdown.js create mode 100644 bower_components/bootstrap/js/modal.js create mode 100644 bower_components/bootstrap/js/popover.js create mode 100644 bower_components/bootstrap/js/scrollspy.js create mode 100644 bower_components/bootstrap/js/tab.js create mode 100644 bower_components/bootstrap/js/tooltip.js create mode 100644 bower_components/bootstrap/js/transition.js create mode 100644 bower_components/bootstrap/less/.csscomb.json create mode 100644 bower_components/bootstrap/less/.csslintrc create mode 100644 bower_components/bootstrap/less/alerts.less create mode 100644 bower_components/bootstrap/less/badges.less create mode 100644 bower_components/bootstrap/less/bootstrap.less create mode 100644 bower_components/bootstrap/less/breadcrumbs.less create mode 100644 bower_components/bootstrap/less/button-groups.less create mode 100644 bower_components/bootstrap/less/buttons.less create mode 100644 bower_components/bootstrap/less/carousel.less create mode 100644 bower_components/bootstrap/less/close.less create mode 100644 bower_components/bootstrap/less/code.less create mode 100644 bower_components/bootstrap/less/component-animations.less create mode 100644 bower_components/bootstrap/less/dropdowns.less create mode 100644 bower_components/bootstrap/less/forms.less create mode 100644 bower_components/bootstrap/less/glyphicons.less create mode 100644 bower_components/bootstrap/less/grid.less create mode 100644 bower_components/bootstrap/less/input-groups.less create mode 100644 bower_components/bootstrap/less/jumbotron.less create mode 100644 bower_components/bootstrap/less/labels.less create mode 100644 bower_components/bootstrap/less/list-group.less create mode 100644 bower_components/bootstrap/less/media.less create mode 100644 bower_components/bootstrap/less/mixins.less create mode 100644 bower_components/bootstrap/less/mixins/alerts.less create mode 100644 bower_components/bootstrap/less/mixins/background-variant.less create mode 100644 bower_components/bootstrap/less/mixins/border-radius.less create mode 100644 bower_components/bootstrap/less/mixins/buttons.less create mode 100644 bower_components/bootstrap/less/mixins/center-block.less create mode 100644 bower_components/bootstrap/less/mixins/clearfix.less create mode 100644 bower_components/bootstrap/less/mixins/forms.less create mode 100644 bower_components/bootstrap/less/mixins/gradients.less create mode 100644 bower_components/bootstrap/less/mixins/grid-framework.less create mode 100644 bower_components/bootstrap/less/mixins/grid.less create mode 100644 bower_components/bootstrap/less/mixins/hide-text.less create mode 100644 bower_components/bootstrap/less/mixins/image.less create mode 100644 bower_components/bootstrap/less/mixins/labels.less create mode 100644 bower_components/bootstrap/less/mixins/list-group.less create mode 100644 bower_components/bootstrap/less/mixins/nav-divider.less create mode 100644 bower_components/bootstrap/less/mixins/nav-vertical-align.less create mode 100644 bower_components/bootstrap/less/mixins/opacity.less create mode 100644 bower_components/bootstrap/less/mixins/pagination.less create mode 100644 bower_components/bootstrap/less/mixins/panels.less create mode 100644 bower_components/bootstrap/less/mixins/progress-bar.less create mode 100644 bower_components/bootstrap/less/mixins/reset-filter.less create mode 100644 bower_components/bootstrap/less/mixins/reset-text.less create mode 100644 bower_components/bootstrap/less/mixins/resize.less create mode 100644 bower_components/bootstrap/less/mixins/responsive-visibility.less create mode 100644 bower_components/bootstrap/less/mixins/size.less create mode 100644 bower_components/bootstrap/less/mixins/tab-focus.less create mode 100644 bower_components/bootstrap/less/mixins/table-row.less create mode 100644 bower_components/bootstrap/less/mixins/text-emphasis.less create mode 100644 bower_components/bootstrap/less/mixins/text-overflow.less create mode 100644 bower_components/bootstrap/less/mixins/vendor-prefixes.less create mode 100644 bower_components/bootstrap/less/modals.less create mode 100755 bower_components/bootstrap/less/navbar.less create mode 100644 bower_components/bootstrap/less/navs.less create mode 100644 bower_components/bootstrap/less/normalize.less create mode 100644 bower_components/bootstrap/less/pager.less create mode 100644 bower_components/bootstrap/less/pagination.less create mode 100644 bower_components/bootstrap/less/panels.less create mode 100644 bower_components/bootstrap/less/popovers.less create mode 100644 bower_components/bootstrap/less/print.less create mode 100644 bower_components/bootstrap/less/progress-bars.less create mode 100644 bower_components/bootstrap/less/responsive-embed.less create mode 100644 bower_components/bootstrap/less/responsive-utilities.less create mode 100644 bower_components/bootstrap/less/scaffolding.less create mode 100644 bower_components/bootstrap/less/tables.less create mode 100644 bower_components/bootstrap/less/theme.less create mode 100644 bower_components/bootstrap/less/thumbnails.less create mode 100644 bower_components/bootstrap/less/tooltip.less create mode 100644 bower_components/bootstrap/less/type.less create mode 100644 bower_components/bootstrap/less/utilities.less create mode 100644 bower_components/bootstrap/less/variables.less create mode 100644 bower_components/bootstrap/less/wells.less create mode 100644 bower_components/bootstrap/nuget/MyGet.ps1 create mode 100644 bower_components/bootstrap/nuget/bootstrap.less.nuspec create mode 100644 bower_components/bootstrap/nuget/bootstrap.nuspec create mode 100644 bower_components/bootstrap/package.js create mode 100644 bower_components/bootstrap/package.json create mode 100644 bower_components/eonasdan-bootstrap-datetimepicker/.bower.json create mode 100644 bower_components/eonasdan-bootstrap-datetimepicker/CONTRIBUTING.md create mode 100644 bower_components/eonasdan-bootstrap-datetimepicker/Gruntfile.js create mode 100644 bower_components/eonasdan-bootstrap-datetimepicker/LICENSE create mode 100644 bower_components/eonasdan-bootstrap-datetimepicker/README.md create mode 100644 bower_components/eonasdan-bootstrap-datetimepicker/bower.json create mode 100644 bower_components/eonasdan-bootstrap-datetimepicker/build/css/bootstrap-datetimepicker-standalone.css create mode 100644 bower_components/eonasdan-bootstrap-datetimepicker/build/css/bootstrap-datetimepicker.css create mode 100644 bower_components/eonasdan-bootstrap-datetimepicker/build/css/bootstrap-datetimepicker.min.css create mode 100644 bower_components/eonasdan-bootstrap-datetimepicker/build/js/bootstrap-datetimepicker.min.js create mode 100644 bower_components/eonasdan-bootstrap-datetimepicker/component.json create mode 100644 bower_components/eonasdan-bootstrap-datetimepicker/composer.json create mode 100644 bower_components/eonasdan-bootstrap-datetimepicker/docs/ChangeLog.md create mode 100644 bower_components/eonasdan-bootstrap-datetimepicker/docs/ContributorsGuide.md create mode 100644 bower_components/eonasdan-bootstrap-datetimepicker/docs/Events.md create mode 100644 bower_components/eonasdan-bootstrap-datetimepicker/docs/Extras.md create mode 100644 bower_components/eonasdan-bootstrap-datetimepicker/docs/FAQ.md create mode 100644 bower_components/eonasdan-bootstrap-datetimepicker/docs/Functions.md create mode 100644 bower_components/eonasdan-bootstrap-datetimepicker/docs/Installing.md create mode 100644 bower_components/eonasdan-bootstrap-datetimepicker/docs/Options.md create mode 100644 bower_components/eonasdan-bootstrap-datetimepicker/docs/Version 4 Changelog.md create mode 100644 bower_components/eonasdan-bootstrap-datetimepicker/docs/Version 4 Contributors guide.md create mode 100644 bower_components/eonasdan-bootstrap-datetimepicker/docs/index.md create mode 100644 bower_components/eonasdan-bootstrap-datetimepicker/mkdocs.yml create mode 100644 bower_components/eonasdan-bootstrap-datetimepicker/package.json create mode 100644 bower_components/eonasdan-bootstrap-datetimepicker/src/js/bootstrap-datetimepicker.js create mode 100644 bower_components/eonasdan-bootstrap-datetimepicker/src/less/_bootstrap-datetimepicker.less create mode 100644 bower_components/eonasdan-bootstrap-datetimepicker/src/less/bootstrap-datetimepicker-build.less create mode 100644 bower_components/eonasdan-bootstrap-datetimepicker/src/nuget/Bootstrap.v3.Datetimepicker.CSS.nuspec create mode 100644 bower_components/eonasdan-bootstrap-datetimepicker/src/nuget/Bootstrap.v3.Datetimepicker.nuspec create mode 100644 bower_components/eonasdan-bootstrap-datetimepicker/src/nuget/NuGet.exe create mode 100644 bower_components/eonasdan-bootstrap-datetimepicker/src/nuget/install.ps1 create mode 100644 bower_components/eonasdan-bootstrap-datetimepicker/src/sass/_bootstrap-datetimepicker.scss create mode 100644 bower_components/eonasdan-bootstrap-datetimepicker/src/sass/bootstrap-datetimepicker-build.scss create mode 100644 bower_components/eonasdan-bootstrap-datetimepicker/tasks/bump_version.js create mode 100644 bower_components/font-awesome/.bower.json create mode 100644 bower_components/font-awesome/.gitignore create mode 100644 bower_components/font-awesome/.npmignore create mode 100644 bower_components/font-awesome/HELP-US-OUT.txt create mode 100644 bower_components/font-awesome/bower.json create mode 100644 bower_components/font-awesome/css/font-awesome.css create mode 100644 bower_components/font-awesome/css/font-awesome.css.map create mode 100644 bower_components/font-awesome/css/font-awesome.min.css create mode 100644 bower_components/font-awesome/fonts/FontAwesome.otf create mode 100644 bower_components/font-awesome/fonts/fontawesome-webfont.eot create mode 100644 bower_components/font-awesome/fonts/fontawesome-webfont.svg create mode 100644 bower_components/font-awesome/fonts/fontawesome-webfont.ttf create mode 100644 bower_components/font-awesome/fonts/fontawesome-webfont.woff create mode 100644 bower_components/font-awesome/fonts/fontawesome-webfont.woff2 create mode 100644 bower_components/font-awesome/less/animated.less create mode 100644 bower_components/font-awesome/less/bordered-pulled.less create mode 100644 bower_components/font-awesome/less/core.less create mode 100644 bower_components/font-awesome/less/fixed-width.less create mode 100644 bower_components/font-awesome/less/font-awesome.less create mode 100644 bower_components/font-awesome/less/icons.less create mode 100644 bower_components/font-awesome/less/larger.less create mode 100644 bower_components/font-awesome/less/list.less create mode 100644 bower_components/font-awesome/less/mixins.less create mode 100644 bower_components/font-awesome/less/path.less create mode 100644 bower_components/font-awesome/less/rotated-flipped.less create mode 100644 bower_components/font-awesome/less/stacked.less create mode 100644 bower_components/font-awesome/less/variables.less create mode 100644 bower_components/font-awesome/scss/_animated.scss create mode 100644 bower_components/font-awesome/scss/_bordered-pulled.scss create mode 100644 bower_components/font-awesome/scss/_core.scss create mode 100644 bower_components/font-awesome/scss/_fixed-width.scss create mode 100644 bower_components/font-awesome/scss/_icons.scss create mode 100644 bower_components/font-awesome/scss/_larger.scss create mode 100644 bower_components/font-awesome/scss/_list.scss create mode 100644 bower_components/font-awesome/scss/_mixins.scss create mode 100644 bower_components/font-awesome/scss/_path.scss create mode 100644 bower_components/font-awesome/scss/_rotated-flipped.scss create mode 100644 bower_components/font-awesome/scss/_stacked.scss create mode 100644 bower_components/font-awesome/scss/_variables.scss create mode 100644 bower_components/font-awesome/scss/font-awesome.scss create mode 100644 bower_components/jquery/.bower.json create mode 100644 bower_components/jquery/AUTHORS.txt create mode 100644 bower_components/jquery/LICENSE.txt create mode 100644 bower_components/jquery/README.md create mode 100644 bower_components/jquery/bower.json create mode 100644 bower_components/jquery/dist/jquery.js create mode 100644 bower_components/jquery/dist/jquery.min.js create mode 100644 bower_components/jquery/dist/jquery.min.map create mode 100644 bower_components/jquery/dist/jquery.slim.js create mode 100644 bower_components/jquery/dist/jquery.slim.min.js create mode 100644 bower_components/jquery/dist/jquery.slim.min.map create mode 100644 bower_components/jquery/src/.jshintrc create mode 100644 bower_components/jquery/src/ajax.js create mode 100644 bower_components/jquery/src/ajax/jsonp.js create mode 100644 bower_components/jquery/src/ajax/load.js create mode 100644 bower_components/jquery/src/ajax/parseJSON.js create mode 100644 bower_components/jquery/src/ajax/parseXML.js create mode 100644 bower_components/jquery/src/ajax/script.js create mode 100644 bower_components/jquery/src/ajax/var/location.js create mode 100644 bower_components/jquery/src/ajax/var/nonce.js create mode 100644 bower_components/jquery/src/ajax/var/rquery.js create mode 100644 bower_components/jquery/src/ajax/xhr.js create mode 100644 bower_components/jquery/src/attributes.js create mode 100644 bower_components/jquery/src/attributes/attr.js create mode 100644 bower_components/jquery/src/attributes/classes.js create mode 100644 bower_components/jquery/src/attributes/prop.js create mode 100644 bower_components/jquery/src/attributes/support.js create mode 100644 bower_components/jquery/src/attributes/val.js create mode 100644 bower_components/jquery/src/callbacks.js create mode 100644 bower_components/jquery/src/core.js create mode 100644 bower_components/jquery/src/core/DOMEval.js create mode 100644 bower_components/jquery/src/core/access.js create mode 100644 bower_components/jquery/src/core/init.js create mode 100644 bower_components/jquery/src/core/parseHTML.js create mode 100644 bower_components/jquery/src/core/ready.js create mode 100644 bower_components/jquery/src/core/support.js create mode 100644 bower_components/jquery/src/core/var/rsingleTag.js create mode 100644 bower_components/jquery/src/css.js create mode 100644 bower_components/jquery/src/css/addGetHookIf.js create mode 100644 bower_components/jquery/src/css/adjustCSS.js create mode 100644 bower_components/jquery/src/css/curCSS.js create mode 100644 bower_components/jquery/src/css/defaultDisplay.js create mode 100644 bower_components/jquery/src/css/hiddenVisibleSelectors.js create mode 100644 bower_components/jquery/src/css/showHide.js create mode 100644 bower_components/jquery/src/css/support.js create mode 100644 bower_components/jquery/src/css/var/cssExpand.js create mode 100644 bower_components/jquery/src/css/var/getStyles.js create mode 100644 bower_components/jquery/src/css/var/isHidden.js create mode 100644 bower_components/jquery/src/css/var/rmargin.js create mode 100644 bower_components/jquery/src/css/var/rnumnonpx.js create mode 100644 bower_components/jquery/src/css/var/swap.js create mode 100644 bower_components/jquery/src/data.js create mode 100644 bower_components/jquery/src/data/Data.js create mode 100644 bower_components/jquery/src/data/accepts.js create mode 100644 bower_components/jquery/src/data/support.js create mode 100644 bower_components/jquery/src/data/var/acceptData.js create mode 100644 bower_components/jquery/src/data/var/dataPriv.js create mode 100644 bower_components/jquery/src/data/var/dataUser.js create mode 100644 bower_components/jquery/src/deferred.js create mode 100644 bower_components/jquery/src/deferred/exceptionHook.js create mode 100644 bower_components/jquery/src/deprecated.js create mode 100644 bower_components/jquery/src/dimensions.js create mode 100644 bower_components/jquery/src/effects.js create mode 100644 bower_components/jquery/src/effects/Tween.js create mode 100644 bower_components/jquery/src/effects/animatedSelector.js create mode 100644 bower_components/jquery/src/effects/support.js create mode 100644 bower_components/jquery/src/event.js create mode 100644 bower_components/jquery/src/event/ajax.js create mode 100644 bower_components/jquery/src/event/alias.js create mode 100644 bower_components/jquery/src/event/focusin.js create mode 100644 bower_components/jquery/src/event/support.js create mode 100644 bower_components/jquery/src/event/trigger.js create mode 100644 bower_components/jquery/src/exports/amd.js create mode 100644 bower_components/jquery/src/exports/global.js create mode 100644 bower_components/jquery/src/intro.js create mode 100644 bower_components/jquery/src/jquery.js create mode 100644 bower_components/jquery/src/manipulation.js create mode 100644 bower_components/jquery/src/manipulation/_evalUrl.js create mode 100644 bower_components/jquery/src/manipulation/buildFragment.js create mode 100644 bower_components/jquery/src/manipulation/createSafeFragment.js create mode 100644 bower_components/jquery/src/manipulation/getAll.js create mode 100644 bower_components/jquery/src/manipulation/setGlobalEval.js create mode 100644 bower_components/jquery/src/manipulation/support.js create mode 100644 bower_components/jquery/src/manipulation/var/nodeNames.js create mode 100644 bower_components/jquery/src/manipulation/var/rcheckableType.js create mode 100644 bower_components/jquery/src/manipulation/var/rleadingWhitespace.js create mode 100644 bower_components/jquery/src/manipulation/var/rscriptType.js create mode 100644 bower_components/jquery/src/manipulation/var/rtagName.js create mode 100644 bower_components/jquery/src/manipulation/wrapMap.js create mode 100644 bower_components/jquery/src/offset.js create mode 100644 bower_components/jquery/src/outro.js create mode 100644 bower_components/jquery/src/queue.js create mode 100644 bower_components/jquery/src/queue/delay.js create mode 100644 bower_components/jquery/src/selector-native.js create mode 100644 bower_components/jquery/src/selector-sizzle.js create mode 100644 bower_components/jquery/src/selector.js create mode 100644 bower_components/jquery/src/serialize.js create mode 100644 bower_components/jquery/src/support.js create mode 100644 bower_components/jquery/src/traversing.js create mode 100644 bower_components/jquery/src/traversing/findFilter.js create mode 100644 bower_components/jquery/src/traversing/var/dir.js create mode 100644 bower_components/jquery/src/traversing/var/rneedsContext.js create mode 100644 bower_components/jquery/src/traversing/var/siblings.js create mode 100644 bower_components/jquery/src/var/arr.js create mode 100644 bower_components/jquery/src/var/class2type.js create mode 100644 bower_components/jquery/src/var/concat.js create mode 100644 bower_components/jquery/src/var/deletedIds.js create mode 100644 bower_components/jquery/src/var/document.js create mode 100644 bower_components/jquery/src/var/documentElement.js create mode 100644 bower_components/jquery/src/var/hasOwn.js create mode 100644 bower_components/jquery/src/var/indexOf.js create mode 100644 bower_components/jquery/src/var/pnum.js create mode 100644 bower_components/jquery/src/var/push.js create mode 100644 bower_components/jquery/src/var/rcssNum.js create mode 100644 bower_components/jquery/src/var/rnotwhite.js create mode 100644 bower_components/jquery/src/var/slice.js create mode 100644 bower_components/jquery/src/var/support.js create mode 100644 bower_components/jquery/src/var/toString.js create mode 100644 bower_components/jquery/src/wrap.js create mode 100644 bower_components/moment-timezone/.bower.json create mode 100644 bower_components/moment-timezone/LICENSE create mode 100644 bower_components/moment-timezone/README.md create mode 100644 bower_components/moment-timezone/bower.json create mode 100644 bower_components/moment-timezone/builds/moment-timezone-with-data-2010-2020.js create mode 100644 bower_components/moment-timezone/builds/moment-timezone-with-data-2010-2020.min.js create mode 100644 bower_components/moment-timezone/builds/moment-timezone-with-data.js create mode 100644 bower_components/moment-timezone/builds/moment-timezone-with-data.min.js create mode 100644 bower_components/moment-timezone/builds/moment-timezone.min.js create mode 100644 bower_components/moment-timezone/changelog.md create mode 100644 bower_components/moment-timezone/composer.json create mode 100644 bower_components/moment-timezone/data/meta/latest.json create mode 100644 bower_components/moment-timezone/data/packed/latest.json create mode 100644 bower_components/moment-timezone/data/unpacked/latest.json create mode 100644 bower_components/moment-timezone/moment-timezone-utils.js create mode 100644 bower_components/moment-timezone/moment-timezone.js create mode 100644 bower_components/moment/.bower.json create mode 100644 bower_components/moment/CHANGELOG.md create mode 100644 bower_components/moment/LICENSE create mode 100644 bower_components/moment/README.md create mode 100644 bower_components/moment/bower.json create mode 100644 bower_components/moment/locale/af.js create mode 100644 bower_components/moment/locale/ar-ma.js create mode 100644 bower_components/moment/locale/ar-sa.js create mode 100644 bower_components/moment/locale/ar-tn.js create mode 100644 bower_components/moment/locale/ar.js create mode 100644 bower_components/moment/locale/az.js create mode 100644 bower_components/moment/locale/be.js create mode 100644 bower_components/moment/locale/bg.js create mode 100644 bower_components/moment/locale/bn.js create mode 100644 bower_components/moment/locale/bo.js create mode 100644 bower_components/moment/locale/br.js create mode 100644 bower_components/moment/locale/bs.js create mode 100644 bower_components/moment/locale/ca.js create mode 100644 bower_components/moment/locale/cs.js create mode 100644 bower_components/moment/locale/cv.js create mode 100644 bower_components/moment/locale/cy.js create mode 100644 bower_components/moment/locale/da.js create mode 100644 bower_components/moment/locale/de-at.js create mode 100644 bower_components/moment/locale/de.js create mode 100644 bower_components/moment/locale/dv.js create mode 100644 bower_components/moment/locale/el.js create mode 100644 bower_components/moment/locale/en-au.js create mode 100644 bower_components/moment/locale/en-ca.js create mode 100644 bower_components/moment/locale/en-gb.js create mode 100644 bower_components/moment/locale/en-ie.js create mode 100644 bower_components/moment/locale/en-nz.js create mode 100644 bower_components/moment/locale/eo.js create mode 100644 bower_components/moment/locale/es.js create mode 100644 bower_components/moment/locale/et.js create mode 100644 bower_components/moment/locale/eu.js create mode 100644 bower_components/moment/locale/fa.js create mode 100644 bower_components/moment/locale/fi.js create mode 100644 bower_components/moment/locale/fo.js create mode 100644 bower_components/moment/locale/fr-ca.js create mode 100644 bower_components/moment/locale/fr-ch.js create mode 100644 bower_components/moment/locale/fr.js create mode 100644 bower_components/moment/locale/fy.js create mode 100644 bower_components/moment/locale/gd.js create mode 100644 bower_components/moment/locale/gl.js create mode 100644 bower_components/moment/locale/he.js create mode 100644 bower_components/moment/locale/hi.js create mode 100644 bower_components/moment/locale/hr.js create mode 100644 bower_components/moment/locale/hu.js create mode 100644 bower_components/moment/locale/hy-am.js create mode 100644 bower_components/moment/locale/id.js create mode 100644 bower_components/moment/locale/is.js create mode 100644 bower_components/moment/locale/it.js create mode 100644 bower_components/moment/locale/ja.js create mode 100644 bower_components/moment/locale/jv.js create mode 100644 bower_components/moment/locale/ka.js create mode 100644 bower_components/moment/locale/kk.js create mode 100644 bower_components/moment/locale/km.js create mode 100644 bower_components/moment/locale/ko.js create mode 100644 bower_components/moment/locale/lb.js create mode 100644 bower_components/moment/locale/lo.js create mode 100644 bower_components/moment/locale/lt.js create mode 100644 bower_components/moment/locale/lv.js create mode 100644 bower_components/moment/locale/me.js create mode 100644 bower_components/moment/locale/mk.js create mode 100644 bower_components/moment/locale/ml.js create mode 100644 bower_components/moment/locale/mr.js create mode 100644 bower_components/moment/locale/ms-my.js create mode 100644 bower_components/moment/locale/ms.js create mode 100644 bower_components/moment/locale/my.js create mode 100644 bower_components/moment/locale/nb.js create mode 100644 bower_components/moment/locale/ne.js create mode 100644 bower_components/moment/locale/nl.js create mode 100644 bower_components/moment/locale/nn.js create mode 100644 bower_components/moment/locale/pa-in.js create mode 100644 bower_components/moment/locale/pl.js create mode 100644 bower_components/moment/locale/pt-br.js create mode 100644 bower_components/moment/locale/pt.js create mode 100644 bower_components/moment/locale/ro.js create mode 100644 bower_components/moment/locale/ru.js create mode 100644 bower_components/moment/locale/se.js create mode 100644 bower_components/moment/locale/si.js create mode 100644 bower_components/moment/locale/sk.js create mode 100644 bower_components/moment/locale/sl.js create mode 100644 bower_components/moment/locale/sq.js create mode 100644 bower_components/moment/locale/sr-cyrl.js create mode 100644 bower_components/moment/locale/sr.js create mode 100644 bower_components/moment/locale/sv.js create mode 100644 bower_components/moment/locale/sw.js create mode 100644 bower_components/moment/locale/ta.js create mode 100644 bower_components/moment/locale/te.js create mode 100644 bower_components/moment/locale/th.js create mode 100644 bower_components/moment/locale/tl-ph.js create mode 100644 bower_components/moment/locale/tlh.js create mode 100644 bower_components/moment/locale/tr.js create mode 100644 bower_components/moment/locale/tzl.js create mode 100644 bower_components/moment/locale/tzm-latn.js create mode 100644 bower_components/moment/locale/tzm.js create mode 100644 bower_components/moment/locale/uk.js create mode 100644 bower_components/moment/locale/uz.js create mode 100644 bower_components/moment/locale/vi.js create mode 100644 bower_components/moment/locale/zh-cn.js create mode 100644 bower_components/moment/locale/zh-tw.js create mode 100644 bower_components/moment/min/locales.js create mode 100644 bower_components/moment/min/locales.min.js create mode 100644 bower_components/moment/min/moment-with-locales.js create mode 100644 bower_components/moment/min/moment-with-locales.min.js create mode 100644 bower_components/moment/min/moment.min.js create mode 100644 bower_components/moment/min/tests.js create mode 100644 bower_components/moment/moment.js create mode 100644 bower_components/moment/src/lib/create/check-overflow.js create mode 100644 bower_components/moment/src/lib/create/date-from-array.js create mode 100644 bower_components/moment/src/lib/create/from-anything.js create mode 100644 bower_components/moment/src/lib/create/from-array.js create mode 100644 bower_components/moment/src/lib/create/from-object.js create mode 100644 bower_components/moment/src/lib/create/from-string-and-array.js create mode 100644 bower_components/moment/src/lib/create/from-string-and-format.js create mode 100644 bower_components/moment/src/lib/create/from-string.js create mode 100644 bower_components/moment/src/lib/create/local.js create mode 100644 bower_components/moment/src/lib/create/parsing-flags.js create mode 100644 bower_components/moment/src/lib/create/utc.js create mode 100644 bower_components/moment/src/lib/create/valid.js create mode 100644 bower_components/moment/src/lib/duration/abs.js create mode 100644 bower_components/moment/src/lib/duration/add-subtract.js create mode 100644 bower_components/moment/src/lib/duration/as.js create mode 100644 bower_components/moment/src/lib/duration/bubble.js create mode 100644 bower_components/moment/src/lib/duration/constructor.js create mode 100644 bower_components/moment/src/lib/duration/create.js create mode 100644 bower_components/moment/src/lib/duration/duration.js create mode 100644 bower_components/moment/src/lib/duration/get.js create mode 100644 bower_components/moment/src/lib/duration/humanize.js create mode 100644 bower_components/moment/src/lib/duration/iso-string.js create mode 100644 bower_components/moment/src/lib/duration/prototype.js create mode 100644 bower_components/moment/src/lib/format/format.js create mode 100644 bower_components/moment/src/lib/locale/calendar.js create mode 100644 bower_components/moment/src/lib/locale/constructor.js create mode 100644 bower_components/moment/src/lib/locale/en.js create mode 100644 bower_components/moment/src/lib/locale/formats.js create mode 100644 bower_components/moment/src/lib/locale/invalid.js create mode 100644 bower_components/moment/src/lib/locale/lists.js create mode 100644 bower_components/moment/src/lib/locale/locale.js create mode 100644 bower_components/moment/src/lib/locale/locales.js create mode 100644 bower_components/moment/src/lib/locale/ordinal.js create mode 100644 bower_components/moment/src/lib/locale/pre-post-format.js create mode 100644 bower_components/moment/src/lib/locale/prototype.js create mode 100644 bower_components/moment/src/lib/locale/relative.js create mode 100644 bower_components/moment/src/lib/locale/set.js create mode 100644 bower_components/moment/src/lib/moment/add-subtract.js create mode 100644 bower_components/moment/src/lib/moment/calendar.js create mode 100644 bower_components/moment/src/lib/moment/clone.js create mode 100644 bower_components/moment/src/lib/moment/compare.js create mode 100644 bower_components/moment/src/lib/moment/constructor.js create mode 100644 bower_components/moment/src/lib/moment/creation-data.js create mode 100644 bower_components/moment/src/lib/moment/diff.js create mode 100644 bower_components/moment/src/lib/moment/format.js create mode 100644 bower_components/moment/src/lib/moment/from.js create mode 100644 bower_components/moment/src/lib/moment/get-set.js create mode 100644 bower_components/moment/src/lib/moment/locale.js create mode 100644 bower_components/moment/src/lib/moment/min-max.js create mode 100644 bower_components/moment/src/lib/moment/moment.js create mode 100644 bower_components/moment/src/lib/moment/now.js create mode 100644 bower_components/moment/src/lib/moment/prototype.js create mode 100644 bower_components/moment/src/lib/moment/start-end-of.js create mode 100644 bower_components/moment/src/lib/moment/to-type.js create mode 100644 bower_components/moment/src/lib/moment/to.js create mode 100644 bower_components/moment/src/lib/moment/valid.js create mode 100644 bower_components/moment/src/lib/parse/regex.js create mode 100644 bower_components/moment/src/lib/parse/token.js create mode 100644 bower_components/moment/src/lib/units/aliases.js create mode 100644 bower_components/moment/src/lib/units/constants.js create mode 100644 bower_components/moment/src/lib/units/day-of-month.js create mode 100644 bower_components/moment/src/lib/units/day-of-week.js create mode 100644 bower_components/moment/src/lib/units/day-of-year.js create mode 100644 bower_components/moment/src/lib/units/hour.js create mode 100644 bower_components/moment/src/lib/units/millisecond.js create mode 100644 bower_components/moment/src/lib/units/minute.js create mode 100644 bower_components/moment/src/lib/units/month.js create mode 100644 bower_components/moment/src/lib/units/offset.js create mode 100644 bower_components/moment/src/lib/units/quarter.js create mode 100644 bower_components/moment/src/lib/units/second.js create mode 100644 bower_components/moment/src/lib/units/timestamp.js create mode 100644 bower_components/moment/src/lib/units/timezone.js create mode 100644 bower_components/moment/src/lib/units/units.js create mode 100644 bower_components/moment/src/lib/units/week-calendar-utils.js create mode 100644 bower_components/moment/src/lib/units/week-year.js create mode 100644 bower_components/moment/src/lib/units/week.js create mode 100644 bower_components/moment/src/lib/units/year.js create mode 100644 bower_components/moment/src/lib/utils/abs-ceil.js create mode 100644 bower_components/moment/src/lib/utils/abs-floor.js create mode 100644 bower_components/moment/src/lib/utils/abs-round.js create mode 100644 bower_components/moment/src/lib/utils/compare-arrays.js create mode 100644 bower_components/moment/src/lib/utils/defaults.js create mode 100644 bower_components/moment/src/lib/utils/deprecate.js create mode 100644 bower_components/moment/src/lib/utils/extend.js create mode 100644 bower_components/moment/src/lib/utils/has-own-prop.js create mode 100644 bower_components/moment/src/lib/utils/hooks.js create mode 100644 bower_components/moment/src/lib/utils/is-array.js create mode 100644 bower_components/moment/src/lib/utils/is-date.js create mode 100644 bower_components/moment/src/lib/utils/is-function.js create mode 100644 bower_components/moment/src/lib/utils/is-object.js create mode 100644 bower_components/moment/src/lib/utils/is-undefined.js create mode 100644 bower_components/moment/src/lib/utils/map.js create mode 100644 bower_components/moment/src/lib/utils/to-int.js create mode 100644 bower_components/moment/src/lib/utils/zero-fill.js create mode 100644 bower_components/moment/src/locale/af.js create mode 100644 bower_components/moment/src/locale/ar-ma.js create mode 100644 bower_components/moment/src/locale/ar-sa.js create mode 100644 bower_components/moment/src/locale/ar-tn.js create mode 100644 bower_components/moment/src/locale/ar.js create mode 100644 bower_components/moment/src/locale/az.js create mode 100644 bower_components/moment/src/locale/be.js create mode 100644 bower_components/moment/src/locale/bg.js create mode 100644 bower_components/moment/src/locale/bn.js create mode 100644 bower_components/moment/src/locale/bo.js create mode 100644 bower_components/moment/src/locale/br.js create mode 100644 bower_components/moment/src/locale/bs.js create mode 100644 bower_components/moment/src/locale/ca.js create mode 100644 bower_components/moment/src/locale/cs.js create mode 100644 bower_components/moment/src/locale/cv.js create mode 100644 bower_components/moment/src/locale/cy.js create mode 100644 bower_components/moment/src/locale/da.js create mode 100644 bower_components/moment/src/locale/de-at.js create mode 100644 bower_components/moment/src/locale/de.js create mode 100644 bower_components/moment/src/locale/dv.js create mode 100644 bower_components/moment/src/locale/el.js create mode 100644 bower_components/moment/src/locale/en-au.js create mode 100644 bower_components/moment/src/locale/en-ca.js create mode 100644 bower_components/moment/src/locale/en-gb.js create mode 100644 bower_components/moment/src/locale/en-ie.js create mode 100644 bower_components/moment/src/locale/en-nz.js create mode 100644 bower_components/moment/src/locale/eo.js create mode 100644 bower_components/moment/src/locale/es.js create mode 100644 bower_components/moment/src/locale/et.js create mode 100644 bower_components/moment/src/locale/eu.js create mode 100644 bower_components/moment/src/locale/fa.js create mode 100644 bower_components/moment/src/locale/fi.js create mode 100644 bower_components/moment/src/locale/fo.js create mode 100644 bower_components/moment/src/locale/fr-ca.js create mode 100644 bower_components/moment/src/locale/fr-ch.js create mode 100644 bower_components/moment/src/locale/fr.js create mode 100644 bower_components/moment/src/locale/fy.js create mode 100644 bower_components/moment/src/locale/gd.js create mode 100644 bower_components/moment/src/locale/gl.js create mode 100644 bower_components/moment/src/locale/he.js create mode 100644 bower_components/moment/src/locale/hi.js create mode 100644 bower_components/moment/src/locale/hr.js create mode 100644 bower_components/moment/src/locale/hu.js create mode 100644 bower_components/moment/src/locale/hy-am.js create mode 100644 bower_components/moment/src/locale/id.js create mode 100644 bower_components/moment/src/locale/is.js create mode 100644 bower_components/moment/src/locale/it.js create mode 100644 bower_components/moment/src/locale/ja.js create mode 100644 bower_components/moment/src/locale/jv.js create mode 100644 bower_components/moment/src/locale/ka.js create mode 100644 bower_components/moment/src/locale/kk.js create mode 100644 bower_components/moment/src/locale/km.js create mode 100644 bower_components/moment/src/locale/ko.js create mode 100644 bower_components/moment/src/locale/lb.js create mode 100644 bower_components/moment/src/locale/lo.js create mode 100644 bower_components/moment/src/locale/lt.js create mode 100644 bower_components/moment/src/locale/lv.js create mode 100644 bower_components/moment/src/locale/me.js create mode 100644 bower_components/moment/src/locale/mk.js create mode 100644 bower_components/moment/src/locale/ml.js create mode 100644 bower_components/moment/src/locale/mr.js create mode 100644 bower_components/moment/src/locale/ms-my.js create mode 100644 bower_components/moment/src/locale/ms.js create mode 100644 bower_components/moment/src/locale/my.js create mode 100644 bower_components/moment/src/locale/nb.js create mode 100644 bower_components/moment/src/locale/ne.js create mode 100644 bower_components/moment/src/locale/nl.js create mode 100644 bower_components/moment/src/locale/nn.js create mode 100644 bower_components/moment/src/locale/pa-in.js create mode 100644 bower_components/moment/src/locale/pl.js create mode 100644 bower_components/moment/src/locale/pt-br.js create mode 100644 bower_components/moment/src/locale/pt.js create mode 100644 bower_components/moment/src/locale/ro.js create mode 100644 bower_components/moment/src/locale/ru.js create mode 100644 bower_components/moment/src/locale/se.js create mode 100644 bower_components/moment/src/locale/si.js create mode 100644 bower_components/moment/src/locale/sk.js create mode 100644 bower_components/moment/src/locale/sl.js create mode 100644 bower_components/moment/src/locale/sq.js create mode 100644 bower_components/moment/src/locale/sr-cyrl.js create mode 100644 bower_components/moment/src/locale/sr.js create mode 100644 bower_components/moment/src/locale/sv.js create mode 100644 bower_components/moment/src/locale/sw.js create mode 100644 bower_components/moment/src/locale/ta.js create mode 100644 bower_components/moment/src/locale/te.js create mode 100644 bower_components/moment/src/locale/th.js create mode 100644 bower_components/moment/src/locale/tl-ph.js create mode 100644 bower_components/moment/src/locale/tlh.js create mode 100644 bower_components/moment/src/locale/tr.js create mode 100644 bower_components/moment/src/locale/tzl.js create mode 100644 bower_components/moment/src/locale/tzm-latn.js create mode 100644 bower_components/moment/src/locale/tzm.js create mode 100644 bower_components/moment/src/locale/uk.js create mode 100644 bower_components/moment/src/locale/uz.js create mode 100644 bower_components/moment/src/locale/vi.js create mode 100644 bower_components/moment/src/locale/zh-cn.js create mode 100644 bower_components/moment/src/locale/zh-tw.js create mode 100644 bower_components/moment/src/moment.js create mode 100644 bower_components/moment/templates/amd-named.js create mode 100644 bower_components/moment/templates/amd.js create mode 100644 bower_components/moment/templates/default.js create mode 100644 bower_components/moment/templates/globals.js create mode 100644 bower_components/moment/templates/locale-header.js create mode 100644 bower_components/moment/templates/test-header.js create mode 100644 components/require-built.js create mode 100644 components/require.config.js create mode 100644 components/require.css create mode 100644 components/require.js create mode 100755 composer.json create mode 100644 composer.lock create mode 100755 config/._version.txt create mode 100644 config/app.default.php create mode 100755 config/bootstrap.php create mode 100644 config/bootstrap_cli.php create mode 100644 config/paths.php create mode 100755 config/permissions copy.php create mode 100755 config/permissions.php create mode 100644 config/routes.php create mode 100644 config/schema/i18n.sql create mode 100644 config/schema/sessions.sql create mode 100755 config/users.php create mode 100755 config/version.txt create mode 100644 index.php create mode 100644 phpunit.xml.dist create mode 160000 plugins/GoogleCharts create mode 100644 plugins/empty create mode 100755 src/.DS_Store create mode 100644 src/Console/Installer.php create mode 100755 src/Controller/.DS_Store create mode 100644 src/Controller/AccountsController.php create mode 100755 src/Controller/AliasController.php create mode 100755 src/Controller/AliasDomainController.php create mode 100755 src/Controller/AppController.php create mode 100755 src/Controller/Component/GlobalComponent.php create mode 100644 src/Controller/Component/empty create mode 100755 src/Controller/DomainController.php create mode 100755 src/Controller/MailboxController.php create mode 100644 src/Controller/PagesController.php create mode 100644 src/Controller/Quota2Controller.php create mode 100644 src/Controller/RecipientBccDomainController.php create mode 100644 src/Controller/RecipientBccUserController.php create mode 100644 src/Controller/SenderBccDomainController.php create mode 100644 src/Controller/SenderBccUserController.php create mode 100755 src/Controller/ShardsController.php create mode 100644 src/Model/Behavior/empty create mode 100755 src/Model/Entity/.DS_Store create mode 100644 src/Model/Entity/Account.php create mode 100644 src/Model/Entity/AccountMapping.php create mode 100644 src/Model/Entity/Admin.php create mode 100644 src/Model/Entity/AdminMapping.php create mode 100755 src/Model/Entity/Alias.php create mode 100644 src/Model/Entity/AliasDomain.php create mode 100755 src/Model/Entity/Domain.php create mode 100755 src/Model/Entity/Mailbox.php create mode 100644 src/Model/Entity/Quota2.php create mode 100644 src/Model/Entity/RecipientBccDomain.php create mode 100644 src/Model/Entity/RecipientBccUser.php create mode 100644 src/Model/Entity/SenderBccDomain.php create mode 100644 src/Model/Entity/SenderBccUser.php create mode 100644 src/Model/Entity/Shard.php create mode 100755 src/Model/Table/.DS_Store create mode 100755 src/Model/Table/AccountsTable.php create mode 100755 src/Model/Table/AliasDomainTable.php create mode 100755 src/Model/Table/AliasTable.php create mode 100755 src/Model/Table/DomainTable.php create mode 100755 src/Model/Table/MailboxTable.php create mode 100755 src/Model/Table/Quota2Table.php create mode 100755 src/Model/Table/RecipientBccDomainTable.php create mode 100755 src/Model/Table/RecipientBccUserTable.php create mode 100755 src/Model/Table/SenderBccDomainTable.php create mode 100755 src/Model/Table/SenderBccUserTable.php create mode 100755 src/Model/Table/ShardsTable.php create mode 100644 src/Shell/ConsoleShell.php create mode 100755 src/Template/.DS_Store create mode 100755 src/Template/Accounts/add.ctp create mode 100755 src/Template/Accounts/edit.ctp create mode 100755 src/Template/Accounts/index.ctp create mode 100755 src/Template/Accounts/view.ctp create mode 100755 src/Template/Alias/add.ctp create mode 100755 src/Template/Alias/edit.ctp create mode 100755 src/Template/Alias/forward.ctp create mode 100755 src/Template/Alias/index.ctp create mode 100755 src/Template/AliasDomain/add.ctp create mode 100755 src/Template/AliasDomain/edit.ctp create mode 100755 src/Template/AliasDomain/index.ctp create mode 100755 src/Template/Domain/.DS_Store create mode 100755 src/Template/Domain/._dashboard.ctp create mode 100755 src/Template/Domain/add.ctp create mode 100755 src/Template/Domain/dashboard.ctp create mode 100755 src/Template/Domain/edit.ctp create mode 100755 src/Template/Domain/view.ctp create mode 100755 src/Template/Element/._delete.ctp create mode 100755 src/Template/Element/._edit.ctp create mode 100755 src/Template/Element/._save.ctp create mode 100755 src/Template/Element/Flash/default.ctp create mode 100755 src/Template/Element/Flash/error.ctp create mode 100755 src/Template/Element/Flash/success.ctp create mode 100755 src/Template/Element/create.ctp create mode 100755 src/Template/Element/delete.ctp create mode 100755 src/Template/Element/delete_no_var.ctp create mode 100755 src/Template/Element/delete_with_plugin.ctp create mode 100755 src/Template/Element/edit.ctp create mode 100755 src/Template/Element/edit_no_var.ctp create mode 100755 src/Template/Element/edit_with_plugin.ctp create mode 100755 src/Template/Element/reset.ctp create mode 100755 src/Template/Element/save.ctp create mode 100755 src/Template/Element/sidebar.ctp create mode 100755 src/Template/Element/sidebar.ctp.sample create mode 100644 src/Template/Email/html/default.ctp create mode 100644 src/Template/Email/text/default.ctp create mode 100644 src/Template/Error/error400.ctp create mode 100644 src/Template/Error/error500.ctp create mode 100755 src/Template/Layout/.DS_Store create mode 100644 src/Template/Layout/Email/html/default.ctp create mode 100644 src/Template/Layout/Email/text/default.ctp create mode 100755 src/Template/Layout/TwitterBootstrap/.DS_Store create mode 100644 src/Template/Layout/TwitterBootstrap/cover.ctp create mode 100755 src/Template/Layout/TwitterBootstrap/dashboard.ctp create mode 100644 src/Template/Layout/TwitterBootstrap/examples/cover.ctp create mode 100644 src/Template/Layout/TwitterBootstrap/examples/dashboard.ctp create mode 100644 src/Template/Layout/TwitterBootstrap/examples/signin.ctp create mode 100644 src/Template/Layout/TwitterBootstrap/signin.ctp create mode 100644 src/Template/Layout/ajax.ctp create mode 100755 src/Template/Layout/custom.ctp create mode 100755 src/Template/Layout/default.ctp create mode 100644 src/Template/Layout/error.ctp create mode 100644 src/Template/Layout/rss/default.ctp create mode 100755 src/Template/Mailbox/add.ctp create mode 100755 src/Template/Mailbox/edit.ctp create mode 100755 src/Template/Mailbox/index.ctp create mode 100755 src/Template/Mailbox/password.ctp create mode 100755 src/Template/Mailbox/view.ctp create mode 100644 src/Template/Pages/home.ctp create mode 100755 src/Template/Plugin/CakeDC/Users/.DS_Store create mode 100644 src/Template/Plugin/CakeDC/Users/Email/html/reset_password.ctp create mode 100644 src/Template/Plugin/CakeDC/Users/Email/html/social_account_validation.ctp create mode 100644 src/Template/Plugin/CakeDC/Users/Email/html/validation.ctp create mode 100644 src/Template/Plugin/CakeDC/Users/Email/text/reset_password.ctp create mode 100644 src/Template/Plugin/CakeDC/Users/Email/text/social_account_validation.ctp create mode 100644 src/Template/Plugin/CakeDC/Users/Email/text/validation.ctp create mode 100755 src/Template/Plugin/CakeDC/Users/Users/add.ctp create mode 100755 src/Template/Plugin/CakeDC/Users/Users/change_password.ctp create mode 100755 src/Template/Plugin/CakeDC/Users/Users/edit.ctp create mode 100755 src/Template/Plugin/CakeDC/Users/Users/index.ctp create mode 100755 src/Template/Plugin/CakeDC/Users/Users/login.ctp create mode 100755 src/Template/Plugin/CakeDC/Users/Users/profile.ctp create mode 100755 src/Template/Plugin/CakeDC/Users/Users/register.ctp create mode 100755 src/Template/Plugin/CakeDC/Users/Users/request_reset_password.ctp create mode 100755 src/Template/Plugin/CakeDC/Users/Users/resend_token_validation.ctp create mode 100755 src/Template/Plugin/CakeDC/Users/Users/social_email.ctp create mode 100755 src/Template/Plugin/CakeDC/Users/Users/view.ctp create mode 100644 src/Template/Quota2/add.ctp create mode 100644 src/Template/Quota2/edit.ctp create mode 100644 src/Template/Quota2/index.ctp create mode 100644 src/Template/Quota2/view.ctp create mode 100644 src/Template/RecipientBccDomain/add.ctp create mode 100644 src/Template/RecipientBccDomain/edit.ctp create mode 100644 src/Template/RecipientBccDomain/index.ctp create mode 100644 src/Template/RecipientBccDomain/view.ctp create mode 100644 src/Template/RecipientBccUser/add.ctp create mode 100644 src/Template/RecipientBccUser/edit.ctp create mode 100644 src/Template/RecipientBccUser/index.ctp create mode 100644 src/Template/RecipientBccUser/view.ctp create mode 100644 src/Template/SenderBccDomain/add.ctp create mode 100644 src/Template/SenderBccDomain/edit.ctp create mode 100644 src/Template/SenderBccDomain/index.ctp create mode 100644 src/Template/SenderBccDomain/view.ctp create mode 100644 src/Template/SenderBccUser/add.ctp create mode 100644 src/Template/SenderBccUser/edit.ctp create mode 100644 src/Template/SenderBccUser/index.ctp create mode 100644 src/Template/SenderBccUser/view.ctp create mode 100755 src/Template/Shards/add.ctp create mode 100755 src/Template/Shards/edit.ctp create mode 100755 src/Template/Shards/index.ctp create mode 100755 src/Template/Shards/selector.ctp create mode 100755 src/Template/Shards/view.ctp create mode 100644 src/View/AjaxView.php create mode 100755 src/View/AppView.php create mode 100755 src/View/Helper/CustomHelper.php create mode 100644 src/View/Helper/empty create mode 100644 tests/Fixture/AccountMappingsFixture.php create mode 100644 tests/Fixture/AccountsFixture.php create mode 100644 tests/Fixture/AdminFixture.php create mode 100644 tests/Fixture/AdminMappingsFixture.php create mode 100644 tests/Fixture/AdministratorsFixture.php create mode 100644 tests/Fixture/AliasDomainFixture.php create mode 100644 tests/Fixture/AliasFixture.php create mode 100644 tests/Fixture/DomainFixture.php create mode 100644 tests/Fixture/MailboxFixture.php create mode 100644 tests/Fixture/Quota2Fixture.php create mode 100644 tests/Fixture/RecipientBccDomainFixture.php create mode 100644 tests/Fixture/RecipientBccUserFixture.php create mode 100644 tests/Fixture/SenderBccDomainFixture.php create mode 100644 tests/Fixture/SenderBccUserFixture.php create mode 100644 tests/Fixture/ShardsFixture.php create mode 100644 tests/Fixture/UsersFixture.php create mode 100644 tests/TestCase/Controller/AccountMappingsControllerTest.php create mode 100644 tests/TestCase/Controller/AccountsControllerTest.php create mode 100644 tests/TestCase/Controller/AdminControllerTest.php create mode 100644 tests/TestCase/Controller/AdminMappingsControllerTest.php create mode 100644 tests/TestCase/Controller/AdministratorsControllerTest.php create mode 100644 tests/TestCase/Controller/AliasControllerTest.php create mode 100644 tests/TestCase/Controller/AliasDomainControllerTest.php create mode 100644 tests/TestCase/Controller/Component/empty create mode 100644 tests/TestCase/Controller/DomainControllerTest.php create mode 100644 tests/TestCase/Controller/MailboxControllerTest.php create mode 100644 tests/TestCase/Controller/PagesControllerTest.php create mode 100644 tests/TestCase/Controller/Quota2ControllerTest.php create mode 100644 tests/TestCase/Controller/RecipientBccDomainControllerTest.php create mode 100644 tests/TestCase/Controller/RecipientBccUserControllerTest.php create mode 100644 tests/TestCase/Controller/SelectorControllerTest.php create mode 100644 tests/TestCase/Controller/SenderBccDomainControllerTest.php create mode 100644 tests/TestCase/Controller/SenderBccUserControllerTest.php create mode 100644 tests/TestCase/Controller/ShardsControllerTest.php create mode 100644 tests/TestCase/Model/Behavior/empty create mode 100644 tests/TestCase/Model/Table/AccountMappingsTableTest.php create mode 100644 tests/TestCase/Model/Table/AccountsTableTest.php create mode 100644 tests/TestCase/Model/Table/AdminMappingsTableTest.php create mode 100644 tests/TestCase/Model/Table/AdminTableTest.php create mode 100644 tests/TestCase/Model/Table/AdministratorsTableTest.php create mode 100644 tests/TestCase/Model/Table/AliasDomainTableTest.php create mode 100644 tests/TestCase/Model/Table/AliasTableTest.php create mode 100644 tests/TestCase/Model/Table/DomainTableTest.php create mode 100644 tests/TestCase/Model/Table/MailboxTableTest.php create mode 100644 tests/TestCase/Model/Table/Quota2TableTest.php create mode 100644 tests/TestCase/Model/Table/RecipientBccDomainTableTest.php create mode 100644 tests/TestCase/Model/Table/RecipientBccUserTableTest.php create mode 100644 tests/TestCase/Model/Table/SenderBccDomainTableTest.php create mode 100644 tests/TestCase/Model/Table/SenderBccUserTableTest.php create mode 100644 tests/TestCase/Model/Table/ShardsTableTest.php create mode 100644 tests/TestCase/View/Helper/empty create mode 100644 tests/bootstrap.php create mode 100644 webroot/.htaccess create mode 100755 webroot/css/.DS_Store create mode 100755 webroot/css/._dashboard.css create mode 100755 webroot/css/awesome/font-awesome.css create mode 100755 webroot/css/awesome/font-awesome.css.map create mode 100755 webroot/css/awesome/font-awesome.min.css create mode 100644 webroot/css/base.css create mode 100755 webroot/css/bootstrap/.DS_Store create mode 100644 webroot/css/bootstrap/bootstrap-datetimepicker.min.css create mode 100644 webroot/css/bootstrap/bootstrap-slider.css create mode 100644 webroot/css/bootstrap/bootstrap-slider.min.css create mode 100644 webroot/css/bootstrap/bootstrap-theme.css create mode 100644 webroot/css/bootstrap/bootstrap-theme.css.map create mode 100644 webroot/css/bootstrap/bootstrap-theme.min.css create mode 100644 webroot/css/bootstrap/bootstrap-theme.min.css.map create mode 100755 webroot/css/bootstrap/bootstrap-toggle.css create mode 100755 webroot/css/bootstrap/bootstrap-toggle.min.css create mode 100755 webroot/css/bootstrap/bootstrap.css create mode 100644 webroot/css/bootstrap/bootstrap.css.map create mode 100644 webroot/css/bootstrap/bootstrap.min.css create mode 100644 webroot/css/bootstrap/bootstrap.min.css.map create mode 100644 webroot/css/cake.css create mode 100755 webroot/css/dashboard.css create mode 100755 webroot/css/fonts/FontAwesome.otf create mode 100755 webroot/css/fonts/fontawesome-webfont.eot create mode 100755 webroot/css/fonts/fontawesome-webfont.svg create mode 100755 webroot/css/fonts/fontawesome-webfont.ttf create mode 100755 webroot/css/fonts/fontawesome-webfont.woff create mode 100755 webroot/css/fonts/fontawesome-webfont.woff2 create mode 100644 webroot/css/fonts/glyphicons-halflings-regular.eot create mode 100644 webroot/css/fonts/glyphicons-halflings-regular.svg create mode 100644 webroot/css/fonts/glyphicons-halflings-regular.ttf create mode 100644 webroot/css/fonts/glyphicons-halflings-regular.woff create mode 100644 webroot/css/fonts/glyphicons-halflings-regular.woff2 create mode 100755 webroot/css/form-signin.css create mode 100755 webroot/favicon.ico create mode 100755 webroot/img/.DS_Store create mode 100755 webroot/img/._horizontal-logo.png create mode 100755 webroot/img/Fotolia_107158734_M.jpg create mode 100755 webroot/img/background copy.jpg create mode 100755 webroot/img/background.jpg create mode 100644 webroot/img/cake.icon.png create mode 100644 webroot/img/cake.power.gif create mode 100755 webroot/img/horizontal-logo.png create mode 100755 webroot/img/sophimail-logo.png create mode 100755 webroot/img/sophimail.jpg create mode 100644 webroot/index.php create mode 100755 webroot/js/._filesize.min.js create mode 100644 webroot/js/bootstrap/bootstrap-datetimepicker.min.js create mode 100644 webroot/js/bootstrap/bootstrap-slider.js create mode 100644 webroot/js/bootstrap/bootstrap-slider.min.js create mode 100755 webroot/js/bootstrap/bootstrap-toggle.js create mode 100755 webroot/js/bootstrap/bootstrap-toggle.min.js create mode 100755 webroot/js/bootstrap/bootstrap-toggle.min.js.map create mode 100644 webroot/js/bootstrap/bootstrap.js create mode 100644 webroot/js/bootstrap/bootstrap.min.js create mode 100644 webroot/js/bootstrap/npm.js create mode 100755 webroot/js/chart.min.js create mode 100644 webroot/js/empty create mode 100755 webroot/js/filesize.min.js create mode 100755 webroot/js/jquery/.DS_Store create mode 100644 webroot/js/jquery/jquery.js create mode 100644 webroot/js/jquery/jquery.min.js create mode 100644 webroot/js/jquery/jquery.min.map create mode 100644 webroot/js/jquery/jquery.slim.js create mode 100644 webroot/js/jquery/jquery.slim.min.js create mode 100644 webroot/js/jquery/jquery.slim.min.map create mode 100644 webroot/js/moment.min.js diff --git a/.DS_Store b/.DS_Store new file mode 100755 index 0000000000000000000000000000000000000000..0de12ee80b660d420f1ce542dffedcac44ae87a8 GIT binary patch literal 10244 zcmeHMTWB0r82*i)!+t6U{X>^_48I!@u%(64P ziNfEs1?ONDT)t*h(!>*KoRreiy-Qg;8UOUKXYbt+0=(TXbqeL=ltjP zpZVuI-KrV5~)d7Rc2L?~Z;D&gg0)edvuwzpQE~FuunA>=Nw@lY-X<5aB!lL4mT~bJ$<>D)$6BjviBZ#-iz|D39NW`O+emLvofG_D^-JOBTK4-nr)1lu9+|`(|aUDNeaakbzz~k^;lE1y>+oEy3pFzexxbd+0nMR zs9cn!+QwsD0~4vm=ayIAdi$MA?|$(mM*xGb2vp`Fa%CM3%gqk*a7KZXNO3rRT!&+~ z+8dVdi7OS%v~wxXbZmFjNV_ECO1VoIolZJ-VES0nu`;u^8&|?f%}Qo0%`>_zYsh@m zaK}Ak-ea{%*GYRl{=~SVWL)DugXWo8qnBp8<0dV~rYRVDue564{W6;~`lcv9yF?DSC*j zHQz3)V_6Q3awh0Ja#U8wlg{ic8SRF#Dd_I#RMiLAlh10dcP?evWYt&n_!B4Z-lJBl z-MLrEe?>`}U|L9&luLMZ=hxY(OUA?YCIH?l|rAqY?OEzQHp(OX%zV3VeL>uM3zF^qS`XN51;xp`yPIPpWtWs1FjLliiup+ zSVPo`;C{Rn8}T-5!ox(a4!jfZ!sFP7{Y0^QiDbh>v2mQhNg|nn(>Q}BrqRPJ&fz>h zi5KuGd>Wr2%Ds#i@fCa>-^e4|sXVe>S|?j}C~aGgJxx7~nkA5>qhf;&4y1*10NT1d zP=t#RF52E+7X k)X(G+msF$lpZ^))hXcg@pFuC~|Jw= + RewriteEngine on + RewriteRule ^$ webroot/ [L] + RewriteRule (.*) webroot/$1 [L] + \ No newline at end of file diff --git a/.travis.yml b/.travis.yml new file mode 100644 index 0000000..d10f740 --- /dev/null +++ b/.travis.yml @@ -0,0 +1,16 @@ +language: php + +sudo: false + +php: + - 7.0 + +before_script: + - sh -c "composer require 'cakephp/cakephp-codesniffer:dev-master'" + - phpenv rehash + +script: + - sh -c "vendor/bin/phpcs -p --extensions=php --standard=vendor/cakephp/cakephp-codesniffer/CakePHP ./src ./tests ./config ./webroot" + +notifications: + email: false diff --git a/AdminMappingsTable.php b/AdminMappingsTable.php new file mode 100755 index 0000000..7aaea87 --- /dev/null +++ b/AdminMappingsTable.php @@ -0,0 +1,74 @@ +table('admin_mappings'); + $this->displayField('id'); + $this->primaryKey('id'); + + $this->addBehavior('Timestamp'); + + $this->belongsTo('Users', [ + 'foreignKey' => 'user_id', + 'joinType' => 'INNER' + ]); + $this->belongsTo('AccountMappings', [ + 'foreignKey' => 'account_mapping_id', + 'joinType' => 'INNER' + ]); + } + + /** + * Default validation rules. + * + * @param \Cake\Validation\Validator $validator Validator instance. + * @return \Cake\Validation\Validator + */ + public function validationDefault(Validator $validator) + { + $validator + ->uuid('id') + ->allowEmpty('id', 'create'); + + return $validator; + } + + /** + * Returns a rules checker object that will be used for validating + * application integrity. + * + * @param \Cake\ORM\RulesChecker $rules The rules object to be modified. + * @return \Cake\ORM\RulesChecker + */ + public function buildRules(RulesChecker $rules) + { + $rules->add($rules->existsIn(['user_id'], 'Users')); + $rules->add($rules->existsIn(['account_mapping_id'], 'AccountMappings')); + $rules->add($rules->isUnique(['account_mapping_id', 'user_id']), ['message' => 'unique error']); + return $rules; + } +} diff --git a/README.md b/README.md new file mode 100644 index 0000000..5568240 --- /dev/null +++ b/README.md @@ -0,0 +1,26 @@ +# CakePHP Application Skeleton + +[![Build Status](https://img.shields.io/travis/cakephp/app/master.svg?style=flat-square)](https://travis-ci.org/cakephp/app) +[![License](https://img.shields.io/packagist/l/cakephp/app.svg?style=flat-square)](https://packagist.org/packages/cakephp/app) + +A skeleton for creating applications with [CakePHP](http://cakephp.org) 3.x. + +The framework source code can be found here: [cakephp/cakephp](https://github.com/cakephp/cakephp). + +## Installation + +1. Download [Composer](http://getcomposer.org/doc/00-intro.md) or update `composer self-update`. +2. Run `php composer.phar create-project --prefer-dist cakephp/app [app_name]`. + +If Composer is installed globally, run +```bash +composer create-project --prefer-dist cakephp/app [app_name] +``` + +You should now be able to visit the path to where you installed the app and see +the setup traffic lights. + +## Configuration + +Read and edit `config/app.php` and setup the 'Datasources' and any other +configuration relevant for your application. diff --git a/bin/cake b/bin/cake new file mode 100755 index 0000000..b034386 --- /dev/null +++ b/bin/cake @@ -0,0 +1,40 @@ +#!/usr/bin/env sh +################################################################################ +# +# Cake is a shell script for invoking CakePHP shell commands +# +# CakePHP(tm) : Rapid Development Framework (http://cakephp.org) +# Copyright (c) Cake Software Foundation, Inc. (http://cakefoundation.org) +# +# Licensed under The MIT License +# For full copyright and license information, please see the LICENSE.txt +# Redistributions of files must retain the above copyright notice. +# +# @copyright Copyright (c) Cake Software Foundation, Inc. (http://cakefoundation.org) +# @link http://cakephp.org CakePHP(tm) Project +# @since 1.2.0 +# @license http://www.opensource.org/licenses/mit-license.php MIT License +# +################################################################################ + +# Canonicalize by following every symlink of the given name recursively +canonicalize() { + NAME="$1" + if [ -f "$NAME" ] + then + DIR=$(dirname -- "$NAME") + NAME=$(cd -P "$DIR" > /dev/null && pwd -P)/$(basename -- "$NAME") + fi + while [ -h "$NAME" ]; do + DIR=$(dirname -- "$NAME") + SYM=$(readlink "$NAME") + NAME=$(cd "$DIR" > /dev/null && cd $(dirname -- "$SYM") > /dev/null && pwd)/$(basename -- "$SYM") + done + echo "$NAME" +} + +CONSOLE=$(dirname -- "$(canonicalize "$0")") +APP=$(dirname "$CONSOLE") + +exec php "$CONSOLE"/cake.php "$@" +exit diff --git a/bin/cake.bat b/bin/cake.bat new file mode 100644 index 0000000..d63fa83 --- /dev/null +++ b/bin/cake.bat @@ -0,0 +1,27 @@ +:::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::: +:: +:: Cake is a Windows batch script for invoking CakePHP shell commands +:: +:: CakePHP(tm) : Rapid Development Framework (http://cakephp.org) +:: Copyright (c) Cake Software Foundation, Inc. (http://cakefoundation.org) +:: +:: Licensed under The MIT License +:: Redistributions of files must retain the above copyright notice. +:: +:: @copyright Copyright (c) Cake Software Foundation, Inc. (http://cakefoundation.org) +:: @link http://cakephp.org CakePHP(tm) Project +:: @since 2.0.0 +:: @license http://www.opensource.org/licenses/mit-license.php MIT License +:: +:::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::: + +@echo off + +SET app=%0 +SET lib=%~dp0 + +php "%lib%cake.php" %* + +echo. + +exit /B %ERRORLEVEL% diff --git a/bin/cake.php b/bin/cake.php new file mode 100644 index 0000000..6e4a16a --- /dev/null +++ b/bin/cake.php @@ -0,0 +1,33 @@ +#!/usr/bin/php -q +require->php)) { + $minVersion = preg_replace('/([^0-9\.])/', '', $composer->require->php); + } +} +if (version_compare(phpversion(), $minVersion, '<')) { + fwrite(STDERR, sprintf("Minimum PHP version: %s. You are using: %s.\n", $minVersion, phpversion())); + exit(-1); +} + +include dirname(__DIR__) . '/config/bootstrap.php'; + +exit(Cake\Console\ShellDispatcher::run($argv)); diff --git a/bower_components/bootstrap-toggle/.bower.json b/bower_components/bootstrap-toggle/.bower.json new file mode 100644 index 0000000..d9645b7 --- /dev/null +++ b/bower_components/bootstrap-toggle/.bower.json @@ -0,0 +1,42 @@ +{ + "name": "bootstrap-toggle", + "description": "Bootstrap Toggle is a highly flexible Bootstrap plugin that converts checkboxes into toggles", + "version": "2.2.2", + "keywords": [ + "bootstrap", + "toggle", + "bootstrap-toggle", + "switch", + "bootstrap-switch" + ], + "homepage": "http://www.bootstraptoggle.com", + "repository": { + "type": "git", + "url": "https://github.com/minhur/bootstrap-toggle.git" + }, + "license": "MIT", + "authors": [ + "Min Hur " + ], + "main": [ + "./js/bootstrap-toggle.min.js", + "./css/bootstrap-toggle.min.css" + ], + "ignore": [ + "**/.*", + "node_modules", + "bower_components", + "test", + "tests" + ], + "_release": "2.2.2", + "_resolution": { + "type": "version", + "tag": "2.2.2", + "commit": "f043b18456b62b4ce84a455f772b323ebe7fb148" + }, + "_source": "git://github.com/minhur/bootstrap-toggle.git", + "_target": "^2.2.2", + "_originalSource": "bootstrap-toggle", + "_direct": true +} \ No newline at end of file diff --git a/bower_components/bootstrap-toggle/Gruntfile.js b/bower_components/bootstrap-toggle/Gruntfile.js new file mode 100644 index 0000000..9ac6fc5 --- /dev/null +++ b/bower_components/bootstrap-toggle/Gruntfile.js @@ -0,0 +1,37 @@ +module.exports = function(grunt) { + 'use strict'; + + grunt.initConfig({ + clean: ['dist'], + uglify: { + options: { + preserveComments: 'some', + sourceMap: true + }, + build: { + expand: true, + cwd: 'js', + src: ['**/*.js', ['!**/*.min.js']], + dest: 'js', + ext: '.min.js', + } + }, + cssmin: { + options: { + keepBreaks: true + }, + build: { + expand: true, + cwd: 'css', + src: ['**/*.css', ['!**/*.min.css']], + dest: 'css', + ext: '.min.css', + } + } + }); + grunt.loadNpmTasks('grunt-contrib-clean'); + grunt.loadNpmTasks('grunt-contrib-uglify'); + grunt.loadNpmTasks('grunt-contrib-cssmin'); + grunt.registerTask('default', ['clean', 'uglify', 'cssmin']); + +}; \ No newline at end of file diff --git a/bower_components/bootstrap-toggle/LICENSE b/bower_components/bootstrap-toggle/LICENSE new file mode 100644 index 0000000..88bb5ab --- /dev/null +++ b/bower_components/bootstrap-toggle/LICENSE @@ -0,0 +1,21 @@ +The MIT License (MIT) + +Copyright (c) 2011-2014 Min Hur, The New York Times Company + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in +all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN +THE SOFTWARE. \ No newline at end of file diff --git a/bower_components/bootstrap-toggle/README.md b/bower_components/bootstrap-toggle/README.md new file mode 100644 index 0000000..f9c0dcd --- /dev/null +++ b/bower_components/bootstrap-toggle/README.md @@ -0,0 +1,175 @@ +# Bootstrap Toggle +Bootstrap Toggle is a highly flexible Bootstrap plugin that converts checkboxes into toggles. + +Visit http://www.bootstraptoggle.com for demos. + +## Getting Started + +### Installation +You can [download](https://github.com/minhur/bootstrap-toggle/archive/master.zip) the latest version of Bootstrap Toggle or use CDN to load the library. + +`Warning` If you are using Bootstrap v2.3.2, use `bootstrap2-toggle.min.js` and `bootstrap2-toggle.min.css` instead. + +```html + + +``` + +### Bower Install +```bash +bower install bootstrap-toggle +``` + +## Usage + +### Basic example +Simply add `data-toggle="toggle"` to convert checkboxes into toggles. + +```html + +``` + +### Stacked checkboxes +Refer to Bootstrap Form Controls documentation to create stacked checkboxes. Simply add `data-toggle="toggle"` to convert checkboxes into toggles. + +```html +
+ +
+
+ +
+``` + +### Inline Checkboxes +Refer to Bootstrap Form Controls documentation to create inline checkboxes. Simply add `data-toggle="toggle"` to a convert checkboxes into toggles. + +```html + + + +``` + +## API + +### Initialize by JavaScript +Initialize toggles with id `toggle-one` with a single line of JavaScript. + +```html + + +``` + +### Options +Options can be passed via data attributes or JavaScript. For data attributes, append the option name to `data-`, as in `data-on="Enabled"`. + +```html + + + +``` + +Name|Type|Default|Description| +---|---|---|--- +on|string/html|"On"|Text of the on toggle +off|string/html|"Off"|Text of the off toggle +size|string|"normal"|Size of the toggle. Possible values are `large`, `normal`, `small`, `mini`. +onstyle|string|"primary"|Style of the on toggle. Possible values are `default`, `primary`, `success`, `info`, `warning`, `danger` +offstyle|string|"default"|Style of the off toggle. Possible values are `default`, `primary`, `success`, `info`, `warning`, `danger` +style|string| |Appends the value to the class attribute of the toggle. This can be used to apply custom styles. Refer to Custom Styles for reference. +width|integer|*null*|Sets the width of the toggle. if set to *null*, width will be calculated. +height|integer|*null*|Sets the height of the toggle. if set to *null*, height will be calculated. + +### Methods +Methods can be used to control toggles directly. + +```html + +``` + +Method|Example|Description +---|---|--- +initialize|$('#toggle-demo').bootstrapToggle()|Initializes the toggle plugin with options +destroy|$('#toggle-demo').bootstrapToggle('destroy')|Destroys the toggle +on|$('#toggle-demo').bootstrapToggle('on')|Sets the toggle to 'On' state +off|$('#toggle-demo').bootstrapToggle('off')|Sets the toggle to 'Off' state +toggle|$('#toggle-demo').bootstrapToggle('toggle')|Toggles the state of the toggle +enable|$('#toggle-demo').bootstrapToggle('enable')|Enables the toggle +disable|$('#toggle-demo').bootstrapToggle('disable')|Disables the toggle + +## Events + +### Event Propagation +Note All events are propagated to and from input element to the toggle. + +You should listen to events from the `` directly rather than look for custom events. + +```html + +
+ +``` + +### API vs Input +This also means that using the API or Input to trigger events will work both ways. + +```html + + + + + + +``` + +### Integration + +#### [KnockoutJS](http://knockoutjs.com) + +A binding for knockout is available here: [aAXEe/knockout-bootstrap-toggle](https://github.com/aAXEe/knockout-bootstrap-toggle) + +## Demos + +Visit http://www.bootstraptoggle.com for demos. diff --git a/bower_components/bootstrap-toggle/bower.json b/bower_components/bootstrap-toggle/bower.json new file mode 100644 index 0000000..9d941df --- /dev/null +++ b/bower_components/bootstrap-toggle/bower.json @@ -0,0 +1,32 @@ +{ + "name": "bootstrap-toggle", + "description": "Bootstrap Toggle is a highly flexible Bootstrap plugin that converts checkboxes into toggles", + "version": "2.2.1", + "keywords": [ + "bootstrap", + "toggle", + "bootstrap-toggle", + "switch", + "bootstrap-switch" + ], + "homepage": "http://www.bootstraptoggle.com", + "repository": { + "type": "git", + "url": "https://github.com/minhur/bootstrap-toggle.git" + }, + "license": "MIT", + "authors": [ + "Min Hur " + ], + "main": [ + "./js/bootstrap-toggle.min.js", + "./css/bootstrap-toggle.min.css" + ], + "ignore": [ + "**/.*", + "node_modules", + "bower_components", + "test", + "tests" + ] +} diff --git a/bower_components/bootstrap-toggle/css/bootstrap-toggle.css b/bower_components/bootstrap-toggle/css/bootstrap-toggle.css new file mode 100644 index 0000000..057d08b --- /dev/null +++ b/bower_components/bootstrap-toggle/css/bootstrap-toggle.css @@ -0,0 +1,83 @@ +/*! ======================================================================== + * Bootstrap Toggle: bootstrap-toggle.css v2.2.0 + * http://www.bootstraptoggle.com + * ======================================================================== + * Copyright 2014 Min Hur, The New York Times Company + * Licensed under MIT + * ======================================================================== */ + + +.checkbox label .toggle, +.checkbox-inline .toggle { + margin-left: -20px; + margin-right: 5px; +} + +.toggle { + position: relative; + overflow: hidden; +} +.toggle input[type="checkbox"] { + display: none; +} +.toggle-group { + position: absolute; + width: 200%; + top: 0; + bottom: 0; + left: 0; + transition: left 0.35s; + -webkit-transition: left 0.35s; + -moz-user-select: none; + -webkit-user-select: none; +} +.toggle.off .toggle-group { + left: -100%; +} +.toggle-on { + position: absolute; + top: 0; + bottom: 0; + left: 0; + right: 50%; + margin: 0; + border: 0; + border-radius: 0; +} +.toggle-off { + position: absolute; + top: 0; + bottom: 0; + left: 50%; + right: 0; + margin: 0; + border: 0; + border-radius: 0; +} +.toggle-handle { + position: relative; + margin: 0 auto; + padding-top: 0px; + padding-bottom: 0px; + height: 100%; + width: 0px; + border-width: 0 1px; +} + +.toggle.btn { min-width: 59px; min-height: 34px; } +.toggle-on.btn { padding-right: 24px; } +.toggle-off.btn { padding-left: 24px; } + +.toggle.btn-lg { min-width: 79px; min-height: 45px; } +.toggle-on.btn-lg { padding-right: 31px; } +.toggle-off.btn-lg { padding-left: 31px; } +.toggle-handle.btn-lg { width: 40px; } + +.toggle.btn-sm { min-width: 50px; min-height: 30px;} +.toggle-on.btn-sm { padding-right: 20px; } +.toggle-off.btn-sm { padding-left: 20px; } + +.toggle.btn-xs { min-width: 35px; min-height: 22px;} +.toggle-on.btn-xs { padding-right: 12px; } +.toggle-off.btn-xs { padding-left: 12px; } + diff --git a/bower_components/bootstrap-toggle/css/bootstrap-toggle.min.css b/bower_components/bootstrap-toggle/css/bootstrap-toggle.min.css new file mode 100644 index 0000000..0d42ed0 --- /dev/null +++ b/bower_components/bootstrap-toggle/css/bootstrap-toggle.min.css @@ -0,0 +1,28 @@ +/*! ======================================================================== + * Bootstrap Toggle: bootstrap-toggle.css v2.2.0 + * http://www.bootstraptoggle.com + * ======================================================================== + * Copyright 2014 Min Hur, The New York Times Company + * Licensed under MIT + * ======================================================================== */ +.checkbox label .toggle,.checkbox-inline .toggle{margin-left:-20px;margin-right:5px} +.toggle{position:relative;overflow:hidden} +.toggle input[type=checkbox]{display:none} +.toggle-group{position:absolute;width:200%;top:0;bottom:0;left:0;transition:left .35s;-webkit-transition:left .35s;-moz-user-select:none;-webkit-user-select:none} +.toggle.off .toggle-group{left:-100%} +.toggle-on{position:absolute;top:0;bottom:0;left:0;right:50%;margin:0;border:0;border-radius:0} +.toggle-off{position:absolute;top:0;bottom:0;left:50%;right:0;margin:0;border:0;border-radius:0} +.toggle-handle{position:relative;margin:0 auto;padding-top:0;padding-bottom:0;height:100%;width:0;border-width:0 1px} +.toggle.btn{min-width:59px;min-height:34px} +.toggle-on.btn{padding-right:24px} +.toggle-off.btn{padding-left:24px} +.toggle.btn-lg{min-width:79px;min-height:45px} +.toggle-on.btn-lg{padding-right:31px} +.toggle-off.btn-lg{padding-left:31px} +.toggle-handle.btn-lg{width:40px} +.toggle.btn-sm{min-width:50px;min-height:30px} +.toggle-on.btn-sm{padding-right:20px} +.toggle-off.btn-sm{padding-left:20px} +.toggle.btn-xs{min-width:35px;min-height:22px} +.toggle-on.btn-xs{padding-right:12px} +.toggle-off.btn-xs{padding-left:12px} \ No newline at end of file diff --git a/bower_components/bootstrap-toggle/css/bootstrap2-toggle.css b/bower_components/bootstrap-toggle/css/bootstrap2-toggle.css new file mode 100644 index 0000000..3f48927 --- /dev/null +++ b/bower_components/bootstrap-toggle/css/bootstrap2-toggle.css @@ -0,0 +1,85 @@ +/*! ======================================================================== + * Bootstrap Toggle: bootstrap2-toggle.css v2.2.0 + * http://www.bootstraptoggle.com + * ======================================================================== + * Copyright 2014 Min Hur, The New York Times Company + * Licensed under MIT + * ======================================================================== */ + + +label.checkbox .toggle, +label.checkbox.inline .toggle { + margin-left: -20px; + margin-right: 5px; +} +.toggle { + min-width: 40px; + height: 20px; + position: relative; + overflow: hidden; +} +.toggle input[type="checkbox"] { + display: none; +} +.toggle-group { + position: absolute; + width: 200%; + top: 0; + bottom: 0; + left: 0; + transition: left 0.35s; + -webkit-transition: left 0.35s; + -moz-user-select: none; + -webkit-user-select: none; +} +.toggle.off .toggle-group { + left: -100%; +} +.toggle-on { + position: absolute; + top: 0; + bottom: 0; + left: 0; + right: 50%; + margin: 0; + border: 0; + border-radius: 0; +} +.toggle-off { + position: absolute; + top: 0; + bottom: 0; + left: 50%; + right: 0; + margin: 0; + border: 0; + border-radius: 0; +} +.toggle-handle { + position: relative; + margin: 0 auto; + padding-top: 0px; + padding-bottom: 0px; + height: 100%; + width: 0px; + border-width: 0 1px; +} +.toggle-handle.btn-mini { + top: -1px; +} +.toggle.btn { min-width: 30px; } +.toggle-on.btn { padding-right: 24px; } +.toggle-off.btn { padding-left: 24px; } + +.toggle.btn-large { min-width: 40px; } +.toggle-on.btn-large { padding-right: 35px; } +.toggle-off.btn-large { padding-left: 35px; } + +.toggle.btn-small { min-width: 25px; } +.toggle-on.btn-small { padding-right: 20px; } +.toggle-off.btn-small { padding-left: 20px; } + +.toggle.btn-mini { min-width: 20px; } +.toggle-on.btn-mini { padding-right: 12px; } +.toggle-off.btn-mini { padding-left: 12px; } + diff --git a/bower_components/bootstrap-toggle/css/bootstrap2-toggle.min.css b/bower_components/bootstrap-toggle/css/bootstrap2-toggle.min.css new file mode 100644 index 0000000..1509c57 --- /dev/null +++ b/bower_components/bootstrap-toggle/css/bootstrap2-toggle.min.css @@ -0,0 +1,28 @@ +/*! ======================================================================== + * Bootstrap Toggle: bootstrap2-toggle.css v2.2.0 + * http://www.bootstraptoggle.com + * ======================================================================== + * Copyright 2014 Min Hur, The New York Times Company + * Licensed under MIT + * ======================================================================== */ +label.checkbox .toggle,label.checkbox.inline .toggle{margin-left:-20px;margin-right:5px} +.toggle{min-width:40px;height:20px;position:relative;overflow:hidden} +.toggle input[type=checkbox]{display:none} +.toggle-group{position:absolute;width:200%;top:0;bottom:0;left:0;transition:left .35s;-webkit-transition:left .35s;-moz-user-select:none;-webkit-user-select:none} +.toggle.off .toggle-group{left:-100%} +.toggle-on{position:absolute;top:0;bottom:0;left:0;right:50%;margin:0;border:0;border-radius:0} +.toggle-off{position:absolute;top:0;bottom:0;left:50%;right:0;margin:0;border:0;border-radius:0} +.toggle-handle{position:relative;margin:0 auto;padding-top:0;padding-bottom:0;height:100%;width:0;border-width:0 1px} +.toggle-handle.btn-mini{top:-1px} +.toggle.btn{min-width:30px} +.toggle-on.btn{padding-right:24px} +.toggle-off.btn{padding-left:24px} +.toggle.btn-large{min-width:40px} +.toggle-on.btn-large{padding-right:35px} +.toggle-off.btn-large{padding-left:35px} +.toggle.btn-small{min-width:25px} +.toggle-on.btn-small{padding-right:20px} +.toggle-off.btn-small{padding-left:20px} +.toggle.btn-mini{min-width:20px} +.toggle-on.btn-mini{padding-right:12px} +.toggle-off.btn-mini{padding-left:12px} \ No newline at end of file diff --git a/bower_components/bootstrap-toggle/doc/header.png b/bower_components/bootstrap-toggle/doc/header.png new file mode 100644 index 0000000000000000000000000000000000000000..eb8d58be909395426613861952360915fe6c3946 GIT binary patch literal 89486 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ξ|fel9jv^uPn+K-4bcWDncw);!1&x@A& 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 literal 0 HcmV?d00001 diff --git a/bower_components/bootstrap-toggle/doc/nytdev.svg b/bower_components/bootstrap-toggle/doc/nytdev.svg new file mode 100644 index 0000000..39669ee --- /dev/null +++ b/bower_components/bootstrap-toggle/doc/nytdev.svg @@ -0,0 +1,239 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/bower_components/bootstrap-toggle/doc/script.js b/bower_components/bootstrap-toggle/doc/script.js new file mode 100644 index 0000000..863728a --- /dev/null +++ b/bower_components/bootstrap-toggle/doc/script.js @@ -0,0 +1,49 @@ ++function ($) { + 'use strict'; + + $('.example:not(.skip)').each(function() { + // fetch & encode html + var html = $('
').text($(this).html()).html() + // find number of space/tabs on first line (minus line break) + var count = html.match(/^(\s+)/)[0].length - 1 + // replace tabs/spaces on each lines with + var regex = new RegExp('\\n\\s{'+count+'}', 'g') + var code = html.replace(regex, '\n').replace(/\t/g, ' ').trim() + // other cleanup + code = code.replace(/=""/g,'') + // add code block to dom + $(this).after( $('').html(code) ) + }); + + $('code.highlight').each(function() { + hljs.highlightBlock(this) + }); + +}(jQuery); + +var Demo = function () {} + +Demo.prototype.init = function(selector) { + $(selector).bootstrapToggle(selector) +} +Demo.prototype.destroy = function(selector) { + $(selector).bootstrapToggle('destroy') +} +Demo.prototype.on = function(selector) { + $(selector).bootstrapToggle('on') +} +Demo.prototype.off = function(selector) { + $(selector).bootstrapToggle('off') +} +Demo.prototype.toggle = function(selector) { + $(selector).bootstrapToggle('toggle') +} +Demo.prototype.enable = function(selector) { + $(selector).bootstrapToggle('enable') +} +Demo.prototype.disable = function(selector) { + $(selector).bootstrapToggle('disable') +} + + +demo = new Demo() diff --git a/bower_components/bootstrap-toggle/doc/stylesheet.css b/bower_components/bootstrap-toggle/doc/stylesheet.css new file mode 100644 index 0000000..fe7a444 --- /dev/null +++ b/bower_components/bootstrap-toggle/doc/stylesheet.css @@ -0,0 +1,112 @@ +header, footer { + padding: 20px; + background-image: url('header.png'); + background-size: 256px 256px; +} +footer { + color: #fff; + text-align: center; +} +.nyt-logo { + max-height: 40px; + margin-top: 5px; + margin-right: 5px; +} + +nav.navbar { + margin-bottom: 10px; + background-color: #fff; + border: 0px; + border-radius: 2px; +} +#navbar { + margin: 0px; +} +#navbar .navbar-nav li iframe { + margin-top: 15px; +} +#navbar .navbar-nav li:last-child iframe { + margin-right: 15px; +} + +@media screen and (max-width: 767px) { + #navbar .navbar-nav li iframe { + display: none; + } +} + +.mast-head { + margin: 10px 0; +} +.mast-head h1 { + margin-bottom: 15px; + color: #fff; +} +.mast-head p { + color: #fff; +} + +.mast-links { + padding-top: 10px; +} + +.mast-links > * { + vertical-align: middle; + margin-bottom: 10px; +} + +.mast-links > .btn { + margin-right: 30px; +} +main { + margin: 10px 20px; +} +main .container { + margin-bottom: 40px; +} + +code.hljs { + border: 1px solid #ccc; + padding: 1em; + white-space: pre; + margin-bottom: 10px; +} + +.example { + position: relative; + border: 1px solid #ccc; + padding: 1em 1em 0.5em 1em; + border-radius: 4px 4px 0 0; +} + +.example:after { + content: "Example"; + position: absolute; + top: 0px; + right: 0px; + padding: 3px 7px; + font-size: 12px; + font-weight: bold; + background-color: #f5f5f5; + border: 1px solid #ccc; + color: #9da0a4; + border-radius: 0px 4px 0px 4px; + border-width: 0px 0px 1px 1px; +} + +.example + code.hljs { + border-top: 0; + border-radius: 0px 0px 4px 4px; +} + +.example > * { + margin-bottom: 10px; +} + +.example > div.toggle { + margin-right: 10px; +} + +.table-striped code { + background-color: inherit; +} \ No newline at end of file diff --git a/bower_components/bootstrap-toggle/index.html b/bower_components/bootstrap-toggle/index.html new file mode 100644 index 0000000..3874fa2 --- /dev/null +++ b/bower_components/bootstrap-toggle/index.html @@ -0,0 +1,449 @@ + + + + + + + + + + + + + Bootstrap Toggle + + + + + + + + + +
+ +
+
+

Bootstrap Toggle

+

Bootstrap Toggle is a highly flexible Bootstrap plugin that converts checkboxes into toggles

+ +
+
+
+ +
+
+

Getting Started

+
+

Installation

+

You can download the latest version of Bootstrap Toggle or use CDN to load the library.

+

Warning If you are using Bootstrap v2.3.2, use bootstrap2-toggle.min.js and bootstrap2-toggle.min.css instead.

+ <link href="https://gitcdn.github.io/bootstrap-toggle/2.2.0/css/bootstrap-toggle.min.css" rel="stylesheet"> +<script src="https://gitcdn.github.io/bootstrap-toggle/2.2.0/js/bootstrap-toggle.min.js"></script> + +

Bower Install

+

+ bower install bootstrap-toggle +
+
+

Usage

+
+ +

Basic example

+

Simply add data-toggle="toggle" to convert checkboxes into toggles.

+
+ +
+ +

Stacked checkboxes

+

Refer to Bootstrap Form Controls documentation to create stacked checkboxes. Simply add data-toggle="toggle" to convert checkboxes into toggles.

+
+
+ +
+
+ +
+
+ +

Inline Checkboxes

+

Refer to Bootstrap Form Controls documentation to create inline checkboxes. Simply add data-toggle="toggle" to a convert checkboxes into toggles.

+
+ + + +
+
+ +
+

API

+
+ +

Initialize by JavaScript

+

Initialize toggles with id toggle-one with a single line of JavaScript.

+
+ + +
+ +

Options

+

Options can be passed via data attributes or JavaScript. For data attributes, append the option name to data-, as in data-on="Enabled".

+
+ + + +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameTypeDefaultDescription
onstring | html"On"Text of the on toggle
offstring | html"Off"Text of the off toggle
sizestring"normal" + Size of the toggle. Possible values are:large,normal,small,mini
+ Refer to Bootstrap Button Sizes documentation for more information. +
onstylestring"primary" + Style of the on toggle.
Possible values are:default,primary,success,info,warning,danger
+ Refer to Bootstrap Button Options documentation for more information. +
offstylestring"default" + Style of the off toggle.
Possible values are:default,primary,success,info,warning,danger
+ Refer to Bootstrap Button Options documentation for more information. +
stylestring + Appends the value to the class attribute of the toggle. This can be used to apply custom styles. Refer to Custom Styles for reference. +
widthintegernull + Sets the width of the toggle. if set to null, width will be calculated. +
heightintegernull + Sets the height of the toggle. if set to null, height will be calculated. +
+
+ +

Methods

+

Methods can be used to control toggles directly.

+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
MethodExampleDescriptionDemo
initialize$('#toggle-demo').bootstrapToggle()Initializes the toggle plugin with options
destroy$('#toggle-demo').bootstrapToggle('destroy')Destroys the toggle
on$('#toggle-demo').bootstrapToggle('on')Sets the toggle to 'On' state
off$('#toggle-demo').bootstrapToggle('off')Sets the toggle to 'Off' state
toggle$('#toggle-demo').bootstrapToggle('toggle')Toggles the state of the toggle
enable$('#toggle-demo').bootstrapToggle('enable')Enables the toggle
disable$('#toggle-demo').bootstrapToggle('disable')Disables the toggle
+
+
+ + +
+

Events

+
+ +

Event Propagation

+

Note All events are propagated to and from input element to the toggle.

+

You should listen to events from the <input type="checkbox"> directly rather than look for custom events.

+
+ +
+ +
+ +

API vs Input

+

This also means that using the API or Input to trigger events will work both ways.

+
+ + + + + + +
+
+ +
+

Demos

+
+ +

Sizes

+

Bootstrap toggle is available in different sizes. Refer to Bootstrap Button Sizes documentation for more information.

+
+ + + + +
+ +

Custom Sizes

+

Bootstrap toggle can handle custom sizes by data-width and data-height options.

+
+ + + +
+ +

Colors

+

Bootstrap Toggle supports various colors. Refer to Bootstrap Button Options documentation for more information.

+
+ + + + + + +
+ +

Colors Mix

+

You can style on state as well as the off state.

+
+ + +
+ +

Custom Style

+

Customized styles can be applied as easily.

+
+ + + + +
+ +

Custom Text

+

The text can be changed easily with attributes or options.

+
+ +
+ +

Icons/Html Text

+

You can easily add icons or images since html is supported for on/off text.

+
+ +
+ +

Multiple Lines of Text

+

Toggles with multiple lines will adjust its heights.

+
+ +
+ +

Animation Speed

+

Transition speed can be easily controlled with css transition property on .toggle-group. You can also turn animation off completely.

+
+ + + + +
+
+
+ + + + + + + + \ No newline at end of file diff --git a/bower_components/bootstrap-toggle/js/bootstrap-toggle.js b/bower_components/bootstrap-toggle/js/bootstrap-toggle.js new file mode 100644 index 0000000..533914e --- /dev/null +++ b/bower_components/bootstrap-toggle/js/bootstrap-toggle.js @@ -0,0 +1,180 @@ +/*! ======================================================================== + * Bootstrap Toggle: bootstrap-toggle.js v2.2.0 + * http://www.bootstraptoggle.com + * ======================================================================== + * Copyright 2014 Min Hur, The New York Times Company + * Licensed under MIT + * ======================================================================== */ + + + +function ($) { + 'use strict'; + + // TOGGLE PUBLIC CLASS DEFINITION + // ============================== + + var Toggle = function (element, options) { + this.$element = $(element) + this.options = $.extend({}, this.defaults(), options) + this.render() + } + + Toggle.VERSION = '2.2.0' + + Toggle.DEFAULTS = { + on: 'On', + off: 'Off', + onstyle: 'primary', + offstyle: 'default', + size: 'normal', + style: '', + width: null, + height: null + } + + Toggle.prototype.defaults = function() { + return { + on: this.$element.attr('data-on') || Toggle.DEFAULTS.on, + off: this.$element.attr('data-off') || Toggle.DEFAULTS.off, + onstyle: this.$element.attr('data-onstyle') || Toggle.DEFAULTS.onstyle, + offstyle: this.$element.attr('data-offstyle') || Toggle.DEFAULTS.offstyle, + size: this.$element.attr('data-size') || Toggle.DEFAULTS.size, + style: this.$element.attr('data-style') || Toggle.DEFAULTS.style, + width: this.$element.attr('data-width') || Toggle.DEFAULTS.width, + height: this.$element.attr('data-height') || Toggle.DEFAULTS.height + } + } + + Toggle.prototype.render = function () { + this._onstyle = 'btn-' + this.options.onstyle + this._offstyle = 'btn-' + this.options.offstyle + var size = this.options.size === 'large' ? 'btn-lg' + : this.options.size === 'small' ? 'btn-sm' + : this.options.size === 'mini' ? 'btn-xs' + : '' + var $toggleOn = $('