Перейти к публикации

Установка хака по созданию кнопки «Добавить все»


Рекомендованные сообщения

Если было - не пинать, не нашел. Код самописный и ни у кого не сдирался.

Установка хака по созданию кнопки «Добавить все»:

engine\inc\files.php

Найти

$total_size = 0;
Ниже вставить
$all_inserts = "<script language=\"javascript\" type=\"text/javascript\">function insertimage_s(){";
Чуть ниже найти блок
if (!$wysiwyg)

$thumb_link="<a class=maintitle href=\"java script:insertthumb('".$config['http_home_url']."uploads/posts/".$dataimages."','')\">$dataimages</a>";

else

$thumb_link="<a class=maintitle href=\"java script:insertthumb('".$config['http_home_url']."uploads/posts/".$dataimages."', '".$config['http_home_url']."uploads/posts/thumbs/".$dataimages."')\">$dataimages</a>";
Заменить его
if (!$wysiwyg)

{

$thumb_link="<a class=maintitle href=\"java script:insertthumb('".$config['http_home_url']."uploads/posts/".$dataimages."','')\">$dataimages</a>";

$all_inserts .= "insertthumb('".$config['http_home_url']."uploads/posts/".$dataimages."','');";

}

else

{

$thumb_link="<a class=maintitle href=\"java script:insertthumb('".$config['http_home_url']."uploads/posts/".$dataimages."', '".$config['http_home_url']."uploads/posts/thumbs/".$dataimages."')\">$dataimages</a>";

$all_inserts .= "insertthumb('".$config['http_home_url']."uploads/posts/".$dataimages."', '".$config['http_home_url']."uploads/posts/thumbs/".$dataimages."');";

}
Чуть ниже найти
$thumb_link="<a class=maintitle href=\"java script:insertimage('".$config['http_home_url']."uploads/posts/".$dataimages."')\">$dataimages</a>";
После него вставить
$all_inserts .="insertimage('".$config['http_home_url']."uploads/posts/".$dataimages."');";
Найти
$db->query("SELECT id, name, dcount  FROM " . PREFIX . "_files where author = '$author' AND news_id = '$news_id'");
Перед ним вставить
$all_inserts .= "}</script>";
Найти
<td colspan=4 align=\"right\"><input class=edit type=submit value=' $lang[images_del] '>
Заменить на
 <td colspan=2 align=\"right\"><input class=edit type=button value=' Добавить все ' onclick = \"insertimage_s();return false;\">

<td colspan=2 align=\"right\"><input class=edit type=submit value=' $lang[images_del] '>
Чуть ниже после
</tr></table></form><br>";
Вставить
echo $all_inserts;

кому надо берем и ставим, благодарим ;)

Ссылка на сообщение
Поделиться на других сайтах

да чтобы все картинки загруженные в новость вставлялись нажатием одной кнопки.

скажем так это часть модуля http://4dle.ru/2007/11/27/khak_mnogo_zagruzki_kartinok.html

Ссылка на сообщение
Поделиться на других сайтах

ну и пох что в паблике. тот что в паблике с ошибкой. пусть валяется. а с тем кто выложил.... да знаю я его. утрясли проблему. серано рано или поздно это бы произошло. но в приницпе баксов 300-350 я с этого модуля отбил. Вполне...

Ссылка на сообщение
Поделиться на других сайтах

спасибо за реализацию, самому бы лень руки дошли.

есть одно но, не помню после какой версии изображения начали разделяться по папкам.

вобщем для этих версий

$all_inserts .= "insertthumb('".$config['http_home_url']."uploads/posts/".$dataimages."','');"; - неправильно, нужно

$all_inserts .= "insertthumb('".$config['http_home_url']."uploads/posts/".$folder_prefix.$dataimages."','');";

сделал две кнопки, вставить все изображения, вставить все уменьшенные копии. теперь легко оформлять посты с обоями. 1я страница уменьшенные копии, вторая полные изображения.

Ссылка на сообщение
Поделиться на других сайтах

