+ hubSearch part

This commit is contained in:
tomash 2006-11-28 19:51:03 +00:00
parent 170834839f
commit 7dbe916d6d
7 changed files with 47 additions and 17 deletions

View File

@ -199,7 +199,7 @@ if (isset($_REQUEST['popup']) && is_array($_REQUEST['popup'])){
break; break;
case 'TR.confirmDownloadFromHub': case 'TR.confirmDownloadFromHub':
$uiBrowser->TRANSFERS->downloadFromHub($_REQUEST['id']); $uiBrowser->TRANSFERS->downloadFromHub($uiBrowser->sessid, $_REQUEST['gunid']);
$Smarty->display('popup/TR.confirmTransfer.tpl'); $Smarty->display('popup/TR.confirmTransfer.tpl');
break; break;
@ -250,7 +250,11 @@ if (isset($_REQUEST['popup']) && is_array($_REQUEST['popup'])){
case 'HUBSEARCH.getResults': case 'HUBSEARCH.getResults':
if (isset($_REQUEST['trtokid']) && $_REQUEST['trtokid']) { if (isset($_REQUEST['trtokid']) && $_REQUEST['trtokid']) {
$Smarty->assign('trtokid',$_REQUEST['trtokid']); $Smarty->assign('trtokid',$_REQUEST['trtokid']);
if ($uiBrowser->HUBSEARCH->getSearchResults($_REQUEST['trtokid'], FALSE)) { $r = $uiBrowser->HUBSEARCH->getSearchResults($_REQUEST['trtokid'], FALSE);
if ( PEAR::isError($r) && ($r->getCode() != TRERR_NOTFIN) ) {
break;
}
if ($r) {
$Smarty->assign('results',true); $Smarty->assign('results',true);
} else { } else {
$Smarty->assign('results',false); $Smarty->assign('results',false);

View File

@ -1,4 +1,4 @@
onClick="return contextmenu('{$i.id}' onClick="return contextmenu('{$i.gunid}'
, 'TR.downloadFromHub' , 'TR.downloadFromHub'
)" )"

View File

@ -135,7 +135,7 @@ function contextmenu(param) {
break; break;
case "TR.downloadFromHub": case "TR.downloadFromHub":
contextmenuHtml = contextmenuHtml + "<li><a class='contextmenu' href=\"javascript: popup('{$UI_BROWSER}?popup[]=TR.confirmDownloadFromHub&id="+param+"', 'confirmDownloadFromHub', 400, 50)\" "+oF+">&nbsp;##Transfer from the hub##&nbsp;</a></li>"; contextmenuHtml = contextmenuHtml + "<li><a class='contextmenu' href=\"javascript: popup('{$UI_BROWSER}?popup[]=TR.confirmDownloadFromHub&gunid="+param+"', 'confirmDownloadFromHub', 400, 50)\" "+oF+">&nbsp;##Transfer from the hub##&nbsp;</a></li>";
break; break;
case "TR.pause": case "TR.pause":

View File

@ -63,6 +63,16 @@ class uiHubSearch extends uiSearch {
//echo '<XMP>this->criteria:'; print_r($this->criteria); echo "</XMP>\n"; //echo '<XMP>this->criteria:'; print_r($this->criteria); echo "</XMP>\n";
$trtokid = $this->Base->gb->globalSearch($this->criteria); $trtokid = $this->Base->gb->globalSearch($this->criteria);
if (PEAR::isError($trtokid)) {
// don't know how to display error message in htmlUi- should be improved:
echo "ERROR: {$trtokid->getMessage()} {$trtokid->getUserInfo()}".
($trtokid->getCode() ? " ({$trtokid->getCode()})" : "")."\n";
echo "<br/>\n<a href=\"javascript:history.go(-1)\">Back</a>\n";
exit;
//$this->Base->_retMsg("ERROR_3: {$trtokid->getMessage()} {$trtokid->getUserInfo()}\n");
//$this->Base->redirUrl = UI_BROWSER.'?popup[]=';
return $trtokid;
}
$this->Base->redirUrl = UI_BROWSER.'?popup[]='.$this->prefix.'.getResults&trtokid='.$trtokid; $this->Base->redirUrl = UI_BROWSER.'?popup[]='.$this->prefix.'.getResults&trtokid='.$trtokid;
} // fn newSearch } // fn newSearch
@ -75,10 +85,8 @@ class uiHubSearch extends uiSearch {
} }
$this->results = array('page' => $this->criteria['offset'] / $this->criteria['limit']); $this->results = array('page' => $this->criteria['offset'] / $this->criteria['limit']);
//print_r($this->criteria);
$results = $this->Base->gb->localSearch($this->criteria, $this->Base->sessid); $results = $this->Base->gb->localSearch($this->criteria, $this->Base->sessid);
if (PEAR::isError($results)) { if (PEAR::isError($results)) {
#print_r($results);
return FALSE; return FALSE;
} }
foreach ($results['results'] as $rec) { foreach ($results['results'] as $rec) {
@ -87,7 +95,6 @@ class uiHubSearch extends uiSearch {
} }
$this->results['cnt'] = $results['cnt']; $this->results['cnt'] = $results['cnt'];
//print_r($this->results);
$this->pagination($results); $this->pagination($results);
return TRUE; return TRUE;
@ -97,14 +104,11 @@ class uiHubSearch extends uiSearch {
function getSearchResults($trtokid, $andClose=TRUE) function getSearchResults($trtokid, $andClose=TRUE)
{ {
$this->results = array('page' => $this->criteria['offset']/$this->criteria['limit']); $this->results = array('page' => $this->criteria['offset']/$this->criteria['limit']);
#sleep(4);
$results = $this->Base->gb->getSearchResults($trtokid, $andClose); $results = $this->Base->gb->getSearchResults($trtokid, $andClose);
// echo"<pre><b>RESULTS:</b><br>";print_r($results);echo "</pre>"; if ( PEAR::isError($results) && ($results->getCode() != TRERR_NOTFIN) ) {
/*
if (PEAR::isError($results)) {
echo "ERROR: {$results->getMessage()} {$results->getUserInfo()}\n"; echo "ERROR: {$results->getMessage()} {$results->getUserInfo()}\n";
return $results;
} }
*/
if (!is_array($results) || !count($results)) { if (!is_array($results) || !count($results)) {
return false; return false;
} }

View File

@ -160,10 +160,11 @@ class uiTransfers
switch ($type) { switch ($type) {
case 'audioClip': case 'audioClip':
$this->Base->gb->uploadAudioClip2Hub($gunid); case 'audioclip':
$r = $this->Base->gb->upload2Hub($gunid);
break; break;
case 'playlist': case 'playlist':
$this->Base->gb->uploadPlaylist2Hub($gunid); $this->Base->gb->upload2Hub($gunid);
break; break;
default: default:
// TODO: it is not implemented in gb, and this way maybe impossible // TODO: it is not implemented in gb, and this way maybe impossible
@ -173,8 +174,10 @@ class uiTransfers
} }
function downloadFromHub($id,$type) function downloadFromHub($sessid, $gunid /*,$type*/)
{ {
$this->Base->gb->downloadFromHub($sessid, $gunid);
/*
switch ($type) { switch ($type) {
case 'audioClip': case 'audioClip':
$this->Base->gb->downloadAudioClipFromHub($id); $this->Base->gb->downloadAudioClipFromHub($id);
@ -187,6 +190,7 @@ class uiTransfers
//$this->Base->gb->downloadFileFromHub($gunid); //$this->Base->gb->downloadFileFromHub($gunid);
return false; return false;
} }
*/
} }

View File

@ -444,6 +444,20 @@ class Transport
*/ */
function globalSearch($criteria, $resultMode='php', $pars=array()) function globalSearch($criteria, $resultMode='php', $pars=array())
{ {
// testing of hub availability and hub account configuration.
// it makes searchjob not async - should be removed for real async
$r = $this->loginToArchive();
if (PEAR::isError($r)) {
switch(intval($r->getCode())) {
case 802:
return PEAR::raiseError("Can't login to Hub ({$r->getMessage()})", TRERR_XR_FAIL);
case TRERR_XR_FAIL:
return PEAR::raiseError("Can't connect to Hub ({$r->getMessage()})", TRERR_XR_FAIL);
}
return $r;
}
$this->logoutFromArchive($r);
// ----------
$criteria['resultMode'] = $resultMode; $criteria['resultMode'] = $resultMode;
$localfile = tempnam($this->transDir, 'searchjob_'); $localfile = tempnam($this->transDir, 'searchjob_');
@chmod($localfile, 0660); @chmod($localfile, 0660);
@ -726,7 +740,10 @@ class Transport
'login'=>$this->config['archiveAccountLogin'], 'login'=>$this->config['archiveAccountLogin'],
'pass'=>$this->config['archiveAccountPass'] 'pass'=>$this->config['archiveAccountPass']
)); ));
return $res; if (PEAR::isError($res)) {
return $res;
}
return $res['sessid'];
} }
@ -908,7 +925,7 @@ class Transport
$r2 = $trec->setLock(FALSE); $r2 = $trec->setLock(FALSE);
return $r; return $r;
} }
$asessid = $r['sessid']; $asessid = $r;
// method call: // method call:
if (TR_LOG_LEVEL > 2) { if (TR_LOG_LEVEL > 2) {
$this->trLog("cronCallMethod: $mname($trtok) >"); $this->trLog("cronCallMethod: $mname($trtok) >");

View File

@ -3261,6 +3261,7 @@ class XR_LocStor extends LocStor {
* <li> 805 - xr_globalSearch: * <li> 805 - xr_globalSearch:
* &lt;message from lower layer&gt; </li> * &lt;message from lower layer&gt; </li>
* <li> 848 - invalid session id.</li> * <li> 848 - invalid session id.</li>
* <li> 874 - invalid hub connection configuration.</li>
* <li> 872 - invalid tranport token.</li> * <li> 872 - invalid tranport token.</li>
* </ul> * </ul>
* *