HomeHelpTrac

Ignore:
Timestamp:
12/22/08 10:17:31 (3 years ago)
Author:
hihi
Message:
 
File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/xmlrpc/BxDolXMLRPCMedia.php

    r7936 r8181  
    33class BxDolXMLRPCMedia 
    44{ 
    5     function getVideoInCategory($sUser, $sPwd, $sNick, $iCatId) 
     5    function getVideoInCategory($sUser, $sPwd, $sNick, $sCat) 
    66    { 
    77        $iIdProfile = BxDolXMLRPCUtil::getIdByNickname ($sNick); 
     
    99            return new xmlrpcresp(new xmlrpcval(array('error' => new xmlrpcval(1,"int")), "scruct")); 
    1010 
    11         $aMedia = array(); 
    12         { 
    13             $a = array ( 
    14                 'id' => new xmlrpcval(1), 
    15                 'title' => new xmlrpcval('title'), 
    16                 'desc' => new xmlrpcval('desc'), 
    17                 'icon' =>new xmlrpcval('http://www.boonex.us/ray/modules/movie/files/941_small.jpg'), 
    18                 'file' =>new xmlrpcval('http://www.boonex.us/111.mp4'), 
    19                 'cat' =>new xmlrpcval(1), 
    20             ); 
    21             $aMedia[] = new xmlrpcval($a, 'struct'); 
    22  
    23             $a = array ( 
    24                 'id' => new xmlrpcval(2), 
    25                 'title' => new xmlrpcval('title22'), 
    26                 'desc' => new xmlrpcval('desc22'), 
    27                 'icon' =>new xmlrpcval('http://www.boonex.us/ray/modules/movie/files/475_small.jpg'), 
    28                 'file' =>new xmlrpcval('http://www.boonex.us/222.mp4'), 
    29                 'cat' =>new xmlrpcval(1), 
    30             ); 
    31             $aMedia[] = new xmlrpcval($a, 'struct'); 
    32         } 
    33  
    34         return new xmlrpcval ($aMedia, "array"); 
    35  
     11        global $tmpl; 
     12        require_once(BX_DIRECTORY_PATH_ROOT . 'templates/tmpl_'.$tmpl.'/scripts/BxTemplSearchSharedVideo.php'); 
     13        $oMedia = new BxTemplSearchSharedVideo(); 
     14        return BxDolXMLRPCMedia::_getFilesInCategory ($oMedia, $iIdProfile, $sCat); 
    3615    } 
    3716 
    38     function getAudioInCategory($sUser, $sPwd, $sNick, $iCatId) 
     17    function getAudioInCategory($sUser, $sPwd, $sNick, $sCat) 
    3918    { 
    4019        $iIdProfile = BxDolXMLRPCUtil::getIdByNickname ($sNick); 
     
    4221            return new xmlrpcresp(new xmlrpcval(array('error' => new xmlrpcval(1,"int")), "scruct")); 
    4322 
    44         $aMedia = array(); 
    45         { 
    46             $a = array ( 
    47                 'id' => new xmlrpcval(1), 
    48                 'title' => new xmlrpcval('title'), 
    49                 'desc' => new xmlrpcval('desc'), 
    50                 'icon' =>new xmlrpcval('http://www.boonex.us/templates/tmpl_uni/images/music.png'), 
    51                 'file' =>new xmlrpcval('http://hihi.s/1.mp3'), 
    52                 'cat' =>new xmlrpcval(1), 
    53             ); 
    54             $aMedia[] = new xmlrpcval($a, 'struct'); 
    55         } 
    56  
    57         return new xmlrpcval ($aMedia, "array"); 
     23        global $tmpl; 
     24        require_once(BX_DIRECTORY_PATH_ROOT . 'templates/tmpl_'.$tmpl.'/scripts/BxTemplSearchSharedMusic.php'); 
     25        $oMedia = new BxTemplSearchSharedMusic(); 
     26        return BxDolXMLRPCMedia::_getFilesInCategory ($oMedia, $iIdProfile, $sCat); 
    5827    } 
    5928 
    6029    function getAudioCategories ($sUser, $sPwd, $sNick) 
    6130    { 
    62         return BxDolXMLRPCMedia::getVideoCategories ($sUser, $sPwd, $sNick); 
     31        $iIdProfile = BxDolXMLRPCUtil::getIdByNickname ($sNick); 
     32        if (!$iIdProfile || !($iId = BxDolXMLRPCUtil::checkLogin ($sUser, $sPwd))) 
     33            return new xmlrpcresp(new xmlrpcval(array('error' => new xmlrpcval(1,"int")), "scruct")); 
     34 
     35        require_once(BX_DIRECTORY_PATH_CLASSES . 'BxDolSharedMusic.php'); 
     36        $oMedia = new BxDolSharedMusic();          
     37 
     38        return BxDolXMLRPCMedia::_getMediaCategories ($oMedia->sFileTable, $oMedia->aFileFields['medID'], $oMedia->sType, $iIdProfile); 
    6339    } 
    6440 
     
    6945            return new xmlrpcresp(new xmlrpcval(array('error' => new xmlrpcval(1,"int")), "scruct")); 
    7046 
    71         $aRet = array(); 
    72         { 
    73             $aMedia = array ( 
    74                 'Id' => new xmlrpcval(1), 
    75                 'Title' => new xmlrpcval('Title'), 
    76                 'Desc' =>new xmlrpcval('Desc'), 
    77                 'Num' =>new xmlrpcval(1), 
    78             ); 
    79             $aMedias[] = new xmlrpcval($aMedia, 'struct'); 
    80         } 
    81         return new xmlrpcval ($aMedias, "array"); 
     47        require_once(BX_DIRECTORY_PATH_CLASSES . 'BxDolSharedVideo.php'); 
     48        $oMedia = new BxDolSharedVideo();          
     49 
     50        return BxDolXMLRPCMedia::_getMediaCategories ($oMedia->sFileTable, $oMedia->aFileFields['medID'], $oMedia->sType, $iIdProfile); 
    8251    } 
    8352 
     53    function _getMediaCategories ($sTable, $sFieldId, $sType, $iIdProfile) 
     54    { 
     55        if (!($r = db_res (" 
     56            SELECT `c`.`Category`, COUNT(`f`.`$sFieldId`) AS `Num` 
     57            FROM `Categories` AS `c` 
     58            LEFT JOIN `$sTable` AS `f` ON (`f`.`$sFieldId` = `c`.`ID`) 
     59            WHERE `c`.`Type` = '$sType' AND (`c`.`Owner` = '0' OR `c`.`Owner` = '$iIdProfile') 
     60            GROUP BY `c`.`Category`"))) 
     61            return new xmlrpcval (array(), "array");         
     62        $aRet = array(); 
     63        while ($a = mysql_fetch_array ($r)) 
     64        { 
     65            $aImage = array ( 
     66                'Id' => new xmlrpcval($a['Category']), 
     67                'Title' => new xmlrpcval($a['Category']), 
     68                'Num' =>new xmlrpcval($a['Num']), 
     69            ); 
     70            $aImages[] = new xmlrpcval($aImage, 'struct'); 
     71        } 
     72        return new xmlrpcval ($aImages, "array"); 
     73    }    
     74 
     75    function _getFilesInCategory (&$oMedia, $iIdProfile, $sCat) 
     76    {       
     77        $oMedia->aCurrent['restriction']['owner']['value'] = $iIdProfile;   
     78        $oMedia->aCurrent['paginate']['perPage'] = 1000; 
     79        $oMedia->aCurrent['join']['category'] = array( 
     80            'type' => 'left', 
     81            'table' => 'Categories', 
     82            'mainField' => $oMedia->aPseud['id'], 
     83            'onField' => 'ID', 
     84            'joinFields' => array('Category') 
     85        ); 
     86        $oMedia->aCurrent['restriction']['category'] = array( 
     87            'value' => $sCat, 
     88            'field' => 'Category', 
     89            'operator' => '=', 
     90            'table' => 'Categories'  
     91        );          
     92 
     93        $aFiles = array(); 
     94        $a = $oMedia->getSearchData(); 
     95        if (!$a) 
     96            return new xmlrpcval (array(), "array"); 
     97 
     98        foreach ($a as $k => $aRow) 
     99        { 
     100            $a = array ( 
     101                'id' => new xmlrpcval($aRow['id']), 
     102                'title' => new xmlrpcval($aRow['title']), 
     103                'desc' => new xmlrpcval($aRow['size']), 
     104                'icon' =>new xmlrpcval($oMedia->getImgUrl($aRow['id'], 'icon')), 
     105                'file' =>new xmlrpcval($oMedia->getImgUrl($aRow['id'], 'file')), 
     106                'cat' =>new xmlrpcval($sCat), 
     107            ); 
     108            $aFiles[] = new xmlrpcval($a, 'struct'); 
     109        } 
     110 
     111        return new xmlrpcval ($aFiles, "array"); 
     112    } 
    84113} 
    85114 
Note: See TracChangeset for help on using the changeset viewer.