/** * Add file for the image manager */ function imanager_addfile() { if (!empty($_POST)) foreach ($_POST as $k => $v) ${$k} = StopXSS($v); if (!icms::$security->check()) { redirect_header($_SERVER['SCRIPT_NAME'] . '?op=list&target=' . $target . '&type=' . $type, 3, implode('<br />', icms::$security->getErrors())); } $imgcat_handler = icms::handler('icms_image_category'); $imagecategory =& $imgcat_handler->get($imgcat_id); if (!is_object($imagecategory)) { redirect_header($_SERVER['SCRIPT_NAME'] . '?op=list&target=' . $target . '&type=' . $type, 1); } $categ_path = $imgcat_handler->getCategFolder($imagecategory); if ($imagecategory->getVar('imgcat_storetype') == 'db') { $updir = ICMS_IMANAGER_FOLDER_PATH; } else { $updir = $categ_path; } $uploader = new icms_file_MediaUploadHandler($updir, array('image/gif', 'image/jpeg', 'image/pjpeg', 'image/x-png', 'image/png', 'image/bmp'), $imagecategory->getVar('imgcat_maxsize'), $imagecategory->getVar('imgcat_maxwidth'), $imagecategory->getVar('imgcat_maxheight')); $uploader->setPrefix('img'); $err = array(); $ucount = count($_POST['xoops_upload_file']); for ($i = 0; $i < $ucount; $i++) { if ($uploader->fetchMedia($_POST['xoops_upload_file'][$i])) { if (!$uploader->upload()) { $err[] = $uploader->getErrors(); } else { $image_handler = icms::handler('icms_image'); $image =& $image_handler->create(); $image->setVar('image_name', $uploader->getSavedFileName()); $image->setVar('image_nicename', $image_nicename); $image->setVar('image_mimetype', $uploader->getMediaType()); $image->setVar('image_created', time()); $image_display = empty($image_display) ? 0 : 1; $image->setVar('image_display', $image_display); $image->setVar('image_weight', $image_weight); $image->setVar('imgcat_id', $imgcat_id); if ($imagecategory->getVar('imgcat_storetype') == 'db') { $fp = @fopen($uploader->getSavedDestination(), 'rb'); $fbinary = @fread($fp, filesize($uploader->getSavedDestination())); @fclose($fp); $image->setVar('image_body', $fbinary, TRUE); @unlink($uploader->getSavedDestination()); } if (!$image_handler->insert($image)) { $err[] = sprintf(_FAILSAVEIMG, $image->getVar('image_nicename')); } } } else { $err[] = sprintf(_FAILFETCHIMG, $i); $err = array_merge($err, $uploader->getErrors(FALSE)); } } if (count($err) > 0) { icmsPopupHeader(); icms_core_Message::error($err); icmsPopupFooter(); exit(); } if (isset($imgcat_id)) { $redir = '?op=listimg&imgcat_id=' . $imgcat_id . '&target=' . $target . '&type=' . $type; } else { $redir = '?op=list&target=' . $target . '&type=' . $type; } redirect_header($_SERVER['SCRIPT_NAME'] . $redir, 2, _ICMS_DBUPDATED); }
if ($op == 'addfile') { if (!icms::$security->check()) { redirect_header('admin.php?fct=avatars', 3, implode('<br />', icms::$security->getErrors())); } $uploader = new icms_file_MediaUploadHandler(ICMS_UPLOAD_PATH, array('image/gif', 'image/jpeg', 'image/pjpeg', 'image/x-png', 'image/png'), $icmsConfigUser['avatar_maxsize'], $icmsConfigUser['avatar_width'], $icmsConfigUser['avatar_height']); $uploader->setPrefix('savt'); $err = array(); if ($uploader->fetchMedia($_POST['xoops_upload_file'][0])) { if (!$uploader->upload()) { $err[] = $uploader->getErrors(); } else { $avt_handler = icms::handler('icms_data_avatar'); $avatar =& $avt_handler->create(); $avatar->setVar('avatar_file', $uploader->getSavedFileName()); $avatar->setVar('avatar_name', $avatar_name); $avatar->setVar('avatar_mimetype', $uploader->getMediaType()); $avatar_display = empty($avatar_display) ? 0 : 1; $avatar->setVar('avatar_display', $avatar_display); $avatar->setVar('avatar_weight', $avatar_weight); $avatar->setVar('avatar_type', 'S'); if (!$avt_handler->insert($avatar)) { $err[] = sprintf(_FAILSAVEIMG, $avatar->getVar('avatar_name')); } } } else { $err = array_merge($err, $uploader->getErrors(FALSE)); } if (count($err) > 0) { icms_cp_header(); icms_core_Message::error($err); icms_cp_footer();