/[health_html]/inc/Smarty.local.php
This is repository of my old source code which isn't updated any more. Go to git.rot13.org for current projects!
ViewVC logotype

Contents of /inc/Smarty.local.php

Parent Directory Parent Directory | Revision Log Revision Log


Revision 1.4 - (show annotations)
Tue Oct 16 13:07:03 2001 UTC (22 years, 6 months ago) by ravilov
Branch: MAIN
CVS Tags: HEAD
Changes since 1.3: +8 -4 lines
Added a favicon for IE. Added a new Smarty modifier (js_popup). Fixed the news editor. Other bugfixes.

1 <?php
2
3 //-----------------------------------------
4 // Custom made by Dobrica Pavlinusic <dpavlin@rot13.org>
5
6 // helper function to make full path of relative dir
7 function dir2path($dir) {
8 if (substr($dir,0,1) != "/") {
9 return dirname($GLOBALS[SCRIPT_FILENAME])."/$dir";
10 } else {
11 return $dir;
12 }
13 }
14
15 function smarty_func_img() {
16 extract(func_get_arg(0));
17
18 $f = array();
19
20 global $img_time;
21 if (!isset($img_time)) {
22 $img_time=time();
23 }
24
25 if (isset($dir)) {
26 $tdir=dir2path($dir);
27 $h=opendir($dir);
28 $pics=0;
29 while ($tmp = readdir($h)) {
30 if (is_file("$tdir/$tmp") && substr($tmp,0,1)!=".") {
31 // print "$tdir/$tmp<br>\n";
32 $f[]=$tmp;
33 $pics++;
34 }
35 }
36 closedir($h);
37 // $f=shuffle($f);
38 $ord=($img_time+$nr) % $pics;
39 $src="$dir/$f[$ord]";
40 }
41
42 $add="";
43 if (isset($border)) {
44 $add.=" border=\"$border\"";
45 }
46 if (isset($alt)) {
47 $add.=" alt=\"$alt\"";
48 }
49 if (isset($align)) {
50 $add.=" align=\"$align\"";
51 }
52 if (isset($hspace)) {
53 $add.=" hspace=\"$hspace\"";
54 }
55 if (isset($vspace)) {
56 $add.=" vspace=\"$vspace\"";
57 }
58
59 $out="";
60 $product_link = array (
61 "andol.gif"=>"http://www.pliva.hr/human_health.php?search=andol&show_description=on#results",
62 "andol_c.jpg"=>"http://www.pliva.hr/human_health.php?search=andol%25c&show_description=on#results",
63 "bisolex.jpg"=>"http://www.pliva.hr/human_health.php?search=bisolex&show_description=on#results",
64 "plibex.gif"=>"http://www.pliva.hr/human_health.php?search=plibex&show_description=on#results",
65 "plivit_b.gif"=>"http://www.pliva.hr/human_health.php?search=plivit%25b&show_description=on#results",
66 "plivit_b6.gif"=>"http://www.pliva.hr/human_health.php?search=plivit%25b6&show_description=on#results",
67 "plivit_c.gif"=>"http://www.pliva.hr/human_health.php?search=plivit%25c&show_description=on#results",
68 );
69
70 $pic=basename($src);
71 if ($product_link[$pic]) {
72 $out.="<a href=\"$product_link[$pic]\">";
73 $add.=" border=\"0\"";
74 }
75
76 $size = GetImageSize(dir2path($src));
77 $out.="<img src=\"$src\" $size[3]$add>";
78 if ($product_link[$pic]) {
79 $out.="</a>";
80 }
81 print $out;
82 }
83
84 // checkboxes
85
86 function smarty_func_html_checkboxes()
87 {
88 $print_result = true;
89
90 extract(func_get_arg(0));
91
92 settype($output, 'array');
93 settype($values, 'array');
94
95 $html_result = "";
96
97 for ($i = 0; $i < count($output); $i++) {
98 /* By default, check value against $selected */
99 $sel_check = $values[$i];
100 if (isset($before)) $html_result.=$before;
101 $html_result .= "<input type=checkbox name=\"".$values[$i]."\"";
102 if (isset($GLOBALS[$values[$i]])) {
103 $html_result .= " checked";
104 }
105 $html_result .= ">".$output[$i]."\n";
106 if (isset($after)) $html_result.=$after;
107 }
108
109 if ($print_result)
110 print $html_result;
111 else
112 return $html_result;
113 }
114
115 // $filename|filesize:"dir":"unit"
116 //
117 // dir -- path to file (or "")
118 // unit -- Mb|Kb|auto
119
120 function smarty_mod_filesize($file,$dir,$unit="")
121 {
122 $path=dir2path("$dir/$file");
123 $ext=explode(".",$file);
124 $ext=strtoupper(array_pop($ext));
125
126 if ($size=filesize($path)) {
127 switch (strtoupper($unit)) {
128 case 'MB':
129 return sprintf("%s, %2.1f MB",$ext,$size/(1024*1024));
130 case 'KB':
131 return sprintf("%s, %2.1f kB",$ext,$size/1024);
132 case 'auto':
133 $size=$size/1024; # Kb
134 if ($size > 1024) {
135 return sprintf("%s, %2.1f MB",$ext,$size/1024);
136 } else {
137 return sprintf("%s, %2.1f kB",$ext,$size);
138 }
139
140 }
141 return $size;
142 }
143 }
144
145 // pic_url|js_popup:"dir_reference"
146
147 function smarty_mod_js_popup($pic, $dir) {
148 if ($dir) { global ${$dir}; $pic = ${$dir}."/".$pic; }
149 if ($pic) {
150 @$size = GetImageSize($pic);
151 list($w, $h) = array($size[0], $size[1]);
152 }
153 $opts = array("scrollbar=no", "menu=no", "personal=no");
154 // KLUDGY!!! I have to somehow include the window chrome (ie.
155 // decorations: titlebar, borders...) when calculating
156 // width/height...
157 if ($w) $w += 18;
158 if ($h) $h += 25;
159 if ($w) array_push($opts, "width=$w");
160 if ($h) array_push($opts, "height=$h");
161 if (!$w) $w = 0;
162 if (!$h) $h = 0;
163 return "var tmp = window.open(this.href, this.target, '".implode(',', $opts)."'); if (tmp && tmp.moveTo) tmp.moveTo((screen.availWidth - $w) / 2, (screen.availHeight - $h) / 2); return false;";
164 }
165
166 // input functions (input, rinput)
167
168 function smarty_func_input() {
169 extract(func_get_arg(0));
170 print "<input name=\"$name\" size=\"$size\" value=\"".$GLOBALS[$name]."\">";
171 print "<input type=\"hidden\" name=\"inputs_required[]\" value=\"$name\">";
172 if ($type) print "<input type=\"hidden\" name=\"inputs_required_type[$name]\" value=\"$type\">";
173 }
174
175 function smarty_func_rinput() {
176 extract(func_get_arg(0));
177 global $inputs_required_type;
178 $ok=1;
179 if (! isset($GLOBALS[$name]) || $GLOBALS[$name] == "") {
180 $ok=0;
181 } else {
182 switch($inputs_required_type[$name]) {
183 case 'email':
184 if (!strstr($GLOBALS[$name],'@')) $ok=0;
185 }
186 }
187 if ($ok) {
188 print "$desc";
189 } else {
190 print "<b>$desc</b>";
191 }
192 }
193 ?>

  ViewVC Help
Powered by ViewVC 1.1.26