Updated Rico2 and Rico3 with fixes for IE9. Updated Rico2 version to 2.3. Updated...
[infodrom/rico3] / examples / asp / LoadRicoClient.asp
1 <%\r
2 \r
3 ' ***********************************************************\r
4 ' This generates the link and script tags for the Rico client\r
5 ' ***********************************************************\r
6 \r
7 Dim jsDir,cssDir,imgDir,transDir,baselibsDir\r
8 Dim ricoLib,ricoTheme,ricoLogging\r
9 const grid_striping = true     ' apply row striping to LiveGrids?\r
10 const checkQueryString = true  ' load settings from QueryString? true for demo, false for production\r
11 const LoadBaseLib = true       ' load base Javascript library (prototype, jQuery, etc) from Rico directory?\r
12 const jQuery_theme_path = "http://ajax.googleapis.com/ajax/libs/jqueryui/1.8.5/themes/"\r
13 \r
14 \r
15 jsDir="../../ricoClient/js/"       ' directory containing Rico's javascript files\r
16 cssDir="../../ricoClient/css/"     ' directory containing Rico's css files\r
17 imgDir="../../ricoClient/images/"  ' directory containing Rico's image files\r
18 transDir=jsDir & "translations/"\r
19 baselibsDir=jsDir & "baselibs/"\r
20 \r
21 \r
22 if checkQueryString then\r
23   ricoLib=LCase(Request.QueryString("lib"))\r
24   ricoTheme=trim(Request.QueryString("theme"))\r
25   ricoLogging=CBool(trim(Request.QueryString("log")) <> "")\r
26 else\r
27   ' set your production values here\r
28   ricoLib="prototype-1.6"     ' base library\r
29   ricoTheme="j-ui-lightness"  ' jquery themes start with j-, rico themes start with r-\r
30   ricoLogging=false\r
31 end if\r
32 \r
33 SetConfig\r
34 LoadLib ricoLib, LoadBaseLib\r
35 setLang\r
36 if ricoTheme<>"" then\r
37   LoadTheme ricoTheme\r
38 end if\r
39 \r
40 \r
41 ' initialize Rico\r
42 sub SetConfig()\r
43   Response.Write vbLf & "<script type='text/javascript'>"\r
44   Response.Write vbLf & "Rico_CONFIG = {"\r
45   if ricoLogging then Response.Write vbLf & "enableLogging: true,"\r
46   Response.Write vbLf & "jsDir: '" & jsDir & "',"\r
47   Response.Write vbLf & "cssDir: '" & cssDir & "',"\r
48   Response.Write vbLf & "imgDir: '" & imgDir & "'"\r
49   Response.Write vbLf & "};"\r
50   Response.Write vbLf & "</script>"\r
51 end sub\r
52 \r
53 \r
54 sub LoadLib(baseLib, baseLoadFlag)\r
55   if baseLoadFlag then\r
56     if InStr(baseLib,"/") > 0 then\r
57       Response.Write vbLf & "<script src='http://ajax.googleapis.com/ajax/libs/" & baseLib & "' type='text/javascript'></script>"\r
58     else\r
59       Response.Write vbLf & "<script src='" & baselibsDir & baseLib & ".js' type='text/javascript'></script>"\r
60     end if\r
61   end if\r
62   requireRicoJS ""\r
63   requireRicoJS "2" & left(baseLib,3)\r
64   Response.Write vbLf & "<script src='" & transDir & "ricoLocale_en.js' type='text/javascript'></script>"\r
65   requireRicoCSS "rico"\r
66   requireRicoJS "UI"\r
67 end sub\r
68 \r
69 \r
70 \r
71 ' -------------------------------------------------------------\r
72 ' Check languages accepted by browser\r
73 ' and see if there is a match\r
74 ' -------------------------------------------------------------\r
75 sub setLang()\r
76   dim fso,lang,lang2,fname,i\r
77   \r
78   Set fso=Server.CreateObject("Scripting.FileSystemObject")\r
79   lang=lcase(Request.ServerVariables("HTTP_ACCEPT_LANGUAGE"))\r
80   arLang=split(lang,",")\r
81   for i=0 to ubound(arLang)\r
82     lang2=lcase(left(trim(arLang(i)),2))\r
83     if lang2="en" then exit for\r
84     fname=transDir & "ricoLocale_" & lang2 & ".js"\r
85     if fso.FileExists(Server.MapPath(fname)) then\r
86       Response.Write "<script src='" & fname & "' type='text/javascript'></script>"\r
87       exit for\r
88     end if\r
89   next\r
90   set fso=nothing\r
91 end sub\r
92 \r
93 \r
94 ' set theme\r
95 ' "j-ui-lightness" for a Themeroller theme\r
96 ' "r-greenHdg" for a native Rico theme\r
97 sub LoadTheme(theme)\r
98   dim prefix,themeFile\r
99   prefix=left(theme,1)\r
100   themeFile=mid(theme,3)\r
101   select case prefix\r
102     case "j":\r
103       requireRicoJS "Themeroller"\r
104       'Response.Write vbLf & "<link type='text/css' rel='stylesheet' href='" & cssDir & "jquery-base/ui.base.css' />"\r
105       Response.Write vbLf & "<link type='text/css' rel='Stylesheet' href='" & jQuery_theme_path & themeFile & "/jquery-ui.css' />"\r
106     case "r":\r
107       requireRicoCSS themeFile\r
108   end select\r
109   if grid_striping then Response.Write vbLf & "<link type='text/css' rel='stylesheet' href='" & cssDir & "striping_" & themeFile & ".css' />"\r
110 end sub\r
111 \r
112 \r
113 sub requireRicoJS(filename)\r
114   Response.Write vbLf & "<script src='" & jsDir & "rico" & filename & ".js' type='text/javascript'></script>"\r
115 end sub\r
116 \r
117 \r
118 sub requireRicoCSS(filename)\r
119   Response.Write vbLf & "<link href='" & cssDir & filename & ".css' type='text/css' rel='stylesheet' />"\r
120 end sub\r
121 \r
122 %>\r