Example #1
0
 public static function show($console, $result, $data)
 {
     $text = '';
     if (!$console) {
         $text .= Design::erstelleBeschreibung($console, Language::Get('gitUpdate', 'description'));
     }
     $collected = array();
     if (isset($result[self::$onEvents['collect']['name']]) && $result[self::$onEvents['collect']['name']] != null) {
         $collected = $result[self::$onEvents['collect']['name']];
     } elseif (isset($result[self::$onEvents['install']['name']]) && $result[self::$onEvents['install']['name']] != null) {
         $collected = $result[self::$onEvents['install']['name']];
     } else {
         $collected = array('content' => null, 'fail' => false, 'errno' => null, 'error' => null);
     }
     $fail = $collected['fail'];
     $error = $collected['error'];
     $errno = $collected['errno'];
     if (Einstellungen::$accessAllowed) {
         //if ($collected['content'] === null){
         if (!$console) {
             $text .= Design::erstelleZeileShort($console, Language::Get('gitUpdate', 'collectGitUpdatesDesc'), 'e', Design::erstelleSubmitButton(self::$onEvents['collect']['event'][0], Language::Get('gitUpdate', 'collectGitUpdates')), 'h');
         }
         //}
         if (isset($collected['content']['modified']) && $collected['content']['modified'] !== null) {
             $t = '';
             if (isset($collected['content']['modified'][0])) {
                 $t = $collected['content']['modified'][0];
             } else {
                 $t = Language::Get('gitUpdate', 'noUpdates');
             }
             if (!$console) {
                 $text .= "<tr><td class='v' colspan='3'>{$t}</td></tr>";
             } else {
             }
         }
         if (isset($collected['content']['commits']) && $collected['content']['commits'] !== null) {
             for ($i = 0; $i < 20 && $i < count($collected['content']['commits']); $i++) {
                 if (!$console) {
                     $text .= "<tr><td class='v' colspan='2'>{$collected['content']['commits'][$i]['desc']}</td><td class='e'>{$collected['content']['commits'][$i]['period']}</td></tr>";
                 } else {
                 }
             }
             if (count($collected['content']['commits']) > 20) {
                 if (!$console) {
                     $text .= Design::erstelleZeile($console, Language::Get('gitUpdate', 'additionalCommits', array('additionalCommits' => count($collected['content']['commits']) - 20)), 'v');
                 } else {
                 }
             }
             if (count($collected['content']['commits']) > 0) {
                 if (!$console) {
                     $text .= Design::erstelleZeileShort($console, Language::Get('gitUpdate', 'installGitUpdatesDesc'), 'e', Design::erstelleSubmitButton(self::$onEvents['install']['event'][0], Language::Get('gitUpdate', 'installGitUpdates')), 'h');
                 }
             }
         }
         if (self::$installed) {
             $text .= Design::erstelleInstallationszeile($console, $fail, $errno, $error, Language::Get('gitUpdate', 'executeGitUpdatesDesc'));
         }
     }
     echo Design::erstelleBlock($console, Language::Get('gitUpdate', 'title'), $text);
     return null;
 }
 public static function show($console, $result, $data)
 {
     $pluginFiles = array();
     if ($handle = @opendir(dirname(__FILE__) . '/../../Plugins')) {
         while (false !== ($file = readdir($handle))) {
             if (substr($file, -5) != '.json' || $file == '.' || $file == '..') {
                 continue;
             }
             if (is_dir(dirname(__FILE__) . '/../../Plugins/' . $file)) {
                 continue;
             }
             $pluginFiles[] = $file;
         }
         closedir($handle);
     }
     $text = '';
     $text .= Design::erstelleBeschreibung($console, Language::Get('packages', 'description'));
     if (self::$onEvents['install']['enabledInstall']) {
         $text .= Design::erstelleZeile($console, Language::Get('packages', 'installSelected'), 'e', '', 'v', Design::erstelleSubmitButton(self::$onEvents['install']['event'][0], Language::Get('main', 'install')), 'h');
     }
     if (self::$onEvents['uninstall']['enabledInstall']) {
         $text .= Design::erstelleZeile($console, Language::Get('packages', 'uninstallSelected'), 'e', '', 'v', Design::erstelleSubmitButton(self::$onEvents['uninstall']['event'][0], Language::Get('main', 'uninstall')), 'h');
     }
     if (self::$onEvents['validateFiles']['enabledInstall']) {
         $text .= Design::erstelleZeile($console, Language::Get('packages', 'validateFilesDesc'), 'e', '', 'v', Design::erstelleSubmitButton(self::$onEvents['validateFiles']['event'][0], Language::Get('packages', 'validateFiles')), 'h');
     }
     $validateFiles = false;
     if (isset($result[self::$onEvents['validateFiles']['name']])) {
         $validateFiles = true;
     }
     if (isset($result[self::$onEvents['check']['name']]) && $result[self::$onEvents['check']['name']] != null) {
         $result = $result[self::$onEvents['check']['name']];
     } else {
         $result = array('content' => null, 'fail' => false, 'errno' => null, 'error' => null);
     }
     $installedPlugins = $result['content'];
     // hier die möglichen Erweiterungen ausgeben, zudem noch die Daten dieser Erweiterungen
     foreach ($pluginFiles as $plug) {
         $dat = file_get_contents(dirname(__FILE__) . '/../../Plugins/' . $plug);
         $dat = json_decode($dat, true);
         $name = $dat['name'];
         $version = $dat['version'];
         $voraussetzungen = $dat['requirements'];
         if (!is_array($voraussetzungen)) {
             $voraussetzungen = array($voraussetzungen);
         }
         $text .= Design::erstelleZeile($console, "{$name} v{$dat['version']}", 'e', self::$onEvents['install']['enabledInstall'] || self::$onEvents['uninstall']['enabledInstall'] ? Design::erstelleAuswahl($console, $data['PLUG']['plug_install_' . $name], 'data[PLUG][plug_install_' . $name . ']', $plug, null, true) : '', 'v');
         $isInstalled = false;
         if (isset($installedPlugins)) {
             foreach ($installedPlugins as $instPlug) {
                 if ($name == $instPlug['name']) {
                     if (isset($instPlug['version'])) {
                         $text .= Design::erstelleZeile($console, Language::Get('packages', 'currentVersion'), 'v', 'v' . $instPlug['version'], 'v');
                     } else {
                         $text .= Design::erstelleZeile($console, Language::Get('packages', 'currentVersion'), 'v', '???', 'v');
                     }
                     $isInstalled = true;
                     break;
                 }
             }
         }
         if (!$isInstalled) {
             $text .= Design::erstelleZeile($console, Language::Get('packages', 'currentVersion'), 'v', '---', 'v');
         }
         $vorText = '';
         foreach ($voraussetzungen as $vor) {
             $vorText .= "{$vor['name']} v{$vor['version']}, ";
         }
         if ($vorText == '') {
             $vorText = '---';
         } else {
             $vorText = substr($vorText, 0, -2);
         }
         $text .= Design::erstelleZeile($console, Language::Get('packages', 'requirements'), 'v', $vorText, 'v');
         $file = dirname(__FILE__) . '/../../Plugins/' . $plug;
         $fileCount = 0;
         $fileSize = 0;
         $componentCount = 0;
         if (file_exists($file) && is_readable($file)) {
             $input = file_get_contents($file);
             $input = json_decode($input, true);
             if ($input == null) {
                 $fail = true;
                 break;
             }
             $fileList = array();
             $fileListAddress = array();
             $componentFiles = array();
             self::gibPluginDateien($input, $fileList, $fileListAddress, $componentFiles);
             $fileCount = count($fileList);
             foreach ($fileList as $f) {
                 if (is_readable($f)) {
                     $fileSize += filesize($f);
                     if ($validateFiles) {
                         if ($fileSize > 0 && strtolower(substr($f, -5)) === '.json') {
                             // validiere die json Datei
                             $cont = file_get_contents($f);
                             if (trim($cont) != '') {
                                 $val = @json_decode(file_get_contents($f));
                                 if ($val === null) {
                                     $text .= Design::erstelleZeileShort($console, realpath($f), 'break v', Language::Get('packages', 'jsonInvalid'), 'v error_light break');
                                 }
                             }
                         }
                         if ($fileSize > 0 && strtolower(substr($f, -4)) === '.php') {
                             // validiere die php Datei
                             $output = null;
                             $result = null;
                             exec('(php -l -d error_reporting=E_ALL -d display_errors=on -d log_errors=off -f ' . realpath($f) . ') 2>&1', $output, $result);
                             if ($result != 0) {
                                 $text .= Design::erstelleZeileShort($console, realpath($f), 'break v', implode('<br>', $output), 'v error_light break');
                             }
                         }
                     }
                 }
             }
             $componentCount = count($componentFiles);
         }
         $text .= Design::erstelleZeile($console, Language::Get('packages', 'numberComponents'), 'v', $componentCount, 'v');
         $text .= Design::erstelleZeile($console, Language::Get('packages', 'numberFiles'), 'v', $fileCount, 'v');
         $text .= Design::erstelleZeile($console, Language::Get('packages', 'size'), 'v', Design::formatBytes($fileSize), 'v');
     }
     /*if ($installPlugins){
           if ($installPluginsResult !=null)
               foreach ($installPluginsResult as $component){
                  // $text .= "<tr><td class='e' rowspan='1'>{$component}</td><td class='v'></td><td class='e'><div align ='center'>".((isset($dat['status']) && $dat['status']===201) ? Language::Get('main','ok') : "<font color='red'>".Language::Get('main','fail')." ({$dat['status']})</font>")."</align></td></tr>";
               }
           $text .= Design::erstelleInstallationszeile($console, $fail, $errno, $error);
       }
       
       if ($uninstallPlugins){
           if ($uninstallPluginsResult !=null)
               foreach ($uninstallPluginsResult as $component){
                  // $text .= "<tr><td class='e' rowspan='1'>{$component}</td><td class='v'></td><td class='e'><div align ='center'>".((isset($dat['status']) && $dat['status']===201) ? Language::Get('main','ok') : "<font color='red'>".Language::Get('main','fail')." ({$dat['status']})</font>")."</align></td></tr>";
               }
               
           $text .= Design::erstelleInstallationszeile($console, $fail, $errno, $error);
       }*/
     echo Design::erstelleBlock($console, Language::Get('packages', 'title'), $text);
     return null;
 }
