#------------------------------------------------------------------------------- #------------------------------------------------------------------------------- default: return SPrintF("---\n%s\n---\n", Implode("\n", Array_Slice($__SYSLOG, Count($__SYSLOG) - 20))); } #------------------------------------------------------------------------------- #------------------------------------------------------------------------------- if ($Commit) { #------------------------------------------------------------------------------- $Tmp = System_Element('tmp'); if (Is_Error($Tmp)) { return SPrintF("---\n%s\n---\n", Implode("\n", Array_Slice($__SYSLOG, Count($__SYSLOG) - 20))); } #------------------------------------------------------------------------------- $IsWrite = IO_Write(SPrintF('%s/LastUpdate.stamp', $Tmp), (string) Time(), TRUE); if (Is_Error($IsWrite)) { return SPrintF("---\n%s\n---\n", Implode("\n", Array_Slice($__SYSLOG, Count($__SYSLOG) - 20))); } #------------------------------------------------------------------------------- $Event = array('UserID' => $UserID ? $UserID : 10, 'PriorityID' => 'System', 'Text' => 'Обновление биллинга: заменён файловый набор'); $Event = Comp_Load('Events/EventInsert', $Event); if (!$Event) { return ERROR | @Trigger_Error(500); } #------------------------------------------------------------------------------- } #------------------------------------------------------------------------------- #------------------------------------------------------------------------------- return '[OK]'; #------------------------------------------------------------------------------- #-------------------------------------------------------------------------------
function LoadComp($__FILE__) { #------------------------------------------------------------------------------- $__args__ = Array_Slice(Func_Get_Args(), 2); #------------------------------------------------------------------------------- Debug(SPrintF("Load file: '%s'", $__FILE__)); #------------------------------------------------------------------------------- $GLOBALS['__COUNTER_COMPS']++; #------------------------------------------------------------------------------- # get file $FileContent = File($__FILE__); #------------------------------------------------------------------------------- # delete last string unset($FileContent[SizeOf($FileContent) - 1]); #------------------------------------------------------------------------------- # delete first string unset($FileContent[0]); #------------------------------------------------------------------------------- # create text from array $FileContent = Implode("\n", $FileContent); #------------------------------------------------------------------------------- # get result $CompResult = eval($FileContent); /*if($CompResult === FALSE) { Debug($__FILE__); return ERROR | @Trigger_Error(1000); }*/ #------------------------------------------------------------------------------- return $CompResult; #------------------------------------------------------------------------------- }
/******************************************************************************/ $__args_list = array('IP', 'ExtraIP', 'Length'); /******************************************************************************/ eval(COMP_INIT); /******************************************************************************/ /******************************************************************************/ $IPs = $ExtraIP ? Explode("\n", $ExtraIP) : array(); #------------------------------------------------------------------------------- $IPs[] = $IP; #------------------------------------------------------------------------------- $IPs = Array_Unique($IPs); #------------------------------------------------------------------------------- $Count = Count($IPs); #------------------------------------------------------------------------------- if ($Count > 10) { $IPs = Array_Slice($IPs, 0, 9); } #------------------------------------------------------------------------------- if (Mb_StrLen($IP) > $Length) { $IP = SPrintF('%s...', Mb_SubStr($IP, 0, $Length)); } #------------------------------------------------------------------------------- $A = new Tag('A', array('target' => 'blank', 'href' => SPrintF('http://%s/', $IP)), $IP); #------------------------------------------------------------------------------- $LinkID = UniqID('IPs'); #------------------------------------------------------------------------------- $Links =& Links(); # Коллекция ссылок $Links[$LinkID] =& $A; #------------------------------------------------------------------------------- $Comp = Comp_Load('Form/Prompt', $LinkID, SPrintF('<B>Всего: %u</B><BR />%s', $Count, Implode('<BR />', $IPs)));
#------------------------------------------------------------------------------- } #------------------------------------------------------------------------------- #--------------------------------TRANSACTION------------------------------------ if (Is_Error(DB_Transaction($TransactionID = UniqID('TaskExecute')))) { return ERROR | @Trigger_Error(500); } #------------------------------------------------------------------------------- #------------------------------------------------------------------------------- $__SYSLOG =& $GLOBALS['__SYSLOG']; #------------------------------------------------------------------------------- $Index = Count($__SYSLOG); #------------------------------------------------------------------------------- $Result = Call_User_Func_Array('Comp_Load', $Params); #------------------------------------------------------------------------------- $Log = Implode("\n", Array_Slice($__SYSLOG, $Index)); #------------------------------------------------------------------------------- #Debug(SPrintF('[comp/www/Administrator/API/TaskExecute]: Result = %s',print_r($Result,true))); switch (ValueOf($Result)) { case 'error': #------------------------------------------------------------------------------- if (Is_Error(DB_Roll($TransactionID))) { return ERROR | @Trigger_Error(500); } #------------------------------------------------------------------------------- $UTask['Errors'] = $Task['Errors'] + 1; #------------------------------------------------------------------------------- $UTask['Result'] = SPrintF("%s\n\n%s", $Task['Result'], $Log); #------------------------------------------------------------------------------- $Number = Comp_Load('Formats/Task/Number', $Task['ID']); if (Is_Error($Number)) {
$Table[] = array($DNS['Address'], (int) $DNS['Count']); #------------------------------------------------------------------------------- } #------------------------------------------------------------------------------- #------------------------------------------------------------------------------- $Comp = Comp_Load('Tables/Extended', $Table); if (Is_Error($Comp)) { return ERROR | @Trigger_Error(500); } #------------------------------------------------------------------------------- $NoBody->AddChild($Comp); #------------------------------------------------------------------------------- #------------------------------------------------------------------------------- if (Count($Params) > 1) { #------------------------------------------------------------------------------- $File = SPrintF('%s.jpg', Md5('DNS1')); #------------------------------------------------------------------------------- Artichow_Pie('Распределение заказов по чужим DNS', SPrintF('%s/%s', $Folder, $File), Array_Slice($Params, 0, 16), Array_Slice($Labels, 0, 16)); #------------------------------------------------------------------------------- $NoBody->AddChild(new Tag('BR')); #------------------------------------------------------------------------------- $NoBody->AddChild(new Tag('IMG', array('src' => $File))); #------------------------------------------------------------------------------- } #------------------------------------------------------------------------------- $Result['DOM'] = $NoBody; #------------------------------------------------------------------------------- #------------------------------------------------------------------------------- return $Result; #------------------------------------------------------------------------------- #-------------------------------------------------------------------------------
function DB_Roll($TransactionID) { /******************************************************************************/ $__args_types = array('string'); #------------------------------------------------------------------------------- $__args__ = Func_Get_Args(); eval(FUNCTION_INIT); /******************************************************************************/ $Transactions =& Link_Get('Transactions', 'array'); #------------------------------------------------------------------------------- if (!Count($Transactions)) { return ERROR | @Trigger_Error('[DB_Roll]: транзакций не обнаружено'); } #------------------------------------------------------------------------------- $Index = Array_Search($TransactionID, $Transactions); #------------------------------------------------------------------------------- if ($Index === FALSE) { return ERROR | @Trigger_Error(SPrintF('[DB_Roll]: точка отката транзакции (%s) не найдена', $TransactionID)); } #------------------------------------------------------------------------------- $IsEnd = $Index < 1; #------------------------------------------------------------------------------- $Sql = $IsEnd ? 'ROLLBACK' : SPrintF('ROLLBACK TO SAVEPOINT `%s`', $TransactionID); #------------------------------------------------------------------------------- Debug(SPrintF('[DB_Roll]: откат до транзакции [%s]', $TransactionID)); #------------------------------------------------------------------------------- $Transactions = Array_Slice($Transactions, 0, $Index); #------------------------------------------------------------------------------- Debug(SPrintF('[DB_Roll]: текущие транзакции [%s]', Count($Transactions) ? Implode(',', $Transactions) : 'нет')); #------------------------------------------------------------------------------- $Result = DB_Query($Sql); #------------------------------------------------------------------------------- switch (ValueOf($Result)) { case 'error': return ERROR | @Trigger_Error('[DB_Roll]: невозможно откатить транзакцию'); case 'true': #------------------------------------------------------------------------------- if ($IsEnd) { #------------------------------------------------------------------------------- $Result = DB_Query('SET AUTOCOMMIT=1'); #------------------------------------------------------------------------------- switch (ValueOf($Result)) { case 'error': return ERROR | @Trigger_Error('[DB_Roll]: невозможно осуществить запрос для установки режима транзакций'); case 'true': # No more... break; default: return ERROR | @Trigger_Error(101); } #------------------------------------------------------------------------------- } #------------------------------------------------------------------------------- return TRUE; #------------------------------------------------------------------------------- #------------------------------------------------------------------------------- default: return ERROR | @Trigger_Error(101); } #------------------------------------------------------------------------------- }
/******************************************************************************/ $__args_list = array('Domain', 'Parked', 'Length'); /******************************************************************************/ eval(COMP_INIT); /******************************************************************************/ /******************************************************************************/ $Domains = $Parked ? Explode(',', $Parked) : array(); #------------------------------------------------------------------------------- $Domains[] = $Domain; #------------------------------------------------------------------------------- $Domains = Array_Unique($Domains); #------------------------------------------------------------------------------- $Count = Count($Domains); #------------------------------------------------------------------------------- if ($Count > 10) { $Domains = Array_Slice($Domains, 0, 9); } #------------------------------------------------------------------------------- $Domain = $Text = Current($Domains); #------------------------------------------------------------------------------- if (Mb_StrLen($Text) > $Length) { $Text = SPrintF('%s...', Mb_SubStr($Text, 0, $Length)); } #------------------------------------------------------------------------------- $A = new Tag('A', array('target' => 'blank', 'href' => SPrintF('http://%s/', $Domain)), $Text); #------------------------------------------------------------------------------- $LinkID = UniqID('Domains'); #------------------------------------------------------------------------------- $Links =& Links(); # Коллекция ссылок $Links[$LinkID] =& $A;
} #------------------------------------------------------------------------------- $Answer = array(); #------------------------------------------------------------------------------- $Rows = DB_Select($TableID, $ColumnsIDs, $Query); #------------------------------------------------------------------------------- $Link =& Link_Get('DB'); #------------------------------------------------------------------------------- $Answer['Query'] = $Link->GetQuery(); #------------------------------------------------------------------------------- switch (ValueOf($Rows)) { case 'error': #--------------------------------------------------------------------------- $__SYSLOG =& $GLOBALS['__SYSLOG']; #--------------------------------------------------------------------------- return new gException('QUERY_ERROR', Implode("\n", Array_Slice($__SYSLOG, Count($__SYSLOG) - 20))); case 'exception': #--------------------------------------------------------------------------- $Answer['Status'] = 'Empty'; #--------------------------------------------------------------------------- return $Answer; case 'array': #--------------------------------------------------------------------------- $Answer['Status'] = 'Ok'; #--------------------------------------------------------------------------- for ($i = 0; $i < Count($Rows); $i++) { #------------------------------------------------------------------------- $Rows[UniqID('ID')] = $Rows[$i]; #------------------------------------------------------------------------- unset($Rows[$i]); }
#------------------------------------------------------------------------------- $textPlain = array(); #------------------------------------------------------------------------------- foreach ($Texts as $Text) { #------------------------------------------------------------------------------- $textPlain[] = Trim($Text); #------------------------------------------------------------------------------- if (Trim($Text) == '--') { $SignPos = SizeOf($textPlain) - 1; } #------------------------------------------------------------------------------- } #------------------------------------------------------------------------------- $Length = isset($SignPos) ? $SignPos : SizeOf($textPlain); #------------------------------------------------------------------------------- $textPlain = Trim(Implode("\n", Array_Slice($textPlain, 0, $Length))); #------------------------------------------------------------------------------- unset($SignPos); #------------------------------------------------------------------------------- } #------------------------------------------------------------------------------- #------------------------------------------------------------------------------- # достаём все заголовки $References = FALSE; #------------------------------------------------------------------------------- $Headers = Explode("\n", Trim($mailbox->fetchHeader($mail->mId))); #------------------------------------------------------------------------------- if (Is_Array($Headers) && Count($Headers)) { foreach ($Headers as $Line) { #------------------------------------------------------------------------------- $HeaderLine = Explode(" ", Trim($Line));
<TD class="bg_light b"> <?Print $text_total;?> </TD> <TD class="bg_light b right"> <?Print Number_Format($total_rows);?> </TD> <TD class="bg_light b right"> <?Print RoundShare($total_size);?> </TD> <TD class="bg_light b right<?IF($total_overhead){Print " red";}?>"> <?Print RoundShare($total_overhead);?> </TD> <TD class="bg_light" colspan=2> </TD> <TD class="bg_light"> </TD> </TR><TR> <TD class="bg_light b center" colspan=7><?Print $text_mysql_status;?></TD> </TR> <? $result = $DB_hub->Query("SHOW STATUS"); WHILE($row = $result->Fetch_Assoc()) { $mysql_stat[$row['Variable_name']] = $row['Value']; } $queries = Array_Slice($mysql_stat, 4, 70); ?> <TR> <TD class="bg_light b"> <?Print $text_version;?> </TD> <TD class="bg_light right"> <?Print $DB_hub->server_info;?> </TD> <TD class="bg_light" colspan=5> </TD> </TR><TR> <TD class="bg_light b"> <?Print $text_received;?> </TD> <TD class="bg_light right"> <?Print RoundShare($mysql_stat['Bytes_received']);?> </TD> <TD class="bg_light right"> <?Print RoundShare($mysql_stat['Bytes_received'] / $mysql_stat['Uptime']);?>/s </TD> <TD class="bg_light right" colspan=2> <?Print RoundShare($mysql_stat['Bytes_received'] / Array_Sum($queries))."/".$text_query;?> </TD> <TD class="bg_light" colspan=2> </TD> </TR><TR> <TD class="bg_light b"> <?Print $text_sent;?> </TD> <TD class="bg_light right"> <?Print RoundShare($mysql_stat['Bytes_sent']);?> </TD> <TD class="bg_light right"> <?Print RoundShare($mysql_stat['Bytes_sent'] / $mysql_stat['Uptime']);?>/s </TD>