listday_cal_week.php

来自「极限OA开源系统」· PHP 代码 · 共 121 行

PHP
121
字号
<?
/********************************************************************************/
/* 极限办公自动化系统 (极限OA)													*/
/* ========================      												*/
/* 欢迎使用 极限OA,在您开始使用之前,请务必完整阅读本软件附带的全部说明档				*/
/********************************************************************************/
/* Welcome to http://www.xsp.cn & http://oa.xsp.cn								*/
/* 技术支持论坛 http://www.1119.net												*/
/********************************************************************************/
/* 商业购买请联系 临海市极限网络有限公司											*/
/* 联系电话: (0576) 5131349	邮件: mkt@xsp.cn	QQ: 562873							*/
/********************************************************************************/
class Calendar{
    var $YEAR,$MONTH,$DAY;
    var $WEEK=array("日","一","二","三","四","五","六");
    var $_MONTH=array(
            "01"=>"一月",
            "02"=>"二月",
            "03"=>"三月",
            "04"=>"四月",
            "05"=>"五月",
            "06"=>"六月",
            "07"=>"七月",
            "08"=>"八月",
            "09"=>"九月",
            "10"=>"十月",
            "11"=>"十一",
            "12"=>"十二"
        );


    function Calendar($time,$diary_list,$diary_count){
		$this->setYear(date('Y',$time));
		$this->setMonth(date('m',$time));
		$this->setDay(date('d',$time));
		$this->diary_list=$diary_list;
		$this->diary_count=$diary_count;
    }

    //设置年份
    function setYear($year){
        $this->YEAR=$year;
    }
    //获得年份
    function getYear(){
        return $this->YEAR;
    }
    //设置月份
    function setMonth($month){
        $this->MONTH=$month;
    }
    //获得月份
    function getMonth(){
        return $this->MONTH;
    }
    //设置日期
    function setDay($day){
        $this->DAY=sprintf("%d",$day);
    }
    //获得日期
    function getDay(){
        return $this->DAY;
    }
    //打印日历
    function OUT(){
		
		$out .= "<tr bgcolor=#6A94C8><td align='center' width='11%' ><font color='#FFFFFF'>时 间 段</font></td>";
		for($i=0;$i<=6;$i++) {
			$tmp_0 = mktime(0,0,0,$this->MONTH,$this->DAY + $i,$this->YEAR);
			$tmp_1 = date('Y-m-d',$tmp_0);
			$tmp_2 = date('w',$tmp_0);
			$tmp_3 = $this->WEEK[$tmp_2];
			$out .= "<td align='center' width=12% ><font color='#FFFFFF'>$tmp_1<br>星期$tmp_3</font></td>";
		}
		
		$out .= "</tr>";
        for($Tmpb=0;$Tmpb<=22;$Tmpb+=2) {
			$tmp_0 = "$Tmpb:00-".($Tmpb+2).':00';
			$out .= "<tr class='light' onMouseOver='onColor(this);' onMouseOut='offColor(this);'>";
			$out .= "<td align='center' bgcolor=LightGrey width='11%'>$tmp_0</td>";
			for($i=0;$i<=6;$i++) {
				$temp_di2 = $this->YEAR.'-'.$this->MONTH.'-'.($this->DAY + $i);
				if($this->diary_count[$temp_di2] > 0) {
					$out0 = $ps = '';
					foreach($this->diary_list as $key=>$val) {
						$ps2 = explode(':',$val[stime]);
						if($val[tdate] == $temp_di2 && $ps2[0] == $Tmpb) {
							$ps = true;
							$out0 .= "
                              <a href='#' onclick=\"window.showModalDialog('dailyop.php?action=listday&sysaction=show&id=$val[id]',window,'dialogWidth:550px;dialogHeight:500px;status:no;help:no;scroll:no')\">
                                  $val[title]
                              </a><br>";
						}
					}
				}
				if($ps) {
					$out .= "<td align=center valign=top>$out0</td>";unset($ps);
				}else {
					$out .= "<td align=center valign=top>&nbsp;</td>";
				}
			}
			$out .= "</tr>";
		}
//exit;


        return $out;
    }
    //获得方法内指定的日期的星期数
    function getWeek($year,$month,$day){
        $week=date("w",mktime(0,0,0,$month,$day,$year));//获得星期
        return $week;//获得星期
    }

}




?>

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?