本文整理匯總了PHP中freelancer::GetMissingMoreThan24h方法的典型用法代碼示例。如果您正苦於以下問題:PHP freelancer::GetMissingMoreThan24h方法的具體用法?PHP freelancer::GetMissingMoreThan24h怎麽用?PHP freelancer::GetMissingMoreThan24h使用的例子?那麽, 這裏精選的方法代碼示例或許可以為您提供幫助。您也可以進一步了解該方法所在類freelancer
的用法示例。
在下文中一共展示了freelancer::GetMissingMoreThan24h方法的1個代碼示例,這些例子默認根據受歡迎程度排序。您可以為喜歡或者感覺有用的代碼點讚,您的評價將有助於係統推薦出更棒的PHP代碼示例。
示例1: NewProjForMissingMoreThan24h
/**
* Рассылка о новых проектах лицам, отсутствовавшим на сайте более суток и менее года. Вызывается раз в день из hourly.php.
*
* @param array &$uids - массив идентификаторов пользователей, подписанных на новые проекты но которым отправлено это уведомление
* необходимо передать в smail::NewProj
*
* @return int количество получивших рассылку
*/
public function NewProjForMissingMoreThan24h(&$uids)
{
$projects = projects::GetNewProjectsWithBudjet($error);
//сортировка по стоимости
foreach ($projects as $key => $prj) {
$prj['sort_cost'] = $prj['cost'];
if ($prj['currency'] == 0) {
$prj['sort_cost'] *= 30;
//в данном случае точный курс не важен, важно отсортировать
}
if ($prj['currency'] == 1) {
$prj['sort_cost'] *= 40;
//в данном случае точный курс не важен, важно отсортировать
}
$projects[$key] = $prj;
}
$all_mirrored_specs = professions::GetAllMirroredProfsId();
$professions = professions::GetProfessionsAndGroup();
$professionsTree = array();
foreach ($professions as $k => $i) {
if ($professionsTree[$i['gid']] === null) {
$professionsTree[$i['gid']] = array('gid' => $i['gname']);
if ($i['id'] !== null) {
$professionsTree[$i['gid']][$i['id']] = $i['name'];
} else {
$professionsTree[$i['gid']] = $i['gname'];
}
} elseif (is_array($professionsTree[$i['gid']])) {
$professionsTree[$i['gid']][$i['id']] = $i['name'];
}
}
$page = 0;
$count = 0;
// total
$countBs = 0;
// БС
$countCar = 0;
// карусель
$countPro = 0;
// ПРО
$countPayed = 0;
// платные места
$countVerify = 0;
// верификация
$this->subject = 'Новые проекты и конкурсы на FL.ru';
$pHost = $GLOBALS['host'];
ob_start();
include $_SERVER['DOCUMENT_ROOT'] . '/masssending/tpl.missing_more_than_24h.php';
$this->message = ob_get_clean();
$this->recipient = '';
$massId = $this->masssend();
$dbStat = new DB('master');
while ($users = freelancer::GetMissingMoreThan24h($error, ++$page, 100)) {
$this->recipient = array();
foreach ($users as $user) {
if (!$user['unsubscribe_key']) {
$user['unsubscribe_key'] = users::GetUnsubscribeKey($user['login']);
}
$unsubscribe_link = "{$pHost}/unsubscribe?ukey=" . $user['unsubscribe_key'];
$advert_template = $this->getAdvertTemplate($user, $n);
//номер рекламного блока 0 - БС, 1 - карусель, 2 - ПРО, 3 - платные места, 4 - верификация
switch ($n) {
case 0:
$countBs++;
break;
case 1:
$countCar++;
break;
case 2:
$countPro++;
break;
case 3:
$countPayed++;
break;
case 4:
$countVerify++;
break;
}
$pList = $this->getProjectsForUser($projects, $user, $all_mirrored_specs, $professionsTree);
$length = count($pList);
if ($length == 0) {
continue;
}
for ($i = 0; $i < count($pList); ++$i) {
for ($j = $i; $j < count($pList); ++$j) {
$a = $pList[$i];
$b = $pList[$j];
if ($b['sort_cost'] > $a['sort_cost']) {
$buf = $pList[$i];
$pList[$i] = $pList[$j];
$pList[$j] = $buf;
}
//.........這裏部分代碼省略.........