PHP-Calendar actualizado

Gracias a todos los que han sugerido los cambios, el calendario ya no tiene el error del día 35, ahora muestra el día en el que estamos. Ahora falta la posibilidad de agregar un color distinto al día en concreto, para que el usuario localice entre 28 y 31 días el día correspondiente.

Pueden descargar todo el paquete, y sobreescribir únicamente el archivo calendar.php que se encuentra en la carpeta /inc/. Recuerden no sobreescrir otro archivo como el de configuración por que sino se pueden perder datos o el enlace con la base de datos. También recuerden borrar el archivo install.php.

34 Respuestas a la entrada “PHP-Calendar actualizado”

diego, unicamente funciona conn base de datos el calendario este no?

bq.. *minid escribió*:

p. Ahora falta la posibilidad de agregar un color distinto al día en concreto, para que el usuario localice entre 28 y 31 días el día correspondiente

p. Eso es _relativamente sencillo_: buscas en el archivo @includes/main.php@ la @linea 100@, y encuentras la funcion que asigna los valores a la clase. Se podría cambiar por algo así:

// set whether the date is in the past or future/present
if($currentyear > $year || $currentyear == $year
    && ($currentmonth > $month || $currentmonth == $month 
        && $currentday > $day)) {

    $current_era = 'past';
}
else if($currentyear == $year
    && $currentmonth == $month 
        && $currentday == $day) {

    $current_era = 'present';
}
else {

    $current_era = 'future';
}

p. Ahora solo quedaría tocar un poco @css/main.css@ y listo. Por cierto, sigue mal el link de la hoja de estilos, –ya que es relativo a partir de la carpeta @includes/@;– pero se arregla poniendo el punto antes de la barra: @./css/main.css@

Escrito por Anónimo
Febrero 16th, 2004 at 1:00 am

sdfg

Escrito por Rodrigo
Febrero 16th, 2004 at 3:06 am

Poniendo el punto antes de la barra en que archivo ? /includes/calendar.php ? Probe cambiandolo y no lo puedo hacer andar con los estilos, veo en el codigo fuente (de la pagina devuelta ya procesada por el servidor) y sigue tomandome la siguiente ruta:

href=”/css/main.css”

*Rodrigo*, supongo que tendrás un editor de textos con el que puedes buscar, no? Bueno, pues abres el archivo @includes/calendar.php@ y buscas @/css/main.css@ y lo reemplazas por @./css/main.css@, pero búscalo hasta que te diga que ya no hay más o hasta que veas que la coincidencia actual ya está reemplazada, porque hay *dos* ;¬)

Una cosa en la que no me había fijado antes:

@(a > b || a == b) @ → @ a >= b@

lo digo porque así, la primera condición del condicional (valga la redundancia) quedaría:

if($currentyear >= $year
    && ($currentmonth >= $month 
        && $currentday > $day)) {

    [...]
}

p. solo eso ;)

Quizá os parezca una tontería a los que sepáis programar, pero pongo aquí esta mejora para los que no tengan ni idea(ni falta que les hace si no se dedican a esto).

Cuando estamos visionando las tareas de un día en concreto, si hacemos click en “Agregar un Item”, nos sale el formulario para agregar una tarea, pero por defecto viene la fecha del _día actual_ , a mí esto me resulta bastante incómodo, de modo que os digo lo que tenéis que cambiar para que al hacer click sobre “Agregar un Item”, os sala por defecto la fecha del _día que estabais visionando_.

En el archivo *calendar.php*, línea 302, hay que cambiar:

