| Current Path : /var/www/html/learn/common/components/ |
| Current File : /var/www/html/learn/common/components/Notification.php |
<?php
namespace common\components;
use Yii;
use yii\base\Component;
use yii\helpers\Url;
use backend\modules\notification\models\NotificationTemplate;
use backend\modules\notification\models\NotificationLog;
use backend\modules\notification\models\NotificationEmailLog;
use backend\modules\courseDocument\models\CourseDocument;
class Notification {
public static function insertnotificationlog($noti_code = '', $noti_receiver_id = '', $noti_sender_id = '', $noti_url = '', $email_code = '', $created_by = '', $user_type = '', $data_id = '') {
$noti_title = '';
$noti_content = '';
if (($modelTemplateNoti = NotificationTemplate::findOne(['code' => $noti_code])) !== null) {
$noti_title = $modelTemplateNoti->name;
$noti_content = eval("?>" . $modelTemplateNoti->content . "<?");
}
if (!empty($noti_content)) {
$modelNoti = new NotificationLog();
$modelNoti->noti_receiver_id = $noti_receiver_id;
$modelNoti->noti_sender_id = $noti_sender_id;
$modelNoti->noti_title = $noti_title;
$modelNoti->noti_content = $noti_content;
$modelNoti->noti_url = $noti_url;
$modelNoti->noti_read_status = 0;
$modelNoti->created_at = date("Y-m-d H:i:s");
$modelNoti->created_by = $created_by;
$modelNoti->created_user_type = $user_type;
$modelNoti->updated_at = date("Y-m-d H:i:s");
$modelNoti->updated_by = $created_by;
$modelNoti->updated_user_type = $user_type;
if ($modelNoti->save(false)) {
$noti_id = $modelNoti->noti_id;
$email_subject = '';
$email_content = '';
if (($model = NotificationTemplate::findOne(['code' => $email_code])) !== null) {
$email_subject = $model->name;
$email_content = eval("?>" . $model->content . "<?");
}
if (!empty($email_content)) {
$modelEmail = new NotificationEmailLog();
$modelEmail->email_address = \backend\modules\fruserdynav2\models\FrontendUser::getemail($noti_receiver_id);
$modelEmail->email_subject = $email_subject;
$modelEmail->email_content = $email_content;
$modelEmail->email_send_status = 0;
$modelEmail->created_at = date("Y-m-d H:i:s");
$modelEmail->created_by = $created_by;
$modelEmail->created_user_type = $user_type;
$modelEmail->updated_at = date("Y-m-d H:i:s");
$modelEmail->updated_by = $created_by;
$modelEmail->updated_user_type = $user_type;
$modelEmail->save(false);
}
}
}
}
public static function insertemaillog($email_code = '', $created_by = '', $user_type = '', $email_address = '', $data_id = '', $email_type = 'notification') {
if (($model = NotificationTemplate::findOne(['code' => $email_code])) !== null) {
$email_subject = $model->name;
$email_content = eval("?>" . $model->content . "<?");
if (!empty($email_content)) {
$modelEmail = new NotificationEmailLog();
$modelEmail->email_address = $email_address;
$modelEmail->email_subject = $email_subject;
$modelEmail->email_content = $email_content;
$modelEmail->email_type = $email_type;
$modelEmail->email_send_status = 0;
$modelEmail->created_at = date("Y-m-d H:i:s");
$modelEmail->created_by = $created_by;
$modelEmail->created_user_type = $user_type;
$modelEmail->updated_at = date("Y-m-d H:i:s");
$modelEmail->updated_by = $created_by;
$modelEmail->updated_user_type = $user_type;
$modelEmail->save(false);
}
}
}
public static function generatedoc($doc_code = '', $created_by = '', $user_type = '', $doc_user_id = '', $doc_participation_id = '', $data_id = '', $certificate_code = '') {
if (($modelTemplate = NotificationTemplate::findOne(['code' => $doc_code])) !== null) {
$doc_title = $modelTemplate->name;
$doc_content = eval("?>" . $modelTemplate->content . "<?");
$modelDoc = new CourseDocument();
$modelDoc->doc_code = $doc_code;
$modelDoc->doc_title = $doc_title;
$modelDoc->doc_content = $doc_content;
$modelDoc->doc_user_id = $doc_user_id;
$modelDoc->doc_participation_id = $doc_participation_id;
$modelDoc->created_at = date("Y-m-d H:i:s");
$modelDoc->created_by = $created_by;
$modelDoc->created_user_type = $user_type;
$modelDoc->updated_at = date("Y-m-d H:i:s");
$modelDoc->updated_by = $created_by;
$modelDoc->updated_user_type = $user_type;
$modelDoc->save(false);
}
}
}