/**
  * User: Handle ajax announcements update.
  */
 public function getNew()
 {
     $announcement = Announcement::latestExpired();
     $message = empty($announcement) ? null : $announcement->getMessage();
     echo $message;
 }
예제 #2
0
     */
    $ajax = true;
    $message = null;
    $show = true;
    // Show announcements only for logged in users.
    if (Auth::check()) {
        // Paid users get latest.
        /* @var $user \User */
        $user = Auth::user();
        if ($user->announcement_stream && !empty($user->announcement_expires) && $user->announcement_expires->isFuture()) {
            $ajax = false;
            $announcement = Announcement::latestInStream(Auth::user()->announcement_stream);
            $config = Config::get('announcements-server.websocket');
            $view->with('websocketDomain', $config['domain'])->with('websocketPort', $config['port'])->with('user', Auth::user()->id);
        } else {
            $announcement = Announcement::latestExpired();
        }
        $message = empty($announcement) ? null : $announcement->getMessage();
    } else {
        // Do not show the ticker.
        $show = false;
    }
    $view->with('show', $show)->with('ajax', $ajax)->with('message', $message);
});
View::creator('announcements.user.remaining', function ($view) {
    $left = null;
    /* @var $user User */
    $user = Auth::user();
    if ($user && $user->announcement_expires) {
        if ($user->announcement_expires->isFuture()) {
            $now = new Carbon\Carbon();