Add rss export in agenda module

This commit is contained in:
Laurent Destailleur 2008-04-27 20:58:11 +00:00
parent cbfcd1c7e8
commit 8aa261fb8f
2 changed files with 33 additions and 46 deletions

View File

@ -625,7 +625,8 @@ class ActionComm
$event['enddate']=$dateend; // Not required with type 'journal' $event['enddate']=$dateend; // Not required with type 'journal'
$event['summary']=$obj->label; $event['summary']=$obj->label;
$event['desc']=$obj->note; $event['desc']=$obj->note;
$event['author']=$obj->fk_user_done>0?$obj->fk_user_done:$obj->fk_user_action; $event['category']=$obj->libelle;
$event['author']=$obj->fk_user_author;
$event['transparency']='TRANSPARENT'; // TRANSPARENT or OPAQUE $event['transparency']='TRANSPARENT'; // TRANSPARENT or OPAQUE
$url=$dolibarr_main_url_root.DOL_URL_ROOT; $url=$dolibarr_main_url_root.DOL_URL_ROOT;
if (! eregi('\/$',$url)) $url.='/'; if (! eregi('\/$',$url)) $url.='/';

View File

@ -209,7 +209,7 @@ function build_calfile($format='vcal',$title,$desc,$events_array,$outputfile,$fi
\param format 'rss' \param format 'rss'
\param title Title of export \param title Title of export
\param desc Description of export \param desc Description of export
\param events_array Array of events ('eid','startdate','duration','enddate','title','summary','category','email','url','desc','author') \param events_array Array of events ('uid','startdate','summary','url','desc','author','category')
\param outputfile Output file \param outputfile Output file
\param filter Filter \param filter Filter
\return int <0 if ko, Nb of events in file if ok \return int <0 if ko, Nb of events in file if ok
@ -223,7 +223,6 @@ function build_rssfile($format='rss',$title,$desc,$events_array,$outputfile,$fil
$fichier=fopen($outputfile,'w'); $fichier=fopen($outputfile,'w');
if ($fichier) if ($fichier)
{ {
$now=mktime();
$date=date("r"); $date=date("r");
// Print header // Print header
@ -234,24 +233,25 @@ function build_rssfile($format='rss',$title,$desc,$events_array,$outputfile,$fil
fwrite($fichier, $html); fwrite($fichier, $html);
fwrite($fichier, "\n"); fwrite($fichier, "\n");
$html="<channel>". $html="<channel>\n".
"\n". "<title>".$title."</title>\n";
"<title>".$title."</title>";
fwrite($fichier, $html); fwrite($fichier, $html);
fwrite($fichier, "\n");
$html='<description><![CDATA['.$desc.'.]]></description>'. $html='<description><![CDATA['.$desc.'.]]></description>'."\n".
// '<language>fr</language>'. // '<language>fr</language>'."\n".
'<copyright>Dolibarr</copyright>'. '<copyright>Dolibarr</copyright>'."\n".
'<lastBuildDate>'.$date.'</lastBuildDate>'. '<lastBuildDate>'.$date.'</lastBuildDate>'."\n".
'<generator>Dolibarr</generator>'. '<generator>Dolibarr</generator>'."\n".
'<link><![CDATA['.$_SERVER["PHP_SELF"].']]></link>'; '<link><![CDATA['.$_SERVER["PHP_SELF"].']]></link>'."\n";
// '<image>'. // '<managingEditor>editor@example.com</managingEditor>'."\n"
// '<url><![CDATA[http://www.lesbonnesannonces.com/images/logo_rss.gif]]></url>'. // '<webMaster>webmaster@example.com</webMaster>'."\n"
// '<title><![CDATA[Dolibarr events]]></title>'. // '<ttl>5</ttl>'."\n"
// '<link><![CDATA[http://www.lesbonnesannonces.com/]]></link>'. // '<image>'."\n"
// '<width>144</width>'. // '<url><![CDATA[http://www.lesbonnesannonces.com/images/logo_rss.gif]]></url>'."\n"
// '<height>36</height>'. // '<title><![CDATA[Dolibarr events]]></title>'."\n"
// '<link><![CDATA[http://www.lesbonnesannonces.com/]]></link>'."\n"
// '<width>144</width>'."\n"
// '<height>36</height>'."\n"
// '</image>'."\n"; // '</image>'."\n";
#print $html; #print $html;
@ -270,42 +270,28 @@ function build_rssfile($format='rss',$title,$desc,$events_array,$outputfile,$fil
if ($eventqualified) if ($eventqualified)
{ {
//$uid = dolibarr_print_date($now,'dayhourxcard').'-'.$event['uid']."-export@".$_SERVER["SERVER_NAME"];
$uid = $event['uid']; $uid = $event['uid'];
$type = $event['type'];
$startdate = $event['startdate']; $startdate = $event['startdate'];
$duration = $event['duration'];
$enddate = $event['enddate'];
$summary = $event['summary']; $summary = $event['summary'];
$category = $event['category'];
$location = $event['location'];
$email = $event['email'];
$url = $event['url']; $url = $event['url'];
$transparency = $event['transparency']; $author = $event['author'];
$category = $event['category'];
$description=eregi_replace('<br[ \/]?>',"\n",$event['desc']); $description=eregi_replace('<br[ \/]?>',"\n",$event['desc']);
$description=clean_html($description,0); // Remove html tags $description=clean_html($description,0); // Remove html tags
fwrite ($fichier, "<item>\n");
fwrite ($fichier, "<item>"); fwrite ($fichier, "<title><![CDATA[".$summary."]]></title>"."\n");
fwrite ($fichier, "\n"); fwrite ($fichier, "<link><![CDATA[".$url."]]></link>"."\n");
fwrite ($fichier, "<title><![CDATA[".$summary."]]></title>"); fwrite ($fichier, "<author><![CDATA[".$author."]]></author>"."\n");
fwrite ($fichier, "\n"); fwrite ($fichier, "<category><![CDATA[".$category."]]></category>"."\n");
fwrite ($fichier, "<link><![CDATA[".$url."]]></link>");
fwrite ($fichier, "\n");
fwrite ($fichier, "<description><![CDATA["); fwrite ($fichier, "<description><![CDATA[");
if ($description) fwrite ($fichier, $description); if ($description) fwrite ($fichier, $description);
//else fwrite ($fichier, 'NoDesc'); //else fwrite ($fichier, 'NoDesc');
fwrite ($fichier, "]]></description>"); fwrite ($fichier, "]]></description>\n");
fwrite ($fichier, "\n"); fwrite ($fichier, "<pubDate>".date("r", $startdate)."</pubDate>\n");
fwrite ($fichier, "<pubDate>".date("r", $startdate)."</pubDate>"); fwrite ($fichier, "<guid isPermaLink=\"true\"><![CDATA[".$uid."]]></guid>\n");
fwrite ($fichier, "\n"); fwrite ($fichier, "<source><![CDATA[Dolibarr]]></source>\n");
fwrite ($fichier, '<guid isPermaLink="true"><![CDATA['); fwrite ($fichier, "</item>\n");
// http://www.lesbonnesannonces.com/index_categ.php?origine=&id_categ='.$id_categ.
fwrite ($fichier, $url);
fwrite ($fichier, ']]></guid>');
fwrite ($fichier, "\n");
fwrite ($fichier, "</item>");
fwrite ($fichier, "\n");
//chmod($fichierout, 0664); //chmod($fichierout, 0664);
} }