#352 use wat.webcraft-media.de api instead of local queries, display errors if they occur
This commit is contained in:
parent
08e8fab663
commit
293551a530
@ -2,34 +2,40 @@
|
|||||||
namespace SAI;
|
namespace SAI;
|
||||||
class saimod_webcraft_updates extends \SYSTEM\SAI\SaiModule {
|
class saimod_webcraft_updates extends \SYSTEM\SAI\SaiModule {
|
||||||
public static function sai_mod__SAI_saimod_webcraft_updates($update = null, $project = null){
|
public static function sai_mod__SAI_saimod_webcraft_updates($update = null, $project = null){
|
||||||
$vars = array('updates' => '', 'projects' => '', 'commits' => '');
|
$vars = array('updates' => '', 'projects' => '', 'commits' => '', 'error' => '');
|
||||||
|
$token = \SYSTEM\CONFIG\config::get(\config_ids::WEBCRAFT_BILLING_TOKEN);
|
||||||
|
|
||||||
$res = \SQL\WEBCRAFT_UPDATES_UPDATE::QQ(array('test/mojotrollz/%'));
|
$updates = json_decode(file_get_contents('https://wat.webcraft-media.de/api.php?call=updates&action=updates&token='.$token),true);
|
||||||
while($row = $res->next()){
|
if($updates['status']){
|
||||||
$row['time'] = \SYSTEM\time::time_ago_string(strtotime($row['time']));
|
foreach($updates['result'] as $row){
|
||||||
$vars['updates'] .= \SYSTEM\PAGE\replace::replaceFile((new \PSAI('saimod_webcraft_updates/tpl/saimod_webcraft_updates_update.tpl'))->SERVERPATH(),$row);}
|
|
||||||
|
|
||||||
$project_row = null;
|
|
||||||
if($update){
|
|
||||||
$vars2 = array('project' => '', 'update' => $update);
|
|
||||||
$res = \SQL\WEBCRAFT_UPDATES_PROJECT::QQ(array($update, 'test/mojotrollz/%'));
|
|
||||||
while($row = $res->next()){
|
|
||||||
if($project && $row['path'] == $project){
|
|
||||||
$project_row = $row;}
|
|
||||||
$row['time'] = \SYSTEM\time::time_ago_string(strtotime($row['time']));
|
$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['updates'] .= \SYSTEM\PAGE\replace::replaceFile((new \PSAI('saimod_webcraft_updates/tpl/saimod_webcraft_updates_update.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($update){
|
||||||
|
$projects = json_decode(file_get_contents('https://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){
|
if($project){
|
||||||
$vars3 = array('commit' => '', 'project' => $project);
|
$commits = json_decode(file_get_contents('https://wat.webcraft-media.de/api.php?call=updates&action=commits'.'&token='.$token.'&update='.$update.'&project='.$project),true);
|
||||||
$min = \SQL\WEBCRAFT_UPDATES_COMMIT_SELECT::Q1(array($project_row['git'],$project_row['commit_last']))['id']+1;
|
if($commits['status']){
|
||||||
$max = \SQL\WEBCRAFT_UPDATES_COMMIT_SELECT::Q1(array($project_row['git'],$project_row['commit']))['id'];
|
$vars3 = array('commit' => '', 'project' => $project);
|
||||||
$res = \SQL\WEBCRAFT_UPDATES_COMMIT::QQ(array($project_row['git'],$min,$max));
|
foreach($commits['result'] as $row){
|
||||||
while($row = $res->next()){
|
$row['time'] = \SYSTEM\time::time_ago_string(strtotime($row['time']));
|
||||||
$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);}
|
||||||
$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);
|
||||||
$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'));
|
$vars = array_merge($vars, \SYSTEM\PAGE\text::tag('time'));
|
||||||
|
|||||||
@ -1,4 +1,3 @@
|
|||||||
<?php
|
<?php
|
||||||
\SYSTEM\autoload::registerFolder(dirname(__FILE__),'SQL');
|
\SYSTEM\autoload::registerFolder(dirname(__FILE__),'SQL');
|
||||||
\SYSTEM\autoload::registerFolder(dirname(__FILE__).'/qq/','SQL');
|
|
||||||
\SYSTEM\SQL\setup::register('SQL\\DATA_SAIMOD_WEBCRAFT_UPDATES');
|
\SYSTEM\SQL\setup::register('SQL\\DATA_SAIMOD_WEBCRAFT_UPDATES');
|
||||||
@ -1,10 +0,0 @@
|
|||||||
<?php
|
|
||||||
namespace SQL;
|
|
||||||
class WEBCRAFT_UPDATES_COMMIT extends \SYSTEM\DB\QP {
|
|
||||||
public static function get_class(){return \get_class();}
|
|
||||||
public static function mysql(){return
|
|
||||||
'SELECT `time`, `email`, `author`, `log`, `commit` FROM host_wat.webcraft_update_commit'.
|
|
||||||
' WHERE `git` = ? AND (id BETWEEN ? AND ?)'.
|
|
||||||
' ORDER BY `time` DESC;';
|
|
||||||
}
|
|
||||||
}
|
|
||||||
@ -1,9 +0,0 @@
|
|||||||
<?php
|
|
||||||
namespace SQL;
|
|
||||||
class WEBCRAFT_UPDATES_COMMIT_SELECT extends \SYSTEM\DB\QP {
|
|
||||||
public static function get_class(){return \get_class();}
|
|
||||||
public static function mysql(){return
|
|
||||||
'SELECT id FROM host_wat.webcraft_update_commit'.
|
|
||||||
' WHERE `git` = ? AND `commit` = ?;';
|
|
||||||
}
|
|
||||||
}
|
|
||||||
@ -1,10 +0,0 @@
|
|||||||
<?php
|
|
||||||
namespace SQL;
|
|
||||||
class WEBCRAFT_UPDATES_PROJECT extends \SYSTEM\DB\QP {
|
|
||||||
public static function get_class(){return \get_class();}
|
|
||||||
public static function mysql(){return
|
|
||||||
'SELECT `time`, `path`, `git`, `commit`, `commit_last` FROM host_wat.webcraft_update_project'.
|
|
||||||
' WHERE `update` = ? AND `path` LIKE ?'.
|
|
||||||
' ORDER BY `time` ASC;';
|
|
||||||
}
|
|
||||||
}
|
|
||||||
@ -1,12 +0,0 @@
|
|||||||
<?php
|
|
||||||
namespace SQL;
|
|
||||||
class WEBCRAFT_UPDATES_UPDATE extends \SYSTEM\DB\QP {
|
|
||||||
public static function get_class(){return \get_class();}
|
|
||||||
public static function mysql(){return
|
|
||||||
'SELECT u.`time`, u.`commit`, u.`commit_last`, u.`complete` FROM host_wat.`webcraft_update` as u'.
|
|
||||||
' RIGHT JOIN host_wat.`webcraft_update_project` as p ON u.`commit` = p.`update`'.
|
|
||||||
' WHERE `path` LIKE ?'.
|
|
||||||
' GROUP BY u.`commit`'.
|
|
||||||
' ORDER BY u.`time` DESC;';
|
|
||||||
}
|
|
||||||
}
|
|
||||||
@ -22,5 +22,10 @@
|
|||||||
</table>
|
</table>
|
||||||
${projects}
|
${projects}
|
||||||
${commits}
|
${commits}
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
<div class="row-fluid">
|
||||||
|
<div class="col-md-12">
|
||||||
|
${error}
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
Loading…
x
Reference in New Issue
Block a user