Esempio n. 1
0
 /**
  * Display a listing of the resource.
  * Display every conversation/topics with the first Thread related
  * @return Response
  */
 public function index(Request $request)
 {
     $Threads = array();
     $Result = array();
     $count = 0;
     $admin = Role::select('id')->where('description', '=', 'admin')->firstorFail();
     // if we are admin we want to see everything
     if (\Auth::id() == $admin->id) {
         $Conversations = User::select('*')->join('conversations', 'conversations.user_id', '=', 'users.id')->get();
     } else {
         // we are not admin but we want to see published messages and the status of our posted messages
         if (\Auth::guest()) {
             $Conversations = User::select('*')->join('conversations', 'conversations.user_id', '=', 'users.id')->where('conversations.Pending', '=', 0)->get();
         } else {
             $Conversations = User::select('*')->join('conversations', 'conversations.user_id', '=', 'users.id')->where('conversations.Pending', '=', 0)->orwhere('conversations.user_id', '=', \Auth::id())->get();
         }
     }
     // we recover the first Thread according to the conversations which passed the previous tests
     foreach ($Conversations as $Conversation) {
         $Threads[$count] = Thread::where('conversation_id', '=', $Conversation->id)->firstOrFail();
         $Result[$count] = array($Conversation, $Threads[$count]);
         $count++;
     }
     return view('dashboard')->with(['dashboard' => $Result, 'adminID' => $admin]);
 }
Esempio n. 2
0
 public function getUsers(Request $request)
 {
     $yetkiler = Role::all();
     $count = $request->get('count');
     $page = $request->get('page');
     $filters = $request->get('filter');
     $sorting = $request->get('sorting');
     $results = new User();
     if (is_array($filters)) {
         foreach ($filters as $key => $filter) {
             $results = $results->where($key, 'like', "%" . urldecode($filter) . "%");
         }
     }
     if (is_array($sorting)) {
         foreach ($sorting as $key => $sort) {
             $results = $results->orderBy($key, $sort);
         }
     } else {
         $results = $results->orderBy('id', 'desc');
     }
     if ($request->has('count') && $request->has('page')) {
         $results = $results->skip($count * ($page - 1))->take($count);
     }
     $results = $results->get();
     $filter_yetkiler = Role::select('id', 'display_name as title')->get();
     return array('results' => $results, 'inlineCount' => User::count(), 'yetkiler' => $yetkiler, 'filter_yetkiler' => $filter_yetkiler);
 }
Esempio n. 3
0
 /**
  * Compare the role_id of the user with the admin role id of the database
  * return true if user is Admin
  */
 public function isAdmin()
 {
     $adminID = Role::select('id')->where('description', '=', 'admin')->firstOrFail();
     if ($this->role_id == $adminID->id) {
         return true;
     }
     return false;
 }
 /**
  * Show the form for editing the specified resource.
  *
  * @param  int  $id
  *
  * @return void
  */
 public function edit($id)
 {
     $roles = Role::select('id', 'name', 'label')->get();
     $user = User::with('roles')->select('id', 'name', 'email')->findOrFail($id);
     $user_roles = [];
     foreach ($user->roles as $role) {
         $user_roles[] = $role->name;
     }
     return view('admin.users.edit', compact('user', 'roles', 'user_roles'));
 }
