=128){z('not-basic')}M.push(W.charCodeAt(Q))}for(U=O>0?O+1:0;U=P){z('invalid-input')}V=f(W.charCodeAt(U++));if(V>=l||V>B((s-S)/X)){z('overflow')}S+=V*X;Z=N<=T?n:(N>=T+q?q:N-T);if(VB(s/Y)){z('overflow')}X*=Y}R=M.length+1;T=b(S-K,R,K==0);if(B(S/R)>s-L){z('overflow')}L+=B(S/R);S%=R;M.splice(S++,0,L)}return D(M)}function j(V){var M,X,S,K,T,R,N,J,Q,Z,W,L=[],P,O,Y,U;V=k(V);P=V.length;M=h;X=0;T=o;for(R=0;R=M&&WB((s-X)/O)){z('overflow')}X+=(N-M)*O;M=N;for(R=0;Rs){z('overflow')}if(W==M){for(J=X,Q=l;;Q+=l){Z=Q<=T?n:(Q>=T+q?q:Q-T);if(Jtrue),
42 | array('title', 'length', 'max'=>128),
43 | // The following rule is used by search().
44 | // Please remove those attributes that should not be searched.
45 | array('id_todo, title, status, timestamp', 'safe', 'on'=>'search'),
46 | );
47 | }
48 |
49 | /**
50 | * @return array relational rules.
51 | */
52 | public function relations()
53 | {
54 | // NOTE: you may need to adjust the relation name and the related
55 | // class name for the relations automatically generated below.
56 | return array(
57 | );
58 | }
59 |
60 | /**
61 | * @return array customized attribute labels (name=>label)
62 | */
63 | public function attributeLabels()
64 | {
65 | return array(
66 | 'id_todo' => 'Id Todo',
67 | 'title' => 'Title',
68 | 'status' => 'Status',
69 | 'timestamp' => 'Timestamp',
70 | );
71 | }
72 |
73 | /**
74 | * Retrieves a list of models based on the current search/filter conditions.
75 | * @return CActiveDataProvider the data provider that can return the models based on the search/filter conditions.
76 | */
77 | public function search()
78 | {
79 | // Warning: Please modify the following code to remove attributes that
80 | // should not be searched.
81 |
82 | $criteria=new CDbCriteria;
83 |
84 | $criteria->compare('id_todo',$this->id_todo);
85 | $criteria->compare('title',$this->title,true);
86 | $criteria->compare('status',$this->status);
87 | $criteria->compare('timestamp',$this->timestamp,true);
88 |
89 | return new CActiveDataProvider($this, array(
90 | 'criteria'=>$criteria,
91 | ));
92 | }
93 | }
--------------------------------------------------------------------------------
/style/unused/lib/backbone-localstorage.js:
--------------------------------------------------------------------------------
1 | // A simple module to replace `Backbone.sync` with *localStorage*-based
2 | // persistence. Models are given GUIDS, and saved into a JSON object. Simple
3 | // as that.
4 |
5 | // Generate four random hex digits.
6 | function S4() {
7 | return (((1+Math.random())*0x10000)|0).toString(16).substring(1);
8 | };
9 |
10 | // Generate a pseudo-GUID by concatenating random hexadecimal.
11 | function guid() {
12 | return (S4()+S4()+"-"+S4()+"-"+S4()+"-"+S4()+"-"+S4()+S4()+S4());
13 | };
14 |
15 | // Our Store is represented by a single JS object in *localStorage*. Create it
16 | // with a meaningful name, like the name you'd give a table.
17 | var Store = function(name) {
18 | this.name = name;
19 | var store = localStorage.getItem(this.name);
20 | this.data = (store && JSON.parse(store)) || {};
21 | };
22 |
23 | _.extend(Store.prototype, {
24 |
25 | // Save the current state of the **Store** to *localStorage*.
26 | save: function() {
27 | localStorage.setItem(this.name, JSON.stringify(this.data));
28 | },
29 |
30 | // Add a model, giving it a (hopefully)-unique GUID, if it doesn't already
31 | // have an id of it's own.
32 | create: function(model) {
33 | if (!model.id) model.id = model.attributes.id = guid();
34 | this.data[model.id] = model;
35 | this.save();
36 | return model;
37 | },
38 |
39 | // Update a model by replacing its copy in `this.data`.
40 | update: function(model) {
41 | this.data[model.id] = model;
42 | this.save();
43 | return model;
44 | },
45 |
46 | // Retrieve a model from `this.data` by id.
47 | find: function(model) {
48 | return this.data[model.id];
49 | },
50 |
51 | // Return the array of all models currently in storage.
52 | findAll: function() {
53 | return _.values(this.data);
54 | },
55 |
56 | // Delete a model from `this.data`, returning it.
57 | destroy: function(model) {
58 | delete this.data[model.id];
59 | this.save();
60 | return model;
61 | }
62 |
63 | });
64 |
65 | // Override `Backbone.sync` to use delegate to the model or collection's
66 | // *localStorage* property, which should be an instance of `Store`.
67 | Backbone.sync = function(method, model, options) {
68 |
69 | var resp;
70 | var store = model.localStorage || model.collection.localStorage;
71 |
72 | switch (method) {
73 | case "read": resp = model.id ? store.find(model) : store.findAll(); break;
74 | case "create": resp = store.create(model); break;
75 | case "update": resp = store.update(model); break;
76 | case "delete": resp = store.destroy(model); break;
77 | }
78 |
79 | if (resp) {
80 | options.success(resp);
81 | } else {
82 | options.error("Record not found");
83 | }
84 | };
85 |
--------------------------------------------------------------------------------
/assets/6c3e0ad6/js/main.js:
--------------------------------------------------------------------------------
1 | $(document).ready(function() {
2 | if($('div.form.login').length) { // in login page
3 | $('input#LoginForm_password').focus();
4 | }
5 |
6 | $('table.preview input[name="checkAll"]').click(function() {
7 | $('table.preview .confirm input').prop('checked', this.checked);
8 | });
9 |
10 | $('table.preview td.confirm input').click(function() {
11 | $('table.preview input[name="checkAll"]').prop('checked', !$('table.preview td.confirm input:not(:checked)').length);
12 | });
13 | $('table.preview input[name="checkAll"]').prop('checked', !$('table.preview td.confirm input:not(:checked)').length);
14 |
15 | $('.form .row.sticky input:not(.error), .form .row.sticky select:not(.error), .form .row.sticky textarea:not(.error)').each(function(){
16 | var value;
17 | if(this.tagName=='SELECT')
18 | value=this.options[this.selectedIndex].text;
19 | else if(this.tagName=='TEXTAREA')
20 | value=$(this).html();
21 | else
22 | value=$(this).val();
23 | if(value=='')
24 | value='[empty]';
25 | $(this).before(''+value+'
').hide();
26 | });
27 |
28 | $(document).on('click', '.form.gii .row.sticky .value', function(){
29 | $(this).hide();
30 | $(this).next().show().get(0).focus();
31 | });
32 |
33 |
34 | $('.form.gii .row input, .form.gii .row textarea, .form.gii .row select, .with-tooltip').not('.no-tooltip, .no-tooltip *').tooltip({
35 | position: "center right",
36 | offset: [-2, 10]
37 | });
38 |
39 | $('.form.gii .row input').change(function(){
40 | $('.form.gii .feedback').hide();
41 | $('.form.gii input[name="generate"]').hide();
42 | });
43 |
44 | $('.form.gii .view-code').click(function(){
45 | var title=$(this).attr('rel');
46 | $.fancybox.showActivity();
47 | $.ajax({
48 | type: 'POST',
49 | cache: false,
50 | url: $(this).attr('href'),
51 | data: $('.form.gii form').serializeArray(),
52 | success: function(data){
53 | $.fancybox(data, {
54 | 'title': title,
55 | 'titlePosition': 'inside',
56 | 'titleFormat': function(title, currentArray, currentIndex, currentOpts) {
57 | return 'close ' + (title && title.length ? '
' + title + ' ' : '' ) + '
';
58 | },
59 | 'showCloseButton': false,
60 | 'autoDimensions': false,
61 | 'width': 900,
62 | 'height': 'auto',
63 | 'onComplete':function(){
64 | $('#fancybox-inner').scrollTop(0);
65 | }
66 | });
67 | },
68 | error: function(XMLHttpRequest, textStatus, errorThrown) {
69 | $.fancybox(''+XMLHttpRequest.responseText+'
');
70 | }
71 | });
72 | return false;
73 | });
74 |
75 | $(document).on('click', '#fancybox-inner .close-code', function(){
76 | $.fancybox.close();
77 | return false;
78 | });
79 | });
--------------------------------------------------------------------------------
/protected/config/main.php:
--------------------------------------------------------------------------------
1 | dirname(__FILE__).DIRECTORY_SEPARATOR.'..',
10 | 'name'=>'My Web Application',
11 |
12 | // preloading 'log' component
13 | 'preload'=>array('log'),
14 |
15 | // autoloading model and component classes
16 | 'import'=>array(
17 | 'application.models.*',
18 | 'application.components.*',
19 | ),
20 |
21 | 'modules'=>array(
22 |
23 |
24 | ),
25 |
26 | // application components
27 | 'components'=>array(
28 | 'user'=>array(
29 | // enable cookie-based authentication
30 | 'allowAutoLogin'=>true,
31 | ),
32 | // uncomment the following to enable URLs in path-format
33 | /**/
34 | 'urlManager'=>array(
35 | 'urlFormat'=>'path',
36 | 'showScriptName'=>false,
37 | 'rules'=>array(
38 |
39 | // NEED REST API
40 | array('api/list', 'pattern'=>'api/', 'verb'=>'GET'),
41 | array('api/list', 'pattern'=>'api//', 'verb'=>'DELETE'),
42 | array('api/view', 'pattern'=>'api//', 'verb'=>'GET'),
43 | array('api/update', 'pattern'=>'api//', 'verb'=>'PUT'),
44 | array('api/delete', 'pattern'=>'api//', 'verb'=>'DELETE'),
45 | array('api/create', 'pattern'=>'api/', 'verb'=>'POST'),
46 |
47 | '/'=>'/view',
48 | '//'=>'/',
49 | '/'=>'/',
50 | ),
51 | ),
52 | /*
53 | 'db'=>array(
54 | 'connectionString' => 'sqlite:'.dirname(__FILE__).'/../data/testdrive.db',
55 | ),
56 | // uncomment the following to use a MySQL database
57 | */
58 | 'db'=>array(
59 | 'connectionString' => 'mysql:host=localhost;dbname=todolist',
60 | 'emulatePrepare' => true,
61 | 'username' => 'fg',
62 | 'password' => 'xxxxx',
63 | 'charset' => 'utf8',
64 | ),
65 |
66 | 'errorHandler'=>array(
67 | // use 'site/error' action to display errors
68 | 'errorAction'=>'',
69 | ),
70 | 'log'=>array(
71 | 'class'=>'CLogRouter',
72 | 'routes'=>array(
73 | array(
74 | 'class'=>'CFileLogRoute',
75 | 'levels'=>'error, warning',
76 | ),
77 | // uncomment the following to show log messages on web pages
78 | /*
79 | array(
80 | 'class'=>'CWebLogRoute',
81 | ),
82 | */
83 | ),
84 | ),
85 | ),
86 |
87 | // application-level parameters that can be accessed
88 | // using Yii::app()->params['paramName']
89 | 'params'=>array(
90 | // this is used in contact page
91 | 'adminEmail'=>'webmaster@example.com',
92 | ),
93 | );
--------------------------------------------------------------------------------
/assets/2070cf7e/treeview/jquery.treeview.css:
--------------------------------------------------------------------------------
1 | .treeview, .treeview ul {
2 | padding: 0;
3 | margin: 0;
4 | list-style: none;
5 | }
6 |
7 | .treeview ul {
8 | background-color: white;
9 | margin-top: 4px;
10 | }
11 |
12 | .treeview .hitarea {
13 | background: url(images/treeview-default.gif) -64px -25px no-repeat;
14 | height: 16px;
15 | width: 16px;
16 | margin-left: -16px;
17 | float: left;
18 | cursor: pointer;
19 | }
20 | /* fix for IE6 */
21 | * html .hitarea {
22 | display: inline;
23 | float:none;
24 | }
25 |
26 | .treeview li {
27 | margin: 0;
28 | padding: 3px 0pt 3px 16px;
29 | }
30 |
31 | .treeview a.selected {
32 | background-color: #eee;
33 | }
34 |
35 | #treecontrol { margin: 1em 0; display: none; }
36 |
37 | .treeview .hover { color: red; cursor: pointer; }
38 |
39 | .treeview li { background: url(images/treeview-default-line.gif) 0 0 no-repeat; }
40 | .treeview li.collapsable, .treeview li.expandable { background-position: 0 -176px; }
41 |
42 | .treeview .expandable-hitarea { background-position: -80px -3px; }
43 |
44 | .treeview li.last { background-position: 0 -1766px }
45 | .treeview li.lastCollapsable, .treeview li.lastExpandable { background-image: url(images/treeview-default.gif); }
46 | .treeview li.lastCollapsable { background-position: 0 -111px }
47 | .treeview li.lastExpandable { background-position: -32px -67px }
48 |
49 | .treeview div.lastCollapsable-hitarea, .treeview div.lastExpandable-hitarea { background-position: 0; }
50 |
51 | .treeview-red li { background-image: url(images/treeview-red-line.gif); }
52 | .treeview-red .hitarea, .treeview-red li.lastCollapsable, .treeview-red li.lastExpandable { background-image: url(images/treeview-red.gif); }
53 |
54 | .treeview-black li { background-image: url(images/treeview-black-line.gif); }
55 | .treeview-black .hitarea, .treeview-black li.lastCollapsable, .treeview-black li.lastExpandable { background-image: url(images/treeview-black.gif); }
56 |
57 | .treeview-gray li { background-image: url(images/treeview-gray-line.gif); }
58 | .treeview-gray .hitarea, .treeview-gray li.lastCollapsable, .treeview-gray li.lastExpandable { background-image: url(images/treeview-gray.gif); }
59 |
60 | .treeview-famfamfam li { background-image: url(images/treeview-famfamfam-line.gif); }
61 | .treeview-famfamfam .hitarea, .treeview-famfamfam li.lastCollapsable, .treeview-famfamfam li.lastExpandable { background-image: url(images/treeview-famfamfam.gif); }
62 |
63 | .treeview .placeholder {
64 | background: url(images/ajax-loader.gif) 0 0 no-repeat;
65 | height: 16px;
66 | width: 16px;
67 | display: block;
68 | }
69 |
70 | .filetree li { padding: 3px 0 2px 16px; }
71 | .filetree span.folder, .filetree span.file { padding: 1px 0 1px 16px; display: block; }
72 | .filetree span.folder { background: url(images/folder.gif) 0 0 no-repeat; }
73 | .filetree li.expandable span.folder { background: url(images/folder-closed.gif) 0 0 no-repeat; }
74 | .filetree span.file { background: url(images/file.gif) 0 0 no-repeat; }
75 |
--------------------------------------------------------------------------------
/style/unused/assets/signals.min.js:
--------------------------------------------------------------------------------
1 | /*
2 |
3 | JS Signals
4 | Released under the MIT license
5 | Author: Miller Medeiros
6 | Version: 0.7.4 - Build: 252 (2012/02/24 10:30 PM)
7 | */
8 | (function(h){function g(a,b,c,d,e){this._listener=b;this._isOnce=c;this.context=d;this._signal=a;this._priority=e||0}function f(a,b){if(typeof a!=="function")throw Error("listener is a required param of {fn}() and should be a Function.".replace("{fn}",b));}var e={VERSION:"0.7.4"};g.prototype={active:!0,params:null,execute:function(a){var b;this.active&&this._listener&&(a=this.params?this.params.concat(a):a,b=this._listener.apply(this.context,a),this._isOnce&&this.detach());return b},detach:function(){return this.isBound()?
9 | this._signal.remove(this._listener,this.context):null},isBound:function(){return!!this._signal&&!!this._listener},getListener:function(){return this._listener},_destroy:function(){delete this._signal;delete this._listener;delete this.context},isOnce:function(){return this._isOnce},toString:function(){return"[SignalBinding isOnce:"+this._isOnce+", isBound:"+this.isBound()+", active:"+this.active+"]"}};e.Signal=function(){this._bindings=[];this._prevParams=null};e.Signal.prototype={memorize:!1,_shouldPropagate:!0,
10 | active:!0,_registerListener:function(a,b,c,d){var e=this._indexOfListener(a,c);if(e!==-1){if(a=this._bindings[e],a.isOnce()!==b)throw Error("You cannot add"+(b?"":"Once")+"() then add"+(!b?"":"Once")+"() the same listener without removing the relationship first.");}else a=new g(this,a,b,c,d),this._addBinding(a);this.memorize&&this._prevParams&&a.execute(this._prevParams);return a},_addBinding:function(a){var b=this._bindings.length;do--b;while(this._bindings[b]&&a._priority<=this._bindings[b]._priority);
11 | this._bindings.splice(b+1,0,a)},_indexOfListener:function(a,b){for(var c=this._bindings.length,d;c--;)if(d=this._bindings[c],d._listener===a&&d.context===b)return c;return-1},has:function(a,b){return this._indexOfListener(a,b)!==-1},add:function(a,b,c){f(a,"add");return this._registerListener(a,!1,b,c)},addOnce:function(a,b,c){f(a,"addOnce");return this._registerListener(a,!0,b,c)},remove:function(a,b){f(a,"remove");var c=this._indexOfListener(a,b);c!==-1&&(this._bindings[c]._destroy(),this._bindings.splice(c,
12 | 1));return a},removeAll:function(){for(var a=this._bindings.length;a--;)this._bindings[a]._destroy();this._bindings.length=0},getNumListeners:function(){return this._bindings.length},halt:function(){this._shouldPropagate=!1},dispatch:function(a){if(this.active){var b=Array.prototype.slice.call(arguments),c=this._bindings.length,d;if(this.memorize)this._prevParams=b;if(c){d=this._bindings.slice();this._shouldPropagate=!0;do c--;while(d[c]&&this._shouldPropagate&&d[c].execute(b)!==!1)}}},forget:function(){this._prevParams=
13 | null},dispose:function(){this.removeAll();delete this._bindings;delete this._prevParams},toString:function(){return"[Signal active:"+this.active+" numListeners:"+this.getNumListeners()+"]"}};typeof define==="function"&&define.amd?define(e):typeof module!=="undefined"&&module.exports?module.exports=e:h.signals=e})(this);
--------------------------------------------------------------------------------
/assets/2070cf7e/jquery.maskedinput.min.js:
--------------------------------------------------------------------------------
1 | /*
2 | Masked Input plugin for jQuery
3 | Copyright (c) 2007-2011 Josh Bush (digitalbush.com)
4 | Licensed under the MIT license (http://digitalbush.com/projects/masked-input-plugin/#license)
5 | Version: 1.3
6 | */
7 | (function(a){var b=(a.browser.msie?"paste":"input")+".mask",c=window.orientation!=undefined;a.mask={definitions:{9:"[0-9]",a:"[A-Za-z]","*":"[A-Za-z0-9]"},dataName:"rawMaskFn"},a.fn.extend({caret:function(a,b){if(this.length!=0){if(typeof a=="number"){b=typeof b=="number"?b:a;return this.each(function(){if(this.setSelectionRange)this.setSelectionRange(a,b);else if(this.createTextRange){var c=this.createTextRange();c.collapse(!0),c.moveEnd("character",b),c.moveStart("character",a),c.select()}})}if(this[0].setSelectionRange)a=this[0].selectionStart,b=this[0].selectionEnd;else if(document.selection&&document.selection.createRange){var c=document.selection.createRange();a=0-c.duplicate().moveStart("character",-1e5),b=a+c.text.length}return{begin:a,end:b}}},unmask:function(){return this.trigger("unmask")},mask:function(d,e){if(!d&&this.length>0){var f=a(this[0]);return f.data(a.mask.dataName)()}e=a.extend({placeholder:"_",completed:null},e);var g=a.mask.definitions,h=[],i=d.length,j=null,k=d.length;a.each(d.split(""),function(a,b){b=="?"?(k--,i=a):g[b]?(h.push(new RegExp(g[b])),j==null&&(j=h.length-1)):h.push(null)});return this.trigger("unmask").each(function(){function v(a){var b=f.val(),c=-1;for(var d=0,g=0;db.length)break}else l[d]==b.charAt(g)&&d!=i&&(g++,c=d);if(!a&&c+1=i)u(),a||f.val(f.val().substring(0,c+1));return i?d:j}function u(){return f.val(l.join("")).val()}function t(a,b){for(var c=a;c=k&&e.completed.call(f)}}return!1}}function r(a){var b=a.which;if(b==8||b==46||c&&b==127){var d=f.caret(),e=d.begin,g=d.end;g-e==0&&(e=b!=46?o(e):g=n(e-1),g=b==46?n(g):g),t(e,g),p(e,g-1);return!1}if(b==27){f.val(m),f.caret(0,v());return!1}}function q(a){for(var b=a,c=e.placeholder;b=0&&!h[a]);return a}function n(a){while(++a<=k&&!h[a]);return a}var f=a(this),l=a.map(d.split(""),function(a,b){if(a!="?")return g[a]?e.placeholder:a}),m=f.val();f.data(a.mask.dataName,function(){return a.map(l,function(a,b){return h[b]&&a!=e.placeholder?a:null}).join("")}),f.attr("readonly")||f.one("unmask",function(){f.unbind(".mask").removeData(a.mask.dataName)}).bind("focus.mask",function(){m=f.val();var b=v();u();var c=function(){b==d.length?f.caret(0,b):f.caret(b)};(a.browser.msie?c:function(){setTimeout(c,0)})()}).bind("blur.mask",function(){v(),f.val()!=m&&f.change()}).bind("keydown.mask",r).bind("keypress.mask",s).bind(b,function(){setTimeout(function(){f.caret(v(!0))},0)}),v()})}})})(jQuery)
--------------------------------------------------------------------------------
/assets/2070cf7e/jui/css/base/jquery.ui.datepicker.css:
--------------------------------------------------------------------------------
1 | /*! jQuery UI - v1.9.2 - 2012-11-23
2 | * http://jqueryui.com
3 | * Includes: jquery.ui.datepicker.css
4 | * Copyright 2012 jQuery Foundation and other contributors; Licensed MIT */
5 | .ui-datepicker{width:17em;padding:.2em .2em 0;display:none}.ui-datepicker .ui-datepicker-header{position:relative;padding:.2em 0}.ui-datepicker .ui-datepicker-prev,.ui-datepicker .ui-datepicker-next{position:absolute;top:2px;width:1.8em;height:1.8em}.ui-datepicker .ui-datepicker-prev-hover,.ui-datepicker .ui-datepicker-next-hover{top:1px}.ui-datepicker .ui-datepicker-prev{left:2px}.ui-datepicker .ui-datepicker-next{right:2px}.ui-datepicker .ui-datepicker-prev-hover{left:1px}.ui-datepicker .ui-datepicker-next-hover{right:1px}.ui-datepicker .ui-datepicker-prev span,.ui-datepicker .ui-datepicker-next span{display:block;position:absolute;left:50%;margin-left:-8px;top:50%;margin-top:-8px}.ui-datepicker .ui-datepicker-title{margin:0 2.3em;line-height:1.8em;text-align:center}.ui-datepicker .ui-datepicker-title select{font-size:1em;margin:1px 0}.ui-datepicker select.ui-datepicker-month-year{width:100%}.ui-datepicker select.ui-datepicker-month,.ui-datepicker select.ui-datepicker-year{width:49%}.ui-datepicker table{width:100%;font-size:.9em;border-collapse:collapse;margin:0 0 .4em}.ui-datepicker th{padding:.7em .3em;text-align:center;font-weight:bold;border:0}.ui-datepicker td{border:0;padding:1px}.ui-datepicker td span,.ui-datepicker td a{display:block;padding:.2em;text-align:right;text-decoration:none}.ui-datepicker .ui-datepicker-buttonpane{background-image:none;margin:.7em 0 0 0;padding:0 .2em;border-left:0;border-right:0;border-bottom:0}.ui-datepicker .ui-datepicker-buttonpane button{float:right;margin:.5em .2em .4em;cursor:pointer;padding:.2em .6em .3em .6em;width:auto;overflow:visible}.ui-datepicker .ui-datepicker-buttonpane button.ui-datepicker-current{float:left}.ui-datepicker.ui-datepicker-multi{width:auto}.ui-datepicker-multi .ui-datepicker-group{float:left}.ui-datepicker-multi .ui-datepicker-group table{width:95%;margin:0 auto .4em}.ui-datepicker-multi-2 .ui-datepicker-group{width:50%}.ui-datepicker-multi-3 .ui-datepicker-group{width:33.3%}.ui-datepicker-multi-4 .ui-datepicker-group{width:25%}.ui-datepicker-multi .ui-datepicker-group-last .ui-datepicker-header{border-left-width:0}.ui-datepicker-multi .ui-datepicker-group-middle .ui-datepicker-header{border-left-width:0}.ui-datepicker-multi .ui-datepicker-buttonpane{clear:left}.ui-datepicker-row-break{clear:both;width:100%;font-size:0em}.ui-datepicker-rtl{direction:rtl}.ui-datepicker-rtl .ui-datepicker-prev{right:2px;left:auto}.ui-datepicker-rtl .ui-datepicker-next{left:2px;right:auto}.ui-datepicker-rtl .ui-datepicker-prev:hover{right:1px;left:auto}.ui-datepicker-rtl .ui-datepicker-next:hover{left:1px;right:auto}.ui-datepicker-rtl .ui-datepicker-buttonpane{clear:right}.ui-datepicker-rtl .ui-datepicker-buttonpane button{float:left}.ui-datepicker-rtl .ui-datepicker-buttonpane button.ui-datepicker-current{float:right}.ui-datepicker-rtl .ui-datepicker-group{float:right}.ui-datepicker-rtl .ui-datepicker-group-last .ui-datepicker-header{border-right-width:0;border-left-width:1px}.ui-datepicker-rtl .ui-datepicker-group-middle .ui-datepicker-header{border-right-width:0;border-left-width:1px}.ui-datepicker-cover{position:absolute;z-index:-1;filter:mask();top:-4px;left:-4px;width:200px;height:200px}
--------------------------------------------------------------------------------
/assets/2070cf7e/jquery.ajaxqueue.js:
--------------------------------------------------------------------------------
1 | /**
2 | * Ajax Queue Plugin
3 | *
4 | * Homepage: http://jquery.com/plugins/project/ajaxqueue
5 | * Documentation: http://docs.jquery.com/AjaxQueue
6 | */
7 |
8 | /**
9 |
10 |
30 |
31 |
32 | */
33 | /*
34 | * Queued Ajax requests.
35 | * A new Ajax request won't be started until the previous queued
36 | * request has finished.
37 | */
38 |
39 | /*
40 | * Synced Ajax requests.
41 | * The Ajax request will happen as soon as you call this method, but
42 | * the callbacks (success/error/complete) won't fire until all previous
43 | * synced requests have been completed.
44 | */
45 |
46 |
47 | (function($) {
48 |
49 | var ajax = $.ajax;
50 |
51 | var pendingRequests = {};
52 |
53 | var synced = [];
54 | var syncedData = [];
55 |
56 | $.ajax = function(settings) {
57 | // create settings for compatibility with ajaxSetup
58 | settings = jQuery.extend(settings, jQuery.extend({}, jQuery.ajaxSettings, settings));
59 |
60 | var port = settings.port;
61 |
62 | switch(settings.mode) {
63 | case "abort":
64 | if ( pendingRequests[port] ) {
65 | pendingRequests[port].abort();
66 | }
67 | return pendingRequests[port] = ajax.apply(this, arguments);
68 | case "queue":
69 | var _old = settings.complete;
70 | settings.complete = function(){
71 | if ( _old )
72 | _old.apply( this, arguments );
73 | jQuery([ajax]).dequeue("ajax" + port );;
74 | };
75 |
76 | jQuery([ ajax ]).queue("ajax" + port, function(){
77 | ajax( settings );
78 | });
79 | return;
80 | case "sync":
81 | var pos = synced.length;
82 |
83 | synced[ pos ] = {
84 | error: settings.error,
85 | success: settings.success,
86 | complete: settings.complete,
87 | done: false
88 | };
89 |
90 | syncedData[ pos ] = {
91 | error: [],
92 | success: [],
93 | complete: []
94 | };
95 |
96 | settings.error = function(){ syncedData[ pos ].error = arguments; };
97 | settings.success = function(){ syncedData[ pos ].success = arguments; };
98 | settings.complete = function(){
99 | syncedData[ pos ].complete = arguments;
100 | synced[ pos ].done = true;
101 |
102 | if ( pos == 0 || !synced[ pos-1 ] )
103 | for ( var i = pos; i < synced.length && synced[i].done; i++ ) {
104 | if ( synced[i].error ) synced[i].error.apply( jQuery, syncedData[i].error );
105 | if ( synced[i].success ) synced[i].success.apply( jQuery, syncedData[i].success );
106 | if ( synced[i].complete ) synced[i].complete.apply( jQuery, syncedData[i].complete );
107 |
108 | synced[i] = null;
109 | syncedData[i] = null;
110 | }
111 | };
112 | }
113 | return ajax.apply(this, arguments);
114 | };
115 |
116 | })(jQuery);
--------------------------------------------------------------------------------
/assets/2070cf7e/jquery.treeview.async.js:
--------------------------------------------------------------------------------
1 | /*
2 | * Async Treeview 0.1 - Lazy-loading extension for Treeview
3 | *
4 | * http://bassistance.de/jquery-plugins/jquery-plugin-treeview/
5 | *
6 | * Copyright (c) 2007 Jörn Zaefferer
7 | *
8 | * Dual licensed under the MIT and GPL licenses:
9 | * http://www.opensource.org/licenses/mit-license.php
10 | * http://www.gnu.org/licenses/gpl.html
11 | *
12 | * Revision: $Id$
13 | *
14 | */
15 |
16 | ;(function($) {
17 |
18 | function load(settings, root, child, container) {
19 | function createNode(parent) {
20 | var current = $(" ").attr("id", this.id || "").html("" + this.text + " ").appendTo(parent);
21 | if (this.classes) {
22 | current.children("span").addClass(this.classes);
23 | }
24 | if (this.expanded) {
25 | current.addClass("open");
26 | }
27 | if (this.hasChildren || this.children && this.children.length) {
28 | var branch = $("").appendTo(current);
29 | if (this.hasChildren) {
30 | current.addClass("hasChildren");
31 | createNode.call({
32 | classes: "placeholder",
33 | text: " ",
34 | children:[]
35 | }, branch);
36 | }
37 | if (this.children && this.children.length) {
38 | $.each(this.children, createNode, [branch])
39 | }
40 | }
41 | }
42 | $.ajax($.extend(true, {
43 | url: settings.url,
44 | dataType: "json",
45 | data: {
46 | root: root
47 | },
48 | success: function(response) {
49 | child.empty();
50 | $.each(response, createNode, [child]);
51 | $(container).treeview({add: child});
52 | }
53 | }, settings.ajax));
54 | /*
55 | $.getJSON(settings.url, {root: root}, function(response) {
56 | function createNode(parent) {
57 | var current = $(" ").attr("id", this.id || "").html("" + this.text + " ").appendTo(parent);
58 | if (this.classes) {
59 | current.children("span").addClass(this.classes);
60 | }
61 | if (this.expanded) {
62 | current.addClass("open");
63 | }
64 | if (this.hasChildren || this.children && this.children.length) {
65 | var branch = $("").appendTo(current);
66 | if (this.hasChildren) {
67 | current.addClass("hasChildren");
68 | createNode.call({
69 | classes: "placeholder",
70 | text: " ",
71 | children:[]
72 | }, branch);
73 | }
74 | if (this.children && this.children.length) {
75 | $.each(this.children, createNode, [branch])
76 | }
77 | }
78 | }
79 | child.empty();
80 | $.each(response, createNode, [child]);
81 | $(container).treeview({add: child});
82 | });
83 | */
84 | }
85 |
86 | var proxied = $.fn.treeview;
87 | $.fn.treeview = function(settings) {
88 | if (!settings.url) {
89 | return proxied.apply(this, arguments);
90 | }
91 | var container = this;
92 | if (!container.children().size())
93 | load(settings, "source", this, container);
94 | var userToggle = settings.toggle;
95 | return proxied.call(this, $.extend({}, settings, {
96 | collapsed: true,
97 | toggle: function() {
98 | var $this = $(this);
99 | if ($this.hasClass("hasChildren")) {
100 | var childList = $this.removeClass("hasChildren").find("ul");
101 | load(settings, this.id, childList, container);
102 | }
103 | if (userToggle) {
104 | userToggle.apply(this, arguments);
105 | }
106 | }
107 | }));
108 | };
109 |
110 | })(jQuery);
--------------------------------------------------------------------------------
/assets/6c3e0ad6/js/jquery.tooltip-1.2.6.min.js:
--------------------------------------------------------------------------------
1 | /*!
2 | * jQuery Tools v1.2.6 - The missing UI library for the Web
3 | *
4 | * tooltip/tooltip.js
5 | *
6 | * NO COPYRIGHTS OR LICENSES. DO WHAT YOU LIKE.
7 | *
8 | * http://flowplayer.org/tools/
9 | *
10 | */
11 | (function(a){a.tools=a.tools||{version:"v1.2.6"},a.tools.tooltip={conf:{effect:"toggle",fadeOutSpeed:"fast",predelay:0,delay:30,opacity:1,tip:0,fadeIE:!1,position:["top","center"],offset:[0,0],relative:!1,cancelDefault:!0,events:{def:"mouseenter,mouseleave",input:"focus,blur",widget:"focus mouseenter,blur mouseleave",tooltip:"mouseenter,mouseleave"},layout:"
",tipClass:"tooltip"},addEffect:function(a,c,d){b[a]=[c,d]}};var b={toggle:[function(a){var b=this.getConf(),c=this.getTip(),d=b.opacity;d<1&&c.css({opacity:d}),c.show(),a.call()},function(a){this.getTip().hide(),a.call()}],fade:[function(b){var c=this.getConf();!a.browser.msie||c.fadeIE?this.getTip().fadeTo(c.fadeInSpeed,c.opacity,b):(this.getTip().show(),b())},function(b){var c=this.getConf();!a.browser.msie||c.fadeIE?this.getTip().fadeOut(c.fadeOutSpeed,b):(this.getTip().hide(),b())}]};function c(b,c,d){var e=d.relative?b.position().top:b.offset().top,f=d.relative?b.position().left:b.offset().left,g=d.position[0];e-=c.outerHeight()-d.offset[0],f+=b.outerWidth()+d.offset[1],/iPad/i.test(navigator.userAgent)&&(e-=a(window).scrollTop());var h=c.outerHeight()+b.outerHeight();g=="center"&&(e+=h/2),g=="bottom"&&(e+=h),g=d.position[1];var i=c.outerWidth()+b.outerWidth();g=="center"&&(f-=i/2),g=="left"&&(f-=i);return{top:e,left:f}}function d(d,e){var f=this,g=d.add(f),h,i=0,j=0,k=d.attr("title"),l=d.attr("data-tooltip"),m=b[e.effect],n,o=d.is(":input"),p=o&&d.is(":checkbox, :radio, select, :button, :submit"),q=d.attr("type"),r=e.events[q]||e.events[o?p?"widget":"input":"def"];if(!m)throw"Nonexistent effect \""+e.effect+"\"";r=r.split(/,\s*/);if(r.length!=2)throw"Tooltip: bad events configuration for "+q;d.bind(r[0],function(a){clearTimeout(i),e.predelay?j=setTimeout(function(){f.show(a)},e.predelay):f.show(a)}).bind(r[1],function(a){clearTimeout(j),e.delay?i=setTimeout(function(){f.hide(a)},e.delay):f.hide(a)}),k&&e.cancelDefault&&(d.removeAttr("title"),d.data("title",k)),a.extend(f,{show:function(b){if(!h){l?h=a(l):e.tip?h=a(e.tip).eq(0):k?h=a(e.layout).addClass(e.tipClass).appendTo(document.body).hide().append(k):(h=d.next(),h.length||(h=d.parent().next()));if(!h.length)throw"Cannot find tooltip for "+d}if(f.isShown())return f;h.stop(!0,!0);var o=c(d,h,e);e.tip&&h.html(d.data("title")),b=a.Event(),b.type="onBeforeShow",g.trigger(b,[o]);if(b.isDefaultPrevented())return f;o=c(d,h,e),h.css({position:"absolute",top:o.top,left:o.left}),n=!0,m[0].call(f,function(){b.type="onShow",n="full",g.trigger(b)});var p=e.events.tooltip.split(/,\s*/);h.data("__set")||(h.unbind(p[0]).bind(p[0],function(){clearTimeout(i),clearTimeout(j)}),p[1]&&!d.is("input:not(:checkbox, :radio), textarea")&&h.unbind(p[1]).bind(p[1],function(a){a.relatedTarget!=d[0]&&d.trigger(r[1].split(" ")[0])}),e.tip||h.data("__set",!0));return f},hide:function(c){if(!h||!f.isShown())return f;c=a.Event(),c.type="onBeforeHide",g.trigger(c);if(!c.isDefaultPrevented()){n=!1,b[e.effect][1].call(f,function(){c.type="onHide",g.trigger(c)});return f}},isShown:function(a){return a?n=="full":n},getConf:function(){return e},getTip:function(){return h},getTrigger:function(){return d}}),a.each("onHide,onBeforeShow,onShow,onBeforeHide".split(","),function(b,c){a.isFunction(e[c])&&a(f).bind(c,e[c]),f[c]=function(b){b&&a(f).bind(c,b);return f}})}a.fn.tooltip=function(b){var c=this.data("tooltip");if(c)return c;b=a.extend(!0,{},a.tools.tooltip.conf,b),typeof b.position=="string"&&(b.position=b.position.split(/,?\s/)),this.each(function(){c=new d(a(this),b),a(this).data("tooltip",c)});return b.api?c:this}})(jQuery);
12 |
--------------------------------------------------------------------------------
/.gitignore:
--------------------------------------------------------------------------------
1 | #################
2 | ## Eclipse
3 | #################
4 |
5 | *.pydevproject
6 | .project
7 | .metadata
8 | bin/
9 | tmp/
10 | *.tmp
11 | *.bak
12 | *.swp
13 | *~.nib
14 | local.properties
15 | .classpath
16 | .settings/
17 | .loadpath
18 |
19 | # External tool builders
20 | .externalToolBuilders/
21 |
22 | # Locally stored "Eclipse launch configurations"
23 | *.launch
24 |
25 | # CDT-specific
26 | .cproject
27 |
28 | # PDT-specific
29 | .buildpath
30 |
31 |
32 | #################
33 | ## Visual Studio
34 | #################
35 |
36 | ## Ignore Visual Studio temporary files, build results, and
37 | ## files generated by popular Visual Studio add-ons.
38 |
39 | # User-specific files
40 | *.suo
41 | *.user
42 | *.sln.docstates
43 |
44 | # Build results
45 |
46 | [Dd]ebug/
47 | [Rr]elease/
48 | x64/
49 | build/
50 | [Bb]in/
51 | [Oo]bj/
52 |
53 | # MSTest test Results
54 | [Tt]est[Rr]esult*/
55 | [Bb]uild[Ll]og.*
56 |
57 | *_i.c
58 | *_p.c
59 | *.ilk
60 | *.meta
61 | *.obj
62 | *.pch
63 | *.pdb
64 | *.pgc
65 | *.pgd
66 | *.rsp
67 | *.sbr
68 | *.tlb
69 | *.tli
70 | *.tlh
71 | *.tmp
72 | *.tmp_proj
73 | *.log
74 | *.vspscc
75 | *.vssscc
76 | .builds
77 | *.pidb
78 | *.log
79 | *.scc
80 |
81 | # Visual C++ cache files
82 | ipch/
83 | *.aps
84 | *.ncb
85 | *.opensdf
86 | *.sdf
87 | *.cachefile
88 |
89 | # Visual Studio profiler
90 | *.psess
91 | *.vsp
92 | *.vspx
93 |
94 | # Guidance Automation Toolkit
95 | *.gpState
96 |
97 | # ReSharper is a .NET coding add-in
98 | _ReSharper*/
99 | *.[Rr]e[Ss]harper
100 |
101 | # TeamCity is a build add-in
102 | _TeamCity*
103 |
104 | # DotCover is a Code Coverage Tool
105 | *.dotCover
106 |
107 | # NCrunch
108 | *.ncrunch*
109 | .*crunch*.local.xml
110 |
111 | # Installshield output folder
112 | [Ee]xpress/
113 |
114 | # DocProject is a documentation generator add-in
115 | DocProject/buildhelp/
116 | DocProject/Help/*.HxT
117 | DocProject/Help/*.HxC
118 | DocProject/Help/*.hhc
119 | DocProject/Help/*.hhk
120 | DocProject/Help/*.hhp
121 | DocProject/Help/Html2
122 | DocProject/Help/html
123 |
124 | # Click-Once directory
125 | publish/
126 |
127 | # Publish Web Output
128 | *.Publish.xml
129 | *.pubxml
130 |
131 | # NuGet Packages Directory
132 | ## TODO: If you have NuGet Package Restore enabled, uncomment the next line
133 | #packages/
134 |
135 | # Windows Azure Build Output
136 | csx
137 | *.build.csdef
138 |
139 | # Windows Store app package directory
140 | AppPackages/
141 |
142 | # Others
143 | sql/
144 | *.Cache
145 | ClientBin/
146 | [Ss]tyle[Cc]op.*
147 | ~$*
148 | *~
149 | *.dbmdl
150 | *.[Pp]ublish.xml
151 | *.pfx
152 | *.publishsettings
153 |
154 | # RIA/Silverlight projects
155 | Generated_Code/
156 |
157 | # Backup & report files from converting an old project file to a newer
158 | # Visual Studio version. Backup files are not needed, because we have git ;-)
159 | _UpgradeReport_Files/
160 | Backup*/
161 | UpgradeLog*.XML
162 | UpgradeLog*.htm
163 |
164 | # SQL Server files
165 | App_Data/*.mdf
166 | App_Data/*.ldf
167 |
168 | #############
169 | ## Windows detritus
170 | #############
171 |
172 | # Windows image file caches
173 | Thumbs.db
174 | ehthumbs.db
175 |
176 | # Folder config file
177 | Desktop.ini
178 |
179 | # Recycle Bin used on file shares
180 | $RECYCLE.BIN/
181 |
182 | # Mac crap
183 | .DS_Store
184 |
185 |
186 | #############
187 | ## Python
188 | #############
189 |
190 | *.py[co]
191 |
192 | # Packages
193 | *.egg
194 | *.egg-info
195 | dist/
196 | build/
197 | eggs/
198 | parts/
199 | var/
200 | sdist/
201 | develop-eggs/
202 | .installed.cfg
203 |
204 | # Installer logs
205 | pip-log.txt
206 |
207 | # Unit test / coverage reports
208 | .coverage
209 | .tox
210 |
211 | #Translations
212 | *.mo
213 |
214 | #Mr Developer
215 | .mr.developer.cfg
216 |
--------------------------------------------------------------------------------
/assets/2070cf7e/jquery.ba-bbq.min.js:
--------------------------------------------------------------------------------
1 | /*
2 | * jQuery BBQ: Back Button & Query Library - v1.2.1 - 2/17/2010
3 | * http://benalman.com/projects/jquery-bbq-plugin/
4 | *
5 | * Copyright (c) 2010 "Cowboy" Ben Alman
6 | * Dual licensed under the MIT and GPL licenses.
7 | * http://benalman.com/about/license/
8 | */
9 | (function($,p){var i,m=Array.prototype.slice,r=decodeURIComponent,a=$.param,c,l,v,b=$.bbq=$.bbq||{},q,u,j,e=$.event.special,d="hashchange",A="querystring",D="fragment",y="elemUrlAttr",g="location",k="href",t="src",x=/^.*\?|#.*$/g,w=/^.*\#/,h,C={};function E(F){return typeof F==="string"}function B(G){var F=m.call(arguments,1);return function(){return G.apply(this,F.concat(m.call(arguments)))}}function n(F){return F.replace(/^[^#]*#?(.*)$/,"$1")}function o(F){return F.replace(/(?:^[^?#]*\?([^#]*).*$)?.*/,"$1")}function f(H,M,F,I,G){var O,L,K,N,J;if(I!==i){K=F.match(H?/^([^#]*)\#?(.*)$/:/^([^#?]*)\??([^#]*)(#?.*)/);J=K[3]||"";if(G===2&&E(I)){L=I.replace(H?w:x,"")}else{N=l(K[2]);I=E(I)?l[H?D:A](I):I;L=G===2?I:G===1?$.extend({},I,N):$.extend({},N,I);L=a(L);if(H){L=L.replace(h,r)}}O=K[1]+(H?"#":L||!K[1]?"?":"")+L+J}else{O=M(F!==i?F:p[g][k])}return O}a[A]=B(f,0,o);a[D]=c=B(f,1,n);c.noEscape=function(G){G=G||"";var F=$.map(G.split(""),encodeURIComponent);h=new RegExp(F.join("|"),"g")};c.noEscape(",/");$.deparam=l=function(I,F){var H={},G={"true":!0,"false":!1,"null":null};$.each(I.replace(/\+/g," ").split("&"),function(L,Q){var K=Q.split("="),P=r(K[0]),J,O=H,M=0,R=P.split("]["),N=R.length-1;if(/\[/.test(R[0])&&/\]$/.test(R[N])){R[N]=R[N].replace(/\]$/,"");R=R.shift().split("[").concat(R);N=R.length-1}else{N=0}if(K.length===2){J=r(K[1]);if(F){J=J&&!isNaN(J)?+J:J==="undefined"?i:G[J]!==i?G[J]:J}if(N){for(;M<=N;M++){P=R[M]===""?O.length:R[M];O=O[P]=M ').hide().insertAfter("body")[0].contentWindow;q=function(){return a(n.document[c][l])};o=function(u,s){if(u!==s){var t=n.document;t.open().close();t[c].hash="#"+u}};o(a())}}m.start=function(){if(r){return}var t=a();o||p();(function s(){var v=a(),u=q(t);if(v!==t){o(t=v,u);$(i).trigger(d)}else{if(u!==t){i[c][l]=i[c][l].replace(/#.*/,"")+"#"+u}}r=setTimeout(s,$[d+"Delay"])})()};m.stop=function(){if(!n){r&&clearTimeout(r);r=0}};return m})()})(jQuery,this);
--------------------------------------------------------------------------------
/style/unused/views/app.js:
--------------------------------------------------------------------------------
1 | var app = app || {};
2 |
3 | $(function( $ ) {
4 | 'use strict';
5 |
6 | // The Application
7 | // ---------------
8 |
9 | // Our overall **AppView** is the top-level piece of UI.
10 | app.AppView = Backbone.View.extend({
11 |
12 | // Instead of generating a new element, bind to the existing skeleton of
13 | // the App already present in the HTML.
14 | el: '#todoapp',
15 |
16 | // Our template for the line of statistics at the bottom of the app.
17 | statsTemplate: _.template( $('#stats-template').html() ),
18 |
19 | // Delegated events for creating new items, and clearing completed ones.
20 | events: {
21 | 'keypress #new-todo': 'createOnEnter',
22 | 'click #clear-completed': 'clearCompleted',
23 | 'click #toggle-all': 'toggleAllComplete'
24 | },
25 |
26 | // At initialization we bind to the relevant events on the `Todos`
27 | // collection, when items are added or changed. Kick things off by
28 | // loading any preexisting todos that might be saved in *localStorage*.
29 | initialize: function() {
30 | this.input = this.$('#new-todo');
31 | this.allCheckbox = this.$('#toggle-all')[0];
32 |
33 | window.app.Todos.on( 'add', this.addAll, this );
34 | window.app.Todos.on( 'reset', this.addAll, this );
35 | window.app.Todos.on( 'change:completed', this.addAll, this );
36 | window.app.Todos.on( 'all', this.render, this );
37 |
38 | this.$footer = this.$('#footer');
39 | this.$main = this.$('#main');
40 |
41 | app.Todos.fetch();
42 | },
43 |
44 | // Re-rendering the App just means refreshing the statistics -- the rest
45 | // of the app doesn't change.
46 | render: function() {
47 | var completed = app.Todos.completed().length;
48 | var remaining = app.Todos.remaining().length;
49 |
50 | if ( app.Todos.length ) {
51 | this.$main.show();
52 | this.$footer.show();
53 |
54 | this.$footer.html(this.statsTemplate({
55 | completed: completed,
56 | remaining: remaining
57 | }));
58 |
59 | this.$('#filters li a')
60 | .removeClass('selected')
61 | .filter('[href="#/' + ( app.TodoFilter || '' ) + '"]')
62 | .addClass('selected');
63 | } else {
64 | this.$main.hide();
65 | this.$footer.hide();
66 | }
67 |
68 | this.allCheckbox.checked = !remaining;
69 | },
70 |
71 | // Add a single todo item to the list by creating a view for it, and
72 | // appending its element to the ``.
73 | addOne: function( todo ) {
74 | var view = new app.TodoView({ model: todo });
75 | $('#todo-list').append( view.render().el );
76 | },
77 |
78 | // Add all items in the **Todos** collection at once.
79 | addAll: function() {
80 | this.$('#todo-list').html('');
81 |
82 | switch( app.TodoFilter ) {
83 | case 'active':
84 | _.each( app.Todos.remaining(), this.addOne );
85 | break;
86 | case 'completed':
87 | _.each( app.Todos.completed(), this.addOne );
88 | break;
89 | default:
90 | app.Todos.each( this.addOne, this );
91 | break;
92 | }
93 | },
94 |
95 | // Generate the attributes for a new Todo item.
96 | newAttributes: function() {
97 | return {
98 | title: this.input.val().trim(),
99 | order: app.Todos.nextOrder(),
100 | completed: false
101 | };
102 | },
103 |
104 | // If you hit return in the main input field, create new **Todo** model,
105 | // persisting it to *localStorage*.
106 | createOnEnter: function( e ) {
107 | if ( e.which !== ENTER_KEY || !this.input.val().trim() ) {
108 | return;
109 | }
110 |
111 | app.Todos.create( this.newAttributes() );
112 | this.input.val('');
113 | },
114 |
115 | // Clear all completed todo items, destroying their models.
116 | clearCompleted: function() {
117 | _.each( window.app.Todos.completed(), function( todo ) {
118 | todo.destroy();
119 | });
120 |
121 | return false;
122 | },
123 |
124 | toggleAllComplete: function() {
125 | var completed = this.allCheckbox.checked;
126 |
127 | app.Todos.each(function( todo ) {
128 | todo.save({
129 | 'completed': completed
130 | });
131 | });
132 | }
133 | });
134 | });
135 |
--------------------------------------------------------------------------------
/assets/2070cf7e/jquery.cookie.js:
--------------------------------------------------------------------------------
1 | /**
2 | * Cookie plugin
3 | *
4 | * Copyright (c) 2006 Klaus Hartl (stilbuero.de)
5 | * Dual licensed under the MIT and GPL licenses:
6 | * http://www.opensource.org/licenses/mit-license.php
7 | * http://www.gnu.org/licenses/gpl.html
8 | *
9 | */
10 |
11 | /**
12 | * Create a cookie with the given name and value and other optional parameters.
13 | *
14 | * @example $.cookie('the_cookie', 'the_value');
15 | * @desc Set the value of a cookie.
16 | * @example $.cookie('the_cookie', 'the_value', {expires: 7, path: '/', domain: 'jquery.com', secure: true});
17 | * @desc Create a cookie with all available options.
18 | * @example $.cookie('the_cookie', 'the_value');
19 | * @desc Create a session cookie.
20 | * @example $.cookie('the_cookie', null);
21 | * @desc Delete a cookie by passing null as value.
22 | *
23 | * @param String name The name of the cookie.
24 | * @param String value The value of the cookie.
25 | * @param Object options An object literal containing key/value pairs to provide optional cookie attributes.
26 | * @option Number|Date expires Either an integer specifying the expiration date from now on in days or a Date object.
27 | * If a negative value is specified (e.g. a date in the past), the cookie will be deleted.
28 | * If set to null or omitted, the cookie will be a session cookie and will not be retained
29 | * when the the browser exits.
30 | * @option String path The value of the path atribute of the cookie (default: path of page that created the cookie).
31 | * @option String domain The value of the domain attribute of the cookie (default: domain of page that created the cookie).
32 | * @option Boolean secure If true, the secure attribute of the cookie will be set and the cookie transmission will
33 | * require a secure protocol (like HTTPS).
34 | * @type undefined
35 | *
36 | * @name $.cookie
37 | * @cat Plugins/Cookie
38 | * @author Klaus Hartl/klaus.hartl@stilbuero.de
39 | */
40 |
41 | /**
42 | * Get the value of a cookie with the given name.
43 | *
44 | * @example $.cookie('the_cookie');
45 | * @desc Get the value of a cookie.
46 | *
47 | * @param String name The name of the cookie.
48 | * @return The value of the cookie.
49 | * @type String
50 | *
51 | * @name $.cookie
52 | * @cat Plugins/Cookie
53 | * @author Klaus Hartl/klaus.hartl@stilbuero.de
54 | */
55 | jQuery.cookie = function(name, value, options) {
56 | if (typeof value != 'undefined') { // name and value given, set cookie
57 | options = options || {};
58 | if (value === null) {
59 | value = '';
60 | options.expires = -1;
61 | }
62 | var expires = '';
63 | if (options.expires && (typeof options.expires == 'number' || options.expires.toUTCString)) {
64 | var date;
65 | if (typeof options.expires == 'number') {
66 | date = new Date();
67 | date.setTime(date.getTime() + (options.expires * 24 * 60 * 60 * 1000));
68 | } else {
69 | date = options.expires;
70 | }
71 | expires = '; expires=' + date.toUTCString(); // use expires attribute, max-age is not supported by IE
72 | }
73 | var path = options.path ? '; path=' + options.path : '';
74 | var domain = options.domain ? '; domain=' + options.domain : '';
75 | var secure = options.secure ? '; secure' : '';
76 | document.cookie = [name, '=', encodeURIComponent(value), expires, path, domain, secure].join('');
77 | } else { // only name given, get cookie
78 | var cookieValue = null;
79 | if (document.cookie && document.cookie != '') {
80 | var cookies = document.cookie.split(';');
81 | for (var i = 0; i < cookies.length; i++) {
82 | var cookie = jQuery.trim(cookies[i]);
83 | // Does this cookie string begin with the name we want?
84 | if (cookie.substring(0, name.length + 1) == (name + '=')) {
85 | cookieValue = decodeURIComponent(cookie.substring(name.length + 1));
86 | break;
87 | }
88 | }
89 | }
90 | return cookieValue;
91 | }
92 | };
--------------------------------------------------------------------------------
/assets/2070cf7e/jquery.metadata.js:
--------------------------------------------------------------------------------
1 | /*
2 | * Metadata - jQuery plugin for parsing metadata from elements
3 | *
4 | * Copyright (c) 2006 John Resig, Yehuda Katz, J�örn Zaefferer, Paul McLanahan
5 | *
6 | * Dual licensed under the MIT and GPL licenses:
7 | * http://www.opensource.org/licenses/mit-license.php
8 | * http://www.gnu.org/licenses/gpl.html
9 | *
10 | * Revision: $Id: jquery.metadata.js 3640 2007-10-11 18:34:38Z pmclanahan $
11 | *
12 | */
13 |
14 | /**
15 | * Sets the type of metadata to use. Metadata is encoded in JSON, and each property
16 | * in the JSON will become a property of the element itself.
17 | *
18 | * There are four supported types of metadata storage:
19 | *
20 | * attr: Inside an attribute. The name parameter indicates *which* attribute.
21 | *
22 | * class: Inside the class attribute, wrapped in curly braces: { }
23 | *
24 | * elem: Inside a child element (e.g. a script tag). The
25 | * name parameter indicates *which* element.
26 | * html5: Values are stored in data-* attributes.
27 | *
28 | * The metadata for an element is loaded the first time the element is accessed via jQuery.
29 | *
30 | * As a result, you can define the metadata type, use $(expr) to load the metadata into the elements
31 | * matched by expr, then redefine the metadata type and run another $(expr) for other elements.
32 | *
33 | * @name $.metadata.setType
34 | *
35 | * @example This is a p
36 | * @before $.metadata.setType("class")
37 | * @after $("#one").metadata().item_id == 1; $("#one").metadata().item_label == "Label"
38 | * @desc Reads metadata from the class attribute
39 | *
40 | * @example This is a p
41 | * @before $.metadata.setType("attr", "data")
42 | * @after $("#one").metadata().item_id == 1; $("#one").metadata().item_label == "Label"
43 | * @desc Reads metadata from a "data" attribute
44 | *
45 | * @example This is a p
46 | * @before $.metadata.setType("elem", "script")
47 | * @after $("#one").metadata().item_id == 1; $("#one").metadata().item_label == "Label"
48 | * @desc Reads metadata from a nested script element
49 | *
50 | * @example This is a p
51 | * @before $.metadata.setType("html5")
52 | * @after $("#one").metadata().item_id == 1; $("#one").metadata().item_label == "Label"
53 | * @desc Reads metadata from a series of data-* attributes
54 | *
55 | * @param String type The encoding type
56 | * @param String name The name of the attribute to be used to get metadata (optional)
57 | * @cat Plugins/Metadata
58 | * @descr Sets the type of encoding to be used when loading metadata for the first time
59 | * @type undefined
60 | * @see metadata()
61 | */
62 |
63 | (function($) {
64 |
65 | $.extend({
66 | metadata : {
67 | defaults : {
68 | type: 'class',
69 | name: 'metadata',
70 | cre: /({.*})/,
71 | single: 'metadata'
72 | },
73 | setType: function( type, name ){
74 | this.defaults.type = type;
75 | this.defaults.name = name;
76 | },
77 | get: function( elem, opts ){
78 | var settings = $.extend({},this.defaults,opts);
79 | // check for empty string in single property
80 | if ( !settings.single.length ) settings.single = 'metadata';
81 |
82 | var data = $.data(elem, settings.single);
83 | // returned cached data if it already exists
84 | if ( data ) return data;
85 |
86 | data = "{}";
87 |
88 | var getData = function(data) {
89 | if(typeof data != "string") return data;
90 |
91 | if( data.indexOf('{') < 0 ) {
92 | data = eval("(" + data + ")");
93 | }
94 | };
95 |
96 | var getObject = function(data) {
97 | if(typeof data != "string") return data;
98 |
99 | data = eval("(" + data + ")");
100 | return data;
101 | };
102 |
103 | if ( settings.type == "html5" ) {
104 | var object = {};
105 | $( elem.attributes ).each(function() {
106 | var name = this.nodeName;
107 | if(name.match(/^data-/)) name = name.replace(/^data-/, '');
108 | else return true;
109 | object[name] = getObject(this.nodeValue);
110 | });
111 | } else {
112 | if ( settings.type == "class" ) {
113 | var m = settings.cre.exec( elem.className );
114 | if ( m )
115 | data = m[1];
116 | } else if ( settings.type == "elem" ) {
117 | if( !elem.getElementsByTagName ) return;
118 | var e = elem.getElementsByTagName(settings.name);
119 | if ( e.length )
120 | data = $.trim(e[0].innerHTML);
121 | } else if ( elem.getAttribute != undefined ) {
122 | var attr = elem.getAttribute( settings.name );
123 | if ( attr )
124 | data = attr;
125 | }
126 | object = getObject(data.indexOf("{") < 0 ? "{" + data + "}" : data);
127 | }
128 |
129 | $.data( elem, settings.single, object );
130 | return object;
131 | }
132 | }
133 | });
134 |
135 | /**
136 | * Returns the metadata object for the first member of the jQuery object.
137 | *
138 | * @name metadata
139 | * @descr Returns element's metadata object
140 | * @param Object opts An object contianing settings to override the defaults
141 | * @type jQuery
142 | * @cat Plugins/Metadata
143 | */
144 | $.fn.metadata = function( opts ){
145 | return $.metadata.get( this[0], opts );
146 | };
147 |
148 | })(jQuery);
--------------------------------------------------------------------------------
/style/unused/assets/crossroads.min.js:
--------------------------------------------------------------------------------
1 | /** @license
2 | * crossroads
3 | * License: MIT
4 | * Author: Miller Medeiros
5 | * Version: 0.9.0 (2012/5/28 23:9)
6 | */
7 | (function(a){a(["signals"],function(a){function d(a,b){if(a.indexOf)return a.indexOf(b);var c=a.length;while(c--)if(a[c]===b)return c;return-1}function e(a,b){return"[object "+b+"]"===Object.prototype.toString.call(a)}function f(a){return e(a,"RegExp")}function g(a){return e(a,"Array")}function h(a){return typeof a=="function"}function i(a){var b;return a===null||a==="null"?b=null:a==="true"?b=!0:a==="false"?b=!1:a===c||a==="undefined"?b=c:a===""||isNaN(a)?b=a:b=parseFloat(a),b}function j(a){var b=a.length,c=[];while(b--)c[b]=i(a[b]);return c}function k(a){var b=(a||"").replace("?","").split("&"),c=b.length,d={},e,f;while(c--)e=b[c].split("="),f=i(e[1]),d[e[0]]=typeof f=="string"?decodeURIComponent(f):f;return d}function l(){this._routes=[],this._prevRoutes=[],this.bypassed=new a.Signal,this.routed=new a.Signal}function m(c,d,e,g){var h=f(c),i=b.patternLexer;this._router=g,this._pattern=c,this._paramsIds=h?null:i.getParamIds(this._pattern),this._optionalParamsIds=h?null:i.getOptionalParamsIds(this._pattern),this._matchRegexp=h?c:i.compilePattern(c),this.matched=new a.Signal,this.switched=new a.Signal,d&&this.matched.add(d),this._priority=e||0}var b,c;return l.prototype={greedy:!1,greedyEnabled:!0,normalizeFn:null,create:function(){return new l},shouldTypecast:!1,addRoute:function(a,b,c){var d=new m(a,b,c,this);return this._sortedInsert(d),d},removeRoute:function(a){var b=d(this._routes,a);b!==-1&&this._routes.splice(b,1),a._destroy()},removeAllRoutes:function(){var a=this.getNumRoutes();while(a--)this._routes[a]._destroy();this._routes.length=0},parse:function(a,b){a=a||"",b=b||[];var c=this._getMatchedRoutes(a),d=0,e=c.length,f;if(e){this._notifyPrevRoutes(c,a),this._prevRoutes=c;while(d 0) {
53 | var input = $(this[0]);
54 | return input.data($.mask.dataName)();
55 | }
56 | settings = $.extend({
57 | placeholder: "_",
58 | completed: null
59 | }, settings);
60 |
61 | var defs = $.mask.definitions;
62 | var tests = [];
63 | var partialPosition = mask.length;
64 | var firstNonMaskPos = null;
65 | var len = mask.length;
66 |
67 | $.each(mask.split(""), function(i, c) {
68 | if (c == '?') {
69 | len--;
70 | partialPosition = i;
71 | } else if (defs[c]) {
72 | tests.push(new RegExp(defs[c]));
73 | if(firstNonMaskPos==null)
74 | firstNonMaskPos = tests.length - 1;
75 | } else {
76 | tests.push(null);
77 | }
78 | });
79 |
80 | return this.trigger("unmask").each(function() {
81 | var input = $(this);
82 | var buffer = $.map(mask.split(""), function(c, i) { if (c != '?') return defs[c] ? settings.placeholder : c });
83 | var focusText = input.val();
84 |
85 | function seekNext(pos) {
86 | while (++pos <= len && !tests[pos]);
87 | return pos;
88 | };
89 | function seekPrev(pos) {
90 | while (--pos >= 0 && !tests[pos]);
91 | return pos;
92 | };
93 |
94 | function shiftL(begin,end) {
95 | if(begin<0)
96 | return;
97 | for (var i = begin,j = seekNext(end); i < len; i++) {
98 | if (tests[i]) {
99 | if (j < len && tests[i].test(buffer[j])) {
100 | buffer[i] = buffer[j];
101 | buffer[j] = settings.placeholder;
102 | } else
103 | break;
104 | j = seekNext(j);
105 | }
106 | }
107 | writeBuffer();
108 | input.caret(Math.max(firstNonMaskPos, begin));
109 | };
110 |
111 | function shiftR(pos) {
112 | for (var i = pos, c = settings.placeholder; i < len; i++) {
113 | if (tests[i]) {
114 | var j = seekNext(i);
115 | var t = buffer[i];
116 | buffer[i] = c;
117 | if (j < len && tests[j].test(t))
118 | c = t;
119 | else
120 | break;
121 | }
122 | }
123 | };
124 |
125 | function keydownEvent(e) {
126 | var k=e.which;
127 |
128 | //backspace, delete, and escape get special treatment
129 | if(k == 8 || k == 46 || (iPhone && k == 127)){
130 | var pos = input.caret(),
131 | begin = pos.begin,
132 | end = pos.end;
133 |
134 | if(end-begin==0){
135 | begin=k!=46?seekPrev(begin):(end=seekNext(begin-1));
136 | end=k==46?seekNext(end):end;
137 | }
138 | clearBuffer(begin, end);
139 | shiftL(begin,end-1);
140 |
141 | return false;
142 | } else if (k == 27) {//escape
143 | input.val(focusText);
144 | input.caret(0, checkVal());
145 | return false;
146 | }
147 | };
148 |
149 | function keypressEvent(e) {
150 | var k = e.which,
151 | pos = input.caret();
152 | if (e.ctrlKey || e.altKey || e.metaKey || k<32) {//Ignore
153 | return true;
154 | } else if (k) {
155 | if(pos.end-pos.begin!=0){
156 | clearBuffer(pos.begin, pos.end);
157 | shiftL(pos.begin, pos.end-1);
158 | }
159 |
160 | var p = seekNext(pos.begin - 1);
161 | if (p < len) {
162 | var c = String.fromCharCode(k);
163 | if (tests[p].test(c)) {
164 | shiftR(p);
165 | buffer[p] = c;
166 | writeBuffer();
167 | var next = seekNext(p);
168 | input.caret(next);
169 | if (settings.completed && next >= len)
170 | settings.completed.call(input);
171 | }
172 | }
173 | return false;
174 | }
175 | };
176 |
177 | function clearBuffer(start, end) {
178 | for (var i = start; i < end && i < len; i++) {
179 | if (tests[i])
180 | buffer[i] = settings.placeholder;
181 | }
182 | };
183 |
184 | function writeBuffer() { return input.val(buffer.join('')).val(); };
185 |
186 | function checkVal(allow) {
187 | //try to place characters where they belong
188 | var test = input.val();
189 | var lastMatch = -1;
190 | for (var i = 0, pos = 0; i < len; i++) {
191 | if (tests[i]) {
192 | buffer[i] = settings.placeholder;
193 | while (pos++ < test.length) {
194 | var c = test.charAt(pos - 1);
195 | if (tests[i].test(c)) {
196 | buffer[i] = c;
197 | lastMatch = i;
198 | break;
199 | }
200 | }
201 | if (pos > test.length)
202 | break;
203 | } else if (buffer[i] == test.charAt(pos) && i!=partialPosition) {
204 | pos++;
205 | lastMatch = i;
206 | }
207 | }
208 | if (!allow && lastMatch + 1 < partialPosition) {
209 | input.val("");
210 | clearBuffer(0, len);
211 | } else if (allow || lastMatch + 1 >= partialPosition) {
212 | writeBuffer();
213 | if (!allow) input.val(input.val().substring(0, lastMatch + 1));
214 | }
215 | return (partialPosition ? i : firstNonMaskPos);
216 | };
217 |
218 | input.data($.mask.dataName,function(){
219 | return $.map(buffer, function(c, i) {
220 | return tests[i]&&c!=settings.placeholder ? c : null;
221 | }).join('');
222 | })
223 |
224 | if (!input.attr("readonly"))
225 | input
226 | .one("unmask", function() {
227 | input
228 | .unbind(".mask")
229 | .removeData($.mask.dataName);
230 | })
231 | .bind("focus.mask", function() {
232 | focusText = input.val();
233 | var pos = checkVal();
234 | writeBuffer();
235 | var moveCaret=function(){
236 | if (pos == mask.length)
237 | input.caret(0, pos);
238 | else
239 | input.caret(pos);
240 | };
241 | ($.browser.msie ? moveCaret:function(){setTimeout(moveCaret,0)})();
242 | })
243 | .bind("blur.mask", function() {
244 | checkVal();
245 | if (input.val() != focusText)
246 | input.change();
247 | })
248 | .bind("keydown.mask", keydownEvent)
249 | .bind("keypress.mask", keypressEvent)
250 | .bind(pasteEventName, function() {
251 | setTimeout(function() { input.caret(checkVal(true)); }, 0);
252 | });
253 |
254 | checkVal(); //Perform initial check for existing values
255 | });
256 | }
257 | });
258 | })(jQuery);
259 |
--------------------------------------------------------------------------------
/protected/views/layouts/main.php:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 | Yii TodoMVC - fgursoy34
7 |
8 |
9 |
10 |
11 |
12 |
25 |
26 |
27 |
Welcome body,
28 |
Generating by Yii (TodoMVC)
29 |
fgursoy34
30 |
31 |
32 |
40 |
58 |
59 |
60 |
61 |
62 |
63 |
64 |
301 |
302 |
303 |
--------------------------------------------------------------------------------
/assets/6c3e0ad6/css/main.css:
--------------------------------------------------------------------------------
1 | body
2 | {
3 | margin: 0;
4 | padding: 0;
5 | color: #555;
6 | font: normal 10pt Arial,Helvetica,Verdana,"DejaVu Sans","Bitstream Vera Sans",Geneva,sans-serif;
7 | background: #EFEFEF;
8 | }
9 |
10 | h1
11 | {
12 | font-size: 1.6em;
13 | color: #666;
14 | }
15 |
16 | h2
17 | {
18 | font-size: 1.4em;
19 | color: #666;
20 | }
21 |
22 | h3
23 | {
24 | font-size: 1.2em;
25 | color: #666;
26 | }
27 |
28 | #page
29 | {
30 | margin-top: 5px;
31 | margin-bottom: 5px;
32 | background: white;
33 | border: 1px solid #C9E0ED;
34 | }
35 |
36 | #header
37 | {
38 | padding: 0px;
39 | margin: 0px 20px;
40 | border-bottom: 1px solid #C9E0ED;
41 | }
42 |
43 | #content
44 | {
45 | padding: 20px;
46 | min-height: 400px;
47 | }
48 |
49 | #sidebar
50 | {
51 | padding: 20px 0 20px 20px;
52 | }
53 |
54 | #footer
55 | {
56 | margin: 0 auto;
57 | width: 950px;
58 | font-size: 0.8em;
59 | text-align: center;
60 | }
61 |
62 | #logo
63 | {
64 | padding: 5px 0px;
65 | }
66 |
67 | #logo a
68 | {
69 | text-decoration: none;
70 | }
71 |
72 | #header .top-menus
73 | {
74 | margin: 20px 0px;
75 | float: right;
76 | }
77 |
78 | div.flash-error, div.flash-notice, div.flash-success
79 | {
80 | padding:.8em;
81 | margin-bottom:1em;
82 | border:2px solid #ddd;
83 | }
84 |
85 | div.flash-error
86 | {
87 | background:#FBE3E4;
88 | color:#8a1f11;
89 | border-color:#FBC2C4;
90 | }
91 |
92 | div.flash-notice
93 | {
94 | background:#FFF6BF;
95 | color:#514721;
96 | border-color:#FFD324;
97 | }
98 |
99 | div.flash-success
100 | {
101 | background:#E6EFC2;
102 | color:#264409;
103 | border-color:#C6D880;
104 | }
105 |
106 | div.flash-error a
107 | {
108 | color:#8a1f11;
109 | }
110 |
111 | div.flash-notice a
112 | {
113 | color:#514721;
114 | }
115 |
116 | div.flash-success a
117 | {
118 | color:#264409;
119 | }
120 |
121 | div.view
122 | {
123 | padding: 10px;
124 | margin: 10px 0;
125 | border: 1px solid #C9E0ED;
126 | }
127 |
128 | div.breadcrumbs
129 | {
130 | font-size: 0.9em;
131 | padding: 5px 20px;
132 | }
133 |
134 | div.breadcrumbs span
135 | {
136 | font-weight: bold;
137 | }
138 |
139 | div.search-form
140 | {
141 | padding: 10px;
142 | margin: 10px 0;
143 | background: #eee;
144 | }
145 |
146 | .portlet
147 | {
148 |
149 | }
150 |
151 | .portlet-decoration
152 | {
153 | padding: 3px 8px;
154 | background: #79B4DC;
155 | border-left: 5px solid #6293B3;
156 | }
157 |
158 | .portlet-title
159 | {
160 | font-size: 12px;
161 | font-weight: bold;
162 | padding: 0;
163 | margin: 0;
164 | color: white;
165 | }
166 |
167 | .portlet-content
168 | {
169 | font-size:0.9em;
170 | margin: 0 0 15px 0;
171 | padding: 5px 8px;
172 | background:#EFFDFF;
173 | }
174 |
175 | .portlet-content ul
176 | {
177 | list-style-image:none;
178 | list-style-position:outside;
179 | list-style-type:none;
180 | margin: 0;
181 | padding: 0;
182 | }
183 |
184 | .portlet-content li
185 | {
186 | padding: 2px 0 4px 0px;
187 | }
188 |
189 | div.form
190 | {
191 | }
192 |
193 | div.form input,
194 | div.form textarea,
195 | div.form select
196 | {
197 | margin: 0.2em 0 0.5em 0;
198 | }
199 |
200 | div.form fieldset
201 | {
202 | border: 1px solid #DDD;
203 | padding: 10px;
204 | margin: 0 0 10px 0;
205 | -moz-border-radius:7px;
206 | }
207 |
208 | div.form label
209 | {
210 | font-weight: bold;
211 | font-size: 0.9em;
212 | display: block;
213 | }
214 |
215 | div.form .row
216 | {
217 | margin: 5px 0;
218 | }
219 |
220 | div.form .row.buttons
221 | {
222 | padding: 5px;
223 | margin: 10px 0;
224 | }
225 |
226 | div.form .row.buttons input
227 | {
228 | margin: 0;
229 | }
230 |
231 | div.form .hint
232 | {
233 | margin: 0;
234 | padding: 0;
235 | color: #999;
236 | }
237 |
238 | div.form .note
239 | {
240 | font-style: italic;
241 | }
242 |
243 | div.form span.required
244 | {
245 | color: red;
246 | }
247 |
248 | div.form div.error label,
249 | div.form label.error,
250 | div.form span.error
251 | {
252 | color: #C00;
253 | }
254 |
255 | div.form div.error input,
256 | div.form div.error textarea,
257 | div.form div.error select,
258 | div.form input.error,
259 | div.form textarea.error,
260 | div.form select.error
261 | {
262 | background: #FEE;
263 | border-color: #C00;
264 | }
265 |
266 | div.form div.success input,
267 | div.form div.success textarea,
268 | div.form div.success select,
269 | div.form input.success,
270 | div.form textarea.success,
271 | div.form select.success
272 | {
273 | background: #E6EFC2;
274 | border-color: #C6D880;
275 | }
276 |
277 |
278 | div.form .errorSummary
279 | {
280 | border: 2px solid #C00;
281 | padding: 7px 7px 12px 7px;
282 | margin: 0 0 20px 0;
283 | background: #FEE;
284 | font-size: 0.9em;
285 | }
286 |
287 | div.form .errorMessage
288 | {
289 | color: red;
290 | font-size: 0.9em;
291 | }
292 |
293 | div.form .errorSummary p
294 | {
295 | margin: 0;
296 | padding: 5px;
297 | }
298 |
299 | div.form .errorSummary ul
300 | {
301 | margin: 0;
302 | padding: 0 0 0 20px;
303 | }
304 |
305 | div.wide.form label
306 | {
307 | float: left;
308 | margin-right: 10px;
309 | position: relative;
310 | text-align: right;
311 | width: 100px;
312 | }
313 |
314 | div.wide.form .row
315 | {
316 | clear: left;
317 | }
318 |
319 | div.wide.form .buttons, div.wide.form .hint, div.wide.form .errorMessage
320 | {
321 | clear: left;
322 | padding-left: 110px;
323 | }
324 |
325 | div.form .tooltip
326 | {
327 | display: none;
328 | background-color:#EFFDFF;
329 | border:1px solid #79B4DC;
330 | padding: 10px;
331 | width: 300px;
332 | }
333 |
334 | div.form .tooltip ul
335 | {
336 | margin: 0;
337 | padding: 10px 0 0 20px;
338 | }
339 |
340 | div.form .tooltip code
341 | {
342 | color: #CA0EE3;
343 | font-size:0.9em;
344 | }
345 |
346 | div.form.login
347 | {
348 | border: 1px solid #C9E0ED;
349 | width: 200px;
350 | margin: 0 auto;
351 | margin-top: 50px;
352 | margin-bottom: 50px;
353 | padding: 20px 10px 10px 10px;
354 | text-align: center;
355 | -moz-border-radius: 5px;
356 | -webkit-border-radius: 5px;
357 | }
358 |
359 | div.form.login p
360 | {
361 | margin: 0 0 10px 0;
362 | }
363 |
364 | div.form.gii .row.sticky .value, span.sticky
365 | {
366 | padding: 3px;
367 | background: lightyellow;
368 | }
369 |
370 | div.form.gii .row.template select
371 | {
372 | width: 420px;
373 | }
374 |
375 | div.form.gii table.preview
376 | {
377 | border-collapse: collapse;
378 | }
379 |
380 | div.form.gii table.preview th
381 | {
382 | text-align: center;
383 | }
384 |
385 | div.form.gii table.preview th.confirm
386 | {
387 | text-align: right;
388 | }
389 |
390 | div.form.gii table.preview th.confirm label
391 | {
392 | display: inline;
393 | }
394 |
395 | div.form.gii table.preview td.confirm
396 | {
397 | width: 80px;
398 | text-align: right;
399 | }
400 |
401 | div.form.gii table.preview td.confirm input
402 | {
403 | margin:0;
404 | }
405 |
406 | div.form.gii table.preview td.confirm label
407 | {
408 | display: inline;
409 | font-weight: normal;
410 | }
411 |
412 | div.form.gii table.preview,
413 | div.form.gii table.preview th,
414 | div.form.gii table.preview td
415 | {
416 | border: 1px solid #529EC6;
417 | }
418 |
419 | div.form.gii table.preview tr.skip
420 | {
421 | background-color: #eee;
422 | }
423 |
424 | div.form.gii table.preview tr.new
425 | {
426 | background-color: #C5FBBD;
427 | }
428 |
429 | div.form.gii table.preview tr.overwrite
430 | {
431 | background-color: #FFE0E1;
432 | }
433 |
434 | div.form.gii pre.results
435 | {
436 | overflow: auto;
437 | background-color: gray;
438 | max-height: 300px;
439 | color: white;
440 | padding: 10px;
441 | }
442 |
443 | div.form.gii div.success
444 | {
445 | background: #C5FBBD;
446 | border: 1px solid #76C376;
447 | padding: 10px;
448 | margin: 10px 0;
449 | }
450 |
451 | div.form.gii div.error
452 | {
453 | background: #FFE0E1;
454 | border: 1px solid #FFA0A2;
455 | padding: 10px;
456 | margin: 10px 0;
457 | }
458 |
459 | div.form.gii div.success code
460 | {
461 | overflow: auto;
462 | display: block;
463 | padding: 5px;
464 | font-size: 12px;
465 | background: white;
466 | }
467 |
468 | div.form.gii pre.results span.error
469 | {
470 | background: #FFE0E1;
471 | color: black;
472 | padding: 1px;
473 | }
474 |
475 | #fancybox-inner .error
476 | {
477 | color: red;
478 | }
479 |
480 | #fancybox-inner .title
481 | {
482 | font-size: 12px;
483 | font-weight: bold;
484 | text-decoration: underline;
485 | }
486 |
487 | #fancybox-inner .buttons
488 | {
489 | float: right;
490 | padding: 0 10px 0 0;
491 | }
492 |
493 | #fancybox-inner .content
494 | {
495 | background: #F0F4FF;
496 | text-align: left;
497 | }
498 |
499 | #fancybox-inner pre.diff
500 | {
501 | margin:0;
502 | }
503 |
504 | #fancybox-inner pre.diff del
505 | {
506 | background: pink;
507 | }
508 |
509 | #fancybox-inner pre.diff ins
510 | {
511 | background: lightgreen;
512 | text-decoration: none;
513 | }
514 |
515 | #fancybox-wrap #tip7-title
516 | {
517 | text-align: left;
518 | }
519 |
520 | #fancybox-wrap #tip7-title b
521 | {
522 | display: block;
523 | }
524 |
525 | #fancybox-wrap #tip7-title span
526 | {
527 | float: right;
528 | }
529 |
--------------------------------------------------------------------------------
/assets/2070cf7e/jquery.treeview.js:
--------------------------------------------------------------------------------
1 | /*
2 | * Treeview 1.5pre - jQuery plugin to hide and show branches of a tree
3 | *
4 | * http://bassistance.de/jquery-plugins/jquery-plugin-treeview/
5 | * http://docs.jquery.com/Plugins/Treeview
6 | *
7 | * Copyright (c) 2007 Jörn Zaefferer
8 | *
9 | * Dual licensed under the MIT and GPL licenses:
10 | * http://www.opensource.org/licenses/mit-license.php
11 | * http://www.gnu.org/licenses/gpl.html
12 | *
13 | * Revision: $Id: jquery.treeview.js 5759 2008-07-01 07:50:28Z joern.zaefferer $
14 | *
15 | */
16 |
17 | ;(function($) {
18 |
19 | // TODO rewrite as a widget, removing all the extra plugins
20 | $.extend($.fn, {
21 | swapClass: function(c1, c2) {
22 | var c1Elements = this.filter('.' + c1);
23 | this.filter('.' + c2).removeClass(c2).addClass(c1);
24 | c1Elements.removeClass(c1).addClass(c2);
25 | return this;
26 | },
27 | replaceClass: function(c1, c2) {
28 | return this.filter('.' + c1).removeClass(c1).addClass(c2).end();
29 | },
30 | hoverClass: function(className) {
31 | className = className || "hover";
32 | return this.hover(function() {
33 | $(this).addClass(className);
34 | }, function() {
35 | $(this).removeClass(className);
36 | });
37 | },
38 | heightToggle: function(animated, callback) {
39 | animated ?
40 | this.animate({ height: "toggle" }, animated, callback) :
41 | this.each(function(){
42 | jQuery(this)[ jQuery(this).is(":hidden") ? "show" : "hide" ]();
43 | if(callback)
44 | callback.apply(this, arguments);
45 | });
46 | },
47 | heightHide: function(animated, callback) {
48 | if (animated) {
49 | this.animate({ height: "hide" }, animated, callback);
50 | } else {
51 | this.hide();
52 | if (callback)
53 | this.each(callback);
54 | }
55 | },
56 | prepareBranches: function(settings) {
57 | if (!settings.prerendered) {
58 | // mark last tree items
59 | this.filter(":last-child:not(ul)").addClass(CLASSES.last);
60 | // collapse whole tree, or only those marked as closed, anyway except those marked as open
61 | this.filter((settings.collapsed ? "" : "." + CLASSES.closed) + ":not(." + CLASSES.open + ")").find(">ul").hide();
62 | }
63 | // return all items with sublists
64 | return this.filter(":has(>ul)");
65 | },
66 | applyClasses: function(settings, toggler) {
67 | // TODO use event delegation
68 | this.filter(":has(>ul):not(:has(>a))").find(">span").unbind("click.treeview").bind("click.treeview", function(event) {
69 | // don't handle click events on children, eg. checkboxes
70 | if ( this == event.target )
71 | toggler.apply($(this).next());
72 | }).add( $("a", this) ).hoverClass();
73 |
74 | if (!settings.prerendered) {
75 | // handle closed ones first
76 | this.filter(":has(>ul:hidden)")
77 | .addClass(CLASSES.expandable)
78 | .replaceClass(CLASSES.last, CLASSES.lastExpandable);
79 |
80 | // handle open ones
81 | this.not(":has(>ul:hidden)")
82 | .addClass(CLASSES.collapsable)
83 | .replaceClass(CLASSES.last, CLASSES.lastCollapsable);
84 |
85 | // create hitarea if not present
86 | var hitarea = this.find("div." + CLASSES.hitarea);
87 | if (!hitarea.length)
88 | hitarea = this.prepend("
").find("div." + CLASSES.hitarea);
89 | hitarea.removeClass().addClass(CLASSES.hitarea).each(function() {
90 | var classes = "";
91 | $.each($(this).parent().attr("class").split(" "), function() {
92 | classes += this + "-hitarea ";
93 | });
94 | $(this).addClass( classes );
95 | })
96 | }
97 |
98 | // apply event to hitarea
99 | this.find("div." + CLASSES.hitarea).click( toggler );
100 | },
101 | treeview: function(settings) {
102 |
103 | settings = $.extend({
104 | cookieId: "treeview"
105 | }, settings);
106 |
107 | if ( settings.toggle ) {
108 | var callback = settings.toggle;
109 | settings.toggle = function() {
110 | return callback.apply($(this).parent()[0], arguments);
111 | };
112 | }
113 |
114 | // factory for treecontroller
115 | function treeController(tree, control) {
116 | // factory for click handlers
117 | function handler(filter) {
118 | return function() {
119 | // reuse toggle event handler, applying the elements to toggle
120 | // start searching for all hitareas
121 | toggler.apply( $("div." + CLASSES.hitarea, tree).filter(function() {
122 | // for plain toggle, no filter is provided, otherwise we need to check the parent element
123 | return filter ? $(this).parent("." + filter).length : true;
124 | }) );
125 | return false;
126 | };
127 | }
128 | // click on first element to collapse tree
129 | $("a:eq(0)", control).click( handler(CLASSES.collapsable) );
130 | // click on second to expand tree
131 | $("a:eq(1)", control).click( handler(CLASSES.expandable) );
132 | // click on third to toggle tree
133 | $("a:eq(2)", control).click( handler() );
134 | }
135 |
136 | // handle toggle event
137 | function toggler() {
138 | $(this)
139 | .parent()
140 | // swap classes for hitarea
141 | .find(">.hitarea")
142 | .swapClass( CLASSES.collapsableHitarea, CLASSES.expandableHitarea )
143 | .swapClass( CLASSES.lastCollapsableHitarea, CLASSES.lastExpandableHitarea )
144 | .end()
145 | // swap classes for parent li
146 | .swapClass( CLASSES.collapsable, CLASSES.expandable )
147 | .swapClass( CLASSES.lastCollapsable, CLASSES.lastExpandable )
148 | // find child lists
149 | .find( ">ul" )
150 | // toggle them
151 | .heightToggle( settings.animated, settings.toggle );
152 | if ( settings.unique ) {
153 | $(this).parent()
154 | .siblings()
155 | // swap classes for hitarea
156 | .find(">.hitarea")
157 | .replaceClass( CLASSES.collapsableHitarea, CLASSES.expandableHitarea )
158 | .replaceClass( CLASSES.lastCollapsableHitarea, CLASSES.lastExpandableHitarea )
159 | .end()
160 | .replaceClass( CLASSES.collapsable, CLASSES.expandable )
161 | .replaceClass( CLASSES.lastCollapsable, CLASSES.lastExpandable )
162 | .find( ">ul" )
163 | .heightHide( settings.animated, settings.toggle );
164 | }
165 | }
166 | this.data("toggler", toggler);
167 |
168 | function serialize() {
169 | function binary(arg) {
170 | return arg ? 1 : 0;
171 | }
172 | var data = [];
173 | branches.each(function(i, e) {
174 | data[i] = $(e).is(":has(>ul:visible)") ? 1 : 0;
175 | });
176 | $.cookie(settings.cookieId, data.join(""), settings.cookieOptions );
177 | }
178 |
179 | function deserialize() {
180 | var stored = $.cookie(settings.cookieId);
181 | if ( stored ) {
182 | var data = stored.split("");
183 | branches.each(function(i, e) {
184 | $(e).find(">ul")[ parseInt(data[i]) ? "show" : "hide" ]();
185 | });
186 | }
187 | }
188 |
189 | // add treeview class to activate styles
190 | this.addClass("treeview");
191 |
192 | // prepare branches and find all tree items with child lists
193 | var branches = this.find("li").prepareBranches(settings);
194 |
195 | switch(settings.persist) {
196 | case "cookie":
197 | var toggleCallback = settings.toggle;
198 | settings.toggle = function() {
199 | serialize();
200 | if (toggleCallback) {
201 | toggleCallback.apply(this, arguments);
202 | }
203 | };
204 | deserialize();
205 | break;
206 | case "location":
207 | var current = this.find("a").filter(function() {
208 | return this.href.toLowerCase() == location.href.toLowerCase();
209 | });
210 | if ( current.length ) {
211 | // TODO update the open/closed classes
212 | var items = current.addClass("selected").parents("ul, li").add( current.next() ).show();
213 | if (settings.prerendered) {
214 | // if prerendered is on, replicate the basic class swapping
215 | items.filter("li")
216 | .swapClass( CLASSES.collapsable, CLASSES.expandable )
217 | .swapClass( CLASSES.lastCollapsable, CLASSES.lastExpandable )
218 | .find(">.hitarea")
219 | .swapClass( CLASSES.collapsableHitarea, CLASSES.expandableHitarea )
220 | .swapClass( CLASSES.lastCollapsableHitarea, CLASSES.lastExpandableHitarea );
221 | }
222 | }
223 | break;
224 | }
225 |
226 | branches.applyClasses(settings, toggler);
227 |
228 | // if control option is set, create the treecontroller and show it
229 | if ( settings.control ) {
230 | treeController(this, settings.control);
231 | $(settings.control).show();
232 | }
233 |
234 | return this;
235 | }
236 | });
237 |
238 | // classes used by the plugin
239 | // need to be styled via external stylesheet, see first example
240 | $.treeview = {};
241 | var CLASSES = ($.treeview.classes = {
242 | open: "open",
243 | closed: "closed",
244 | expandable: "expandable",
245 | expandableHitarea: "expandable-hitarea",
246 | lastExpandableHitarea: "lastExpandable-hitarea",
247 | collapsable: "collapsable",
248 | collapsableHitarea: "collapsable-hitarea",
249 | lastCollapsableHitarea: "lastCollapsable-hitarea",
250 | lastCollapsable: "lastCollapsable",
251 | lastExpandable: "lastExpandable",
252 | last: "last",
253 | hitarea: "hitarea"
254 | });
255 |
256 | })(jQuery);
--------------------------------------------------------------------------------
/assets/6c3e0ad6/js/fancybox/jquery.fancybox-1.3.1.css:
--------------------------------------------------------------------------------
1 | /*
2 | * FancyBox - jQuery Plugin
3 | * Simple and fancy lightbox alternative
4 | *
5 | * Examples and documentation at: http://fancybox.net
6 | *
7 | * Copyright (c) 2008 - 2010 Janis Skarnelis
8 | *
9 | * Version: 1.3.1 (05/03/2010)
10 | * Requires: jQuery v1.3+
11 | *
12 | * Dual licensed under the MIT and GPL licenses:
13 | * http://www.opensource.org/licenses/mit-license.php
14 | * http://www.gnu.org/licenses/gpl.html
15 | */
16 |
17 | #fancybox-loading {
18 | position: fixed;
19 | top: 50%;
20 | left: 50%;
21 | height: 40px;
22 | width: 40px;
23 | margin-top: -20px;
24 | margin-left: -20px;
25 | cursor: pointer;
26 | overflow: hidden;
27 | z-index: 1104;
28 | display: none;
29 | }
30 |
31 | * html #fancybox-loading { /* IE6 */
32 | position: absolute;
33 | margin-top: 0;
34 | }
35 |
36 | #fancybox-loading div {
37 | position: absolute;
38 | top: 0;
39 | left: 0;
40 | width: 40px;
41 | height: 480px;
42 | background-image: url('fancybox.png');
43 | }
44 |
45 | #fancybox-overlay {
46 | position: fixed;
47 | top: 0;
48 | left: 0;
49 | bottom: 0;
50 | right: 0;
51 | background: #000;
52 | z-index: 1100;
53 | display: none;
54 | }
55 |
56 | * html #fancybox-overlay { /* IE6 */
57 | position: absolute;
58 | width: 100%;
59 | }
60 |
61 | #fancybox-tmp {
62 | padding: 0;
63 | margin: 0;
64 | border: 0;
65 | overflow: auto;
66 | display: none;
67 | }
68 |
69 | #fancybox-wrap {
70 | position: absolute;
71 | top: 0;
72 | left: 0;
73 | margin: 0;
74 | padding: 20px;
75 | z-index: 1101;
76 | display: none;
77 | }
78 |
79 | #fancybox-outer {
80 | position: relative;
81 | width: 100%;
82 | height: 100%;
83 | background: #FFF;
84 | }
85 |
86 | #fancybox-inner {
87 | position: absolute;
88 | top: 0;
89 | left: 0;
90 | width: 1px;
91 | height: 1px;
92 | padding: 0;
93 | margin: 0;
94 | outline: none;
95 | overflow: hidden;
96 | }
97 |
98 | #fancybox-hide-sel-frame {
99 | position: absolute;
100 | top: 0;
101 | left: 0;
102 | width: 100%;
103 | height: 100%;
104 | background: transparent;
105 | }
106 |
107 | #fancybox-close {
108 | position: absolute;
109 | top: -15px;
110 | right: -15px;
111 | width: 30px;
112 | height: 30px;
113 | background-image: url('fancybox.png');
114 | background-position: -40px 0px;
115 | cursor: pointer;
116 | z-index: 1103;
117 | display: none;
118 | }
119 |
120 | #fancybox_error {
121 | color: #444;
122 | font: normal 12px/20px Arial;
123 | padding: 7px;
124 | margin: 0;
125 | }
126 |
127 | #fancybox-content {
128 | height: auto;
129 | width: auto;
130 | padding: 0;
131 | margin: 0;
132 | }
133 |
134 | #fancybox-img {
135 | width: 100%;
136 | height: 100%;
137 | padding: 0;
138 | margin: 0;
139 | border: none;
140 | outline: none;
141 | line-height: 0;
142 | vertical-align: top;
143 | -ms-interpolation-mode: bicubic;
144 | }
145 |
146 | #fancybox-frame {
147 | position: relative;
148 | width: 100%;
149 | height: 100%;
150 | border: none;
151 | display: block;
152 | }
153 |
154 | #fancybox-title {
155 | position: absolute;
156 | bottom: 0;
157 | left: 0;
158 | font-family: Arial;
159 | font-size: 12px;
160 | z-index: 1102;
161 | }
162 |
163 | .fancybox-title-inside {
164 | padding: 10px 0;
165 | text-align: center;
166 | color: #333;
167 | }
168 |
169 | .fancybox-title-outside {
170 | padding-top: 5px;
171 | color: #FFF;
172 | text-align: center;
173 | font-weight: bold;
174 | }
175 |
176 | .fancybox-title-over {
177 | color: #FFF;
178 | text-align: left;
179 | }
180 |
181 | #fancybox-title-over {
182 | padding: 10px;
183 | background-image: url('fancy_title_over.png');
184 | display: block;
185 | }
186 |
187 | #fancybox-title-wrap {
188 | display: inline-block;
189 | }
190 |
191 | #fancybox-title-wrap span {
192 | height: 32px;
193 | float: left;
194 | }
195 |
196 | #fancybox-title-left {
197 | padding-left: 15px;
198 | background-image: url('fancybox.png');
199 | background-position: -40px -90px;
200 | background-repeat: no-repeat;
201 | }
202 |
203 | #fancybox-title-main {
204 | font-weight: bold;
205 | line-height: 29px;
206 | background-image: url('fancybox-x.png');
207 | background-position: 0px -40px;
208 | color: #FFF;
209 | }
210 |
211 | #fancybox-title-right {
212 | padding-left: 15px;
213 | background-image: url('fancybox.png');
214 | background-position: -55px -90px;
215 | background-repeat: no-repeat;
216 | }
217 |
218 | #fancybox-left, #fancybox-right {
219 | position: absolute;
220 | bottom: 0px;
221 | height: 100%;
222 | width: 35%;
223 | cursor: pointer;
224 | outline: none;
225 | background-image: url('blank.gif');
226 | z-index: 1102;
227 | display: none;
228 | }
229 |
230 | #fancybox-left {
231 | left: 0px;
232 | }
233 |
234 | #fancybox-right {
235 | right: 0px;
236 | }
237 |
238 | #fancybox-left-ico, #fancybox-right-ico {
239 | position: absolute;
240 | top: 50%;
241 | left: -9999px;
242 | width: 30px;
243 | height: 30px;
244 | margin-top: -15px;
245 | cursor: pointer;
246 | z-index: 1102;
247 | display: block;
248 | }
249 |
250 | #fancybox-left-ico {
251 | background-image: url('fancybox.png');
252 | background-position: -40px -30px;
253 | }
254 |
255 | #fancybox-right-ico {
256 | background-image: url('fancybox.png');
257 | background-position: -40px -60px;
258 | }
259 |
260 | #fancybox-left:hover, #fancybox-right:hover {
261 | visibility: visible; /* IE6 */
262 | }
263 |
264 | #fancybox-left:hover span {
265 | left: 20px;
266 | }
267 |
268 | #fancybox-right:hover span {
269 | left: auto;
270 | right: 20px;
271 | }
272 |
273 | .fancy-bg {
274 | position: absolute;
275 | padding: 0;
276 | margin: 0;
277 | border: 0;
278 | width: 20px;
279 | height: 20px;
280 | z-index: 1001;
281 | }
282 |
283 | #fancy-bg-n {
284 | top: -20px;
285 | left: 0;
286 | width: 100%;
287 | background-image: url('fancybox-x.png');
288 | }
289 |
290 | #fancy-bg-ne {
291 | top: -20px;
292 | right: -20px;
293 | background-image: url('fancybox.png');
294 | background-position: -40px -162px;
295 | }
296 |
297 | #fancy-bg-e {
298 | top: 0;
299 | right: -20px;
300 | height: 100%;
301 | background-image: url('fancybox-y.png');
302 | background-position: -20px 0px;
303 | }
304 |
305 | #fancy-bg-se {
306 | bottom: -20px;
307 | right: -20px;
308 | background-image: url('fancybox.png');
309 | background-position: -40px -182px;
310 | }
311 |
312 | #fancy-bg-s {
313 | bottom: -20px;
314 | left: 0;
315 | width: 100%;
316 | background-image: url('fancybox-x.png');
317 | background-position: 0px -20px;
318 | }
319 |
320 | #fancy-bg-sw {
321 | bottom: -20px;
322 | left: -20px;
323 | background-image: url('fancybox.png');
324 | background-position: -40px -142px;
325 | }
326 |
327 | #fancy-bg-w {
328 | top: 0;
329 | left: -20px;
330 | height: 100%;
331 | background-image: url('fancybox-y.png');
332 | }
333 |
334 | #fancy-bg-nw {
335 | top: -20px;
336 | left: -20px;
337 | background-image: url('fancybox.png');
338 | background-position: -40px -122px;
339 | }
340 |
341 | /* IE */
342 |
343 | #fancybox-loading.fancybox-ie div { background: transparent; filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src='fancybox/fancy_loading.png', sizingMethod='scale'); }
344 | .fancybox-ie #fancybox-close { background: transparent; filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src='fancybox/fancy_close.png', sizingMethod='scale'); }
345 |
346 | .fancybox-ie #fancybox-title-over { background: transparent; filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src='fancybox/fancy_title_over.png', sizingMethod='scale'); zoom: 1; }
347 | .fancybox-ie #fancybox-title-left { background: transparent; filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src='fancybox/fancy_title_left.png', sizingMethod='scale'); }
348 | .fancybox-ie #fancybox-title-main { background: transparent; filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src='fancybox/fancy_title_main.png', sizingMethod='scale'); }
349 | .fancybox-ie #fancybox-title-right { background: transparent; filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src='fancybox/fancy_title_right.png', sizingMethod='scale'); }
350 |
351 | .fancybox-ie #fancybox-left-ico { background: transparent; filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src='fancybox/fancy_nav_left.png', sizingMethod='scale'); }
352 | .fancybox-ie #fancybox-right-ico { background: transparent; filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src='fancybox/fancy_nav_right.png', sizingMethod='scale'); }
353 |
354 | .fancybox-ie .fancy-bg { background: transparent !important; }
355 |
356 | .fancybox-ie #fancy-bg-n { filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src='fancybox/fancy_shadow_n.png', sizingMethod='scale'); }
357 | .fancybox-ie #fancy-bg-ne { filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src='fancybox/fancy_shadow_ne.png', sizingMethod='scale'); }
358 | .fancybox-ie #fancy-bg-e { filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src='fancybox/fancy_shadow_e.png', sizingMethod='scale'); }
359 | .fancybox-ie #fancy-bg-se { filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src='fancybox/fancy_shadow_se.png', sizingMethod='scale'); }
360 | .fancybox-ie #fancy-bg-s { filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src='fancybox/fancy_shadow_s.png', sizingMethod='scale'); }
361 | .fancybox-ie #fancy-bg-sw { filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src='fancybox/fancy_shadow_sw.png', sizingMethod='scale'); }
362 | .fancybox-ie #fancy-bg-w { filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src='fancybox/fancy_shadow_w.png', sizingMethod='scale'); }
363 | .fancybox-ie #fancy-bg-nw { filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src='fancybox/fancy_shadow_nw.png', sizingMethod='scale'); }
364 |
--------------------------------------------------------------------------------
/style/unused/assets/base.css:
--------------------------------------------------------------------------------
1 | html,
2 | body {
3 | margin: 0;
4 | padding: 0;
5 | }
6 |
7 | button {
8 | margin: 0;
9 | padding: 0;
10 | border: 0;
11 | background: none;
12 | font-size: 100%;
13 | vertical-align: baseline;
14 | font-family: inherit;
15 | color: inherit;
16 | -webkit-appearance: none;
17 | /*-moz-appearance: none;*/
18 | -ms-appearance: none;
19 | -o-appearance: none;
20 | appearance: none;
21 | }
22 |
23 | body {
24 | font: 14px 'Helvetica Neue', Helvetica, Arial, sans-serif;
25 | line-height: 1.4em;
26 | background: #eaeaea url('bg.png');
27 | color: #4d4d4d;
28 | width: 550px;
29 | margin: 0 auto;
30 | -webkit-font-smoothing: antialiased;
31 | -moz-font-smoothing: antialiased;
32 | -ms-font-smoothing: antialiased;
33 | -o-font-smoothing: antialiased;
34 | font-smoothing: antialiased;
35 | }
36 |
37 | #todoapp {
38 | background: #fff;
39 | background: rgba(255, 255, 255, 0.9);
40 | margin: 130px 0 40px 0;
41 | border: 1px solid #ccc;
42 | position: relative;
43 | border-top-left-radius: 2px;
44 | border-top-right-radius: 2px;
45 | box-shadow: 0 2px 6px 0 rgba(0, 0, 0, 0.2),
46 | 0 25px 50px 0 rgba(0, 0, 0, 0.15);
47 | }
48 |
49 | #todoapp:before {
50 | content: '';
51 | border-left: 1px solid #f5d6d6;
52 | border-right: 1px solid #f5d6d6;
53 | width: 2px;
54 | position: absolute;
55 | top: 0;
56 | left: 40px;
57 | height: 100%;
58 | }
59 |
60 | #todoapp input::-webkit-input-placeholder {
61 | font-style: italic;
62 | }
63 |
64 | #todoapp input:-moz-placeholder {
65 | font-style: italic;
66 | color: #a9a9a9;
67 | }
68 |
69 | #todoapp h1 {
70 | position: absolute;
71 | top: -120px;
72 | width: 100%;
73 | font-size: 70px;
74 | font-weight: bold;
75 | text-align: center;
76 | color: #b3b3b3;
77 | color: rgba(255, 255, 255, 0.3);
78 | text-shadow: -1px -1px rgba(0, 0, 0, 0.2);
79 | -webkit-text-rendering: optimizeLegibility;
80 | -moz-text-rendering: optimizeLegibility;
81 | -ms-text-rendering: optimizeLegibility;
82 | -o-text-rendering: optimizeLegibility;
83 | text-rendering: optimizeLegibility;
84 | }
85 |
86 | #header {
87 | padding-top: 15px;
88 | border-radius: inherit;
89 | }
90 |
91 | #header:before {
92 | content: '';
93 | position: absolute;
94 | top: 0;
95 | right: 0;
96 | left: 0;
97 | height: 15px;
98 | z-index: 2;
99 | border-bottom: 1px solid #6c615c;
100 | background: #8d7d77;
101 | background: -webkit-gradient(linear, left top, left bottom, from(rgba(132, 110, 100, 0.8)),to(rgba(101, 84, 76, 0.8)));
102 | background: -webkit-linear-gradient(top, rgba(132, 110, 100, 0.8), rgba(101, 84, 76, 0.8));
103 | background: -moz-linear-gradient(top, rgba(132, 110, 100, 0.8), rgba(101, 84, 76, 0.8));
104 | background: -o-linear-gradient(top, rgba(132, 110, 100, 0.8), rgba(101, 84, 76, 0.8));
105 | background: -ms-linear-gradient(top, rgba(132, 110, 100, 0.8), rgba(101, 84, 76, 0.8));
106 | background: linear-gradient(top, rgba(132, 110, 100, 0.8), rgba(101, 84, 76, 0.8));
107 | filter: progid:DXImageTransform.Microsoft.gradient(GradientType=0,StartColorStr='#9d8b83', EndColorStr='#847670');
108 | border-top-left-radius: 1px;
109 | border-top-right-radius: 1px;
110 | }
111 |
112 | #new-todo,
113 | .edit {
114 | position: relative;
115 | margin: 0;
116 | width: 100%;
117 | font-size: 24px;
118 | font-family: inherit;
119 | line-height: 1.4em;
120 | border: 0;
121 | outline: none;
122 | color: inherit;
123 | padding: 6px;
124 | border: 1px solid #999;
125 | box-shadow: inset 0 -1px 5px 0 rgba(0, 0, 0, 0.2);
126 | -webkit-box-sizing: border-box;
127 | -moz-box-sizing: border-box;
128 | -ms-box-sizing: border-box;
129 | -o-box-sizing: border-box;
130 | box-sizing: border-box;
131 | -webkit-font-smoothing: antialiased;
132 | -moz-font-smoothing: antialiased;
133 | -ms-font-smoothing: antialiased;
134 | -o-font-smoothing: antialiased;
135 | font-smoothing: antialiased;
136 | }
137 |
138 | #new-todo {
139 | padding: 16px 16px 16px 60px;
140 | border: none;
141 | background: rgba(0, 0, 0, 0.02);
142 | z-index: 2;
143 | box-shadow: none;
144 | }
145 |
146 | #main {
147 | position: relative;
148 | z-index: 2;
149 | border-top: 1px dotted #adadad;
150 | }
151 |
152 | label[for='toggle-all'] {
153 | display: none;
154 | }
155 |
156 | #toggle-all {
157 | position: absolute;
158 | top: -56px;
159 | left: -15px;
160 | width: 65px;
161 | height: 41px;
162 | text-align: center;
163 | border: none; /* Mobile Safari */
164 | -webkit-appearance: none;
165 | /*-moz-appearance: none;*/
166 | -ms-appearance: none;
167 | -o-appearance: none;
168 | appearance: none;
169 | -webkit-transform: rotate(90deg);
170 | /*-moz-transform: rotate(90deg);*/
171 | -ms-transform: rotate(90deg);
172 | /*-o-transform: rotate(90deg);*/
173 | transform: rotate(90deg);
174 | }
175 |
176 | #toggle-all:before {
177 | content: '»';
178 | font-size: 28px;
179 | color: #d9d9d9;
180 | padding: 0 25px 7px;
181 | }
182 |
183 | #toggle-all:checked:before {
184 | color: #737373;
185 | }
186 |
187 | #todo-list {
188 | margin: 0;
189 | padding: 0;
190 | list-style: none;
191 | }
192 |
193 | #todo-list li {
194 | position: relative;
195 | font-size: 24px;
196 | border-bottom: 1px dotted #ccc;
197 | }
198 |
199 | #todo-list li:last-child {
200 | border-bottom: none;
201 | }
202 |
203 | #todo-list li.editing {
204 | border-bottom: none;
205 | padding: 0;
206 | }
207 |
208 | #todo-list li.editing .edit {
209 | display: block;
210 | width: 506px;
211 | padding: 13px 17px 12px 17px;
212 | margin: 0 0 0 43px;
213 | }
214 |
215 | #todo-list li.editing .view {
216 | display: none;
217 | }
218 |
219 | #todo-list li .toggle {
220 | text-align: center;
221 | width: 40px;
222 | height: 40px;
223 | position: absolute;
224 | top: 0;
225 | bottom: 0;
226 | margin: auto 0;
227 | border: none; /* Mobile Safari */
228 | -webkit-appearance: none;
229 | /*-moz-appearance: none;*/
230 | -ms-appearance: none;
231 | -o-appearance: none;
232 | appearance: none;
233 | }
234 |
235 | #todo-list li .toggle:after {
236 | font-size: 18px;
237 | content: '✔';
238 | line-height: 43px; /* 40 + a couple of pixels visual adjustment */
239 | font-size: 20px;
240 | color: #d9d9d9;
241 | text-shadow: 0 -1px 0 #bfbfbf;
242 | }
243 |
244 | #todo-list li .toggle:checked:after {
245 | color: #85ada7;
246 | text-shadow: 0 1px 0 #669991;
247 | bottom: 1px;
248 | position: relative;
249 | }
250 |
251 | #todo-list li label {
252 | word-break: break-word;
253 | padding: 15px;
254 | margin-left: 45px;
255 | display: block;
256 | line-height: 1.2;
257 | -webkit-transition: color 0.4s;
258 | -moz-transition: color 0.4s;
259 | -ms-transition: color 0.4s;
260 | -o-transition: color 0.4s;
261 | transition: color 0.4s;
262 | }
263 |
264 | #todo-list li.completed label {
265 | color: #a9a9a9;
266 | text-decoration: line-through;
267 | }
268 |
269 | #todo-list li .destroy {
270 | display: none;
271 | position: absolute;
272 | top: 0;
273 | right: 10px;
274 | bottom: 0;
275 | width: 40px;
276 | height: 40px;
277 | margin: auto 0;
278 | font-size: 22px;
279 | color: #a88a8a;
280 | -webkit-transition: all 0.2s;
281 | -moz-transition: all 0.2s;
282 | -ms-transition: all 0.2s;
283 | -o-transition: all 0.2s;
284 | transition: all 0.2s;
285 | }
286 |
287 | #todo-list li .destroy:hover {
288 | text-shadow: 0 0 1px #000,
289 | 0 0 10px rgba(199, 107, 107, 0.8);
290 | -webkit-transform: scale(1.3);
291 | -moz-transform: scale(1.3);
292 | -ms-transform: scale(1.3);
293 | -o-transform: scale(1.3);
294 | transform: scale(1.3);
295 | }
296 |
297 | #todo-list li .destroy:after {
298 | content: '✖';
299 | }
300 |
301 | #todo-list li:hover .destroy {
302 | display: block;
303 | }
304 |
305 | #todo-list li .edit {
306 | display: none;
307 | }
308 |
309 | #todo-list li.editing:last-child {
310 | margin-bottom: -1px;
311 | }
312 |
313 | #footer {
314 | color: #777;
315 | padding: 0 15px;
316 | position: absolute;
317 | right: 0;
318 | bottom: -31px;
319 | left: 0;
320 | height: 20px;
321 | z-index: 1;
322 | text-align: center;
323 | }
324 |
325 | #footer:before {
326 | content: '';
327 | position: absolute;
328 | right: 0;
329 | bottom: 31px;
330 | left: 0;
331 | height: 50px;
332 | z-index: -1;
333 | box-shadow: 0 1px 1px rgba(0, 0, 0, 0.3),
334 | 0 6px 0 -3px rgba(255, 255, 255, 0.8),
335 | 0 7px 1px -3px rgba(0, 0, 0, 0.3),
336 | 0 43px 0 -6px rgba(255, 255, 255, 0.8),
337 | 0 44px 2px -6px rgba(0, 0, 0, 0.2);
338 | }
339 |
340 | #todo-count {
341 | float: left;
342 | text-align: left;
343 | }
344 |
345 | #filters {
346 | margin: 0;
347 | padding: 0;
348 | list-style: none;
349 | position: absolute;
350 | right: 0;
351 | left: 0;
352 | }
353 |
354 | #filters li {
355 | display: inline;
356 | }
357 |
358 | #filters li a {
359 | color: #83756f;
360 | margin: 2px;
361 | text-decoration: none;
362 | }
363 |
364 | #filters li a.selected {
365 | font-weight: bold;
366 | }
367 |
368 | #clear-completed {
369 | float: right;
370 | position: relative;
371 | line-height: 20px;
372 | text-decoration: none;
373 | background: rgba(0, 0, 0, 0.1);
374 | font-size: 11px;
375 | padding: 0 10px;
376 | border-radius: 3px;
377 | box-shadow: 0 -1px 0 0 rgba(0, 0, 0, 0.2);
378 | }
379 |
380 | #clear-completed:hover {
381 | background: rgba(0, 0, 0, 0.15);
382 | box-shadow: 0 -1px 0 0 rgba(0, 0, 0, 0.3);
383 | }
384 |
385 | #info {
386 | margin: 65px auto 0;
387 | color: #a6a6a6;
388 | font-size: 12px;
389 | text-shadow: 0 1px 0 rgba(255, 255, 255, 0.7);
390 | text-align: center;
391 | }
392 |
393 | #info a {
394 | color: inherit;
395 | }
396 |
397 | /*
398 | Hack to remove background from Mobile Safari.
399 | Can't use it globally since it destroys checkboxes in Firefox and Opera
400 | */
401 | @media screen and (-webkit-min-device-pixel-ratio:0) {
402 | #toggle-all,
403 | #todo-list li .toggle {
404 | background: none;
405 | }
406 | }
407 |
--------------------------------------------------------------------------------
/assets/6c3e0ad6/css/screen.css:
--------------------------------------------------------------------------------
1 | /* -----------------------------------------------------------------------
2 |
3 |
4 | Blueprint CSS Framework 0.9
5 | http://blueprintcss.org
6 |
7 | * Copyright (c) 2007-Present. See LICENSE for more info.
8 | * See README for instructions on how to use Blueprint.
9 | * For credits and origins, see AUTHORS.
10 | * This is a compressed file. See the sources in the 'src' directory.
11 |
12 | ----------------------------------------------------------------------- */
13 |
14 | /* reset.css */
15 | html, body, div, span, object, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, pre, a, abbr, acronym, address, code, del, dfn, em, img, q, dl, dt, dd, ol, ul, li, fieldset, form, label, legend, table, caption, tbody, tfoot, thead, tr, th, td {margin:0;padding:0;border:0;font-weight:inherit;font-style:inherit;font-size:100%;font-family:inherit;vertical-align:baseline;}
16 | body {line-height:1.5;}
17 | table {border-collapse:separate;border-spacing:0;}
18 | caption, th, td {text-align:left;font-weight:normal;}
19 | table, td, th {vertical-align:middle;}
20 | blockquote:before, blockquote:after, q:before, q:after {content:"";}
21 | blockquote, q {quotes:"" "";}
22 | a img {border:none;}
23 |
24 | /* typography.css */
25 | html {font-size:100.01%;}
26 | body {font-size:75%;color:#222;background:#fff;font-family:"Helvetica Neue", Arial, Helvetica, sans-serif;}
27 | h1, h2, h3, h4, h5, h6 {font-weight:normal;color:#111;}
28 | h1 {font-size:2em;line-height:1;margin-bottom:0.5em;}
29 | h2 {font-size:1.6em;margin-bottom:0.75em;}
30 | h3 {font-size:1.4em;line-height:1;margin-bottom:1em;}
31 | h4 {font-size:1.2em;line-height:1.25;margin-bottom:1.25em;}
32 | h5 {font-size:1em;font-weight:bold;margin-bottom:1.5em;}
33 | h6 {font-size:1em;font-weight:bold;}
34 | h1 img, h2 img, h3 img, h4 img, h5 img, h6 img {margin:0;}
35 | p {margin:0 0 1.5em;}
36 | p img.left {float:left;margin:1.5em 1.5em 1.5em 0;padding:0;}
37 | p img.right {float:right;margin:1.5em 0 1.5em 1.5em;}
38 | a:focus, a:hover {color:#000;}
39 | a {color:#009;text-decoration:underline;}
40 | blockquote {margin:1.5em;color:#666;font-style:italic;}
41 | strong {font-weight:bold;}
42 | em, dfn {font-style:italic;}
43 | dfn {font-weight:bold;}
44 | sup, sub {line-height:0;}
45 | abbr, acronym {border-bottom:1px dotted #666;}
46 | address {margin:0 0 1.5em;font-style:italic;}
47 | del {color:#666;}
48 | pre {margin:1.5em 0;white-space:pre;}
49 | pre, code, tt {font:1em 'andale mono', 'lucida console', monospace;line-height:1.5;}
50 | li ul, li ol {margin:0;}
51 | ul, ol {margin:0 1.5em 1.5em 0;padding-left:3.333em;}
52 | ul {list-style-type:disc;}
53 | ol {list-style-type:decimal;}
54 | dl {margin:0 0 1.5em 0;}
55 | dl dt {font-weight:bold;}
56 | dd {margin-left:1.5em;}
57 | table {margin-bottom:1.4em;width:100%;}
58 | th {font-weight:bold;}
59 | thead th {background:#c3d9ff;}
60 | th, td, caption {padding:4px 10px 4px 5px;}
61 | tfoot {font-style:italic;}
62 | caption {background:#eee;}
63 | .small {font-size:.8em;margin-bottom:1.875em;line-height:1.875em;}
64 | .large {font-size:1.2em;line-height:2.5em;margin-bottom:1.25em;}
65 | .hide {display:none;}
66 | .quiet {color:#666;}
67 | .loud {color:#000;}
68 | .highlight {background:#ff0;}
69 | .added {background:#060;color:#fff;}
70 | .removed {background:#900;color:#fff;}
71 | .first {margin-left:0;padding-left:0;}
72 | .last {margin-right:0;padding-right:0;}
73 | .top {margin-top:0;padding-top:0;}
74 | .bottom {margin-bottom:0;padding-bottom:0;}
75 |
76 | /* grid.css */
77 | .container {width:950px;margin:0 auto;}
78 | .showgrid {background:url(src/grid.png);}
79 | .column, div.span-1, div.span-2, div.span-3, div.span-4, div.span-5, div.span-6, div.span-7, div.span-8, div.span-9, div.span-10, div.span-11, div.span-12, div.span-13, div.span-14, div.span-15, div.span-16, div.span-17, div.span-18, div.span-19, div.span-20, div.span-21, div.span-22, div.span-23, div.span-24 {float:left;margin-right:10px;}
80 | .last, div.last {margin-right:0;}
81 | .span-1 {width:30px;}
82 | .span-2 {width:70px;}
83 | .span-3 {width:110px;}
84 | .span-4 {width:150px;}
85 | .span-5 {width:190px;}
86 | .span-6 {width:230px;}
87 | .span-7 {width:270px;}
88 | .span-8 {width:310px;}
89 | .span-9 {width:350px;}
90 | .span-10 {width:390px;}
91 | .span-11 {width:430px;}
92 | .span-12 {width:470px;}
93 | .span-13 {width:510px;}
94 | .span-14 {width:550px;}
95 | .span-15 {width:590px;}
96 | .span-16 {width:630px;}
97 | .span-17 {width:670px;}
98 | .span-18 {width:710px;}
99 | .span-19 {width:750px;}
100 | .span-20 {width:790px;}
101 | .span-21 {width:830px;}
102 | .span-22 {width:870px;}
103 | .span-23 {width:910px;}
104 | .span-24, div.span-24 {width:950px;margin-right:0;}
105 | input.span-1, textarea.span-1, input.span-2, textarea.span-2, input.span-3, textarea.span-3, input.span-4, textarea.span-4, input.span-5, textarea.span-5, input.span-6, textarea.span-6, input.span-7, textarea.span-7, input.span-8, textarea.span-8, input.span-9, textarea.span-9, input.span-10, textarea.span-10, input.span-11, textarea.span-11, input.span-12, textarea.span-12, input.span-13, textarea.span-13, input.span-14, textarea.span-14, input.span-15, textarea.span-15, input.span-16, textarea.span-16, input.span-17, textarea.span-17, input.span-18, textarea.span-18, input.span-19, textarea.span-19, input.span-20, textarea.span-20, input.span-21, textarea.span-21, input.span-22, textarea.span-22, input.span-23, textarea.span-23, input.span-24, textarea.span-24 {border-left-width:1px!important;border-right-width:1px!important;padding-left:5px!important;padding-right:5px!important;}
106 | input.span-1, textarea.span-1 {width:18px!important;}
107 | input.span-2, textarea.span-2 {width:58px!important;}
108 | input.span-3, textarea.span-3 {width:98px!important;}
109 | input.span-4, textarea.span-4 {width:138px!important;}
110 | input.span-5, textarea.span-5 {width:178px!important;}
111 | input.span-6, textarea.span-6 {width:218px!important;}
112 | input.span-7, textarea.span-7 {width:258px!important;}
113 | input.span-8, textarea.span-8 {width:298px!important;}
114 | input.span-9, textarea.span-9 {width:338px!important;}
115 | input.span-10, textarea.span-10 {width:378px!important;}
116 | input.span-11, textarea.span-11 {width:418px!important;}
117 | input.span-12, textarea.span-12 {width:458px!important;}
118 | input.span-13, textarea.span-13 {width:498px!important;}
119 | input.span-14, textarea.span-14 {width:538px!important;}
120 | input.span-15, textarea.span-15 {width:578px!important;}
121 | input.span-16, textarea.span-16 {width:618px!important;}
122 | input.span-17, textarea.span-17 {width:658px!important;}
123 | input.span-18, textarea.span-18 {width:698px!important;}
124 | input.span-19, textarea.span-19 {width:738px!important;}
125 | input.span-20, textarea.span-20 {width:778px!important;}
126 | input.span-21, textarea.span-21 {width:818px!important;}
127 | input.span-22, textarea.span-22 {width:858px!important;}
128 | input.span-23, textarea.span-23 {width:898px!important;}
129 | input.span-24, textarea.span-24 {width:938px!important;}
130 | .append-1 {padding-right:40px;}
131 | .append-2 {padding-right:80px;}
132 | .append-3 {padding-right:120px;}
133 | .append-4 {padding-right:160px;}
134 | .append-5 {padding-right:200px;}
135 | .append-6 {padding-right:240px;}
136 | .append-7 {padding-right:280px;}
137 | .append-8 {padding-right:320px;}
138 | .append-9 {padding-right:360px;}
139 | .append-10 {padding-right:400px;}
140 | .append-11 {padding-right:440px;}
141 | .append-12 {padding-right:480px;}
142 | .append-13 {padding-right:520px;}
143 | .append-14 {padding-right:560px;}
144 | .append-15 {padding-right:600px;}
145 | .append-16 {padding-right:640px;}
146 | .append-17 {padding-right:680px;}
147 | .append-18 {padding-right:720px;}
148 | .append-19 {padding-right:760px;}
149 | .append-20 {padding-right:800px;}
150 | .append-21 {padding-right:840px;}
151 | .append-22 {padding-right:880px;}
152 | .append-23 {padding-right:920px;}
153 | .prepend-1 {padding-left:40px;}
154 | .prepend-2 {padding-left:80px;}
155 | .prepend-3 {padding-left:120px;}
156 | .prepend-4 {padding-left:160px;}
157 | .prepend-5 {padding-left:200px;}
158 | .prepend-6 {padding-left:240px;}
159 | .prepend-7 {padding-left:280px;}
160 | .prepend-8 {padding-left:320px;}
161 | .prepend-9 {padding-left:360px;}
162 | .prepend-10 {padding-left:400px;}
163 | .prepend-11 {padding-left:440px;}
164 | .prepend-12 {padding-left:480px;}
165 | .prepend-13 {padding-left:520px;}
166 | .prepend-14 {padding-left:560px;}
167 | .prepend-15 {padding-left:600px;}
168 | .prepend-16 {padding-left:640px;}
169 | .prepend-17 {padding-left:680px;}
170 | .prepend-18 {padding-left:720px;}
171 | .prepend-19 {padding-left:760px;}
172 | .prepend-20 {padding-left:800px;}
173 | .prepend-21 {padding-left:840px;}
174 | .prepend-22 {padding-left:880px;}
175 | .prepend-23 {padding-left:920px;}
176 | div.border {padding-right:4px;margin-right:5px;border-right:1px solid #eee;}
177 | div.colborder {padding-right:24px;margin-right:25px;border-right:1px solid #eee;}
178 | .pull-1 {margin-left:-40px;}
179 | .pull-2 {margin-left:-80px;}
180 | .pull-3 {margin-left:-120px;}
181 | .pull-4 {margin-left:-160px;}
182 | .pull-5 {margin-left:-200px;}
183 | .pull-6 {margin-left:-240px;}
184 | .pull-7 {margin-left:-280px;}
185 | .pull-8 {margin-left:-320px;}
186 | .pull-9 {margin-left:-360px;}
187 | .pull-10 {margin-left:-400px;}
188 | .pull-11 {margin-left:-440px;}
189 | .pull-12 {margin-left:-480px;}
190 | .pull-13 {margin-left:-520px;}
191 | .pull-14 {margin-left:-560px;}
192 | .pull-15 {margin-left:-600px;}
193 | .pull-16 {margin-left:-640px;}
194 | .pull-17 {margin-left:-680px;}
195 | .pull-18 {margin-left:-720px;}
196 | .pull-19 {margin-left:-760px;}
197 | .pull-20 {margin-left:-800px;}
198 | .pull-21 {margin-left:-840px;}
199 | .pull-22 {margin-left:-880px;}
200 | .pull-23 {margin-left:-920px;}
201 | .pull-24 {margin-left:-960px;}
202 | .pull-1, .pull-2, .pull-3, .pull-4, .pull-5, .pull-6, .pull-7, .pull-8, .pull-9, .pull-10, .pull-11, .pull-12, .pull-13, .pull-14, .pull-15, .pull-16, .pull-17, .pull-18, .pull-19, .pull-20, .pull-21, .pull-22, .pull-23, .pull-24 {float:left;position:relative;}
203 | .push-1 {margin:0 -40px 1.5em 40px;}
204 | .push-2 {margin:0 -80px 1.5em 80px;}
205 | .push-3 {margin:0 -120px 1.5em 120px;}
206 | .push-4 {margin:0 -160px 1.5em 160px;}
207 | .push-5 {margin:0 -200px 1.5em 200px;}
208 | .push-6 {margin:0 -240px 1.5em 240px;}
209 | .push-7 {margin:0 -280px 1.5em 280px;}
210 | .push-8 {margin:0 -320px 1.5em 320px;}
211 | .push-9 {margin:0 -360px 1.5em 360px;}
212 | .push-10 {margin:0 -400px 1.5em 400px;}
213 | .push-11 {margin:0 -440px 1.5em 440px;}
214 | .push-12 {margin:0 -480px 1.5em 480px;}
215 | .push-13 {margin:0 -520px 1.5em 520px;}
216 | .push-14 {margin:0 -560px 1.5em 560px;}
217 | .push-15 {margin:0 -600px 1.5em 600px;}
218 | .push-16 {margin:0 -640px 1.5em 640px;}
219 | .push-17 {margin:0 -680px 1.5em 680px;}
220 | .push-18 {margin:0 -720px 1.5em 720px;}
221 | .push-19 {margin:0 -760px 1.5em 760px;}
222 | .push-20 {margin:0 -800px 1.5em 800px;}
223 | .push-21 {margin:0 -840px 1.5em 840px;}
224 | .push-22 {margin:0 -880px 1.5em 880px;}
225 | .push-23 {margin:0 -920px 1.5em 920px;}
226 | .push-24 {margin:0 -960px 1.5em 960px;}
227 | .push-1, .push-2, .push-3, .push-4, .push-5, .push-6, .push-7, .push-8, .push-9, .push-10, .push-11, .push-12, .push-13, .push-14, .push-15, .push-16, .push-17, .push-18, .push-19, .push-20, .push-21, .push-22, .push-23, .push-24 {float:right;position:relative;}
228 | .prepend-top {margin-top:1.5em;}
229 | .append-bottom {margin-bottom:1.5em;}
230 | .box {padding:1.5em;margin-bottom:1.5em;background:#E5ECF9;}
231 | hr {background:#ddd;color:#ddd;clear:both;float:none;width:100%;height:.1em;margin:0 0 1.45em;border:none;}
232 | hr.space {background:#fff;color:#fff;visibility:hidden;}
233 | .clearfix:after, .container:after {content:"\0020";display:block;height:0;clear:both;visibility:hidden;overflow:hidden;}
234 | .clearfix, .container {display:block;}
235 | .clear {clear:both;}
--------------------------------------------------------------------------------
/style/unused/lib/underscore-min.js:
--------------------------------------------------------------------------------
1 | // Underscore.js 1.3.3
2 | // (c) 2009-2012 Jeremy Ashkenas, DocumentCloud Inc.
3 | // Underscore is freely distributable under the MIT license.
4 | // Portions of Underscore are inspired or borrowed from Prototype,
5 | // Oliver Steele's Functional, and John Resig's Micro-Templating.
6 | // For all details and documentation:
7 | // http://documentcloud.github.com/underscore
8 | (function(){function r(a,c,d){if(a===c)return 0!==a||1/a==1/c;if(null==a||null==c)return a===c;a._chain&&(a=a._wrapped);c._chain&&(c=c._wrapped);if(a.isEqual&&b.isFunction(a.isEqual))return a.isEqual(c);if(c.isEqual&&b.isFunction(c.isEqual))return c.isEqual(a);var e=l.call(a);if(e!=l.call(c))return!1;switch(e){case "[object String]":return a==""+c;case "[object Number]":return a!=+a?c!=+c:0==a?1/a==1/c:a==+c;case "[object Date]":case "[object Boolean]":return+a==+c;case "[object RegExp]":return a.source==
9 | c.source&&a.global==c.global&&a.multiline==c.multiline&&a.ignoreCase==c.ignoreCase}if("object"!=typeof a||"object"!=typeof c)return!1;for(var f=d.length;f--;)if(d[f]==a)return!0;d.push(a);var f=0,g=!0;if("[object Array]"==e){if(f=a.length,g=f==c.length)for(;f--&&(g=f in a==f in c&&r(a[f],c[f],d)););}else{if("constructor"in a!="constructor"in c||a.constructor!=c.constructor)return!1;for(var h in a)if(b.has(a,h)&&(f++,!(g=b.has(c,h)&&r(a[h],c[h],d))))break;if(g){for(h in c)if(b.has(c,h)&&!f--)break;
10 | g=!f}}d.pop();return g}var s=this,I=s._,o={},k=Array.prototype,p=Object.prototype,i=k.slice,J=k.unshift,l=p.toString,K=p.hasOwnProperty,y=k.forEach,z=k.map,A=k.reduce,B=k.reduceRight,C=k.filter,D=k.every,E=k.some,q=k.indexOf,F=k.lastIndexOf,p=Array.isArray,L=Object.keys,t=Function.prototype.bind,b=function(a){return new m(a)};"undefined"!==typeof exports?("undefined"!==typeof module&&module.exports&&(exports=module.exports=b),exports._=b):s._=b;b.VERSION="1.3.3";var j=b.each=b.forEach=function(a,
11 | c,d){if(a!=null)if(y&&a.forEach===y)a.forEach(c,d);else if(a.length===+a.length)for(var e=0,f=a.length;e2;a==null&&(a=[]);if(A&&
12 | a.reduce===A){e&&(c=b.bind(c,e));return f?a.reduce(c,d):a.reduce(c)}j(a,function(a,b,i){if(f)d=c.call(e,d,a,b,i);else{d=a;f=true}});if(!f)throw new TypeError("Reduce of empty array with no initial value");return d};b.reduceRight=b.foldr=function(a,c,d,e){var f=arguments.length>2;a==null&&(a=[]);if(B&&a.reduceRight===B){e&&(c=b.bind(c,e));return f?a.reduceRight(c,d):a.reduceRight(c)}var g=b.toArray(a).reverse();e&&!f&&(c=b.bind(c,e));return f?b.reduce(g,c,d,e):b.reduce(g,c)};b.find=b.detect=function(a,
13 | c,b){var e;G(a,function(a,g,h){if(c.call(b,a,g,h)){e=a;return true}});return e};b.filter=b.select=function(a,c,b){var e=[];if(a==null)return e;if(C&&a.filter===C)return a.filter(c,b);j(a,function(a,g,h){c.call(b,a,g,h)&&(e[e.length]=a)});return e};b.reject=function(a,c,b){var e=[];if(a==null)return e;j(a,function(a,g,h){c.call(b,a,g,h)||(e[e.length]=a)});return e};b.every=b.all=function(a,c,b){var e=true;if(a==null)return e;if(D&&a.every===D)return a.every(c,b);j(a,function(a,g,h){if(!(e=e&&c.call(b,
14 | a,g,h)))return o});return!!e};var G=b.some=b.any=function(a,c,d){c||(c=b.identity);var e=false;if(a==null)return e;if(E&&a.some===E)return a.some(c,d);j(a,function(a,b,h){if(e||(e=c.call(d,a,b,h)))return o});return!!e};b.include=b.contains=function(a,c){var b=false;if(a==null)return b;if(q&&a.indexOf===q)return a.indexOf(c)!=-1;return b=G(a,function(a){return a===c})};b.invoke=function(a,c){var d=i.call(arguments,2);return b.map(a,function(a){return(b.isFunction(c)?c||a:a[c]).apply(a,d)})};b.pluck=
15 | function(a,c){return b.map(a,function(a){return a[c]})};b.max=function(a,c,d){if(!c&&b.isArray(a)&&a[0]===+a[0])return Math.max.apply(Math,a);if(!c&&b.isEmpty(a))return-Infinity;var e={computed:-Infinity};j(a,function(a,b,h){b=c?c.call(d,a,b,h):a;b>=e.computed&&(e={value:a,computed:b})});return e.value};b.min=function(a,c,d){if(!c&&b.isArray(a)&&a[0]===+a[0])return Math.min.apply(Math,a);if(!c&&b.isEmpty(a))return Infinity;var e={computed:Infinity};j(a,function(a,b,h){b=c?c.call(d,a,b,h):a;bd?1:0}),"value")};b.groupBy=function(a,c){var d={},e=b.isFunction(c)?c:function(a){return a[c]};
17 | j(a,function(a,b){var c=e(a,b);(d[c]||(d[c]=[])).push(a)});return d};b.sortedIndex=function(a,c,d){d||(d=b.identity);for(var e=0,f=a.length;e>1;d(a[g])=0})})};b.difference=function(a){var c=b.flatten(i.call(arguments,1),true);return b.filter(a,function(a){return!b.include(c,a)})};b.zip=function(){for(var a=
20 | i.call(arguments),c=b.max(b.pluck(a,"length")),d=Array(c),e=0;e=0;d--)b=[a[d].apply(this,b)];return b[0]}};b.after=function(a,b){return a<=0?b():function(){if(--a<1)return b.apply(this,arguments)}};b.keys=L||function(a){if(a!==Object(a))throw new TypeError("Invalid object");var c=[],d;for(d in a)b.has(a,d)&&(c[c.length]=d);return c};b.values=function(a){return b.map(a,b.identity)};b.functions=b.methods=function(a){var c=[],d;for(d in a)b.isFunction(a[d])&&
25 | c.push(d);return c.sort()};b.extend=function(a){j(i.call(arguments,1),function(b){for(var d in b)a[d]=b[d]});return a};b.pick=function(a){var c={};j(b.flatten(i.call(arguments,1)),function(b){b in a&&(c[b]=a[b])});return c};b.defaults=function(a){j(i.call(arguments,1),function(b){for(var d in b)a[d]==null&&(a[d]=b[d])});return a};b.clone=function(a){return!b.isObject(a)?a:b.isArray(a)?a.slice():b.extend({},a)};b.tap=function(a,b){b(a);return a};b.isEqual=function(a,b){return r(a,b,[])};b.isEmpty=
26 | function(a){if(a==null)return true;if(b.isArray(a)||b.isString(a))return a.length===0;for(var c in a)if(b.has(a,c))return false;return true};b.isElement=function(a){return!!(a&&a.nodeType==1)};b.isArray=p||function(a){return l.call(a)=="[object Array]"};b.isObject=function(a){return a===Object(a)};b.isArguments=function(a){return l.call(a)=="[object Arguments]"};b.isArguments(arguments)||(b.isArguments=function(a){return!(!a||!b.has(a,"callee"))});b.isFunction=function(a){return l.call(a)=="[object Function]"};
27 | b.isString=function(a){return l.call(a)=="[object String]"};b.isNumber=function(a){return l.call(a)=="[object Number]"};b.isFinite=function(a){return b.isNumber(a)&&isFinite(a)};b.isNaN=function(a){return a!==a};b.isBoolean=function(a){return a===true||a===false||l.call(a)=="[object Boolean]"};b.isDate=function(a){return l.call(a)=="[object Date]"};b.isRegExp=function(a){return l.call(a)=="[object RegExp]"};b.isNull=function(a){return a===null};b.isUndefined=function(a){return a===void 0};b.has=function(a,
28 | b){return K.call(a,b)};b.noConflict=function(){s._=I;return this};b.identity=function(a){return a};b.times=function(a,b,d){for(var e=0;e /g,">").replace(/"/g,""").replace(/'/g,"'").replace(/\//g,"/")};b.result=function(a,c){if(a==null)return null;var d=a[c];return b.isFunction(d)?d.call(a):d};b.mixin=function(a){j(b.functions(a),function(c){M(c,b[c]=a[c])})};var N=0;b.uniqueId=
29 | function(a){var b=N++;return a?a+b:b};b.templateSettings={evaluate:/<%([\s\S]+?)%>/g,interpolate:/<%=([\s\S]+?)%>/g,escape:/<%-([\s\S]+?)%>/g};var u=/.^/,n={"\\":"\\","'":"'",r:"\r",n:"\n",t:"\t",u2028:"\u2028",u2029:"\u2029"},v;for(v in n)n[n[v]]=v;var O=/\\|'|\r|\n|\t|\u2028|\u2029/g,P=/\\(\\|'|r|n|t|u2028|u2029)/g,w=function(a){return a.replace(P,function(a,b){return n[b]})};b.template=function(a,c,d){d=b.defaults(d||{},b.templateSettings);a="__p+='"+a.replace(O,function(a){return"\\"+n[a]}).replace(d.escape||
30 | u,function(a,b){return"'+\n_.escape("+w(b)+")+\n'"}).replace(d.interpolate||u,function(a,b){return"'+\n("+w(b)+")+\n'"}).replace(d.evaluate||u,function(a,b){return"';\n"+w(b)+"\n;__p+='"})+"';\n";d.variable||(a="with(obj||{}){\n"+a+"}\n");var a="var __p='';var print=function(){__p+=Array.prototype.join.call(arguments, '')};\n"+a+"return __p;\n",e=new Function(d.variable||"obj","_",a);if(c)return e(c,b);c=function(a){return e.call(this,a,b)};c.source="function("+(d.variable||"obj")+"){\n"+a+"}";return c};
31 | b.chain=function(a){return b(a).chain()};var m=function(a){this._wrapped=a};b.prototype=m.prototype;var x=function(a,c){return c?b(a).chain():a},M=function(a,c){m.prototype[a]=function(){var a=i.call(arguments);J.call(a,this._wrapped);return x(c.apply(b,a),this._chain)}};b.mixin(b);j("pop,push,reverse,shift,sort,splice,unshift".split(","),function(a){var b=k[a];m.prototype[a]=function(){var d=this._wrapped;b.apply(d,arguments);var e=d.length;(a=="shift"||a=="splice")&&e===0&&delete d[0];return x(d,
32 | this._chain)}});j(["concat","join","slice"],function(a){var b=k[a];m.prototype[a]=function(){return x(b.apply(this._wrapped,arguments),this._chain)}});m.prototype.chain=function(){this._chain=true;return this};m.prototype.value=function(){return this._wrapped}}).call(this);
33 |
--------------------------------------------------------------------------------