Base layout of the core.
[platal.git] / plugins / function.valid_date.php
CommitLineData
46395fb8 1<?php
2/***************************************************************************
179afa7f 3 * Copyright (C) 2003-2008 Polytechnique.org *
46395fb8 4 * http://opensource.polytechnique.org/ *
5 * *
6 * This program is free software; you can redistribute it and/or modify *
7 * it under the terms of the GNU General Public License as published by *
8 * the Free Software Foundation; either version 2 of the License, or *
9 * (at your option) any later version. *
10 * *
11 * This program is distributed in the hope that it will be useful, *
12 * but WITHOUT ANY WARRANTY; without even the implied warranty of *
13 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the *
14 * GNU General Public License for more details. *
15 * *
16 * You should have received a copy of the GNU General Public License *
17 * along with this program; if not, write to the Free Software *
18 * Foundation, Inc., *
19 * 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA *
20 ***************************************************************************/
46395fb8 21
22function smarty_function_valid_date($params, &$smarty)
23{
24 extract($params);
25
26 if (!isset($name)) {
27 $name = 'valid_date';
28 }
29 $text = "<select name=\"$name\">";
30 if (!isset($from)) {
31 $from = 1;
32 }
33 if (!isset($to)) {
34 $to = 30;
35 }
36 $value = strtr($value, array('-' => ''));
37 $time = time() + 3600 * 24 * $from;
38 $mth = '';
39 for ($i = $from ; $i <= $to ; $i++) {
40 $p_stamp = date('Ymd', $time);
41 $date = date('d / m / Y', $time);
42 $select = ($p_stamp == $value) ? 'selected="selected"' : '';
43 $month = pl_entities(strftime('%B', $time), ENT_QUOTES);
44 if ($mth != $month) {
45 if ($i != $from) {
46 $text .= '</optgroup>';
47 }
48 $text .= "<optgroup label=\"$month\">";
49 $mth = $month;
50 }
51 $time += 3600 * 24;
52 $text .= "<option value=\"$p_stamp\" $select>$date</option>";
53 }
54 return $text . "</optgroup></select>";
55}
56
57/* vim: set expandtab enc=utf-8: */
58?>