Esempio n. 5
0
 /**
  * Returns board uris with this permission.
  *
  * @param  \App\Contracts\PermissionUser|null  $user  User roles must belong to. Defaults to null.
  * @param  bool  $anonymous  Determines if we should allow generic, unassigned roles. Defaults true.
  * @return Collection  of \App\Board->board_uri strings
  */
 public function getBoardsWithPermissions(PermissionUser $user = null, $anonymous = true)
 {
     // Identify roles which affect this user.
     // Sometimes we will only want direct assignments.
     // This includes null user_id assignments for anonymouse users.
     $userRoles = UserRole::select('role_id')->where(function ($query) use($user, $anonymous) {
         if ($anonymous) {
             $query->whereNull('user_id');
         }
         if ($user instanceof PermissionUser && !$user->isAnonymous()) {
             $query->orWhere('user_id', $user->user_id);
         } else {
             if (!$anonymous) {
                 $query->where(\DB::raw('0'), '1');
             }
         }
     })->get()->pluck('role_id');
     if (!$userRoles) {
         return collect();
     }
     $inheritRoles = Role::select('role_id', 'inherit_id')->whereIn('role_id', $userRoles)->get()->pluck('inherit_id')->filter(function ($item) {
         return !is_null($item);
     });
     // Identify roles which use this permission,
     // or which borrow inherited roles.
     $validRoles = RolePermission::select('role_id', 'permission_id')->where(function ($query) use($userRoles, $inheritRoles) {
         $query->orWhereIn('role_id', $userRoles);
         if ($inheritRoles) {
             $query->orWhereIn('role_id', $inheritRoles);
         }
     })->where('permission_id', $this->permission_id)->get()->pluck('role_id');
     if (!$validRoles) {
         return collect();
     }
     // Find the intersection of roles we have and roles we want.
     $intersectIdents = collect($userRoles)->intersect(collect($validRoles));
     $inheritIdents = collect($inheritRoles)->intersect(collect($validRoles));
     $intersectRoles = collect();
     if ($intersectIdents) {
         // These are only roles which are directly assigned to us with
         // this permission.
         $intersectRoles = collect(Role::select('role_id', 'board_uri')->whereIn('role_id', $intersectIdents)->get()->pluck('board_uri'));
     }
     if ($inheritIdents) {
         $intersectRoles = collect(Role::select('role_id', 'board_uri')->whereIn('inherit_id', $inheritIdents)->whereIn('role_id', $userRoles)->get()->pluck('board_uri'))->merge($intersectRoles);
     }
     return $intersectRoles;
 }
Esempio n. 6
0
 /**
  * Display the specified resource.
  *
  * @param  int  $id which is the id of the conversation
  * @return Response
  */
 public function show($id)
 {
     $admin = Role::select('id')->where('description', '=', 'admin')->firstOrFail();
     // if we are admin we want to see everything
     if (\Auth::id() == $admin->id) {
         $listofMessages = User::select("*")->Join('threads', 'threads.user_id', '=', 'users.id')->where("threads.conversation_id", '=', $id)->get();
     } else {
         // we are not admin but we want to see published messages and the status of our posted messages
         if (\Auth::guest()) {
             $listofMessages = User::select("*")->Join('threads', 'threads.user_id', '=', 'users.id')->where("threads.conversation_id", '=', $id)->where('threads.Pending', '=', 0)->get();
         } else {
             $listofMessages = User::select("*")->Join('threads', 'threads.user_id', '=', 'users.id')->where("threads.conversation_id", '=', $id)->where('threads.Pending', '=', 0)->orwhere('threads.user_id', '=', \Auth::id())->get();
         }
     }
     // We want the list of message related to this conversation with their writers
     //$listofMessages= Thread::select("*")->Join('users', 'Threads.user_id', '=', 'users.id')->where("threads.conversation_id",'=',$id)->get();
     return view('Thread')->with(['lstOfMessages' => $listofMessages, 'adminID' => $admin]);
 }
 /**
  * Display a listing of the resource.
  *
  * @param  Request  $request
  * @return Datatables
  */
 public function index(Request $request)
 {
     $roles = Role::select(['id', 'name', 'slug', 'created_at']);
     // roles visibility
     if (!Sentinel::getUser()->is_super_admin) {
         $roles->whereNotIn('slug', config('laravel-user-module.non_visibility.role_slugs'));
     }
     // if is filter action
     if ($request->has('action') && $request->input('action') === 'filter') {
         $roles->filter($request);
     }
     $addColumns = ['addUrls' => $this->urls];
     $editColumns = ['name' => function ($model) {
         return $model->name_uc_first;
     }, 'created_at' => function ($model) {
         return $model->created_at_table;
     }];
     $removeColumns = [];
     return $this->getDatatables($roles, $addColumns, $editColumns, $removeColumns);
 }
 /**
  * Display given permissions to role.
  *
  * @return void
  */
 public function getGiveRolePermissions()
 {
     $roles = Role::select('id', 'name', 'label')->get();
     $permissions = Permission::select('id', 'name', 'label')->get();
     return view('admin.permissions.role-give-permissions', compact('roles', 'permissions'));
 }
