Finar.ru
web.finar.ru
video.finar.ru
Темы для BootstrapNew!

Автоматизация загрузки файлов в NetCat

Описано создание компонента с полем ФАЙЛ, в котором можно автоматически создать до 20 объектов, загрузив их все через единую форму.

Автор: Филипп Казаков, дата: 2010-06-15, просмотров 9015
Тэги

Версия NetCat: 3.0 и старше, редакция любая
Статус: ранняя альфа-версия. Основой функционал работает, однако:

  • приведена инструкция для создания фотогалереи;
  • не сделана проверка на избыточность кода, возможно можно что-то удалить;
  • нет ресайза для картинок;
  • все картинки грузятся в разные объекты, в принципе, наверное, можно сделать и загрузку в один объект с <20 полями;
  • не произведена отладка и тестирование кода, дизайн чисто функциональный.

Скачать: uploadify.rar (скачиваний: 361)
Стоимость внедрения 6000 руб. потому что это довольно сырой рецепт, потребующий существенного доведения до ума. Для фотогалереи у нас разработано лучшее решение.

Этот рецепт можно установить и на ваш сайт. Внедрение производится после 100% предоплаты. Указана стоимость без учета работ по дизайну, каких-либо индивидуальных доработок и при оплате электронными деньгами. Работоспособность гарантирована. Если по каким-либо причинам рецепт не удается установить на ваш сайт, мы возвращаем все деньги.

Быстрее всего заказать внедрение, отправив нам на web@finar.ru письмо с указанием данных произведенного по реквизитам платежа, адреса целевого сайта и доступов в админку и на FTP. Более медленные способы начинаются с письма в свободной форме или с телефонного звонка.

Welcome!

Источники

Лицензия и политика использования

Разработчикам сайтов:

Рецепт распространяется под лицензией Creative Commons Share Alike (BY-SA) .

Вы можете безвозмездно использовать исходные коды рецепта на своих сайтах даже в коммерческих целях, сохраняя авторство за нами (ссылки на нашу студию в исходных кодах). Вы можете распространять рецепт или его модификацию, но только на тех же условиях (т.е. продавать их и модификации нельзя).

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

Если вам понравился наш рецепт и вы хотите поблагодарить нас, вы можете сделать это следующими способами:

  1. доработать и улучшить рецепт и выслать нам обновление;
  2. прислать нам на web@finar.ru ссылку на внедрение (возможно, она появится в списке внедрений);
  3. на странице вашего сайта поставить ссылку на эту страницу;
  4. поблагодарить нас рублем, переслав любую сумму на наши электронные счета.

Есть идеи по сотрудничеству? Пишите: web@finar.ru

Владельцам сайтов:

Этот рецепт можно установить и на ваш сайт. Внедрение производится после 100% предоплаты. Указана стоимость без учета работ по дизайну, каких-либо индивидуальных доработок и при оплате электронными деньгами. Работоспособность гарантирована. Если по каким-либо причинам рецепт не удается установить на ваш сайт, мы возвращаем все деньги.

Быстрее всего заказать внедрение, отправив нам на web@finar.ru письмо с указанием данных произведенного по реквизитам платежа, адреса целевого сайта и доступов в админку и на FTP. Более медленные способы начинаются с письма в свободной форме или с телефонного звонка.

Welcome!


Внимание: описание и код рецепта на этой странице могут быть актуальнее архива для скачивания!

К сожалению, пока мы не имеем возможности поддерживать актуальные версии готовых к установке архивов рецептов. Архивы обновляются "при случае", т.е. при существенных доработках, дата обновления прописана в имени архива.

Компонент позволяет пакетно создавать объекты с полем файл и загружать в них файлы. Может пригодиться для каких-то специфических задач, ведь для фотогалереи у нас есть новый рецепт Фотогалерея для NetCat с пакетной загрузкой файлов.

Процесс внедрения:

1. Разархивируем содержимое uplodify.rar в /images/js/uplodify/
2. Нижеследующий код вставляем в макет дизайна (проверить, возможно он там не нужен):

<!--этот код включает поддержку фотогалереи uplodify-->
<link type='text/css' rel='stylesheet' href='$SUB_FOLDER/images/js/uplodify/default.css' />
<link type='text/css' rel='stylesheet' href='$SUB_FOLDER/images/js/uplodify/uploadify.css' />
<script type='text/javascript' src='$SUB_FOLDER/images/js/uplodify/jquery.min.js'></script>
<script type='text/javascript' src='$SUB_FOLDER/images/js/uplodify/swfobject.js'></script>
<script type='text/javascript' src='$SUB_FOLDER/images/js/uplodify/jquery.uploadify.v2.1.0.min.js'></script>
<!--/этот код включает поддержку фотогалереи uplodify-->

