From 6fd9f1f98c20c039e4d2b615f7bd599a4fe2cf3c Mon Sep 17 00:00:00 2001 From: James Hillyerd Date: Sun, 6 Mar 2016 13:15:13 -0800 Subject: [PATCH] Load message list over JSON - Add jquery-load-template to bower - Add moment (date rendering) to bower - Load message list JSON via /api/v1/mailbox - Render message list using jquery template - Fix resize related problems with message list height caused by 2092949dbc06f2edde2773b8ba5fd143aa0fc1b7 --- themes/bootstrap/public/bower.json | 4 +- .../jquery-load-template/.bower.json | 43 + .../jquery-load-template/bower.json | 32 + .../dist/jquery.loadTemplate-1.5.6.js | 542 + .../dist/jquery.loadTemplate-1.5.6.min.js | 1 + .../bower_components/moment/.bower.json | 34 + .../bower_components/moment/CHANGELOG.md | 496 + .../public/bower_components/moment/LICENSE | 22 + .../public/bower_components/moment/README.md | 58 + .../public/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 | 113 + .../bower_components/moment/locale/bo.js | 110 + .../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 | 82 + .../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 | 65 + .../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 | 71 + .../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/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 | 166 + .../bower_components/moment/locale/se.js | 61 + .../bower_components/moment/locale/si.js | 66 + .../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 | 87 + .../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 | 66 + .../bower_components/moment/locale/zh-cn.js | 127 + .../bower_components/moment/locale/zh-tw.js | 101 + .../bower_components/moment/min/locales.js | 7548 +++ .../moment/min/locales.min.js | 72 + .../moment/min/moment-with-locales.js | 11144 ++++ .../moment/min/moment-with-locales.min.js | 74 + .../bower_components/moment/min/moment.min.js | 7 + .../bower_components/moment/min/tests.js | 46196 ++++++++++++++++ .../public/bower_components/moment/moment.js | 3606 ++ .../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 + .../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 | 117 + .../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 | 2 + .../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 | 35 + .../moment/src/lib/locale/locales.js | 118 + .../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 + .../moment/src/lib/locale/set.js | 16 + .../moment/src/lib/moment/add-subtract.js | 52 + .../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 + .../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 + .../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 + .../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 | 209 + .../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 | 101 + .../moment/src/lib/units/week.js | 61 + .../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/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-undefined.js | 3 + .../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 + .../moment/src/locale/ar-ma.js | 50 + .../moment/src/locale/ar-sa.js | 94 + .../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 | 104 + .../bower_components/moment/src/locale/bo.js | 101 + .../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 + .../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 + .../moment/src/locale/en-au.js | 57 + .../moment/src/locale/en-ca.js | 54 + .../moment/src/locale/en-gb.js | 58 + .../moment/src/locale/en-ie.js | 58 + .../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 + .../moment/src/locale/fr-ca.js | 49 + .../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 | 73 + .../bower_components/moment/src/locale/hi.js | 114 + .../bower_components/moment/src/locale/hr.js | 134 + .../bower_components/moment/src/locale/hu.js | 100 + .../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 | 56 + .../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 | 62 + .../bower_components/moment/src/locale/mr.js | 149 + .../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/pl.js | 95 + .../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 | 156 + .../bower_components/moment/src/locale/se.js | 51 + .../bower_components/moment/src/locale/si.js | 56 + .../bower_components/moment/src/locale/sk.js | 141 + .../bower_components/moment/src/locale/sl.js | 150 + .../bower_components/moment/src/locale/sq.js | 60 + .../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 + .../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 | 78 + .../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 | 57 + .../moment/src/locale/zh-cn.js | 118 + .../moment/src/locale/zh-tw.js | 91 + .../bower_components/moment/src/moment.js | 71 + .../moment/templates/amd-named.js | 7 + .../bower_components/moment/templates/amd.js | 7 + .../moment/templates/default.js | 5 + .../moment/templates/globals.js | 5 + .../moment/templates/locale-header.js | 6 + .../moment/templates/test-header.js | 6 + themes/bootstrap/public/mailbox.js | 64 +- themes/bootstrap/templates/_base.html | 2 + themes/bootstrap/templates/mailbox/_list.html | 12 - themes/bootstrap/templates/mailbox/index.html | 11 +- 312 files changed, 90314 insertions(+), 43 deletions(-) create mode 100644 themes/bootstrap/public/bower_components/jquery-load-template/.bower.json create mode 100644 themes/bootstrap/public/bower_components/jquery-load-template/bower.json create mode 100644 themes/bootstrap/public/bower_components/jquery-load-template/dist/jquery.loadTemplate-1.5.6.js create mode 100644 themes/bootstrap/public/bower_components/jquery-load-template/dist/jquery.loadTemplate-1.5.6.min.js create mode 100644 themes/bootstrap/public/bower_components/moment/.bower.json create mode 100644 themes/bootstrap/public/bower_components/moment/CHANGELOG.md create mode 100644 themes/bootstrap/public/bower_components/moment/LICENSE create mode 100644 themes/bootstrap/public/bower_components/moment/README.md create mode 100644 themes/bootstrap/public/bower_components/moment/bower.json create mode 100644 themes/bootstrap/public/bower_components/moment/locale/af.js create mode 100644 themes/bootstrap/public/bower_components/moment/locale/ar-ma.js create mode 100644 themes/bootstrap/public/bower_components/moment/locale/ar-sa.js create mode 100644 themes/bootstrap/public/bower_components/moment/locale/ar-tn.js create mode 100644 themes/bootstrap/public/bower_components/moment/locale/ar.js create mode 100644 themes/bootstrap/public/bower_components/moment/locale/az.js create mode 100644 themes/bootstrap/public/bower_components/moment/locale/be.js create mode 100644 themes/bootstrap/public/bower_components/moment/locale/bg.js create mode 100644 themes/bootstrap/public/bower_components/moment/locale/bn.js create mode 100644 themes/bootstrap/public/bower_components/moment/locale/bo.js create mode 100644 themes/bootstrap/public/bower_components/moment/locale/br.js create mode 100644 themes/bootstrap/public/bower_components/moment/locale/bs.js create mode 100644 themes/bootstrap/public/bower_components/moment/locale/ca.js create mode 100644 themes/bootstrap/public/bower_components/moment/locale/cs.js create mode 100644 themes/bootstrap/public/bower_components/moment/locale/cv.js create mode 100644 themes/bootstrap/public/bower_components/moment/locale/cy.js create mode 100644 themes/bootstrap/public/bower_components/moment/locale/da.js create mode 100644 themes/bootstrap/public/bower_components/moment/locale/de-at.js create mode 100644 themes/bootstrap/public/bower_components/moment/locale/de.js create mode 100644 themes/bootstrap/public/bower_components/moment/locale/dv.js create mode 100644 themes/bootstrap/public/bower_components/moment/locale/el.js create mode 100644 themes/bootstrap/public/bower_components/moment/locale/en-au.js create mode 100644 themes/bootstrap/public/bower_components/moment/locale/en-ca.js create mode 100644 themes/bootstrap/public/bower_components/moment/locale/en-gb.js create mode 100644 themes/bootstrap/public/bower_components/moment/locale/en-ie.js create mode 100644 themes/bootstrap/public/bower_components/moment/locale/en-nz.js create mode 100644 themes/bootstrap/public/bower_components/moment/locale/eo.js create mode 100644 themes/bootstrap/public/bower_components/moment/locale/es.js create mode 100644 themes/bootstrap/public/bower_components/moment/locale/et.js create mode 100644 themes/bootstrap/public/bower_components/moment/locale/eu.js create mode 100644 themes/bootstrap/public/bower_components/moment/locale/fa.js create mode 100644 themes/bootstrap/public/bower_components/moment/locale/fi.js create mode 100644 themes/bootstrap/public/bower_components/moment/locale/fo.js create mode 100644 themes/bootstrap/public/bower_components/moment/locale/fr-ca.js create mode 100644 themes/bootstrap/public/bower_components/moment/locale/fr-ch.js create mode 100644 themes/bootstrap/public/bower_components/moment/locale/fr.js create mode 100644 themes/bootstrap/public/bower_components/moment/locale/fy.js create mode 100644 themes/bootstrap/public/bower_components/moment/locale/gd.js create mode 100644 themes/bootstrap/public/bower_components/moment/locale/gl.js create mode 100644 themes/bootstrap/public/bower_components/moment/locale/he.js create mode 100644 themes/bootstrap/public/bower_components/moment/locale/hi.js create mode 100644 themes/bootstrap/public/bower_components/moment/locale/hr.js create mode 100644 themes/bootstrap/public/bower_components/moment/locale/hu.js create mode 100644 themes/bootstrap/public/bower_components/moment/locale/hy-am.js create mode 100644 themes/bootstrap/public/bower_components/moment/locale/id.js create mode 100644 themes/bootstrap/public/bower_components/moment/locale/is.js create mode 100644 themes/bootstrap/public/bower_components/moment/locale/it.js create mode 100644 themes/bootstrap/public/bower_components/moment/locale/ja.js create mode 100644 themes/bootstrap/public/bower_components/moment/locale/jv.js create mode 100644 themes/bootstrap/public/bower_components/moment/locale/ka.js create mode 100644 themes/bootstrap/public/bower_components/moment/locale/kk.js create mode 100644 themes/bootstrap/public/bower_components/moment/locale/km.js create mode 100644 themes/bootstrap/public/bower_components/moment/locale/ko.js create mode 100644 themes/bootstrap/public/bower_components/moment/locale/lb.js create mode 100644 themes/bootstrap/public/bower_components/moment/locale/lo.js create mode 100644 themes/bootstrap/public/bower_components/moment/locale/lt.js create mode 100644 themes/bootstrap/public/bower_components/moment/locale/lv.js create mode 100644 themes/bootstrap/public/bower_components/moment/locale/me.js create mode 100644 themes/bootstrap/public/bower_components/moment/locale/mk.js create mode 100644 themes/bootstrap/public/bower_components/moment/locale/ml.js create mode 100644 themes/bootstrap/public/bower_components/moment/locale/mr.js create mode 100644 themes/bootstrap/public/bower_components/moment/locale/ms-my.js create mode 100644 themes/bootstrap/public/bower_components/moment/locale/ms.js create mode 100644 themes/bootstrap/public/bower_components/moment/locale/my.js create mode 100644 themes/bootstrap/public/bower_components/moment/locale/nb.js create mode 100644 themes/bootstrap/public/bower_components/moment/locale/ne.js create mode 100644 themes/bootstrap/public/bower_components/moment/locale/nl.js create mode 100644 themes/bootstrap/public/bower_components/moment/locale/nn.js create mode 100644 themes/bootstrap/public/bower_components/moment/locale/pl.js create mode 100644 themes/bootstrap/public/bower_components/moment/locale/pt-br.js create mode 100644 themes/bootstrap/public/bower_components/moment/locale/pt.js create mode 100644 themes/bootstrap/public/bower_components/moment/locale/ro.js create mode 100644 themes/bootstrap/public/bower_components/moment/locale/ru.js create mode 100644 themes/bootstrap/public/bower_components/moment/locale/se.js create mode 100644 themes/bootstrap/public/bower_components/moment/locale/si.js create mode 100644 themes/bootstrap/public/bower_components/moment/locale/sk.js create mode 100644 themes/bootstrap/public/bower_components/moment/locale/sl.js create mode 100644 themes/bootstrap/public/bower_components/moment/locale/sq.js create mode 100644 themes/bootstrap/public/bower_components/moment/locale/sr-cyrl.js create mode 100644 themes/bootstrap/public/bower_components/moment/locale/sr.js create mode 100644 themes/bootstrap/public/bower_components/moment/locale/sv.js create mode 100644 themes/bootstrap/public/bower_components/moment/locale/sw.js create mode 100644 themes/bootstrap/public/bower_components/moment/locale/ta.js create mode 100644 themes/bootstrap/public/bower_components/moment/locale/te.js create mode 100644 themes/bootstrap/public/bower_components/moment/locale/th.js create mode 100644 themes/bootstrap/public/bower_components/moment/locale/tl-ph.js create mode 100644 themes/bootstrap/public/bower_components/moment/locale/tlh.js create mode 100644 themes/bootstrap/public/bower_components/moment/locale/tr.js create mode 100644 themes/bootstrap/public/bower_components/moment/locale/tzl.js create mode 100644 themes/bootstrap/public/bower_components/moment/locale/tzm-latn.js create mode 100644 themes/bootstrap/public/bower_components/moment/locale/tzm.js create mode 100644 themes/bootstrap/public/bower_components/moment/locale/uk.js create mode 100644 themes/bootstrap/public/bower_components/moment/locale/uz.js create mode 100644 themes/bootstrap/public/bower_components/moment/locale/vi.js create mode 100644 themes/bootstrap/public/bower_components/moment/locale/zh-cn.js create mode 100644 themes/bootstrap/public/bower_components/moment/locale/zh-tw.js create mode 100644 themes/bootstrap/public/bower_components/moment/min/locales.js create mode 100644 themes/bootstrap/public/bower_components/moment/min/locales.min.js create mode 100644 themes/bootstrap/public/bower_components/moment/min/moment-with-locales.js create mode 100644 themes/bootstrap/public/bower_components/moment/min/moment-with-locales.min.js create mode 100644 themes/bootstrap/public/bower_components/moment/min/moment.min.js create mode 100644 themes/bootstrap/public/bower_components/moment/min/tests.js create mode 100644 themes/bootstrap/public/bower_components/moment/moment.js create mode 100644 themes/bootstrap/public/bower_components/moment/src/lib/create/check-overflow.js create mode 100644 themes/bootstrap/public/bower_components/moment/src/lib/create/date-from-array.js create mode 100644 themes/bootstrap/public/bower_components/moment/src/lib/create/from-anything.js create mode 100644 themes/bootstrap/public/bower_components/moment/src/lib/create/from-array.js create mode 100644 themes/bootstrap/public/bower_components/moment/src/lib/create/from-object.js create mode 100644 themes/bootstrap/public/bower_components/moment/src/lib/create/from-string-and-array.js create mode 100644 themes/bootstrap/public/bower_components/moment/src/lib/create/from-string-and-format.js create mode 100644 themes/bootstrap/public/bower_components/moment/src/lib/create/from-string.js create mode 100644 themes/bootstrap/public/bower_components/moment/src/lib/create/local.js create mode 100644 themes/bootstrap/public/bower_components/moment/src/lib/create/parsing-flags.js create mode 100644 themes/bootstrap/public/bower_components/moment/src/lib/create/utc.js create mode 100644 themes/bootstrap/public/bower_components/moment/src/lib/create/valid.js create mode 100644 themes/bootstrap/public/bower_components/moment/src/lib/duration/abs.js create mode 100644 themes/bootstrap/public/bower_components/moment/src/lib/duration/add-subtract.js create mode 100644 themes/bootstrap/public/bower_components/moment/src/lib/duration/as.js create mode 100644 themes/bootstrap/public/bower_components/moment/src/lib/duration/bubble.js create mode 100644 themes/bootstrap/public/bower_components/moment/src/lib/duration/constructor.js create mode 100644 themes/bootstrap/public/bower_components/moment/src/lib/duration/create.js create mode 100644 themes/bootstrap/public/bower_components/moment/src/lib/duration/duration.js create mode 100644 themes/bootstrap/public/bower_components/moment/src/lib/duration/get.js create mode 100644 themes/bootstrap/public/bower_components/moment/src/lib/duration/humanize.js create mode 100644 themes/bootstrap/public/bower_components/moment/src/lib/duration/iso-string.js create mode 100644 themes/bootstrap/public/bower_components/moment/src/lib/duration/prototype.js create mode 100644 themes/bootstrap/public/bower_components/moment/src/lib/format/format.js create mode 100644 themes/bootstrap/public/bower_components/moment/src/lib/locale/calendar.js create mode 100644 themes/bootstrap/public/bower_components/moment/src/lib/locale/constructor.js create mode 100644 themes/bootstrap/public/bower_components/moment/src/lib/locale/en.js create mode 100644 themes/bootstrap/public/bower_components/moment/src/lib/locale/formats.js create mode 100644 themes/bootstrap/public/bower_components/moment/src/lib/locale/invalid.js create mode 100644 themes/bootstrap/public/bower_components/moment/src/lib/locale/lists.js create mode 100644 themes/bootstrap/public/bower_components/moment/src/lib/locale/locale.js create mode 100644 themes/bootstrap/public/bower_components/moment/src/lib/locale/locales.js create mode 100644 themes/bootstrap/public/bower_components/moment/src/lib/locale/ordinal.js create mode 100644 themes/bootstrap/public/bower_components/moment/src/lib/locale/pre-post-format.js create mode 100644 themes/bootstrap/public/bower_components/moment/src/lib/locale/prototype.js create mode 100644 themes/bootstrap/public/bower_components/moment/src/lib/locale/relative.js create mode 100644 themes/bootstrap/public/bower_components/moment/src/lib/locale/set.js create mode 100644 themes/bootstrap/public/bower_components/moment/src/lib/moment/add-subtract.js create mode 100644 themes/bootstrap/public/bower_components/moment/src/lib/moment/calendar.js create mode 100644 themes/bootstrap/public/bower_components/moment/src/lib/moment/clone.js create mode 100644 themes/bootstrap/public/bower_components/moment/src/lib/moment/compare.js create mode 100644 themes/bootstrap/public/bower_components/moment/src/lib/moment/constructor.js create mode 100644 themes/bootstrap/public/bower_components/moment/src/lib/moment/creation-data.js create mode 100644 themes/bootstrap/public/bower_components/moment/src/lib/moment/diff.js create mode 100644 themes/bootstrap/public/bower_components/moment/src/lib/moment/format.js create mode 100644 themes/bootstrap/public/bower_components/moment/src/lib/moment/from.js create mode 100644 themes/bootstrap/public/bower_components/moment/src/lib/moment/get-set.js create mode 100644 themes/bootstrap/public/bower_components/moment/src/lib/moment/locale.js create mode 100644 themes/bootstrap/public/bower_components/moment/src/lib/moment/min-max.js create mode 100644 themes/bootstrap/public/bower_components/moment/src/lib/moment/moment.js create mode 100644 themes/bootstrap/public/bower_components/moment/src/lib/moment/now.js create mode 100644 themes/bootstrap/public/bower_components/moment/src/lib/moment/prototype.js create mode 100644 themes/bootstrap/public/bower_components/moment/src/lib/moment/start-end-of.js create mode 100644 themes/bootstrap/public/bower_components/moment/src/lib/moment/to-type.js create mode 100644 themes/bootstrap/public/bower_components/moment/src/lib/moment/to.js create mode 100644 themes/bootstrap/public/bower_components/moment/src/lib/moment/valid.js create mode 100644 themes/bootstrap/public/bower_components/moment/src/lib/parse/regex.js create mode 100644 themes/bootstrap/public/bower_components/moment/src/lib/parse/token.js create mode 100644 themes/bootstrap/public/bower_components/moment/src/lib/units/aliases.js create mode 100644 themes/bootstrap/public/bower_components/moment/src/lib/units/constants.js create mode 100644 themes/bootstrap/public/bower_components/moment/src/lib/units/day-of-month.js create mode 100644 themes/bootstrap/public/bower_components/moment/src/lib/units/day-of-week.js create mode 100644 themes/bootstrap/public/bower_components/moment/src/lib/units/day-of-year.js create mode 100644 themes/bootstrap/public/bower_components/moment/src/lib/units/hour.js create mode 100644 themes/bootstrap/public/bower_components/moment/src/lib/units/millisecond.js create mode 100644 themes/bootstrap/public/bower_components/moment/src/lib/units/minute.js create mode 100644 themes/bootstrap/public/bower_components/moment/src/lib/units/month.js create mode 100644 themes/bootstrap/public/bower_components/moment/src/lib/units/offset.js create mode 100644 themes/bootstrap/public/bower_components/moment/src/lib/units/quarter.js create mode 100644 themes/bootstrap/public/bower_components/moment/src/lib/units/second.js create mode 100644 themes/bootstrap/public/bower_components/moment/src/lib/units/timestamp.js create mode 100644 themes/bootstrap/public/bower_components/moment/src/lib/units/timezone.js create mode 100644 themes/bootstrap/public/bower_components/moment/src/lib/units/units.js create mode 100644 themes/bootstrap/public/bower_components/moment/src/lib/units/week-calendar-utils.js create mode 100644 themes/bootstrap/public/bower_components/moment/src/lib/units/week-year.js create mode 100644 themes/bootstrap/public/bower_components/moment/src/lib/units/week.js create mode 100644 themes/bootstrap/public/bower_components/moment/src/lib/units/year.js create mode 100644 themes/bootstrap/public/bower_components/moment/src/lib/utils/abs-ceil.js create mode 100644 themes/bootstrap/public/bower_components/moment/src/lib/utils/abs-floor.js create mode 100644 themes/bootstrap/public/bower_components/moment/src/lib/utils/compare-arrays.js create mode 100644 themes/bootstrap/public/bower_components/moment/src/lib/utils/defaults.js create mode 100644 themes/bootstrap/public/bower_components/moment/src/lib/utils/deprecate.js create mode 100644 themes/bootstrap/public/bower_components/moment/src/lib/utils/extend.js create mode 100644 themes/bootstrap/public/bower_components/moment/src/lib/utils/has-own-prop.js create mode 100644 themes/bootstrap/public/bower_components/moment/src/lib/utils/hooks.js create mode 100644 themes/bootstrap/public/bower_components/moment/src/lib/utils/is-array.js create mode 100644 themes/bootstrap/public/bower_components/moment/src/lib/utils/is-date.js create mode 100644 themes/bootstrap/public/bower_components/moment/src/lib/utils/is-function.js create mode 100644 themes/bootstrap/public/bower_components/moment/src/lib/utils/is-undefined.js create mode 100644 themes/bootstrap/public/bower_components/moment/src/lib/utils/map.js create mode 100644 themes/bootstrap/public/bower_components/moment/src/lib/utils/to-int.js create mode 100644 themes/bootstrap/public/bower_components/moment/src/lib/utils/zero-fill.js create mode 100644 themes/bootstrap/public/bower_components/moment/src/locale/af.js create mode 100644 themes/bootstrap/public/bower_components/moment/src/locale/ar-ma.js create mode 100644 themes/bootstrap/public/bower_components/moment/src/locale/ar-sa.js create mode 100644 themes/bootstrap/public/bower_components/moment/src/locale/ar-tn.js create mode 100644 themes/bootstrap/public/bower_components/moment/src/locale/ar.js create mode 100644 themes/bootstrap/public/bower_components/moment/src/locale/az.js create mode 100644 themes/bootstrap/public/bower_components/moment/src/locale/be.js create mode 100644 themes/bootstrap/public/bower_components/moment/src/locale/bg.js create mode 100644 themes/bootstrap/public/bower_components/moment/src/locale/bn.js create mode 100644 themes/bootstrap/public/bower_components/moment/src/locale/bo.js create mode 100644 themes/bootstrap/public/bower_components/moment/src/locale/br.js create mode 100644 themes/bootstrap/public/bower_components/moment/src/locale/bs.js create mode 100644 themes/bootstrap/public/bower_components/moment/src/locale/ca.js create mode 100644 themes/bootstrap/public/bower_components/moment/src/locale/cs.js create mode 100644 themes/bootstrap/public/bower_components/moment/src/locale/cv.js create mode 100644 themes/bootstrap/public/bower_components/moment/src/locale/cy.js create mode 100644 themes/bootstrap/public/bower_components/moment/src/locale/da.js create mode 100644 themes/bootstrap/public/bower_components/moment/src/locale/de-at.js create mode 100644 themes/bootstrap/public/bower_components/moment/src/locale/de.js create mode 100644 themes/bootstrap/public/bower_components/moment/src/locale/dv.js create mode 100644 themes/bootstrap/public/bower_components/moment/src/locale/el.js create mode 100644 themes/bootstrap/public/bower_components/moment/src/locale/en-au.js create mode 100644 themes/bootstrap/public/bower_components/moment/src/locale/en-ca.js create mode 100644 themes/bootstrap/public/bower_components/moment/src/locale/en-gb.js create mode 100644 themes/bootstrap/public/bower_components/moment/src/locale/en-ie.js create mode 100644 themes/bootstrap/public/bower_components/moment/src/locale/en-nz.js create mode 100644 themes/bootstrap/public/bower_components/moment/src/locale/eo.js create mode 100644 themes/bootstrap/public/bower_components/moment/src/locale/es.js create mode 100644 themes/bootstrap/public/bower_components/moment/src/locale/et.js create mode 100644 themes/bootstrap/public/bower_components/moment/src/locale/eu.js create mode 100644 themes/bootstrap/public/bower_components/moment/src/locale/fa.js create mode 100644 themes/bootstrap/public/bower_components/moment/src/locale/fi.js create mode 100644 themes/bootstrap/public/bower_components/moment/src/locale/fo.js create mode 100644 themes/bootstrap/public/bower_components/moment/src/locale/fr-ca.js create mode 100644 themes/bootstrap/public/bower_components/moment/src/locale/fr-ch.js create mode 100644 themes/bootstrap/public/bower_components/moment/src/locale/fr.js create mode 100644 themes/bootstrap/public/bower_components/moment/src/locale/fy.js create mode 100644 themes/bootstrap/public/bower_components/moment/src/locale/gd.js create mode 100644 themes/bootstrap/public/bower_components/moment/src/locale/gl.js create mode 100644 themes/bootstrap/public/bower_components/moment/src/locale/he.js create mode 100644 themes/bootstrap/public/bower_components/moment/src/locale/hi.js create mode 100644 themes/bootstrap/public/bower_components/moment/src/locale/hr.js create mode 100644 themes/bootstrap/public/bower_components/moment/src/locale/hu.js create mode 100644 themes/bootstrap/public/bower_components/moment/src/locale/hy-am.js create mode 100644 themes/bootstrap/public/bower_components/moment/src/locale/id.js create mode 100644 themes/bootstrap/public/bower_components/moment/src/locale/is.js create mode 100644 themes/bootstrap/public/bower_components/moment/src/locale/it.js create mode 100644 themes/bootstrap/public/bower_components/moment/src/locale/ja.js create mode 100644 themes/bootstrap/public/bower_components/moment/src/locale/jv.js create mode 100644 themes/bootstrap/public/bower_components/moment/src/locale/ka.js create mode 100644 themes/bootstrap/public/bower_components/moment/src/locale/kk.js create mode 100644 themes/bootstrap/public/bower_components/moment/src/locale/km.js create mode 100644 themes/bootstrap/public/bower_components/moment/src/locale/ko.js create mode 100644 themes/bootstrap/public/bower_components/moment/src/locale/lb.js create mode 100644 themes/bootstrap/public/bower_components/moment/src/locale/lo.js create mode 100644 themes/bootstrap/public/bower_components/moment/src/locale/lt.js create mode 100644 themes/bootstrap/public/bower_components/moment/src/locale/lv.js create mode 100644 themes/bootstrap/public/bower_components/moment/src/locale/me.js create mode 100644 themes/bootstrap/public/bower_components/moment/src/locale/mk.js create mode 100644 themes/bootstrap/public/bower_components/moment/src/locale/ml.js create mode 100644 themes/bootstrap/public/bower_components/moment/src/locale/mr.js create mode 100644 themes/bootstrap/public/bower_components/moment/src/locale/ms-my.js create mode 100644 themes/bootstrap/public/bower_components/moment/src/locale/ms.js create mode 100644 themes/bootstrap/public/bower_components/moment/src/locale/my.js create mode 100644 themes/bootstrap/public/bower_components/moment/src/locale/nb.js create mode 100644 themes/bootstrap/public/bower_components/moment/src/locale/ne.js create mode 100644 themes/bootstrap/public/bower_components/moment/src/locale/nl.js create mode 100644 themes/bootstrap/public/bower_components/moment/src/locale/nn.js create mode 100644 themes/bootstrap/public/bower_components/moment/src/locale/pl.js create mode 100644 themes/bootstrap/public/bower_components/moment/src/locale/pt-br.js create mode 100644 themes/bootstrap/public/bower_components/moment/src/locale/pt.js create mode 100644 themes/bootstrap/public/bower_components/moment/src/locale/ro.js create mode 100644 themes/bootstrap/public/bower_components/moment/src/locale/ru.js create mode 100644 themes/bootstrap/public/bower_components/moment/src/locale/se.js create mode 100644 themes/bootstrap/public/bower_components/moment/src/locale/si.js create mode 100644 themes/bootstrap/public/bower_components/moment/src/locale/sk.js create mode 100644 themes/bootstrap/public/bower_components/moment/src/locale/sl.js create mode 100644 themes/bootstrap/public/bower_components/moment/src/locale/sq.js create mode 100644 themes/bootstrap/public/bower_components/moment/src/locale/sr-cyrl.js create mode 100644 themes/bootstrap/public/bower_components/moment/src/locale/sr.js create mode 100644 themes/bootstrap/public/bower_components/moment/src/locale/sv.js create mode 100644 themes/bootstrap/public/bower_components/moment/src/locale/sw.js create mode 100644 themes/bootstrap/public/bower_components/moment/src/locale/ta.js create mode 100644 themes/bootstrap/public/bower_components/moment/src/locale/te.js create mode 100644 themes/bootstrap/public/bower_components/moment/src/locale/th.js create mode 100644 themes/bootstrap/public/bower_components/moment/src/locale/tl-ph.js create mode 100644 themes/bootstrap/public/bower_components/moment/src/locale/tlh.js create mode 100644 themes/bootstrap/public/bower_components/moment/src/locale/tr.js create mode 100644 themes/bootstrap/public/bower_components/moment/src/locale/tzl.js create mode 100644 themes/bootstrap/public/bower_components/moment/src/locale/tzm-latn.js create mode 100644 themes/bootstrap/public/bower_components/moment/src/locale/tzm.js create mode 100644 themes/bootstrap/public/bower_components/moment/src/locale/uk.js create mode 100644 themes/bootstrap/public/bower_components/moment/src/locale/uz.js create mode 100644 themes/bootstrap/public/bower_components/moment/src/locale/vi.js create mode 100644 themes/bootstrap/public/bower_components/moment/src/locale/zh-cn.js create mode 100644 themes/bootstrap/public/bower_components/moment/src/locale/zh-tw.js create mode 100644 themes/bootstrap/public/bower_components/moment/src/moment.js create mode 100644 themes/bootstrap/public/bower_components/moment/templates/amd-named.js create mode 100644 themes/bootstrap/public/bower_components/moment/templates/amd.js create mode 100644 themes/bootstrap/public/bower_components/moment/templates/default.js create mode 100644 themes/bootstrap/public/bower_components/moment/templates/globals.js create mode 100644 themes/bootstrap/public/bower_components/moment/templates/locale-header.js create mode 100644 themes/bootstrap/public/bower_components/moment/templates/test-header.js delete mode 100644 themes/bootstrap/templates/mailbox/_list.html diff --git a/themes/bootstrap/public/bower.json b/themes/bootstrap/public/bower.json index b7ab1e9..3339ae9 100644 --- a/themes/bootstrap/public/bower.json +++ b/themes/bootstrap/public/bower.json @@ -22,6 +22,8 @@ "jquery": "2", "jquery-color": "^2.1.2", "jquery-sparkline": "^2.1.3", - "clipboard": "^1.5.9" + "clipboard": "^1.5.9", + "jquery-load-template": "^1.5.6", + "moment": "^2.11.2" } } diff --git a/themes/bootstrap/public/bower_components/jquery-load-template/.bower.json b/themes/bootstrap/public/bower_components/jquery-load-template/.bower.json new file mode 100644 index 0000000..eb9fbd7 --- /dev/null +++ b/themes/bootstrap/public/bower_components/jquery-load-template/.bower.json @@ -0,0 +1,43 @@ +{ + "name": "jquery-load-template", + "homepage": "http://codepb.github.io/jquery-template/", + "authors": [ + "Paul Burgess " + ], + "description": "jQuery plugin for loading and using templates. The plugin is designed to be simple yet powerful, and supports loading templates from within the page, or using AJAX to load html files.", + "repository": { + "type": "git", + "url": "https://github.com/codepb/jquery-template.git" + }, + "main": "dist/jquery.loadTemplate-1.5.6.js", + "keywords": [ + "templates", + "templating", + "jquery-plugin" + ], + "ignore": [ + "Examples", + "tests", + ".gitattributes", + ".gitignore", + ".travis.yml", + "loadTemplate.jquery.json", + "MIT-LICENSE.txt", + "package.json", + "readme.md" + ], + "dependencies": { + "jquery": ">=1.8" + }, + "version": "1.5.6", + "_release": "1.5.6", + "_resolution": { + "type": "version", + "tag": "1.5.6", + "commit": "54c882c2aefa361e6faa7cdfc6abcf8c68bd505b" + }, + "_source": "git://github.com/codepb/jquery-template.git", + "_target": "^1.5.6", + "_originalSource": "jquery-load-template", + "_direct": true +} \ No newline at end of file diff --git a/themes/bootstrap/public/bower_components/jquery-load-template/bower.json b/themes/bootstrap/public/bower_components/jquery-load-template/bower.json new file mode 100644 index 0000000..1c946fa --- /dev/null +++ b/themes/bootstrap/public/bower_components/jquery-load-template/bower.json @@ -0,0 +1,32 @@ +{ + "name": "jquery-load-template", + "homepage": "http://codepb.github.io/jquery-template/", + "authors": [ + "Paul Burgess " + ], + "description": "jQuery plugin for loading and using templates. The plugin is designed to be simple yet powerful, and supports loading templates from within the page, or using AJAX to load html files.", + "repository": { + "type": "git", + "url": "https://github.com/codepb/jquery-template.git" + }, + "main": "dist/jquery.loadTemplate-1.5.6.js", + "keywords": [ + "templates", + "templating", + "jquery-plugin" + ], + "ignore": [ + "Examples", + "tests", + ".gitattributes", + ".gitignore", + ".travis.yml", + "loadTemplate.jquery.json", + "MIT-LICENSE.txt", + "package.json", + "readme.md" + ], + "dependencies": { + "jquery": ">=1.8" + } +} diff --git a/themes/bootstrap/public/bower_components/jquery-load-template/dist/jquery.loadTemplate-1.5.6.js b/themes/bootstrap/public/bower_components/jquery-load-template/dist/jquery.loadTemplate-1.5.6.js new file mode 100644 index 0000000..d0f8954 --- /dev/null +++ b/themes/bootstrap/public/bower_components/jquery-load-template/dist/jquery.loadTemplate-1.5.6.js @@ -0,0 +1,542 @@ +(function ($) { + "use strict"; + var templates = {}, + queue = {}, + formatters = {}, + isArray; + + function loadTemplate(template, data, options) { + var $that = this, + $template, + isFile, + settings; + + data = data || {}; + + settings = $.extend(true, { + // These are the defaults. + async: true, + overwriteCache: false, + complete: null, + success: null, + error: function () { + $(this).each(function () { + $(this).html(settings.errorMessage); + }); + }, + errorMessage: "There was an error loading the template.", + paged: false, + pageNo: 1, + elemPerPage: 10, + append: false, + prepend: false, + beforeInsert: null, + afterInsert: null, + bindingOptions: { + ignoreUndefined: false, + ignoreNull: false, + ignoreEmptyString: false + } + }, options); + + if ($.type(data) === "array") { + isArray = true; + return processArray.call(this, template, data, settings); + } + + if (!containsSlashes(template)) { + $template = $(template); + if (typeof template === 'string' && template.indexOf('#') === 0) { + settings.isFile = false; + } + } + + isFile = settings.isFile || (typeof settings.isFile === "undefined" && (typeof $template === "undefined" || $template.length === 0)); + + if (isFile && !settings.overwriteCache && templates[template]) { + prepareTemplateFromCache(template, $that, data, settings); + } else if (isFile && !settings.overwriteCache && templates.hasOwnProperty(template)) { + addToQueue(template, $that, data, settings); + } else if (isFile) { + loadAndPrepareTemplate(template, $that, data, settings); + } else { + loadTemplateFromDocument($template, $that, data, settings); + } + return this; + } + + function addTemplateFormatter(key, formatter) { + if (formatter) { + formatters[key] = formatter; + } else { + formatters = $.extend(formatters, key); + } + } + + function containsSlashes(str) { + return typeof str === "string" && str.indexOf("/") > -1; + } + + function processArray(template, data, settings) { + settings = settings || {}; + var $that = this, + todo = data.length, + doPrepend = settings.prepend && !settings.append, + done = 0, + success = 0, + errored = false, + errorObjects = [], + newOptions; + + if (settings.paged) { + var startNo = (settings.pageNo - 1) * settings.elemPerPage; + data = data.slice(startNo, startNo + settings.elemPerPage); + todo = data.length; + } + + newOptions = $.extend( + {}, + settings, + { + async: false, + complete: function (data) { + if (this.html) { + var insertedElement; + if (doPrepend) { + insertedElement = $(this.html()).prependTo($that); + } else { + insertedElement = $(this.html()).appendTo($that); + } + if (settings.afterInsert && data) { + settings.afterInsert(insertedElement, data); + } + } + done++; + if (done === todo || errored) { + if (errored && settings && typeof settings.error === "function") { + settings.error.call($that, errorObjects); + } + if (settings && typeof settings.complete === "function") { + settings.complete(); + } + } + }, + success: function () { + success++; + if (success === todo) { + if (settings && typeof settings.success === "function") { + settings.success(); + } + } + }, + error: function (e) { + errored = true; + errorObjects.push(e); + } + } + ); + + if (!settings.append && !settings.prepend) { + $that.html(""); + } + + if (doPrepend) data.reverse(); + $(data).each(function () { + var $div = $("
"); + loadTemplate.call($div, template, this, newOptions); + if (errored) { + return false; + } + }); + + return this; + } + + function addToQueue(template, selection, data, settings) { + if (queue[template]) { + queue[template].push({ data: data, selection: selection, settings: settings }); + } else { + queue[template] = [{ data: data, selection: selection, settings: settings}]; + } + } + + function prepareTemplateFromCache(template, selection, data, settings) { + var $templateContainer = templates[template].clone(); + + prepareTemplate.call(selection, $templateContainer, data, settings); + if (typeof settings.success === "function") { + settings.success(); + } + } + + function uniqueId() { + return new Date().getTime(); + } + + function urlAvoidCache(url) { + if (url.indexOf('?') !== -1) { + return url + "&_=" + uniqueId(); + } + else { + return url + "?_=" + uniqueId(); + } + } + + function loadAndPrepareTemplate(template, selection, data, settings) { + var $templateContainer = $("
"); + + templates[template] = null; + var templateUrl = template; + if (settings.overwriteCache) { + templateUrl = urlAvoidCache(templateUrl); + } + $.ajax({ + url: templateUrl, + async: settings.async, + success: function (templateContent) { + $templateContainer.html(templateContent); + handleTemplateLoadingSuccess($templateContainer, template, selection, data, settings); + }, + error: function (e) { + handleTemplateLoadingError(template, selection, data, settings, e); + } + }); + } + + function loadTemplateFromDocument($template, selection, data, settings) { + var $templateContainer = $("
"); + + if ($template.is("script") || $template.is("template")) { + $template = $.parseHTML($.trim($template.html())); + } + + $templateContainer.html($template); + prepareTemplate.call(selection, $templateContainer, data, settings); + + if (typeof settings.success === "function") { + settings.success(); + } + } + + function prepareTemplate(template, data, settings) { + bindData(template, data, settings); + + $(this).each(function () { + var $templateHtml = $(template.html()); + if (settings.beforeInsert) { + settings.beforeInsert($templateHtml, data); + } + if (settings.append) { + + $(this).append($templateHtml); + } else if (settings.prepend) { + $(this).prepend($templateHtml); + } else { + $(this).html($templateHtml); + } + if (settings.afterInsert && !isArray) { + settings.afterInsert($templateHtml, data); + } + }); + + if (typeof settings.complete === "function") { + settings.complete.call($(this), data); + } + } + + function handleTemplateLoadingError(template, selection, data, settings, error) { + var value; + + if (typeof settings.error === "function") { + settings.error.call(selection, error); + } + + $(queue[template]).each(function (key, value) { + if (typeof value.settings.error === "function") { + value.settings.error.call(value.selection, error); + } + }); + + if (typeof settings.complete === "function") { + settings.complete.call(selection); + } + + while (queue[template] && (value = queue[template].shift())) { + if (typeof value.settings.complete === "function") { + value.settings.complete.call(value.selection); + } + } + + if (typeof queue[template] !== 'undefined' && queue[template].length > 0) { + queue[template] = []; + } + } + + function handleTemplateLoadingSuccess($templateContainer, template, selection, data, settings) { + var value; + + templates[template] = $templateContainer.clone(); + prepareTemplate.call(selection, $templateContainer, data, settings); + + if (typeof settings.success === "function") { + settings.success.call(selection); + } + + while (queue[template] && (value = queue[template].shift())) { + prepareTemplate.call(value.selection, templates[template].clone(), value.data, value.settings); + if (typeof value.settings.success === "function") { + value.settings.success.call(value.selection); + } + } + } + + function bindData(template, data, settings) { + data = data || {}; + + processElements("data-content", template, data, settings, function ($elem, value) { + $elem.html(applyFormatters($elem, value, "content", settings)); + }); + + processElements("data-content-append", template, data, settings, function ($elem, value) { + $elem.append(applyFormatters($elem, value, "content", settings)); + }); + + processElements("data-content-prepend", template, data, settings, function ($elem, value) { + $elem.prepend(applyFormatters($elem, value, "content", settings)); + }); + + processElements("data-content-text", template, data, settings, function ($elem, value) { + $elem.text(applyFormatters($elem, value, "content", settings)); + }); + + processElements("data-innerHTML", template, data, settings, function ($elem, value) { + $elem.html(applyFormatters($elem, value, "content", settings)); + }); + + processElements("data-src", template, data, settings, function ($elem, value) { + $elem.attr("src", applyFormatters($elem, value, "src", settings)); + }, function ($elem) { + $elem.remove(); + }); + + processElements("data-href", template, data, settings, function ($elem, value) { + $elem.attr("href", applyFormatters($elem, value, "href", settings)); + }, function ($elem) { + $elem.remove(); + }); + + processElements("data-alt", template, data, settings, function ($elem, value) { + $elem.attr("alt", applyFormatters($elem, value, "alt", settings)); + }); + + processElements("data-id", template, data, settings, function ($elem, value) { + $elem.attr("id", applyFormatters($elem, value, "id", settings)); + }); + + processElements("data-value", template, data, settings, function ($elem, value) { + $elem.attr("value", applyFormatters($elem, value, "value", settings)); + }); + + processElements("data-class", template, data, settings, function ($elem, value) { + $elem.addClass(applyFormatters($elem, value, "class", settings)); + }); + + processElements("data-link", template, data, settings, function ($elem, value) { + var $linkElem = $(""); + $linkElem.attr("href", applyFormatters($elem, value, "link", settings)); + $linkElem.html($elem.html()); + $elem.html($linkElem); + }); + + processElements("data-link-wrap", template, data, settings, function ($elem, value) { + var $linkElem = $(""); + $linkElem.attr("href", applyFormatters($elem, value, "link-wrap", settings)); + $elem.wrap($linkElem); + }); + + processElements("data-options", template, data, settings, function ($elem, value) { + $(value).each(function () { + var $option = $("
");o.call(M,K,this,G);if(E){return false}});return this}function c(D,B,A,C){if(v[D]){v[D].push({data:A,selection:B,settings:C})}else{v[D]=[{data:A,selection:B,settings:C}]}}function r(E,C,B,D){var A=w[E].clone();q.call(C,A,B,D);if(typeof D.success==="function"){D.success()}}function x(){return new Date().getTime()}function y(A){if(A.indexOf("?")!==-1){return A+"&_="+x()}else{return A+"?_="+x()}}function n(E,C,B,D){var A=a("
");w[E]=null;var F=E;if(D.overwriteCache){F=y(F)}a.ajax({url:F,async:D.async,success:function(G){A.html(G);l(A,E,C,B,D)},error:function(G){k(E,C,B,D,G)}})}function p(A,D,C,E){var B=a("
");if(A.is("script")||A.is("template")){A=a.parseHTML(a.trim(A.html()))}B.html(A);q.call(D,B,C,E);if(typeof E.success==="function"){E.success()}}function q(C,A,B){f(C,A,B);a(this).each(function(){var D=a(C.html());if(B.beforeInsert){B.beforeInsert(D,A)}if(B.append){a(this).append(D)}else{if(B.prepend){a(this).prepend(D)}else{a(this).html(D)}}if(B.afterInsert&&!m){B.afterInsert(D,A)}});if(typeof B.complete==="function"){B.complete.call(a(this),A)}}function k(E,C,A,D,B){var F;if(typeof D.error==="function"){D.error.call(C,B)}a(v[E]).each(function(G,H){if(typeof H.settings.error==="function"){H.settings.error.call(H.selection,B)}});if(typeof D.complete==="function"){D.complete.call(C)}while(v[E]&&(F=v[E].shift())){if(typeof F.settings.complete==="function"){F.settings.complete.call(F.selection)}}if(typeof v[E]!=="undefined"&&v[E].length>0){v[E]=[]}}function l(A,E,C,B,D){var F;w[E]=A.clone();q.call(C,A,B,D);if(typeof D.success==="function"){D.success.call(C)}while(v[E]&&(F=v[E].shift())){q.call(F.selection,w[E].clone(),F.data,F.settings);if(typeof F.settings.success==="function"){F.settings.success.call(F.selection)}}}function f(C,A,B){A=A||{};u("data-content",C,A,B,function(D,E){D.html(e(D,E,"content",B))});u("data-content-append",C,A,B,function(D,E){D.append(e(D,E,"content",B))});u("data-content-prepend",C,A,B,function(D,E){D.prepend(e(D,E,"content",B))});u("data-content-text",C,A,B,function(D,E){D.text(e(D,E,"content",B))});u("data-innerHTML",C,A,B,function(D,E){D.html(e(D,E,"content",B))});u("data-src",C,A,B,function(D,E){D.attr("src",e(D,E,"src",B))},function(D){D.remove()});u("data-href",C,A,B,function(D,E){D.attr("href",e(D,E,"href",B))},function(D){D.remove()});u("data-alt",C,A,B,function(D,E){D.attr("alt",e(D,E,"alt",B))});u("data-id",C,A,B,function(D,E){D.attr("id",e(D,E,"id",B))});u("data-value",C,A,B,function(D,E){D.attr("value",e(D,E,"value",B))});u("data-class",C,A,B,function(D,E){D.addClass(e(D,E,"class",B))});u("data-link",C,A,B,function(D,F){var E=a("");E.attr("href",e(D,F,"link",B));E.html(D.html());D.html(E)});u("data-link-wrap",C,A,B,function(D,F){var E=a("");E.attr("href",e(D,F,"link-wrap",B));D.wrap(E)});u("data-options",C,A,B,function(D,E){a(E).each(function(){var F=a("