public function index() { // run database seeder on first load $groups = ProjectHandler::listProjects(); if (count($groups) == 0) { Artisan::call('db:seed'); } return View::make('index'); }
/** * Display list of all groups. */ public function getGroupList() { $thisUser = Auth::user(); $groups = ProjectHandler::listProjects(); $projects = []; $isAdmin = PermissionHandler::checkAdmin($thisUser, Permissions::ALLOW_ALL); foreach ($groups as $group) { $canView = PermissionHandler::checkProject($thisUser, $group, Permissions::PROJECT_READ); $users = 0; foreach (Roles::$PROJECT_ROLE_NAMES as $role) { // List userts with $role in this group -- make [] when none $projectRole = Sentry::findGroupByName($group . ':' . $role); $users += sizeOf($projectRole['user_agent_ids']); } // if user is not admin, do not show the admin group if ($group != 'admin') { array_push($projects, ['name' => $group, 'canview' => $canView, 'users' => $users]); } } return View::make('projects.list')->with('projects', $projects)->with('isAdmin', $isAdmin); }
public function store($documentType, $parameters, $noOfVideos) { //fastcgi_finish_request(); $listOfVideoIdentifiers = array(); $this->listRecords($parameters, $noOfVideos, $listOfVideoIdentifiers); // get list of existing projects $projects = ProjectHandler::listProjects(); // dd("done"); $status = array(); try { $this->createOpenimagesVideoGetterSoftwareAgent(); } catch (Exception $e) { $status['error']['OnlineData'] = $e->getMessage(); return $status; } try { $activity = new Activity(); $activity->softwareAgent_id = "openimagesgetter"; $activity->save(); } catch (Exception $e) { // Something went wrong with creating the Activity $status['error']['OnlineData'] = $e->getMessage(); $activity->forceDelete(); return $status; } $count["count"] = 0; foreach ($listOfVideoIdentifiers as $video) { $title = $video; try { $entity = new Unit(); $entity->_id = $entity->_id; $entity->title = strtolower($title); $entity->documentType = $documentType; $entity->source = "openimages"; $entity->project = "soundandvision"; $entity->type = "unit"; $videoMetadata = $this->getRecord($video, $parameters["metadataPrefix"]); $entity->content = $videoMetadata["content"]; $parents = array(); $entity->parents = $parents; $entity->tags = array("unit"); $entity->segments = $count; $entity->keyframes = $count; $hashing = array(); $hashing["content"] = $entity->content; $hashing["project"] = $entity->project; $entity->hash = md5(serialize($hashing)); $entity->activity_id = $activity->_id; $entity->save(); $status['success'][$title] = $title . " was successfully uploaded. (URI: {$entity->_id})"; // add the project if it doesnt exist yet if (!in_array($entity->project, $projects)) { ProjectHandler::createGroup($entity->project); // add the project to the temporary list array_push($projects, $entity->project); } // add the user to the project if it has no access yet if (!ProjectHandler::inGroup($entity->user_id, $entity->project)) { $user = UserAgent::find($entity->user_id); ProjectHandler::grantUser($user, $entity->project, Roles::PROJECT_MEMBER); } } catch (Exception $e) { // Something went wrong with creating the Entity $activity->forceDelete(); $entity->forceDelete(); $status['error'][$title] = $e->getMessage(); } } $status["recno"] = count($listOfVideoIdentifiers); return $status; }