本文整理汇总了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;
}
//.........这里部分代码省略.........