Esempio n. 9
0
 /**
  * Show a list of all the languages posts formatted for Datatables.
  *
  * @return Datatables JSON
  */
 public function data()
 {
     $roles = Role::select(array('roles.id', 'roles.name', 'roles.created_at'));
     return Datatables::of($roles)->add_column('actions', '<a href="{{{ URL::to(\'admin/roles/\' . $id . \'/edit\' ) }}}" class="btn btn-success btn-sm iframe" ><span class="glyphicon glyphicon-pencil"></span>  {{ Lang::get("admin/modal.edit") }}</a>
                 <a href="{{{ URL::to(\'admin/roles/\' . $id . \'/delete\' ) }}}" class="btn btn-sm btn-danger iframe"><span class="glyphicon glyphicon-trash"></span> {{ Lang::get("admin/modal.delete") }}</a>
             ')->remove_column('id')->make();
 }
Esempio n. 10
0
 /**
  * Show a list of all the roles formatted for Datatables.
  *
  * @return Datatables JSON
  */
 public function getData()
 {
     $roles = Role::select(array('roles.id', 'roles.name', 'roles.id as users', 'roles.created_at'));
     return Datatables::of($roles)->edit_column('users', '{{{ DB::table(\'role_user\')->where(\'role_id\', \'=\', $id)->count()  }}}')->add_column('actions', '<a href="{{{ URL::to(\'admin/roles/\' . $id . \'/edit\' ) }}}" class="iframe btn btn-xs btn-default">{{{ Lang::get(\'button.edit\') }}}</a>
                             <a href="{{{ URL::to(\'admin/roles/\' . $id . \'/delete\' ) }}}" class="iframe btn btn-xs btn-danger">{{{ Lang::get(\'button.delete\') }}}</a>
                 ')->remove_column('id')->make();
 }
Esempio n. 11
0
 public function destroy(Request $request, $id)
 {
     $version = Episodever::select('user_id')->where('episode_id', $id)->where('first', 1)->first();
     if ($version->user_id != $request->user()->id) {
         return '抱歉, 目前仅支持添加此条目的用户删除分集> <';
     }
     $favorite = Epfav::select('user_id')->where('episode_id', $id)->first();
     if ($favorite) {
         return '抱歉, 已有人收藏本集,不能删除> <';
     }
     $review = Review::select('id')->where('episode_id', $id)->first();
     if ($review) {
         return '抱歉,已有人评论本集,不能删除> <';
     }
     $role = Role::select('id')->where('episode_id', $id)->first();
     if ($role) {
         return '抱歉,请先逐一删除SC关联后再删除本集';
     }
     $item = Item::select('id')->where('episode_id', $id)->first();
     if ($item) {
         return '抱歉,已有剧单收录本集,不能删除> <';
     }
     $ed = Ed::select('id')->where('episode_id', $id)->first();
     if ($ed) {
         return '抱歉,请先逐一删除歌曲关联后再删除本集';
     }
     $episode = Episode::find($id, ['id', 'drama_id']);
     if ($episode->delete()) {
         DB::table('users')->where('id', $version->user_id)->decrement('episodevers');
         return redirect()->route('drama.show', [$episode->drama_id]);
     } else {
         return '删除失败';
     }
 }
 /**
  * Show the form for editing the specified resource.
  *
  * @param  int  $id
  * @return \Illuminate\Http\Response
  */
 public function edit($id)
 {
     $user = User::findOrFail($id);
     $roles = Role::select('id', 'name')->lists('name', 'id');
     return view('user.edit', compact('user', 'roles'));
 }
 /**
  * Display given permissions to role.
  *
  * @return void
  */
 public function getUserRolePermissions()
 {
     $roles = Role::select('id', 'name', 'label')->get();
     $permissions = Permission::select('id', 'name', 'label')->get();
     return \View::make('admin.permissions.role-assign-permissions', ['roles' => $roles, 'permissions' => $permissions, 'title' => 'assign']);
 }
Esempio n. 14
0
 /**
  * Get the query object to be processed by dataTables.
  *
  * @return \Illuminate\Database\Eloquent\Builder|\Illuminate\Database\Query\Builder|\Illuminate\Support\Collection
  */
 public function query()
 {
     $query = Role::select('*');
     return $this->applyScopes($query);
 }