[RSS Feeder] - RSS "бот"

Автор pav23, 18 февраля 2009, 20:58:33

« назад - далее »

0 Пользователи и 1 гость просматривают эту тему.

pav23

RSS Feeder
Автор:     SlammedDime
Последняя версия: 1.1.1
Совместим: 2.0 RC1 (более ранние версии совместимы с веткой 1.х)
Ссылка: http://custom.simplemachines.org/mods/index.php?mod=1590
Русификация: Нет
Описание: RSS "бот"

Не работает данный мод на хостинге, но работает на локалхосте... хотя устанавливается без ошибок, настройки одинаковые. Откликнитесь пожалуйста, люди у кого стоит данный мод на RC1

Gn00s

Поможите с переводом ....
/* RSS Feeder */
$txt['mods_cat_modifications_rssfeeds'] = 'RSS Feeder';
$txt['rss_feeder'] = 'RSS Feeder';
$txt['rss_feeder_desc'] = 'This section allows you to setup and view RSS feeds that post to your forum.';
$txt['rss_feed_enabled'] = 'Включить';
$txt['rss_feed_title'] = 'Заголовок ленты';
$txt['rss_feed_title_desc'] = 'This should be an internal title used for the feed.';
$txt['rss_feed_url'] = 'URL Ленты';
$txt['rss_feed_url_desc'] = 'This should be a valid RSS feed.  If the parser finds it to be invalid, it will be disabled.';
$txt['rss_feed_poster'] = 'Post Feed As';
$txt['rss_feed_poster_desc'] = 'Enter who you would like this topic posted as.';
$txt['rss_feed_prefix'] = 'Topic Prefix';
$txt['rss_feed_prefix_desc'] = 'If you would like this feed\'s posts prefixed, enter one here.  This is optional';
$txt['rss_feed_import'] = 'Number To Import';
$txt['rss_feed_import_desc'] = 'You can set the number of items to import on each load.  0 to import all.';
$txt['rss_feed_locked'] = 'Topic Locked';
$txt['rss_feed_approve'] = 'Require Topic Approval';
$txt['rss_feed_full_article'] = 'Retrieve Full Article';
$txt['rss_feed_singletopic'] = 'Post Items In Single Topic';
$txt['rss_feed_regex'] = 'Regular Expression';
$txt['rss_feed_regex_desc'] = 'Required if retrieving full article.  This must be <a href-"http://us.php.net/manual/en/book.pcre.php">PCRE</a> format.  The match is expected to be in second index of the array ([1]).';
$txt['rss_feed_keywords'] = 'Keywords To Find';
$txt['rss_feed_keywords_desc'] = 'If you would like feeds only to be imported if they contain certain keywords, enter those in a comma delimited list here (ex: key1, key2).';
$txt['rss_feed_board'] = 'Board';
$txt['rss_feed_modify'] = 'Modify';
$txt['rss_feed_none'] = 'There are no feeds to display';
$txt['rss_feed_add'] = 'Добавить ленту';
$txt['rss_feed_delete'] = 'Удалить выделенное';
$txt['rss_feed_confirm'] = 'Are you sure you wish to delete the selected feeds?';
$txt['rss_feed_not_found'] = 'Could not find a feed with that id.';
$txt['rss_feed_no_boards'] = 'There are no boards to post feeds to.';
$txt['rss_feed_add_error'] = 'The information highlighted in red is required';
$txt['rss_feed_insert_error'] = 'Could not insert the new feed successfully';
$txt['rss_feed_insert_success'] = 'The feed was created successfully';
$txt['rss_feed_update_success'] = 'The feed was updated successfully';
$txt['scheduled_task_desc_rss_feeder'] = 'Fetches RSS feeds that have been setup in the Feeder settings.';
$txt['scheduled_task_rss_feeder'] = 'RSS Feeder';
$txt['pruneRssFeedLog'] = 'Remove RSS Feeder entries older than:<div class="smalltext">(0 to disable)</div>';
$txt['rss_feed_footer'] = 'Footer Text';
$txt['rss_feed_footer_desc'] = 'If you would like any text in the post after the feed is posted, enter it here.  Any BBCode is allowed';
$txt['rss_feed_count'] = 'Posts';
$txt['rss_feed_board_error'] = 'No board';
/*RSS Feeder */
Очень надо!


Drakonsa

