Exemple #1
0
 public static function validProjFormRecord($pid, $fid, $rid)
 {
     $record = RecordController::getRecord($rid);
     $form = FormController::getForm($fid);
     $proj = ProjectController::getProject($pid);
     if (!FormController::validProjForm($pid, $fid)) {
         return false;
     }
     if (is_null($record) || is_null($form) || is_null($proj)) {
         return false;
     } else {
         if ($record->fid == $form->fid) {
             return true;
         } else {
             return false;
         }
     }
 }
Exemple #2
0
 /**
  * Returns true if a user is in a form's admin group, false if not.
  *
  * @param Form $form
  * @return bool
  */
 public function isFormAdmin(Form $form)
 {
     if ($this->admin) {
         return true;
     }
     if ($this->isProjectAdmin(ProjectController::getProject($form->pid))) {
         return true;
     }
     $adminGroup = $form->adminGroup()->first();
     if ($adminGroup->hasUser($this)) {
         return true;
     }
     return false;
 }
 private function wipeAdminRights($request, $pid)
 {
     $user = $request['userId'];
     $project = ProjectController::getProject($pid);
     $forms = $project->forms()->get();
     foreach ($forms as $form) {
         $adminGroup = $form->adminGroup()->first();
         $adminGroup->users()->detach($user);
     }
 }
Exemple #4
0
 public static function checkPermissions($pid, $permission = '')
 {
     switch ($permission) {
         case 'create':
             if (!\Auth::user()->canCreateForms(ProjectController::getProject($pid))) {
                 flash()->overlay('You do not have permission to create forms for that project.', 'Whoops');
                 return false;
             }
             return true;
         case 'edit':
             if (!\Auth::user()->canEditForms(ProjectController::getProject($pid))) {
                 flash()->overlay('You do not have permission to edit forms for that project.', 'Whoops');
                 return false;
             }
             return true;
         case 'delete':
             if (!\Auth::user()->canDeleteForms(ProjectController::getProject($pid))) {
                 flash()->overlay('You do not have permission to delete forms for that project.', 'Whoops');
                 return false;
             }
             return true;
         default:
             if (!\Auth::user()->inAProjectGroup(ProjectController::getProject($pid))) {
                 flash()->overlay('You do not have permission to view that project.', 'Whoops.');
                 return false;
             }
             return true;
     }
 }
Exemple #5
0
 /**
  * Remove the specified resource from storage.
  *
  * @param  int  $id
  * @return Response
  */
 public function destroy($id)
 {
     $project = ProjectController::getProject($id);
     $project->delete();
     flash()->overlay('Your project has been successfully deleted!', 'Good Job');
 }
Exemple #6
0
 /**
  * Validate that a field belongs to a form and project.
  *
  * @param $pid
  * @param $fid
  * @param $flid
  * @return bool
  */
 public static function validProjFormField($pid, $fid, $flid)
 {
     $field = FieldController::getField($flid);
     $form = FormController::getForm($fid);
     $proj = ProjectController::getProject($pid);
     if (!FormController::validProjForm($pid, $fid)) {
         return false;
     }
     if (is_null($field) || is_null($form) || is_null($proj)) {
         return false;
     } else {
         if ($field->fid == $form->fid) {
             return true;
         } else {
             return false;
         }
     }
 }