Exemplo n.º 1
0
 public function _index()
 {
     // Deny access if not logged in
     new Protect('ajax');
     $post = Input::post();
     $token = Token::ajaxCheck($post['token']);
     $data['success'] = FALSE;
     $data['errors'] = NULL;
     if (!empty($post['username'] && $token === TRUE)) {
         $msgs = Message::getMessages($post['username']);
         $data['success'] = TRUE;
         foreach ($msgs as $key => $value) {
             $msgs[$key]['time'] = date("d-M h:i A", $value['time']);
         }
         $data['msgs'] = $msgs;
         Message::read(User::getPublicUserId($post['username']));
         //TODO: Replace with function
         DB::updateIf('msg_notif', array('status' => 1), array('user_id' => User::getPublicUserId($post['username']), 'to_id' => Session::get('user_id')));
     } else {
         if (!$token) {
             $data['errors'][] = 'Security Token Missing';
         } else {
             $data['errors'][] = 'Username Required';
         }
     }
     if (!empty($data)) {
         return $data;
     } else {
         return FALSE;
     }
 }
Exemplo n.º 2
0
 public function sendSysMessageAction()
 {
     if ($this->request->isPost() == true) {
         $ans = [];
         $acceptIds = $this->request->getPost("auth-group");
         $messageContent = $this->request->getPost("data");
         $messageTilte = $this->request->getPost("title");
         $messageType = 1;
         //系统消息
         $successCount = 0;
         $curUserId = $this->session->get('userId');
         if ($curUserId != null) {
             foreach ($acceptIds as $userId) {
                 $existUser = User::find(array("conditions" => "id=?1", "bind" => array(1 => $userId)));
                 if (count($existUser) == 0) {
                     $ans['error'] = 701;
                 } else {
                     $InsertMessage = new Message();
                     $InsertMessage->to_id = $userId;
                     $InsertMessage->from_id = $curUserId;
                     $InsertMessage->type = $messageType;
                     $InsertMessage->data = $messageContent;
                     if ($InsertMessage->save == true) {
                         $successCount++;
                     } else {
                         foreach ($InsertMessage->getMessages() as $message) {
                             throw new BaseException($message, 100);
                         }
                     }
                 }
             }
             if ($successCount == count($acceptIds)) {
                 $ans['ret'] = -1;
             } else {
                 $ans['ret'] = $successCount;
             }
         } else {
             $ans['error'] = 103;
             $ans['ret'] = 0;
         }
         echo json_encode($ans);
     }
 }
Exemplo n.º 3
0
 public function __construct($url)
 {
     $user_data = User::getUserData(['username', 'first_name', 'last_name', 'user_id', 'email', 'profile_pic'])[0];
     $this->data['first_name'] = ucwords($user_data['first_name']);
     $this->data['last_name'] = ucwords($user_data['last_name']);
     $this->data['side_active']['messages'] = ' active';
     $this->data['profile_pic'] = User::getProfilePic($user_data['profile_pic']);
     require_once 'include/header.php';
     $this->data['title'] = 'Messages - Ncube';
     $this->data['token'] = Token::generate();
     $this->data['active_username'] = $url[0];
     $this->data['list_data'] = User::getAcceptedUsersData();
     if (!empty($url[0])) {
         $data = Message::getMessages($url[0]);
         foreach ($data as $key => $value) {
             $data[$key]['time'] = date("h:i A", $value['time']);
         }
         $this->data['msgs'] = $data;
     }
     $this->data['recipient'] = $url[0];
 }
        extract($data);
    }
    include $file;
}
// Load todo class
$todo = new Todo();
// Add todo
if (isset($_POST['addTodo'])) {
    if ($_POST['description'] !== '') {
        $description = $_POST['description'];
        $todo->add($description);
    } else {
        Message::setMessage('Ahh, damn. Lege todos zijn niet toegestaan...', 'error');
    }
}
// Check activation
if (isset($_POST['toggleTodo'])) {
    $id = $_POST['toggleTodo'];
    $todo->toggle($id);
}
// Delete todo
if (isset($_POST['deleteTodo'])) {
    $id = $_POST['deleteTodo'];
    $todo->delete($id);
}
// Load todos
$todoItems = $todo->getActiveItems(false);
$doneItems = $todo->getActiveItems(true);
view('header.view.php', array('title' => 'Todo App', 'messages' => Message::getMessages()));
view('body.view.php', array('todoItems' => $todoItems, 'doneItems' => $doneItems));
view('footer.view.php');
Exemplo n.º 5
0
 public function addAction()
 {
     $this->view->disable();
     function valid_form_offer()
     {
         $sub_mess = '';
         //if ($this->security->checkToken()) {}
         if (isset($_POST['text_answer']) && strlen($_POST['text_answer']) < 2) {
             $sub_mess['text_offer'] = 'Введите текст сообщения';
         }
         if (is_array($sub_mess)) {
             echo json_encode($sub_mess);
             return false;
         } else {
             return true;
         }
     }
     if (valid_form_offer()) {
         $dialog_id = $this->request->getPost('dialog');
         $text_answer = $this->request->getPost('text_answer');
         $user_id = $this->session->get('user_id');
         // Если НЕТ: создать диалог -> связь -> сообщение привязанное к диалогу
         // Если ЕСТЬ: создать сообщение привязанное к диалогу
         $dialog = Dialogs::findFirst($dialog_id);
         if (isset($dialog->id)) {
             $message = new Message();
             $message->dialogs_id = $dialog_id;
             $message->text = $text_answer;
             $message->creation_date = date("Y-m-d-H-i-s");
             $message->author_id = $user_id;
             $message->save();
             if ($message->save() == false) {
                 foreach ($message->getMessages() as $message) {
                     echo $message;
                     exit;
                 }
             }
         } else {
             $dialog = new Dialogs();
             $dialog->creation_date;
             $dialog->save();
             if ($dialog->save() == false) {
                 foreach ($dialog->getMessages() as $message) {
                     echo $message;
                     exit;
                 }
             }
             $dialogsHasUser = new DialogsHasUser();
             $dialogsHasUser->dialogs_id = $dialog->id;
             $dialogsHasUser->user_id = $user_id;
             $dialogsHasUser->save();
             if ($dialogsHasUser->save() == false) {
                 foreach ($dialogsHasUser->getMessages() as $message) {
                     echo $message;
                     exit;
                 }
             }
             $message = new Message();
             $message->dialogs_id = $dialog_id;
             $message->text = $text_answer;
             $message->creation_date = date("Y-m-d-H-i-s");
             $message->author_id = $user_id;
             $message->save();
             if ($message->save() == false) {
                 foreach ($message->getMessages() as $message) {
                     echo $message;
                     exit;
                 }
             }
         }
         echo '1';
     }
 }