3. Создаем компонент с полем Файл. Разрабатываем;
4. Заходим в раздел Альтернативная Форма Добавления, генерим форму. Вырезаем ее всю в буфер, вместо нее вставляем следующий код:

".opt(!$isFlash,"

ЗДЕСЬ_КОД_ПЕРВОНАЧАЛЬНО_СГЕНЕРИРОВАННОЙ_ФОРМЫ
ЕГО_НУЖНО_КАК-ТО_ПОПРАВИТЬ
ВОЗМОЖНО_ПОЛНОСТЬЮ_УДАЛИТЬ

")."

".opt($isFlash && $warnText,iconv("Windows-1251", "UTF-8", "Ошибка: $warnText"))."

<!--этот код включает поддержку фотогалереи uplodify-->
<link type='text/css' rel='stylesheet' href='$SUB_FOLDER/images/js/uplodify/default.css' />
<link type='text/css' rel='stylesheet' href='$SUB_FOLDER/images/js/uplodify/uploadify.css' />
<script type='text/javascript' src='$SUB_FOLDER/images/js/uplodify/jquery.min.js'></script>
<script type='text/javascript' src='$SUB_FOLDER/images/js/uplodify/swfobject.js'></script>
<script type='text/javascript' src='$SUB_FOLDER/images/js/uplodify/jquery.uploadify.v2.1.0.min.js'></script>
<!--/этот код включает поддержку фотогалереи uplodify-->

<input type='file' name='uploadify' id='uploadify' style='display:none;'/>
<a href=\"javascript:$('#uploadify').uploadifyUpload();\" class='size13'>ЗАГРУЗИТЬ ВЫБРАННЫЕ ФАЙЛЫ</a> |
<a href=\"javascript:$('#uploadify').uploadifyClearQueue();\">очистить список</a>
<div style='display:none;color:red;' class='size12' id='uplodify-errors'></div>

<script type='text/javascript'>

$(document).ready(function() {

$('#uploadify').uploadify({

'uploader': '/images/js/uplodify/uploadify.swf',

'script': '/netcat/add.php',

'folder': '/images/js/uplodify/uploads-folder',

'cancelImg': '/images/js/uplodify/cancel.png',

'multi': true,

'queueSizeLimit': 20,

'fileDesc': 'Image Files',

'fileExt': '*.jpg;*.jpeg;*.gif;*.png',

'sizeLimit': '4000000',

'fileDataName': 'f_Photo',

'scriptData': {'isFlash':'1',

'cc':'".$cc."',

'sub':'".$sub."',

'catalogue':'".$catalogue."',

'curPos':'',

'posting':'1',

'isNaked':'1',

'PHP_AUTH_SID':'".$PHP_AUTH_SID."'},

onError: function (a, b, c, d) {

if (d.status == 404)

alert('Could not find upload script. Use a path relative to: '+'<?= getcwd() ?>');

else if (d.type === \"HTTP\")

alert('error '+d.type+\": \"+d.status);

else if (d.type ===\"File Size\")

alert(c.name+' '+d.type+' Limit: '+Math.round(d.sizeLimit/1024)+'KB');

else

alert('error '+d.type+\": \"+d.text);

},

onComplete: function(a, b, c, d, e){

if (d != '1') {

$('#uplodify-errors').css('display', 'block' );

$('#uplodify-errors').append('<br />' + d);

}

},

onAllComplete: function(a, b){

document.getElementById('foto-list').contentDocument.location.reload();

},



onSelect: function(a, b, c){

$('#uplodify-errors').css('display', 'none' );

$('#uplodify-errors').empty();

}

});

});

</script>

5. В действие после добавления объекта добавляем:

";

if ($isFlash) echo "
1";

else echo "
".opt_case(!$admin_mode,"Файл добавлен.","Объект добавлен.<br>

<a href=/netcat/?catalogue=$catalogue&#8834;=$sub>Вернуться в раздел</a>")."";

echo "

Заметки:

  • в настройках поля компонента тип файла не нужно указывать. Т.е. 4000000:image/* - неправильно, правильно 4000000.
  • исходник основного скрипта находится на http://www.uploadify.com/  , в uplodify.rar все выцепленные из него файлы, необходимые для работы, версии на момент изучения (2.1.0), а также файл jquery.min.js (ver. 1.3.2)
  • ограничение на размер фоток - 1600х1200



Оставить комментарий 


Ваше имя:
->