зеркало из https://github.com/nextcloud/server.git
handle app repo connection failure
This commit is contained in:
Родитель
51420a7522
Коммит
be3ee03189
|
@ -36,7 +36,14 @@ if(isset($_GET['id'])) $id=$_GET['id']; else $id=0;
|
||||||
if(isset($_GET['cat'])) $cat=$_GET['cat']; else $cat=0;
|
if(isset($_GET['cat'])) $cat=$_GET['cat']; else $cat=0;
|
||||||
|
|
||||||
$categories=OC_OCSCLIENT::getCategories();
|
$categories=OC_OCSCLIENT::getCategories();
|
||||||
|
if($categories==NULL){
|
||||||
|
OC_APP::setActiveNavigationEntry( "core_apps" );
|
||||||
|
|
||||||
|
$tmpl = new OC_TEMPLATE( "admin", "app_noconn", "admin" );
|
||||||
|
$tmpl->printPage();
|
||||||
|
unset($tmpl);
|
||||||
|
exit();
|
||||||
|
}
|
||||||
/*
|
/*
|
||||||
|
|
||||||
All
|
All
|
||||||
|
|
|
@ -0,0 +1,7 @@
|
||||||
|
<?php
|
||||||
|
/*
|
||||||
|
* Template for Apps when can't connect to app store
|
||||||
|
*/
|
||||||
|
?>
|
||||||
|
<h1>Apps Repository</h1>
|
||||||
|
<h2>Cannot connect to apps repository</h2>
|
|
@ -37,7 +37,10 @@ class OC_OCSCLIENT{
|
||||||
public static function getCategories(){
|
public static function getCategories(){
|
||||||
$url='http://api.apps.owncloud.com/v1/content/categories';
|
$url='http://api.apps.owncloud.com/v1/content/categories';
|
||||||
|
|
||||||
$xml=file_get_contents($url);
|
$xml=@file_get_contents($url);
|
||||||
|
if($xml==FALSE){
|
||||||
|
return NULL;
|
||||||
|
}
|
||||||
$data=simplexml_load_string($xml);
|
$data=simplexml_load_string($xml);
|
||||||
|
|
||||||
$tmp=$data->data;
|
$tmp=$data->data;
|
||||||
|
@ -61,16 +64,19 @@ class OC_OCSCLIENT{
|
||||||
* This function returns a list of all the applications on the OCS server
|
* This function returns a list of all the applications on the OCS server
|
||||||
*/
|
*/
|
||||||
public static function getApplications($categories){
|
public static function getApplications($categories){
|
||||||
if(is_array($categories)) {
|
if(is_array($categories)) {
|
||||||
$categoriesstring=implode('x',$categories);
|
$categoriesstring=implode('x',$categories);
|
||||||
}else{
|
}else{
|
||||||
$categoriesstring=$categories;
|
$categoriesstring=$categories;
|
||||||
}
|
}
|
||||||
$url='http://api.apps.owncloud.com/v1/content/data?categories='.urlencode($categoriesstring).'&sortmode=new&page=0&pagesize=10';
|
$url='http://api.apps.owncloud.com/v1/content/data?categories='.urlencode($categoriesstring).'&sortmode=new&page=0&pagesize=10';
|
||||||
$apps=array();
|
$apps=array();
|
||||||
$xml=file_get_contents($url);
|
$xml=@file_get_contents($url);
|
||||||
|
if($xml==FALSE){
|
||||||
|
return NULL;
|
||||||
|
}
|
||||||
$data=simplexml_load_string($xml);
|
$data=simplexml_load_string($xml);
|
||||||
|
|
||||||
$tmp=$data->data->content;
|
$tmp=$data->data->content;
|
||||||
for($i = 0; $i < count($tmp); $i++) {
|
for($i = 0; $i < count($tmp); $i++) {
|
||||||
$app=array();
|
$app=array();
|
||||||
|
@ -90,60 +96,66 @@ class OC_OCSCLIENT{
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @brief Get an the applications from the OCS server
|
* @brief Get an the applications from the OCS server
|
||||||
* @returns array with application data
|
* @returns array with application data
|
||||||
*
|
*
|
||||||
* This function returns an applications from the OCS server
|
* This function returns an applications from the OCS server
|
||||||
*/
|
*/
|
||||||
public static function getApplication($id){
|
public static function getApplication($id){
|
||||||
$url='http://api.apps.owncloud.com/v1/content/data/'.urlencode($id);
|
$url='http://api.apps.owncloud.com/v1/content/data/'.urlencode($id);
|
||||||
|
|
||||||
$xml=file_get_contents($url);
|
$xml=@file_get_contents($url);
|
||||||
$data=simplexml_load_string($xml);
|
if($xml==FALSE){
|
||||||
|
return NULL;
|
||||||
|
}
|
||||||
|
$data=simplexml_load_string($xml);
|
||||||
|
|
||||||
$tmp=$data->data->content;
|
$tmp=$data->data->content;
|
||||||
$app=array();
|
$app=array();
|
||||||
$app['id']=$tmp->id;
|
$app['id']=$tmp->id;
|
||||||
$app['name']=$tmp->name;
|
$app['name']=$tmp->name;
|
||||||
$app['type']=$tmp->typeid;
|
$app['type']=$tmp->typeid;
|
||||||
$app['typename']=$tmp->typename;
|
$app['typename']=$tmp->typename;
|
||||||
$app['personid']=$tmp->personid;
|
$app['personid']=$tmp->personid;
|
||||||
$app['detailpage']=$tmp->detailpage;
|
$app['detailpage']=$tmp->detailpage;
|
||||||
$app['preview1']=$tmp->smallpreviewpic1;
|
$app['preview1']=$tmp->smallpreviewpic1;
|
||||||
$app['preview2']=$tmp->smallpreviewpic2;
|
$app['preview2']=$tmp->smallpreviewpic2;
|
||||||
$app['preview3']=$tmp->smallpreviewpic3;
|
$app['preview3']=$tmp->smallpreviewpic3;
|
||||||
$app['changed']=strtotime($tmp->changed);
|
$app['changed']=strtotime($tmp->changed);
|
||||||
$app['description']=$tmp->description;
|
$app['description']=$tmp->description;
|
||||||
|
|
||||||
return $app;
|
return $app;
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @brief Get all the knowledgebase entries from the OCS server
|
* @brief Get all the knowledgebase entries from the OCS server
|
||||||
* @returns array with q and a data
|
* @returns array with q and a data
|
||||||
*
|
*
|
||||||
* This function returns a list of all the knowledgebase entries from the OCS server
|
* This function returns a list of all the knowledgebase entries from the OCS server
|
||||||
*/
|
*/
|
||||||
public static function getKnownledgebaseEntries(){
|
public static function getKnownledgebaseEntries(){
|
||||||
$url='http://api.apps.owncloud.com/v1/knowledgebase/data?type=150&page=0&pagesize=10';
|
$url='http://api.apps.owncloud.com/v1/knowledgebase/data?type=150&page=0&pagesize=10';
|
||||||
|
|
||||||
$kbe=array();
|
$kbe=array();
|
||||||
$xml=file_get_contents($url);
|
$xml=@file_get_contents($url);
|
||||||
$data=simplexml_load_string($xml);
|
if($xml==FALSE){
|
||||||
|
return NULL;
|
||||||
|
}
|
||||||
|
$data=simplexml_load_string($xml);
|
||||||
|
|
||||||
$tmp=$data->data->content;
|
$tmp=$data->data->content;
|
||||||
for($i = 0; $i < count($tmp); $i++) {
|
for($i = 0; $i < count($tmp); $i++) {
|
||||||
$kb=array();
|
$kb=array();
|
||||||
$kb['id']=$tmp[$i]->id;
|
$kb['id']=$tmp[$i]->id;
|
||||||
$kb['name']=$tmp[$i]->name;
|
$kb['name']=$tmp[$i]->name;
|
||||||
$kb['description']=$tmp[$i]->description;
|
$kb['description']=$tmp[$i]->description;
|
||||||
$kb['answer']=$tmp[$i]->answer;
|
$kb['answer']=$tmp[$i]->answer;
|
||||||
$kb['preview1']=$tmp[$i]->smallpreviewpic1;
|
$kb['preview1']=$tmp[$i]->smallpreviewpic1;
|
||||||
$kbe[]=$kb;
|
$kbe[]=$kb;
|
||||||
}
|
}
|
||||||
return $kbe;
|
return $kbe;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
Загрузка…
Ссылка в новой задаче