Exemplo n.º 6
0
 public static function getMainBoardMessages($n, $lid = false, $get_tnews = true, $get_summaries = true)
 {
     global $settings;
     $board = array();
     // First we add all commissioner messages to the board structure.
     foreach (Message::getMessages($n, $lid) as $m) {
         $o = (object) array();
         // Specific fields:
         $o->msg_id = $m->msg_id;
         $o->author_id = $m->f_coach_id;
         // General fields:
         $o->cssidx = T_HTMLBOX_ADMIN;
         // CSS box index
         $o->type = T_TEXT_MSG;
         $o->author = get_alt_col('coaches', 'coach_id', $m->f_coach_id, 'name');
         $o->title = $m->title;
         $o->message = $m->message;
         $o->date = $m->date_posted;
         $o->pinned = $m->pinned;
         array_push($board, $o);
     }
     // Now we add all game summaries.
     if ($get_summaries) {
         foreach (MatchSummary::getSummaries($n, $lid) as $r) {
             $o = (object) array();
             $m = new Match($r->match_id);
             // Specific fields:
             $o->date_mod = $m->date_modified;
             $o->match_id = $m->match_id;
             // General fields:
             $o->cssidx = T_HTMLBOX_MATCH;
             // CSS box index
             $o->type = T_TEXT_MATCH_SUMMARY;
             $o->author = get_alt_col('coaches', 'coach_id', $m->submitter_id, 'name');
             $o->title = "Match: {$m->team1_name} {$m->team1_score}&mdash;{$m->team2_score} {$m->team2_name}";
             $o->message = $m->getText();
             $o->date = $m->date_played;
             $o->pinned = 0;
             // Not allowed for other types than board messages
             array_push($board, $o);
         }
     }
     // And finally team news.
     if ($get_tnews) {
         foreach (TeamNews::getNews(false, $n, $lid) as $t) {
             $o = (object) array();
             // Specific fields:
             # none
             // General fields:
             $o->cssidx = T_HTMLBOX_INFO;
             // CSS box index
             $o->type = T_TEXT_TNEWS;
             $o->author = get_alt_col('teams', 'team_id', $t->f_id, 'name');
             $o->title = "Team news: {$o->author}";
             $o->message = $t->txt;
             $o->date = $t->date;
             $o->pinned = 0;
             // Not allowed for other types than board messages
             array_push($board, $o);
         }
     }
     // Last touch on the board.
     if (!empty($board)) {
         objsort($board, array('-pinned', '-date'));
         if ($n) {
             $board = array_slice($board, 0, $n);
         }
     }
     return $board;
 }
