/** * Get all image sizes * @return array */ public function get_sizes_data() { if (empty($this->sizes)) { $cat = new RMImageCategory($this->getVar('cat')); if ($cat->isNew()) { return false; } // Get sizes $this->sizes = $cat->getVar('sizes'); } return $this->sizes; }
/** * Load all categories from database * @param string SQL Filters * @return array */ public function load_images_categories($filters = 'ORDER BY id_cat DESC', $object = false) { $db = Database::getInstance(); $sql = "SELECT * FROM " . $db->prefix("rmc_img_cats") . " {$filters}"; $result = $db->query($sql); $categories = array(); while ($row = $db->fetchArray($result)) { $tc = new RMImageCategory(); $tc->assignVars($row); if (!$object) { $categories[] = array('id' => $tc->id(), 'name' => $tc->getVar('name')); } else { $categories[] = $tc; } } return $categories; }
$category = rmc_server_var($_POST, 'category', 0); $data = $security; //base64_decode($security); $data = explode("|", $data); // [0] = referer, [1] = session_id(), [2] = user, [3] = token $xoopsUser = new XoopsUser($data[0]); if (!isset($data[1]) || $data[1] != RMCURL . '/images.php') { error(__('You are not allowed to do this action', 'rmcommon')); } if (!$xoopsUser) { error(__('You are not allowed to do this action', 'rmcommon')); } if ($category <= 0) { error(__('Sorry, category has not been specified!', 'rmcommon')); } $cat = new RMImageCategory($category); if ($cat->isNew()) { error(__('Sorry, the specified category has not been found!', 'rmcommon')); } if ($cat->getVar('status') != 'open') { error(__('Sorry, the specified category is closed!', 'rmcommon')); } if (!$cat->user_allowed_toupload($xoopsUser)) { error(__('Sorry, you can not upload images!', 'rmcommon')); } // Cargamos la imágen $updir = XOOPS_UPLOAD_PATH . '/' . date('Y', time()); if (!file_exists($updir)) { mkdir($updir); chmod($updir, octdec('0777')); }
/** * This function deletes all images in a category and the category */ function delete_category() { global $xoopsSecurity; $id = rmc_server_var($_GET, 'id', 0); if (!$xoopsSecurity->check()) { redirectMsg('images.php?action=showcats', __('Operation not allowed!', 'rmcommon'), 1); die; } if ($id <= 0) { redirectMsg('images.php?action=showcats', __('Category ID not provided', 'rmcommon'), 1); die; } $cat = new RMImageCategory($id); if ($cat->isNew()) { redirectMsg('images.php?action=showcats', __('Category not found', 'rmcommon'), 1); die; } $sizes = array(); foreach ($cat->getVar('sizes') as $size) { if ($size['width'] <= 0) { continue; } $sizes[] = '_' . $size['width'] . 'x' . $size['height']; } $db = Database::getInstance(); $sql = "SELECT * FROM " . $db->prefix("rmc_images") . " WHERE cat='" . $cat->id() . "'"; $result = $db->query($sql); while ($row = $db->fetchArray($result)) { $image = new RMImage(); $image->assignVars($row); $updir = XOOPS_UPLOAD_PATH . '/' . date('Y', $image->getVar('date')) . '/' . date('m', time()); $fd = pathinfo($image->getVar('file')); foreach ($sizes as $size) { $file = $updir . '/sizes/' . $fd['filename'] . $size . '.' . $fd['extension']; @unlink($file); } $file = $updir . '/' . $image->getVar('file'); @unlink($file); $image->delete(); } if ($cat->delete()) { redirectMsg('images.php?action=showcats', __('Category deleted successfully!', 'rmcommon'), 0); } else { redirectMsg('images.php?action=showcats', __('Errors ocurred while deleting the category', 'rmcommon') . '<br />' . $cat->errors(), 0); } }
// Email: i.bitcero@gmail.com // License: GPL 2.0 // -------------------------------------------------------------- include '../../../mainfile.php'; XoopsLogger::getInstance()->activated = false; XoopsLogger::getInstance()->renderingEnabled = false; function send_message($message) { global $xoopsSecurity; echo $message; echo '<input type="hidden" id="ret-token" value="' . $xoopsSecurity->createToken() . '" />'; die; } $category = rmc_server_var($_POST, 'category', 0); $action = rmc_server_var($_POST, 'action', ''); $cat = new RMImageCategory($category); $type = rmc_server_var($_REQUEST, 'type', 'tiny'); $en = rmc_server_var($_REQUEST, 'name', ''); if ($action == '') { RMTemplate::get()->add_local_script('jquery.min.js', 'rmcommon', 'include'); RMTemplate::get()->add_local_script('jquery-ui.min.js', 'rmcommon', 'include'); RMTemplate::get()->add_local_script('images_editor.js', 'rmcommon', 'include'); if (!$cat->isNew()) { $uploader = new RMFlashUploader('files-container', 'upload.php'); $uploader->add_setting('scriptData', array('action' => 'upload', 'category' => $cat->id(), 'rmsecurity' => TextCleaner::getInstance()->encrypt($xoopsUser->uid() . '|' . RMCURL . '/images.php' . '|' . $xoopsSecurity->createToken(), true))); $uploader->add_setting('multi', true); $uploader->add_setting('fileExt', '*.jpg;*.png;*.gif'); $uploader->add_setting('fileDesc', __('All Images (*.jpg, *.png, *.gif)', 'rmcommon')); $uploader->add_setting('sizeLimit', $cat->getVar('filesize') * $cat->getVar('sizeunit')); $uploader->add_setting('buttonText', __('Browse Images...', 'rmcommon')); $uploader->add_setting('queueSizeLimit', 100);
/** * Get an image from image manager * @param $id int Image id * @param string Size name from category */ function get_image($id, $size = '') { if ($id <= 0) { return false; } $img = new RMImage($id); if ($img->isNew()) { return false; } $cat = new RMImageCategory($img->getVar('cat')); $sizes = $cat->getVar('sizes'); foreach ($sizes as $s) { if ($s['name'] == $size) { break; } } $date = explode('-', date('d-m-Y', $img->getVar('date'))); $file = XOOPS_UPLOAD_URL . '/' . $date[2] . '/' . $date[1] . '/'; if ($size == '') { $file .= $img->getVar('file'); return $file; } $file .= 'sizes/' . substr($img->getVar('file'), 0, -4) . '_' . $s['width'] . 'x' . $s['height'] . substr($img->getVar('file'), -4); if (!is_file(str_replace(XOOPS_URL, XOOPS_ROOT_PATH, $file))) { return $img->getOriginal(); } return $file; }