про разделение по папкам. внимательно смотрим как вставляются движком при тыкании по ссылке. и делаем так же.

Ссылка на сообщение
Поделиться на других сайтах

Версия 6.5. вроде сделал как описано, и folder добавил а не работает.

Кнопка есть но файлы не добавляются,

Может кто нибудь выложить здесь код файла для 6.5 Штука то полезная и нужная

Ссылка на сообщение
Поделиться на других сайтах

Для 6,5 для простоты сразу привожу блок ветвления.

if ($action == "quick") {


echo <<<HTML

<form action='' method='post' name="delimages" id="delimages">

<input type="hidden" name="subaction" value="deluploads">

<input type="hidden" name="area" value='{$area}'>

<input type="hidden" name="action" value='{$action}'>

<table width="100%">

	<tr>

		<td bgcolor="#EFEFEF" height="29" style="padding-left:10px;"><div class="navigation">{$lang['images_iln']}</div></td>

	</tr>

</table>

<div class="unterline"></div><div id=table_container_list><table width="100%">

HTML;


  $config_path_image_upload = ROOT_DIR."/uploads/";



  $row = $db->super_query("SELECT images  FROM " . PREFIX . "_images where author = '$author' AND news_id = '$news_id'");

  $listimages = explode("|||", $row['images']);

  $i = 0;

  $this_size_2 = 0;

  $total_size = 0;

$all_inserts = "<script language=\"javascript\" type=\"text/javascript\">function insertimage_s(){";

	if ($row['images'] != "")

	  foreach ($listimages as $dataimages) {

		$i++;


	  $url_image = explode("/", $dataimages);


	  if (count($url_image) == 2) {


		$folder_prefix = $url_image[0]."/";

		$dataimages = $url_image[1];


	  } else {


		$folder_prefix = "";

		$dataimages = $url_image[0];


	  }


		   if (file_exists($config_path_image_upload."posts/".$folder_prefix.$dataimages)) {


			  $this_size =  @filesize($config_path_image_upload."posts/".$folder_prefix.$dataimages);

			  $img_info = @getimagesize($config_path_image_upload."posts/".$folder_prefix.$dataimages);

			  $total_size += $this_size+$this_size_2;


				 if (file_exists($config_path_image_upload."posts/".$folder_prefix."thumbs/".$dataimages)) {


					$this_size_2 =  @filesize($config_path_image_upload."posts/".$folder_prefix."thumbs/".$dataimages);

					$img_info_th = @getimagesize($config_path_image_upload."posts/".$folder_prefix."thumbs/".$dataimages);


					   if (!$wysiwyg)

					   {

						  $thumb_link="<a class=maintitle href=\"java script:insertthumb('".$config['http_home_url']."uploads/posts/".$folder_prefix.$dataimages."','')\">$dataimages</a>";

						  $all_inserts .= "insertthumb('".$config['http_home_url']."uploads/posts/".$folder_prefix.$dataimages."','');";

						}

					   else

					   {

						  $thumb_link="<a class=maintitle href=\"java script:insertthumb('".$config['http_home_url']."uploads/posts/".$folder_prefix.$dataimages."', '".$config['http_home_url']."uploads/posts/".$folder_prefix."thumbs/".$dataimages."')\">$dataimages</a>";

						  $all_inserts .= "insertthumb('".$config['http_home_url']."uploads/posts/".$folder_prefix.$dataimages."', '".$config['http_home_url']."uploads/posts/".$folder_prefix."thumbs/".$dataimages."');";

							}

					   $original_link="[ <a class=maintitle href=\"java script:insertimage('".$config['http_home_url']."uploads/posts/".$folder_prefix.$dataimages."')\">{$lang['img_orig_ins']}</a> ] ";


				 } else {


					$thumb_link="<a class=maintitle href=\"java script:insertimage('".$config['http_home_url']."uploads/posts/".$folder_prefix.$dataimages."')\">$dataimages</a>";

					$all_inserts .="insertimage('".$config['http_home_url']."uploads/posts/".$folder_prefix.$dataimages."');";


					$original_link="";


				 }



echo"<tr>

	  <td style=\"padding:2px;\"> $thumb_link</td>

	  <td width=150>{$original_link}[ <a class=maintitle href=\"java script:ShowBild('". $config['http_home_url'] ."uploads/posts/".$folder_prefix.$dataimages."')\">".$lang['images_view']."</a> ]</td>

	  <td align=right width=60>$img_info[0]x$img_info[1]</td>

	  <td align=right width=10><input type=checkbox name=images[".$folder_prefix.$dataimages."] value=\"".$folder_prefix.$dataimages."\"></td>

	  </tr><tr><td background=\"engine/skins/images/mline.gif\" height=1 colspan=4></td></tr>";

		   }

	  }

$all_inserts .= "}</script>";

  $db->query("SELECT id, name, onserver  FROM " . PREFIX . "_files where author = '$author' AND news_id = '$news_id'");


	 while($row = $db->get_row()){


		 $this_size = formatsize(@filesize(ROOT_DIR."/uploads/files/".$row['onserver']));

		 $file_link = "<a class=maintitle href=\"java script:insertfile('[attachment={$row['id']}]')\">{$row['name']}</a>";


		 echo"<tr>

	  <td style=\"padding:2px;\"> $file_link</td>

	  <td align=center width=40> </td>

	  <td align=right width=70>{$this_size}</td>

	  <td align=right width=10><input type=checkbox name=files[] value=\"{$row['id']}\"></td>

	  </tr><tr><td background=\"engine/skins/images/mline.gif\" height=1 colspan=4></td></tr>";


	 }


   $db->free();


echo "<tr>

	<td colspan=4><div class=\"hr_line\"></div></td>

	</tr>

	<tr>

	<td colspan=2 align=\"right\"><input class=edit type=button value=' Добавить все ' onclick = \"insertimage_s();return false;\">

	<td colspan=2 align=\"right\"><input class=edit type=submit value=' $lang[images_del] '>

	</tr></table></div></form><br>";

echo $all_inserts;

}

Изменено пользователем romen
Ссылка на сообщение
Поделиться на других сайтах

А вставляет картинки как? Как выставлено форматирование? А то у меня все в строку получается и отступы ставить только через код

И вставляет почему то через раз, то есть то нет.

Ну то есть Добавить все нажимаю, картинки в редакторе показываются а в коде и предварительном просмотре нет

Изменено пользователем Aachuya
Ссылка на сообщение
Поделиться на других сайтах

А ещё точнее они в свою папку загружаются (смотрел по фтп), но в редакторе загрузки в разделе:

Файлы загруженные на сервер (общая папка)

не отображаются, как будто скрипт их не видит

CHMOD 777 везде на папках

Ссылка на сообщение
Поделиться на других сайтах

Исправляюсь, проблема в другом.

Перезалил files.php оригинальный а проблема та же осталась. значит дело не в этом.

То есть загрузка картинок происходит, в папку они ложатся, а короткую новость вставляются, отображаются и присутствуют в коде

А в полной новости вставляются, не отображаются в предварительном просмотре и в коде нет

Изменено пользователем Aachuya
Ссылка на сообщение
Поделиться на других сайтах

Да не сложно конечно, но этого же не было?

Я кроме патчей безопасности ничего и поменять не успел в кодах так что думать не на что.

Ссылка на сообщение
Поделиться на других сайтах
  • 1 месяц спустя...
  • 4 месяца спустя...

Присоединяйтесь к обсуждению

Вы можете опубликовать сообщение сейчас, а зарегистрироваться позже. Если у вас есть аккаунт, войдите в него для написания от своего имени.

Гость
Ответить в тему...

×   Вставлено в виде отформатированного текста.   Вставить в виде обычного текста

  Разрешено не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отобразить как ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставить изображения напрямую. Загрузите или вставьте изображения по ссылке.

×
×
  • Создать...