702fb0cb1de2f98b82c420fe57497fa21ad5d745
[redakcja.git] / project / static / js / app.js
1 /*global Class*/
2 var editor;
3 var panel_hooks;
4
5
6 (function(){
7   var initializing = false, fnTest = /xyz/.test(function(){xyz;}) ? /\b_super\b/ : /.*/;
8   this.Class = function(){};
9   Class.extend = function(prop) {
10     var _super = this.prototype;
11     initializing = true;
12     var prototype = new this();
13     initializing = false;
14     for (var name in prop) {
15       prototype[name] = typeof prop[name] == "function" &&
16         typeof _super[name] == "function" && fnTest.test(prop[name]) ?
17         (function(name, fn){
18           return function() {
19             var tmp = this._super;
20             this._super = _super[name];
21             var ret = fn.apply(this, arguments);       
22             this._super = tmp;           
23             return ret;
24           };
25         })(name, prop[name]) :
26         prop[name];
27     }   
28     function Class() {
29       if ( !initializing && this.init )
30         this.init.apply(this, arguments);
31     }
32     Class.prototype = prototype;
33     Class.constructor = Class;
34     Class.extend = arguments.callee;   
35     return Class;
36   };
37 })();
38
39 (function() {
40   var slice = Array.prototype.slice;
41   
42   function update(array, args) {
43     var arrayLength = array.length, length = args.length;
44     while (length--) array[arrayLength + length] = args[length];
45     return array;
46   };
47   
48   function merge(array, args) {
49     array = slice.call(array, 0);
50     return update(array, args);
51   };
52   
53   Function.prototype.bind = function(context) {
54     if (arguments.length < 2 && typeof arguments[0] === 'undefined') {
55       return this;
56     } 
57     var __method = this;
58     var args = slice.call(arguments, 1);
59     return function() {
60       var a = merge(args, arguments);
61       return __method.apply(context, a);
62     }
63   }
64   
65 })();
66  
67
68 $(function() {
69   var splitView = new SplitView('#panels');
70 });