Example #3
0
 if (isset($data['outStatus'])) {
     $text2 .= Design::erstelleZeileShort(false, 'Status', 'e', $data['outStatus'], 'v');
 }
 if (isset($data['outContent']) && trim($data['outContent']) != '') {
     $text2 .= Design::erstelleZeileShort(false, 'Daten', 'e', Design::zeichneEingabebereich(false, 'Daten', $data['outContent'], 'v'));
 }
 if (trim($text2) != '') {
     $text2 = Design::erstelleBlock(false, "Ausgabe", $text2);
 }
 // fügt Eingabe und Ausgabe zu einem Block zusammen
 $text3 = '';
 if (trim($text) != '') {
     $text3 .= Design::erstelleZeileShort(false, $text, 'break');
 }
 if (trim($text2) != '') {
     $text3 .= Design::erstelleZeileShort(false, $text2, 'break');
 }
 $addLink = '';
 if (file_exists($mdFile) || file_exists($mdFileResult)) {
     $addLink = '<br><a style="font-size: 75%" href="' . $data['name'] . '.html' . '">Beschreibung ></a>';
 }
 $body .= Design::erstelleBlock(false, $data['name'] . $addLink, $text3);
 $body .= '</body></html>';
 // speichert die Knotendaten im Verzeichnis des Aufrufs
 file_put_contents(dirname(__FILE__) . '/path/' . $elem . '/' . substr($file, 0, strlen($file) - 5) . '.html', $body);
 if (!file_exists($mdFileResult) && file_exists($mdFile)) {
     $parser = new \Michelf\MarkdownExtra();
     $input = umlaute(file_get_contents($mdFile));
     $my_html = $parser->transform($input);
     file_put_contents($mdFileResult, '<link rel="stylesheet" href="github-markdown.css" type="text/css"><span class="markdown-body">' . $my_html . '</span>');
     //@unlink($mdFile);