Пару вопросов в DLE
Нашел вообщем модуль типа заливает автоматом картинки на сервак.
Вот код и установка:
Цитата:
Создайте файл image_function.php и вставьте в него :
<?php
class image_controller
{
var $images = array ();
var $prefix = 'dl';
var $upload_images = array ();
function reset_url($url)
{
$value = str_replace("http://", "", $url);
$value = str_replace("www.", "", $value);
return reset(explode("/", $value));
}
function get_images ($content)
{
preg_match_all ('#\\[img\\](.+?)\\[/img\\]#ie', $content, $preg_array);
if (count ($preg_array[1]) != 0)
{
foreach ($preg_array[1] as $item)
{
if ($this->reset_url($_SERVER['HTTP_HOST'])!=$this->reset_url($item))
{
if (!(in_array ($item, $this->images)))
{
$this->images[] = $item;
continue;
}
}
}
}
}
function download ($image_url)
{
global $config;
$image_name = basename ($image_url);
$image_arr = explode ('_', $image_name);
if (count ($image_arr) != 0)
{
$image_name = end ($image_arr);
}
$image_name = $this->prefix . '_' . $image_name;
$serv_image_url = $config['http_home_url'] . 'uploads/posts/' . $image_name;
$this->source = str_replace ($image_url, $serv_image_url, $this->source);
@copy ($image_url, UPLOAD_PATH . $image_name);
if (!(in_array (basename ($serv_image_url), $this->upload_images)))
{
$this->upload_images[] = basename ($serv_image_url);
}
}
function process ($parse)
{
$source = preg_replace( "'\[thumb\]([^\[]*)([/\\\\])(.*?)\[/thumb\]'ie", "\$this->build_thumb('\$1\$2\$3', '\$1\$2thumbs\$2\$3')", $source );
$source = preg_replace( "'\[thumb=(.*?)\]([^\[]*)([/\\\\])(.*?)\[/thumb\]'ie", "\$this->build_thumb('\$2\$3\$4', '\$2\$3thumbs\$3\$4', '\$1')", $source );
$this->source = $parse->decodeBBCodes($this->source);
$this->prefix = time ();
if (trim ($this->source) != '')
{
$this->get_images ($this->source);
}
foreach ($this->images as $image_url)
{
$this->download ($image_url);
}
}
}
define ('UPLOAD_PATH', ROOT_DIR . '/uploads/posts/');
?>
Поместите его в engine/inc
Установка:
Откройте файл engine/classes/parse.class.php и найдите:
function process($source) {
Ниже вставьте:
require_once ENGINE_DIR.'/inc/image_function.php';
$i_control = new image_controller();
$i_control->source = $source;
$i_control->process($this);
$source = $i_control->source;
|
Тут есть бага . Можно с помощю этого задить шелл.
http://fuck.ru/shell.php как убрать эту багу?
И ещет вопрос. У меня на сайте когда вставляешь изображение вводится УРЛ картинки и потом надо выбрать положение . Как сделать так чтобы заместь left автоматом прописивалось center. Просто надоедает удалять слово left и писать центр. Мне надо сделать так чтобы ввёл урл и дальше при выборе положения было центр
|