diff --git a/calendar/inc/functions.inc.php b/calendar/inc/functions.inc.php index 292216543e..6c26ed17cd 100755 --- a/calendar/inc/functions.inc.php +++ b/calendar/inc/functions.inc.php @@ -1035,6 +1035,64 @@ return $str; } + function mini_calendar($day,$month,$year,$link="") { + global $phpgw, $phpgw_info, $view; + + $date = $this->makegmttime(0,0,0,$month,$day,$year); + $month_ago = intval(date("Ymd",mktime(0,0,0,$month - 1,$day,$year))); + $month_ahead = intval(date("Ymd",mktime(0,0,0,$month + 1,$day,$year))); + $monthstart = intval(date("Ymd",mktime(0,0,0,$month,1,$year))); + $monthend = intval(date("Ymd",mktime(0,0,0,$month + 1,0,$year))); + + $weekstarttime = $this->get_sunday_before($year,$month,1); + if ($phpgw_info["user"]["preferences"]["calendar"]["weekdaystarts"] == "Monday") { + $days = array(0 => "Monday", 1 => "Tuesday", 2 => "Wednesday", 3 => "Thursday", 4 => "Friday", 5 => "Saturday", 6 => "Sunday"); + $weekstarttime += (3600 * 25); + } else { + $days = array(0 => "Sunday", 1 => "Monday", 2 => "Tuesday", 3 => "Wednesday", 4 => "Thursday", 5 => "Friday", 6 => "Saturday"); + } + $p = new Template($phpgw->common->get_tpl_dir('calendar')); + $p->set_file(array("mini_cal" => "mini_cal.tpl")); + $p->set_block("mini_cal","month_week"); + $p->set_block("mini_cal","day"); + $p->set_var("bgcolor",$phpgw_info["theme"]["bg_text"]); + $p->set_var("bgcolor1",$phpgw_info["theme"]["bg_color"]); + $p->set_var("month",lang($phpgw->common->show_date($date["raw"],"F"))." ".$year); + $p->set_var("prevmonth",$phpgw->link($phpgw_info["server"]["webserver_url"]."/calendar/index.php","date=".$month_ago)); + $p->set_var("nextmonth",$phpgw->link($phpgw_info["server"]["webserver_url"]."/calendar/index.php","date=".$month_ahead)); + + $p->set_var('bgcolor2',$phpgw_info["theme"]["cal_dayview"]); + for($i=0;$i<7;$i++) { + $p->set_var('dayname',substr(lang($days[$i]),0,2)); + $p->parse('daynames','day',True); + } + for($i=$weekstarttime;date("Ymd",$i)<=$monthend;$i += (24 * 3600 * 7)) { + for($j=0;$j<7;$j++) { + $str = ""; + $cal = $this->gmtdate($i + ($j * 24 * 3600)); + if($cal["full"] >= $monthstart && $cal["full"] <= $monthend) { + if($cal["full"] == $this->today["full"]) { + $p->set_var('bgcolor2',$phpgw_info["theme"]["cal_today"]); + } else { + $p->set_var('bgcolor2','#FFFFFF'); + } + if(!$this->printer_friendly) { + $str .= "link($phpgw_info["server"]["webserver_url"]."/calendar/".$link,"year=".$cal["year"]."&month=".$cal["month"]."&day=".$cal["day"])."\">"; + } + $str .= $cal["day"]; + if(!$this->printer_friendly) $str .= ""; + $p->set_var('dayname',$str); + } else { + $p->set_var('bgcolor2','FEFEFE'); + $p->set_var('dayname',$cal["day"]); + } + $p->parse('monthweek_day','day',True); + } + $p->parse('display_monthweek','month_week',True); + $p->set_var('monthweek_day'); + } + $p->pparse('out','mini_cal'); + } function html_for_event_day_at_a_glance ($event) { global $phpgw, $phpgw_info; diff --git a/calendar/inc/hook_home.inc.php b/calendar/inc/hook_home.inc.php index c518719556..5361c7ba94 100755 --- a/calendar/inc/hook_home.inc.php +++ b/calendar/inc/hook_home.inc.php @@ -12,14 +12,15 @@ include($phpgw_info["server"]["app_inc"] . "/functions.inc.php"); echo "\n"; $now = $phpgw->calendar->splitdate(mktime (0, 0, 0, $phpgw->calendar->today["month"], $phpgw->calendar->today["day"], $phpgw->calendar->today["year"]) - ((60 * 60) * $phpgw_info["user"]["preferences"]["common"]["tz_offset"])); - echo "" . "
" . lang(date("F",$phpgw->calendar->today["raw"])) . " " .$phpgw->calendar->today["day"] . ", " . $phpgw->calendar->today["year"] ."
" . $phpgw->calendar->print_day_at_a_glance($now)."
\n"; echo "\n"; + $phpgw->calendar->mini_calendar($phpgw->calendar->today["day"],$phpgw->calendar->today["month"],$phpgw->calendar->today["year"]); unset($phpgw->calendar); } + $phpgw_info["server"]["app_inc"] = $tmp_app_inc; ?> diff --git a/calendar/templates/default/mini_cal.tpl b/calendar/templates/default/mini_cal.tpl new file mode 100755 index 0000000000..0f7aef598c --- /dev/null +++ b/calendar/templates/default/mini_cal.tpl @@ -0,0 +1,26 @@ + + + + + + + + +
{month}«  »
+ + + {daynames} + + {display_monthweek} +
+
+ + + {dayname} + + + + + {monthweek_day} + + diff --git a/calendar/templates/verdilak/mini_cal.tpl b/calendar/templates/verdilak/mini_cal.tpl new file mode 100755 index 0000000000..0f7aef598c --- /dev/null +++ b/calendar/templates/verdilak/mini_cal.tpl @@ -0,0 +1,26 @@ + + + + + + + + +
{month}«  »
+ + + {daynames} + + {display_monthweek} +
+
+ + + {dayname} + + + + + {monthweek_day} + +