$output .= "
  • "._('Agregar un item') ."
  • n";

    Para que nos quede así:

    $output .= "
    
  • "._('Agregar un item') ."
  • n";

    Resumiendo, hay que cambiar:

    day=".date("j").""."&

    por:

    day=$day&

    Esta es la razón por la que no me gustan los smileys en los comentarios.

    Repito metiendo espacios, resumiendo, hay que cambiar:

    day=".date( " j " ).""."&

    Por:

    day=$day&

    Saludines

    Hoy mismo quitare los smileys.

    Juan, si funciona con una base de datos. MySQL, tu que tienes la suerte de tener un Mac, instalar MySQL no supone problemas.

    Listo, he cambiado el patrón de la cadena en Perl así detecta si es un smiley o un código.

    No puedo borrar un item. Me dice que “No hay eventos para borrar”. ???

    Xoan, hice la prueba con tu código, pero no me incluye el parametro “present” en la clase. Veré si es algún problema de caché o algo por el estilo.

    Yo tenía el mismo problema que Carlos: al eliminar un item me decía que no había ítems para borrar.

    He modificado unas líneas de código para solucionarlo, pero parece que no todo el mundo tiene este problema. ¿Podría ser un tema de configuración del Apache o del PHP.ini?

    Si es un error genérico os mandaré las líneas de código que he modificado.

    Notice: Undefined variable: output in i:archivos de programaeasyphp1-7wwwphp-calendarincludesdisplay.php on line 137

    Y no me sale lo de agregar un item etc…
    ¿alguien sabe porque?

    saludos

    Creo que ese error, se debe ha que quieren volver a la página de item, si borras por ejemplo el item 1060, y luego quieres ir a borrar el mismo, te saca el mensaje ese que estás mirando.

    Ahora, habría que ver cómo llegáis a ese punto, por que yo borro items y no me pasa ese mensaje.

    Quizás estáis apretando el botón de volver.

    A mi no me da ningún problema al borrar.

    Lo único que he tenido que tocar es el punto en la llamada a la hoja de estilos.

    El punto lo pondré por defecto, en las próximas versiones.

    Lo de la ruta de css, no es correcto escribir ./css/main.css , mas bien tendría que ser css/main.css , así sería la forma correcta.

    _¿Por qué no es correcto?_ _¿Hay alguna contradicción técnica?_

    Perdon *gekko*, pero sería correcta de las dos maneras:

    * @./css/main.css@
    * @css/main.css@

    En el primero de los casos, @./@ significa la carpeta actual, asi que incluso diría yo que es *más* correcto que la segunda, ya que en la segunda especificas unicamente la ruta a seguir.

    Lo que si se debería aclarar es que las carpetas se representan por @carpeta/@, y los archivos simplemente por @archivo.extension@, de esa forma es como se componen las URI(Identificador Uniforme del Recurso) (ó URL(Localizador Uniforme del Recurso) ó URN(Nombre Uniform del Resurso), no voy a entrar ahora en esa discusión) para que sean correctas, es decir, que @./@ *sí* que es válido.

    Bueno ya hice la actualizacion pero tengo un lio con: Identificarse mas exactamente con la autenticacion de usuarios.. y asigne user y pws desde MySqL no me permite acceder y adicionalmente le muestra el siguiente error cuando clickeo dentro de un dia .. help me

    Notice: Undefined variable: output in c:archivos de programaapache groupapachehtdocsagendaphp-calendar-0.8php-calendarincludesdisplay.php on line 137

    Hey yo le mande a Diego la actualizacion para que cambiara el dia actual de color y no lo incluyo? que mal pex!

    Escrito por Rodrigo
    Febrero 17th, 2004 at 3:13 am

    Xoan, gracias, habia cambiado solamente 1 sola ocurrencia de “main.css” … :p

    Escrito por Javier
    Febrero 17th, 2004 at 6:11 am

    Alguien sabe porque me aparecen unas lineas verticales punteadas sobre todos los casilleros del calendario?
    Aparecen y se van cuando le paso el mouse por arriba o las selecciono. Estoy usando el firefox.

    Y en tu sitio tambien minid.

    Escrito por Javier
    Febrero 17th, 2004 at 6:14 am

    Creo que es por la propiedad -moz-border-radius que usas en los css… que raro.

    Sí, el calendario está muy bien y todo eso… pero usa variables globales, y si tu servidor, por razonables motivos de seguridad, tiene desactivada la opción de registrar variables globales en el php.ini, pues el calendario no te sirve de nada porque no funciona.

    Sería preciso currarse una versión que utilizase o bien variables de sesión, o bien un paso de parámetros un poco más inteligente entre las funciones que componen el calendario, cualquier cosa excepto variables globales.

    ¿O es que sólo a mí me ha pasado esto?

    Escrito por Jose
    Marzo 16th, 2004 at 4:33 pm

    Hola,
    He instalado el calendario y funciona bién… pero, dependiendo del navegador, en la página que sale después de añadir una nota en el calendario, no se vé el texto insertado (el texto está blanco y no se vé al ser el fondo blanco)(Explorer).
    Por el contrario, en Firebird, sale de forma correcta.
    ¿Sabeis por qué???

    Saludos

    Escrito por xnet
    Marzo 23rd, 2004 at 6:04 pm

    alguien sabe como puedo hacer que el calendario funcione con varios usuarios registrados, lo intente pero no me permite agregar datos.

    Calendario Online
    Algunos arreglos y pocos cambios a la versión de mini-d de php-calendar

    Escrito por glucas
    Mayo 6th, 2004 at 3:10 am

    instale el programa y funciona bien el problema que tengo son con los asentos cambie el código a :

    por que en otras aplicaciones me ha funcionado talvez me puedan ayudar.

    Escrito por glucas
    Mayo 6th, 2004 at 3:14 am

    instale el programa y funciona bien el problema que tengo son con los asentos cambie el código a :


    por que en otras aplicaciones me ha funcionado talvez me puedan ayudar.

    Me ocurre lo mismo que José:

    “He instalado el calendario y funciona bien… pero, dependiendo del navegador, en la página que sale después de añadir una nota en el calendario, no se vé el texto insertado (el texto está blanco y no se vé al ser el fondo blanco)(Explorer).
    Por el contrario, en Firebird, sale de forma correcta.
    ¿Sabeis por qué???

    Saludos

    Comment por Jose — 16/3/2004″

    Por favor, Alguien podría ayudarme?
    Muchas gracias y felicitaciones a todos los que hicieron posible este script! :)

    LuisTV

    Hay una cuestión que en mi versión no esta resuelta (y o no sé como hacerlo.
    Cuando entras en una fecha en un mes diferente al corriente da la opción de ver el dia siguiente. Lo muestra correctamente pero sin embargo pierde el mes (y el día que muestra como siguiente es el siguiente numero de día pero del mes corriente)
    Supongo que debe ser sencillo pero yo no encuentro la solución.

    Escrito por Bravosea
    Mayo 13th, 2006 at 7:27 pm

    cuando hago click en un cuadro (en un día) en el que se ha incluído un evento…se ve el título pero no el evento…el caso es que el evento aparece pero debe estar en un color de texto tan tan blanco que no se lee…he cambiado varias veces los colores de texto y cuadros pero la acabo cagando siempre, el caso es que si intento seleccionar el texto con el cursor aparece (o sea que el texto está)…¿alguien sabe dónde está la edición del color del texto del evento que se lee al hacer click en el día?….Muchas gracias de antemano…. !!!!