<?php defined('BASEPATH') OR exit('No direct script access allowed'); use Coduo\PHPHumanizer\DateTimeHumanizer; class GeneralModel extends CI_Model { function __construct() { parent::__construct(); $this->load->model('BlogModel', '', TRUE); $this->load->model('NotificationModel', '', TRUE); } function getBlogPosts($count) { $posts = $this->BlogModel->getMostRecentPosts($count); $return = ''; foreach ($posts as $result) { $date = strtotime($result['postPublishDate']); $return .= '<div class="media">'; if ($result['postImage'] != '') { $return .= '<img src="' . $result['postImage'] . '?w=100" style="width:75px" class="img-fluid mr-3">'; } $return .= '<div class="media-body"> <h6 class="my-0"><a href="#">' . $result['postTitle'] . '</a></h6> <small class="text-white-50">' . lang('footer_published') . ' ' . DateTimeHumanizer::difference(new \DateTime(), new \DateTime("@$date"), $_SESSION['site_lang']) . '</small> </div> </div>'; } return $return; } function addFeedbackAnonymously($pageUrl, $message) { $this->addFeedback($pageUrl, $message, true, NULL, NULL); } function addFeedback($pageUrl, $message, $anonymous, $userID, $email) { $this->db->query('INSERT INTO feedback (page, message, anonymous, userID, email) VALUES (?, ?, ?, ?, ?)', [$pageUrl, $message, $anonymous, $userID, $email]); $this->db->cache_delete('admin', 'feedback'); // Send notifications $this->NotificationModel->rankNotificationNewFeedback($userID != NULL ? $userID : -1, 9, $pageUrl); } function getRankName($rankID) { $ranks = [ 0 => "Nutzer", 1 => "Registrierter Nutzer", 2 => "Premium-Nutzer", 3 => "Plus-Nutzer", 6 => "Autor (Blog)", 7 => "Editor (Blog)", 8 => "Moderator", 9 => "Admin", 10 => "Admin" ]; return isset($ranks[$rankID]) ? $ranks[$rankID] : "Nutzer"; } }