Exemplo n.º 7
0
 /**
  * Generates the newsfeed and writes it to disc.
  *
  */
 public function generateNewsRssFeed()
 {
     $dom = new DOMDocument();
     $dom->formatOutput = true;
     $el_root = $dom->appendChild($dom->createElement('rss'));
     $el_root->setAttribute('version', '2.0');
     $el_channel = $el_root->appendChild($dom->createElement('channel'));
     $el_channel->appendChild($dom->createElement('title', $this->title));
     $el_channel->appendChild($dom->createElement('link', $this->link));
     $el_channel->appendChild($dom->createElement('description', $this->desc));
     if ($this->lang != '') {
         $el_channel->appendChild($dom->createElement('language', $this->lang));
     }
     $el_channel->appendChild($dom->createElement('docs', $this->docs));
     $el_channel->appendChild($dom->createElement('lastBuildDate', date(DATE_RSS)));
     $el_channel->appendChild($dom->createElement('generator', 'OBBLM ' . OBBLM_VERSION));
     $entries = array();
     foreach ($this->type as $t) {
         $obj = (object) null;
         switch ($t) {
             case T_TEXT_MSG:
                 foreach (Message::getMessages(RSS_SIZE) as $item) {
                     $entries[] = (object) array('title' => "Announcement by " . get_alt_col('coaches', 'coach_id', $item->f_coach_id, 'name') . ": {$item->title}", 'desc' => $item->message, 'date' => $item->date);
                 }
                 break;
             case 'HOF':
                 if (Module::isRegistered('HOF')) {
                     foreach (Module::run('HOF', array('getHOF', false, RSS_SIZE)) as $item) {
                         $item = $item['hof'];
                         $entries[] = (object) array('title' => "HOF entry for " . get_alt_col('players', 'player_id', $item->pid, 'name') . ": {$item->title}", 'desc' => $item->about, 'date' => $item->date);
                     }
                 }
                 break;
             case 'Wanted':
                 if (Module::isRegistered('Wanted')) {
                     foreach (Module::run('Wanted', array('getWanted', false, RSS_SIZE)) as $item) {
                         $item = $item['wanted'];
                         $entries[] = (object) array('title' => "Wanted entry for " . get_alt_col('players', 'player_id', $item->pid, 'name') . ": {$item->bounty}", 'desc' => $item->why, 'date' => $item->date);
                     }
                 }
                 break;
             case T_TEXT_MATCH_SUMMARY:
                 foreach (MatchSummary::getSummaries(RSS_SIZE) as $item) {
                     $m = new Match($item->match_id);
                     $entries[] = (object) array('title' => "Match: {$m->team1_name} ({$m->team1_score}) vs. {$m->team2_name} ({$m->team2_score})", 'desc' => $m->getText(), 'date' => $m->date_played);
                 }
                 break;
             case T_TEXT_TNEWS:
                 foreach (TeamNews::getNews(false, RSS_SIZE) as $item) {
                     $entries[] = (object) array('title' => "Team news by " . get_alt_col('teams', 'team_id', $item->f_id, 'name'), 'desc' => $item->txt, 'date' => $item->date);
                 }
                 break;
         }
     }
     objsort($entries, array('-date'));
     foreach (array_slice($entries, 0, RSS_SIZE) as $item) {
         $el_item = $dom->createElement('item');
         $el_item->appendChild($dom->createElement('title', htmlspecialchars($item->title, ENT_NOQUOTES, "UTF-8")));
         $el_item->appendChild($dom->createElement('description', htmlspecialchars($item->desc, ENT_NOQUOTES, "UTF-8")));
         $el_item->appendChild($dom->createElement('link', $this->link));
         #            $el_item->appendChild($dom->createElement('pubDate', $item->date));
         $el_item->appendChild($dom->createElement('pubDate', date('r', strtotime($item->date))));
         $el_item->appendChild($dom->createElement('guid', $this->link . 'index.php?' . date('U', strtotime($item->date))));
         # RSS 2.0 dirty workaround.
         $el_channel->appendChild($el_item);
     }
     // Write the file
     $handle = fopen("rss.xml", "w");
     fwrite($handle, $dom->saveXML());
     fclose($handle);
     return $dom->saveXML();
 }
Exemplo n.º 8
0
require 'core/init.php';
$template = new Template();
$user = new User();
$message = new Message();
if (isset($_POST['login'])) {
    $data = array();
    $data['username'] = $_POST['username'];
    $data['password'] = $_POST['password'];
    if ($user->login($data)) {
        $_SESSION['username'] = $data['username'];
    } else {
        $template->wrongpassword = "******";
    }
}
if (isset($_POST['logout'])) {
    $user->logout($_SESSION['username']);
}
if ($_SERVER['REQUEST_METHOD'] == 'POST' && !empty($_POST['message'])) {
    $data['username'] = $_SESSION['username'];
    $data['message'] = $_POST['message'];
    $data['time'] = date('h:i:s a', time());
    $message->sendMessage($data);
}
$template->messages = $message->getMessages();
if (!empty($_SESSION['username'])) {
    $template->title = "Messenger";
    $template->render('welcome.php');
} else {
    $template->title = "Login";
    $template->render('index.php');
}