Цитата: Gn00s от 15 июня 2009, 13:30:28
Поможите с переводом ....
/* RSS Feeder */
$txt['mods_cat_modifications_rssfeeds'] = 'RSS Feeder';
$txt['rss_feeder'] = 'RSS Feeder';
$txt['rss_feeder_desc'] = 'This section allows you to setup and view RSS feeds that post to your __forum.';
$txt['rss_feed_enabled'] = 'Включить';
$txt['rss_feed_title'] = 'Заголовок ленты';
$txt['rss_feed_title_desc'] = 'This should be an internal title used for the feed.';
$txt['rss_feed_url'] = 'URL Ленты';
$txt['rss_feed_url_desc'] = 'This should be a valid RSS feed.  If the parser finds it to be invalid, it will be disabled.';
$txt['rss_feed_poster'] = 'Post Feed As';
$txt['rss_feed_poster_desc'] = 'Enter who you would like this topic posted as.';
$txt['rss_feed_prefix'] = 'Topic Prefix';
$txt['rss_feed_prefix_desc'] = 'If you would like this feed\'s posts prefixed, enter one here.  This is optional';
$txt['rss_feed_import'] = 'Number To Import';
$txt['rss_feed_import_desc'] = 'You can set the number of items to import on each load.  0 to import all.';
$txt['rss_feed_locked'] = 'Topic Locked';
$txt['rss_feed_approve'] = 'Require Topic Approval';
$txt['rss_feed_full_article'] = 'Retrieve Full Article';
$txt['rss_feed_singletopic'] = 'Post Items In Single Topic';
$txt['rss_feed_regex'] = 'Regular Expression';
$txt['rss_feed_regex_desc'] = 'Required if retrieving full article.  This must be <a href-"http://us.php.net/manual/en/book.pcre.php">PCRE</a> format.  The match is expected to be in second index of the array ([1]).';
$txt['rss_feed_keywords'] = 'Keywords To Find';
$txt['rss_feed_keywords_desc'] = 'If you would like feeds only to be imported if they contain certain keywords, enter those in a comma delimited list here (ex: key1, key2).';
$txt['rss_feed_board'] = 'Board';
$txt['rss_feed_modify'] = 'Modify';
$txt['rss_feed_none'] = 'There are no feeds to display';
$txt['rss_feed_add'] = 'Добавить ленту';
$txt['rss_feed_delete'] = 'Удалить выделенное';
$txt['rss_feed_confirm'] = 'Are you sure you wish to delete the selected feeds?';
$txt['rss_feed_not_found'] = 'Could not find a feed with that id.';
$txt['rss_feed_no_boards'] = 'There are no boards to post feeds to.';
$txt['rss_feed_add_error'] = 'The information highlighted in red is required';
$txt['rss_feed_insert_error'] = 'Could not insert the new feed successfully';
$txt['rss_feed_insert_success'] = 'The feed was created successfully';
$txt['rss_feed_update_success'] = 'The feed was updated successfully';
$txt['scheduled_task_desc_rss_feeder'] = 'Fetches RSS feeds that have been setup in the Feeder settings.';
$txt['scheduled_task_rss_feeder'] = 'RSS Feeder';
$txt['pruneRssFeedLog'] = 'Remove RSS Feeder entries older than:<div class="smalltext">(0 to disable)</div>';
$txt['rss_feed_footer'] = 'Footer Text';
$txt['rss_feed_footer_desc'] = 'If you would like any text in the post after the feed is posted, enter it here.  Any BBCode is allowed';
$txt['rss_feed_count'] = 'Posts';
$txt['rss_feed_board_error'] = 'No board';
/*RSS Feeder */

http://translate.google.com/

BIOHAZARD

Мои моды:
  • RedirectPage
  • Counters
  • CustomSearch
  • SypexDumper
   адаптирую темы    1.1.хx<=>2.0задавая вопросы, старайтесь сразу указывать конечную цель, предполагаемый Вами путь не обязательно окажется самым коротким

Любые моды на заказ

Gn00s

Фразу: "Enter who you would like this topic posted as", Гугл переводит как - "Введите, которые вы хотели бы эту тему в форуме". Я реально сломал мозг!
Очень надо!

BIOHAZARD

оно и по пиндосовски понятно:
от чьего имени публиковать новости в этом топике
Мои моды:
  • RedirectPage
  • Counters
  • CustomSearch
  • SypexDumper
   адаптирую темы    1.1.хx<=>2.0задавая вопросы, старайтесь сразу указывать конечную цель, предполагаемый Вами путь не обязательно окажется самым коротким

Любые моды на заказ

RedFire2017

Цитата: pav23 от 18 февраля 2009, 20:58:33
Не работает данный мод на хостинге, но работает на локалхосте... хотя устанавливается без ошибок, настройки одинаковые. Откликнитесь пожалуйста, люди у кого стоит данный мод на RC1
Тоже не работает...

BIOHAZARD

Цитата: RedFire2017 от 16 июня 2009, 12:22:46
Тоже не работает...
ковыряйте php.ini, разговаривайте с хостерами
Мои моды:
  • RedirectPage
  • Counters
  • CustomSearch
  • SypexDumper
   адаптирую темы    1.1.хx<=>2.0задавая вопросы, старайтесь сразу указывать конечную цель, предполагаемый Вами путь не обязательно окажется самым коротким

Любые моды на заказ

stels

