/** * Отправляет уведомление автору проекта о новом отклике. * * @param string|array $ids идентификаторы ответов к проекту * @param resource $connect соединение к БД (необходимо в PgQ) или NULL -- создать новое. * @return integer количество отправленных уведомлений. */ function NewPrjOffer($ids, $connect = NULL) { require_once $_SERVER['DOCUMENT_ROOT'] . '/classes/projects_offers.php'; $offers = new projects_offers(); if (!($ofs = $offers->getNewProjectOffers($ids, $connect))) { return NULL; } //$this->subject = "Фрилансер ответил на проект"; foreach ($ofs as $offer) { $offer['project_name'] = html_entity_decode($offer['project_name'], ENT_QUOTES); if ($offer['kind'] == 7 or $offer['kind'] == 2) { if (!$offer['to_email'] || substr($offer['to_subscr'], 8, 1) != '1') { continue; } // если не нужны уведомления пропускаем отсылку $this->subject = "Новая работа добавлена в конкурс «{$offer['project_name']}»"; $this->recipient = " {$offer['to_uname']} {$offer['to_usurname']} [{$offer['to_login']}] <" . $offer['to_email'] . ">"; $userlink = $GLOBALS["host"] . "/users/" . $offer['from_login']; $this->message = $this->GetHtml($offer['to_uname'], "\n \t\t <a href=\"{$userlink}\">{$offer['from_uname']} {$offer['from_usurname']}<a/> [<a href=\"{$userlink}\">{$offer['from_login']}</a>] добавил(a) новую работу\n \t\t\tв конкурс «<a href=\"{$GLOBALS['host']}" . getFriendlyURL("project", $offer['project_id']) . "?offer={$offer['id']}{$this->_addUrlParams('e', '&')}\">" . $offer['project_name'] . "</a>».\n \t\t\t<br />", array('header' => 'default', 'footer' => 'default'), array('login' => $offer['to_login'])); $this->SmtpMail('text/html'); //++$count; } else { $_blocked_txt = ''; //Если это перенесенная вакансия и она не оплачена //то скрываем уведомление об ответе if ($offer['kind'] == 4 && $offer['state'] == 1 && $offer['payed'] == 0) { $url_vacancy = sprintf('%s/public/?step=1&kind=4&public=%s&popup=1', $GLOBALS['host'], $offer['project_id']); $_blocked_txt = ' Фрилансер ответил на опубликованный вами проект «<a href="' . $GLOBALS['host'] . getFriendlyURL("project", $offer['project_id']) . $this->_addUrlParams('e') . '">' . $offer['project_name'] . '</a>». <br/> <br/> ------------ <br/> Текст ответа временно скрыт. <br/> ------------ <br/> <br/> Для того, чтобы видеть ответы фрилансеров и иметь возможность выбрать исполнителя, пожалуйста, перейдите в вакансию и оплатите ее размещение. <br/> <br/> <a href="' . $url_vacancy . '">Оплатить размещение вакансии</a> '; } $userlink = $GLOBALS["host"] . "/users/" . $offer['from_login']; if (!$offer['to_email'] || substr($offer['to_subscr'], 1, 1) != '1') { continue; } // если не нужны уведомления пропускаем отсылку $this->subject = "Фрилансер ответил на проект «" . html_entity_decode($offer['project_name'], ENT_QUOTES) . "»"; $body = empty($_blocked_txt) ? "Фрилансер <a href=\"{$userlink}\">{$offer['from_uname']}</a> <a href=\"{$userlink}\">{$offer['from_usurname']}</a> [<a href=\"{$userlink}\">{$offer['from_login']}</a>] " . "<a href=\"{$GLOBALS['host']}" . getFriendlyURL("project", $offer['project_id']) . $this->_addUrlParams('e') . "#freelancer_" . $offer['user_id'] . "\">" . "ответил</a> на опубликованный вами проект\n «<a href=\"{$GLOBALS['host']}" . getFriendlyURL("project", $offer['project_id']) . $this->_addUrlParams('e') . "\">" . $offer['project_name'] . "</a>».\n <br/>\n <br/>\n ------------\n <br/>\n " . html_entity_decode(strip_tags(input_ref(LenghtFormatEx($offer['description'], 300), 1)), ENT_COMPAT, "CP1251") . "\n <br/>\n ------------" : $_blocked_txt; $this->recipient = "{$offer['to_uname']} {$offer['to_usurname']} [{$offer['to_login']}] <{$offer['to_email']}>"; $this->message = $this->GetHtml($offer['to_uname'], $body, array('header' => 'default', 'footer' => 'sub_emp_projects'), array('login' => $offer['to_login'])); $this->SmtpMail('text/html'); //++$count; } } return $this->sended; }