function rssmaker_plugin_favorite_action($_, $myUser)
{
    if ($_['action'] == 'show_favorite_rss') {
        header('Content-Type: text/xml; charset=utf-8');
        $eventManager = new Event();
        $items = $eventManager->loadAll(array("favorite" => 1));
        $ConfigManager = new Configuration();
        $ConfigManager->getAll();
        $link = $ConfigManager->get('root');
        $xml = '<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0" xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:wfw="http://wellformedweb.org/CommentAPI/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:sy="http://purl.org/rss/1.0/modules/syndication/" xmlns:slash="http://purl.org/rss/1.0/modules/slash/">
	<channel>
				<title>Leed (' . _t("FAVORITES") . ')</title>
				<atom:link href="' . $link . 'action.php?action=show_unread_rss" rel="self" type="application/rss+xml"/>
				<link>' . $link . '</link>
				<description>Aggrégation des flux non lus</description>
				<language>fr-fr</language>
				<copyright>DWTFYW</copyright>
				<pubDate>' . date('r', gmstrftime(time())) . '</pubDate>
				<lastBuildDate>' . date('r', gmstrftime(time())) . '</lastBuildDate>
				<sy:updatePeriod>hourly</sy:updatePeriod>
				<sy:updateFrequency>1</sy:updateFrequency>
				<generator>Leed (LightFeed Agregator) ' . VERSION_NAME . '</generator>';
        usort($items, 'rssmaker_plugin_compare_event');
        foreach ($items as $item) {
            $xml .= '<item>
				<title><![CDATA[' . html_entity_decode($item->getTitle()) . ']]></title>
				<link>' . $item->getLink() . '</link>
				<pubDate>' . date('r', gmstrftime($item->getPubdate())) . '</pubDate>
				<guid isPermaLink="true">' . $item->getLink() . '</guid>

				<description>
				<![CDATA[' . $item->getDescription() . '
				]]>
				</description>

				<content:encoded><![CDATA[' . $item->getDescription() . ']]></content:encoded>
				<dc:creator>' . ('' == $item->getCreator() ? 'Anonyme' : $item->getCreator()) . '</dc:creator>
				</item>';
        }
        $xml .= '</channel></rss>';
        echo $xml;
    }
}
Example #2
0
     Plugin::callHook("vocal_command", array(&$response, $actionUrl));
     $json = json_encode($response);
     echo $json == '[]' ? '{}' : $json;
     break;
 case 'GET_EVENT':
     if ($myUser->getId() == '') {
         exit('{"error":"invalid or missing token"}');
     }
     if (!$myUser->can('vocal', 'r')) {
         exit('{"error":"insufficient permissions for this account"}');
     }
     $response = array('responses' => array());
     Plugin::callHook("get_event", array(&$response));
     $checker = isset($_['checker']) ? $_['checker'] : 'client';
     $eventManager = new Event();
     $events = $eventManager->loadAll(array(), 'id');
     $time = date('i-H-d-m-Y');
     list($minut, $hour, $day, $month, $year) = explode('-', $time);
     foreach ($events as $event) {
         if (in_array($checker, $event->getRecipients()) && $event->getState() == '1') {
             if (($event->getMinut() == '*' || in_array($minut, explode(',', $event->getMinut()))) && ($event->getHour() == '*' || in_array($hour, explode(',', $event->getHour()))) && ($event->getDay() == '*' || in_array($day, explode(',', $event->getDay()))) && ($event->getMonth() == '*' || in_array($month, explode(',', $event->getMonth()))) && ($event->getYear() == '*' || in_array($year, explode(',', $event->getYear())))) {
                 if ($event->getRepeat() != $time) {
                     if (in_array($checker, $event->getRecipients())) {
                         $event->setRepeat($time);
                         $response['responses'][] = $event->getContent();
                         //Le serveur ne peux qu'executer des commandes programme
                         if ($checker == 'server') {
                             $content = $event->getContent();
                             switch ($content['type']) {
                                 case 'command':
                                     exec(htmlspecialchars_decode($content['program']));
<?php

define('ROOT', dirname(dirname(__DIR__)));
require_once ROOT . '/db.php';
require_once ROOT . '/util/response_util.php';
require_once ROOT . '/beans/event.php';
require_once ROOT . '/beans/dbexception.php';
$id = $_GET['id'];
$db = acquireDatabase();
$loader = new Event($db);
try {
    if (isset($id)) {
        $res = $loader->loadId($id);
    } else {
        $res = $loader->loadAll();
    }
    sendSimpleData($res);
} catch (DbException $e) {
    sendMessage(ERR, $e->getMessage());
}
$db->close();