logo.png

CONTENT

WIWI

PICAL

DOCMANAGER

NEWS

XLANGUAGES

XCGALLERY

Home Up


Contents



1 Installation

# su - xoops
$ cd
$ wget http://downloads.sourceforge.net/xfr/xoops2-mod_piCal-0.91g.fr.zip
$ unzip xoops2-mod_piCal-0.91g.fr.zip
$ mv piCal-0.9/modules/piCal/ htdocs/modules/


2 Coloration

Connectez vous en tant qu'admin puis choisissez Administration->Modules->Install. Pour colorier les catégories, il faut recopier EXACTEMENT le nom des catégories dans le css du module. A noter si une catégorie se compose de plusieurs mots seul le premier mot est à intégrer dans le css. (Il faut donc éviter d'avoir plusieurs catégories qui commencent par le même mot...) Il suffit d'ajouter le code couleur des catégories dans le fichier : htdocs/modules/piCal/images/default/style.css

/* Style sheet for piCal (you can add embed css's here) */ 

.Cat01 {color:#FF0000} 
.Cat02 {color:#00FF00} 
.Cat03 {color:#0000FF} 
.Cat04 {color:#000000}


3 Export automatique

Via CRONTAB, on dépose un fichier ICAL sur le serveur WEB à l'aide de cet automate.

#!/usr/bin/perl -w
use strict;
use WWW::Mechanize;
#-------------------
my $login="...";
my $passwd="...";
my $connexionUrl="http://.../index.php";
my $eventsUrl="http://.../modules/piCal/index.php?smode=List&op=all";
#-------------------
my $agent = WWW::Mechanize->new();

# Get cookie and connect
$agent->get($connexionUrl);
$agent->form_number(1);
$agent->field('uname', "$login");
$agent->field('pass', "$passwd");
$agent->click();

# Get event list
$agent->get($eventsUrl);
my $page=$agent->content; 
$agent->form_name('MainForm');
$agent->tick('dummy', 'on');

# Mark all events into checkbox
my $dummy="";
my $number="";
do {
  ($dummy, $page) = split(/<input type='checkbox' name='ids\[\]' value=/, $page, 2);
  if (defined($page))
  {
    ($dummy, $number) = split(/'/, $page, 3);
    $agent->tick('ids[]', "$number");
  }
}
while (defined($page));

# Post form
$agent->click('output_ics_confirm');

# Ask for iCalendar (Windows) format
$agent->form_number(1);
$agent->click('do_output');

# Print iCalendar file
print $agent->content;

Home Up

This document is also available in PDF and PostScript format.



2016-02-15