Установка, настройки и управление rtorrent в Ubuntu

 Ubuntu  Комментарии к записи Установка, настройки и управление rtorrent в Ubuntu отключены
Апр 202011
 

Отсель http://ubuntulyb.blogspot.com/2010/10/rtorrent-ubuntu.html

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

Установка, настройка, управление, все в консоли

sudo apt-get install rtorrent

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

mkdir rtorrent && cd ~/rtorrent && mkdir .rsession url films music prochee && cd ~/rtorrent/url && mkdir films music prochee

Теперь создается файл в домашнем каталоге

nano .rtorrent.rc

с таким содержанием

# This is an example resource file for rTorrent. Copy to
# ~/.rtorrent.rc and enable/modify the options as needed. Remember to
# uncomment the options you wish to enable.

# Количество пиров
#min_peers = 40
max_peers = 30

# Количество сидов
#min_peers_seed = 10
max_peers_seed = 30

# Количество закаек
max_uploads = 50

# Скорость закачки и раздачи
#download_rate = 0
upload_rate = 50

# Директория по умолчанию для закачек
directory = /rtorrent

# Каталог для хранения сессии
session = ~/rtorrent/.rsession

#сохранять сессию
session_save = yes

# Порт загрузки-раздачи
port_range = 6891-6891

# Случайный порт
port_random = no

# Проверка хеша
check_hash = yes

# Обращения к треккеру
use_udp_trackers = yes

# Шифрование
#
encryption = require,allow_incoming,enable_retry,prefer_plaintext 

enable_trackers = no

# Вторая часть

