function test_parseIso()
 {
     // multiple tests
     $tests = array(array('2010-08-17T09:23:14', 1282036994), array('20100817T09:23:14', 1282036994), array('2010-08-17 09:23:14', 1282036994), array('20100817 09:23:14', 1282036994), array('2010-08-17T09:23:14Z', 1282036994), array('20100817T09:23:14Z', 1282036994), array('2010-08-17T09:23', 1282036980), array('20100817T09:23', 1282036980), array('2010-08-17', 1282003200));
     foreach ($tests as $test) {
         $dt = new IXR_Date($test[0]);
         $this->assertEqual($dt->getTimeStamp(), $test[1]);
     }
 }
 function test_parseIso()
 {
     $this->markTestSkipped('Skipped because it is failing');
     // multiple tests
     $tests = array(array('2010-08-17T09:23:14', 1282036994), array('20100817T09:23:14', 1282036994), array('2010-08-17 09:23:14', 1282036994), array('20100817 09:23:14', 1282036994), array('2010-08-17T09:23:14Z', 1282036994), array('20100817T09:23:14Z', 1282036994), array('2010-08-17 09:23:14+0000', 1282036994), array('2010-08-17 09:23:14+00:00', 1282036994), array('2010-08-17 12:23:14+03:00', 1282036994), array('2010-08-17T09:23', 1282036980), array('20100817T09:23', 1282036980), array('2010-08-17', 1282003200), array(1282036980, 1282036980));
     foreach ($tests as $test) {
         $dt = new IXR_Date($test[0]);
         $this->assertEquals($test[1], $dt->getTimeStamp());
     }
 }
Example #3
0
 /**
  * @return bool|string
  */
 function getXml()
 {
     // Return XML for this value
     switch ($this->type) {
         case 'boolean':
             return '<boolean>' . ($this->data ? '1' : '0') . '</boolean>';
             break;
         case 'int':
             return '<int>' . $this->data . '</int>';
             break;
         case 'double':
             return '<double>' . $this->data . '</double>';
             break;
         case 'string':
             return '<string>' . htmlspecialchars($this->data) . '</string>';
             break;
         case 'array':
             $return = '<array><data>' . "\n";
             foreach ($this->data as $item) {
                 $return .= '  <value>' . $item->getXml() . "</value>\n";
             }
             $return .= '</data></array>';
             return $return;
             break;
         case 'struct':
             $return = '<struct>' . "\n";
             foreach ($this->data as $name => $value) {
                 $return .= "  <member><name>{$name}</name><value>";
                 $return .= $value->getXml() . "</value></member>\n";
             }
             $return .= '</struct>';
             return $return;
             break;
         case 'date':
         case 'base64':
             return $this->data->getXml();
             break;
     }
     return false;
 }
Example #4
0
/**
 * Get recent posts
 *
 * This function retrieves a list of the most recent posts on the server.
 *
 * @param  array  $args (in appkey string, in blogid string, in username string,
 *                       in password string, in numberOfPosts integer)
 * @return string Upon success this will return an array of structs containing:
 * <code>{
 *    "dateCreated"  ISO.8601 date string
 *    "userid"       string 	
 *    "postid"       string  
 *    "content"      string  
 * }</code>
 *                Upon failure, the fault will be returned.
 * @link   http://docs.openlinksw.com/virtuoso/fn_blogger.getRecentPosts.html
 */
function getRecentPosts($args)
{
    global $server, $site;
    $password = $args[3];
    $numOfPosts = $args[4] + 0;
    if ($password === $site->ad_pass) {
        $posts = $site->getRecentPosts($numOfPosts);
        $return = array();
        foreach ($posts as $post) {
            $content = '<title>' . $post->getTitle() . '</title>' . $post->getContent();
            $content .= "\n" . '<template>' . $post->getAttribute('template') . '</template>';
            $time = new IXR_Date($post->time);
            $return[] = array('dateCreated' => $time->getIso(), 'userid' => 1, 'postid' => $post->postid, 'content' => $content);
        }
        return $return;
    } else {
        $server->error(8000, 'Wrong password given.');
    }
}