');
- $container.add($wrapper);
- self.addItem(item.items, $wrapper);
- } else {
- var apiItem = new ApiItem(item);
-
- if (item.id) {
- _itemsById[item.id] = apiItem;
- }
-
- if (item.appKey) {
- _itemsByAppKey[item.appKey] = apiItem;
- }
-
- _items.push(apiItem);
-
- // set the value of the item via the manipulator to ensure consistency
- var value = typeof _settings[item.appKey] !== 'undefined' ?
- _settings[item.appKey] :
- (item.value || '');
-
- apiItem.set(value);
-
- $container.add(apiItem.$element);
- }
- }
- }
- });
-}
-
-module.exports = Api;
diff --git a/src/scripts/lib/clay-config.js b/src/scripts/lib/clay-config.js
new file mode 100644
index 0000000..45a3030
--- /dev/null
+++ b/src/scripts/lib/clay-config.js
@@ -0,0 +1,110 @@
+'use strict';
+
+/**
+ * A Clay config Item
+ * @typedef {object} Clay~ConfigItem
+ * @property {string} type
+ * @property {string|boolean|number} value
+ * @property {string} [appKey]
+ * @property {string} [id]
+ * @property {string} [label]
+ * @property {object} [attributes]
+ * @property {array} [options]
+ * @property {array} [items]
+ */
+
+var HTML = require('../vendor/minified/minified').HTML;
+var _ = require('../vendor/minified/minified')._;
+var ApiItem = require('./clay-item');
+var utils = require('../lib/utils');
+
+function ClayConfig(settings, config, $rootContainer) {
+ var self = this;
+
+ var _settings = _.copyObj(settings);
+ var _items = [];
+ var _itemsById = {};
+ var _itemsByAppKey = {};
+
+ /**
+ * @param {string} key
+ * @returns {ClayItem}
+ */
+ self.getItemByAppKey = function(key) {
+ return _itemsByAppKey[key];
+ };
+
+ /**
+ * @param {string} key
+ * @returns {ClayItem}
+ */
+ self.getItemById = function(key) {
+ return _itemsById[key];
+ };
+
+ /**
+ * @param {string} key
+ * @returns {[ClayItem]}
+ */
+ self.getItemsByType = function(type) {
+ return _items.filter(function(item) {
+ return item.config.type === type;
+ });
+ };
+
+ /**
+ * @returns {object}
+ */
+ self.getSettings = function() {
+ _.eachObj(_itemsByAppKey, function(appKey, item) {
+ _settings[appKey] = item.get();
+ });
+ return _settings;
+ };
+
+ /**
+ * Add item(s) to the config
+ * @param {Clay~ConfigItem|array} items
+ * @param {M} [$container]
+ */
+ var _addItems = function(item, $container) {
+ if (Array.isArray(item)) {
+ item.forEach(function(item) {
+ _addItems(item, $container);
+ });
+ } else if (item.type === 'section') {
+ var $wrapper = HTML('
');
+ $container.add($wrapper);
+ _addItems(item.items, $wrapper);
+ } else {
+ var apiItem = new ApiItem(item);
+
+ if (item.id) {
+ _itemsById[item.id] = apiItem;
+ }
+
+ if (item.appKey) {
+ _itemsByAppKey[item.appKey] = apiItem;
+ }
+
+ _items.push(apiItem);
+
+ // set the value of the item via the manipulator to ensure consistency
+ var value = typeof _settings[item.appKey] !== 'undefined' ?
+ _settings[item.appKey] :
+ (item.value || '');
+
+ apiItem.set(value);
+
+ $container.add(apiItem.$element);
+ }
+ };
+
+ // prevent external modifications of properties
+ utils.updateProperties(self, { writable: false, configurable: false });
+
+ // initialize the config
+ _addItems(config, $rootContainer);
+}
+
+module.exports = ClayConfig;
diff --git a/src/scripts/lib/clay-item.js b/src/scripts/lib/clay-item.js
new file mode 100644
index 0000000..0433e68
--- /dev/null
+++ b/src/scripts/lib/clay-item.js
@@ -0,0 +1,116 @@
+'use strict';
+
+var itemTypes = require('./items');
+var $ = require('../vendor/minified/minified').$;
+var _ = require('../vendor/minified/minified')._;
+var HTML = require('../vendor/minified/minified').HTML;
+var utils = require('../lib/utils');
+
+function ClayItem(config) {
+ var self = this;
+
+ var _eventProxies = {};
+ var _itemType = itemTypes[config.type];
+ var _templateData = _.extend({}, _itemType.defaults, config);
+
+ /** @type {string|null} */
+ self.id = config.id || null;
+
+ /** @type {string|null} */
+ self.appKey = config.appKey || null;
+
+ /** @type {object|null} */
+ self.config = config || null;
+
+ /** @type {M} */
+ self.$element = HTML(_.formatHtml(_itemType.template, _templateData));
+
+ /** @type {M} */
+ self.$manipulatorTarget = self.$element.select('[data-manipulator-target]');
+
+ // this caters for situations where the manipulator target is the root element
+ if (!self.$manipulatorTarget.length) {
+ self.$manipulatorTarget = self.$element;
+ }
+
+ /**
+ * Attach an event listener to the item. This proxies minified.js' on.
+ * If you are using a native event like "change", consider using "|change" instead
+ * as this will allow the native events to still work
+ * @see {@link http://minifiedjs.com/api/on.html|.on()}
+ * @param {string} events
+ * @param {function} handler
+ * @returns {ClayItem}
+ */
+ self.on = function(events, handler) {
+ _eventProxies[handler] = function() {
+ handler.apply(self, arguments);
+ };
+ self.$manipulatorTarget.on(events, _eventProxies[handler]);
+ return self;
+ };
+
+ /**
+ * Attach an event listener to the item. This proxies minified.js' one.
+ * If you are using a native event like "change", consider using "|change" instead
+ * as this will allow the native events to still work
+ * @see {@link http://minifiedjs.com/api/one.html|.one()}
+ * @param {string} events
+ * @param {function} handler
+ * @returns {ClayItem}
+ */
+ self.one = function(events, handler) {
+ _eventProxies[handler] = function(event) {
+ handler.apply(self, arguments);
+ $.off(_eventProxies[handler]);
+ };
+ self.$manipulatorTarget.on(events, _eventProxies[handler]);
+ return self;
+ };
+
+ /**
+ * Remove the given event handler.
+ * @see {@link http://minifiedjs.com/api/off.html|$.off()}
+ * @param {function} handler
+ * @returns {ClayItem}
+ */
+ self.off = function(handler) {
+ return $.off(_eventProxies[handler]);
+ };
+
+ /**
+ * trigger an event. This proxies minified.js' trigger.
+ * @param {string} name - a single event name to trigger
+ * @param {object} eventObj - an object to pass to the event handler, provided the
+ * handler does not have custom arguments.
+ * @see {@link http://minifiedjs.com/api/trigger.html|.trigger()}
+ * @returns {ClayItem}
+ */
+ self.trigger = function(name, eventObj) {
+ self.$manipulatorTarget.trigger(name, eventObj);
+ return self;
+ };
+
+ /**
+ * Run the initializer. This will automatically be run on item creation.
+ * @returns {ClayItem}
+ */
+ self.initialize = function() {
+ if (typeof _itemType.initialize === 'function') {
+ _itemType.initialize.apply(self, arguments);
+ }
+ return self;
+ };
+
+ // attach the manipulator methods to the clayItem
+ _.eachObj(_itemType.manipulator, function(methodName, method) {
+ self[methodName] = method.bind(self);
+ });
+
+ self.initialize();
+
+ // prevent external modifications of properties
+ utils.updateProperties(self, { writable: false, configurable: false });
+}
+
+module.exports = ClayItem;
diff --git a/src/scripts/lib/items/color.js b/src/scripts/lib/items/color.js
index 2036761..8b285b5 100644
--- a/src/scripts/lib/items/color.js
+++ b/src/scripts/lib/items/color.js
@@ -29,7 +29,6 @@ module.exports = {
var grid = '';
var itemWidth = 100 / layout[0].length;
var itemHeight = 100 / layout.length;
- var boxHeight = itemWidth * layout.length;
var $elem = self.$element;
for (var i = 0; i < layout.length; i++) {
diff --git a/src/scripts/lib/utils.js b/src/scripts/lib/utils.js
new file mode 100644
index 0000000..052398e
--- /dev/null
+++ b/src/scripts/lib/utils.js
@@ -0,0 +1,18 @@
+'use strict';
+
+/**
+ * Batch update all the properties of an object.
+ * @param {object} obj
+ * @param {object} descriptor
+ * @param {boolean} [descriptor.configurable]
+ * @param {boolean} [descriptor.enumerable]
+ * @param {*} [descriptor.value]
+ * @param {boolean} [descriptor.writable]
+ * @param {function} [descriptor.get]
+ * @param {function} [descriptor.set]
+ */
+module.exports.updateProperties = function(obj, descriptor) {
+ Object.getOwnPropertyNames(obj).forEach(function(prop) {
+ Object.defineProperty(obj, prop, descriptor);
+ });
+};
diff --git a/test/spec/lib/api-item.js b/test/spec/lib/api-item.js
index bbfc6a3..be50281 100644
--- a/test/spec/lib/api-item.js
+++ b/test/spec/lib/api-item.js
@@ -1,7 +1,7 @@
'use strict';
var assert = require('chai').assert;
-var ApiItem = require('../../../src/scripts/lib/api-item');
+var ApiItem = require('../../../src/scripts/lib/clay-item');
var fixture = require('../../fixture');
var items = require('../../../src/scripts/lib/items');
diff --git a/test/spec/lib/utils.js b/test/spec/lib/utils.js
new file mode 100644
index 0000000..eb7d5b7
--- /dev/null
+++ b/test/spec/lib/utils.js
@@ -0,0 +1,21 @@
+'use strict';
+
+var utils = require('../../../src/scripts/lib/utils');
+var assert = require('chai').assert;
+
+describe('.updateProperties', function() {
+ var obj;
+
+ beforeEach(function() {
+ obj = {
+ one: 1,
+ two: 2
+ };
+ });
+
+ it('sets the properties as non-writable', function() {
+ utils.updateProperties(obj, { writable: false });
+ assert.strictEqual(Object.getOwnPropertyDescriptor(obj, 'one').writable, false);
+ assert.strictEqual(Object.getOwnPropertyDescriptor(obj, 'two').writable, false);
+ });
+});
diff --git a/vendor/pebble-slate/.bower.json b/vendor/pebble-slate/.bower.json
deleted file mode 100755
index 1bc632e..0000000
--- a/vendor/pebble-slate/.bower.json
+++ /dev/null
@@ -1,21 +0,0 @@
-{
- "name": "Slate",
- "homepage": "https://github.com/pebble/slate",
- "license": "MIT",
- "ignore": [
- "**/.*",
- "node_modules",
- "bower_components",
- "test",
- "tests"
- ],
- "_release": "81d6db0ccd",
- "_resolution": {
- "type": "branch",
- "branch": "master",
- "commit": "81d6db0ccd64e455985c01683fed4fd287970637"
- },
- "_source": "git@github.com:keegan-lillo/slate.git",
- "_target": "master",
- "_originalSource": "git@github.com:keegan-lillo/slate.git"
-}
\ No newline at end of file
diff --git a/vendor/pebble-slate/History.md b/vendor/pebble-slate/History.md
deleted file mode 100755
index 6404c07..0000000
--- a/vendor/pebble-slate/History.md
+++ /dev/null
@@ -1,16 +0,0 @@
-
-0.0.3 / 2015-07-29
-==================
-
- * Change PFDinDisplayPro-Regular to PFDinDisplayPro-Light.
- * Use the web fonts as a fallback for when system font is unavailable.
-
-0.0.2 / 2015-07-29
-==================
-
- * Fix font imports.
-
-0.0.1 / 2015-07-07
-==================
-
- * Initial release
diff --git a/vendor/pebble-slate/LICENSE b/vendor/pebble-slate/LICENSE
deleted file mode 100755
index bee51b7..0000000
--- a/vendor/pebble-slate/LICENSE
+++ /dev/null
@@ -1,22 +0,0 @@
-(The MIT License)
-
-Copyright (c) 2015 Pebble Technology
-
-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.
diff --git a/vendor/pebble-slate/README.md b/vendor/pebble-slate/README.md
deleted file mode 100755
index 17d2829..0000000
--- a/vendor/pebble-slate/README.md
+++ /dev/null
@@ -1,312 +0,0 @@
-Slate
-=====
-
-
-
-Slate is a front-end framework for developing Pebble mobile configuration pages.
-It's the fastest way to make a clean UI for a Pebble app's mobile configuration
-page.
-
-
-
-Getting Started
----------------
-
-### Getting Slate
-
-There are only four files that makeup the Slate framework, a CSS file and a
-JavaScript file, and two fonts.
-
-There are two quick ways to getting started with Slate.
-
-#### Via Download
-
-The CSS and JS files and fonts are also available via download.
-
-[Download Slate 0.0.3 >](https://github.com/pebble/slate/archive/v0.0.3.zip)
-
-#### Via Bower
-
-The CSS and JS files and fonts are also avaliable via Bower.
-
-```bash
-bower install pebble-slate
-```
-
-### Zepto.js
-
-Slate is also bundled with [Zepto.js](https://github.com/madrobby/zepto), which
-is "a minimalist JavaScript library for modern browsers with a largely
-jQuery-compatible API."
-
-Video Tutorial
---------------
-
-A detailed live demo tutorial was given at the Pebble SF Meetup, and can be
-watched in full below.
-
-[](http://www.youtube.com/watch?v=TtP7z6wceqI)
-
-Additionally, the example app used in the video
-[can be found here](https://github.com/pebble-hacks/slate-watchface-template),
-while a second example implementation
-[can be found here](https://github.com/pebble-examples/slate-config-example).
-
-Documentation
--------------
-
-Here is a list of the different components you can create with Slate.
-
-### Paragraphs
-
-
-
-```html
-
-
-
- Abilities or he perfectly pretended so strangers be exquisite. Oh to
- another chamber pleased imagine do in. Went me rank at last loud shot an
- draw. Excellent so to no sincerity smallness. Removal request delight if
- on he we. Unaffected in we by apartments astonished to decisively
- themselves. Offended ten old consider speaking.
-
-
-
-```
-
-### Headers, Footers, and Items
-
-
-
-```html
-
-
-
-
- Example Item
-
-
-
-
-
-```
-
-### Toggles and Selects
-
-
-
-```html
-
-```
-
-### Checkboxes
-
-
-
-```html
-
-```
-
-### Radio Buttons
-
-
-
-```html
-
-```
-
-### Date, Time, and Colorpickers
-
-
-
-```html
-
-```
-
-### Input Fields
-
-
-
-```html
-
-```
-
-### Input Fields with Buttons
-
-
-
-```html
-
-```
-
-### Tab Buttons
-
-
-
-```html
-
-```
-
-### Sliders
-
-
-
-```html
-
-```
-
-### Draggable Lists
-
-
-
-```html
-
-
-
-
- Example Item 1
- Example Item 2
- Example Item 3
-
-
-
-```
-
-### Lists
-
-
-
-```html
-
-
-
-
- Example Item A
- Example Item B
-
-
-
-```
-
-### Buttons
-
-
-
-```html
-
-```
diff --git a/vendor/pebble-slate/bower.json b/vendor/pebble-slate/bower.json
deleted file mode 100755
index e67f9d8..0000000
--- a/vendor/pebble-slate/bower.json
+++ /dev/null
@@ -1,13 +0,0 @@
-{
- "name": "Slate",
- "version": "0.0.3",
- "homepage": "https://github.com/pebble/slate",
- "license": "MIT",
- "ignore": [
- "**/.*",
- "node_modules",
- "bower_components",
- "test",
- "tests"
- ]
-}
diff --git a/vendor/pebble-slate/dist/css/slate.css b/vendor/pebble-slate/dist/css/slate.css
deleted file mode 100755
index cad659d..0000000
--- a/vendor/pebble-slate/dist/css/slate.css
+++ /dev/null
@@ -1,485 +0,0 @@
-@font-face {
- font-family: 'PFDinDisplayProLightWebfont';
- src: url("../fonts/PFDinDisplayPro-Light.woff") format("woff");
- font-weight: normal;
- font-style: normal;
- font-variant: normal; }
-@font-face {
- font-family: 'PTSansRegularWebfont';
- src: url("../fonts/PTSans-regular.woff") format("woff");
- font-weight: normal;
- font-style: normal;
- font-variant: normal; }
-* {
- margin: 0;
- padding: 0; }
-
-*:focus {
- outline-width: 0; }
-
-a {
- color: #FF4700;
- text-decoration: none; }
-
-body {
- background-color: #EAEAEA;
- margin-bottom: 15px;
- font-size: 1.2em;
- line-height: 1.4em;
- -webkit-user-select: none !important;
- -moz-user-select: none !important;
- -ms-user-select: none !important;
- user-select: none !important; }
-
-body, select, input[type=text], input[type=time], input[type=date] {
- font-family: 'PFDinDisplayPro-Light', PFDinDisplayProLightWebfont, sans-serif;
- font-weight: normal; }
-
-select, input[type=time], input[type=date] {
- -webkit-appearance: none;
- -moz-appearance: none;
- -ms-appearance: none;
- appearance: none;
- border: none;
- position: absolute;
- top: 13px;
- color: #A8A8A8;
- font-size: 1em;
- line-height: 1em;
- background-color: #F7F7F7; }
-
-input[type=date] {
- direction: rtl; }
-
-select {
- right: 30px;
- top: 14px; }
-
-input[type=time] {
- right: 10px !important; }
-
-input[type=date] {
- right: 10px !important; }
-
-.select-triangle {
- position: absolute;
- right: 10px;
- top: 20px;
- width: 0;
- height: 0;
- border-left: 7px solid transparent;
- border-right: 7px solid transparent;
- border-top: 7px solid #FF4700; }
-
-.item-container {
- color: #333333;
- margin-top: 15px; }
-
-.item-container-header {
- padding: 3px 10px;
- text-transform: uppercase;
- font-family: 'PT Sans', PTSansRegularWebfont, sans-serif;
- font-size: .8em;
- font-weight: normal;
- color: #A8A8A8; }
-
-.item-container-content {
- background-color: #F7F7F7;
- border-top: 1px solid #DEDEDE;
- border-bottom: 1px solid #DEDEDE; }
-
-.item-container-footer {
- padding: 3px 10px;
- font-size: .7em;
- line-height: 1.4em;
- color: #A8A8A8; }
-
-.item {
- position: relative;
- padding: 10px;
- display: block;
- overflow: hidden; }
-
-.item:not(:first-child) {
- border-top: 1px solid #DEDEDE; }
-
-.item-subtitle-wrapper {
- font-size: 1em; }
-
-.item-subtitle-wrapper .item-styled-toggle-wrapper {
- top: 16px; }
-
-.item-subtitle-wrapper .item-styled-checkbox {
- top: 18px; }
-
-.item-subtitle-wrapper .item-styled-radio {
- top: 16px; }
-
-.item-subtitle-wrapper .item-draggable-handle {
- top: 18px; }
-
-.item-subtitle {
- font-size: .7em;
- line-height: .7em;
- padding: .3em 0; }
-
-.item-styled-toggle-wrapper {
- position: absolute;
- right: 10px;
- top: 8px;
- width: 56px;
- height: 30px;
- border-radius: 5px;
- transition-timing-function: ease-in-out;
- transition-duration: 0.3s;
- transition-property: background-color; }
-
-.item-styled-toggle {
- position: relative;
- background-color: #FFFFFF;
- width: 28px;
- height: 28px;
- border-radius: 5px;
- top: 1px;
- transition-timing-function: ease-in-out;
- transition-duration: 0.3s;
- transition-property: left; }
-
-.item-toggle {
- display: none; }
-
-.item-toggle + .item-styled-toggle-wrapper {
- background-color: #A8A8A8; }
-
-.item-toggle:checked + .item-styled-toggle-wrapper {
- background-color: #FF4700; }
-
-.item-toggle + .item-styled-toggle-wrapper .item-styled-toggle {
- left: 1px; }
-
-.item-toggle:checked + .item-styled-toggle-wrapper .item-styled-toggle {
- left: 27px; }
-
-.item-styled-toggle-bar {
- width: 3px;
- height: 15px;
- margin-left: 3px;
- background-color: #EAEAEA;
- float: left;
- position: relative;
- left: 4px;
- top: 7px; }
-
-.item-styled-checkbox {
- position: absolute;
- right: 10px;
- top: 10px;
- width: 21px;
- height: 21px;
- border-radius: 5px;
- border-width: 2px;
- border-style: solid; }
-
-.item-checkbox {
- display: none; }
-
-.item-checkbox + .item-styled-checkbox {
- border-color: #DEDEDE; }
-
-.item-checkbox:checked + .item-styled-checkbox {
- border-color: #FF4700;
- background-color: #FF4700; }
-
-.item-checkbox:checked + .item-styled-checkbox:before {
- content: "";
- display: block;
- position: relative;
- left: 7px;
- width: 6px;
- height: 14px;
- border-color: #F7F7F7;
- border-width: 0 2px 2px 0;
- border-style: solid;
- -webkit-transform: rotate(45deg);
- -moz-transform: rotate(45deg);
- -ms-transform: rotate(45deg);
- -o-transform: rotate(45deg);
- transform: rotate(45deg); }
-
-.item-styled-radio {
- position: absolute;
- right: 10px;
- top: 10px;
- width: 21px;
- height: 21px;
- border-radius: 12px;
- border-width: 2px;
- border-style: solid; }
-
-.item-radio {
- display: none; }
-
-.item-radio + .item-styled-radio {
- border-color: #DEDEDE; }
-
-.item-radio:checked + .item-styled-radio {
- border-color: #FF4700;
- background-color: #FF4700; }
-
-.item-radio:checked + .item-styled-radio:before {
- content: "";
- display: block;
- position: relative;
- top: 1px;
- left: 6px;
- width: 6px;
- height: 14px;
- border-color: #F7F7F7;
- border-width: 0 2px 2px 0;
- border-style: solid;
- -webkit-transform: rotate(45deg);
- -moz-transform: rotate(45deg);
- -ms-transform: rotate(45deg);
- -o-transform: rotate(45deg);
- transform: rotate(45deg); }
-
-.item-color {
- display: none; }
-
-.item-styled-color {
- background: #F7F7F7; }
- .item-styled-color .value {
- position: absolute;
- right: 10px;
- top: 10px;
- width: 56px;
- height: 30px;
- border-radius: 5px;
- border-color: #A8A8A8;
- border-width: 1px;
- border-style: solid; }
- .item-styled-color .color-box-wrap {
- display: none;
- box-sizing: border-box;
- position: relative;
- height: 0;
- width: 100%;
- padding: 0 0 100% 0;
- margin: 0.6em 0 0em; }
- .item-styled-color .color-box-wrap.show {
- display: block; }
- .item-styled-color .color-box-wrap .color-box-container {
- position: absolute;
- height: 99.97%;
- width: 100%;
- left: 0;
- top: 0; }
- .item-styled-color .color-box-wrap .color-box-container .color-box {
- float: left;
- cursor: pointer; }
- .item-styled-color .color-box-wrap .color-box-container .color-box.rounded-tl {
- border-top-left-radius: 5px; }
- .item-styled-color .color-box-wrap .color-box-container .color-box.rounded-tr {
- border-top-right-radius: 5px; }
- .item-styled-color .color-box-wrap .color-box-container .color-box.rounded-bl {
- border-bottom-left-radius: 5px; }
- .item-styled-color .color-box-wrap .color-box-container .color-box.rounded-br {
- border-bottom-right-radius: 5px; }
-
-.item-date, .item-time {
- position: absolute;
- color: #F7F7F7 !important; }
-
-.item-styled-date, .item-styled-time {
- position: absolute;
- top: 13px;
- right: 10px;
- color: #A8A8A8;
- font-size: 1em;
- line-height: 1em;
- background-color: #F7F7F7; }
-
-.item-input-wrapper {
- border-radius: 5px;
- border: 2px solid #DEDEDE; }
-
-.item-input-wrapper-button {
- box-sizing: border-box;
- width: 77%; }
-
-.item-input {
- border: 0;
- background-color: transparent;
- padding: 0 10px 7px 10px;
- font-size: 13px;
- width: 100%;
- box-sizing: border-box; }
-
-.button-container {
- text-align: center; }
-
-.item-button {
- width: 60%;
- height: 35px;
- background-color: #FF4700;
- border-radius: 5px;
- color: white;
- font-size: 0.8em;
- border: none;
- -webkit-appearance: none;
- -moz-appearance: none;
- -ms-appearance: none;
- appearance: none; }
-
-.item-input-button {
- position: absolute;
- right: 10px;
- top: 9px;
- width: 20%; }
-
-.tab-buttons {
- display: table;
- width: 100%;
- box-sizing: border-box;
- table-layout: fixed; }
-
-.tab-button {
- display: table-cell;
- position: relative;
- color: #FF4700;
- border: 1px solid #FF4700;
- border-right-width: 0;
- font-size: 14px;
- padding: 5px 0;
- text-align: center;
- right: -1px; }
-
-.tab-button:first-child {
- border-top-left-radius: 5px;
- border-bottom-left-radius: 5px;
- border-right-width: 0; }
-
-.tab-button:last-child {
- border-top-right-radius: 5px;
- border-bottom-right-radius: 5px;
- border-right-width: 1px; }
-
-.tab-button.active {
- background-color: #FF4700;
- color: #F7F7F7; }
-
-.item-slider {
- position: relative;
- top: 8px;
- -webkit-appearance: none;
- -moz-appearance: none;
- -ms-appearance: none;
- appearance: none;
- height: 30px;
- width: 79%;
- overflow: hidden;
- background-color: transparent;
- margin-top: -10px; }
-
-.item-slider::-webkit-slider-thumb:before {
- content: "";
- position: absolute;
- top: 11px;
- left: -1001px;
- height: 2px;
- width: 1000px;
- background: #FF4700; }
-
-.item-slider::-webkit-slider-thumb {
- -webkit-appearance: none;
- -moz-appearance: none;
- -ms-appearance: none;
- appearance: none;
- position: relative;
- top: -13px;
- height: 28px;
- width: 28px;
- background-color: #FFFFFF;
- border-radius: 5px;
- border: 2px solid #EAEAEA; }
-
-.item-slider::-webkit-slider-runnable-track {
- height: 2px;
- background-color: #DEDEDE; }
-
-.item-slider::-webkit-slider-thumb:after {
- content: "lll";
- position: absolute;
- left: 4px;
- top: 3px;
- height: 12px;
- width: 10px;
- font-weight: normal;
- text-align: center;
- color: #DEDEDE;
- font-size: 16px;
- letter-spacing: 1px; }
-
-.item-slider-text {
- position: absolute;
- top: 6px;
- right: 10px;
- width: 16%; }
-
-.item-slider-text .item-input {
- text-align: center; }
-
-.delete-item {
- width: 30px;
- height: 30px;
- right: 5px;
- top: 5px;
- position: absolute;
- border-radius: 6px; }
-
-.delete-item:before, .delete-item:after {
- content: '';
- position: absolute;
- width: 24px;
- height: 2px;
- background-color: #A8A8A8;
- border-radius: 2px;
- top: 16px; }
-
-.delete-item:before {
- -webkit-transform: rotate(45deg);
- -moz-transform: rotate(45deg);
- -ms-transform: rotate(45deg);
- -o-transform: rotate(45deg);
- transform: rotate(45deg);
- left: 3px; }
-
-.delete-item:after {
- -webkit-transform: rotate(-45deg);
- -moz-transform: rotate(-45deg);
- -ms-transform: rotate(-45deg);
- -o-transform: rotate(-45deg);
- transform: rotate(-45deg);
- right: 3px; }
-
-.add-item {
- color: #FF4700; }
-
-.item-draggable-handle {
- position: absolute;
- right: 5px;
- top: 10px;
- height: 28px;
- width: 28px; }
-
-.item-draggable-handle-bar {
- margin-top: 5px;
- height: 2px;
- width: 20px;
- background-color: #A8A8A8;
- text-align: center; }
-
-[draggable=true] {
- background-color: #F7F7F7;
- border: 2px solid #EAEAEA;
- border-radius: 2px; }
diff --git a/vendor/pebble-slate/dist/css/slate.min.css b/vendor/pebble-slate/dist/css/slate.min.css
deleted file mode 100755
index 0a9dcfe..0000000
--- a/vendor/pebble-slate/dist/css/slate.min.css
+++ /dev/null
@@ -1 +0,0 @@
-@font-face{font-family:'PFDinDisplayProLightWebfont';src:url("../fonts/PFDinDisplayPro-Light.woff") format("woff");font-weight:normal;font-style:normal;font-variant:normal}@font-face{font-family:'PTSansRegularWebfont';src:url("../fonts/PTSans-regular.woff") format("woff");font-weight:normal;font-style:normal;font-variant:normal}*{margin:0;padding:0}*:focus{outline-width:0}a{color:#ff4700;text-decoration:none}body{background-color:#eaeaea;margin-bottom:15px;font-size:1.2em;line-height:1.4em;-webkit-user-select:none !important;-moz-user-select:none !important;-ms-user-select:none !important;user-select:none !important}body,select,input[type=text],input[type=time],input[type=date]{font-family:'PFDinDisplayPro-Light',PFDinDisplayProLightWebfont,sans-serif;font-weight:normal}select,input[type=time],input[type=date]{-webkit-appearance:none;-moz-appearance:none;-ms-appearance:none;appearance:none;border:0;position:absolute;top:13px;color:#a8a8a8;font-size:1em;line-height:1em;background-color:#f7f7f7}input[type=date]{direction:rtl}select{right:30px;top:14px}input[type=time]{right:10px !important}input[type=date]{right:10px !important}.select-triangle{position:absolute;right:10px;top:20px;width:0;height:0;border-left:7px solid transparent;border-right:7px solid transparent;border-top:7px solid #ff4700}.item-container{color:#333;margin-top:15px}.item-container-header{padding:3px 10px;text-transform:uppercase;font-family:'PT Sans',PTSansRegularWebfont,sans-serif;font-size:.8em;font-weight:normal;color:#a8a8a8}.item-container-content{background-color:#f7f7f7;border-top:1px solid #dedede;border-bottom:1px solid #dedede}.item-container-footer{padding:3px 10px;font-size:.7em;line-height:1.4em;color:#a8a8a8}.item{position:relative;padding:10px;display:block;overflow:hidden}.item:not(:first-child){border-top:1px solid #dedede}.item-subtitle-wrapper{font-size:1em}.item-subtitle-wrapper .item-styled-toggle-wrapper{top:16px}.item-subtitle-wrapper .item-styled-checkbox{top:18px}.item-subtitle-wrapper .item-styled-radio{top:16px}.item-subtitle-wrapper .item-draggable-handle{top:18px}.item-subtitle{font-size:.7em;line-height:.7em;padding:.3em 0}.item-styled-toggle-wrapper{position:absolute;right:10px;top:8px;width:56px;height:30px;border-radius:5px;transition-timing-function:ease-in-out;transition-duration:.3s;transition-property:background-color}.item-styled-toggle{position:relative;background-color:#fff;width:28px;height:28px;border-radius:5px;top:1px;transition-timing-function:ease-in-out;transition-duration:.3s;transition-property:left}.item-toggle{display:none}.item-toggle+.item-styled-toggle-wrapper{background-color:#a8a8a8}.item-toggle:checked+.item-styled-toggle-wrapper{background-color:#ff4700}.item-toggle+.item-styled-toggle-wrapper .item-styled-toggle{left:1px}.item-toggle:checked+.item-styled-toggle-wrapper .item-styled-toggle{left:27px}.item-styled-toggle-bar{width:3px;height:15px;margin-left:3px;background-color:#eaeaea;float:left;position:relative;left:4px;top:7px}.item-styled-checkbox{position:absolute;right:10px;top:10px;width:21px;height:21px;border-radius:5px;border-width:2px;border-style:solid}.item-checkbox{display:none}.item-checkbox+.item-styled-checkbox{border-color:#dedede}.item-checkbox:checked+.item-styled-checkbox{border-color:#ff4700;background-color:#ff4700}.item-checkbox:checked+.item-styled-checkbox:before{content:"";display:block;position:relative;left:7px;width:6px;height:14px;border-color:#f7f7f7;border-width:0 2px 2px 0;border-style:solid;-webkit-transform:rotate(45deg);-moz-transform:rotate(45deg);-ms-transform:rotate(45deg);-o-transform:rotate(45deg);transform:rotate(45deg)}.item-styled-radio{position:absolute;right:10px;top:10px;width:21px;height:21px;border-radius:12px;border-width:2px;border-style:solid}.item-radio{display:none}.item-radio+.item-styled-radio{border-color:#dedede}.item-radio:checked+.item-styled-radio{border-color:#ff4700;background-color:#ff4700}.item-radio:checked+.item-styled-radio:before{content:"";display:block;position:relative;top:1px;left:6px;width:6px;height:14px;border-color:#f7f7f7;border-width:0 2px 2px 0;border-style:solid;-webkit-transform:rotate(45deg);-moz-transform:rotate(45deg);-ms-transform:rotate(45deg);-o-transform:rotate(45deg);transform:rotate(45deg)}.item-color{display:none}.item-styled-color{background:#f7f7f7}.item-styled-color .value{position:absolute;right:10px;top:10px;width:56px;height:30px;border-radius:5px;border-color:#a8a8a8;border-width:1px;border-style:solid}.item-styled-color .color-box-wrap{display:none;box-sizing:border-box;position:relative;height:0;width:100%;padding:0 0 100% 0;margin:.6em 0 0}.item-styled-color .color-box-wrap.show{display:block}.item-styled-color .color-box-wrap .color-box-container{position:absolute;height:99.97%;width:100%;left:0;top:0}.item-styled-color .color-box-wrap .color-box-container .color-box{float:left;cursor:pointer}.item-styled-color .color-box-wrap .color-box-container .color-box.rounded-tl{border-top-left-radius:5px}.item-styled-color .color-box-wrap .color-box-container .color-box.rounded-tr{border-top-right-radius:5px}.item-styled-color .color-box-wrap .color-box-container .color-box.rounded-bl{border-bottom-left-radius:5px}.item-styled-color .color-box-wrap .color-box-container .color-box.rounded-br{border-bottom-right-radius:5px}.item-date,.item-time{position:absolute;color:#f7f7f7 !important}.item-styled-date,.item-styled-time{position:absolute;top:13px;right:10px;color:#a8a8a8;font-size:1em;line-height:1em;background-color:#f7f7f7}.item-input-wrapper{border-radius:5px;border:2px solid #dedede}.item-input-wrapper-button{box-sizing:border-box;width:77%}.item-input{border:0;background-color:transparent;padding:0 10px 7px 10px;font-size:13px;width:100%;box-sizing:border-box}.button-container{text-align:center}.item-button{width:60%;height:35px;background-color:#ff4700;border-radius:5px;color:white;font-size:.8em;border:0;-webkit-appearance:none;-moz-appearance:none;-ms-appearance:none;appearance:none}.item-input-button{position:absolute;right:10px;top:9px;width:20%}.tab-buttons{display:table;width:100%;box-sizing:border-box;table-layout:fixed}.tab-button{display:table-cell;position:relative;color:#ff4700;border:1px solid #ff4700;border-right-width:0;font-size:14px;padding:5px 0;text-align:center;right:-1px}.tab-button:first-child{border-top-left-radius:5px;border-bottom-left-radius:5px;border-right-width:0}.tab-button:last-child{border-top-right-radius:5px;border-bottom-right-radius:5px;border-right-width:1px}.tab-button.active{background-color:#ff4700;color:#f7f7f7}.item-slider{position:relative;top:8px;-webkit-appearance:none;-moz-appearance:none;-ms-appearance:none;appearance:none;height:30px;width:79%;overflow:hidden;background-color:transparent;margin-top:-10px}.item-slider::-webkit-slider-thumb:before{content:"";position:absolute;top:11px;left:-1001px;height:2px;width:1000px;background:#ff4700}.item-slider::-webkit-slider-thumb{-webkit-appearance:none;-moz-appearance:none;-ms-appearance:none;appearance:none;position:relative;top:-13px;height:28px;width:28px;background-color:#fff;border-radius:5px;border:2px solid #eaeaea}.item-slider::-webkit-slider-runnable-track{height:2px;background-color:#dedede}.item-slider::-webkit-slider-thumb:after{content:"lll";position:absolute;left:4px;top:3px;height:12px;width:10px;font-weight:normal;text-align:center;color:#dedede;font-size:16px;letter-spacing:1px}.item-slider-text{position:absolute;top:6px;right:10px;width:16%}.item-slider-text .item-input{text-align:center}.delete-item{width:30px;height:30px;right:5px;top:5px;position:absolute;border-radius:6px}.delete-item:before,.delete-item:after{content:'';position:absolute;width:24px;height:2px;background-color:#a8a8a8;border-radius:2px;top:16px}.delete-item:before{-webkit-transform:rotate(45deg);-moz-transform:rotate(45deg);-ms-transform:rotate(45deg);-o-transform:rotate(45deg);transform:rotate(45deg);left:3px}.delete-item:after{-webkit-transform:rotate(-45deg);-moz-transform:rotate(-45deg);-ms-transform:rotate(-45deg);-o-transform:rotate(-45deg);transform:rotate(-45deg);right:3px}.add-item{color:#ff4700}.item-draggable-handle{position:absolute;right:5px;top:10px;height:28px;width:28px}.item-draggable-handle-bar{margin-top:5px;height:2px;width:20px;background-color:#a8a8a8;text-align:center}[draggable=true]{background-color:#f7f7f7;border:2px solid #eaeaea;border-radius:2px}
\ No newline at end of file
diff --git a/vendor/pebble-slate/dist/fonts/PFDinDisplayPro-Light.woff b/vendor/pebble-slate/dist/fonts/PFDinDisplayPro-Light.woff
deleted file mode 100755
index 1a206ff..0000000
Binary files a/vendor/pebble-slate/dist/fonts/PFDinDisplayPro-Light.woff and /dev/null differ
diff --git a/vendor/pebble-slate/dist/fonts/ptsans-regular.woff b/vendor/pebble-slate/dist/fonts/ptsans-regular.woff
deleted file mode 100755
index 48d9d3f..0000000
Binary files a/vendor/pebble-slate/dist/fonts/ptsans-regular.woff and /dev/null differ
diff --git a/vendor/pebble-slate/dist/js/slate.js b/vendor/pebble-slate/dist/js/slate.js
deleted file mode 100755
index dd9b051..0000000
--- a/vendor/pebble-slate/dist/js/slate.js
+++ /dev/null
@@ -1,381 +0,0 @@
-/*! Sortable 1.2.0 - MIT | git://github.com/rubaxa/Sortable.git */
-!function(a){"use strict";"function"==typeof define&&define.amd?define(a):"undefined"!=typeof module&&"undefined"!=typeof module.exports?module.exports=a():"undefined"!=typeof Package?Sortable=a():window.Sortable=a()}(function(){"use strict";function a(a,b){this.el=a,this.options=b=q({},b),a[H]=this;var d={group:Math.random(),sort:!0,disabled:!1,store:null,handle:null,scroll:!0,scrollSensitivity:30,scrollSpeed:10,draggable:/[uo]l/i.test(a.nodeName)?"li":">*",ghostClass:"sortable-ghost",ignore:"a, img",filter:null,animation:0,setData:function(a,b){a.setData("Text",b.textContent)},dropBubble:!1,dragoverBubble:!1,dataIdAttr:"data-id",delay:0};for(var e in d)!(e in b)&&(b[e]=d[e]);var g=b.group;g&&"object"==typeof g||(g=b.group={name:g}),["pull","put"].forEach(function(a){a in g||(g[a]=!0)}),b.groups=" "+g.name+(g.put.join?" "+g.put.join(" "):"")+" ";for(var h in this)"_"===h.charAt(0)&&(this[h]=c(this,this[h]));f(a,"mousedown",this._onTapStart),f(a,"touchstart",this._onTapStart),f(a,"dragover",this),f(a,"dragenter",this),Q.push(this._onDragOver),b.store&&this.sort(b.store.get(this))}function b(a){t&&t.state!==a&&(i(t,"display",a?"none":""),!a&&t.state&&u.insertBefore(t,r),t.state=a)}function c(a,b){var c=P.call(arguments,2);return b.bind?b.bind.apply(b,[a].concat(c)):function(){return b.apply(a,c.concat(P.call(arguments)))}}function d(a,b,c){if(a){c=c||J,b=b.split(".");var d=b.shift().toUpperCase(),e=new RegExp("\\s("+b.join("|")+")\\s","g");do if(">*"===d&&a.parentNode===c||(""===d||a.nodeName.toUpperCase()==d)&&(!b.length||((" "+a.className+" ").match(e)||[]).length==b.length))return a;while(a!==c&&(a=a.parentNode))}return null}function e(a){a.dataTransfer.dropEffect="move",a.preventDefault()}function f(a,b,c){a.addEventListener(b,c,!1)}function g(a,b,c){a.removeEventListener(b,c,!1)}function h(a,b,c){if(a)if(a.classList)a.classList[c?"add":"remove"](b);else{var d=(" "+a.className+" ").replace(G," ").replace(" "+b+" "," ");a.className=(d+(c?" "+b:"")).replace(G," ")}}function i(a,b,c){var d=a&&a.style;if(d){if(void 0===c)return J.defaultView&&J.defaultView.getComputedStyle?c=J.defaultView.getComputedStyle(a,""):a.currentStyle&&(c=a.currentStyle),void 0===b?c:c[b];b in d||(b="-webkit-"+b),d[b]=c+("string"==typeof c?"":"px")}}function j(a,b,c){if(a){var d=a.getElementsByTagName(b),e=0,f=d.length;if(c)for(;f>e;e++)c(d[e],e);return d}return[]}function k(a){a.draggable=!1}function l(){M=!1}function m(a,b){var c=a.lastElementChild,d=c.getBoundingClientRect();return b.clientY-(d.top+d.height)>5&&c}function n(a){for(var b=a.tagName+a.className+a.src+a.href+a.textContent,c=b.length,d=0;c--;)d+=b.charCodeAt(c);return d.toString(36)}function o(a){for(var b=0;a&&(a=a.previousElementSibling);)"TEMPLATE"!==a.nodeName.toUpperCase()&&b++;return b}function p(a,b){var c,d;return function(){void 0===c&&(c=arguments,d=this,setTimeout(function(){1===c.length?a.call(d,c[0]):a.apply(d,c),c=void 0},b))}}function q(a,b){if(a&&b)for(var c in b)b.hasOwnProperty(c)&&(a[c]=b[c]);return a}var r,s,t,u,v,w,x,y,z,A,B,C,D,E,F={},G=/\s+/g,H="Sortable"+(new Date).getTime(),I=window,J=I.document,K=I.parseInt,L=!!("draggable"in J.createElement("div")),M=!1,N=function(a,b,c,d,e,f,g){var h=J.createEvent("Event"),i=(a||b[H]).options,j="on"+c.charAt(0).toUpperCase()+c.substr(1);h.initEvent(c,!0,!0),h.item=d||b,h.from=e||b,h.clone=t,h.oldIndex=f,h.newIndex=g,i[j]&&i[j].call(a,h),b.dispatchEvent(h)},O=Math.abs,P=[].slice,Q=[],R=p(function(a,b,c){if(c&&b.scroll){var d,e,f,g,h=b.scrollSensitivity,i=b.scrollSpeed,j=a.clientX,k=a.clientY,l=window.innerWidth,m=window.innerHeight;if(x!==c&&(w=b.scroll,x=c,w===!0)){w=c;do if(w.offsetWidth
=l-j)-(h>=j),g=(h>=m-k)-(h>=k),(f||g)&&(d=I)),(F.vx!==f||F.vy!==g||F.el!==d)&&(F.el=d,F.vx=f,F.vy=g,clearInterval(F.pid),d&&(F.pid=setInterval(function(){d===I?I.scrollTo(I.pageXOffset+f*i,I.pageYOffset+g*i):(g&&(d.scrollTop+=g*i),f&&(d.scrollLeft+=f*i))},24)))}},30);return a.prototype={constructor:a,_onTapStart:function(a){var b=this,c=this.el,e=this.options,f=a.type,g=a.touches&&a.touches[0],h=(g||a).target,i=h,j=e.filter;if(!("mousedown"===f&&0!==a.button||e.disabled)&&(h=d(h,e.draggable,c))){if(A=o(h),"function"==typeof j){if(j.call(this,a,h,this))return N(b,i,"filter",h,c,A),void a.preventDefault()}else if(j&&(j=j.split(",").some(function(a){return a=d(i,a.trim(),c),a?(N(b,a,"filter",h,c,A),!0):void 0})))return void a.preventDefault();(!e.handle||d(i,e.handle,c))&&this._prepareDragStart(a,g,h)}},_prepareDragStart:function(a,b,c){var d,e=this,g=e.el,h=e.options,i=g.ownerDocument;c&&!r&&c.parentNode===g&&(D=a,u=g,r=c,v=r.nextSibling,C=h.group,d=function(){e._disableDelayedDrag(),r.draggable=!0,h.ignore.split(",").forEach(function(a){j(r,a.trim(),k)}),e._triggerDragStart(b)},f(i,"mouseup",e._onDrop),f(i,"touchend",e._onDrop),f(i,"touchcancel",e._onDrop),h.delay?(f(i,"mousemove",e._disableDelayedDrag),f(i,"touchmove",e._disableDelayedDrag),e._dragStartTimer=setTimeout(d,h.delay)):d())},_disableDelayedDrag:function(){var a=this.el.ownerDocument;clearTimeout(this._dragStartTimer),g(a,"mousemove",this._disableDelayedDrag),g(a,"touchmove",this._disableDelayedDrag)},_triggerDragStart:function(a){a?(D={target:r,clientX:a.clientX,clientY:a.clientY},this._onDragStart(D,"touch")):L?(f(r,"dragend",this),f(u,"dragstart",this._onDragStart)):this._onDragStart(D,!0);try{J.selection?J.selection.empty():window.getSelection().removeAllRanges()}catch(b){}},_dragStarted:function(){u&&r&&(h(r,this.options.ghostClass,!0),a.active=this,N(this,u,"start",r,u,A))},_emulateDragOver:function(){if(E){i(s,"display","none");var a=J.elementFromPoint(E.clientX,E.clientY),b=a,c=" "+this.options.group.name,d=Q.length;if(b)do{if(b[H]&&b[H].options.groups.indexOf(c)>-1){for(;d--;)Q[d]({clientX:E.clientX,clientY:E.clientY,target:a,rootEl:b});break}a=b}while(b=b.parentNode);i(s,"display","")}},_onTouchMove:function(a){if(D){var b=a.touches?a.touches[0]:a,c=b.clientX-D.clientX,d=b.clientY-D.clientY,e=a.touches?"translate3d("+c+"px,"+d+"px,0)":"translate("+c+"px,"+d+"px)";E=b,i(s,"webkitTransform",e),i(s,"mozTransform",e),i(s,"msTransform",e),i(s,"transform",e),a.preventDefault()}},_onDragStart:function(a,b){var c=a.dataTransfer,d=this.options;if(this._offUpEvents(),"clone"==C.pull&&(t=r.cloneNode(!0),i(t,"display","none"),u.insertBefore(t,r)),b){var e,g=r.getBoundingClientRect(),h=i(r);s=r.cloneNode(!0),i(s,"top",g.top-K(h.marginTop,10)),i(s,"left",g.left-K(h.marginLeft,10)),i(s,"width",g.width),i(s,"height",g.height),i(s,"opacity","0.8"),i(s,"position","fixed"),i(s,"zIndex","100000"),u.appendChild(s),e=s.getBoundingClientRect(),i(s,"width",2*g.width-e.width),i(s,"height",2*g.height-e.height),"touch"===b?(f(J,"touchmove",this._onTouchMove),f(J,"touchend",this._onDrop),f(J,"touchcancel",this._onDrop)):(f(J,"mousemove",this._onTouchMove),f(J,"mouseup",this._onDrop)),this._loopId=setInterval(this._emulateDragOver,150)}else c&&(c.effectAllowed="move",d.setData&&d.setData.call(this,c,r)),f(J,"drop",this);setTimeout(this._dragStarted,0)},_onDragOver:function(a){var c,e,f,g=this.el,h=this.options,j=h.group,k=j.put,n=C===j,o=h.sort;if(void 0!==a.preventDefault&&(a.preventDefault(),!h.dragoverBubble&&a.stopPropagation()),C&&!h.disabled&&(n?o||(f=!u.contains(r)):C.pull&&k&&(C.name===j.name||k.indexOf&&~k.indexOf(C.name)))&&(void 0===a.rootEl||a.rootEl===this.el)){if(R(a,h,this.el),M)return;if(c=d(a.target,h.draggable,g),e=r.getBoundingClientRect(),f)return b(!0),void(t||v?u.insertBefore(r,t||v):o||u.appendChild(r));if(0===g.children.length||g.children[0]===s||g===a.target&&(c=m(g,a))){if(c){if(c.animated)return;q=c.getBoundingClientRect()}b(n),g.appendChild(r),this._animate(e,r),c&&this._animate(q,c)}else if(c&&!c.animated&&c!==r&&void 0!==c.parentNode[H]){y!==c&&(y=c,z=i(c));var p,q=c.getBoundingClientRect(),w=q.right-q.left,x=q.bottom-q.top,A=/left|right|inline/.test(z.cssFloat+z.display),B=c.offsetWidth>r.offsetWidth,D=c.offsetHeight>r.offsetHeight,E=(A?(a.clientX-q.left)/w:(a.clientY-q.top)/x)>.5,F=c.nextElementSibling;M=!0,setTimeout(l,30),b(n),p=A?c.previousElementSibling===r&&!B||E&&B:F!==r&&!D||E&&D,p&&!F?g.appendChild(r):c.parentNode.insertBefore(r,p?F:c),this._animate(e,r),this._animate(q,c)}}},_animate:function(a,b){var c=this.options.animation;if(c){var d=b.getBoundingClientRect();i(b,"transition","none"),i(b,"transform","translate3d("+(a.left-d.left)+"px,"+(a.top-d.top)+"px,0)"),b.offsetWidth,i(b,"transition","all "+c+"ms"),i(b,"transform","translate3d(0,0,0)"),clearTimeout(b.animated),b.animated=setTimeout(function(){i(b,"transition",""),i(b,"transform",""),b.animated=!1},c)}},_offUpEvents:function(){var a=this.el.ownerDocument;g(J,"touchmove",this._onTouchMove),g(a,"mouseup",this._onDrop),g(a,"touchend",this._onDrop),g(a,"touchcancel",this._onDrop)},_onDrop:function(b){var c=this.el,d=this.options;clearInterval(this._loopId),clearInterval(F.pid),clearTimeout(this.dragStartTimer),g(J,"drop",this),g(J,"mousemove",this._onTouchMove),g(c,"dragstart",this._onDragStart),this._offUpEvents(),b&&(b.preventDefault(),!d.dropBubble&&b.stopPropagation(),s&&s.parentNode.removeChild(s),r&&(g(r,"dragend",this),k(r),h(r,this.options.ghostClass,!1),u!==r.parentNode?(B=o(r),N(null,r.parentNode,"sort",r,u,A,B),N(this,u,"sort",r,u,A,B),N(null,r.parentNode,"add",r,u,A,B),N(this,u,"remove",r,u,A,B)):(t&&t.parentNode.removeChild(t),r.nextSibling!==v&&(B=o(r),N(this,u,"update",r,u,A,B),N(this,u,"sort",r,u,A,B))),a.active&&N(this,u,"end",r,u,A,B)),u=r=s=v=t=w=x=D=E=y=z=C=a.active=null,this.save())},handleEvent:function(a){var b=a.type;"dragover"===b||"dragenter"===b?r&&(this._onDragOver(a),e(a)):("drop"===b||"dragend"===b)&&this._onDrop(a)},toArray:function(){for(var a,b=[],c=this.el.children,e=0,f=c.length,g=this.options;f>e;e++)a=c[e],d(a,g.draggable,this.el)&&b.push(a.getAttribute(g.dataIdAttr)||n(a));return b},sort:function(a){var b={},c=this.el;this.toArray().forEach(function(a,e){var f=c.children[e];d(f,this.options.draggable,c)&&(b[a]=f)},this),a.forEach(function(a){b[a]&&(c.removeChild(b[a]),c.appendChild(b[a]))})},save:function(){var a=this.options.store;a&&a.set(this)},closest:function(a,b){return d(a,b||this.options.draggable,this.el)},option:function(a,b){var c=this.options;return void 0===b?c[a]:void(c[a]=b)},destroy:function(){var a=this.el;a[H]=null,g(a,"mousedown",this._onTapStart),g(a,"touchstart",this._onTapStart),g(a,"dragover",this),g(a,"dragenter",this),Array.prototype.forEach.call(a.querySelectorAll("[draggable]"),function(a){a.removeAttribute("draggable")}),Q.splice(Q.indexOf(this._onDragOver),1),this._onDrop(),this.el=a=null}},a.utils={on:f,off:g,css:i,find:j,bind:c,is:function(a,b){return!!d(a,b,a)},extend:q,throttle:p,closest:d,toggleClass:h,index:o},a.version="1.2.0",a.create=function(b,c){return new a(b,c)},a});
-/* Zepto v1.1.6 - zepto event ajax form ie - zeptojs.com/license */
-var Zepto=function(){function L(t){return null==t?String(t):j[S.call(t)]||"object"}function Z(t){return"function"==L(t)}function _(t){return null!=t&&t==t.window}function $(t){return null!=t&&t.nodeType==t.DOCUMENT_NODE}function D(t){return"object"==L(t)}function M(t){return D(t)&&!_(t)&&Object.getPrototypeOf(t)==Object.prototype}function R(t){return"number"==typeof t.length}function k(t){return s.call(t,function(t){return null!=t})}function z(t){return t.length>0?n.fn.concat.apply([],t):t}function F(t){return t.replace(/::/g,"/").replace(/([A-Z]+)([A-Z][a-z])/g,"$1_$2").replace(/([a-z\d])([A-Z])/g,"$1_$2").replace(/_/g,"-").toLowerCase()}function q(t){return t in f?f[t]:f[t]=new RegExp("(^|\\s)"+t+"(\\s|$)")}function H(t,e){return"number"!=typeof e||c[F(t)]?e:e+"px"}function I(t){var e,n;return u[t]||(e=a.createElement(t),a.body.appendChild(e),n=getComputedStyle(e,"").getPropertyValue("display"),e.parentNode.removeChild(e),"none"==n&&(n="block"),u[t]=n),u[t]}function V(t){return"children"in t?o.call(t.children):n.map(t.childNodes,function(t){return 1==t.nodeType?t:void 0})}function B(n,i,r){for(e in i)r&&(M(i[e])||A(i[e]))?(M(i[e])&&!M(n[e])&&(n[e]={}),A(i[e])&&!A(n[e])&&(n[e]=[]),B(n[e],i[e],r)):i[e]!==t&&(n[e]=i[e])}function U(t,e){return null==e?n(t):n(t).filter(e)}function J(t,e,n,i){return Z(e)?e.call(t,n,i):e}function X(t,e,n){null==n?t.removeAttribute(e):t.setAttribute(e,n)}function W(e,n){var i=e.className||"",r=i&&i.baseVal!==t;return n===t?r?i.baseVal:i:void(r?i.baseVal=n:e.className=n)}function Y(t){try{return t?"true"==t||("false"==t?!1:"null"==t?null:+t+""==t?+t:/^[\[\{]/.test(t)?n.parseJSON(t):t):t}catch(e){return t}}function G(t,e){e(t);for(var n=0,i=t.childNodes.length;i>n;n++)G(t.childNodes[n],e)}var t,e,n,i,C,N,r=[],o=r.slice,s=r.filter,a=window.document,u={},f={},c={"column-count":1,columns:1,"font-weight":1,"line-height":1,opacity:1,"z-index":1,zoom:1},l=/^\s*<(\w+|!)[^>]*>/,h=/^<(\w+)\s*\/?>(?:<\/\1>|)$/,p=/<(?!area|br|col|embed|hr|img|input|link|meta|param)(([\w:]+)[^>]*)\/>/gi,d=/^(?:body|html)$/i,m=/([A-Z])/g,g=["val","css","html","text","data","width","height","offset"],v=["after","prepend","before","append"],y=a.createElement("table"),x=a.createElement("tr"),b={tr:a.createElement("tbody"),tbody:y,thead:y,tfoot:y,td:x,th:x,"*":a.createElement("div")},w=/complete|loaded|interactive/,E=/^[\w-]*$/,j={},S=j.toString,T={},O=a.createElement("div"),P={tabindex:"tabIndex",readonly:"readOnly","for":"htmlFor","class":"className",maxlength:"maxLength",cellspacing:"cellSpacing",cellpadding:"cellPadding",rowspan:"rowSpan",colspan:"colSpan",usemap:"useMap",frameborder:"frameBorder",contenteditable:"contentEditable"},A=Array.isArray||function(t){return t instanceof Array};return T.matches=function(t,e){if(!e||!t||1!==t.nodeType)return!1;var n=t.webkitMatchesSelector||t.mozMatchesSelector||t.oMatchesSelector||t.matchesSelector;if(n)return n.call(t,e);var i,r=t.parentNode,o=!r;return o&&(r=O).appendChild(t),i=~T.qsa(r,e).indexOf(t),o&&O.removeChild(t),i},C=function(t){return t.replace(/-+(.)?/g,function(t,e){return e?e.toUpperCase():""})},N=function(t){return s.call(t,function(e,n){return t.indexOf(e)==n})},T.fragment=function(e,i,r){var s,u,f;return h.test(e)&&(s=n(a.createElement(RegExp.$1))),s||(e.replace&&(e=e.replace(p,"<$1>$2>")),i===t&&(i=l.test(e)&&RegExp.$1),i in b||(i="*"),f=b[i],f.innerHTML=""+e,s=n.each(o.call(f.childNodes),function(){f.removeChild(this)})),M(r)&&(u=n(s),n.each(r,function(t,e){g.indexOf(t)>-1?u[t](e):u.attr(t,e)})),s},T.Z=function(t,e){return t=t||[],t.__proto__=n.fn,t.selector=e||"",t},T.isZ=function(t){return t instanceof T.Z},T.init=function(e,i){var r;if(!e)return T.Z();if("string"==typeof e)if(e=e.trim(),"<"==e[0]&&l.test(e))r=T.fragment(e,RegExp.$1,i),e=null;else{if(i!==t)return n(i).find(e);r=T.qsa(a,e)}else{if(Z(e))return n(a).ready(e);if(T.isZ(e))return e;if(A(e))r=k(e);else if(D(e))r=[e],e=null;else if(l.test(e))r=T.fragment(e.trim(),RegExp.$1,i),e=null;else{if(i!==t)return n(i).find(e);r=T.qsa(a,e)}}return T.Z(r,e)},n=function(t,e){return T.init(t,e)},n.extend=function(t){var e,n=o.call(arguments,1);return"boolean"==typeof t&&(e=t,t=n.shift()),n.forEach(function(n){B(t,n,e)}),t},T.qsa=function(t,e){var n,i="#"==e[0],r=!i&&"."==e[0],s=i||r?e.slice(1):e,a=E.test(s);return $(t)&&a&&i?(n=t.getElementById(s))?[n]:[]:1!==t.nodeType&&9!==t.nodeType?[]:o.call(a&&!i?r?t.getElementsByClassName(s):t.getElementsByTagName(e):t.querySelectorAll(e))},n.contains=a.documentElement.contains?function(t,e){return t!==e&&t.contains(e)}:function(t,e){for(;e&&(e=e.parentNode);)if(e===t)return!0;return!1},n.type=L,n.isFunction=Z,n.isWindow=_,n.isArray=A,n.isPlainObject=M,n.isEmptyObject=function(t){var e;for(e in t)return!1;return!0},n.inArray=function(t,e,n){return r.indexOf.call(e,t,n)},n.camelCase=C,n.trim=function(t){return null==t?"":String.prototype.trim.call(t)},n.uuid=0,n.support={},n.expr={},n.map=function(t,e){var n,r,o,i=[];if(R(t))for(r=0;r=0?e:e+this.length]},toArray:function(){return this.get()},size:function(){return this.length},remove:function(){return this.each(function(){null!=this.parentNode&&this.parentNode.removeChild(this)})},each:function(t){return r.every.call(this,function(e,n){return t.call(e,n,e)!==!1}),this},filter:function(t){return Z(t)?this.not(this.not(t)):n(s.call(this,function(e){return T.matches(e,t)}))},add:function(t,e){return n(N(this.concat(n(t,e))))},is:function(t){return this.length>0&&T.matches(this[0],t)},not:function(e){var i=[];if(Z(e)&&e.call!==t)this.each(function(t){e.call(this,t)||i.push(this)});else{var r="string"==typeof e?this.filter(e):R(e)&&Z(e.item)?o.call(e):n(e);this.forEach(function(t){r.indexOf(t)<0&&i.push(t)})}return n(i)},has:function(t){return this.filter(function(){return D(t)?n.contains(this,t):n(this).find(t).size()})},eq:function(t){return-1===t?this.slice(t):this.slice(t,+t+1)},first:function(){var t=this[0];return t&&!D(t)?t:n(t)},last:function(){var t=this[this.length-1];return t&&!D(t)?t:n(t)},find:function(t){var e,i=this;return e=t?"object"==typeof t?n(t).filter(function(){var t=this;return r.some.call(i,function(e){return n.contains(e,t)})}):1==this.length?n(T.qsa(this[0],t)):this.map(function(){return T.qsa(this,t)}):n()},closest:function(t,e){var i=this[0],r=!1;for("object"==typeof t&&(r=n(t));i&&!(r?r.indexOf(i)>=0:T.matches(i,t));)i=i!==e&&!$(i)&&i.parentNode;return n(i)},parents:function(t){for(var e=[],i=this;i.length>0;)i=n.map(i,function(t){return(t=t.parentNode)&&!$(t)&&e.indexOf(t)<0?(e.push(t),t):void 0});return U(e,t)},parent:function(t){return U(N(this.pluck("parentNode")),t)},children:function(t){return U(this.map(function(){return V(this)}),t)},contents:function(){return this.map(function(){return o.call(this.childNodes)})},siblings:function(t){return U(this.map(function(t,e){return s.call(V(e.parentNode),function(t){return t!==e})}),t)},empty:function(){return this.each(function(){this.innerHTML=""})},pluck:function(t){return n.map(this,function(e){return e[t]})},show:function(){return this.each(function(){"none"==this.style.display&&(this.style.display=""),"none"==getComputedStyle(this,"").getPropertyValue("display")&&(this.style.display=I(this.nodeName))})},replaceWith:function(t){return this.before(t).remove()},wrap:function(t){var e=Z(t);if(this[0]&&!e)var i=n(t).get(0),r=i.parentNode||this.length>1;return this.each(function(o){n(this).wrapAll(e?t.call(this,o):r?i.cloneNode(!0):i)})},wrapAll:function(t){if(this[0]){n(this[0]).before(t=n(t));for(var e;(e=t.children()).length;)t=e.first();n(t).append(this)}return this},wrapInner:function(t){var e=Z(t);return this.each(function(i){var r=n(this),o=r.contents(),s=e?t.call(this,i):t;o.length?o.wrapAll(s):r.append(s)})},unwrap:function(){return this.parent().each(function(){n(this).replaceWith(n(this).children())}),this},clone:function(){return this.map(function(){return this.cloneNode(!0)})},hide:function(){return this.css("display","none")},toggle:function(e){return this.each(function(){var i=n(this);(e===t?"none"==i.css("display"):e)?i.show():i.hide()})},prev:function(t){return n(this.pluck("previousElementSibling")).filter(t||"*")},next:function(t){return n(this.pluck("nextElementSibling")).filter(t||"*")},html:function(t){return 0 in arguments?this.each(function(e){var i=this.innerHTML;n(this).empty().append(J(this,t,e,i))}):0 in this?this[0].innerHTML:null},text:function(t){return 0 in arguments?this.each(function(e){var n=J(this,t,e,this.textContent);this.textContent=null==n?"":""+n}):0 in this?this[0].textContent:null},attr:function(n,i){var r;return"string"!=typeof n||1 in arguments?this.each(function(t){if(1===this.nodeType)if(D(n))for(e in n)X(this,e,n[e]);else X(this,n,J(this,i,t,this.getAttribute(n)))}):this.length&&1===this[0].nodeType?!(r=this[0].getAttribute(n))&&n in this[0]?this[0][n]:r:t},removeAttr:function(t){return this.each(function(){1===this.nodeType&&t.split(" ").forEach(function(t){X(this,t)},this)})},prop:function(t,e){return t=P[t]||t,1 in arguments?this.each(function(n){this[t]=J(this,e,n,this[t])}):this[0]&&this[0][t]},data:function(e,n){var i="data-"+e.replace(m,"-$1").toLowerCase(),r=1 in arguments?this.attr(i,n):this.attr(i);return null!==r?Y(r):t},val:function(t){return 0 in arguments?this.each(function(e){this.value=J(this,t,e,this.value)}):this[0]&&(this[0].multiple?n(this[0]).find("option").filter(function(){return this.selected}).pluck("value"):this[0].value)},offset:function(t){if(t)return this.each(function(e){var i=n(this),r=J(this,t,e,i.offset()),o=i.offsetParent().offset(),s={top:r.top-o.top,left:r.left-o.left};"static"==i.css("position")&&(s.position="relative"),i.css(s)});if(!this.length)return null;var e=this[0].getBoundingClientRect();return{left:e.left+window.pageXOffset,top:e.top+window.pageYOffset,width:Math.round(e.width),height:Math.round(e.height)}},css:function(t,i){if(arguments.length<2){var r,o=this[0];if(!o)return;if(r=getComputedStyle(o,""),"string"==typeof t)return o.style[C(t)]||r.getPropertyValue(t);if(A(t)){var s={};return n.each(t,function(t,e){s[e]=o.style[C(e)]||r.getPropertyValue(e)}),s}}var a="";if("string"==L(t))i||0===i?a=F(t)+":"+H(t,i):this.each(function(){this.style.removeProperty(F(t))});else for(e in t)t[e]||0===t[e]?a+=F(e)+":"+H(e,t[e])+";":this.each(function(){this.style.removeProperty(F(e))});return this.each(function(){this.style.cssText+=";"+a})},index:function(t){return t?this.indexOf(n(t)[0]):this.parent().children().indexOf(this[0])},hasClass:function(t){return t?r.some.call(this,function(t){return this.test(W(t))},q(t)):!1},addClass:function(t){return t?this.each(function(e){if("className"in this){i=[];var r=W(this),o=J(this,t,e,r);o.split(/\s+/g).forEach(function(t){n(this).hasClass(t)||i.push(t)},this),i.length&&W(this,r+(r?" ":"")+i.join(" "))}}):this},removeClass:function(e){return this.each(function(n){if("className"in this){if(e===t)return W(this,"");i=W(this),J(this,e,n,i).split(/\s+/g).forEach(function(t){i=i.replace(q(t)," ")}),W(this,i.trim())}})},toggleClass:function(e,i){return e?this.each(function(r){var o=n(this),s=J(this,e,r,W(this));s.split(/\s+/g).forEach(function(e){(i===t?!o.hasClass(e):i)?o.addClass(e):o.removeClass(e)})}):this},scrollTop:function(e){if(this.length){var n="scrollTop"in this[0];return e===t?n?this[0].scrollTop:this[0].pageYOffset:this.each(n?function(){this.scrollTop=e}:function(){this.scrollTo(this.scrollX,e)})}},scrollLeft:function(e){if(this.length){var n="scrollLeft"in this[0];return e===t?n?this[0].scrollLeft:this[0].pageXOffset:this.each(n?function(){this.scrollLeft=e}:function(){this.scrollTo(e,this.scrollY)})}},position:function(){if(this.length){var t=this[0],e=this.offsetParent(),i=this.offset(),r=d.test(e[0].nodeName)?{top:0,left:0}:e.offset();return i.top-=parseFloat(n(t).css("margin-top"))||0,i.left-=parseFloat(n(t).css("margin-left"))||0,r.top+=parseFloat(n(e[0]).css("border-top-width"))||0,r.left+=parseFloat(n(e[0]).css("border-left-width"))||0,{top:i.top-r.top,left:i.left-r.left}}},offsetParent:function(){return this.map(function(){for(var t=this.offsetParent||a.body;t&&!d.test(t.nodeName)&&"static"==n(t).css("position");)t=t.offsetParent;return t})}},n.fn.detach=n.fn.remove,["width","height"].forEach(function(e){var i=e.replace(/./,function(t){return t[0].toUpperCase()});n.fn[e]=function(r){var o,s=this[0];return r===t?_(s)?s["inner"+i]:$(s)?s.documentElement["scroll"+i]:(o=this.offset())&&o[e]:this.each(function(t){s=n(this),s.css(e,J(this,r,t,s[e]()))})}}),v.forEach(function(t,e){var i=e%2;n.fn[t]=function(){var t,o,r=n.map(arguments,function(e){return t=L(e),"object"==t||"array"==t||null==e?e:T.fragment(e)}),s=this.length>1;return r.length<1?this:this.each(function(t,u){o=i?u:u.parentNode,u=0==e?u.nextSibling:1==e?u.firstChild:2==e?u:null;var f=n.contains(a.documentElement,o);r.forEach(function(t){if(s)t=t.cloneNode(!0);else if(!o)return n(t).remove();o.insertBefore(t,u),f&&G(t,function(t){null==t.nodeName||"SCRIPT"!==t.nodeName.toUpperCase()||t.type&&"text/javascript"!==t.type||t.src||window.eval.call(window,t.innerHTML)})})})},n.fn[i?t+"To":"insert"+(e?"Before":"After")]=function(e){return n(e)[t](this),this}}),T.Z.prototype=n.fn,T.uniq=N,T.deserializeValue=Y,n.zepto=T,n}();window.Zepto=Zepto,void 0===window.$&&(window.$=Zepto),function(t){function l(t){return t._zid||(t._zid=e++)}function h(t,e,n,i){if(e=p(e),e.ns)var r=d(e.ns);return(s[l(t)]||[]).filter(function(t){return!(!t||e.e&&t.e!=e.e||e.ns&&!r.test(t.ns)||n&&l(t.fn)!==l(n)||i&&t.sel!=i)})}function p(t){var e=(""+t).split(".");return{e:e[0],ns:e.slice(1).sort().join(" ")}}function d(t){return new RegExp("(?:^| )"+t.replace(" "," .* ?")+"(?: |$)")}function m(t,e){return t.del&&!u&&t.e in f||!!e}function g(t){return c[t]||u&&f[t]||t}function v(e,i,r,o,a,u,f){var h=l(e),d=s[h]||(s[h]=[]);i.split(/\s/).forEach(function(i){if("ready"==i)return t(document).ready(r);var s=p(i);s.fn=r,s.sel=a,s.e in c&&(r=function(e){var n=e.relatedTarget;return!n||n!==this&&!t.contains(this,n)?s.fn.apply(this,arguments):void 0}),s.del=u;var l=u||r;s.proxy=function(t){if(t=j(t),!t.isImmediatePropagationStopped()){t.data=o;var i=l.apply(e,t._args==n?[t]:[t].concat(t._args));return i===!1&&(t.preventDefault(),t.stopPropagation()),i}},s.i=d.length,d.push(s),"addEventListener"in e&&e.addEventListener(g(s.e),s.proxy,m(s,f))})}function y(t,e,n,i,r){var o=l(t);(e||"").split(/\s/).forEach(function(e){h(t,e,n,i).forEach(function(e){delete s[o][e.i],"removeEventListener"in t&&t.removeEventListener(g(e.e),e.proxy,m(e,r))})})}function j(e,i){return(i||!e.isDefaultPrevented)&&(i||(i=e),t.each(E,function(t,n){var r=i[t];e[t]=function(){return this[n]=x,r&&r.apply(i,arguments)},e[n]=b}),(i.defaultPrevented!==n?i.defaultPrevented:"returnValue"in i?i.returnValue===!1:i.getPreventDefault&&i.getPreventDefault())&&(e.isDefaultPrevented=x)),e}function S(t){var e,i={originalEvent:t};for(e in t)w.test(e)||t[e]===n||(i[e]=t[e]);return j(i,t)}var n,e=1,i=Array.prototype.slice,r=t.isFunction,o=function(t){return"string"==typeof t},s={},a={},u="onfocusin"in window,f={focus:"focusin",blur:"focusout"},c={mouseenter:"mouseover",mouseleave:"mouseout"};a.click=a.mousedown=a.mouseup=a.mousemove="MouseEvents",t.event={add:v,remove:y},t.proxy=function(e,n){var s=2 in arguments&&i.call(arguments,2);if(r(e)){var a=function(){return e.apply(n,s?s.concat(i.call(arguments)):arguments)};return a._zid=l(e),a}if(o(n))return s?(s.unshift(e[n],e),t.proxy.apply(null,s)):t.proxy(e[n],e);throw new TypeError("expected function")},t.fn.bind=function(t,e,n){return this.on(t,e,n)},t.fn.unbind=function(t,e){return this.off(t,e)},t.fn.one=function(t,e,n,i){return this.on(t,e,n,i,1)};var x=function(){return!0},b=function(){return!1},w=/^([A-Z]|returnValue$|layer[XY]$)/,E={preventDefault:"isDefaultPrevented",stopImmediatePropagation:"isImmediatePropagationStopped",stopPropagation:"isPropagationStopped"};t.fn.delegate=function(t,e,n){return this.on(e,t,n)},t.fn.undelegate=function(t,e,n){return this.off(e,t,n)},t.fn.live=function(e,n){return t(document.body).delegate(this.selector,e,n),this},t.fn.die=function(e,n){return t(document.body).undelegate(this.selector,e,n),this},t.fn.on=function(e,s,a,u,f){var c,l,h=this;return e&&!o(e)?(t.each(e,function(t,e){h.on(t,s,a,e,f)}),h):(o(s)||r(u)||u===!1||(u=a,a=s,s=n),(r(a)||a===!1)&&(u=a,a=n),u===!1&&(u=b),h.each(function(n,r){f&&(c=function(t){return y(r,t.type,u),u.apply(this,arguments)}),s&&(l=function(e){var n,o=t(e.target).closest(s,r).get(0);return o&&o!==r?(n=t.extend(S(e),{currentTarget:o,liveFired:r}),(c||u).apply(o,[n].concat(i.call(arguments,1)))):void 0}),v(r,e,u,a,s,l||c)}))},t.fn.off=function(e,i,s){var a=this;return e&&!o(e)?(t.each(e,function(t,e){a.off(t,i,e)}),a):(o(i)||r(s)||s===!1||(s=i,i=n),s===!1&&(s=b),a.each(function(){y(this,e,s,i)}))},t.fn.trigger=function(e,n){return e=o(e)||t.isPlainObject(e)?t.Event(e):j(e),e._args=n,this.each(function(){e.type in f&&"function"==typeof this[e.type]?this[e.type]():"dispatchEvent"in this?this.dispatchEvent(e):t(this).triggerHandler(e,n)})},t.fn.triggerHandler=function(e,n){var i,r;return this.each(function(s,a){i=S(o(e)?t.Event(e):e),i._args=n,i.target=a,t.each(h(a,e.type||e),function(t,e){return r=e.proxy(i),i.isImmediatePropagationStopped()?!1:void 0})}),r},"focusin focusout focus blur load resize scroll unload click dblclick mousedown mouseup mousemove mouseover mouseout mouseenter mouseleave change select keydown keypress keyup error".split(" ").forEach(function(e){t.fn[e]=function(t){return 0 in arguments?this.bind(e,t):this.trigger(e)}}),t.Event=function(t,e){o(t)||(e=t,t=e.type);var n=document.createEvent(a[t]||"Events"),i=!0;if(e)for(var r in e)"bubbles"==r?i=!!e[r]:n[r]=e[r];return n.initEvent(t,i,!0),j(n)}}(Zepto),function(t){function h(e,n,i){var r=t.Event(n);return t(e).trigger(r,i),!r.isDefaultPrevented()}function p(t,e,i,r){return t.global?h(e||n,i,r):void 0}function d(e){e.global&&0===t.active++&&p(e,null,"ajaxStart")}function m(e){e.global&&!--t.active&&p(e,null,"ajaxStop")}function g(t,e){var n=e.context;return e.beforeSend.call(n,t,e)===!1||p(e,n,"ajaxBeforeSend",[t,e])===!1?!1:void p(e,n,"ajaxSend",[t,e])}function v(t,e,n,i){var r=n.context,o="success";n.success.call(r,t,o,e),i&&i.resolveWith(r,[t,o,e]),p(n,r,"ajaxSuccess",[e,n,t]),x(o,e,n)}function y(t,e,n,i,r){var o=i.context;i.error.call(o,n,e,t),r&&r.rejectWith(o,[n,e,t]),p(i,o,"ajaxError",[n,i,t||e]),x(e,n,i)}function x(t,e,n){var i=n.context;n.complete.call(i,e,t),p(n,i,"ajaxComplete",[e,n]),m(n)}function b(){}function w(t){return t&&(t=t.split(";",2)[0]),t&&(t==f?"html":t==u?"json":s.test(t)?"script":a.test(t)&&"xml")||"text"}function E(t,e){return""==e?t:(t+"&"+e).replace(/[&?]{1,2}/,"?")}function j(e){e.processData&&e.data&&"string"!=t.type(e.data)&&(e.data=t.param(e.data,e.traditional)),!e.data||e.type&&"GET"!=e.type.toUpperCase()||(e.url=E(e.url,e.data),e.data=void 0)}function S(e,n,i,r){return t.isFunction(n)&&(r=i,i=n,n=void 0),t.isFunction(i)||(r=i,i=void 0),{url:e,data:n,success:i,dataType:r}}function C(e,n,i,r){var o,s=t.isArray(n),a=t.isPlainObject(n);t.each(n,function(n,u){o=t.type(u),r&&(n=i?r:r+"["+(a||"object"==o||"array"==o?n:"")+"]"),!r&&s?e.add(u.name,u.value):"array"==o||!i&&"object"==o?C(e,u,i,n):e.add(n,u)})}var i,r,e=0,n=window.document,o=/
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-