schedule = watch_directory_1,5,5,»load_start=~/rtorrent/url/films/*.torrent, d.set_directory=~/rtorrent/films/»
schedule = watch_directory_2,5,5,»load_start=~/rtorrent/url/music/*.torrent, d.set_directory=~/rtorrent/music/»
schedule = watch_directory_3,5,5,»load_start=~/rtorrent/url/prochee/*.torrent, d.set_directory=~/rtorrent/prochee/»

Настройка первой части конфига описана полно где и информации полно, вторая часть это директории для загрузки, при старте программа начинает сканировать каталог url и вложенные в него каталоги, при появлении торент файлов в зависимости от того где он расположен ~/rtorrent/url/films то он начинает закачку, по завершении он перемещает файл в ~/rtorrent/films

Вот в общем все, старт программы в терминале

rtorrent

и вперед

клавиши управления 

стрелками верх вниз перемещение вертикально,  вправо влево горизонтально остальные эти
Ctrl-s — начать закачку выбранного торрента,
Ctrl-d — остановить закачку торрента, или удалить остановленный торрент,
Ctrl-f — показать подробную информацию о торренте (для возврата назад — стрелка влево),
Ctrl-q — выход из программы.

VaMShop шаблоны для ответов клиентам

 VaM shop  Комментарии к записи VaMShop шаблоны для ответов клиентам отключены
Апр 112011
 

В admin/orders.php за строкой 1018

<td><?php echo vam_draw_textarea_field(‘comments’, ‘soft’, ’60’, ‘5’); ?></td>

Вставляем

<td><SMALL><SMALL>Для копирования в ответы<br>
<SMALL><UL><LI>Собранное можно забрать в любой момент на любой кассе, сказав, что нужен инет заказ</LI>
<LI>заказ(ы)  на любой кассе после сообщения о готовности<br>
Состояние заказа(ов) можно смотреть http://www.nce.ru/zakaz.htm</LI>
<LI>это наши внутренние номера Вашего заказа.</LI>
<LI>Состояние заказа до момента комплектации и отправки можно смотреть http://www.nce.ru/zakaz.htm<br>
После отправки Вам будет сообщен номер почтового отправления.</LI>
<LI>Не забудте сообщить о получении.<br>
О местоположении вашего заказа можно узнать у на сайте по ссылке http://www.gdeposylka.ru<br>
Номер отправления:</LI>
</UL></SMALL></SMALL></SMALL></td>

Примеры команд Linux

 Ubuntu  Комментарии к записи Примеры команд Linux отключены
Апр 062011
 
Команда Описание
apropos whatis Показать команды соответствующие строке.
man -t man | ps2pdf — > man.pdf Создать pdf версию страницы мануала (man)
which command Показать полный путь к файлу команды
time command Выполнить команду и отобразить время выполнения
time cat Запустить секундомер. Ctrl-d чтобы остановить его.
nice info Запустить команду с низким приоритетом (”info” reader в данном случае)
renice 19 -p $$ Установить shell (скрипту) низкий приоритет. Используется для неинтерактивных задач.
cd — Перейти в предыдущую директорию
cd Перейти в $HOME директорию
(cd dir && command) Перейти в директорию, выполнить комманду (command) и вернуться в текущую директорию
pushd . Положить текущую директорию в стек, чтобы позже вернуться к ней с помощью popd
alias l=’ls -l –color=auto’ Быстрое отображение содержимого директории
ls -lrt Список файлов по дате.
ls /usr/bin | pr -T9 -W$COLUMNS Напечатать в 9 столбцов в ширину терминала
find -name ‘*.[ch]‘ | xargs grep -E ‘expr’ Искать ‘expr’ в текущей директории и в нижестоящих директориях.
find -type f -print0 | xargs -r0 grep -F ‘example’ Поиск всех файлов по ‘example’ в текущей директории и ниже
find -type f -print0 | xargs -r0 grep -F ‘example’ Поиск всех файлов по ‘example’ в текущей директории
find -maxdepth 1 -type d | while read dir; do echo $dir; echo cmd2; done Обработать каждый элемент с несколькими командами (в цикле while)
find -type f ! -perm -444 Найти файлы, которые не являются видимыми для всех (полезно для веб сайта)
find -type d ! -perm -111 Найти директории не доступные для всех (полезно для web сайтов)
locate -r ‘file[^/]*\.txt’ Искать в кешированном индексе по именам.
look reference Быстрый поиск (сортированный) словаря по префиксу
grep -color reference /usr/share/dict/words Подсвечивание мест где регулярное выражение появляется в словаре
gpg -c file Зашифровать файл
gpg file.gpg Расшифровать файл
tar -c dir/ | bzip2 > dir.tar.bz2 Заархивировать директорию (папку) dir/
bzip2 -dc dir.tar.bz2 | tar -x Разархивировать архив (используйте gzip вместо bzip2 для файлов tar.gz)
tar -c dir/ | gzip | gpg -c | ssh user@remote ‘dd of=dir.tar.gz.gpg’ Создать зашифрованный архив директории (папки) dir/ на удаленном компьютере
find dir/ -name ‘*.txt’ | tar -c –files-from=- | bzip2 > dir_txt.tar.bz2 Создать архив для папки dir/ и всех вложенных папок
find dir/ -name ‘*.txt’ | xargs cp -a –target-directory=dir_txt/ –parents Создать копию папки dir/ с вложенными папками
( tar -c /dir/to/copy ) | ( cd /where/to/ && tar -x -p ) Скопировать (с правами доступа) папку copy/ в папку /where/to/
( cd /dir/to/copy && tar -c . ) | ( cd /where/to/ && tar -x -p ) Скопировать (с правами доступа) содержимое папки copy/ в /where/to
( tar -c /dir/to/copy ) | ssh -C user@remote ‘cd /where/to/ && tar -x -p’ Скопировать (с правами доступа) папку copy/ на удаленный компьютер remote:/where/to
dd bs=1M if=/dev/sda | gzip | ssh user@remote ‘dd of=sda.gz’ Сделать резервную копию (сбекапить) жесткого диска и послать ее на удаленный компьютер
rsync -P rsync://rsync.server.com/path/to/file file Только отобразить различия. Делайте много раз чтобы проверить прошли ли нормально закачки
rsync –bwlimit=1000 fromfile tofile Скопировать локально с предельной скоростью. Это приятно для I/O
rsync -az -e ssh –delete ~/public_html/ remote.com:’~/public_html’ Зеркальный веб сайт (используется шифрование и дешифрование)
rsync -auz -e ssh remote:/dir/ . && rsync -auz -e ssh . remote:/dir/ Синхронизировать текушую папку с папкой на удаленном компьютере
ssh $USER@$HOST command Запустить команду command на удаленном хосте $HOST от имени пользователя $USER (команда по умолчанию = shell)
ssh -f -Y $USER@$HOSTNAME xeyes Запустить GUI команду на удаленном хосте $HOST от имени пользователя $USER
scp -p -r $USER@$HOST: file dir/ Скопировать папку dir/ с правами доступа в домашнию папку пользователя $USER на хосте $HOST
ssh -g -L 8080:localhost:80 root@$HOST Перенаправить соединения к $HOSTNAME:8080 наружу к $HOST:80
ssh -R 1434:imap:143 root@$HOST Перенаправить соединения от $HOST:1434 к внутр. imap:143
(cd cli && wget -nd -pHEKk http://www.pixelbeat.org/cmdline.html) Сохранить веб страницу (как она открывается локально) в текущую директорию
wget -c http://www.example.com/large.file Продолжить скачивание частично скаченного файла
wget -r -nd -np -l1 -A ‘*.jpg’ http://www.example.com/dir/ Скачать множество файлов в текущую директорию
wget ftp://remote/file[1-9].iso/ Ftp непосредственная поддержка globbing
wget -q -O- http://www.pixelbeat.org/timeline.html | grep ‘a href’ | head Отображать вывод напрямую (на экран)
echo ‘wget url’ | at 01:00 Скачать url в 01:00 в текущую директорию
wget –limit-rate=20k url Сделать закачку с уменьшенной скоростью (ограничить скорость до 20 КB/s в этом примере)
wget -nv –spider –force-html -i bookmarks.html Проверить ссылки в файле
wget –mirror http://www.example.com/

Оперативно обновлять локальную копию сайта (удобно использовать с cron)

ethtool eth0 Отобразить статус сетевого устройства (интерфейса) eth0
ethtool –change eth0 autoneg off speed 100 duplex full Вручную установить скорость сетевого интерфейса (устройства)
iwconfig eth1 Отобразить статус беспроводного интерфейса (устройства) eth1
iwconfig eth1 rate 1Mb/s fixed Вручную установить скорость беспроводного интерфейса (устройства)
iwlist scan Список беспроводных сетей в радиусе действия
ip link show Список сетевых интерфейсов (устройств)
ip link set dev eth0 name wan Переименовать интерфейс (устройство) eth0 в wan
ip link set dev eth0 up Включить интерфейс eth0 (чтобы выключить — down)
ip addr show Список ip адресов интерфейсов
ip addr add 1.2.3.4/24 brd + dev eth0 Добавить (или удалить) ip адрес и маску (255.255.255.0)
ip route show Вывести таблицу маршрутизации
ip route add default via 1.2.3.254 Установить 1.2.3.254 в качестве шлюза по умолчанию
tc qdisc add dev lo root handle 1:0 netem delay 20msec Добавить 20мс латентность к устройству loopback (для тестирования)
tc qdisc del dev lo root Убрать латентность добавленную выше
host pixelbeat.org Поиск ДНС ip адреса по имени хоста или наоборот
hostname -i Поиск локального ip адреса (идентично host ‘hostname’)
whois pixelbeat.org Поиск whois информации по имени хоста или ip адресу
netstat -tupl Список интернет сервисов в системе
netstat -tup Список активных соединений к системе (от системы)
smbtree Найти windows компьютеры в сети. См. также findsmb
nmblookup -A 1.2.3.4 Найти windows (netbios) имя, ассоциируемое с ip адресом
smbclient -L windows_box Список shares на windows компьютере или samba сервере
mount -t smbfs -o fmask=666,guest //windows_box/share /mnt/share Смонтировать windows share (папку с открытым доступом)
echo ‘message’ | smbclient -M windows_box Послать popup сообщение на windows комьютер (отключено по умолчанию в XP sp2)
sed ’s/string1/string2/g’ Заменить строку string1 строкой string2
sed ’s/\(.*\)1/\12/g’ Изменить строку anystring1 на anystring2
sed ‘/ *#/d; /^ *$/d’ Убрать комментарии и пустые строки
sed ‘:a; /\\$/N; s/\\\n//; ta’ Соединить строки (линии) с предшествующим \
sed ’s/[ \t]*$//’ Удалить предшествующие пробелы с строк
sed ’s/\([\\`\\”$\\\\]\)/\\\1/g’ Заескейпить активные метасимволы оболочки двумя ковычками
seq 10 | sed “s/^/ /; s/ *\(.\{7,\}\)/\1/” Выровнять числа по правой границе
sed -n ‘1000p;1000q Напечатать 1000-ную строку
sed -n ‘10,20p;20q Напечатать строки с 10 по 20-ую
sed -n ’s/.*<title>\(.*\)<\/title>.*/\1/ip;T;q Получить title из HTML страницы
sort -t. -k1,1n -k2,2n -k3,3n -k4,4n Отсортировать IPV4 ip адреса
echo ‘Test’ | tr ‘[:lower:]‘ ‘[:upper:]‘ Перевести из одного регистра в другой
tr -dc ‘[:print:]‘ < /dev/urandom Отфильтровать не печатаемые символы
history | wc -l Посчитать число строк
sort file1 file2 | uniq Объединение неотсортированных файлов
sort file1 file2 | uniq -d Пересечение неотсортированных файлов
sort file1 file1 file2 | uniq -u Разность неотсортированных файлов
sort file1 file2 | uniq -u Симметрическая разность неотсортированных файлов
join -a1 -a2 file1 file2 Объединение отсортированных файлов
join file1 file2 Пересечение отсортированных файлов
join -v2 file1 file2 Разность отсортированных файлов
join -v1 -v2 file1 file2 Симметрическая разность отсортированных файлов
echo ‘(1 + sqrt(5))/2′ | bc -l Простая математика (Вычисление числа φ).
echo ‘pad=20; min=64; (100*10^6)/((pad+min)*8)’ | bc Более сложная (целая). Этот пример показывает максимум FastE packet rate
echo ‘pad=20; min=64; print (100E6)/((pad+min)*8)’ | python Питон занимается математическими вычислениями
echo ‘pad=20; plot [64:1518] (100*10**6)/((pad+x)*8)’ | gnuplot -persist Напечатать FastE packet rate против packet size
echo ‘obase=16; ibase=10; 64206′ | bc Конвертация систем счисления (десятичную в шестнадцатиричную)
echo $((0×2dec)) Конвертация систем счисления (шестнадцатиричную в десятичную)((арифметическое расширение shell-а))
units -t ‘100m/9.69s’ ‘miles/hour’ Unit конвертация (метрической системы в имперскую)
units -t ‘500GB’ ‘GiB’ Unit конвертация (SI в IEC префиксы)
units -t ‘1 googol’ Поиск определения
seq 100 | (tr ‘\n’ +; echo 0) | bc Добавить столбец чисел.
cal -3 Отобразить календарь
cal 9 1752 Отобразить календарь для конкретного месяца года
date -d fri Какая дата у текущей пятницы.
[ $(date -d “tomorrow” +%d) = “01″ ] || exit Завершить выполнение скрипта, если только сейчас не последний день месяца
date –date=’25 Dec’ +%A Какого числа будет рождество в текущем году
date –date=’@2147483647′ Перевести секунды прошедшие с epoch (1970-01-01 UTC) в дату
TZ=’:America/Los_Angeles’ date Сколько времени сейчас на Западном побережье США (используйте tzselect чтобы найти TZ)
echo “mail -s ‘get the train’ P@draigBrady.com < /dev/null” | at 17:45 Напоминать по Email
echo “DISPLAY=$DISPLAY xmessage cooker” | at “NOW + 30 minutes” Напоминать в Popup окне
printf “%’d\n” 1234 Напечатать четырехзначное число сгруппированное соответственно локали
BLOCK_SIZE=\’1 ls -l Сделать чтобы ls группировала тысячи соответственно локали
echo “I live in `locale territory`” Получить информацию из базы данных локали
LANG=en_IE.utf8 locale int_prefix Искать информацию о локали для конкретной страны
locale | cut -d= -f1 | xargs locale -kc | less Список полей, доступных в базе данных локали
recode -l | less Отобразить доступные переходы (по 1 алиасу на каждой строке)
recode windows-1252.. file_to_change.txt Перевести Windows “ansi” в локальную (текущую) кодировку (auto делает CRFL перевод)
recode utf-8/CRLF.. file_to_change.txt Перевести windows utf8 в локальную (текущую) кодирувку
recode iso-8859-15..utf8 file_to_change.txt Перевести из кодировки latin9 (западная европейская) в utf8
recode ../b64 < file.txt > file.b64 Кодирование base64
recode /qp.. < file.txt > file.qp Раскодирование с кавычками
recode ..HTML < file.txt > file.html Перевести text в HTML
recode -lf windows-1252 | grep euro Поиск в таблице символов
echo -n 0×80 | recode latin-9/x1..dump Показать символ в кодировке latin9 по коду
echo -n 0×20AC | recode ucs-2/x2..latin-9/x Показать latin-9 encoding
echo -n 0×20AC | recode ucs-2/x2..utf-8/x Показать utf-8 encoding
gzip < /dev/cdrom > cdrom.iso.gz Сохранить копию CD с данными
mkisofs -V LABEL -r dir | gzip > cdrom.iso.gz Создать образ CD диска из содержимого директории
mount -o loop cdrom.iso /mnt/dir Смонтировать CD образ на /mnt/dir (только для чтения)
cdrecord -v dev=/dev/cdrom blank=fast Очистить CDRW
gzip -dc cdrom.iso.gz | cdrecord -v dev=/dev/cdrom — Записать CD образ (используйте dev=ATAPI -scanbus для выбора устройства записи)
cdparanoia -B Сохранить аудио треки с CD в wav файлы (сохранятся в текущую папку)
cdrecord -v dev=/dev/cdrom -audio *.wav Создать аудио диск (audio CD) из всех wav файлов, находящихся в текущей директории (см. также cdrdao)
oggenc –tracknum=’track’ track.cdda.wav -o ‘track.ogg’ Создать ogg файл из wav файла
ls -lSr Список файлов, отсортированных по размеру (файл с наибольшим размером — последний)
du -s * | sort -k1,1rn | head Показать пользователей в текущей папке с наибольшим объемом используемых данных.
df -h Показать свободное место на смонтированных файловых системах
df -i Показать свободные индексные дескрипторы на смонтированных файловых системах
fdisk -l Показать размеры разделов дисков и типы (запускается от root-а)
rpm -q -a –qf ‘%10{SIZE}\t%{NAME}\n’ | sort -k1,1n Список всех пакетов с размером дистрибутивов (размер — в Байтах)
dpkg-query -W -f=’${Installed-Size;10}\t${Package}\n’ | sort -k1,1n Список всех пакетов с размерами установки (размер — в килобайтах) для debian дистрибутивов
dd bs=1 seek=2TB if=/dev/null of=ext3.test Создать большой тестовый файл.
tail -f /var/log/messages Мониториг сообщений в log файле
strace -c ls >/dev/null Сумма/профиль системных вызовов, сделанных командой
strace -f -e open ls >/dev/null Список системных вызовов, сделанных командой
ltrace -f -e getenv ls >/dev/null Список библиотечных вызовов, сделанных командой
lsof -p $$ Список путей, которые открывал процесс
lsof ~ Список процессов, которые имеют открытые пути
tcpdump not port 22 Отобразить сетевой (кроме ssh) траффик.
ps -e -o pid,args –forest Иерархический список процессов
ps -e -o pcpu,cpu,nice,state,cputime,args –sort pcpu | sed ‘/^ 0.0 /d’ Список процессов с % использования процессора
ps -e -orss=,args= | sort -b -k1,1n | pr -TW$COLUMN Список процессов с используемой ими памятью
ps -C firefox-bin -L -o pid,tid,pcpu,state Список всех потоков для конкретного процесса
ps -p 1,2 Список информации о процессах с конкретными IDs (идентификаторами)
last reboot Показать историю ребутов системы
free -m Показать количество оставшейся оперативной памяти (-m отображает в мегабайтах)
watch -n.1 ‘cat /proc/interrupts’ Наблюдать последовательно за изменяющимися данными
uname -a Показать версию ядра и системную архитектуру
head -n1 /etc/issue Показать название и версию дистрибутива (операционной системы)
cat /proc/partitions Показать все разделы, зарегистрированные в системе
grep MemTotal /proc/meminfo Показать всю оперативную память, которую видит система
grep “model name” /proc/cpuinfo Показать информацию о процессоре(ах) (CPU)
lspci -tv Показать информацию о шине PCI
lsusb -tv Показать информацию о USB
mount | column -t Список смонтированных файловых систем в системе (херархический вывод)
dmidecode -q | less Отобразить информацию о SMBIOS/DMI
smartctl -A /dev/sda | grep Power_On_Hours Какой промежуток времени этот диск (система) был включен (работал)
hdparm -i /dev/sda Показать информацию о диске sda
hdparm -tT /dev/sda Протестировать скорость чтения на диске sda
badblocks -s /dev/sda Протестировать на нечитаемые блоки диск sda
readline Редактор строки, используемый bash, python, gnuplot, …
screen Виртуальные терминалы с возможностями открепления, …
mc Мощный файл менеджер, которые может просматривать rpm, tar, ftp, ssh, …
qnuplot Интерактивная (скриптовая) графика
links Текстовый веб браузер
xdg-open http://www.pixelbeat.org/ Открыть файл (или url) с помощью зарегистрированного для него desktop приложения
alias hd=’od -Ax -tx1z -v’ Ручной 16-ричный дамп (пример использования: hd /proc/self/cmdline | less)
alias realpath=’readlink -f’ Канонический путь (пример использования: realpath ~/../$USER)
set | grep $USER Поиск в текущем окружении
touch -c -t 0304050607 file Установить дату для файла (YYMMDDhhmm)
python -c “import SimpleHTTPServer as ws; ws.test()” Отобразить дерево текущего каталога по адресу http://$HOSTNAME:8000/
Апр 062011
 

