51 lines
3.5 KiB
PHP
51 lines
3.5 KiB
PHP
<?php
|
|
namespace SAI;
|
|
class saimod_webcraft_updates extends \SYSTEM\SAI\sai_module {
|
|
public static function sai_mod__SAI_saimod_webcraft_updates($update = null, $project = null){
|
|
$vars = array('updates' => '', 'projects' => '', 'commits' => '', 'error' => '');
|
|
$token = \SYSTEM\CONFIG\config::get(\config_ids::WEBCRAFT_BILLING_TOKEN);
|
|
|
|
$updates = json_decode(file_get_contents('http://wat.webcraft-media.de/api.php?call=updates&action=updates&token='.$token),true);
|
|
if($updates['status']){
|
|
foreach($updates['result'] as $row){
|
|
$row['time'] = \SYSTEM\time::time_ago_string(strtotime($row['time']));
|
|
$vars['updates'] .= \SYSTEM\PAGE\replace::replaceFile((new \PSAI('saimod_webcraft_updates/tpl/saimod_webcraft_updates_update.tpl'))->SERVERPATH(),$row);
|
|
}
|
|
} else {
|
|
$vars['error'] .= 'Error: '.$updates['result']['message'].'<br>';}
|
|
|
|
if($update){
|
|
$projects = json_decode(file_get_contents('http://wat.webcraft-media.de/api.php?call=updates&action=projects'.'&update='.$update.'&token='.$token),true);
|
|
if($projects['status']){
|
|
$vars2 = array('project' => '', 'update' => $update);
|
|
foreach($projects['result'] as $row){
|
|
$row['time'] = \SYSTEM\time::time_ago_string(strtotime($row['time']));
|
|
$vars2['project'] .= \SYSTEM\PAGE\replace::replaceFile((new \PSAI('saimod_webcraft_updates/tpl/saimod_webcraft_updates_project.tpl'))->SERVERPATH(),$row);}
|
|
$vars['projects'] = \SYSTEM\PAGE\replace::replaceFile((new \PSAI('saimod_webcraft_updates/tpl/saimod_webcraft_updates_projects.tpl'))->SERVERPATH(),$vars2);
|
|
} else {
|
|
$vars['error'] .= 'Error: '.$updates['result']['message'].'<br>';}
|
|
}
|
|
|
|
if($project){
|
|
$commits = json_decode(file_get_contents('http://wat.webcraft-media.de/api.php?call=updates&action=commits'.'&token='.$token.'&update='.$update.'&project='.$project),true);
|
|
if($commits['status']){
|
|
$vars3 = array('commit' => '', 'project' => $project);
|
|
foreach($commits['result'] as $row){
|
|
$row['time'] = \SYSTEM\time::time_ago_string(strtotime($row['time']));
|
|
$vars3['commit'] .= \SYSTEM\PAGE\replace::replaceFile((new \PSAI('saimod_webcraft_updates/tpl/saimod_webcraft_updates_commit.tpl'))->SERVERPATH(),$row);}
|
|
$vars['commits'] = \SYSTEM\PAGE\replace::replaceFile((new \PSAI('saimod_webcraft_updates/tpl/saimod_webcraft_updates_commits.tpl'))->SERVERPATH(),$vars3);
|
|
} else {
|
|
$vars['error'] .= 'Error: '.$updates['result']['message'].'<br>';}
|
|
}
|
|
|
|
$vars = array_merge($vars, \SYSTEM\PAGE\text::tag('time'));
|
|
return \SYSTEM\PAGE\replace::replaceFile((new \PSAI('saimod_webcraft_updates/tpl/saimod_webcraft_updates.tpl'))->SERVERPATH(),$vars);}
|
|
public static function menu(){
|
|
return new \SYSTEM\SAI\sai_module_menu( 10, \SYSTEM\SAI\sai_module_menu::POISITION_RIGHT, \SYSTEM\SAI\sai_module_menu::DIVIDER_RIGHT,
|
|
\SYSTEM\PAGE\replace::replaceFile((new \PSAI('saimod_webcraft_updates/tpl/menu.tpl'))->SERVERPATH()));}
|
|
public static function right_public(){return false;}
|
|
public static function right_right(){return \SYSTEM\SECURITY\security::check(\SYSTEM\SECURITY\RIGHTS::SYS_SAI);}
|
|
|
|
public static function js(){
|
|
return array(new \PSAI('saimod_webcraft_updates/js/saimod_webcraft_updates.js'));}
|
|
} |