8c88600db086bed5e0456572722bbf62adb1773f
[atutor.git] / mods / ldap / jscripts / jqgrid / jquery.jqGrid.js
1 function jqGridInclude()\r
2 {\r
3     var pathtojsfiles = "/jscripts/jqgrid/js/packed/"; // need to be ajusted\r
4     // set include to false if you do not want some modules to be included\r
5     var combineIntoOne = false;\r
6     var combinedInclude = new Array();\r
7     var combinedIncludeURL = "combine.php?type=javascript&files=";\r
8     var minver = false;\r
9     var modules = [\r
10         { include: true, incfile:'grid.locale-en.js',minfile: 'min/grid.locale-en-min.js'}, // jqGrid translation\r
11 /*        { include: true, incfile:'grid.pack.js',minfile: ''},  */ // jqGrid all packecd\r
12         { include: true, incfile:'grid.base.js',minfile: 'min/grid.base-min.js'}, // jqGrid base\r
13         { include: true, incfile:'grid.common.js',minfile: 'min/grid.common-min.js' }, // jqGrid common for editing\r
14         { include: true, incfile:'grid.formedit.js',minfile: 'min/grid.formedit-min.js' }, // jqGrid Form editing\r
15         { include: true, incfile:'grid.inlinedit.js',minfile: 'min/grid.inlinedit-min.js' }, // jqGrid inline editing\r
16         { include: true, incfile:'grid.celledit.js',minfile: 'min/grid.celledit-min.js' }, // jqGrid cell editing\r
17         { include: true, incfile:'grid.subgrid.js',minfile: 'min/grid.subgrid-min.js'}, //jqGrid subgrid\r
18         { include: true, incfile:'grid.treegrid.js',minfile: 'min/grid.treegrid-min.js'}, //jqGrid treegrid\r
19         { include: true, incfile:'grid.custom.js',minfile: 'min/grid.custom-min.js'}, //jqGrid custom \r
20         { include: true, incfile:'grid.postext.js',minfile: 'min/grid.postext-min.js'}, //jqGrid postext\r
21         { include: true, incfile:'grid.tbltogrid.js',minfile: 'min/grid.tbltogrid-min.js'}, //jqGrid table to grid \r
22         { include: true, incfile:'grid.setcolumns.js',minfile: 'min/grid.setcolumns-min.js'} //jqGrid setcolumns\r
23     ];\r
24     var filename;\r
25     for(var i=0;i<modules.length; i++)\r
26     {\r
27         if(modules[i].include === true) {\r
28                 \r
29                 if (minver !== true) filename = pathtojsfiles+modules[i].incfile;\r
30                 else filename = pathtojsfiles+modules[i].minfile;\r
31                 if (combineIntoOne !== true) {\r
32                         if(jQuery.browser.safari || jQuery.browser.msie ) {\r
33                                 jQuery.ajax({url:filename,dataType:'script', async:false, cache: true});\r
34                         } else {\r
35                                 IncludeJavaScript(filename);\r
36                         }\r
37                 } else {\r
38                         combinedInclude[combinedInclude.length] = filename;\r
39             }\r
40         }\r
41     }\r
42         if ((combineIntoOne === true) && (combinedInclude.length>0) ) {\r
43                 var fileList = implode(",",combinedInclude);\r
44                 IncludeJavaScript(combinedIncludeURL+fileList);\r
45         }\r
46         function implode( glue, pieces ) {\r
47     // http://kevin.vanzonneveld.net\r
48     //original by: Kevin van Zonneveld (http://kevin.vanzonneveld.net)\r
49     //example 1: implode(' ', ['Kevin', 'van', 'Zonneveld']);\r
50     //returns 1: 'Kevin van Zonneveld'\r
51                 return ( ( pieces instanceof Array ) ? pieces.join ( glue ) : pieces );\r
52     };\r
53     \r
54     function IncludeJavaScript(jsFile)\r
55     {\r
56         var oHead = document.getElementsByTagName('head')[0];\r
57         var oScript = document.createElement('script');\r
58         oScript.type = 'text/javascript';\r
59         oScript.src = jsFile;\r
60         oHead.appendChild(oScript);        \r
61     };\r
62 };\r
63 jqGridInclude();