<fieldset class="adminform"> <legend><span><?php echo Lang::txt('COM_BILLBOARDS_CURRENT_IMG'); ?> </span></legend> <?php $image = new \Hubzero\Image\Processor(PATH_ROOT . DS . ltrim($this->row->background_img, DS)); ?> <?php if (count($image->getErrors()) == 0) { ?> <?php $image->resize(500); ?> <div style="padding: 10px;"><img src="<?php echo $image->inline(); ?> " alt="billboard image" /></div> <?php } ?> </fieldset> <?php } ?> <fieldset class="adminform"> <!-- @TODO: remove inline styles --> <legend id="styling" style="cursor:pointer;"><?php echo Lang::txt('COM_BILLBOARDS_STYLING'); ?> </legend>
/** * Method to return session screenshot * * @apiMethod GET * @apiUri /tools/{sessionid}/screenshot * @apiParameter { * "name": "sessionid", * "description": "Tool session identifier", * "type": "integer", * "required": true, * "default": 0 * } * @apiParameter { * "name": "type", * "description": "Image format", * "type": "string", * "required": false, * "default": "png", * "allowedValues": "png, jpg, jpeg, gif" * } * @apiParameter { * "name": "notfound", * "description": "Not found", * "type": "integer", * "required": false, * "default": 0 * } * @return void */ public function screenshotTask() { $this->requiresAuthentication(); require_once dirname(dirname(__DIR__)) . DS . 'tables' . DS . 'session.php'; require_once dirname(dirname(__DIR__)) . DS . 'tables' . DS . 'viewperm.php'; //instantiate middleware database object $mwdb = \Components\Tools\Helpers\Utils::getMWDBO(); //get any request vars $type = Request::getVar('type', 'png'); $sessionid = Request::getVar('sessionid', ''); $notFound = Request::getVar('notfound', 0); $image_type = IMAGETYPE_PNG; if ($type == 'jpeg' || $type == 'jpg') { $image_type = IMAGETYPE_JPEG; } else { if ($type == 'gif') { $image_type = IMAGETYPE_GIF; } } //check to make sure we have a valid sessionid if ($sessionid == '' || !is_numeric($sessionid)) { throw new Exception(Lang::txt('No session ID Specified.'), 401); } //load session $ms = new \Components\Tools\Tables\Session($mwdb); $sess = $ms->loadSession($sessionid); //check to make sure we have a sessions dir $home_directory = DS . 'webdav' . DS . 'home' . DS . strtolower($sess->username) . DS . 'data' . DS . 'sessions'; if (!is_dir($home_directory)) { clearstatcache(); if (!is_dir($home_directory)) { throw new Exception(Lang::txt('Unable to find users sessions directory: %s', $home_directory), 404); } } //check to make sure we have an active session with the ID supplied $home_directory .= DS . $sessionid . '{,L,D}'; $directories = glob($home_directory, GLOB_BRACE); if (empty($directories)) { throw new Exception(Lang::txt('No Session directory with the ID: %s', $sessionid), 404); } else { $home_directory = $directories[0]; } // check to make sure we have a screenshot $screenshot = $home_directory . DS . 'screenshot.png'; if (!file_exists($screenshot)) { if ($notFound) { $screenshot = dirname(dirname(__DIR__)) . DS . 'site' . DS . 'assets' . DS . 'img' . DS . 'screenshot-notfound.png'; } else { throw new Exception(Lang::txt('No screenshot Found.'), 404); } } // Load image and serve up $image = new \Hubzero\Image\Processor($screenshot); $image->setImageType($image_type); $this->send($image->inline(), 200); }