Цитата: BIOHAZARD от 16 июня 2009, 12:24:52
ковыряйте php.ini, разговаривайте с хостерами
И у меня не работает, хотя установился без проблем  >:(
А что там может быть в php.ini?

stels

Проблема с установкой данного мода не исчезла.
И что интересно - во время установки изменения в нужных файла не происходят и дополнительные файлы отсутствуют, хотя отчет установки рапортует успешно!
В чем может быть дело? Кто-то сталкивался с этим раньше? Или в других модах?

Gn00s

#11
У меня всё установилось и работает. 2.0 RC1-1 Вот:
http://www.forum.musfile.com/index.php/topic,29.0.html
Очень надо!

stels

Установил все вручную. Вроде все на месте... Но новости не появляются!...
Я не силен в RSS, подскажите - что должно быть в URL ленты? Адрес вида http://site.ru/rss.xml ?

Roman_Grishin

помогите кто нибудь...
установил мод, он не дает зайти в настройки модификаций - белая страница
еще он не запускается через диспетчер задач...
что делать?
Христианский форум для всех! - Видение G12 в России!
►СПАСИБО ВСЕМ УЧАСТНИКАМ ЭТОГО ФОРУМА, БЛАГОДАРЯ ВАМ У МЕНЯ ФОРУМ РАБОТАЕТ БЕЗ ПРОБЛЕМ◄

BIOHAZARD

Цитата: Roman_Grishin от 21 августа 2009, 16:22:50
помогите кто нибудь...
установил мод, он не дает зайти в настройки модификаций - белая страница
еще он не запускается через диспетчер задач...
что делать?
откат делать
Packages\backups смотри
Мои моды:
  • RedirectPage
  • Counters
  • CustomSearch
  • SypexDumper
   адаптирую темы    1.1.хx<=>2.0задавая вопросы, старайтесь сразу указывать конечную цель, предполагаемый Вами путь не обязательно окажется самым коротким

Любые моды на заказ

Roman_Grishin

да блин, как удалить мод я знаю... мне бы его настроить чтоб он работал
Христианский форум для всех! - Видение G12 в России!
►СПАСИБО ВСЕМ УЧАСТНИКАМ ЭТОГО ФОРУМА, БЛАГОДАРЯ ВАМ У МЕНЯ ФОРУМ РАБОТАЕТ БЕЗ ПРОБЛЕМ◄

uniqum

тоже поставил, но не работает.

Gnostis

Насколько я видел, у глубоко уважаемого digger этот мод отлично работает.

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


Gnostis

Вот про это я и говорю.

uniqum

Там надо на крон тего садить.
Заработал этот мод,
http://custom.simplemachines.org/mods/index.php?mod=624
Но постит в УТФ, как исправить, никто не в курсе?

kakawkin

Помогите пожалуйста.
Установил я мод, он постил со всякими <br> и т.д.  -  исправил включением в форум элементарного HTML. Но не убрался  <div>

Как его можно убрать ?

BIOHAZARD

можно попробовать использовать цензуру для этих целей
Мои моды:
  • RedirectPage
  • Counters
  • CustomSearch
  • SypexDumper
   адаптирую темы    1.1.хx<=>2.0задавая вопросы, старайтесь сразу указывать конечную цель, предполагаемый Вами путь не обязательно окажется самым коротким

Любые моды на заказ

kakawkin

неа(( Невозможно добавть в цензуры слово <div> (только просто можно добавить div - при этом треугольные скобки останутся buck )

BIOHAZARD

можно поправить функцию preparsecode в файле subs-post.php, чтобы она автоматом удаляла дивы из сообщений
Мои моды:
  • RedirectPage
  • Counters
  • CustomSearch
  • SypexDumper
   адаптирую темы    1.1.хx<=>2.0задавая вопросы, старайтесь сразу указывать конечную цель, предполагаемый Вами путь не обязательно окажется самым коротким

Любые моды на заказ

kakawkin

я в этом нуб. Немог бы меня тыкнуть как нуба что и где именно изменить


Солярис

А с линейкой форума 1.1.10 этот мод не работает?

ipfw

все работает , только вот с кодировкой проблемы, как решить ? использую cp1251

Макар

Поставил , настроил , все заработало. Не ну конечно сначала не хотел работать из за моих кривых рук, ну да сам виноват , перемудрил с настройками  wallbash

стоит на тестовой версии , пока что сделал две ленты на пробу
одна мониторит новости с стороннего сайта
а одна последние топики с моей же основной версии  2funny

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

p.s. кто подскажет rss потоки отдающие новость целиком ?

мысли по поводу мода

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

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

отнести мод к категории rss граббера   , на данном этапе нельзя , так как нет функции синонимизации и рерайта стянутого контента (это уж если вы делаете ГС а не СДЛ
может конечно кто то захочет и допишет недостающий функционал , но по опыту толку от такого контента или ноль , или сначала нифига, потом как фиганет и фигульки, фигульки , фигульки, а потом опять нифига............
Если Вы здесь недавно, не обольщайтесь тоном некоторых дискуссий.
Все чаще слова - юзай поиск, приобретают смысл - иди в ж..........  Приобретение смысла автоматизированно - Ответы на любой вопрос по SMF
Не пишите несколько сообщений подряд - тут вам не Twitter  >:( в остальных ситуациях мы не сильно зверствуем 2funny

genix

#30
Makar, спасибо про фигульки, поржал)

Разработчикам спасибо за модуль, надеюсь, смогу его настроить) А то был у меня РСС фид постер, пока не обновился до этой 2.0 версии, сейчас вот опять хоть немного оживлю форум городской...

UPD: Нашел на пендосском форуме пример использования регулярок:
~<div id="articlestory">(.*)<\/div>~siU

In parts:
Each regex must start and end with a character, any characters, as long as it's the same.  I choose to use ~.  You could just as easily use any non-Meta character (see the PCRE reference) like /, or : or whatever works for you.  I like ~, its easy to remember and isn't used a lot in text, so it normally won't be used in your regex at all.

Next I have the beginning div tag - <div id="articlestory">

Then I have (.*).  This means grab EVERYTHING that follows that starting div tag until the end of the line.  (note, I'll get to it later)

The purpose of being in () is that whatever is found in this () will be captured into the first index of the array that the mod will use to post.  If you have to use () to enclose anything BEFORE this (.*), then you'll want to prevent it from being captured and being put into the array by starting it with (?:search string here)

If you have to use any parenthesis in your regex BEFORE your (.*), you will have to use (?: to start it.  In most cases, I dont think this will be required, but it is something to keep in mind if you see your feed being posted incorrectly.

The next part is the closing div... <\/div>.  All / in a regex need to be escaped using a \.

Following that is the closing ~ that I discussed earlier.

After that are a few letters, siU.  These are called pattern modifiers.  These can change the way your regex works.  Here is what the siU stand for -
s - means that .* should capture all characters including newlines and carriage returns.  Without this, .* will stop at the end of the line.  So by using the s modifier, .* will capture everything from where it starts to the end of the document (more to come on that too, since we want to stop at some point)
i - this means that the search is caseless.  So if you want to search for <DIV>, but <div> is the document, your regex will still find it.
U - this is the ungreedy modifier.  Remember how I said that .* will capture everything until the end of the document... this stops it.  This forces .* to stop when it comes across the next part of the pattern


UPD: Изначально он у меня не запустился. Почему-то не хавает кэш-дирректорию правильно. Но если в файле Subs-Rss.php заменить
Цитироватьfunction save($data)
   {
на
Цитироватьfunction save($data)
   {
   $this->name = $_SERVER['DOCUMENT_ROOT']."/cache".$this->name;
И поставить права 777 на папку cache в корневой и проследить, чтобы файлик .spc был с правами 666, тогда у меня все заработало.

UPD: Для русскоязычного общества возможно, кто-то столкнется еще с проблемой некорректного поиска ключевых слов. Там в общем лично у меня ключевые слова сохраняются в базе как энг Так вот решение:
В файле Subs-Rss.php после
foreach($keywords as $keyword)
{

добавить, заменив cp1251 на вашу кодировку
$keyword=html_entity_decode($keyword, ENT_COMPAT, "cp1251");

UPD: и еще один типа баг: с некоторыми фидами вываливал ошибку не помню уже какую, но про неправильный URL фида. В общем решение в лоб:
в файле Subs-Rss.php добавить
$this->force_feed = true;
перед
if (!$this->force_feed)
{

и проблема волшебным образом пропадает =)
- Все, что не убьет меня, сделает меня сильнее - (Ф.Ницше, Карандаш, Кани Вест)

Bugo

Мод выдает даты в формате 14 December 2009, 5:04 am.
В файле ScheduledTasks.php нашел строчку:
' . ($item->get_date() !== null ? '' . $item->get_date() . '

Вопрос: как отформатировать вывод, чтобы дата выдавалась в русскоязычном виде "14 декабря 2009, 5:04"?

genix

Поищи где объявляется функция "function get_date" класса, объект которого этот $item и замени внутри нее функцию date() в соответствии с этой статьей: http://www.mitlex.ru/notes/php/date-po-russki/
- Все, что не убьет меня, сделает меня сильнее - (Ф.Ницше, Карандаш, Кани Вест)

Bugo

Нашел функцию get_date в файле Subs-RSS.php
function get_date($date_format = 'j F Y, g:i a')
{
if (!isset($this->data['date']))
{
if ($return = $this->get_item_tags(SIMPLEPIE_NAMESPACE_ATOM_10, 'published'))
{
$this->data['date']['raw'] = $return[0]['data'];
}
elseif ($return = $this->get_item_tags(SIMPLEPIE_NAMESPACE_ATOM_10, 'updated'))
{
$this->data['date']['raw'] = $return[0]['data'];
}
elseif ($return = $this->get_item_tags(SIMPLEPIE_NAMESPACE_ATOM_03, 'issued'))
{
$this->data['date']['raw'] = $return[0]['data'];
}
elseif ($return = $this->get_item_tags(SIMPLEPIE_NAMESPACE_ATOM_03, 'created'))
{
$this->data['date']['raw'] = $return[0]['data'];
}
elseif ($return = $this->get_item_tags(SIMPLEPIE_NAMESPACE_ATOM_03, 'modified'))
{
$this->data['date']['raw'] = $return[0]['data'];
}
elseif ($return = $this->get_item_tags(SIMPLEPIE_NAMESPACE_RSS_20, 'pubDate'))
{
$this->data['date']['raw'] = $return[0]['data'];
}
elseif ($return = $this->get_item_tags(SIMPLEPIE_NAMESPACE_DC_11, 'date'))
{
$this->data['date']['raw'] = $return[0]['data'];
}
elseif ($return = $this->get_item_tags(SIMPLEPIE_NAMESPACE_DC_10, 'date'))
{
$this->data['date']['raw'] = $return[0]['data'];
}

if (!empty($this->data['date']['raw']))
{
$parser = SimplePie_Parse_Date::get();
$this->data['date']['parsed'] = $parser->parse($this->data['date']['raw']);
}
else
{
$this->data['date'] = null;
}
}
if ($this->data['date'])
{
$date_format = (string) $date_format;
switch ($date_format)
{
case '':
return $this->sanitize($this->data['date']['raw'], SIMPLEPIE_CONSTRUCT_TEXT);

case 'U':
return $this->data['date']['parsed'];

default:
return date($date_format, $this->data['date']['parsed']);
}
}
else
{
return null;
}
}


Каким образом осуществить замену
Цитироватьи замени внутри нее функцию date()
и куда вставить функцию russian_date отсюда =>
Цитироватьhttp://www.mitlex.ru/notes/php/date-po-russki/
?

genix

Так я же вроде все и написал почти дословно - замени строчку
return date($date_format, $this->data['date']['parsed']);
на
return russian_date($date_format, $this->data['date']['parsed']);

А перед всем этим блоком с описанной функцией (перед строчкой function get_date...) вставь код функции russian_date
- Все, что не убьет меня, сделает меня сильнее - (Ф.Ницше, Карандаш, Кани Вест)

Bugo

Fatal error: Call to undefined function russian_date() in ..\Sources\Subs-Rss.php on line 3792

В строчке 3792 как раз обращение к функции:
return russian_date($date_format, $this->data['date']['parsed']);

Фунцию russian_date() (весь блок) вставил перед функцией get_date()

genix

Эта ошибка означает, что функция неопределена, значит криво вставил. Пришли весь кусок кода который получился с 5 строчками выше и 5 строчками ниже
- Все, что не убьет меня, сделает меня сильнее - (Ф.Ницше, Карандаш, Кани Вест)

Bugo


function russian_date() {
   $translation = array(
      "am" => "дп",
      "pm" => "пп",
      "AM" => "ДП",
      "PM" => "ПП",
      "Monday" => "Понедельник",
      "Mon" => "Пн",
      "Tuesday" => "Вторник",
      "Tue" => "Вт",
      "Wednesday" => "Среда",
      "Wed" => "Ср",
      "Thursday" => "Четверг",
      "Thu" => "Чт",
      "Friday" => "Пятница",
      "Fri" => "Пт",
      "Saturday" => "Суббота",
      "Sat" => "Сб",
      "Sunday" => "Воскресенье",
      "Sun" => "Вс",
      "January" => "января",
      "Jan" => "Янв",
      "February" => "февраля",
      "Feb" => "Фев",
      "March" => "марта",
      "Mar" => "Мар",
      "April" => "апреля",
      "Apr" => "Апр",
      "May" => "мая",
      "May" => "Мая",
      "June" => "июня",
      "Jun" => "Июн",
      "July" => "июля",
      "Jul" => "Июл",
      "August" => "августа",
      "Aug" => "Авг",
      "September" => "сентября",
      "Sep" => "Сен",
      "October" => "октября",
      "Oct" => "Окт",
      "November" => "ноября",
      "Nov" => "Ноя",
      "December" => "декабря",
      "Dec" => "Дек",
      "st" => "ое",
      "nd" => "ое",
      "rd" => "е",
      "th" => "ое",
      );
   if (func_num_args() > 1) {
      $timestamp = func_get_arg(1);
      return strtr(date(func_get_arg(0), $timestamp), $translation);
   } else {
      return strtr(date(func_get_arg(0)), $translation);
   };
}

function get_date($date_format = 'j F Y, H:i')
{
if (!isset($this->data['date']))
{
if ($return = $this->get_item_tags(SIMPLEPIE_NAMESPACE_ATOM_10, 'published'))
{
$this->data['date']['raw'] = $return[0]['data'];
}
elseif ($return = $this->get_item_tags(SIMPLEPIE_NAMESPACE_ATOM_10, 'updated'))
{
$this->data['date']['raw'] = $return[0]['data'];
}
elseif ($return = $this->get_item_tags(SIMPLEPIE_NAMESPACE_ATOM_03, 'issued'))
{
$this->data['date']['raw'] = $return[0]['data'];
}
elseif ($return = $this->get_item_tags(SIMPLEPIE_NAMESPACE_ATOM_03, 'created'))
{
$this->data['date']['raw'] = $return[0]['data'];
}
elseif ($return = $this->get_item_tags(SIMPLEPIE_NAMESPACE_ATOM_03, 'modified'))
{
$this->data['date']['raw'] = $return[0]['data'];
}
elseif ($return = $this->get_item_tags(SIMPLEPIE_NAMESPACE_RSS_20, 'pubDate'))
{
$this->data['date']['raw'] = $return[0]['data'];
}
elseif ($return = $this->get_item_tags(SIMPLEPIE_NAMESPACE_DC_11, 'date'))
{
$this->data['date']['raw'] = $return[0]['data'];
}
elseif ($return = $this->get_item_tags(SIMPLEPIE_NAMESPACE_DC_10, 'date'))
{
$this->data['date']['raw'] = $return[0]['data'];
}

if (!empty($this->data['date']['raw']))
{
$parser = SimplePie_Parse_Date::get();
$this->data['date']['parsed'] = $parser->parse($this->data['date']['raw']);
}
else
{
$this->data['date'] = null;
}
}
if ($this->data['date'])
{
$date_format = (string) $date_format;
switch ($date_format)
{
case '':
return $this->sanitize($this->data['date']['raw'], SIMPLEPIE_CONSTRUCT_TEXT);

case 'U':
return $this->data['date']['parsed'];

default:
return russian_date($date_format, $this->data['date']['parsed']);
}
}
else
{
return null;
}
}


Выше и ниже этого кода уже другие функции (get_copyright и get_local_date)

genix

Я честно хз почему оно не работает, может что-то с фигурными скобками напутано, заочно сложно понять.

Попробуй так тогда напрямую вставить массив в кусок и там уже заменить функцию, добавив strtr, в общем вот на это замени соотв.кусок: (а те свои действия отмени)
...
            default:
               $translation = array(
                     "am" => "дп",
                     "pm" => "пп",
                     "AM" => "ДП",
                     "PM" => "ПП",
                     "Monday" => "Понедельник",
                     "Mon" => "Пн",
                     "Tuesday" => "Вторник",
                     "Tue" => "Вт",
                     "Wednesday" => "Среда",
                     "Wed" => "Ср",
                     "Thursday" => "Четверг",
                     "Thu" => "Чт",
                     "Friday" => "Пятница",
                     "Fri" => "Пт",
                     "Saturday" => "Суббота",
                     "Sat" => "Сб",
                     "Sunday" => "Воскресенье",
                     "Sun" => "Вс",
                     "January" => "января",
                    "Jan" => "Янв",
                     "February" => "февраля",
                     "Feb" => "Фев",
                     "March" => "марта",
                     "Mar" => "Мар",
                     "April" => "апреля",
                     "Apr" => "Апр",
                     "May" => "мая",
                     "May" => "Мая",
                     "June" => "июня",
                     "Jun" => "Июн",
                     "July" => "июля",
                     "Jul" => "Июл",
                     "August" => "августа",
                     "Aug" => "Авг",
                     "September" => "сентября",
                     "Sep" => "Сен",
                     "October" => "октября",
                     "Oct" => "Окт",
                     "November" => "ноября",
                     "Nov" => "Ноя",
                     "December" => "декабря",
                     "Dec" => "Дек",
                     "st" => "ое",
                     "nd" => "ое",
                     "rd" => "е",
                     "th" => "ое",
                     );
               return strtr(date($date_format, $this->data['date']['parsed']), $translation);
               //return date($date_format, $this->data['date']['parsed']);
         }
      }
...
- Все, что не убьет меня, сделает меня сильнее - (Ф.Ницше, Карандаш, Кани Вест)

Bugo

Теперь работает, спасибо :)
Но интересно, в чём проблема предыдущего варианта.

genix

Цитата: Bugo от 16 декабря 2009, 09:45:34
Теперь работает, спасибо :)
Но интересно, в чём проблема предыдущего варианта.
если интересно, посмотри какие там подключаются общие файлы со всякими функциями с помощью инклюдов, в них можно эту функцию вставить, чтоб ее еще раз где-нить использовать. А так - ошибка в областях видимости
- Все, что не убьет меня, сделает меня сильнее - (Ф.Ницше, Карандаш, Кани Вест)

Bugo

Функцию russian_date можно разместить сразу после блока:
<?php
if (!defined('SMF'))
die('Hacking attempt...');

в начале файла.

Тогда все будет работать.

Bugo

#42
В файле index.russian-utf8.php есть строка
$txt['months'] = array(1 => 'января', 'февраля', 'марта', 'апреля', 'мая', 'июня', 'июля', 'августа', 'сентября', 'октября', 'ноября', 'декабря');

Нельзя ли как-то подгружать названия месяцев из нее? В функцию russian_date.

А ещё появилась ошибка:
Undefined index: message (файл Subs-Post.php)
В строке 1864:    
$plaintext = preg_replace('[\[(.*?)\]]', ' ', $_POST['message']);

genix

Цитата: Bugo от 16 декабря 2009, 10:38:45
В файле index.russian-utf8.php есть строка
$txt['months'] = array(1 => 'января', 'февраля', 'марта', 'апреля', 'мая', 'июня', 'июля', 'августа', 'сентября', 'октября', 'ноября', 'декабря');
Нельзя ли как-то подгружать названия месяцев из нее? В функцию russian_date.
Можно, если добавить в global той функции переменную $txt, а потом месяцы вызывать не заменяя функций strtr, а по индексу из массива (например $txt['month'][1]), номер месяца можно узнать соответствующим образом используя форматный вывод даты в date("m").

Цитата: Bugo от 16 декабря 2009, 10:38:45
А ещё появилась ошибка:
Undefined index: message (файл Subs-Post.php)
В строке 1864:    
$plaintext = preg_replace('[\[(.*?)\]]', ' ', $_POST['message']);
Ошибка говорит о том, что в массиве $_POST (а это серверный массив, в котором содержатся все переменные, переданные скрипту методом POST, например из форм) нет элемента с индексом message. Проще говоря, из формы не пришло значение этого поля. Посмотрите может оно есть в $_REQUEST['message'], но врят ли. Такие формы только постом и передаются...
Неужели эта ошибка возникла из-за изменений, которые я говорил?
- Все, что не убьет меня, сделает меня сильнее - (Ф.Ницше, Карандаш, Кани Вест)

Bugo

Подозреваю, что ошибка возникла после граббинга RSS лент на форум.
Я в настройках каждой ленты указываю Regular Expression  равное [1]. Это может влиять?

Bugo

По умолчанию вид сообщения при граббинге выглядит так:

Цитировать
Ссылка на оригинальную страницу с сообщением
Дата оригинального сообщения

Текст сообщения

Источник: ссылка на сайт, на котором находится оригинальное сообщение.

Вопрос: что и где нужно поменять, чтобы первые 2 строчки (ссылка и дата) не вставлялись в текст сообщения?

rapid

Версия 1.1.4 совместима только с SMF 2.0 RC2. Кто-нибудь подскажет где я могу найти версию для SMF 2.0 RC1.2?
Насколько я понимаю это должна быть версия 1.1.3 или 1.1.3.....

BIOHAZARD

Цитата: rapid от 20 февраля 2010, 13:07:33
Версия 1.1.4 совместима только с SMF 2.0 RC2. Кто-нибудь подскажет где я могу найти версию для SMF 2.0 RC1.2?
Насколько я понимаю это должна быть версия 1.1.3 или 1.1.3.....
я думаю более правильно всё же обновить версию форума
Мои моды:
  • RedirectPage
  • Counters
  • CustomSearch
  • SypexDumper
   адаптирую темы    1.1.хx<=>2.0задавая вопросы, старайтесь сразу указывать конечную цель, предполагаемый Вами путь не обязательно окажется самым коротким

Любые моды на заказ

rapid

Не спорю, но много модов+самостоятельные переделывание кода. Тогда придется по новой переделывать.
Может у кого "завалялась" версия под RC1.2? Скиньте пжста на мыло ufa-port@rambler.ru :)

Hikari

Не могу понять, в настройках указывается только раздел, а во всех примерах пишет в отдельную тему.
А у меня - ни туда, ни туда...

Bugo

Цитата: rapid от 20 февраля 2010, 13:07:33
Версия 1.1.4 совместима только с SMF 2.0 RC2. Кто-нибудь подскажет где я могу найти версию для SMF 2.0 RC1.2?
Насколько я понимаю это должна быть версия 1.1.3 или 1.1.3.....
Что-то Вы путаете. Версия 1.1.4 совместима только с 2.0 RC3. А вот на RC2 уже не ставится. А если ищете совсем старые версии мода, так спрашивайте не здесь, а у автора.

Hikari

Цитировать
Regular Expression
Required if retrieving full article. This must be PCRE format. The match is expected to be in second index of the array ([1]).

А что сюда писать? Чтоб полные статьи выдавало?

Bugo


Hikari

Спасибо.
[1] воткнул, посмотрю, что выйдет

Суть не допер все одно. Какой массив оно просит описать?

Vvva

эм, а как запустить собствено его?
поидее должен быть скрипт типо rss.php?который надо запихнуть в крон..но нету

Bugo

Вы его на SMF 1.1.11 установили что-ли?

Vvva

не не, я спецально 2.0 Рс3 поставил..потестить  :)
т.к на 1.1.11 мало нормальных модов..включая и для рсс(

Bugo

В Диспетчер задач загляните. После установки мода.

Vvva

ого,круто.
Спасибо! не знал про эту штуку  :)

Vvva

Цитата: Bugo от 28 декабря 2009, 02:20:52
По умолчанию вид сообщения при граббинге выглядит так:

Вопрос: что и где нужно поменять, чтобы первые 2 строчки (ссылка и дата) не вставлялись в текст сообщения?
тоже интерестно

Pika4y

Есть ли функция автоматического удаления новости не например через 2 недели?
А то помойка же нереальная через месяц будет...
Если нет то возможно есть другой мод рсс с такой функцией?

Drakonsa

Поставь обслуживание на форуме - удаление тем старше 2-х недель на этом разделе.

Pika4y

Спасибо большое. Жалко что придется это делать в ручную.
Появился еще 1 вопрос. Возможно ли как-то избавиться от того чтобы сообщения с аккаунта(рсс) не попадали в графу "Последние сообщения". Возможно есть какой то способ просто не ведения статистики определенного аккаунта?

Drakonsa

Цитата: Enik от 17 июня 2010, 19:58:47
Спасибо большое. Жалко что придется это делать в ручную.
Появился еще 1 вопрос. Возможно ли как-то избавиться от того чтобы сообщения с аккаунта(рсс) не попадали в графу "Последние сообщения". Возможно есть какой то способ просто не ведения статистики определенного аккаунта?
В 2-ке есть планирование задач.

spinus

Цитата: Pika4y от 17 июня 2010, 19:58:47
Спасибо большое. Жалко что придется это делать в ручную.
Появился еще 1 вопрос. Возможно ли как-то избавиться от того чтобы сообщения с аккаунта(рсс) не попадали в графу "Последние сообщения". Возможно есть какой то способ просто не ведения статистики определенного аккаунта?
Меня тоже интересует этот вопрос, а вот про планирование задач не понял, Drakonsa поясните пожалуйста, если можно шаг за шагом
Simple portal 2.3.6

spinus

Simple portal 2.3.6

Astana Infonet

1.1.5 выводит сообщения с тегом size
[size=-1]Все похожие статьи: 18 »[/size]
подскажите пожалуйста, как убрать этот тег?

turbodisel

доброго времени суток.подскажите пожалуйста как удалить из RSS подписки ссылку на сторонний ресурс с которого тянутся новости
версия 2.0 RC4   для    rss_feeder_1-1-5
в конце каждого сообщениия выдаёт : Source: "сторонний ресурс "
помогите избавиться..может есть спец.мод?

Хран

Супер, мод. Удалось научить его собирать новости анекдоты и рецепты для форума, теперь Бот сам наполняет форум. Главное поиграть с настройками. Убрать ссылки на сторонние ресурсы можно легко. Возникла только одна трабла, не знаю как ее побороть. Если картинка полной новости имеет относительный путь т.е. /image/foto.jpg то картинка не показывается. Скажите как это побороть, а то хочется брать статьи с _mobile-review.com ~<td id="mainblock" valign="top">(.*)<\/td>~siU. Статьи берутся, но картинки не показываются. Подскажите как это побороть?

Хран

#69
Вроде почти во всем разобрался, может кому пригодится ScheduledTasks.php:
// Format the post

// just the rss topic as a title, no link
$message_unlinked_title = $title;

// the story
$message_body = $body;
if ($context['character_set'] == 'windows-1251') $message_body = iconv('UTF-8', 'CP1251//IGNORE', $message_body);


$message = $message_unlinked_title . "\n" . $message_body;


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

Проблема только вставкой видео из rss. Подскажите как решить.
Чтобы вместо <object width="560" height="315">
<param name="movie" value="http://www.youtube.com/v/ZjrsBq89VcQ?version=3&amp;hl=en_US&amp;rel=0">
<param name="allowFullScreen" value="true"><param name="allowscriptaccess" value="always">
<embed src="http://www.youtube.com/v/ZjrsBq89VcQ?version=3&amp;hl=en_US&amp;rel=0"
type="application/x-shockwave-flash" width="560" height="315" allowscriptaccess="always" allowfullscreen="true">
</object>


Вставлялась просто ссылка http://www.youtube.com/v/ZjrsBq89VcQ?version=3&amp;hl=en_US&amp;rel=0

Theo

Подскажите как поставить сей замечательный мод на версию SMF 2.0 RC5 ?? К сожалению через панель установки он не ставится. Пробовал поставить руками, но столкнулся с проблемой в виде таблицы в БД, точнее ее структуры

karavan

В режиме эмуляции версии пробовали?

Theo

Спасибо. Реши вопрос, но там проблема была в несколько другом, а именно в правах доступа. Ну да ладно, еще вопрос созрел, надеюсь ответ на него получу так же:

Почему мод ленты вида http://линк.xml или http://линк.html ест очень хорошо, постит все что нужно, все что есть в ленте ну и новые сообщение конечно,
а ленты вида к примеру http://линк/blog  постит лишь одно сообщение (самое последнее в ленте)

Надеюсь высказался понятно и может кто знает способ как исправить? Настройки конечно в свойствах мода идентичны

motosimak

Народ, поставил мод, вопрос думаю совершенно простой, но  для знающих людей.  :)

Поставил мод , подключил ленту http://www.ixbt.com/export/softnews.rss на форум,  в поле правильное выражение указал ~<div class="news_body">(.*)<\/div>~siU

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

Как сделать, чтобы цеплялись ссылки к новости? Может их как то преобразовать в bb  код,  но как, помогите пожалуйста  :)


               

urok

всем привет :)
поднимаю старую тему, так как нужна ваша помощь
[ url=http://naceka-online.ru/rss/content/2/feed.rss ]граблю с rss ленты[/url] 
в настройках RSS Feeder ставлю галку  Запрашивать полный текст статьи
Правильное выражение    ~<div class="con_text">(.*)<\/div>~siU
но новость грабится не полностью
еще вопрос по поводу картинок у которых ссылки типа
/images/photos/ как быть с ними