Example #1
0
 }
 #-------------------------------------------------------------------------------
 Sort($PatchesIDs);
 #-------------------------------------------------------------------------------
 $LastPatchDB = DB_Select('Config', 'Value', array('UNIQ', 'Where' => SPrintF("`Param` = 'LastPatchDB' AND `HostID` = '%s'", $HostID)));
 #-------------------------------------------------------------------------------
 switch (ValueOf($LastPatchDB)) {
     case 'error':
         return ERROR | @Trigger_Error(500);
     case 'exception':
         #-------------------------------------------------------------------------------
         $LastPatchDB = IntVal(End($PatchesIDs));
         #-------------------------------------------------------------------------------
         echo SPrintF("Установка максимального патча базы данных (%u) хоста (%s)\n", $LastPatchDB, $HostID);
         #-------------------------------------------------------------------------------
         $InInsert = DB_Insert('Config', array('HostID' => $HostID, 'Param' => 'LastPatchDB', 'Value' => $LastPatchDB));
         if (Is_Error($InInsert)) {
             return ERROR | @Trigger_Error(500);
         }
         #-------------------------------------------------------------------------------
         break;
         #-------------------------------------------------------------------------------
     #-------------------------------------------------------------------------------
     case 'array':
         #-------------------------------------------------------------------------------
         $LastPatchDB = IntVal($LastPatchDB['Value']);
         #-------------------------------------------------------------------------------
         echo SPrintF("Последний патч базы данных хоста (%s) (%u)\n", $HostID, $LastPatchDB);
         #-------------------------------------------------------------------------------
         foreach ($PatchesIDs as $PatchID) {
             #-------------------------------------------------------------------------------
Example #2
0
#-------------------------------------------------------------------------------
if (isset($Config['Tasks']['Types']['CheckEmail']['CheckEmailLogin'])) {
    #-------------------------------------------------------------------------------
    $CheckEmail = $Config['Tasks']['Types']['CheckEmail'];
    Debug(SPrintF('[patches/hosting/files/1000014.php]: CheckEmail = %s', print_r($CheckEmail, true)));
    #-------------------------------------------------------------------------------
    #-------------------------------------------------------------------------------
    $IsDelete = DB_Delete('Servers', array('Where' => '`TemplateID` = "EmailClient"'));
    if (Is_Error($IsDelete)) {
        return ERROR | @Trigger_Error(500);
    }
    #-------------------------------------------------------------------------------
    #-------------------------------------------------------------------------------
    $Server = array('TemplateID' => 'EmailClient', 'IsActive' => TRUE, 'IsDefault' => TRUE, 'Protocol' => isset($CheckEmail['UseSSL']) ? $CheckEmail['UseSSL'] ? 'ssl' : 'tcp' : 'ssl', 'Address' => isset($CheckEmail['CheckEmailServer']) ? $CheckEmail['CheckEmailServer'] : 'pop.yandex.ru', 'Port' => 110, 'Login' => isset($CheckEmail['CheckEmailLogin']) ? $CheckEmail['CheckEmailLogin'] : '', 'Password' => isset($CheckEmail['CheckEmailPassword']) ? $CheckEmail['CheckEmailPassword'] : '', 'Params' => array('Method' => isset($CheckEmail['CheckEmailProtocol']) ? $CheckEmail['CheckEmailProtocol'] : 'pop3'), 'AdminNotice' => 'Используется учётная запись от которой шлёт сообщения биллинг (пользователь с идентификатором 100)', 'SortID' => 100000, 'Monitoring' => "POP3=110\nPOP3S=995\nIMAP4=143\nIMAP4S=993");
    #-------------------------------------------------------------------------------
    $IsInsert = DB_Insert('Servers', $Server);
    if (Is_Error($IsInsert)) {
        return ERROR | @Trigger_Error(500);
    }
    #-------------------------------------------------------------------------------
    #-------------------------------------------------------------------------------
    unset($Config['Tasks']['Types']['CheckEmail']['UseSSL']);
    unset($Config['Tasks']['Types']['CheckEmail']['CheckEmailServer']);
    unset($Config['Tasks']['Types']['CheckEmail']['CheckEmailLogin']);
    unset($Config['Tasks']['Types']['CheckEmail']['CheckEmailPassword']);
    unset($Config['Tasks']['Types']['CheckEmail']['CheckEmailProtocol']);
    #-------------------------------------------------------------------------------
}
#-------------------------------------------------------------------------------
#-------------------------------------------------------------------------------
$File = IO_Write($ConfigPath, To_XML_String($Config), TRUE);
Example #3
0
 #----------------------------------TRANSACTION----------------------------------
 if (Is_Error(DB_Transaction($TransactionID = UniqID('ResetOrdersDays')))) {
     return ERROR | @Trigger_Error(500);
 }
 #-------------------------------------------------------------------------------
 #-------------------------------------------------------------------------------
 # удаляем весь учёт для заказа, где скидка 100% или цена 0
 $IsDelete = DB_Delete('OrdersConsider', array('Where' => SPrintF('`OrderID` = %u', $OrderID)));
 if (Is_Error($IsDelete)) {
     return ERROR | @Trigger_Error(500);
 }
 #-------------------------------------------------------------------------------
 # втыкаем новый учёт, на нужное число дней
 $IOrdersConsider = array('OrderID' => $OrderID, 'DaysReserved' => IntVal($Settings['ResetDaysTo']), 'Cost' => 0);
 #-------------------------------------------------------------------------------
 $OrdersConsiderID = DB_Insert('OrdersConsider', $IOrdersConsider);
 if (Is_Error($OrdersConsiderID)) {
     return ERROR | @Trigger_Error(500);
 }
 #-------------------------------------------------------------------------------
 $IsUpdate = DB_Update('OrdersConsider', array('DaysConsidered' => 0), array('ID' => $OrdersConsiderID));
 if (Is_Error($IsUpdate)) {
     return ERROR | @Trigger_Error(500);
 }
 #-------------------------------------------------------------------------------
 # снимаем галку про автопродление
 $IsUpdate = DB_Update('Orders', array('IsAutoProlong' => FALSE), array('ID' => $OrderID));
 if (Is_Error($IsUpdate)) {
     return ERROR | @Trigger_Error(500);
 }
 #-------------------------------------------------------------------------------
Example #4
0
$Rating = (int) @$Args['Rating'];
#-------------------------------------------------------------------------------
$Count = DB_Count('Clauses', array('ID' => $ClauseID));
if (Is_Error($Count)) {
    return ERROR | Trigger_Error(500);
}
#-------------------------------------------------------------------------------
if (!$Count) {
    return new gException('CLAUSE_NOT_FOUND', 'Указанная статья не найдена');
}
#-------------------------------------------------------------------------------
if ($Rating < 1 || $Rating > 5) {
    return new gException('WRONG_RATTING', 'Неверный рейтинг');
}
#-------------------------------------------------------------------------------
$IsInsert = DB_Insert('ClausesRating', array('ClauseID' => $ClauseID, 'IP' => $_SERVER['REMOTE_ADDR'], 'Rating' => $Rating));
if (Is_Error($IsInsert)) {
    return ERROR | Trigger_Error(500);
}
#-------------------------------------------------------------------------------
$ClauseRating = DB_Select('ClausesRating', array('AVG(`Rating`) as `Rating`'), array('UNIQ', 'Where' => SPrintF('`ClauseID` = %u', $ClauseID), 'GroupBy' => 'ClauseID'));
#-------------------------------------------------------------------------------
switch (ValueOf($ClauseRating)) {
    case 'error':
        return ERROR | @Trigger_Error(500);
    case 'exception':
        return ERROR | @Trigger_Error(400);
    case 'array':
        return array('Status' => 'Ok', 'Rating' => SPrintF('%01.2f', $ClauseRating['Rating']));
    default:
        return ERROR | @Trigger_Error(101);
Example #5
0
 #---------------------------------------------------------------------------
 switch (ValueOf($Upload)) {
     case 'error':
         return ERROR | @Trigger_Error(500);
     case 'exception':
         # No more...
         break;
     case 'array':
         #-----------------------------------------------------------------------
         $IEdeskMessage['FileName'] = $Upload['Name'];
         break;
     default:
         return ERROR | @Trigger_Error(101);
 }
 #---------------------------------------------------------------------------
 $MessageID = DB_Insert('EdesksMessages', $IEdeskMessage);
 if (Is_Error($MessageID)) {
     return ERROR | @Trigger_Error(500);
 }
 #---------------------------------------------------------------------------
 if (isset($IEdeskMessage['FileName'])) {
     if (!SaveUploadedFile('EdesksMessages', $MessageID, $Upload['Data'])) {
         return new gException('CANNOT_SAVE_UPLOADED_FILE', 'Не удалось сохранить загруженный файл');
     }
 }
 #---------------------------------------------------------------------------
 $Users = DB_Select('Users', 'ID', array('Where' => SPrintF('`ID` != %u AND `ID` > 50', $__USER['ID'])));
 #---------------------------------------------------------------------------
 switch (ValueOf($Users)) {
     case 'error':
         return ERROR | @Trigger_Error(500);
#-------------------------------------------------------------------------------
if (!$MinDaysPay) {
    return new gException('MIN_DAYS_PAY_NOT_DEFINED', 'Минимальное кол-во дней оплаты не указано');
}
#-------------------------------------------------------------------------------
if ($MinDaysProlong > $MinDaysPay) {
    return new gException('WRONG_MIN_DAYS_PROLONG', 'Минимальное число дней продления не может быть больше минимального числа дней оплаты');
}
#-------------------------------------------------------------------------------
if ($MinDaysPay > $MaxDaysPay) {
    return new gException('WRONG_MIN_DAYS_PAY', 'Минимальное кол-во дней оплаты не можеть быть больше максимального');
}
#-------------------------------------------------------------------------------
$IHostingScheme = array('GroupID' => $GroupID, 'UserID' => $UserID, 'Name' => $Name, 'PackageID' => $PackageID, 'CostDay' => $CostDay, 'CostMonth' => $CostMonth, 'ServersGroupID' => $ServersGroupID, 'HardServerID' => $HardServerID, 'Comment' => $Comment, 'IsReselling' => $IsReselling, 'IsActive' => $IsActive, 'IsProlong' => $IsProlong, 'IsSchemeChangeable' => $IsSchemeChangeable, 'IsSchemeChange' => $IsSchemeChange, 'MinDaysPay' => $MinDaysPay, 'MinDaysProlong' => $MinDaysProlong, 'MaxDaysPay' => $MaxDaysPay, 'MaxOrders' => $MaxOrders, 'MinOrdersPeriod' => $MinOrdersPeriod, 'SortID' => $SortID, 'QuotaDisk' => $QuotaDisk, 'QuotaEmail' => $QuotaEmail, 'QuotaDomains' => $QuotaDomains, 'QuotaFTP' => $QuotaFTP, 'QuotaParkDomains' => $QuotaParkDomains, 'QuotaSubDomains' => $QuotaSubDomains, 'QuotaDBs' => $QuotaDBs, 'QuotaTraffic' => $QuotaTraffic, 'QuotaEmailAutoResp' => $QuotaEmailAutoResp, 'QuotaEmailLists' => $QuotaEmailLists, 'QuotaEmailForwards' => $QuotaEmailForwards, 'QuotaUsers' => $QuotaUsers, 'IsShellAccess' => $IsShellAccess, 'IsSSLAccess' => $IsSSLAccess, 'IsCGIAccess' => $IsCGIAccess, 'IsDnsControll' => $IsDnsControll, 'QuotaWWWDomains' => $QuotaWWWDomains, 'QuotaEmailDomains' => $QuotaEmailDomains, 'QuotaUsersDBs' => $QuotaUsersDBs, 'QuotaCPU' => $QuotaCPU, 'MaxExecutionTime' => $MaxExecutionTime, 'QuotaMEM' => $QuotaMEM, 'QuotaPROC' => $QuotaPROC, 'QuotaMPMworkers' => $QuotaMPMworkers, 'mysqlquerieslimit' => $mysqlquerieslimit, 'mysqlupdateslimit' => $mysqlupdateslimit, 'mysqlconnectlimit' => $mysqlconnectlimit, 'mysqluserconnectlimit' => $mysqluserconnectlimit, 'mailrate' => $mailrate, 'IsSSIAccess' => $IsSSIAccess, 'IsPHPModAccess' => $IsPHPModAccess, 'IsPHPCGIAccess' => $IsPHPCGIAccess, 'IsPHPFastCGIAccess' => $IsPHPFastCGIAccess, 'IsPHPSafeMode' => $IsPHPSafeMode, 'QuotaAddonDomains' => $QuotaAddonDomains, 'QuotaWebUsers' => $QuotaWebUsers, 'QuotaEmailBox' => $QuotaEmailBox, 'QuotaEmailGroups' => $QuotaEmailGroups, 'QuotaWebApp' => $QuotaWebApp, 'IsCreateDomains' => $IsCreateDomains, 'IsManageHosting' => $IsManageHosting, 'IsManageQuota' => $IsManageQuota, 'IsManageSubdomains' => $IsManageSubdomains, 'IsChangeLimits' => $IsChangeLimits, 'IsManageLog' => $IsManageLog, 'IsManageCrontab' => $IsManageCrontab, 'IsManageAnonFtp' => $IsManageAnonFtp, 'IsManageWebapps' => $IsManageWebapps, 'IsManageMaillists' => $IsManageMaillists, 'IsManageDrWeb' => $IsManageDrWeb, 'IsMakeDumps' => $IsMakeDumps, 'IsSiteBuilder' => $IsSiteBuilder, 'IsRemoteInterface' => $IsRemoteInterface, 'IsManagePerformance' => $IsManagePerformance, 'IsCpAccess' => $IsCpAccess, 'IsManageDomainAliases' => $IsManageDomainAliases, 'IsManageIISAppPool' => $IsManageIISAppPool, 'IsDashBoard' => $IsDashBoard, 'IsStdGIU' => $IsStdGIU, 'IsManageDashboard' => $IsManageDashboard, 'IsManageSubFtp' => $IsManageSubFtp, 'ISManageSpamFilter' => $ISManageSpamFilter, 'IsLocalBackups' => $IsLocalBackups, 'IsFtpBackups' => $IsFtpBackups, 'IsAnonimousFTP' => $IsAnonimousFTP, 'IsPHPAccess' => $IsPHPAccess, 'IsSpamAssasing' => $IsSpamAssasing, 'IsCatchAll' => $IsCatchAll, 'IsSystemInfo' => $IsSystemInfo, 'field1' => $field1, 'field2' => $field2, 'field3' => $field3);
#-------------------------------------------------------------------------------
if ($HostingSchemeID) {
    #-----------------------------------------------------------------------------
    $IsUpdate = DB_Update('HostingSchemes', $IHostingScheme, array('ID' => $HostingSchemeID));
    if (Is_Error($IsUpdate)) {
        return ERROR | @Trigger_Error(500);
    }
} else {
    #-----------------------------------------------------------------------------
    $IsInsert = DB_Insert('HostingSchemes', $IHostingScheme);
    if (Is_Error($IsInsert)) {
        return ERROR | @Trigger_Error(500);
    }
}
#-------------------------------------------------------------------------------
return array('Status' => 'Ok');
#-------------------------------------------------------------------------------
Example #7
0
             # No more...
             break;
         case 'array':
             #---------------------------TRANSACTION---------------------------
             if (Is_Error(DB_Transaction($TransactionID = UniqID('WorksComplite')))) {
                 return ERROR | @Trigger_Error(500);
             }
             #-----------------------------------------------------------------
             $IsDelete = DB_Delete('WorksComplite', array('Where' => SPrintF('`ContractID` = %u', $Contract['ID'])));
             if (Is_Error($IsDelete)) {
                 return ERROR | @Trigger_Error(500);
             }
             #-----------------------------------------------------------------
             foreach ($WorksComplite as $WorkComplite) {
                 #---------------------------------------------------------------
                 $IsInsert = DB_Insert('WorksComplite', $WorkComplite);
                 if (Is_Error($IsInsert)) {
                     return ERROR | @Trigger_Error(500);
                 }
             }
             #-----------------------------------------------------------------
             if (Is_Error(DB_Commit($TransactionID))) {
                 return ERROR | @Trigger_Error(500);
             }
             #-----------------------------------------------------------------
             break;
         default:
             return ERROR | @Trigger_Error(101);
     }
     break;
 default:
Example #8
0
$Answer = array('Status' => 'Ok');
#------------------------------------------------------------------------------
#-------------------------------------------------------------------------------
$Clause = array('GroupID' => $GroupID, 'PublicDate' => $PublicDate, 'Partition' => $Partition, 'Title' => $Title, 'IsXML' => $IsXML, 'IsDOM' => $IsDOM, 'IsPublish' => $IsPublish, 'Text' => $Text);
#-------------------------------------------------------------------------------
if ($ClauseID) {
    #-----------------------------------------------------------------------------
    $Clause['ChangedDate'] = Time();
    $Clause['EditorID'] = $__USER['ID'];
    #-------------------------------------------------------------------------------
    $IsUpdate = DB_Update('Clauses', $Clause, array('ID' => $ClauseID));
    if (Is_Error($IsUpdate)) {
        return ERROR | @Trigger_Error(500);
    }
    #-------------------------------------------------------------------------------
} else {
    #-------------------------------------------------------------------------------
    $Clause['AuthorID'] = $__USER['ID'];
    #-------------------------------------------------------------------------------
    $ClauseID = DB_Insert('Clauses', $Clause);
    if (Is_Error($ClauseID)) {
        return ERROR | @Trigger_Error(500);
    }
    #-------------------------------------------------------------------------------
    $Answer['ClauseID'] = $ClauseID;
    #-------------------------------------------------------------------------------
}
#-------------------------------------------------------------------------------
#-------------------------------------------------------------------------------
return $Answer;
#-------------------------------------------------------------------------------
Example #9
0
#-------------------------------------------------------------------------------
if (!$MinDaysPay) {
    return new gException('MIN_DAYS_PAY_NOT_DEFINED', 'Минимальное кол-во дней оплаты не указано');
}
#-------------------------------------------------------------------------------
if ($MinDaysProlong > $MinDaysPay) {
    return new gException('WRONG_MIN_DAYS_PROLONG', 'Минимальное число дней продления не может быть больше минимального числа дней оплаты');
}
#-------------------------------------------------------------------------------
if ($MinDaysPay > $MaxDaysPay) {
    return new gException('WRONG_MIN_DAYS_PAY', 'Минимальное кол-во дней оплаты не можеть быть больше максимального');
}
#-------------------------------------------------------------------------------
$IVPSScheme = array('GroupID' => $GroupID, 'UserID' => $UserID, 'Name' => $Name, 'PackageID' => $PackageID, 'CostDay' => $CostDay, 'CostMonth' => $CostMonth, 'CostInstall' => $CostInstall, 'ServersGroupID' => $ServersGroupID, 'Comment' => $Comment, 'IsReselling' => $IsReselling, 'IsActive' => $IsActive, 'IsProlong' => $IsProlong, 'IsSchemeChangeable' => $IsSchemeChangeable, 'IsSchemeChange' => $IsSchemeChange, 'MinDaysPay' => $MinDaysPay, 'MinDaysProlong' => $MinDaysProlong, 'MaxDaysPay' => $MaxDaysPay, 'MaxOrders' => $MaxOrders, 'MinOrdersPeriod' => $MinOrdersPeriod, 'SortID' => $SortID, 'vdslimit' => $vdslimit, 'disklimit' => $disklimit, 'maxdesc' => $maxdesc, 'blkiotune' => $blkiotune, 'isolimitsize' => $isolimitsize, 'isolimitnum' => $isolimitnum, 'snapshot_limit' => $snapshot_limit, 'maxswap' => $maxswap, 'traf' => $traf, 'chrate' => $chrate, 'QuotaUsers' => $QuotaUsers, 'cpu' => $cpu, 'ncpu' => $ncpu, 'mem' => $mem, 'bmem' => $bmem, 'proc' => $proc, 'ipalias' => $ipalias, 'extns' => $extns, 'limitpvtdns' => $limitpvtdns, 'limitpubdns' => $limitpubdns, 'backup' => $backup);
#-------------------------------------------------------------------------------
if ($VPSSchemeID) {
    #-----------------------------------------------------------------------------
    $IsUpdate = DB_Update('VPSSchemes', $IVPSScheme, array('ID' => $VPSSchemeID));
    if (Is_Error($IsUpdate)) {
        return ERROR | @Trigger_Error(500);
    }
} else {
    #-----------------------------------------------------------------------------
    $IsInsert = DB_Insert('VPSSchemes', $IVPSScheme);
    if (Is_Error($IsInsert)) {
        return ERROR | @Trigger_Error(500);
    }
}
#-------------------------------------------------------------------------------
return array('Status' => 'Ok');
#-------------------------------------------------------------------------------
Example #10
0
#-------------------------------------------------------------------------------
if (isset($Config['Domains']['Registrators'])) {
    #-----------------------------------------------------------------------------
    $Registrators = $Config['Domains']['Registrators'];
    #-----------------------------------------------------------------------------
    foreach (Array_Keys($Registrators) as $TypeID) {
        #---------------------------------------------------------------------------
        $Type = $Registrators[$TypeID];
        #---------------------------------------------------------------------------
        if (!$Type['Login']) {
            continue;
        }
        #---------------------------------------------------------------------------
        $Http = $Type['Http'];
        #---------------------------------------------------------------------------
        $IRow = array('Name' => $TypeID, 'TypeID' => $TypeID, 'Address' => $Http['Address'], 'Port' => $Http['Port'], 'Protocol' => $Http['Protocol'], 'Login' => $Type['Login'], 'Password' => $Type['Password']);
        #---------------------------------------------------------------------------
        $RegistratorID = DB_Insert('Registrators', $IRow);
        if (Is_Error($RegistratorID)) {
            return ERROR | Trigger_Error(500);
        }
        #---------------------------------------------------------------------------
        $IsUpdate = DB_Update('DomainsSchemes', array('RegistratorID' => $RegistratorID), array('Where' => SPrintF("`RegistratorID` = '%s'", $TypeID)));
        if (Is_Error($IsUpdate)) {
            return ERROR | Trigger_Error(500);
        }
    }
}
#-------------------------------------------------------------------------------
return TRUE;
#-------------------------------------------------------------------------------
Example #11
0
        default:
            return ERROR | @Trigger_Error(101);
    }
}
#-------------------------------------------------------------------------------
$OrderID = DB_Insert('Orders', array('ContractID' => $Contract['ID'], 'ServiceID' => $Server['ServiceID'], 'ServerID' => $Server['ID'], 'Params' => array('ViewArea' => $ViewArea)));
if (Is_Error($OrderID)) {
    return ERROR | @Trigger_Error(500);
}
#-------------------------------------------------------------------------------
$Login = SPrintF('%s%s', $Server['Params']['Prefix'], $OrderID);
#-------------------------------------------------------------------------------
#-------------------------------------------------------------------------------
$IDNSmanagerOrder = array('OrderID' => $OrderID, 'SchemeID' => $DNSmanagerScheme['ID'], 'Login' => $Login, 'Password' => $Password);
#-------------------------------------------------------------------------------
$DNSmanagerOrderID = DB_Insert('DNSmanagerOrders', $IDNSmanagerOrder);
if (Is_Error($DNSmanagerOrderID)) {
    return ERROR | @Trigger_Error(500);
}
#-------------------------------------------------------------------------------
$Comp = Comp_Load('www/API/StatusSet', array('ModeID' => 'DNSmanagerOrders', 'StatusID' => 'Waiting', 'RowsIDs' => $DNSmanagerOrderID, 'Comment' => $Comment ? $Comment : 'Заказ создан и ожидает оплаты'));
#-------------------------------------------------------------------------------
switch (ValueOf($Comp)) {
    case 'error':
        return ERROR | @Trigger_Error(500);
    case 'exception':
        return $Comp;
    case 'array':
        break;
    default:
        return ERROR | @Trigger_Error(101);
Example #12
0
    return new gException('WRONG_MIN_DAYS_PROLONG', 'Минимальное число дней продления не может быть больше минимального числа дней оплаты');
}
#-------------------------------------------------------------------------------
#-------------------------------------------------------------------------------
if ($MinDaysPay > $MaxDaysPay) {
    return new gException('WRONG_MIN_DAYS_PAY', 'Минимальное кол-во дней оплаты не можеть быть больше максимального');
}
#-------------------------------------------------------------------------------
#-------------------------------------------------------------------------------
$IDSScheme = array('GroupID' => $GroupID, 'UserID' => $UserID, 'Name' => $Name, 'PackageID' => $PackageID, 'CostDay' => $CostDay, 'CostMonth' => $CostMonth, 'CostInstall' => $CostInstall, 'ServerID' => $ServerID, 'IsActive' => $IsActive, 'IsBroken' => $IsBroken, 'IsProlong' => $IsProlong, 'MinDaysPay' => $MinDaysPay, 'MinDaysProlong' => $MinDaysProlong, 'MaxDaysPay' => $MaxDaysPay, 'MaxOrders' => $MaxOrders, 'MinOrdersPeriod' => $MinOrdersPeriod, 'SortID' => $SortID, 'CPU' => $CPU, 'ram' => $ram, 'raid' => $raid, 'disks' => $disks, 'chrate' => $chrate, 'trafflimit' => $trafflimit, 'traffcorrelation' => $traffcorrelation, 'OS' => $OS, 'Switch' => $Switch, 'UserNotice' => $UserNotice, 'AdminNotice' => $AdminNotice);
#-------------------------------------------------------------------------------
if ($DSSchemeID) {
    #-------------------------------------------------------------------------------
    $IsUpdate = DB_Update('DSSchemes', $IDSScheme, array('ID' => $DSSchemeID));
    if (Is_Error($IsUpdate)) {
        return ERROR | @Trigger_Error(500);
    }
    #-------------------------------------------------------------------------------
} else {
    #-------------------------------------------------------------------------------
    $IsInsert = DB_Insert('DSSchemes', $IDSScheme);
    if (Is_Error($IsInsert)) {
        return ERROR | @Trigger_Error(500);
    }
    #-------------------------------------------------------------------------------
}
#-------------------------------------------------------------------------------
#-------------------------------------------------------------------------------
return array('Status' => 'Ok');
#-------------------------------------------------------------------------------
#-------------------------------------------------------------------------------
    return new gException('WRONG_MIN_DAYS_PROLONG', 'Минимальное число дней продления не может быть больше минимального числа дней оплаты');
}
#-------------------------------------------------------------------------------
#-------------------------------------------------------------------------------
if ($MinDaysPay > $MaxDaysPay) {
    return new gException('WRONG_MIN_DAYS_PAY', 'Минимальное кол-во дней оплаты не можеть быть больше максимального');
}
#-------------------------------------------------------------------------------
#-------------------------------------------------------------------------------
$IDNSmanagerScheme = array('GroupID' => $GroupID, 'UserID' => $UserID, 'Name' => $Name, 'PackageID' => $PackageID, 'CostDay' => $CostDay, 'CostMonth' => $CostMonth, 'ServersGroupID' => $ServersGroupID, 'HardServerID' => $HardServerID, 'Comment' => $Comment, 'IsReselling' => $IsReselling, 'IsActive' => $IsActive, 'IsProlong' => $IsProlong, 'IsSchemeChangeable' => $IsSchemeChangeable, 'IsSchemeChange' => $IsSchemeChange, 'MinDaysPay' => $MinDaysPay, 'MinDaysProlong' => $MinDaysProlong, 'MaxDaysPay' => $MaxDaysPay, 'MaxOrders' => $MaxOrders, 'MinOrdersPeriod' => $MinOrdersPeriod, 'SortID' => $SortID, 'Reseller' => $Reseller, 'ViewArea' => $ViewArea, 'DomainLimit' => $DomainLimit);
#-------------------------------------------------------------------------------
if ($DNSmanagerSchemeID) {
    #-------------------------------------------------------------------------------
    $IsUpdate = DB_Update('DNSmanagerSchemes', $IDNSmanagerScheme, array('ID' => $DNSmanagerSchemeID));
    if (Is_Error($IsUpdate)) {
        return ERROR | @Trigger_Error(500);
    }
    #-------------------------------------------------------------------------------
} else {
    #-------------------------------------------------------------------------------
    $IsInsert = DB_Insert('DNSmanagerSchemes', $IDNSmanagerScheme);
    if (Is_Error($IsInsert)) {
        return ERROR | @Trigger_Error(500);
    }
    #-------------------------------------------------------------------------------
}
#-------------------------------------------------------------------------------
#-------------------------------------------------------------------------------
return array('Status' => 'Ok');
#-------------------------------------------------------------------------------
#-------------------------------------------------------------------------------
Example #14
0
             break;
         default:
             return ERROR | @Trigger_Error(101);
     }
 }
 #---------------------------------------------------------------
 $OrderID = DB_Insert('Orders', array('ContractID' => $Contract['ID'], 'ServerID' => $Server['ID'], 'Params' => array('DiskTemplate' => $DiskTemplate), 'ServiceID' => 30000));
 if (Is_Error($OrderID)) {
     return ERROR | @Trigger_Error(500);
 }
 #---------------------------------------------------------------
 $Login = SPrintF('%s%s', $Server['Params']['Prefix'], $OrderID);
 #---------------------------------------------------------------
 $IVPSOrder = array('OrderID' => $OrderID, 'SchemeID' => $VPSScheme['ID'], 'Login' => $Login, 'Password' => $Password, 'Domain' => SPrintF('%s.%s', $Login, $Server['Params']['Domain']));
 #---------------------------------------------------------------
 $VPSOrderID = DB_Insert('VPSOrders', $IVPSOrder);
 if (Is_Error($VPSOrderID)) {
     return ERROR | @Trigger_Error(500);
 }
 #---------------------------------------------------------------
 $Comp = Comp_Load('www/API/StatusSet', array('ModeID' => 'VPSOrders', 'StatusID' => 'Waiting', 'RowsIDs' => $VPSOrderID, 'Comment' => $Comment ? $Comment : 'Заказ создан и ожидает оплаты'));
 #---------------------------------------------------------------
 switch (ValueOf($Comp)) {
     case 'error':
         return ERROR | @Trigger_Error(500);
     case 'exception':
         #return ERROR | @Trigger_Error(400);
         return $Comp;
     case 'array':
         #-----------------------------------------------------------
         $Event = array('UserID' => $Contract['UserID'], 'PriorityID' => 'Billing', 'Text' => SPrintF('Сформирована заявка на заказ VPS логин (%s), тариф (%s)', $Login, $VPSScheme['Name']));
Example #15
0
$Epoches = 3;
#-------------------------------------------------------------------------------
$Incomes = array();
#-------------------------------------------------------------------------------
$Orders = DB_Select(array('VPSOrders', 'Orders', 'Contracts'), array('ContractID', 'Balance', 'OrderID', 'Customer', 'Login', 'Domain', '(UNIX_TIMESTAMP() + `DaysRemainded`*86400) as `ExpirationDate`', '(SELECT `MinDaysPay` FROM `VPSSchemes` WHERE `VPSSchemes`.`ID` = `VPSOrders`.`SchemeID`) as `MinDaysPay`', '(SELECT `CostDay` FROM `VPSSchemes` WHERE `VPSSchemes`.`ID` = `VPSOrders`.`SchemeID`) as `CostDay`'), array('Where' => SPrintF('(UNIX_TIMESTAMP() + `DaysRemainded`*86400) < %u AND `Orders`.`ID` = `VPSOrders`.`OrderID` AND `Contracts`.`ID` = `Orders`.`ContractID`', MkTime(0, 0, 1, Date('n') + $Epoches)), 'SortOn' => 'ExpirationDate'));
#-------------------------------------------------------------------------------
switch (ValueOf($Orders)) {
    case 'error':
        return ERROR | @Trigger_Error(500);
    case 'exception':
        return $Result;
    case 'array':
        #---------------------------------------------------------------------------
        foreach ($Orders as $Order) {
            #-------------------------------------------------------------------------
            $IsInsert = DB_Insert($UniqID, $Order);
            if (Is_Error($IsInsert)) {
                return ERROR | @Trigger_Error(500);
            }
            #-------------------------------------------------------------------------
            $Incomes[$Order['OrderID']] = $Order;
        }
        break;
    default:
        return ERROR | @Trigger_Error(101);
}
#-------------------------------------------------------------------------------
$sMonth = Date('Y') * 12 + Date('n');
#-------------------------------------------------------------------------------
$Head = array(new Tag('TD', array('class' => 'Head'), 'Клиент'), new Tag('TD', array('class' => 'Head'), 'Логин'), new Tag('TD', array('class' => 'Head'), 'Домен'));
#-------------------------------------------------------------------------------
Example #16
0
                return ERROR | @Trigger_Error(500);
            }
            #---------------------------------------------------------------------------
            return $Answer;
        default:
            return ERROR | @Trigger_Error(101);
    }
    #-------------------------------------------------------------------------------
} else {
    $Contract = DB_Select('Contracts', 'ID', array('UNIQ', 'Where' => SPrintF("`UserID` = %u AND `TypeID` = 'NaturalPartner'", $__USER['ID'])));
    #-------------------------------------------------------------------------------
    switch (ValueOf($Contract)) {
        case 'error':
            return ERROR | @Trigger_Error(500);
        case 'exception':
            $ContractID = DB_Insert('Contracts', $dContract);
            if (Is_Error($ContractID)) {
                return ERROR | @Trigger_Error(500);
            }
            $Answer = array('Status' => 'Ok', 'ContractID' => $ContractID);
            break;
        case 'array':
            #---------------------------------------------------------------------------
            $ContractID = (int) $Contract['ID'];
            $Answer = array('Status' => 'Ok', 'ContractID' => $ContractID);
            break;
        default:
            return ERROR | @Trigger_Error(101);
    }
    # set status
    $Comp = Comp_Load('www/API/StatusSet', array('ModeID' => 'Contracts', 'StatusID' => $StatusID, 'RowsIDs' => $ContractID));
Example #17
0
#-------------------------------------------------------------------------------
$IService = array('GroupID' => $GroupID, 'UserID' => $UserID, 'ServicesGroupID' => $ServicesGroupID, 'Name' => $Name, 'NameShort' => $NameShort, 'Item' => $Item, 'Measure' => $Measure, 'ConsiderTypeID' => $ConsiderTypeID, 'CostOn' => $CostOn, 'Cost' => $Cost, 'PartnersRewardPercent' => $PartnersRewardPercent, 'IsActive' => $IsActive, 'IsProlong' => $IsProlong, 'IsConditionally' => $IsConditionally, 'IsAutoInvoicing' => $IsAutoInvoicing, 'Params' => array('Statuses' => $Statuses), 'SortID' => $SortID);
#-------------------------------------------------------------------------------
#-------------------------------------------------------------------------------
$Answer = array('Status' => 'Ok');
#-------------------------------------------------------------------------------
if ($ServiceID) {
    #-------------------------------------------------------------------------------
    $IsUpdate = DB_Update('Services', $IService, array('ID' => $ServiceID));
    if (Is_Error($IsUpdate)) {
        return ERROR | @Trigger_Error(500);
    }
    #-------------------------------------------------------------------------------
} else {
    #-------------------------------------------------------------------------------
    $ServiceID = DB_Insert('Services', $IService);
    if (Is_Error($ServiceID)) {
        return ERROR | @Trigger_Error(500);
    }
    #-------------------------------------------------------------------------------
    $Answer['ServiceID'] = $ServiceID;
    #-------------------------------------------------------------------------------
}
#-------------------------------------------------------------------------------
#-------------------------------------------------------------------------------
$Upload = Upload_Get('Emblem');
#-------------------------------------------------------------------------------
switch (ValueOf($Upload)) {
    case 'error':
        return ERROR | @Trigger_Error(500);
    case 'exception':
 switch (ValueOf($IsPermission)) {
     case 'error':
         return ERROR | @Trigger_Error(500);
     case 'exception':
         return ERROR | @Trigger_Error(400);
     case 'false':
         return ERROR | @Trigger_Error(700);
     case 'true':
         #-----------------------------TRANSACTION-------------------------------
         if (Is_Error(DB_Transaction($TransactionID = UniqID('ContractEnclosureMake')))) {
             return ERROR | @Trigger_Error(500);
         }
         #-----------------------------------------------------------------------
         $IContractEnclosure = array('ContractID' => $Contract['ID'], 'TypeID' => $TypeID);
         #-----------------------------------------------------------------------
         $ContractEnclosureID = DB_Insert('ContractsEnclosures', $IContractEnclosure);
         if (Is_Error($ContractEnclosureID)) {
             return ERROR | @Trigger_Error(500);
         }
         #-----------------------------------------------------------------------
         $Comp = Comp_Load('Contracts/Enclosures/Build', $ContractEnclosureID);
         if (Is_Error($Comp)) {
             return ERROR | @Trigger_Error(500);
         }
         #-----------------------------------------------------------------------
         $Comp = Comp_Load('www/API/StatusSet', array('ModeID' => 'ContractsEnclosures', 'StatusID' => 'Waiting', 'RowsIDs' => $ContractEnclosureID));
         #-----------------------------------------------------------------------
         switch (ValueOf($Comp)) {
             case 'error':
                 return ERROR | @Trigger_Error(500);
             case 'exception':
             #-------------------------------------------------------------------------------
         }
         #-------------------------------------------------------------------------------
     }
     #-------------------------------------------------------------------------------
 } else {
     #-------------------------------------------------------------------------------
     # тарифа нет, если не разрешено автодобавление - топаем на след. круг цикла
     if (!$Settings['IsDomainSchemeCreate']) {
         continue;
     }
     #-------------------------------------------------------------------------------
     #-------------------------------------------------------------------------------
     $Scheme = array('CreateDate' => Time(), 'GroupID' => 1, 'UserID' => 1, 'Name' => $Key, 'IsProlong' => TRUE, 'IsTransfer' => TRUE, 'CostOrder' => $NewPriceReg, 'CostProlong' => $NewPriceProlong, 'CostTransfer' => $NewPriceTransfer, 'ServerID' => $Registrator['ID'], 'MinOrderYears' => $Prices[$Key]['min.period'], 'MaxActionYears' => $Prices[$Key]['max.period'], 'SortID' => 20000);
     #-------------------------------------------------------------------------------
     $IsInsert = DB_Insert('DomainSchemes', $Scheme);
     if (Is_Error($IsInsert)) {
         return ERROR | @Trigger_Error(500);
     }
     #-------------------------------------------------------------------------------
     $Message = SPrintF('Для регистратора %s добавлен новый тарифный план: %s', $Registrator['Params']['Name'], $Key);
     #-------------------------------------------------------------------------------
     Debug(SPrintF('[comp/Tasks/GC/DomainCheckPriceList]: %s', $Message));
     #-------------------------------------------------------------------------------
     if ($Settings['IsEvent']) {
         #-------------------------------------------------------------------------------
         $Event = array('Text' => $Message, 'PriorityID' => 'Notice', 'IsReaded' => FALSE);
         $Event = Comp_Load('Events/EventInsert', $Event);
         if (!$Event) {
             return ERROR | @Trigger_Error(500);
         }
Example #20
0
/**
 * Custom shutdown function.
 */
function __ShutDown_Function__()
{
    #-------------------------------------------------------------------------------
    // Catch Fatal Errors.
    $lastError = error_get_last();
    #-------------------------------------------------------------------------------
    if ($lastError != NULL) {
        #-------------------------------------------------------------------------------
        $Message = SPrintF('[%s]-%s в линии %s файла %s', $lastError['type'], $lastError['message'], $lastError['line'], $lastError['file']);
        #-------------------------------------------------------------------------------
        Debug(SPrintF('[!] %s', $Message));
        #-------------------------------------------------------------------------------
    }
    #-------------------------------------------------------------------------------
    # added by lissyara 2011-10-12 in 16:15 MSK, for JBS-173
    #Debug("[JBs core]:" . print_r($GLOBALS, true));
    list($Micro, $Seconds) = Explode(' ', MicroTime());
    #-------------------------------------------------------------------------------
    $WorkTimeTmp = (double) $Micro + (double) $Seconds - START_TIME;
    #-------------------------------------------------------------------------------
    $UserData = array('CreateDate' => Time(), 'UserID' => isset($GLOBALS['__USER']) ? $GLOBALS['__USER']['ID'] : 10, 'REMOTE_ADDR' => isset($GLOBALS['_SERVER']['REMOTE_ADDR']) ? $GLOBALS['_SERVER']['REMOTE_ADDR'] : '', 'REQUEST_URI' => isset($GLOBALS['_SERVER']['REQUEST_URI']) ? $GLOBALS['_SERVER']['REQUEST_URI'] : '', 'HTTP_REFERER' => isset($GLOBALS['_SERVER']['HTTP_REFERER']) ? $GLOBALS['_SERVER']['HTTP_REFERER'] : '', 'HTTP_USER_AGENT' => isset($GLOBALS['_SERVER']['HTTP_USER_AGENT']) ? $GLOBALS['_SERVER']['HTTP_USER_AGENT'] : '', 'WORK_TIME' => $WorkTimeTmp, 'TIME_MYSQL' => $GLOBALS['__TIME_MYSQL'], 'COUNTER_MYSQL' => $GLOBALS['__COUNTER_MYSQL'], 'COUNTER_COMPS' => $GLOBALS['__COUNTER_COMPS']);
    #-------------------------------------------------------------------------------
    if ($GLOBALS['_SERVER']['REQUEST_URI'] != '/API/Events') {
        #-------------------------------------------------------------------------------
        $IsInsert = DB_Insert('RequestLog', $UserData);
        if (Is_Error($IsInsert)) {
            return ERROR | @Trigger_Error(500);
        }
        #-------------------------------------------------------------------------------
    }
    #-------------------------------------------------------------------------------
    #-------------------------------------------------------------------------------
    list($Micro, $Seconds) = Explode(' ', MicroTime());
    #-------------------------------------------------------------------------------
    if (!Define('WORK_TIME', (double) $Micro + (double) $Seconds - START_TIME)) {
        exit('[JBs core]: не удалось определить константу (WORK_TIME)');
    }
    #-------------------------------------------------------------------------------
    Debug(SPrintF('[JBs core]: система работала: %s', WORK_TIME));
    #-------------------------------------------------------------------------------
    # added by lissyara, 2011-10-11 in 15:27 MSK
    Debug(SPrintF('[JBs core]: время работы MySQL: %s [%s%%]', $GLOBALS['__TIME_MYSQL'], Round($GLOBALS['__TIME_MYSQL'] / WORK_TIME * 100, 2)));
    #-------------------------------------------------------------------------------
    Debug(SPrintF('[JBs core]: запросов к MySQL: %u', $GLOBALS['__COUNTER_MYSQL']));
    #-------------------------------------------------------------------------------
    Debug(SPrintF('[JBs core]: загружено компонентов: %u', $GLOBALS['__COUNTER_COMPS']));
    #-------------------------------------------------------------------------------
    Debug('');
    Debug('');
    Debug('');
    Debug('');
    #-------------------------------------------------------------------------------
}
     case 'exception':
         # No more...
         break;
     case 'array':
         #-------------------------------------------------------------------------------
         $ITicketMessage['FileName'] = $Upload['Name'];
         #-------------------------------------------------------------------------------
         break;
         #-------------------------------------------------------------------------------
     #-------------------------------------------------------------------------------
     default:
         return ERROR | @Trigger_Error(101);
 }
 #-------------------------------------------------------------------------------
 #-------------------------------------------------------------------------------
 $MessageID = DB_Insert('EdesksMessages', $ITicketMessage);
 if (Is_Error($MessageID)) {
     return ERROR | @Trigger_Error(500);
 }
 #-------------------------------------------------------------------------------
 if (isset($ITicketMessage['FileName'])) {
     if (!SaveUploadedFile('EdesksMessages', $MessageID, $Upload['Data'])) {
         return new gException('CANNOT_SAVE_UPLOADED_FILE', 'Не удалось сохранить загруженный файл');
     }
 }
 #-------------------------------------------------------------------------------
 #-------------------------------------------------------------------------------
 if ($__USER['ID'] != (int) $Ticket['UserID']) {
     #-------------------------------------------------------------------------------
     $Count = DB_Count('EdesksMessages', array('Where' => SPrintF('`EdeskID` = %d AND `UserID` != %u', $Ticket['ID'], (int) $Ticket['UserID'])));
     if (Is_Error($Count)) {
Example #22
0
$UpTimes = DB_Select('ServersUpTime', array('ServerID', 'Service', 'TestDate', 'Day', 'Month', 'Year', 'AVG(`UpTime`) as `UpTime`', 'Count(`UpTime`) as `Count`'), array('GroupBy' => array('ServerID', 'Service', 'Day', 'Month', 'Year')));
#-------------------------------------------------------------------------------
switch (ValueOf($UpTimes)) {
    case 'error':
        return ERROR | @Trigger_Error(500);
    case 'exception':
        # No more..
        break;
    case 'array':
        #---------------------------------------------------------------------------
        foreach ($UpTimes as $UpTime) {
            #-------------------------------------------------------------------------
            $IsDelete = DB_Delete('ServersUpTime', array('Where' => SPrintF("`Day` = %u AND `Month` = %u AND `Year` = %u AND `ServerID` = %u AND `Service` = '%s'", $UpTime['Day'], $UpTime['Month'], $UpTime['Year'], $UpTime['ServerID'], $UpTime['Service'])));
            if (Is_Error($IsDelete)) {
                return ERROR | @Trigger_Error(500);
            }
            #-------------------------------------------------------------------------
            $IPage = array('ServerID' => $UpTime['ServerID'], 'Service' => $UpTime['Service'], 'TestDate' => $UpTime['TestDate'], 'Day' => $UpTime['Day'], 'Month' => $UpTime['Month'], 'Year' => $UpTime['Year'], 'UpTime' => $UpTime['UpTime'], 'Count' => $UpTime['Count']);
            #-----------------------------------------------------------------------
            $IsInsert = DB_Insert('ServersUpTime', $IPage);
            if (Is_Error($IsInsert)) {
                return ERROR | @Trigger_Error(500);
            }
        }
        break;
    default:
        return ERROR | @Trigger_Error(500);
}
#-------------------------------------------------------------------------------
return TRUE;
#-------------------------------------------------------------------------------
Example #23
0
         return ERROR | @Trigger_Error(500);
     case 'exception':
         continue 2;
     case 'array':
         # No more...
         break;
     default:
         return ERROR | @Trigger_Error(101);
 }
 #-------------------------------------------------------------------------------
 #-------------------------------------------------------------------------------
 foreach ($HostingServers as $HostingServer) {
     #-------------------------------------------------------------------------------
     $Server = array('TemplateID' => 'Hosting', 'ServersGroupID' => $ServersGroupID, 'IsActive' => TRUE, 'IsDefault' => $HostingServer['IsDefault'], 'Protocol' => $HostingServer['Protocol'], 'Address' => $HostingServer['Address'], 'Port' => $HostingServer['Port'], 'Login' => $HostingServer['Login'], 'Password' => $HostingServer['Password'], 'Params' => array('SystemID' => $HostingServer['SystemID'], 'IP' => $HostingServer['IP'], 'BalancingFactor' => $HostingServer['BalancingFactor'], 'IsAutoBalancing' => $HostingServer['IsAutoBalancing'], 'Domain' => $HostingServer['Domain'], 'Prefix' => $HostingServer['Prefix'], 'Theme' => $HostingServer['Theme'], 'Language' => $HostingServer['Language'], 'Url' => $HostingServer['Url'], 'Ns1Name' => $HostingServer['Ns1Name'], 'Ns2Name' => $HostingServer['Ns2Name'], 'Ns3Name' => $HostingServer['Ns3Name'], 'Ns4Name' => $HostingServer['Ns4Name'], 'IPsPool' => $HostingServer['IPsPool'], 'MySQL' => $HostingServer['MySQL']), 'AdminNotice' => $HostingServer['Notice'], 'SortID' => 10000, 'IsOK' => $HostingServer['IsOK'], 'Monitoring' => $HostingServer['Services']);
     #-------------------------------------------------------------------------------
     $ServerID = DB_Insert('Servers', $Server);
     if (Is_Error($ServerID)) {
         return ERROR | @Trigger_Error(500);
     }
     #-------------------------------------------------------------------------------
     #-------------------------------------------------------------------------------
     # соответствие старых идентификаторов новым
     $HS[$HostingServer['ID']] = $ServerID;
     #-------------------------------------------------------------------------------
     #-------------------------------------------------------------------------------
     $Orders = DB_Select('HostingOrders', array('ID', 'OrderID'), array('Where' => SPrintF('`ServerID` = %u', $HostingServer['ID'])));
     #-------------------------------------------------------------------------------
     switch (ValueOf($Orders)) {
         case 'error':
             return ERROR | @Trigger_Error(500);
         case 'exception':
#-------------------------------------------------------------------------------
#-------------------------------TRANSACTION-------------------------------------
if (Is_Error(DB_Transaction($TransactionID = UniqID('PromoCodesExtinguished')))) {
    return ERROR | @Trigger_Error(500);
}
#-------------------------------------------------------------------------------
#-------------------------------------------------------------------------------
# фтыкаем в таблицу погашеных промокодов
$IsInsert = DB_Insert('PromoCodesExtinguished', $ICode);
if (Is_Error($IsInsert)) {
    return ERROR | @Trigger_Error(500);
}
#-------------------------------------------------------------------------------
#-------------------------------------------------------------------------------
# втыкаем бонусы в таблицу бонусов
$IsInsert = DB_Insert('Bonuses', $IBonus);
if (Is_Error($IsInsert)) {
    return ERROR | @Trigger_Error(500);
}
#-------------------------------------------------------------------------------
#-------------------------------------------------------------------------------
# Проверяем, не надо ли сделать юзера рефералом
if ($PromoCode['OwnerID'] > 2000) {
    $User = DB_Select('Users', '*', array('UNIQ', 'ID' => $GLOBALS['__USER']['ID']));
    #-------------------------------------------------------------------------------
    switch (ValueOf($User)) {
        case 'error':
            return ERROR | @Trigger_Error(500);
        case 'exception':
            return ERROR | @Trigger_Error(400);
        case 'array':
Example #25
0
     $IBasket = array('OrderID' => $VPSOrder['OrderID'], 'Comment' => SPrintF('Тариф: %s, с %s по %s', $VPSScheme['Name'], $sDate, $tDate), 'Amount' => $DaysPay, 'Summ' => $CostPay);
     #-----------------------------------------------------------------
     $Count = DB_Count('Basket', array('Where' => SPrintF('`OrderID` = %u', $VPSOrder['OrderID'])));
     if (Is_Error($Count)) {
         return ERROR | @Trigger_Error(500);
     }
     #-----------------------------------------------------------------
     if ($Count) {
         #---------------------------------------------------------------
         $IsInsert = DB_Update('Basket', $IBasket, array('Where' => SPrintF('`OrderID` = %u', $VPSOrder['OrderID'])));
         if (Is_Error($IsInsert)) {
             return ERROR | @Trigger_Error(500);
         }
     } else {
         #---------------------------------------------------------------
         $IsInsert = DB_Insert('Basket', $IBasket);
         if (Is_Error($IsInsert)) {
             return ERROR | @Trigger_Error(500);
         }
     }
     #-----------------------------------------------------------------
     $Comp = Comp_Load('Basket/Update', $VPSOrder['UserID'], $VPSOrder['OrderID']);
     if (Is_Error($Comp)) {
         return ERROR | @Trigger_Error(500);
     }
     #-----------------------------------------------------------------
     return array('Status' => 'UseBasket');
 } else {
     #-----------------------------------------------------------------
     $Comp = Comp_Load('Formats/Order/Number', $VPSOrder['OrderID']);
     if (Is_Error($Comp)) {
}
#-------------------------------------------------------------------------------
#-------------------------------------------------------------------------------
$Answer = array('Status' => 'Ok');
#-------------------------------------------------------------------------------
#-------------------------------------------------------------------------------
if ($CollationID) {
    #-------------------------------------------------------------------------------
    $IsUpdate = DB_Update('PaymentSystemsCollation', $UCollation, array('ID' => $CollationID));
    if (Is_Error($IsUpdate)) {
        return ERROR | @Trigger_Error(500);
    }
    #-------------------------------------------------------------------------------
} else {
    #-------------------------------------------------------------------------------
    $CollationID = DB_Insert('PaymentSystemsCollation', $UCollation);
    if (Is_Error($CollationID)) {
        return ERROR | @Trigger_Error(500);
    }
    #-------------------------------------------------------------------------------
    $Answer['CollationID'] = $CollationID;
    #-------------------------------------------------------------------------------
}
#-------------------------------------------------------------------------------
#-------------------------------------------------------------------------------
if (Is_Error(DB_Commit($TransactionID))) {
    return ERROR | @Trigger_Error(500);
}
#-------------------------------------------------------------------------------
#-------------------------------------------------------------------------------
if ($Window) {
Example #27
0
                 if (!isset($pAttribs[$AttribID])) {
                     $pAttribs[$AttribID] = $tAttribs[$AttribID]['Value'];
                 }
             }
             #---------------------------------------------------------------------
             $Replace = Array_ToLine($pAttribs, '%');
             #---------------------------------------------------------------------
             $ProfileName = $Template['ProfileName'];
             #---------------------------------------------------------------------
             foreach (Array_Keys($Replace) as $Key) {
                 $ProfileName = Str_Replace($Key, $Replace[$Key], $ProfileName);
             }
             #---------------------------------------------------------------------
             $IProfile = array('CreateDate' => GetTime($Profile['CreateDate']), 'UserID' => $UserID, 'TemplateID' => $Profile['TemplateID'], 'Name' => $ProfileName, 'Attribs' => $pAttribs, 'StatusID' => 'Checked', 'StatusDate' => GetTime($Profile['CreateDate']));
             #---------------------------------------------------------------------
             $ProfileID = DB_Insert('Profiles', $IProfile);
             if (Is_Error($ProfileID)) {
                 return ERROR | @Trigger_Error(500);
             }
         }
     }
     #-------------------------------------------------------------------------
     if (Is_Error(DB_Commit($TransactionID))) {
         return ERROR | @Trigger_Error(500);
     }
     #-------------------------------------------------------------------------
     echo "Успешно импортирован\n";
     break;
 case 'array':
     echo "Уже существует\n";
     continue 2;
     #-------------------------------------------------------------------------------
 #-------------------------------------------------------------------------------
 case 'exception':
     #-------------------------------------------------------------------------------
     # нет такой лицензии в нашем биллинге
     Debug(SPrintF('[comp/Tasks/ISPswCheckLicenses]: not found license #%s', $License['id']));
     #-------------------------------------------------------------------------------
     $Event = array('UserID' => 100, 'PriorityID' => 'Error', 'Text' => SPrintF('Найдена неучтённая лицензия ISPsystem #%u, продукт (%s), период (%s), IP (%s)', $License['id'], $License['pricelist_id'], $License['period'], $License['ip']), 'IsReaded' => FALSE);
     $Event = Comp_Load('Events/EventInsert', $Event);
     if (!$Event) {
         return ERROR | @Trigger_Error(500);
     }
     #---------------------------------------------------------------
     #-------------------------------------------------------------------------------
     # вносим лицензию в БД
     $IsInsert = DB_Insert('ISPswLicenses', array('pricelist_id' => $License['pricelist_id'], 'period' => $License['period'], 'addon' => $addon, 'IP' => $License['ip'], 'remoteip' => isset($License['remoteip']) ? $License['remoteip'] : '', 'elid' => $License['id'], 'LicKey' => $License['lickey'], 'IsInternal' => 'no', 'IsUsed' => 'no', 'ISPname' => isset($License['licname']) ? $License['licname'] : 'Имя не задано', 'StatusID' => $StatusID, 'CreateDate' => Time(), 'ip_change_date' => StrToTime($License['ip_change_date']), 'lickey_change_date' => StrToTime($License['lickey_change_date']), 'StatusDate' => Time(), 'ExpireDate' => $ExpireDate, 'Flag' => 'Locked'));
     if (Is_Error($IsInsert)) {
         return ERROR | @Trigger_Error(500);
     }
     #-------------------------------------------------------------------------------
     break;
     #-------------------------------------------------------------------------------
 #-------------------------------------------------------------------------------
 case 'array':
     #-------------------------------------------------------------------------------
     # лицензия в биллинге есть
     Debug(SPrintF('[comp/Tasks/ISPswCheckLicenses]: found license #%u', $License['id']));
     #-------------------------------------------------------------------------------
     if (StrLen($License['lickey']) < 2 && $License['pricelist_id'] > 1000) {
         #-------------------------------------------------------------------------------
         # у лицензии нет ключа. Вешаем ахтунг...
Example #29
0
     $After = $Contract['Balance'] - $Invoice['Summ'];
     #-------------------------------------------------------------------------------
     $IsUpdate = DB_Update('Contracts', array('Balance' => $After), array('ID' => $Invoice['ContractID']));
     if (Is_Error($IsUpdate)) {
         return ERROR | @Trigger_Error(500);
     }
     #-------------------------------------------------------------------------------
     # заносим запись в историю операций с контрактами
     $Number = Comp_Load('Formats/Invoice/Number', $Invoice['ID']);
     if (Is_Error($Number)) {
         return ERROR | @Trigger_Error(500);
     }
     #-------------------------------------------------------------------------------
     $IPosting = array('ContractID' => $Invoice['ContractID'], 'ServiceID' => 2000, 'Comment' => SPrintF('Возврат средств зачисленных по счёту #%u (транзакция отменена)', $Number), 'Before' => $Contract['Balance'], 'After' => $After);
     #-------------------------------------------------------------------------------
     $PostingID = DB_Insert('Postings', $IPosting);
     if (Is_Error($PostingID)) {
         return ERROR | @Trigger_Error(500);
     }
     #-------------------------------------------------------------------------------
     $Event = array('UserID' => $Invoice['UserID'], 'PriorityID' => 'Billing', 'IsReaded' => FALSE, 'Text' => SPrintF('Осуществлён автоматический возврат средств по счёту #%u, процессинговый центр прислал статус "%s"', $Number, $Args['Status']));
     $Event = Comp_Load('Events/EventInsert', $Event);
     if (!$Event) {
         return ERROR | @Trigger_Error(500);
     }
     #-------------------------------------------------------------------------------
     break;
     #-------------------------------------------------------------------------------
 #-------------------------------------------------------------------------------
 default:
     #-------------------------------------------------------------------------------
Example #30
0
        #-------------------------------------------------------------------------------
        foreach (Array_Keys($Wheres) as $Key) {
            #-------------------------------------------------------------------------------
            $Where = $Wheres[$Key];
            #-------------------------------------------------------------------------------
            $Where[] = SPrintF('`SchemeID` = %u', $Scheme['ID']);
            #-------------------------------------------------------------------------------
            $Count = DB_Count(SPrintF('%sOrdersOwners', $Service['Code']), array('Where' => $Where));
            if (Is_Error($Count)) {
                return ERROR | @Trigger_Error(500);
            }
            #-------------------------------------------------------------------------------
            $Statistics[$Key] = $Count;
            #-------------------------------------------------------------------------------
        }
        #-------------------------------------------------------------------------------
        $IsInsert = DB_Insert('Statistics', $Statistics);
        if (Is_Error($IsInsert)) {
            return ERROR | @Trigger_Error(500);
        }
        #-------------------------------------------------------------------------------
    }
    #-------------------------------------------------------------------------------
}
#-------------------------------------------------------------------------------
# TODO услуги настроенные вручную - тоже надо
#-------------------------------------------------------------------------------
#-------------------------------------------------------------------------------
return TRUE;
#-------------------------------------------------------------------------------
#-------------------------------------------------------------------------------