Отсель http://www.molodezky.pp.ua/2010/03/23/delaem-pole-otchestvo-pri-registracii-obyazatelnym-vamsh

Сделаем так, чтобы при регистрации поле «Отчество» заполнялось в обязательном порядке.

Для это проделаем следующее:

  1. Открываем файлы create_account.php, create_guest_account.php, checkout_alternative.php, checkout_payment_address.php меняем:
    vam_draw_hidden_field('required', 'gender,firstname,lastname,
    dob,email,address,postcode,city,state,country,telephone,pass,
    confirmation', 'id="required"'));

    на

    vam_draw_hidden_field('required', 'gender,firstname,secondname,lastname,
    dob,email,address,postcode,city,state,country,telephone,pass,
    confirmation', 'id="required"'));
  2. Открываем в папке modules текущего шаблона templates/ваш шаблон/module/ файлы create_account.html, create_guest_account.html, checkout_alternative.html и меняем:
    {#text_secondname#}

    на

    <label for="secondname" title="{$ENTRY_FIRST_NAME_ERROR}">{#text_secondname#}</label>
  3. а также после {$INPUT_SECONDNAME} добавляем

    <span>*</span>
  4. В includes/form_check.js.php после:
    if(f.name=='firstname' &#038;&#038; f.value.length<<?php echo ENTRY_FIRST_NAME_MIN_LENGTH; ?> &#038;&#038; f.id!='email'){cf_adderr(f)}

    добавляем

    if(f.name=='secondname' &#038;&#038; f.value.length<<?php echo ENTRY_FIRST_NAME_MIN_LENGTH; ?> &#038;&#038; f.id!='email'){cf_adderr(f)}

Вот и всё.

Вставка javascript/css в шаблон VaMshop

 VaM shop  Комментарии к записи Вставка javascript/css в шаблон VaMshop отключены
Апр 052011
 

Если непосредственно вставить предоставленный вам код вы получите ошибку. В интернет магазине VamShop и прочих ветвлениях оскоммерц (xtc,shopos…) используется шаблонизатор Smarty.

Для правильного понимания js/css кода этим шаблонизатором ваш код нужно размещать внутри тегов smarty
{literal}{/literal}

Запрещаем копирование контента (VAMshop)

 VaM shop  Комментарии к записи Запрещаем копирование контента (VAMshop) отключены
Апр 052011
 

Отсель http://www.molodezky.pp.ua/2010/10/26/zapreshhaem-kopirovanie-kontenta-vamshop/

откроем откроем index.html нашего шаблона и заменим метку контента {$main_content} на вот такую конструкцию:

 <div id="noselect">{$main_content}</div>
 
{literal}<script type="text/javascript">
function disableSelection(target){
if (typeof target.onselectstart!="undefined")
    target.onselectstart=function(){return false}
else if (typeof target.style.MozUserSelect!="undefined")
    target.style.MozUserSelect="none"
else
    target.onmousedown=function(){return false}
target.style.cursor = "default"
}
 
if (document.getElementById("noselect")) {
disableSelection(document.getElementById("noselect"));
}
</script>{/literal}

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

Апр 052011
 

Отсель http://www.molodezky.pp.ua/2010/05/22/dobavlyaem-v-listing-tovara-pole-vvoda-kolichestva-vamshop/
Делается это следующим образом:
В файле нашего шаблона tempaltes/ваш шаблон/modules/product_listing/product_listing_columns.html
или product_listing_list.html вместо метки кнопки «Купить» {$module_data.PRODUCTS_BUTTON_BUY_NOW}
ставим следующую форму:
Continue reading »

от Меня это было…

 от Меня это было…  Вера  Комментарии к записи от Меня это было… отключены
Апр 032011
 
«Думал ли ты когда — либо, что все, касающееся тебя, касается и Меня?
Ибо касающееся тебя касается зеницы ока Моего.
Ты дорог в очах Моих, многоценен и Я возлюбил тебя; и поэтому для Меня составляет особую отраду воспитывать тебя.
Когда искушения восстанут на тебя, и враг придет как река, Я хочу чтобы ты знал, что от Меня это было. Что твоя немощь нуждается в Моей силе и что безопасность твоя заключается в том, чтобы ДАТЬ МНЕ возможность бороться за тебя.
Находишься ли ты в трудных обстоятельствах, среди людей, которые тебя не понимают, которые не считаются с тем, что тебе приятно, которые тебя отстраняют, — от Меня это было.
Я — Бог твой, располагающий обстоятельствами.
Ты не случайно оказался на твоем месте, это то самое место, которое Я тебе предназначил.
Не просил ли ты, чтобы Я научил тебя смирению? Так вот смотри, — Я поставил тебя как раз в ту среду, в ту школу, где этот урок изучается. Твоя среда и живущие с тобою только выполняют Мою волю.
Находишься ли ты в денежном затруднении, тебе трудно сводить концы с концами, знай, что от Меня это было.
Ибо Я располагаю твоими материальными средствами. Я хочу, чтобы Ты прибегал ко Мне и был бы в зависимости от Меня. Мои запасы неистощимы. Я хочу, чтобы ты убеждался в верности Моей и Моих обетований (обещаний).
Да не будет того, чтобы тебе могли сказать о нужде твоей: «Вы не верили Господу Богу вашему» (Втор.8,12-13).
Переживаешь ли ты ночь скорбей, или ты разлучен с близкими и дорогими сердцу твоему, — от Меня это было.
Я — муж скорбей, изведавший болезни, Я допустил это, чтобы ты обратился ко Мне и во Мне мог найти вечное утешение.
Обманулся ли ты в друге твоем, в ком — нибудь, кому открыл сердце свое, — от Меня это было. Я допустил этому разочарованию коснуться тебя, чтобы ты познал, что лучший друг твой есть Господь.
Я хочу, чтобы ты все приносил ко Мне и говорил Мне.
Наклеветал ли кто на тебя, — предоставь это Мне и прильни ближе ко Мне, — убежищу твоему, душою твоею, чтобы укрыться от «пререкания языков».
Я изведу, как свет, правду твою и судьбу твою, яко полудне (Пс.36,6).
Разрушились ли планы твои, поник ли ты душою и устал — от Меня это было.
Ты создавал себе свои планы и принес их Мне, чтобы я благословил их.
Но Я хочу, чтобы ты предоставил Мне распоряжаться обстоятельствами твоей жизни, и тогда ответственность за все будет на Мне, ибо это слишком тяжело для тебя, и ты один не можешь справиться с ними, так как ты только орудие, а не действующее лицо.
Посетили ли тебя неожиданные неудачи житейские или уныние охватило сердце твое, знай — от Меня это было. Ибо Я хочу, чтобы сердце твое и душа твоя были всегда пламенеющими пред очами Моими и побеждали всякое малодушие.
Не получаешь ли ты долго известий от близких и дорогих тебе людей и по малодушию твоему впадаешь в отчаяние и ропот, знай — от Меня это было.
Ибо этим томлением твоего духа Я испытываю крепость твоей веры в непреложность обетования и силу дерзновения твоей молитвы о сих близких тебе. Ибо не ты ли вручил их Покрову Моей Пречистой Матери; не ты ли
некогда возлагал заботу о них Моей промыслительной любви?
Посетила ли тебя тяжкая болезнь, временная или неисцелимая, и ты оказался прикованным к одру своему — от Меня это было.
Ибо Я хочу, чтобы ты познал Меня еще глубже в немощах своих телесных и не роптал бы за сие ниспосланное тебе испытание; не старался проникнуть в Мои планы спасения душ человеческих различными путями, но безропотно и покорно преклонил бы выю (шею) твою под благость Мою к тебе.
Мечтал ли ты сотворить какое — либо особое дело для Меня и вместо того слег на одр болезни и немощи — от Меня это было.
Ибо тогда ты был бы погружен в дела свои и Я не мог бы привлечь мысли твои к Себе, а Я хочу научить тебя самым глубоким мыслям; что ты на службе у Меня.
Я хочу научить тебя сознавать что ты — ничто. Некоторые из лучших соработников Моих суть те, которые отрезаны от живой деятельности, чтобы им научиться владеть оружием непрестанной молитвы.
Призван ли ты неожиданно занять трудное и ответственное положение, иди полагаясь на Меня.
Я вверяю тебе эти трудности, ибо за это благословит тебя Господь Бог твой во всех делах твоих, всем что будет делаться твоими руками.
В сей день даю в руку твою этот сосуд священного елея. Пользуйся им свободно,дитя Мое.
Каждое возникающее затруднение, каждое оскорбляющее тебя слово, каждая помеха в твоей работе, которая могла бы вызвать чувство досады и разачарования, каждое откровение твоей немощи и неспособности пусть будут помазаны этим елеем — от Меня это было.
Помни, что всякая помеха есть Божие наставление, и потому положи в сердце свое слово, которое Я объявил тебе в сей день, — от Меня это было.
Храни их, знай и помни — всегда, что всякое жало притупится, когда ты научишься во всем видеть Меня.
Все послано Мною для совершенствования души твоей.»
(Этот текст, написанный в стихотворной форме, преподобный Серафим Вырицкий адресовал одному из своих духовных чад; епископу, находящемуся в заключении).

Выводим вес в граммах (VAMshop)

 VaM shop  Комментарии к записи Выводим вес в граммах (VAMshop) отключены
Апр 032011
 

Отсель  http://www.molodezky.pp.ua/2010/11/22/vyvodim-ves-v-grammax-vamshop/

В VAMshop вес продукта вносится в килограммах. Соответственно, и выводится он в листинге или на карточке товара в кг. На основе этого веса может рассчитываться стоимость доставки, поэтому изменять произвольно единицы веса нельзя.
Но для товара с малым весом логично выводить вес в граммах. Для этого добавим еще одну переменную:

    1. В файле includes/classes/product.php после:

      'PRODUCTS_WEIGHT'=>$array['products_weight'],

      добавим

      'PRODUCTS_WEIGHTGRAMM' => $array['products_weight']*1000,
      Дальше в шаблонах листинга или карточки товара для вывода веса используем метку {$module_data.PRODUCTS_WEIGHTGRAMM}.
Апр 012011
 

Что б заработала метка {$module_data.PRODUCTS_QUANTITY_MIN} в списке товаров внутри категории открывайте /includes/modules/default.php и во всех sql запросах в переменной $listing_sql (встречается много раз, менять везде) менять:
p.products_quantity,
на
p.products_quantity,
p.products_quantity_min,

Нужно ещё саму метку определить в /includes/classes/product.php, например меняйте:

		      'PRODUCTS_QUANTITY'=>$array['products_quantity'],
на:
		      'PRODUCTS_QUANTITY'=>$array['products_quantity'],
		      'PRODUCTS_QUANTITY_MIN'=>$array['products_quantity_min'],

А затем уже в шаблоны списка товаров /templates/шаблон/module/product_listing/ вставляйте метку:

{$module_data.PRODUCTS_QUANTITY_MIN}

Я ещё вставил такое

// 1.04.11 sup_date — wremia postawki, code — domko cod
‘PRODUCTS_SUP_DATE’=>$array[‘sup_date’],
‘PRODUCTS_CODE’=>$array[‘code’],