source: temp/trunk/html/products/detail.php @ 9179

Revision 9179, 13.5 KB checked in by kakinaka, 20 years ago (diff)

blank

  • Property svn:eol-style set to native
  • Property svn:keywords set to Author Date Id Revision
Line 
1<?php
2/*
3 * Copyright(c) 2000-2006 LOCKON CO.,LTD. All Rights Reserved.
4 *
5 * http://www.lockon.co.jp/
6 */
7
8require_once("../require.php");
9require_once(DATA_PATH . "include/page_layout.inc");
10
11class LC_Page {
12    function LC_Page() {
13        /** ɬ¤º»ØÄꤹ¤ë **/
14        global $arrSTATUS;
15        $this->arrSTATUS = $arrSTATUS;
16        global $arrSTATUS_IMAGE;
17        $this->arrSTATUS_IMAGE = $arrSTATUS_IMAGE;
18        global $arrDELIVERYDATE;
19        $this->arrDELIVERYDATE = $arrDELIVERYDATE;
20        global $arrRECOMMEND;
21        $this->arrRECOMMEND = $arrRECOMMEND;
22       
23        //$this->tpl_mainpage="products/detail.tpl";
24       
25        /*
26         session_start»þ¤Îno-cache¥Ø¥Ã¥À¡¼¤òÍÞÀ©¤¹¤ë¤³¤È¤Ç
27         ¡ÖÌá¤ë¡×¥Ü¥¿¥ó»ÈÍÑ»þ¤ÎÍ­¸ú´ü¸ÂÀÚ¤ìɽ¼¨¤òÍÞÀ©¤¹¤ë¡£
28         private-no-expire:¥¯¥é¥¤¥¢¥ó¥È¤Î¥­¥ã¥Ã¥·¥å¤òµö²Ä¤¹¤ë¡£
29        */
30        session_cache_limiter('private-no-expire');
31    }
32}
33
34$objPage = new LC_Page();
35$objView = new SC_SiteView();
36$objCustomer = new SC_Customer();
37$objQuery = new SC_Query();
38
39// ¥ì¥¤¥¢¥¦¥È¥Ç¥¶¥¤¥ó¤ò¼èÆÀ
40$objPage = sfGetPageLayout($objPage, false, "products/detail.php");
41
42// ¥Ñ¥é¥á¡¼¥¿´ÉÍý¥¯¥é¥¹
43$objFormParam = new SC_FormParam();
44// ¥Ñ¥é¥á¡¼¥¿¾ðÊó¤Î½é´ü²½
45lfInitParam();
46// POSTÃͤμèÆÀ
47$objFormParam->setParam($_POST);
48
49// ¥Õ¥¡¥¤¥ë´ÉÍý¥¯¥é¥¹
50$objUpFile = new SC_UploadFile(IMAGE_TEMP_DIR, IMAGE_SAVE_DIR);
51// ¥Õ¥¡¥¤¥ë¾ðÊó¤Î½é´ü²½
52lfInitFile();
53
54// ´ÉÍý¥Ú¡¼¥¸¤«¤é¤Î³Îǧ¤Î¾ì¹ç¤Ï¡¢Èó¸ø³«¤Î¾¦Éʤâɽ¼¨¤¹¤ë¡£
55if($_GET['admin'] == 'on') {
56    $where = "del_flg = 0";
57} else {
58    $where = "del_flg = 0 AND status = 1";
59}
60
61if($_POST['mode'] != "") {
62    $tmp_id = $_POST['product_id'];
63} else {
64    $tmp_id = $_GET['product_id'];
65}
66
67// ÃͤÎÀµÅöÀ­¥Á¥§¥Ã¥¯
68if(!sfIsInt($_GET['product_id']) || !sfIsRecord("dtb_products", "product_id", $tmp_id, $where)) {
69    sfDispSiteError(PRODUCT_NOT_FOUND);
70}
71// ¥í¥°¥¤¥óȽÄê
72if($objCustomer->isLoginSuccess()) {
73    //¤ªµ¤¤ËÆþ¤ê¥Ü¥¿¥óɽ¼¨
74    $objPage->tpl_login = true;
75   
76    $table = "dtb_customer_reading";
77    $where = "customer_id = ? ";
78    $arrval[] = $objCustomer->getValue('customer_id');
79    //¸ÜµÒ¤Î±ÜÍ÷¾¦ÉÊ¿ô
80    $rpcnt = $objQuery->count($table, $where, $arrval);
81
82    //±ÜÍ÷¿ô¤¬ÀßÄê¿ô°Ê²¼
83    if ($rpcnt < CUSTOMER_READING_MAX){
84        //±ÜÍ÷ÍúÎò¤Ë¿·µ¬ÄɲÃ
85        lfRegistReadingData($tmp_id, $objCustomer->getValue('customer_id'));
86    } else {
87        //±ÜÍ÷ÍúÎò¤ÎÃæ¤Ç°ìÈָŤ¤¤â¤Î¤òºï½ü¤·¤Æ¿·µ¬ÄɲÃ
88        $oldsql = "SELECT MIN(update_date) FROM ".$table." WHERE customer_id = ?";
89        $old = $objQuery->getone($oldsql, array($objCustomer->getValue("customer_id")));
90        $where = "customer_id = ? AND update_date = ? ";
91        $arrval = array($objCustomer->getValue("customer_id"), $old);
92        //ºï½ü
93        $objQuery->delete($table, $where, $arrval);
94        //ÄɲÃ
95        lfRegistReadingData($tmp_id, $objCustomer->getValue('customer_id'));
96    }
97}
98
99
100// µ¬³ÊÁªÂò¥»¥ì¥¯¥È¥Ü¥Ã¥¯¥¹¤ÎºîÀ®
101$objPage = lfMakeSelect($objPage, $tmp_id);
102
103// ¾¦ÉÊID¤òFORMÆâ¤ËÊÝ»ý¤¹¤ë¡£
104$objPage->tpl_product_id = $tmp_id;
105
106switch($_POST['mode']) {
107case 'cart':
108    // ÆþÎÏÃͤÎÊÑ´¹
109    $objFormParam->convParam();
110    $objPage->arrErr = lfCheckError();
111    if(count($objPage->arrErr) == 0) {
112        $objCartSess = new SC_CartSession();
113        $classcategory_id1 = $_POST['classcategory_id1'];
114        $classcategory_id2 = $_POST['classcategory_id2'];
115               
116        // µ¬³Ê1¤¬ÀßÄꤵ¤ì¤Æ¤¤¤Ê¤¤¾ì¹ç
117        if(!$objPage->tpl_classcat_find1) {
118            $classcategory_id1 = '0';
119        }
120       
121        // µ¬³Ê2¤¬ÀßÄꤵ¤ì¤Æ¤¤¤Ê¤¤¾ì¹ç
122        if(!$objPage->tpl_classcat_find2) {
123            $classcategory_id2 = '0';
124        }
125       
126        $objCartSess->setPrevURL($_SERVER['REQUEST_URI']);
127        $objCartSess->addProduct(array($_POST['product_id'], $classcategory_id1, $classcategory_id2), $objFormParam->getValue('quantity'));
128        header("Location: " . URL_CART_TOP);
129
130        exit;
131    }
132    break;
133       
134default:
135    break;
136}
137
138$objQuery = new SC_Query();
139// DB¤«¤é¾¦ÉʾðÊó¤ò¼èÆÀ¤¹¤ë¡£
140$arrRet = $objQuery->select("*", "vw_products_allclass_detail AS alldtl", "product_id = ?", array($tmp_id));
141$objPage->arrProduct = $arrRet[0];
142
143// ¾¦ÉÊ¥³¡¼¥É¤Î¼èÆÀ
144$code_sql = "SELECT product_code FROM dtb_products_class AS prdcls WHERE prdcls.product_id = ? GROUP BY product_code ORDER BY product_code";
145$arrProductCode = $objQuery->getall($code_sql, array($tmp_id));
146$arrProductCode = sfswaparray($arrProductCode);
147$objPage->arrProductCode = $arrProductCode["product_code"];
148
149// ¹ØÆþÀ©¸Â¿ô¤ò¼èÆÀ
150if($objPage->arrProduct['sale_unlimited'] == 1 || $objPage->arrProduct['sale_limit'] > SALE_LIMIT_MAX) {
151  $objPage->tpl_sale_limit = SALE_LIMIT_MAX;
152} else {
153  $objPage->tpl_sale_limit = $objPage->arrProduct['sale_limit'];
154}
155
156// ¥µ¥Ö¥¿¥¤¥È¥ë¤ò¼èÆÀ
157$arrFirstCat = GetFirstCat($arrRet[0]['category_id']);
158$tpl_subtitle = $arrFirstCat['name'];
159$objPage->tpl_subtitle = $tpl_subtitle;
160
161// DB¤«¤é¤Î¥Ç¡¼¥¿¤ò°ú¤­·Ñ¤°
162$objUpFile->setDBFileList($objPage->arrProduct);
163// ¥Õ¥¡¥¤¥ëɽ¼¨ÍÑÇÛÎó¤òÅϤ¹
164$objPage->arrFile = $objUpFile->getFormFileList(IMAGE_TEMP_URL, IMAGE_SAVE_URL);
165// »ÙʧÊýË¡¤Î¼èÆÀ
166$objPage->arrPayment = lfGetPayment();
167// ÆþÎϾðÊó¤òÅϤ¹
168$objPage->arrForm = $objFormParam->getFormParamList();
169//¥ì¥Ó¥å¡¼¾ðÊó¤Î¼èÆÀ
170$objPage->arrReview = lfGetReviewData($tmp_id);
171// ¥¿¥¤¥È¥ë¤Ë¾¦ÉÊ̾¤òÆþ¤ì¤ë
172$objPage->tpl_title = "¾¦Éʾܺ٠". $objPage->arrProduct["name"];
173//¥ª¥¹¥¹¥á¾¦ÉʾðÊóɽ¼¨
174$objPage->arrRecommend = lfPreGetRecommendProducts($tmp_id);
175//¤³¤Î¾¦ÉʤòÇã¤Ã¤¿¿Í¤Ï¤³¤ó¤Ê¾¦ÉʤâÇã¤Ã¤Æ¤¤¤Þ¤¹
176$objPage->arrRelateProducts = lfGetRelateProducts($tmp_id);
177
178// ³ÈÂç²èÁü¤Î¥¦¥£¥ó¥É¥¦¥µ¥¤¥º¤ò¥»¥Ã¥È
179list($image_width, $image_height) = getimagesize(IMAGE_SAVE_DIR . basename($objPage->arrFile["main_large_image"]["filepath"]));
180$objPage->tpl_image_width = $image_width + 60;
181$objPage->tpl_image_height = $image_height + 80;
182
183$objView->assignobj($objPage);
184$objView->display(SITE_FRAME);
185//-----------------------------------------------------------------------------------------------------------------------------------
186/* ¥Õ¥¡¥¤¥ë¾ðÊó¤Î½é´ü²½ */
187function lfInitFile() {
188    global $objUpFile;
189    $objUpFile->addFile("°ìÍ÷-¥á¥¤¥ó²èÁü", 'main_list_image', array('jpg','gif'),IMAGE_SIZE, true, SMALL_IMAGE_WIDTH, SMALL_IMAGE_HEIGHT);
190    $objUpFile->addFile("¾ÜºÙ-¥á¥¤¥ó²èÁü", 'main_image', array('jpg'), IMAGE_SIZE, true, NORMAL_IMAGE_WIDTH, NORMAL_IMAGE_HEIGHT);
191    $objUpFile->addFile("¾ÜºÙ-¥á¥¤¥ó³ÈÂç²èÁü", 'main_large_image', array('jpg'), IMAGE_SIZE, false, LARGE_IMAGE_HEIGHT, LARGE_IMAGE_HEIGHT);
192    for ($cnt = 1; $cnt <= PRODUCTSUB_MAX; $cnt++) {
193        $objUpFile->addFile("¾ÜºÙ-¥µ¥Ö²èÁü$cnt", "sub_image$cnt", array('jpg'), IMAGE_SIZE, false, NORMAL_SUBIMAGE_HEIGHT, NORMAL_SUBIMAGE_HEIGHT);
194        $objUpFile->addFile("¾ÜºÙ-¥µ¥Ö³ÈÂç²èÁü$cnt", "sub_large_image$cnt", array('jpg'), IMAGE_SIZE, false, LARGE_SUBIMAGE_HEIGHT, LARGE_SUBIMAGE_HEIGHT);
195    }
196    $objUpFile->addFile("¾¦ÉÊÈæ³Ó²èÁü", 'file1', array('jpg'), IMAGE_SIZE, false, NORMAL_IMAGE_HEIGHT, NORMAL_IMAGE_HEIGHT);
197    $objUpFile->addFile("¾¦Éʾܺ٥ե¡¥¤¥ë", 'file2', array('pdf'), PDF_SIZE, false, 0, 0, false);
198}
199
200/* µ¬³ÊÁªÂò¥»¥ì¥¯¥È¥Ü¥Ã¥¯¥¹¤ÎºîÀ® */
201function lfMakeSelect($objPage, $product_id) {
202    global $objPage;
203    $classcat_find1 = false;
204    $classcat_find2 = false;
205    // ºß¸Ë¤¢¤ê¤Î¾¦ÉʤÎ̵ͭ
206    $stock_find = false;
207   
208    // µ¬³Ê̾°ìÍ÷
209    $arrClassName = sfGetIDValueList("dtb_class", "class_id", "name");
210    // µ¬³ÊʬÎà̾°ìÍ÷
211    $arrClassCatName = sfGetIDValueList("dtb_classcategory", "classcategory_id", "name");
212    // ¾¦Éʵ¬³Ê¾ðÊó¤Î¼èÆÀ   
213    $arrProductsClass = lfGetProductsClass($product_id);
214   
215    // µ¬³Ê1¥¯¥é¥¹Ì¾¤Î¼èÆÀ
216    $objPage->tpl_class_name1 = $arrClassName[$arrProductsClass[0]['class_id1']];
217    // µ¬³Ê2¥¯¥é¥¹Ì¾¤Î¼èÆÀ
218    $objPage->tpl_class_name2 = $arrClassName[$arrProductsClass[0]['class_id2']];
219   
220    // ¤¹¤Ù¤Æ¤ÎÁȤ߹ç¤ï¤»¿ô
221    $count = count($arrProductsClass);
222   
223    $classcat_id1 = "";
224   
225    $arrSele = array();
226    $arrList = array();
227   
228    $list_id = 0;
229    $arrList[0] = "\tlist0 = new Array('ÁªÂò¤·¤Æ¤¯¤À¤µ¤¤'";
230    $arrVal[0] = "\tval0 = new Array(''";
231   
232    for ($i = 0; $i < $count; $i++) {
233        // ºß¸Ë¤Î¥Á¥§¥Ã¥¯
234        if($arrProductsClass[$i]['stock'] <= 0 && $arrProductsClass[$i]['stock_unlimited'] != '1') {
235            continue;
236        }
237       
238        $stock_find = true;
239       
240        // µ¬³Ê1¤Î¥»¥ì¥¯¥È¥Ü¥Ã¥¯¥¹ÍÑ
241        if($classcat_id1 != $arrProductsClass[$i]['classcategory_id1']){
242            $arrList[$list_id].=");\n";
243            $arrVal[$list_id].=");\n";
244            $classcat_id1 = $arrProductsClass[$i]['classcategory_id1'];
245            $arrSele[$classcat_id1] = $arrClassCatName[$classcat_id1];
246            $list_id++;
247        }
248       
249        // µ¬³Ê2¤Î¥»¥ì¥¯¥È¥Ü¥Ã¥¯¥¹ÍÑ
250        $classcat_id2 = $arrProductsClass[$i]['classcategory_id2'];
251       
252        // ¥»¥ì¥¯¥È¥Ü¥Ã¥¯¥¹É½¼¨ÃÍ
253        if($arrList[$list_id] == "") {
254            $arrList[$list_id] = "\tlist".$list_id." = new Array('ÁªÂò¤·¤Æ¤¯¤À¤µ¤¤', '".$arrClassCatName[$classcat_id2]."'";
255        } else {
256            $arrList[$list_id].= ", '".$arrClassCatName[$classcat_id2]."'";
257        }
258       
259        // ¥»¥ì¥¯¥È¥Ü¥Ã¥¯¥¹POSTÃÍ
260        if($arrVal[$list_id] == "") {
261            $arrVal[$list_id] = "\tval".$list_id." = new Array('', '".$classcat_id2."'";
262        } else {
263            $arrVal[$list_id].= ", '".$classcat_id2."'";
264        }
265    }   
266   
267    $arrList[$list_id].=");\n";
268    $arrVal[$list_id].=");\n";
269       
270    // µ¬³Ê1
271    $objPage->arrClassCat1 = $arrSele;
272   
273    $lists = "\tlists = new Array(";
274    $no = 0;
275   
276    foreach($arrList as $val) {
277        $objPage->tpl_javascript.= $val;
278        if ($no != 0) {
279            $lists.= ",list".$no;
280        } else {
281            $lists.= "list".$no;
282        }
283        $no++;
284    }
285    $objPage->tpl_javascript.=$lists.");\n";
286   
287    $vals = "\tvals = new Array(";
288    $no = 0;
289   
290    foreach($arrVal as $val) {
291        $objPage->tpl_javascript.= $val;
292        if ($no != 0) {
293            $vals.= ",val".$no;
294        } else {
295            $vals.= "val".$no;
296        }
297        $no++;
298    }
299    $objPage->tpl_javascript.=$vals.");\n";
300   
301    // ÁªÂò¤µ¤ì¤Æ¤¤¤ëµ¬³Ê2ID
302    $objPage->tpl_onload = "lnSetSelect('form1', 'classcategory_id1', 'classcategory_id2', '" . $_POST['classcategory_id2'] . "');";
303
304    // µ¬³Ê1¤¬ÀßÄꤵ¤ì¤Æ¤¤¤ë
305    if($arrProductsClass[0]['classcategory_id1'] != '0') {
306        $classcat_find1 = true;
307    }
308   
309    // µ¬³Ê2¤¬ÀßÄꤵ¤ì¤Æ¤¤¤ë
310    if($arrProductsClass[0]['classcategory_id2'] != '0') {
311        $classcat_find2 = true;
312    }
313       
314    $objPage->tpl_classcat_find1 = $classcat_find1;
315    $objPage->tpl_classcat_find2 = $classcat_find2;
316    $objPage->tpl_stock_find = $stock_find;
317       
318    return $objPage;
319}
320
321/* ¥Ñ¥é¥á¡¼¥¿¾ðÊó¤Î½é´ü²½ */
322function lfInitParam() {
323    global $objFormParam;
324
325    $objFormParam->addParam("µ¬³Ê1", "classcategory_id1", INT_LEN, "n", array("NUM_CHECK", "MAX_LENGTH_CHECK"));
326    $objFormParam->addParam("µ¬³Ê2", "classcategory_id2", INT_LEN, "n", array("NUM_CHECK", "MAX_LENGTH_CHECK"));
327    $objFormParam->addParam("¸Ä¿ô", "quantity", INT_LEN, "n", array("EXIST_CHECK", "ZERO_CHECK", "NUM_CHECK", "MAX_LENGTH_CHECK"));
328}
329
330/* ¾¦Éʵ¬³Ê¾ðÊó¤Î¼èÆÀ */
331function lfGetProductsClass($product_id) {
332    $arrRet = array();
333    if(sfIsInt($product_id)) {
334        // ¾¦Éʵ¬³Ê¼èÆÀ
335        $objQuery = new SC_Query();
336        $col = "product_class_id, classcategory_id1, classcategory_id2, class_id1, class_id2, stock, stock_unlimited";
337        $table = "vw_product_class AS prdcls";
338        $where = "product_id = ?";
339        $objQuery->setorder("rank1 DESC, rank2 DESC");
340        $arrRet = $objQuery->select($col, $table, $where, array($product_id));
341    }
342    return $arrRet;
343}
344
345/* ÅÐÏ¿ºÑ¤ß¥ª¥¹¥¹¥á¾¦ÉÊ¤ÎÆÉ¤ß¹þ¤ß */
346function lfPreGetRecommendProducts($product_id) {
347    $objQuery = new SC_Query();
348    $objQuery->setorder("rank DESC");
349    $arrRet = $objQuery->select("recommend_product_id, comment", "dtb_recommend_products", "product_id = ?", array($product_id));
350    $max = count($arrRet);
351    $no = 0;
352    for($i = 0; $i < $max; $i++) {
353        $where = "del_flg = 0 AND product_id = ? AND status = 1";
354        $arrProductInfo = $objQuery->select("main_list_image, price02_min, price02_max, price01_min, price01_max, name, point_rate", "vw_products_allclass  AS allcls", $where, array($arrRet[$i]['recommend_product_id']));
355               
356        if(count($arrProductInfo) > 0) {
357            $arrRecommend[$no] = $arrProductInfo[0];
358            $arrRecommend[$no]['product_id'] = $arrRet[$i]['recommend_product_id'];
359            $arrRecommend[$no]['comment'] = $arrRet[$i]['comment'];
360            $no++;
361        }   
362    }
363    return $arrRecommend;
364}
365
366/* ÆþÎÏÆâÍÆ¤Î¥Á¥§¥Ã¥¯ */
367function lfCheckError() {
368    global $objFormParam;
369    global $objPage;
370    // ÆþÎϥǡ¼¥¿¤òÅϤ¹¡£
371    $arrRet =  $objFormParam->getHashArray();
372    $objErr = new SC_CheckError($arrRet);
373    $objErr->arrErr = $objFormParam->checkError();
374       
375    // Ê£¿ô¹àÌÜ¥Á¥§¥Ã¥¯
376    if ($objPage->tpl_classcat_find1) {
377        $objErr->doFunc(array("µ¬³Ê1", "classcategory_id1"), array("EXIST_CHECK"));
378    }
379    if ($objPage->tpl_classcat_find2) {
380        $objErr->doFunc(array("µ¬³Ê2", "classcategory_id2"), array("EXIST_CHECK"));
381    }
382           
383    return $objErr->arrErr;
384}
385
386//±ÜÍ÷ÍúÎò¿·µ¬ÅÐÏ¿
387function lfRegistReadingData($tmp_id, $customer_id){
388    $objQuery = new SC_Query;
389    $sqlval['customer_id'] = $customer_id;
390    $sqlval['reading_product_id'] = $tmp_id;
391    $sqlval['create_date'] = 'NOW()';
392    $sqlval['update_date'] = 'NOW()';
393    $objQuery->insert("dtb_customer_reading", $sqlval);
394}
395
396//¤³¤Î¾¦ÉʤòÇã¤Ã¤¿¿Í¤Ï¤³¤ó¤Ê¾¦ÉʤâÇã¤Ã¤Æ¤¤¤Þ¤¹
397function lfGetRelateProducts($tmp_id) {
398    $objQuery = new SC_Query;
399    //¼«Æ°Ãê½Ð
400    $objQuery->setorder("random()");
401    //ɽ¼¨·ï¿ô¤ÎÀ©¸Â
402    $objQuery->setlimit(RELATED_PRODUCTS_MAX);
403    //¸¡º÷¾ò·ï
404    $col = "name, main_list_image, price01_min, price02_min, price01_max, price02_max, point_rate";
405    $from = "vw_products_allclass AS allcls ";
406    $where = "del_flg = 0 AND status = 1 AND (stock_max <> 0 OR stock_max IS NULL) AND product_id = ? ";
407    $arrval[] = $tmp_id;
408    //·ë²Ì¤Î¼èÆÀ
409    $arrProducts = $objQuery->select($col, $from, $where, $arrval);
410   
411    return $arrProducts;
412}
413
414//¾¦Éʤ´¤È¤Î¥ì¥Ó¥å¡¼¾ðÊó¤ò¼èÆÀ¤¹¤ë
415function lfGetReviewData($id) {
416    $objQuery = new SC_Query;
417    //¾¦Éʤ´¤È¤Î¥ì¥Ó¥å¡¼¾ðÊó¤ò¼èÆÀ¤¹¤ë
418    $col = "create_date, reviewer_url, reviewer_name, recommend_level, title, comment";
419    $from = "dtb_review";
420    $where = "del_flg = 0 AND status = 1 AND product_id = ? ";
421    $arrval[] = $id;
422    $arrReview = $objQuery->select($col, $from, $where, $arrval);
423    return $arrReview;
424}
425
426//»ÙʧÊýË¡¤Î¼èÆÀ
427//payment_id    1:¥¯¥ì¥¸¥Ã¥È¡¡2:¥·¥ç¥Ã¥Ô¥ó¥°¥í¡¼¥ó 
428function lfGetPayment() {
429    $objQuery = new SC_Query;
430    $col = "payment_id, rule, payment_method";
431    $from = "dtb_payment";
432    $where = "del_flg = 0";
433    $order = "payment_id";
434    $objQuery->setorder($order);
435    $arrRet = $objQuery->select($col, $from, $where);
436    return $arrRet;
437}
438
439?>
Note: See TracBrowser for help on using the repository browser.