0init($anno, $mes, $dia); } function init($anno, $mes, $dia) { $this->setFecha($anno, $mes, $dia); $this->setNumeros(); $this->setTitulo(); $this->setTabla(); $this->setUrl(); } //FIN functino init function setFecha($anno, $mes, $dia) { /* Comprobamos el año */ if ($anno > 0 AND $anno < 32767) { $this->anno = $anno; } else { $this->anno = intval(date("Y")); } /* Comprobamos el mes */ if ($mes > 0 AND $mes < 13) { $this->mes = $mes; } else { $this->mes = intval(date("m")); } /* Comprobamos el día */ if (checkdate($this->mes, $dia, $this->anno)) { $this->dia = $dia; } else { $this->dia = intval(date("d")); } } // FIN function setFecha function setNumeros($letra= "Arial", $tamanno = "2", $color = "#FFFF00", $fondo = "#AA6F00") { $this->numletra = $letra; if (is_int($tamano)) { $this->numtamanno = strval($tamanno); } else { $this->numtamanno = $tamanno; } $this->numcolor = $color; $this->numfondo = $fondo; } //FIN function setNumeros function setTitulo($letra= "Arial", $tamanno = "2", $color = "#FFFFFF", $fondo = "0000FF") { $this->titletra = $letra; if (is_int($tamano)) { $this->tittamanno = strval($tamanno); } else { $this->tittamanno = $tamanno; } $this->titcolor = $color; $this->titfondo = $fondo; } //FIN function setTitulo function setTabla($alin = "center", $borde=1, $ancho=35, $alto=30) { $this->alineacion = $alin; $this->borde = strval($borde); $this->col_ancho = strval($ancho); $this->col_alto = strval($alto); } //FIN function setTabla function setUrl($url="", $target=""){ $this->url = $url; $this->target = $target; } //FIN funtion setUrl function imprimir() { /* tabla con los dias de la semana */ //$semana = array ("Lunes", "Martes", "Miercoles", "Jueves", "Viernes", "Sábado", "Domingo"); $semana = array (1=>"Lun", "Mar", "Mie", "Jue", "Vie", "Sáb", "Dom"); //$nombremes = array (1=>"Enero", "Febrero", "Marzo", "Abril", "Mayo", "Junio", "Julio", "Agosto", "Septiembre", "Octubre", "Noviembre", "Diciembre"); $nombremes = array (1=>"ENERO", "FEBRERO", "MARZO", "ABRIL", "MAYO", "JUNIO", "JULIO", "AGOSTO", "SEPTIEMBRE", "OCTUBRE", "NOVIEMBRE", "DICIEMBRE"); /* Cálculamos cuantos días tiene el mes */ $ultimodia = 31; while (! checkdate($this->mes, $ultimodia, $this->anno)){ $ultimodia -= 1; } /* Cálculamos número de dia de la semana del primer dia del mes seleccionado */ $DiaSemanaPrimerDiaMes = date('w', mktime(0,0,0,$this->mes,1,$this->anno)); // en EEUU el domingo es el primer día de la semana (domingo=0) if ($DiaSemanaPrimerDiaMes == 0 ) { $DiaSemanaPrimerDiaMes = 7 ; } // para depurar if ($this->DEBUG) { echo "Año: ".$this->anno."
\n"; echo "Mes: ".$this->mes." - ".$nombremes[$this->mes]."
\n"; echo "Dia: ".$this->dia."
\n"; echo "Dia de la semana 1er. día del Mes: ".$DiaSemanaPrimerDiaMes; } echo "
\n"; //
/* Create a table with days of the week headers */ echo "\n"; // Imprimimos el Mes y el Año" $alto_tit = $this->col_alto + 10; echo " \n"; echo "\n"; echo " \n"; // nombre de los dias de la semana echo " \n"; for ($i = 1; $i <= count($semana); $i++) { echo "\n"; } echo " \n"; /* Imprimimos celdas vacias hasta el dia de la semana del dia uno */ echo " \n"; $diasemana = 1; while($diasemana < $DiaSemanaPrimerDiaMes) { echo "\n"; $diasemana += 1; } for($dia = 1; $dia <= $ultimodia; $dia++) { echo "\n"; } else { echo "$dia\n"; } if ($diasemana == 7 AND $dia != $ultimodia) { echo "\n\n"; $diasemana = 1; } elseif ($diasemana == 7) { echo "\n\n"; } else { $diasemana += 1; } } /* Completamos la semana con celdas vacias */ if ($diasemana < 7) { while($diasemana <= 7 ) { echo "\n"; $diasemana += 1; } echo "\n"; } echo "
"; echo ""; echo $nombremes[$this->mes]." de ".$this->anno."
\n"; echo ""; echo "$semana[$i]
 "; echo ""; if ($this->url) { $http = $this->url."?anno=$this->anno&mes=$this->mes&dia=$dia"; if ($this->target) { $http .= " target='$this->target'"; } echo "$dia
 
\n"; echo "
\n"; } //fin clase } $cc = new calendario(); //$cc->init(1,2,2000); $cc->imprimir(); $cc->setUrl("ASF"); $cc->imprimir(); $cc->setNumeros("Arial", "2", "#FFFF00", "#FFFF00"); $cc->imprimir(); $cc->setTabla("right","0"); $cc->imprimir(); $cc->setTabla("center",0,45,55); $cc->imprimir() ?>