Ejemplo n.º 1
0
 /**
  * Creates new group localization object, sets ID equal to master ID, will
  * regenerate if persisted
  * @param string $locale
  * @param GroupPage $groupPage
  */
 public function __construct($locale, GroupPage $groupPage)
 {
     parent::__construct($locale);
     $this->id = $groupPage->getId();
     $this->title = $groupPage->getTitle();
     $this->master = $groupPage;
     $this->persistent = false;
 }
 public function search()
 {
     $in = Input::all();
     $name = $in['name'];
     if (strlen($name) < 1) {
         return '';
     }
     $users = User::where('StudentID', '!=', Auth::user()->StudentID)->where(function ($q) use($name) {
         $q->where('StudentID', 'LIKE', '%' . $name . '%')->orWhere('Lastname', 'LIKE', '%' . $name . '%')->orWhere('Firstname', 'LIKE', '%' . $name . '%')->get();
     })->get();
     $groups = GroupPage::where('grouppageID', 'LIKE', '%' . $name . '%')->orWhere('Name', 'LIKE', '%' . $name . '%')->get();
     return View::make('validated.search.view', compact('users', 'groups'));
 }
 public function more()
 {
     $user = User::with('Course', 'Gender', 'userType')->where('StudentID', Auth::user()->StudentID)->first();
     $adminGroupPages = GroupPage::where('StudentID', Auth::user()->StudentID)->where('delFlag', 0)->orderBy('created_at', 'DESC')->get();
     $groupPages = GroupPageMember::with('groupPages')->where('StudentID', Auth::user()->StudentID)->where('delFlag', 0)->orderBy('created_at', 'DESC')->get();
     if (Auth::user()->UserTypeID == 2) {
         $files = Files::where('delFlag', 0)->where('folderID', 0)->where('OwnerID', Auth::user()->StudentID)->get();
         $fileFolders = FilesFolder::where('OwnerID', Auth::user()->StudentID)->where('delFlag', 0)->orderBy('created_at', 'DESC')->get();
         $activities = GroupPageActivity::where('OwnerID', Auth::user()->StudentID)->where('delFlag', 0)->get();
         $quizzes = Quiz::where('delFlag', 0)->orderBy('created_at', 'DESC')->get();
     } else {
         $activities = GroupPageActivityGroup::with('groupPage', 'groupPageActivityFiles')->where('deadline', '>', date('Y-m-d H:i:s'))->whereExists(function ($q) {
             $q->select(DB::raw(0))->from('grouppagemember')->whereRaw('grouppagemember.grouppageID = grouppageactivitygroup.grouppageID')->where('StudentID', Auth::user()->StudentID)->whereRaw('grouppagemember.delFlag = 0');
         })->orderBy('deadline', 'ASC')->get();
         $quizzes = QuizGroupPage::with('groupPageMember', 'groupPage', 'quiz')->where('delFlag', 0)->whereNotExists(function ($q) {
             $q->select(DB::raw(0))->from('quiztaken', 'grouppagemember')->where('quiztaken.OwnerID', Auth::user()->StudentID)->whereRaw('quiztaken.quizID = quizgrouppage.quizID')->where('delFlag', 0);
         })->get();
     }
     return View::make('validated.more', compact('user', 'adminGroupPages', 'groupPages', 'files', 'fileFolders', 'activities', 'quizzes'));
 }
Ejemplo n.º 4
0
 public static function isBelong($id, $StudentID)
 {
     return GroupPage::isMember($id, $StudentID) ? true : GroupPage::isAdmin($id, $StudentID);
 }
 public function forceLeave()
 {
     $in = Input::all();
     $isAdmin = GroupPage::isAdmin($in['id'], $in['AccID']);
     $isAssistant = GroupPage::isAssistant($in['id'], $in['AccID']);
     $isMember = GroupPage::isMember($in['id'], $in['AccID']);
     if (!$isAdmin && $isMember) {
         GroupPageMember::where('grouppageID', $in['id'])->where('StudentID', $in['AccID'])->update(array('delFlag' => 1));
         $isAssistant ? GroupPage::where('grouppageID', $in['id'])->update(array('assistantID' => Auth::user()->StudentID)) : '';
     }
 }
<?php

$isAdmin = GroupPage::isAdmin($groupPage->grouppageID, Auth::user()->StudentID);
$isMember = GroupPage::isMember($groupPage->grouppageID, Auth::user()->StudentID) ? true : false;
?>
@if(count($groupPage))
    @extends('layouts.header')
    @section('header_content')
        <h5 class="modal-title" id="myModalLabel">
            <a href="#">
                <span id="name" data-target="/grouppage/view/{{$groupPage->grouppageID}}">{{$groupPage->Name}}</span>
            </a>
            <i class="fa fa-chevron-right fa-fw"></i> Settings
        </h5>
    @stop

    <div class="container margin-top-xxl">
        <div class="list-group margin-top-sm">
            @if($isAdmin)
                <div class="list-group-item clearfix">
                    <span id="silentPostRequest" data-id="{{$groupPage->grouppageID}}" data-accid="{{Auth::user()->StudentID}}" data-message="Deleting..." data-target="/grouppage/delete" class="btn btn-sm btn-danger pull-right"><i class="fa fa-remove fa-fw"></i> Delete Group</span>
                    <h5 class="text-danger">Delete this group page</h5>
                </div>
            @elseif($isMember)
                <div class="list-group-item clearfix">
                    <span id="silentPostRequest" class="btn btn-sm btn-danger pull-right" data-message="Successfully left" data-target="grouppage/leave" data-id="{{$groupPage->grouppageID}}" data-accid="{{Auth::user()->StudentID}}">
                        <i class="fa fa-reply fa-fw"></i>
                        Leave
                    </span>
                    <h5 class="text-danger">Leave this group page</h5>
                </div>
Ejemplo n.º 7
0
 /**
  * Get link page localization
  * @return Localization
  */
 public function getPageLocalization()
 {
     throw new \Exception('Dont use me bro.');
     if (empty($this->pageId)) {
         return;
     }
     if (!is_null($this->pageLocalization)) {
         return $this->pageLocalization;
     }
     $em = ObjectRepository::getEntityManager($this);
     $pageData = null;
     $localizationEntity = Localization::CN();
     $localeId = ObjectRepository::getLocaleManager($this)->getCurrent()->getId();
     $criteria = array('master' => $this->pageId, 'locale' => $localeId);
     // Now master page ID is stored, still the old implementation is working
     $dql = "SELECT l, m, p FROM {$localizationEntity} l\n\t\t\t\tJOIN l.master m\n\t\t\t\tLEFT JOIN l.path p\n\t\t\t\tWHERE (l.master = :master AND l.locale= :locale)\n\t\t\t\tOR l.id = :master";
     try {
         $pageData = $em->createQuery($dql)->setParameters($criteria)->getSingleResult();
     } catch (NoResultException $noResult) {
         // Special case for group page selection when no localization exists in database
         $master = $em->find(GroupPage::CN(), $this->pageId);
         if ($master instanceof GroupPage) {
             $pageData = $master->getLocalization($localeId);
         }
     }
     // Cache the result
     $this->pageLocalization = $pageData;
     return $pageData;
 }
 public function shareFile($id)
 {
     $file = Files::find($id);
     $groups = GroupPage::where('StudentID', Auth::user()->StudentID)->get();
     return View::make('validated.grouppage.shareFile', compact('file', 'groups'));
 }