Loading rico1 and rico3 files
[infodrom/rico3] / examples / php / LoadRicoClient.php
1 <?php\r
2 \r
3 $jsDir="../../ricoClient/js/";       // directory containing Rico's javascript files\r
4 $cssDir="../../ricoClient/css/";     // directory containing Rico's css files\r
5 $imgDir="../../ricoClient/images/";  // directory containing Rico's image files\r
6 $transDir=$jsDir."translations/";\r
7 $baselibsDir=$jsDir."baselibs/";\r
8 $grid_striping=true;       // apply row striping to LiveGrids?\r
9 $checkQueryString = true;  // load settings from QueryString? true for demo, false for production\r
10 $LoadBaseLib = true;       // load base Javascript library (prototype, jQuery, etc) from Rico directory?\r
11 $jQuery_theme_path = "http://ajax.googleapis.com/ajax/libs/jqueryui/1.7.2/themes/";\r
12 \r
13 if ($checkQueryString) {\r
14   $ricoLib=$_GET['lib'];\r
15   $ricoTheme=$_GET["theme"];\r
16   $ricoLogging=isset($_GET["log"]);\r
17 } else {\r
18   // set your production values here\r
19   $ricoLib="proto";    // base library (proto, jquery, moo, dojo, ext, or glow)\r
20   $ricoTheme="j-ui-lightness";  // jquery themes start with j-, rico themes start with r-\r
21   $ricoLogging=false;\r
22 }\r
23 \r
24 SetConfig();\r
25 LoadLib($ricoLib, $LoadBaseLib);\r
26 setLang();\r
27 LoadTheme($ricoTheme);\r
28 \r
29 \r
30 // initialize Rico\r
31 function SetConfig() {\r
32   global $jsDir,$cssDir,$imgDir,$ricoLogging;\r
33   echo "\n<script type='text/javascript'>\n";\r
34   echo "Rico_CONFIG = {\n";\r
35   if ($ricoLogging) echo "enableLogging: true,\n";\r
36   echo "jsDir: '" . $jsDir . "',\n";\r
37   echo "cssDir: '" . $cssDir . "',\n";\r
38   echo "imgDir: '" . $imgDir . "'\n";\r
39   echo "};";\r
40   echo "</script>\n";\r
41 }\r
42 \r
43 \r
44 function LoadLib($baseLib, $baseLoadFlag) {\r
45   global $baselibsDir,$transDir;\r
46   switch ($baseLib) {\r
47     case 'proto':\r
48       $baselib='prototype';\r
49       $adapter='2Proto';\r
50       break;\r
51     case 'jquery':\r
52       $baselib='jquery';\r
53       $adapter='2jQuery';\r
54       break;\r
55     case 'moo':\r
56       $baselib='mootools';\r
57       $adapter='2Moo';\r
58       break;\r
59     case 'dojo':\r
60       $baselib='dojo';\r
61       $adapter='2Dojo';\r
62       break;\r
63     case 'ext':\r
64       $baselib='ext-core';\r
65       $adapter='2Ext';\r
66       break;\r
67     case 'glow':\r
68       $baselib='glow.core';\r
69       $adapter='2Glow';\r
70       break;\r
71     default:\r
72       exit();\r
73   }\r
74   if ($baseLoadFlag) echo "<script src='".$baselibsDir.$baselib.".js' type='text/javascript'></script>\n";\r
75   requireRicoJS("");\r
76   requireRicoJS($adapter);\r
77   echo "<script src='".$transDir."ricoLocale_en.js' type='text/javascript'></script>\n";\r
78   requireRicoCSS("rico");\r
79   requireRicoJS("UI");\r
80 }\r
81 \r
82 \r
83 // -------------------------------------------------------------\r
84 // Check languages accepted by browser\r
85 // and see if there is a match\r
86 // -------------------------------------------------------------\r
87 function setLang() {\r
88   global $transDir;\r
89   $lang=strtolower($_SERVER["HTTP_ACCEPT_LANGUAGE"]);\r
90   $arLang=explode(",",$lang);\r
91   for ($i=0; $i<count($arLang); $i++) {\r
92     $lang2=strtolower(substr(trim($arLang[$i]),0,2));\r
93     if ($lang2=='en') break; // already included\r
94     $fname=$transDir."ricoLocale_".$lang2.".js";\r
95     if (file_exists($fname)) {\r
96       echo "<script src='".$fname."' type='text/javascript'></script>";\r
97       break;\r
98     } \r
99   }\r
100 }\r
101 \r
102 \r
103 // set theme\r
104 // "j-ui-lightness" for a Themeroller theme\r
105 // "r-greenHdg" for a native Rico theme\r
106 function LoadTheme($theme) {\r
107   global $cssDir,$grid_striping,$jQuery_theme_path;\r
108   $prefix=substr($theme,0,1);\r
109   $theme=substr($theme,2);\r
110   switch ($prefix) {\r
111     case 'j':\r
112       requireRicoJS("Themeroller");\r
113       echo "<link type='text/css' rel='stylesheet' href='".$cssDir."jquery-base/ui.base.css' />";\r
114       echo "<link type='text/css' rel='Stylesheet' href='" . $jQuery_theme_path . $theme."/jquery-ui.css' />";\r
115       break;\r
116     case 'r':\r
117       requireRicoCSS($theme);\r
118       break;\r
119   }\r
120   if ($grid_striping) {\r
121     echo "<link type='text/css' rel='stylesheet' href='".$cssDir."striping/".$theme.".css' />";\r
122   }\r
123 }\r
124 \r
125 function requireRicoJS($filename) {\r
126   global $jsDir;\r
127   echo "<script src='".$jsDir."rico".$filename.".js' type='text/javascript'></script>\n";\r
128 }\r
129 \r
130 function requireRicoCSS($filename) {\r
131   global $cssDir;\r
132   echo "<link href='".$cssDir.$filename.".css' type='text/css' rel='stylesheet' />\n";\r
133 }\r
134 \r
135 ?>\r
136 \r