application listing works more or less now

This commit is contained in:
Frank Karlitschek 2011-04-16 19:42:58 +02:00
parent 150631849f
commit 85df699746
3 changed files with 46 additions and 33 deletions

View file

@ -35,7 +35,9 @@ if( !OC_USER::isLoggedIn() || !OC_GROUP::inGroup( $_SESSION['user_id'], 'admin'
$categories=OC_OCSCLIENT::getCategories();
//print_r($categories);
$apps=OC_OCSCLIENT::getApplications($categories);
//print_r($apps);
// return template

View file

@ -1,50 +1,29 @@
<?php
/*
* Template for files
* Template for Apps
*/
?>
<h1>Files</h1>
<h1>Apps Repository</h1>
<div class="controls">
<p class="actions">
<a href="" title="" class="upload">Upload</a><a href="" title="" class="new-dir">New folder</a><a href="" title="" class="download">Download</a><a href="" title="" class="share">Share</a><a href="" title="" class="delete">Delete</a>
</p>
</div>
<p class="nav">
<a href="<?php echo link_to("files", "index.php?dir=/"); ?>"><img src="<?php echo image_path("", "actions/go-home.png"); ?>" alt="Root" /></a>
<?php foreach($_["breadcrumb"] as $crumb): ?>
<a href="<?php echo link_to("files", "index.php?dir=".$crumb["dir"]); ?>"><?php echo $crumb["name"]; ?></a>
<?php endforeach; ?>
</p>
<table cellspacing="0">
<thead>
<tr>
<th><input type="checkbox" id="select_all" /></th>
<th></th>
<th>Name</th>
<th>Size</th>
<th>Modified</th>
<th></th>
</tr>
</thead>
<tbody>
<?php foreach($_["files"] as $file): ?>
<?php foreach($_["apps"] as $app): ?>
<tr>
<td class="selection"><input type="checkbox" /></td>
<td class="filename"><a style="background-image:url(<?php if($file["type"] == "dir") echo mimetype_icon("dir"); else echo mimetype_icon($file["mime"]); ?>)" href="<?php if($file["type"] == "dir") echo link_to("files", "index.php?dir=".$file["directory"]."/".$file["name"]); else echo link_to("files", "download.php?file=".$file["directory"]."/".$file["name"]); ?>" title=""><?php echo $file["name"]; ?></a></td>
<td class="filesize"><?php echo human_file_size($file["size"]); ?></td>
<td class="date"><?php if($file["type"] != "dir") echo $file["date"]; ?></td>
<td class="filename"><?php if($app["preview"] <> "") { echo('<a href=""><img border="0" src="'.$app["preview"].'" /></a>'); } ?> </a></td>
<td class="filename"><a href="" title=""><?php echo $app["name"]; ?></a></td>
<td class="date"><?php echo date($app["changed"]); ?></td>
<td class="fileaction"><a href="" title=""><img src="images/drop-arrow.png" alt="+" /></a></td>
</tr>
<?php endforeach; ?>
</tbody>
</table>
<div id="file_menu">
<ul>
<li><a href="" title="">Download</a></li>
<li><a href="" title="">Share</a></li>
<li><a href="" title="">Delete</a></li>
</ul>
</div>

View file

@ -35,8 +35,20 @@ class OC_OCSCLIENT{
* This function returns a list of all the application categories on the OCS server
*/
public static function getCategories(){
return true;
$url='http://api.opendesktop.org/v1/content/categories';
$cats=array();
$xml=file_get_contents($url);
$data=simplexml_load_string($xml);
$tmp=$data->data->category;
for($i = 0; $i < count($tmp); $i++) {
$cat=array();
$cat['id']=$tmp[$i]->id;
$cat['name']=$tmp[$i]->name;
$cats[]=$cat;
}
return $cats;
}
/**
@ -45,9 +57,29 @@ class OC_OCSCLIENT{
*
* This function returns a list of all the applications on the OCS server
*/
public static function getApplications(){
return true;
public static function getApplications($categories){
$categoriesstring=implode('x',$categories);
$url='http://api.opendesktop.org/v1/content/data?categories='.$ocscategories['ids'].'&sortmode=new&page=0&pagesize=10';
$apps=array();
$xml=file_get_contents($url);
$data=simplexml_load_string($xml);
$tmp=$data->data->content;
for($i = 0; $i < count($tmp); $i++) {
$app=array();
$app['id']=$tmp[$i]->id;
$app['name']=$tmp[$i]->name;
$app['type']=$tmp[$i]->type;
$app['personid']=$tmp[$i]->personid;
$app['detailpage']=$tmp[$i]->detailpage;
$app['preview']=$tmp[$i]->smallpreviewpic1;
$app['changed']=$tmp[$i]->changed;
$app['description']=$tmp[$i]->description;
$apps[]=$app;
}
return $apps;
}
}