/** * builds page * * @param $action */ function buildPage($action) { global $cfg, $statusImage, $statusMessage, $htmlTitle, $htmlTop, $htmlMain; // navi $htmlTop .= '<a href="' . _FILE_THIS . '?t=0">Transfer Bulk-ops</a>'; $htmlTop .= ' | '; $htmlTop .= '<a href="' . _FILE_THIS . '?p=0">Processes</a>'; $htmlTop .= ' | '; $htmlTop .= '<a href="' . _FILE_THIS . '?m=0">Maintenance</a>'; $htmlTop .= ' | '; $htmlTop .= '<a href="' . _FILE_THIS . '?b=0">Backup</a>'; $htmlTop .= ' | '; $htmlTop .= '<a href="' . _FILE_THIS . '?l=0">Log</a>'; $htmlTop .= ' | '; $htmlTop .= '<a href="' . _FILE_THIS . '?y=0">Misc</a>'; $htmlTop .= ' | '; $htmlTop .= '<a href="' . _FILE_THIS . '?z=0">About</a>'; // body switch ($action) { case "b": // backup passthru // backup passthru case "-b": // backup-error passthru if ($action == "b") { $statusImage = "yellow.gif"; } else { $statusImage = "red.gif"; } // $htmlMain .= '<table width="100%" bgcolor="' . $cfg["table_data_bg"] . '" border="0" cellpadding="4" cellspacing="0"><tr><td width="100%">'; $htmlMain .= '<a href="' . _FILE_THIS . '?b=0">Create Backup</a>'; $htmlMain .= ' | '; $htmlMain .= '<a href="' . _FILE_THIS . '?b=3">Backups currently on server</a>'; $htmlMain .= '</td><td align="right" nowrap><strong>Backup</strong></td>'; $htmlMain .= '</tr></table>'; break; case "-u": // update-error passthru $statusImage = "red.gif"; $htmlTitle = "Update"; $htmlMain = '<br><font color="red"><strong>Update from your version not possible.</strong></font>'; $htmlMain .= '<br><br>'; $htmlMain .= 'Please use the most recent tarball and perform a manual update.'; $htmlMain .= '<br>'; break; case "t": // transfers passthru $statusImage = "black.gif"; break; case "p": // processes passthru $statusImage = "black.gif"; $htmlMain .= '<table width="100%" bgcolor="' . $cfg["table_data_bg"] . '" border="0" cellpadding="4" cellspacing="0"><tr><td width="100%">'; $htmlMain .= '<a href="' . _FILE_THIS . '?p=1">All</a>'; $htmlMain .= ' | '; $htmlMain .= '<a href="' . _FILE_THIS . '?p=2">Transfers</a>'; $htmlMain .= '</td><td align="right"><strong>Processes</strong></td>'; $htmlMain .= '</tr></table>'; break; case "m": // maintenance passthru $statusImage = "black.gif"; $htmlMain .= '<table width="100%" bgcolor="' . $cfg["table_data_bg"] . '" border="0" cellpadding="4" cellspacing="0"><tr><td width="100%">'; $htmlMain .= '<a href="' . _FILE_THIS . '?m=1">Main</a>'; $htmlMain .= ' | '; $htmlMain .= '<a href="' . _FILE_THIS . '?m=2">Kill</a>'; $htmlMain .= ' | '; $htmlMain .= '<a href="' . _FILE_THIS . '?m=3">Clean</a>'; $htmlMain .= ' | '; $htmlMain .= '<a href="' . _FILE_THIS . '?m=4">Repair</a>'; $htmlMain .= ' | '; $htmlMain .= '<a href="' . _FILE_THIS . '?m=5">Reset</a>'; $htmlMain .= ' | '; $htmlMain .= '<a href="' . _FILE_THIS . '?m=6">Lock</a>'; $htmlMain .= '</td><td align="right"><strong>Maintenance</strong></td>'; $htmlMain .= '</tr></table>'; break; case "l": // log passthru $statusImage = "black.gif"; $htmlMain .= '<table width="100%" bgcolor="' . $cfg["table_data_bg"] . '" border="0" cellpadding="4" cellspacing="0"><tr><td width="100%">'; $htmlMain .= '<a href="' . _FILE_THIS . '?l=1">fluxd</a>'; $htmlMain .= ' | '; $htmlMain .= '<a href="' . _FILE_THIS . '?l=2">fluxd-error</a>'; $htmlMain .= ' | '; $htmlMain .= '<a href="' . _FILE_THIS . '?l=3">fluazu</a>'; $htmlMain .= ' | '; $htmlMain .= '<a href="' . _FILE_THIS . '?l=5">mainline</a>'; $htmlMain .= ' | '; $htmlMain .= '<a href="' . _FILE_THIS . '?l=8">transfers</a>'; $htmlMain .= '</td><td align="right"><strong>Log</strong></td>'; $htmlMain .= '</tr></table>'; break; case "y": // misc passthru $statusImage = "black.gif"; $htmlMain .= '<table width="100%" bgcolor="' . $cfg["table_data_bg"] . '" border="0" cellpadding="4" cellspacing="0"><tr><td width="100%">'; $htmlMain .= '<a href="' . _FILE_THIS . '?y=1">Lists</a>'; $htmlMain .= ' | '; $htmlMain .= '<a href="' . _FILE_THIS . '?y=3">Checksum Validation</a>'; $htmlMain .= ' | '; $htmlMain .= '<a href="' . _FILE_THIS . '?y=5">Check Requirements</a>'; $htmlMain .= '</td><td align="right" nowrap><strong>Misc</strong></td>'; $htmlMain .= '</tr></table>'; break; case "z": // about passthru $statusImage = "black.gif"; $htmlMain .= '<table width="100%" bgcolor="' . $cfg["table_data_bg"] . '" border="0" cellpadding="4" cellspacing="0"><tr><td width="100%">'; $htmlMain .= '<a href="' . _FILE_THIS . '?z=1">Version</a>'; $htmlMain .= ' | '; $htmlMain .= '<a href="' . _FILE_THIS . '?z=2">News</a>'; $htmlMain .= ' | '; $htmlMain .= '<a href="' . _FILE_THIS . '?z=3">Changelog</a>'; $htmlMain .= '</td><td align="right" nowrap><strong>About</strong></td>'; $htmlMain .= '</tr></table>'; break; case "f": // fluxd passthru $htmlTop = ""; $statusImage = ""; $htmlMain .= '<table width="100%" bgcolor="' . $cfg["table_data_bg"] . '" border="0" cellpadding="4" cellspacing="0"><tr><td width="100%">'; $htmlMain .= '<a href="' . _FILE_THIS . '?f=1">log</a>'; $htmlMain .= ' | '; $htmlMain .= '<a href="' . _FILE_THIS . '?f=2">error-log</a>'; $htmlMain .= ' | '; $htmlMain .= '<a href="' . _FILE_THIS . '?f=3">ps</a>'; if (Fluxd::isRunning()) { $htmlMain .= ' | '; $htmlMain .= '<a href="' . _FILE_THIS . '?f=4">status</a>'; } else { $htmlMain .= ' | '; $htmlMain .= '<a href="' . _FILE_THIS . '?f=5">check</a>'; $htmlMain .= ' | '; $htmlMain .= '<a href="' . _FILE_THIS . '?f=6">db-debug</a>'; $htmlMain .= ' | '; $htmlMain .= '<a href="' . _FILE_THIS . '?f=9">version</a>'; } $htmlMain .= '</td><td align="right"><strong>fluxd</strong>'; $htmlMain .= '</tr></table>'; break; case "_": // default // default default: $htmlTitle = "SuperAdmin"; $statusImage = "black.gif"; $htmlMain = '<br><div align="left">'; $htmlMain .= '<p>Select the superadmin task you wish to perform below:<br><br>'; $htmlMain .= '<a href="' . _FILE_THIS . '?t=0"><img src="themes/' . $cfg["theme"] . '/images/arrow.gif" width="9" height="9" title="Transfer Bulk Ops" border="0"> Transfer Bulk Ops</a> - bulk start/stop/resume transfers'; $htmlMain .= '<p>'; $htmlMain .= '<a href="' . _FILE_THIS . '?p=0"><img src="themes/' . $cfg["theme"] . '/images/arrow.gif" width="9" height="9" title="Processes" border="0"> Processes</a> - view detailed process info; force stop transfer processes'; $htmlMain .= '<p>'; $htmlMain .= '<a href="' . _FILE_THIS . '?m=0"><img src="themes/' . $cfg["theme"] . '/images/arrow.gif" width="9" height="9" title="Maintenance" border="0"> Maintenance</a> - clean up and maintenance'; $htmlMain .= '<p>'; $htmlMain .= '<a href="' . _FILE_THIS . '?b=0"><img src="themes/' . $cfg["theme"] . '/images/arrow.gif" width="9" height="9" title="Backup" border="0"> Backup</a> - create backups; download saved backups'; $htmlMain .= '<p>'; $htmlMain .= '<a href="' . _FILE_THIS . '?l=0"><img src="themes/' . $cfg["theme"] . '/images/arrow.gif" width="9" height="9" title="Log" border="0"> Log</a> - view logs'; $htmlMain .= '<p>'; $htmlMain .= '<a href="' . _FILE_THIS . '?y=0"><img src="themes/' . $cfg["theme"] . '/images/arrow.gif" width="9" height="9" title="Misc" border="0"> Misc</a> - test for PHP and Perl requirements; view list of installed files'; $htmlMain .= '<p>'; $htmlMain .= '<a href="' . _FILE_THIS . '?z=0"><img src="themes/' . $cfg["theme"] . '/images/arrow.gif" width="9" height="9" title="About" border="0"> About</a> - version checking, updates, news, changelog; check installed file integrity'; $htmlMain .= '</div><br><br>'; break; } }
} // php-cli if (@file_exists($cfg['bin_php']) !== true) { $failed++; $tmpl->setvar('phpMissing', 1); } // check for sockets $loadedExtensions = get_loaded_extensions(); if (!in_array("sockets", $loadedExtensions)) { $failed++; $tmpl->setvar('socketsMissing', 1); } // set supported-var $tmpl->setvar('fluxdSupported', $failed > 0 ? 0 : 1); // fluxd core if (Fluxd::isRunning()) { $tmpl->setvar('fluxdRunning', 1); $tmpl->setvar('fluxdPid', Fluxd::getPid()); } else { $tmpl->setvar('fluxdRunning', 0); } $tmpl->setvar('fluxd_dbmode', $cfg["fluxd_dbmode"]); $tmpl->setvar('fluxd_loglevel', $cfg["fluxd_loglevel"]); // Qmgr FluxdServiceMod::initializeServiceMod('Qmgr'); // would not be needed as its done in main $tmpl->setvar('fluxd_Qmgr_enabled', $cfg["fluxd_Qmgr_enabled"]); $tmpl->setvar('fluxd_Qmgr_state', FluxdQmgr::getModState()); $tmpl->setvar('fluxd_Qmgr_interval', $cfg["fluxd_Qmgr_interval"]); $tmpl->setvar('fluxd_Qmgr_maxTotalTransfers', $cfg["fluxd_Qmgr_maxTotalTransfers"]); $tmpl->setvar('fluxd_Qmgr_maxUserTransfers', $cfg["fluxd_Qmgr_maxUserTransfers"]);
/** * controlFluxd */ function admin_controlFluxd() { global $cfg; $message = ""; $action = tfb_getRequestVar('a'); switch ($action) { case "start": // start fluxd if (Fluxd::isReadyToStart()) { Fluxd::start(); if (Fluxd::isRunning()) { $message = 'fluxd started'; } else { $message = 'Error starting fluxd.'; $msgs = Fluxd::getMessages(); Fluxd::logError("Error starting fluxd." . (!empty($msgs) ? "\n" . implode("\n", $msgs) . "\n" : "\n"), true); array_push($msgs, "please check fluxd-logs"); @error($message, "admin.php?op=fluxdSettings", "fluxd-Settings", $msgs); } break; } $message = 'fluxd not ready to start'; break; case "stop": // kill fluxd if (Fluxd::isRunning()) { Fluxd::stop(); $message = Fluxd::isRunning() ? 'Stop-Command sent.' : 'fluxd stopped.'; } break; default: $message = 'Error : no control-operation.'; break; } if ($message != "") { @header("Location: admin.php?op=fluxdSettings&m=" . urlencode($message)); } else { @header("Location: admin.php?op=fluxdSettings"); } exit; }