Archived
1
0

Also support "last X" REST interface

This commit is contained in:
Garvin Hicking
2006-08-02 10:07:34 +00:00
commit 80e14346a5
1775 changed files with 195589 additions and 0 deletions
@@ -0,0 +1,21 @@
<?php # $Id: serendipity_plugin_shoutbox.php 235 2005-07-08 13:29:39Z garvinhicking $
@define('PLUGIN_REMOTERSS_TITLE', 'Fremder RSS/OPML-Blogroll Feed');
@define('PLUGIN_REMOTERSS_BLAHBLAH', 'Zeigt Einträge eines externen RSS/OPML-Feeds an (z.B. Blogroll)');
@define('PLUGIN_REMOTERSS_NUMBER', 'Anzahl der Einträge');
@define('PLUGIN_REMOTERSS_NUMBER_BLAHBLAH', 'Wieviele Einträge sollen angezeigt werden? (Standard: alle im Feed)');
@define('PLUGIN_REMOTERSS_SIDEBARTITLE', 'Feed-Titel');
@define('PLUGIN_REMOTERSS_SIDEBARTITLE_BLAHBLAH', 'Titel der Feed-Anzeige in der Sidebar des Blogs');
@define('PLUGIN_REMOTERSS_RSSURI', 'RSS/OPML-URI');
@define('PLUGIN_REMOTERSS_RSSURI_BLAHBLAH', 'URI des RSS/OPML-Feeds, der angezeigt werden soll');
@define('PLUGIN_REMOTERSS_RSSTARGET', 'Link-Target');
@define('PLUGIN_REMOTERSS_RSSTARGET_BLAHBLAH', 'Target des Links zu einem der angezeigten RSS-Einträge (Standard: _blank)');
@define('PLUGIN_REMOTERSS_NOURI', 'Kein RSS/OPML-Feed gewählt');
@define('PLUGIN_REMOTERSS_CACHETIME', 'Wann wird der Feed aktualisiert?');
@define('PLUGIN_REMOTERSS_CACHETIME_BLAHBLAH', 'Die Inhalte des fremden Feeds werden gecached. Sobald der Cache älter ist als X Sekunden wird er aktualisiert (Standard: 3 Stunden)');
@define('PLUGIN_REMOTERSS_FEEDTYPE', 'Typ des Feeds');
@define('PLUGIN_REMOTERSS_FEEDTYPE_BLAHBLAH', 'Wählen Sie das Format des einzubindenden Feeds');
@define('PLUGIN_REMOTERSS_BULLETIMG', 'Bullet Image');
@define('PLUGIN_REMOTERSS_BULLETIMG_BLAHBLAH', 'Image to display before each headline.');
@define('PLUGIN_REMOTERSS_DISPLAYDATE', 'Display Date');
@define('PLUGIN_REMOTERSS_DISPLAYDATE_BLAHBLAH', 'Display the date below the headline?');
@@ -0,0 +1,29 @@
<?php # $Id$
/**
* @version $Revision: 690 $
* @author Rodrigo Lazo Paz <rlazo.paz@gmail.com>
* EN-Revision: 690
*/
@define('PLUGIN_REMOTERSS_TITLE', 'Sindicación remota RSS/OPML-Blogroll');
@define('PLUGIN_REMOTERSS_BLAHBLAH', 'Muestra los elementos de una sindicación remota RSS/OPML (e.g. Blogroll)');
@define('PLUGIN_REMOTERSS_NUMBER', 'Número de entradas');
@define('PLUGIN_REMOTERSS_NUMBER_BLAHBLAH', '¿Cuántas entradas deben ser mostradas? (Por defecto: todas las entradas en la sindicación)');
@define('PLUGIN_REMOTERSS_SIDEBARTITLE', 'Título de la sindicación');
@define('PLUGIN_REMOTERSS_SIDEBARTITLE_BLAHBLAH', 'Título de la sindicación a colocar en la barra lateral del blog');
@define('PLUGIN_REMOTERSS_RSSURI', 'RSS/OPML URI');
@define('PLUGIN_REMOTERSS_RSSURI_BLAHBLAH', 'URI de la sindicación RSS/OPML que deseas mostrar');
@define('PLUGIN_REMOTERSS_NOURI', 'Ninguna sindicación RSS/OPML seleccionada');
@define('PLUGIN_REMOTERSS_RSSTARGET', 'RSS/OPML linktarget');
@define('PLUGIN_REMOTERSS_RSSTARGET_BLAHBLAH', 'Objetivo del enlace de a uno de los elementos RSS mostrados (Por defecto: _blank)');
@define('PLUGIN_REMOTERSS_CACHETIME', '¿Cuándo actualizar la sindicación?');
@define('PLUGIN_REMOTERSS_CACHETIME_BLAHBLAH', 'Los contenidos de una sindicación son almacenados en un caché que será actualizado cuando sea mayor a X segundos (Por defecto: 3 horas)');
@define('PLUGIN_REMOTERSS_FEEDTYPE', 'Tipo de sindicación');
@define('PLUGIN_REMOTERSS_FEEDTYPE_BLAHBLAH', 'Elige el típo de formato de la sindicación remota');
@define('PLUGIN_REMOTERSS_BULLETIMG', 'Bullet Image');
@define('PLUGIN_REMOTERSS_BULLETIMG_BLAHBLAH', 'Imágen a mostrar antes de cada titular.');
@define('PLUGIN_REMOTERSS_DISPLAYDATE', '¿Mostrar fecha?');
@define('PLUGIN_REMOTERSS_DISPLAYDATE_BLAHBLAH', '¿Mostrar la fecha luego del titular?');
?>
@@ -0,0 +1,37 @@
<?php # $Id: lang_ja.inc.php,v 1.4 2005/05/17 11:37:42 garvinhicking Exp $
##########################################################################
# serendipity - another blogger... #
##########################################################################
# #
# (c) 2003 Jannis Hermanns <J@hacked.it> #
# http://www.jannis.to/programming/serendipity.html #
# #
# Translated by #
# Sebastian Mordziol <argh@php-tools.net> #
# http://sebastian.mordziol.de #
# #
##########################################################################
@define('PLUGIN_REMOTERSS_TITLE', 'Fil RSS/OPML externe');
@define('PLUGIN_REMOTERSS_BLAHBLAH', 'Affiche les billets d\'un fil RSS/OPML externe (exemple: blogroll)');
@define('PLUGIN_REMOTERSS_NUMBER', 'Nombre de billets');
@define('PLUGIN_REMOTERSS_NUMBER_BLAHBLAH', 'Définit le nombre de billets à afficher. (Par défaut, tous les billets du fil)');
@define('PLUGIN_REMOTERSS_SIDEBARTITLE', 'Titre du fil');
@define('PLUGIN_REMOTERSS_SIDEBARTITLE_BLAHBLAH', 'Titre du fil dans la barre latérale');
@define('PLUGIN_REMOTERSS_RSSURI', 'Adresse du fil');
@define('PLUGIN_REMOTERSS_RSSURI_BLAHBLAH', 'Définit l\'adresse du fil RSS/OPML à afficher');
@define('PLUGIN_REMOTERSS_NOURI', 'Pas de fil RSS/OPML sélectionné');
@define('PLUGIN_REMOTERSS_RSSTARGET', 'Cible des liens');
@define('PLUGIN_REMOTERSS_RSSTARGET_BLAHBLAH', 'Cible des liens aux billets affichés. Valeur par défaut: _blank');
@define('PLUGIN_REMOTERSS_CACHETIME', 'Intervalle de mise à jour');
@define('PLUGIN_REMOTERSS_CACHETIME_BLAHBLAH', 'Le contenu d\'un fil sont stockés dans un ficher cache qui est actualisé toutes les X minutes. Valeur par défaut: 3');
@define('PLUGIN_REMOTERSS_FEEDTYPE', 'Type de file');
@define('PLUGIN_REMOTERSS_FEEDTYPE_BLAHBLAH', 'Choisissez le format du fil');
@define('PLUGIN_REMOTERSS_BULLETIMG', 'Image titre');
@define('PLUGIN_REMOTERSS_BULLETIMG_BLAHBLAH', 'Image à afficher avec chaque titre.');
@define('PLUGIN_REMOTERSS_DISPLAYDATE', 'Afficher la date');
@define('PLUGIN_REMOTERSS_DISPLAYDATE_BLAHBLAH', 'Afficher la date du billet sous son titre?');
/* vim: set sts=4 ts=4 expandtab : */
?>
@@ -0,0 +1,29 @@
<?php # $Id: lang_ja.inc.php 693 2005-11-13 07:25:16Z elf2000 $
/**
* @version $Revision$
* @author Tadashi Jokagi <elf2000@users.sourceforge.net>
* EN-Revision: 692
*/
@define('PLUGIN_REMOTERSS_TITLE', 'リモート RSS/OPML-Blogroll フィード');
@define('PLUGIN_REMOTERSS_BLAHBLAH', 'リモート RSS/OPML フィードの項目を表示します (例えば Blogroll)');
@define('PLUGIN_REMOTERSS_NUMBER', 'エントリの数');
@define('PLUGIN_REMOTERSS_NUMBER_BLAHBLAH', 'どれくらいのエントリを表示しますか (デフォルト: 入力のすべてのエントリ)');
@define('PLUGIN_REMOTERSS_SIDEBARTITLE', 'フィードの題名');
@define('PLUGIN_REMOTERSS_SIDEBARTITLE_BLAHBLAH', 'ブログサイドバーでのフィードタイトル');
@define('PLUGIN_REMOTERSS_RSSURI', 'RSS/OPML URI');
@define('PLUGIN_REMOTERSS_RSSURI_BLAHBLAH', '表示したい RSS/OPML フィードの URI を選びます。');
@define('PLUGIN_REMOTERSS_NOURI', 'RSS/OPML が選択されていません。');
@define('PLUGIN_REMOTERSS_RSSTARGET', 'RSS/OPML リンクターゲット');
@define('PLUGIN_REMOTERSS_RSSTARGET_BLAHBLAH', '表示する RSS 項目のひとつへのリンクのターゲット (デフォルト: _blank)');
@define('PLUGIN_REMOTERSS_CACHETIME', '入力を更新する時間?');
@define('PLUGIN_REMOTERSS_CACHETIME_BLAHBLAH', 'The contents of a feed are stored in a cache which will be updated as soon as its older than X minutes (デフォルト: 3 時間)');
@define('PLUGIN_REMOTERSS_FEEDTYPE', 'フィードタイプ');
@define('PLUGIN_REMOTERSS_FEEDTYPE_BLAHBLAH', 'リモートフィードの形式を選択します。');
@define('PLUGIN_REMOTERSS_BULLETIMG', 'バレット画像');
@define('PLUGIN_REMOTERSS_BULLETIMG_BLAHBLAH', '各ヘッドラインの前に表示する画像');
@define('PLUGIN_REMOTERSS_DISPLAYDATE', '日付の表示');
@define('PLUGIN_REMOTERSS_DISPLAYDATE_BLAHBLAH', 'ヘッドラインの下に日付を表示しますか?');
?>
@@ -0,0 +1,25 @@
<?php # $Id: lang_ko.inc.php,v 1.0 2005/06/29 13:41:13 garvinhicking Exp $
# Translated by: Wesley Hwang-Chung <wesley96@gmail.com>
# (c) 2005 http://www.tool-box.info/
@define('PLUGIN_REMOTERSS_TITLE', '원격 RSS/OPML-블로그롤 피드');
@define('PLUGIN_REMOTERSS_BLAHBLAH', '원격 RSS/OPML 피드의 아이템을 보여줌 (블로그롤 등)');
@define('PLUGIN_REMOTERSS_NUMBER', '글의 수');
@define('PLUGIN_REMOTERSS_NUMBER_BLAHBLAH', '몇 개의 글을 보여주겠습니까? (기본값: 피드에 있는 모든 글)');
@define('PLUGIN_REMOTERSS_SIDEBARTITLE', '피드의 제목');
@define('PLUGIN_REMOTERSS_SIDEBARTITLE_BLAHBLAH', '블로그 옆줄에 나타낼 피드의 제목');
@define('PLUGIN_REMOTERSS_RSSURI', 'RSS/OPML URI');
@define('PLUGIN_REMOTERSS_RSSURI_BLAHBLAH', '표시할 RSS/OPML 피드의 URI');
@define('PLUGIN_REMOTERSS_NOURI', 'RSS/OPML 피드가 선택되지 않음');
@define('PLUGIN_REMOTERSS_RSSTARGET', 'RSS/OPML 링크 출력 대상');
@define('PLUGIN_REMOTERSS_RSSTARGET_BLAHBLAH', '표시된 RSS 아이템의 링크를 출력할 대상 (기본값: _blank)');
@define('PLUGIN_REMOTERSS_CACHETIME', '피드 갱신 주기');
@define('PLUGIN_REMOTERSS_CACHETIME_BLAHBLAH', '피드 내용은 캐시에 저장되었다가 X 초가 지나면 갱신이 됨 (기본값: 3시간)');
@define('PLUGIN_REMOTERSS_FEEDTYPE', '피드 종류');
@define('PLUGIN_REMOTERSS_FEEDTYPE_BLAHBLAH', '원격 피드의 형태를 선택');
@define('PLUGIN_REMOTERSS_BULLETIMG', '글머리표 그림');
@define('PLUGIN_REMOTERSS_BULLETIMG_BLAHBLAH', '각 제목 앞에 표시될 그림 지정');
@define('PLUGIN_REMOTERSS_DISPLAYDATE', '날짜 표시');
@define('PLUGIN_REMOTERSS_DISPLAYDATE_BLAHBLAH', '제목 밑에 날짜를 표시');
?>
@@ -0,0 +1,29 @@
<?php # $Id$
/**
* @version $Revision$
* @author Kostas CoSTa Brzezinski <costa@kofeina.net>
* EN-Revision: Revision of lang_en.inc.php
*/
@define('PLUGIN_REMOTERSS_TITLE', 'Kanały RSS/OPML');
@define('PLUGIN_REMOTERSS_BLAHBLAH', 'Pokazuje wpisy z zewnętrznych kanałów RSS/OPML (np. Blogroll)');
@define('PLUGIN_REMOTERSS_NUMBER', 'Ilość wpisów');
@define('PLUGIN_REMOTERSS_NUMBER_BLAHBLAH', 'Jak wiele wpisów ma być pokazywanych? (Standardowo: wszystkie wpisy danego feedu)');
@define('PLUGIN_REMOTERSS_SIDEBARTITLE', 'Tytuł feedu');
@define('PLUGIN_REMOTERSS_SIDEBARTITLE_BLAHBLAH', 'Tytuł feedu - będzie pokazywany jako tytuł na Panelu Bocznym');
@define('PLUGIN_REMOTERSS_RSSURI', 'RSS/OPML URI');
@define('PLUGIN_REMOTERSS_RSSURI_BLAHBLAH', 'URI kanału RSS/OPML, który chcesz pokazać');
@define('PLUGIN_REMOTERSS_NOURI', 'Nie wybrano adresu kanału RSS/OPML');
@define('PLUGIN_REMOTERSS_RSSTARGET', 'Docelowy adres linku RSS/OPML');
@define('PLUGIN_REMOTERSS_RSSTARGET_BLAHBLAH', 'Adres docelowy linków podawanych przez kanał RSS/OPML (Standardowo: _blank - linki będą otwierane w nowym oknie przeglądarki)');
@define('PLUGIN_REMOTERSS_CACHETIME', 'Jak często pobierać dane?');
@define('PLUGIN_REMOTERSS_CACHETIME_BLAHBLAH', 'Zawartość feedu jest buforowana. Tu ustalasz jak często bufor ma być uaktualniany (w sekundach). (Standardowo: co 3 godziny - 10800 sekund)');
@define('PLUGIN_REMOTERSS_FEEDTYPE', 'Typ feedu');
@define('PLUGIN_REMOTERSS_FEEDTYPE_BLAHBLAH', 'Wybierz format podawanych przez kanał danych');
@define('PLUGIN_REMOTERSS_BULLETIMG', 'Znak graficzny');
@define('PLUGIN_REMOTERSS_BULLETIMG_BLAHBLAH', 'Możesz tu podać link do obrazka, jaki będzie wyświetlany przed każdym pobranym wpisem.');
@define('PLUGIN_REMOTERSS_DISPLAYDATE', 'Wyświetlać datę?');
@define('PLUGIN_REMOTERSS_DISPLAYDATE_BLAHBLAH', 'Czy wyświetlać datę pod każdą linią z wpisem?');
?>
@@ -0,0 +1,36 @@
<?php # $Id: lang_ja.inc.php,v 1.4 2005/05/17 11:37:42 garvinhicking Exp $
##########################################################################
# serendipity - another blogger... #
##########################################################################
# #
# (c) 2003 Jannis Hermanns <J@hacked.it> #
# http://www.jannis.to/programming/serendipity.html #
# #
# Translated by #
# João P. Matos <jmatos@math.ist.utl.pt> #
# #
##########################################################################
@define('PLUGIN_REMOTERSS_TITLE', 'Feed RSS/OPML externo');
@define('PLUGIN_REMOTERSS_BLAHBLAH', 'Mostra os itens dum feed RSS/OPML externo (exemplo: blogroll)');
@define('PLUGIN_REMOTERSS_NUMBER', 'Número de entradas');
@define('PLUGIN_REMOTERSS_NUMBER_BLAHBLAH', 'Quantas entradas devem ser mostradas? (Por omissão, todas as entradas do feed)');
@define('PLUGIN_REMOTERSS_SIDEBARTITLE', 'Título do feed');
@define('PLUGIN_REMOTERSS_SIDEBARTITLE_BLAHBLAH', 'Título do feed na barra lateral');
@define('PLUGIN_REMOTERSS_RSSURI', 'Endereço do feed');
@define('PLUGIN_REMOTERSS_RSSURI_BLAHBLAH', 'Endereço do feed RSS/OPML que quer mostrar');
@define('PLUGIN_REMOTERSS_NOURI', 'Nenhum feed RSS/OPML seleccionado');
@define('PLUGIN_REMOTERSS_RSSTARGET', 'Alvo das ligações');
@define('PLUGIN_REMOTERSS_RSSTARGET_BLAHBLAH', 'Alvo das ligações das entradas mostradas. Por omissão: _blank');
@define('PLUGIN_REMOTERSS_CACHETIME', 'Intervalo de actualização');
@define('PLUGIN_REMOTERSS_CACHETIME_BLAHBLAH', 'O conteúdo de um feed é guardado numa cache que é actualizada de X em X minutos. Valor por omissão: 3');
@define('PLUGIN_REMOTERSS_FEEDTYPE', 'Tipo de feed');
@define('PLUGIN_REMOTERSS_FEEDTYPE_BLAHBLAH', 'Esclha o formato do feed remoto');
@define('PLUGIN_REMOTERSS_BULLETIMG', 'Imagem');
@define('PLUGIN_REMOTERSS_BULLETIMG_BLAHBLAH', 'Imagem a mostrar antes de cada título.');
@define('PLUGIN_REMOTERSS_DISPLAYDATE', 'Mostrar a data');
@define('PLUGIN_REMOTERSS_DISPLAYDATE_BLAHBLAH', 'Mostrar a data da entrada sob o título?');
/* vim: set sts=4 ts=4 expandtab : */
?>
@@ -0,0 +1,34 @@
<?php # $Id: $
##########################################################################
# Copyright (c) 2003-2005, Jannis Hermanns (on behalf the Serendipity #
# Developer Team) All rights reserved. See LICENSE file for licensing #
# details #
# #
# (c) 2003 Jannis Hermanns <J@hacked.it> #
# http://www.jannis.to/programming/serendipity.html #
# #
# Translated by #
# (c) 2004-2005 CapriSkye <admin@capriskye.com> #
# http://open.38.com #
##########################################################################
@define('PLUGIN_REMOTERSS_TITLE', '遠端 RSS/OPML-Blogroll Feed');
@define('PLUGIN_REMOTERSS_BLAHBLAH', '顯示遠端的 RSS/OPML feed (例如 Blogroll)');
@define('PLUGIN_REMOTERSS_NUMBER', '文章數量');
@define('PLUGIN_REMOTERSS_NUMBER_BLAHBLAH', '要顯示多少篇文章?(預設:全部文章)');
@define('PLUGIN_REMOTERSS_SIDEBARTITLE', 'Feed 的標題');
@define('PLUGIN_REMOTERSS_SIDEBARTITLE_BLAHBLAH', '側列顯示的 feed 標題');
@define('PLUGIN_REMOTERSS_RSSURI', 'RSS/OPML 網址');
@define('PLUGIN_REMOTERSS_RSSURI_BLAHBLAH', '顯示 RSS/OPML feed 的網址');
@define('PLUGIN_REMOTERSS_NOURI', '沒有 RSS/OPML feed');
@define('PLUGIN_REMOTERSS_RSSTARGET', 'RSS/OPML 連結目標');
@define('PLUGIN_REMOTERSS_RSSTARGET_BLAHBLAH', '顯示 RSS 的目標屬性 (預設:_blank)');
@define('PLUGIN_REMOTERSS_CACHETIME', '更新 feed 的時間?');
@define('PLUGIN_REMOTERSS_CACHETIME_BLAHBLAH', 'feed 的內容會儲存在快取資料內,時間過後會自動更新 (預設:3 小時)');
@define('PLUGIN_REMOTERSS_FEEDTYPE', 'feed 類型');
@define('PLUGIN_REMOTERSS_FEEDTYPE_BLAHBLAH', '顯示遠端 feed 的形式');
@define('PLUGIN_REMOTERSS_BULLETIMG', '子彈型圖示');
@define('PLUGIN_REMOTERSS_BULLETIMG_BLAHBLAH', '每個標題旁的圖示');
@define('PLUGIN_REMOTERSS_DISPLAYDATE', '顯示日期');
@define('PLUGIN_REMOTERSS_DISPLAYDATE_BLAHBLAH', '在標題下顯示日期?');
?>
@@ -0,0 +1,34 @@
<?php # $Id: $
##########################################################################
# Copyright (c) 2003-2005, Jannis Hermanns (on behalf the Serendipity #
# Developer Team) All rights reserved. See LICENSE file for licensing #
# details #
# #
# (c) 2003 Jannis Hermanns <J@hacked.it> #
# http://www.jannis.to/programming/serendipity.html #
# #
# Translated by #
# (c) 2006 Aphonex Li <aphonex.li@gmail.com> #
# http://www.exten.cn #
##########################################################################
@define('PLUGIN_REMOTERSS_TITLE', '远端 RSS/OPML-Blogroll Feed');
@define('PLUGIN_REMOTERSS_BLAHBLAH', '显示远端的 RSS/OPML feed (例如 Blogroll)');
@define('PLUGIN_REMOTERSS_NUMBER', '文章数量');
@define('PLUGIN_REMOTERSS_NUMBER_BLAHBLAH', '要显示多少篇文章(预设:全部文章)');
@define('PLUGIN_REMOTERSS_SIDEBARTITLE', 'Feed 的标题');
@define('PLUGIN_REMOTERSS_SIDEBARTITLE_BLAHBLAH', '则列显示 feed 标题');
@define('PLUGIN_REMOTERSS_RSSURI', 'RSS/OPML 网址');
@define('PLUGIN_REMOTERSS_RSSURI_BLAHBLAH', '显示 RSS/OPML feed 的网址');
@define('PLUGIN_REMOTERSS_NOURI', '没有 RSS/OPML feed');
@define('PLUGIN_REMOTERSS_RSSTARGET', 'RSS/OPML 连接目标');
@define('PLUGIN_REMOTERSS_RSSTARGET_BLAHBLAH', '显示 RSS 的目标属性 (预设:_blank)');
@define('PLUGIN_REMOTERSS_CACHETIME', '更新 feed 的时间');
@define('PLUGIN_REMOTERSS_CACHETIME_BLAHBLAH', 'feed 的内容会储存在快取资料内,时间过后会自动更新 (预设:3 小时)');
@define('PLUGIN_REMOTERSS_FEEDTYPE', 'feed 类型');
@define('PLUGIN_REMOTERSS_FEEDTYPE_BLAHBLAH', '显示远端 feed 的形式');
@define('PLUGIN_REMOTERSS_BULLETIMG', '子弹型图标');
@define('PLUGIN_REMOTERSS_BULLETIMG_BLAHBLAH', '每个标题旁的图标');
@define('PLUGIN_REMOTERSS_DISPLAYDATE', '显示日期');
@define('PLUGIN_REMOTERSS_DISPLAYDATE_BLAHBLAH', '在标题下显示日期');
?>
@@ -0,0 +1,21 @@
<?php # $Id: serendipity_plugin_shoutbox.php 235 2005-07-08 13:29:39Z garvinhicking $
@define('PLUGIN_REMOTERSS_TITLE', 'Fremder RSS/OPML-Blogroll Feed');
@define('PLUGIN_REMOTERSS_BLAHBLAH', 'Zeigt Einträge eines externen RSS/OPML-Feeds an (z.B. Blogroll)');
@define('PLUGIN_REMOTERSS_NUMBER', 'Anzahl der Einträge');
@define('PLUGIN_REMOTERSS_NUMBER_BLAHBLAH', 'Wieviele Einträge sollen angezeigt werden? (Standard: alle im Feed)');
@define('PLUGIN_REMOTERSS_SIDEBARTITLE', 'Feed-Titel');
@define('PLUGIN_REMOTERSS_SIDEBARTITLE_BLAHBLAH', 'Titel der Feed-Anzeige in der Sidebar des Blogs');
@define('PLUGIN_REMOTERSS_RSSURI', 'RSS/OPML-URI');
@define('PLUGIN_REMOTERSS_RSSURI_BLAHBLAH', 'URI des RSS/OPML-Feeds, der angezeigt werden soll');
@define('PLUGIN_REMOTERSS_RSSTARGET', 'Link-Target');
@define('PLUGIN_REMOTERSS_RSSTARGET_BLAHBLAH', 'Target des Links zu einem der angezeigten RSS-Einträge (Standard: _blank)');
@define('PLUGIN_REMOTERSS_NOURI', 'Kein RSS/OPML-Feed gewählt');
@define('PLUGIN_REMOTERSS_CACHETIME', 'Wann wird der Feed aktualisiert?');
@define('PLUGIN_REMOTERSS_CACHETIME_BLAHBLAH', 'Die Inhalte des fremden Feeds werden gecached. Sobald der Cache älter ist als X Sekunden wird er aktualisiert (Standard: 3 Stunden)');
@define('PLUGIN_REMOTERSS_FEEDTYPE', 'Typ des Feeds');
@define('PLUGIN_REMOTERSS_FEEDTYPE_BLAHBLAH', 'Wählen Sie das Format des einzubindenden Feeds');
@define('PLUGIN_REMOTERSS_BULLETIMG', 'Bullet Image');
@define('PLUGIN_REMOTERSS_BULLETIMG_BLAHBLAH', 'Image to display before each headline.');
@define('PLUGIN_REMOTERSS_DISPLAYDATE', 'Display Date');
@define('PLUGIN_REMOTERSS_DISPLAYDATE_BLAHBLAH', 'Display the date below the headline?');
@@ -0,0 +1,29 @@
<?php # $Id$
/**
* @version $Revision$
* @author Translator Name <yourmail@example.com>
* EN-Revision: Revision of lang_en.inc.php
*/
@define('PLUGIN_REMOTERSS_TITLE', 'Remote RSS/OPML-Blogroll Feed');
@define('PLUGIN_REMOTERSS_BLAHBLAH', 'Show items of a remote RSS/OPML feed (e.g. Blogroll)');
@define('PLUGIN_REMOTERSS_NUMBER', 'Number of entries');
@define('PLUGIN_REMOTERSS_NUMBER_BLAHBLAH', 'How many entries should be displayed? (Default: every entry of the feed)');
@define('PLUGIN_REMOTERSS_SIDEBARTITLE', 'Feed-Title');
@define('PLUGIN_REMOTERSS_SIDEBARTITLE_BLAHBLAH', 'Title of the feed in the blog sidebar');
@define('PLUGIN_REMOTERSS_RSSURI', 'RSS/OPML URI');
@define('PLUGIN_REMOTERSS_RSSURI_BLAHBLAH', 'URI of the RSS/OPML feed which you want to display');
@define('PLUGIN_REMOTERSS_NOURI', 'No RSS/OPML feed selected');
@define('PLUGIN_REMOTERSS_RSSTARGET', 'RSS/OPML linktarget');
@define('PLUGIN_REMOTERSS_RSSTARGET_BLAHBLAH', 'Target of the link to one of the displayed RSS items (Default: _blank)');
@define('PLUGIN_REMOTERSS_CACHETIME', 'When to update the feed?');
@define('PLUGIN_REMOTERSS_CACHETIME_BLAHBLAH', 'The contents of a feed are stored in a cache which will be updated as soon as its older than X seconds (Default: 3 hours)');
@define('PLUGIN_REMOTERSS_FEEDTYPE', 'Feedtype');
@define('PLUGIN_REMOTERSS_FEEDTYPE_BLAHBLAH', 'Choose the format of the remote Feed');
@define('PLUGIN_REMOTERSS_BULLETIMG', 'Bullet Image');
@define('PLUGIN_REMOTERSS_BULLETIMG_BLAHBLAH', 'Image to display before each headline.');
@define('PLUGIN_REMOTERSS_DISPLAYDATE', 'Display Date');
@define('PLUGIN_REMOTERSS_DISPLAYDATE_BLAHBLAH', 'Display the date below the headline?');
?>
@@ -0,0 +1,29 @@
<?php # $Id$
/**
* @version $Revision: 690 $
* @author Rodrigo Lazo Paz <rlazo.paz@gmail.com>
* EN-Revision: 690
*/
@define('PLUGIN_REMOTERSS_TITLE', 'Sindicación remota RSS/OPML-Blogroll');
@define('PLUGIN_REMOTERSS_BLAHBLAH', 'Muestra los elementos de una sindicación remota RSS/OPML (e.g. Blogroll)');
@define('PLUGIN_REMOTERSS_NUMBER', 'Número de entradas');
@define('PLUGIN_REMOTERSS_NUMBER_BLAHBLAH', '¿Cuántas entradas deben ser mostradas? (Por defecto: todas las entradas en la sindicación)');
@define('PLUGIN_REMOTERSS_SIDEBARTITLE', 'Título de la sindicación');
@define('PLUGIN_REMOTERSS_SIDEBARTITLE_BLAHBLAH', 'Título de la sindicación a colocar en la barra lateral del blog');
@define('PLUGIN_REMOTERSS_RSSURI', 'RSS/OPML URI');
@define('PLUGIN_REMOTERSS_RSSURI_BLAHBLAH', 'URI de la sindicación RSS/OPML que deseas mostrar');
@define('PLUGIN_REMOTERSS_NOURI', 'Ninguna sindicación RSS/OPML seleccionada');
@define('PLUGIN_REMOTERSS_RSSTARGET', 'RSS/OPML linktarget');
@define('PLUGIN_REMOTERSS_RSSTARGET_BLAHBLAH', 'Objetivo del enlace de a uno de los elementos RSS mostrados (Por defecto: _blank)');
@define('PLUGIN_REMOTERSS_CACHETIME', '¿Cuándo actualizar la sindicación?');
@define('PLUGIN_REMOTERSS_CACHETIME_BLAHBLAH', 'Los contenidos de una sindicación son almacenados en un caché que será actualizado cuando sea mayor a X segundos (Por defecto: 3 horas)');
@define('PLUGIN_REMOTERSS_FEEDTYPE', 'Tipo de sindicación');
@define('PLUGIN_REMOTERSS_FEEDTYPE_BLAHBLAH', 'Elige el típo de formato de la sindicación remota');
@define('PLUGIN_REMOTERSS_BULLETIMG', 'Bullet Image');
@define('PLUGIN_REMOTERSS_BULLETIMG_BLAHBLAH', 'Imágen a mostrar antes de cada titular.');
@define('PLUGIN_REMOTERSS_DISPLAYDATE', '¿Mostrar fecha?');
@define('PLUGIN_REMOTERSS_DISPLAYDATE_BLAHBLAH', '¿Mostrar la fecha luego del titular?');
?>
@@ -0,0 +1,37 @@
<?php # $Id: lang_ja.inc.php,v 1.4 2005/05/17 11:37:42 garvinhicking Exp $
##########################################################################
# serendipity - another blogger... #
##########################################################################
# #
# (c) 2003 Jannis Hermanns <J@hacked.it> #
# http://www.jannis.to/programming/serendipity.html #
# #
# Translated by #
# Sebastian Mordziol <argh@php-tools.net> #
# http://sebastian.mordziol.de #
# #
##########################################################################
@define('PLUGIN_REMOTERSS_TITLE', 'Fil RSS/OPML externe');
@define('PLUGIN_REMOTERSS_BLAHBLAH', 'Affiche les billets d\'un fil RSS/OPML externe (exemple: blogroll)');
@define('PLUGIN_REMOTERSS_NUMBER', 'Nombre de billets');
@define('PLUGIN_REMOTERSS_NUMBER_BLAHBLAH', 'Définit le nombre de billets à afficher. (Par défaut, tous les billets du fil)');
@define('PLUGIN_REMOTERSS_SIDEBARTITLE', 'Titre du fil');
@define('PLUGIN_REMOTERSS_SIDEBARTITLE_BLAHBLAH', 'Titre du fil dans la barre latérale');
@define('PLUGIN_REMOTERSS_RSSURI', 'Adresse du fil');
@define('PLUGIN_REMOTERSS_RSSURI_BLAHBLAH', 'Définit l\'adresse du fil RSS/OPML à afficher');
@define('PLUGIN_REMOTERSS_NOURI', 'Pas de fil RSS/OPML sélectionné');
@define('PLUGIN_REMOTERSS_RSSTARGET', 'Cible des liens');
@define('PLUGIN_REMOTERSS_RSSTARGET_BLAHBLAH', 'Cible des liens aux billets affichés. Valeur par défaut: _blank');
@define('PLUGIN_REMOTERSS_CACHETIME', 'Intervalle de mise à jour');
@define('PLUGIN_REMOTERSS_CACHETIME_BLAHBLAH', 'Le contenu d\'un fil sont stockés dans un ficher cache qui est actualisé toutes les X minutes. Valeur par défaut: 3');
@define('PLUGIN_REMOTERSS_FEEDTYPE', 'Type de file');
@define('PLUGIN_REMOTERSS_FEEDTYPE_BLAHBLAH', 'Choisissez le format du fil');
@define('PLUGIN_REMOTERSS_BULLETIMG', 'Image titre');
@define('PLUGIN_REMOTERSS_BULLETIMG_BLAHBLAH', 'Image à afficher avec chaque titre.');
@define('PLUGIN_REMOTERSS_DISPLAYDATE', 'Afficher la date');
@define('PLUGIN_REMOTERSS_DISPLAYDATE_BLAHBLAH', 'Afficher la date du billet sous son titre?');
/* vim: set sts=4 ts=4 expandtab : */
?>
@@ -0,0 +1,29 @@
<?php # $Id$
/**
* @version $Revision$
* @author Tadashi Jokagi <elf2000@users.sourceforge.net>
* EN-Revision: 692
*/
@define('PLUGIN_REMOTERSS_TITLE', 'リモート RSS/OPML-Blogroll フィード');
@define('PLUGIN_REMOTERSS_BLAHBLAH', 'リモート RSS/OPML フィードの項目を表示します (例えば Blogroll)');
@define('PLUGIN_REMOTERSS_NUMBER', 'エントリの数');
@define('PLUGIN_REMOTERSS_NUMBER_BLAHBLAH', 'どれくらいのエントリを表示しますか (デフォルト: 入力のすべてのエントリ)');
@define('PLUGIN_REMOTERSS_SIDEBARTITLE', 'フィードの題名');
@define('PLUGIN_REMOTERSS_SIDEBARTITLE_BLAHBLAH', 'ブログサイドバーでのフィードタイトル');
@define('PLUGIN_REMOTERSS_RSSURI', 'RSS/OPML URI');
@define('PLUGIN_REMOTERSS_RSSURI_BLAHBLAH', '表示したい RSS/OPML フィードの URI を選びます。');
@define('PLUGIN_REMOTERSS_NOURI', 'RSS/OPML が選択されていません。');
@define('PLUGIN_REMOTERSS_RSSTARGET', 'RSS/OPML リンクターゲット');
@define('PLUGIN_REMOTERSS_RSSTARGET_BLAHBLAH', '表示する RSS 項目のひとつへのリンクのターゲット (デフォルト: _blank)');
@define('PLUGIN_REMOTERSS_CACHETIME', '入力を更新する時間?');
@define('PLUGIN_REMOTERSS_CACHETIME_BLAHBLAH', 'The contents of a feed are stored in a cache which will be updated as soon as its older than X minutes (デフォルト: 3 時間)');
@define('PLUGIN_REMOTERSS_FEEDTYPE', 'フィードタイプ');
@define('PLUGIN_REMOTERSS_FEEDTYPE_BLAHBLAH', 'リモートフィードの形式を選択します。');
@define('PLUGIN_REMOTERSS_BULLETIMG', 'バレット画像');
@define('PLUGIN_REMOTERSS_BULLETIMG_BLAHBLAH', '各ヘッドラインの前に表示する画像');
@define('PLUGIN_REMOTERSS_DISPLAYDATE', '日付の表示');
@define('PLUGIN_REMOTERSS_DISPLAYDATE_BLAHBLAH', 'ヘッドラインの下に日付を表示しますか?');
?>
@@ -0,0 +1,25 @@
<?php # $Id: lang_ko.inc.php,v 1.0 2005/06/29 13:41:13 garvinhicking Exp $
# Translated by: Wesley Hwang-Chung <wesley96@gmail.com>
# (c) 2005 http://www.tool-box.info/
@define('PLUGIN_REMOTERSS_TITLE', '원격 RSS/OPML-블로그롤 피드');
@define('PLUGIN_REMOTERSS_BLAHBLAH', '원격 RSS/OPML 피드의 아이템을 보여줌 (블로그롤 등)');
@define('PLUGIN_REMOTERSS_NUMBER', '글의 수');
@define('PLUGIN_REMOTERSS_NUMBER_BLAHBLAH', '몇 개의 글을 보여주겠습니까? (기본값: 피드에 있는 모든 글)');
@define('PLUGIN_REMOTERSS_SIDEBARTITLE', '피드의 제목');
@define('PLUGIN_REMOTERSS_SIDEBARTITLE_BLAHBLAH', '블로그 옆줄에 나타낼 피드의 제목');
@define('PLUGIN_REMOTERSS_RSSURI', 'RSS/OPML URI');
@define('PLUGIN_REMOTERSS_RSSURI_BLAHBLAH', '표시할 RSS/OPML 피드의 URI');
@define('PLUGIN_REMOTERSS_NOURI', 'RSS/OPML 피드가 선택되지 않음');
@define('PLUGIN_REMOTERSS_RSSTARGET', 'RSS/OPML 링크 출력 대상');
@define('PLUGIN_REMOTERSS_RSSTARGET_BLAHBLAH', '표시된 RSS 아이템의 링크를 출력할 대상 (기본값: _blank)');
@define('PLUGIN_REMOTERSS_CACHETIME', '피드 갱신 주기');
@define('PLUGIN_REMOTERSS_CACHETIME_BLAHBLAH', '피드 내용은 캐시에 저장되었다가 X 초가 지나면 갱신이 됨 (기본값: 3시간)');
@define('PLUGIN_REMOTERSS_FEEDTYPE', '피드 종류');
@define('PLUGIN_REMOTERSS_FEEDTYPE_BLAHBLAH', '원격 피드의 형태를 선택');
@define('PLUGIN_REMOTERSS_BULLETIMG', '글머리표 그림');
@define('PLUGIN_REMOTERSS_BULLETIMG_BLAHBLAH', '각 제목 앞에 표시될 그림 지정');
@define('PLUGIN_REMOTERSS_DISPLAYDATE', '날짜 표시');
@define('PLUGIN_REMOTERSS_DISPLAYDATE_BLAHBLAH', '제목 밑에 날짜를 표시');
?>
@@ -0,0 +1,29 @@
<?php # $Id$
/**
* @version $Revision$
* @author Kostas CoSTa Brzezinski <costa@kofeina.net>
* EN-Revision: Revision of lang_en.inc.php
*/
@define('PLUGIN_REMOTERSS_TITLE', 'Kana³y RSS/OPML');
@define('PLUGIN_REMOTERSS_BLAHBLAH', 'Pokazuje wpisy z zewnêtrznych kana³ów RSS/OPML (np. Blogroll)');
@define('PLUGIN_REMOTERSS_NUMBER', 'Ilo¶æ wpisów');
@define('PLUGIN_REMOTERSS_NUMBER_BLAHBLAH', 'Jak wiele wpisów ma byæ pokazywanych? (Standardowo: wszystkie wpisy danego feedu)');
@define('PLUGIN_REMOTERSS_SIDEBARTITLE', 'Tytu³ feedu');
@define('PLUGIN_REMOTERSS_SIDEBARTITLE_BLAHBLAH', 'Tytu³ feedu - bêdzie pokazywany jako tytu³ na Panelu Bocznym');
@define('PLUGIN_REMOTERSS_RSSURI', 'RSS/OPML URI');
@define('PLUGIN_REMOTERSS_RSSURI_BLAHBLAH', 'URI kana³u RSS/OPML, który chcesz pokazaæ');
@define('PLUGIN_REMOTERSS_NOURI', 'Nie wybrano adresu kana³u RSS/OPML');
@define('PLUGIN_REMOTERSS_RSSTARGET', 'Docelowy adres linku RSS/OPML');
@define('PLUGIN_REMOTERSS_RSSTARGET_BLAHBLAH', 'Adres docelowy linków podawanych przez kana³ RSS/OPML (Standardowo: _blank - linki bêd± otwierane w nowym oknie przegl±darki)');
@define('PLUGIN_REMOTERSS_CACHETIME', 'Jak czêsto pobieraæ dane?');
@define('PLUGIN_REMOTERSS_CACHETIME_BLAHBLAH', 'Zawarto¶æ feedu jest buforowana. Tu ustalasz jak czêsto bufor ma byæ uaktualniany (w sekundach). (Standardowo: co 3 godziny - 10800 sekund)');
@define('PLUGIN_REMOTERSS_FEEDTYPE', 'Typ feedu');
@define('PLUGIN_REMOTERSS_FEEDTYPE_BLAHBLAH', 'Wybierz format podawanych przez kana³ danych');
@define('PLUGIN_REMOTERSS_BULLETIMG', 'Znak graficzny');
@define('PLUGIN_REMOTERSS_BULLETIMG_BLAHBLAH', 'Mo¿esz tu podaæ link do obrazka, jaki bêdzie wy¶wietlany przed ka¿dym pobranym wpisem.');
@define('PLUGIN_REMOTERSS_DISPLAYDATE', 'Wy¶wietlaæ datê?');
@define('PLUGIN_REMOTERSS_DISPLAYDATE_BLAHBLAH', 'Czy wy¶wietlaæ datê pod ka¿d± lini± z wpisem?');
?>
@@ -0,0 +1,36 @@
<?php # $Id: lang_ja.inc.php,v 1.4 2005/05/17 11:37:42 garvinhicking Exp $
##########################################################################
# serendipity - another blogger... #
##########################################################################
# #
# (c) 2003 Jannis Hermanns <J@hacked.it> #
# http://www.jannis.to/programming/serendipity.html #
# #
# Translated by #
# João P. Matos <jmatos@math.ist.utl.pt> #
# #
##########################################################################
@define('PLUGIN_REMOTERSS_TITLE', 'Feed RSS/OPML externo');
@define('PLUGIN_REMOTERSS_BLAHBLAH', 'Mostra os itens dum feed RSS/OPML externo (exemplo: blogroll)');
@define('PLUGIN_REMOTERSS_NUMBER', 'Número de entradas');
@define('PLUGIN_REMOTERSS_NUMBER_BLAHBLAH', 'Quantas entradas devem ser mostradas? (Por omissão, todas as entradas do feed)');
@define('PLUGIN_REMOTERSS_SIDEBARTITLE', 'Título do feed');
@define('PLUGIN_REMOTERSS_SIDEBARTITLE_BLAHBLAH', 'Título do feed na barra lateral');
@define('PLUGIN_REMOTERSS_RSSURI', 'Endereço do feed');
@define('PLUGIN_REMOTERSS_RSSURI_BLAHBLAH', 'Endereço do feed RSS/OPML que quer mostrar');
@define('PLUGIN_REMOTERSS_NOURI', 'Nenhum feed RSS/OPML seleccionado');
@define('PLUGIN_REMOTERSS_RSSTARGET', 'Alvo das ligações');
@define('PLUGIN_REMOTERSS_RSSTARGET_BLAHBLAH', 'Alvo das ligações das entradas mostradas. Por omissão: _blank');
@define('PLUGIN_REMOTERSS_CACHETIME', 'Intervalo de actualização');
@define('PLUGIN_REMOTERSS_CACHETIME_BLAHBLAH', 'O conteúdo de um feed é guardado numa cache que é actualizada de X em X minutos. Valor por omissão: 3');
@define('PLUGIN_REMOTERSS_FEEDTYPE', 'Tipo de feed');
@define('PLUGIN_REMOTERSS_FEEDTYPE_BLAHBLAH', 'Esclha o formato do feed remoto');
@define('PLUGIN_REMOTERSS_BULLETIMG', 'Imagem');
@define('PLUGIN_REMOTERSS_BULLETIMG_BLAHBLAH', 'Imagem a mostrar antes de cada título.');
@define('PLUGIN_REMOTERSS_DISPLAYDATE', 'Mostrar a data');
@define('PLUGIN_REMOTERSS_DISPLAYDATE_BLAHBLAH', 'Mostrar a data da entrada sob o título?');
/* vim: set sts=4 ts=4 expandtab : */
?>
@@ -0,0 +1,34 @@
<?php # $Id: $
##########################################################################
# Copyright (c) 2003-2005, Jannis Hermanns (on behalf the Serendipity #
# Developer Team) All rights reserved. See LICENSE file for licensing #
# details #
# #
# (c) 2003 Jannis Hermanns <J@hacked.it> #
# http://www.jannis.to/programming/serendipity.html #
# #
# Translated by #
# (c) 2004-2005 CapriSkye <admin@capriskye.com> #
# http://open.38.com #
##########################################################################
@define('PLUGIN_REMOTERSS_TITLE', '遠端 RSS/OPML-Blogroll Feed');
@define('PLUGIN_REMOTERSS_BLAHBLAH', '顯示遠端的 RSS/OPML feed (例如 Blogroll)');
@define('PLUGIN_REMOTERSS_NUMBER', '文章數量');
@define('PLUGIN_REMOTERSS_NUMBER_BLAHBLAH', '要顯示多少篇文章?(預設:全部文章)');
@define('PLUGIN_REMOTERSS_SIDEBARTITLE', 'Feed 的標題');
@define('PLUGIN_REMOTERSS_SIDEBARTITLE_BLAHBLAH', '側列顯示的 feed 標題');
@define('PLUGIN_REMOTERSS_RSSURI', 'RSS/OPML 網址');
@define('PLUGIN_REMOTERSS_RSSURI_BLAHBLAH', '顯示 RSS/OPML feed 的網址');
@define('PLUGIN_REMOTERSS_NOURI', '沒有 RSS/OPML feed');
@define('PLUGIN_REMOTERSS_RSSTARGET', 'RSS/OPML 連結目標');
@define('PLUGIN_REMOTERSS_RSSTARGET_BLAHBLAH', '顯示 RSS 的目標屬性 (預設:_blank)');
@define('PLUGIN_REMOTERSS_CACHETIME', '更新 feed 的時間?');
@define('PLUGIN_REMOTERSS_CACHETIME_BLAHBLAH', 'feed 的內容會儲存在快取資料內,時間過後會自動更新 (預設:3 小時)');
@define('PLUGIN_REMOTERSS_FEEDTYPE', 'feed 類型');
@define('PLUGIN_REMOTERSS_FEEDTYPE_BLAHBLAH', '顯示遠端 feed 的形式');
@define('PLUGIN_REMOTERSS_BULLETIMG', '子彈型圖示');
@define('PLUGIN_REMOTERSS_BULLETIMG_BLAHBLAH', '每個標題旁的圖示');
@define('PLUGIN_REMOTERSS_DISPLAYDATE', '顯示日期');
@define('PLUGIN_REMOTERSS_DISPLAYDATE_BLAHBLAH', '在標題下顯示日期?');
?>
@@ -0,0 +1,34 @@
<?php # $Id: $
##########################################################################
# Copyright (c) 2003-2005, Jannis Hermanns (on behalf the Serendipity #
# Developer Team) All rights reserved. See LICENSE file for licensing #
# details #
# #
# (c) 2003 Jannis Hermanns <J@hacked.it> #
# http://www.jannis.to/programming/serendipity.html #
# #
# Translated by #
# (c) 2006 Aphonex Li <aphonex.li@gmail.com> #
# http://www.exten.cn #
##########################################################################
@define('PLUGIN_REMOTERSS_TITLE', '远端 RSS/OPML-Blogroll Feed');
@define('PLUGIN_REMOTERSS_BLAHBLAH', '显示远端的 RSS/OPML feed (例如 Blogroll)');
@define('PLUGIN_REMOTERSS_NUMBER', '文章数量');
@define('PLUGIN_REMOTERSS_NUMBER_BLAHBLAH', '要显示多少篇文章(预设:全部文章)');
@define('PLUGIN_REMOTERSS_SIDEBARTITLE', 'Feed 的标题');
@define('PLUGIN_REMOTERSS_SIDEBARTITLE_BLAHBLAH', '则列显示 feed 标题');
@define('PLUGIN_REMOTERSS_RSSURI', 'RSS/OPML 网址');
@define('PLUGIN_REMOTERSS_RSSURI_BLAHBLAH', '显示 RSS/OPML feed 的网址');
@define('PLUGIN_REMOTERSS_NOURI', '没有 RSS/OPML feed');
@define('PLUGIN_REMOTERSS_RSSTARGET', 'RSS/OPML 连接目标');
@define('PLUGIN_REMOTERSS_RSSTARGET_BLAHBLAH', '显示 RSS 的目标属性 (预设:_blank)');
@define('PLUGIN_REMOTERSS_CACHETIME', '更新 feed 的时间');
@define('PLUGIN_REMOTERSS_CACHETIME_BLAHBLAH', 'feed 的内容会储存在快取资料内,时间过后会自动更新 (预设:3 小时)');
@define('PLUGIN_REMOTERSS_FEEDTYPE', 'feed 类型');
@define('PLUGIN_REMOTERSS_FEEDTYPE_BLAHBLAH', '显示远端 feed 的形式');
@define('PLUGIN_REMOTERSS_BULLETIMG', '子弹型图标');
@define('PLUGIN_REMOTERSS_BULLETIMG_BLAHBLAH', '每个标题旁的图标');
@define('PLUGIN_REMOTERSS_DISPLAYDATE', '显示日期');
@define('PLUGIN_REMOTERSS_DISPLAYDATE_BLAHBLAH', '在标题下显示日期');
?>
@@ -0,0 +1,608 @@
<?php # $Id$
// Contributed by Udo Gerhards <udo@babyblaue-seiten.de>
// OPML Contributed by Richard Thomas Harrison <rich@mibnet.plus.com>
// Probe for a language include with constants. Still include defines later on, if some constants were missing
$probelang = dirname(__FILE__) . '/' . $serendipity['charset'] . 'lang_' . $serendipity['lang'] . '.inc.php';
if (file_exists($probelang)) {
include $probelang;
}
include dirname(__FILE__) . '/lang_en.inc.php';
class s9y_remoterss_XMLTree {
function GetChildren($vals, &$i) {
$children = array();
$cnt = sizeof($vals);
while (++$i < $cnt) {
// compare type
switch ($vals[$i]['type']) {
case 'cdata':
$children[] = $vals[$i]['value'];
break;
case 'complete':
$children[] = array(
'tag' => $vals[$i]['tag'],
'attributes' => $vals[$i]['attributes'],
'value' => $vals[$i]['value']
);
break;
case 'open':
$children[] = array(
'tag' => $vals[$i]['tag'],
'attributes' => $vals[$i]['attributes'],
'value' => $vals[$i]['value'],
'children' => $this->GetChildren($vals, $i)
);
break;
case 'close':
return $children;
}
}
}
function GetXMLTree($file) {
require_once S9Y_PEAR_PATH . 'HTTP/Request.php';
serendipity_request_start();
$req = &new HTTP_Request($file);
if (PEAR::isError($req->sendRequest()) || $req->getResponseCode() != '200') {
$data = file_get_contents($file);
} else {
// Fetch file
$data = $req->getResponseBody();
}
serendipity_request_end();
// Global replacements
// by: waldo@wh-e.com - trim space around tags not within
$data = eregi_replace('>[[:space:]]+<', '><', $data);
// Flatten the input opml file to not have nested categories
$data = preg_replace('@<outline[^>]+[^/]>@imsU', '', $data);
$data = str_replace('</outline>', '', $data);
// XML functions
$xml_string = '<?xml version="1.0" encoding="UTF-8" ?>';
if (preg_match('@(<\?xml.+\?>)@imsU', $data, $xml_head)) {
$xml_string = $xml_head[1];
}
$encoding = 'UTF-8';
if (preg_match('@encoding="([^"]+)"@', $xml_string, $xml_encoding)) {
$encoding = $xml_encoding[1];
}
$p = xml_parser_create($encoding);
// by: anony@mous.com - meets XML 1.0 specification
@xml_parser_set_option($p, XML_OPTION_CASE_FOLDING, 0);
xml_parser_set_option($p, XML_OPTION_TARGET_ENCODING, LANG_CHARSET);
xml_parse_into_struct($p, $data, $vals, $index);
xml_parser_free($p);
$i = 0;
$tree = array();
$tree[] = array(
'tag' => $vals[$i]['tag'],
'attributes' => $vals[$i]['attributes'],
'value' => $vals[$i]['value'],
'children' => $this->GetChildren($vals, $i)
);
return $tree;
}
}
define('OPMLDEBUG', '0');
class s9y_remoterss_OPML {
var $cacheOPMLHead;
var $cacheOPMLBody;
var $cacheOPMLOutline;
function s9y_remoterss_OPML() {
$this->cacheOPMLHead = array();
$this->cacheOPMLBody = array();
$this->cacheOPMLOutline = array();
}
function parseOPML($file) {
$xmltree = new s9y_remoterss_XMLTree();
$opmltree = $xmltree->GetXMLTree($file);
return $opmltree[0];
}
function findOPMLTag($arr, $tag) {
$i = 0;
$tagindex = false;
$children = $arr['children'];
$cnt = count($children);
while ($i < $cnt) {
if ($children[$i]['tag'] == $tag) {
$tagindex = $i;
break;
}
++$i;
}
return $tagindex !== false ? $tagindex : false;
}
function getOPMLTag($tree, $tag) {
$tagindex = $this->findOPMLTag($tree, $tag);
if (OPMLDEBUG == 1) {
echo "\ngetOPMLTag('" . $tag . "') = " . $tagindex . "<pre>\n";
print_r($tree['children'][$tagindex]);
echo "\n</pre>\n";
}
return $tagindex !== false ? $tree['children'][$tagindex] : false;
}
function getOPMLHead($tree) {
$head = array();
if (isset($this->cacheOPMLHead) && count($this->cacheOPMLHead) != 0) {
$head = $this->cacheOPMLHead;
} else {
if (OPMLDEBUG == 1) {
echo "\ngetOPMLHead<br />\n";
}
$head = $this->getOPMLTag($tree, 'head');
if ($head !== false) {
$this->cacheOPMLHead = $head;
if (OPMLDEBUG == 1) {
echo "\nCaching head<pre>\n";
print_r($this->cacheOPMLHead);
echo "\n</pre>\n";
}
} elseif (OPMLDEBUG == 1) {
echo "\nfalse<br />\n";
}
}
return $head['tag'] == 'head' ? $head : false;
}
function getOPMLBody($tree) {
$body = array();
if (isset($this->cacheOPMLBody) && count($this->cacheOPMLBody) != 0) {
$body = $this->cacheOPMLBody;
} else {
if (OPMLDEBUG == 1) {
echo "\ngetOPMLBody<br />\n";
}
$body = $this->getOPMLTag($tree, 'body');
if ($body !== false) {
$this->cacheOPMLBody = $body;
if (OPMLDEBUG == 1) {
echo "\nCaching body<pre>\n";
print_r($this->cacheOPMLBody);
echo "\n</pre>\n";
}
} elseif (OPMLDEBUG == 1) {
echo "\nfalse<br />\n";
}
}
return $body['tag'] == 'body' ? $body : false;
}
function getOPMLOutline($tree, $index) {
if (isset($this->cacheOPMLOutline[$index])) {
return $this->cacheOPMLOutline[$index];
}
$body = $this->getOPMLBody($tree);
if (!$body) {
return false;
}
$outline = $body['children'][$index];
if ($outline['tag'] == 'outline') {
$this->cacheOPMLOutline[$index] = $outline;
if (OPMLDEBUG == 1) {
echo "\ngetOPMLOutline[" . $index . "]<br />\n";
echo "\nCaching outline[" . $index . "]<pre>\n";
print_r($this->cacheOPMLOutline[$index]);
echo "\n</pre>\n";
}
return $outline;
} else {
return false;
}
}
function getOPMLOutlineAttr($tree, $index) {
$outline = $this->getOPMLOutline($tree, $index);
return $outline != false ? $outline['attributes'] : false;
}
}
class serendipity_plugin_remoterss extends serendipity_plugin {
var $title = PLUGIN_REMOTERSS_TITLE;
var $encoding = null;
function introspect(&$propbag) {
$this->title = $this->get_config('sidebartitle', $this->title);
$propbag->add('name', PLUGIN_REMOTERSS_TITLE);
$propbag->add('description', PLUGIN_REMOTERSS_BLAHBLAH);
$propbag->add('stackable', true);
$propbag->add('author', 'Udo Gerhards, Richard Thomas Harrison');
$propbag->add('version', '1.5');
$propbag->add('requirements', array(
'serendipity' => '0.8',
'smarty' => '2.6.7',
'php' => '4.1.0'
));
$propbag->add('configuration', array('number', 'displaydate', 'dateformat', 'sidebartitle', 'rssuri', 'charset', 'target', 'cachetime', 'feedtype', 'bulletimg', 'markup'));
$propbag->add('groups', array('FRONTEND_EXTERNAL_SERVICES'));
}
function introspect_config_item($name, &$propbag) {
switch($name) {
case 'markup':
$propbag->add('type', 'boolean');
$propbag->add('name', DO_MARKUP);
$propbag->add('description', DO_MARKUP_DESCRIPTION);
$propbag->add('default', 'false');
break;
case 'charset':
$propbag->add('type', 'radio');
$propbag->add('name', CHARSET);
$propbag->add('description', CHARSET);
$propbag->add('default', 'native');
$charsets = array();
if (LANG_CHARSET != 'UTF-8') {
$charsets['value'][] = $charsets['desc'][] = 'UTF-8';
}
if (LANG_CHARSET != 'ISO-8859-1') {
$charsets['value'][] = $charsets['desc'][] = 'ISO-8859-1';
}
$charsets['value'][] = 'native';
$charsets['desc'][] = LANG_CHARSET;
$propbag->add('radio', $charsets);
break;
case 'feedtype':
$select = array('rss' => 'RSS', 'opml' => 'OPML');
$propbag->add('type', 'select');
$propbag->add('name', PLUGIN_REMOTERSS_FEEDTYPE);
$propbag->add('description', PLUGIN_REMOTERSS_FEEDTYPE_BLAHBLAH);
$propbag->add('select_values', $select);
$propbag->add('default', 'rss');
break;
case 'number':
$propbag->add('type', 'string');
$propbag->add('name', PLUGIN_REMOTERSS_NUMBER);
$propbag->add('description', PLUGIN_REMOTERSS_NUMBER_BLAHBLAH);
$propbag->add('default', '0');
break;
case 'dateformat':
$propbag->add('type', 'string');
$propbag->add('name', GENERAL_PLUGIN_DATEFORMAT);
$propbag->add('description', sprintf(GENERAL_PLUGIN_DATEFORMAT_BLAHBLAH, '%A, %B %e. %Y'));
$propbag->add('default', '%A, %B %e. %Y');
break;
case 'sidebartitle':
$propbag->add('type', 'string');
$propbag->add('name', PLUGIN_REMOTERSS_SIDEBARTITLE);
$propbag->add('description', PLUGIN_REMOTERSS_SIDEBARTITLE_BLAHBLAH);
$propbag->add('default', '');
break;
case 'rssuri':
$propbag->add('type', 'string');
$propbag->add('name', PLUGIN_REMOTERSS_RSSURI);
$propbag->add('description', PLUGIN_REMOTERSS_RSSURI_BLAHBLAH);
$propbag->add('default', '');
break;
case 'target':
$propbag->add('type', 'string');
$propbag->add('name', PLUGIN_REMOTERSS_RSSTARGET);
$propbag->add('description', PLUGIN_REMOTERSS_RSSTARGET_BLAHBLAH);
$propbag->add('default', '_blank');
break;
case 'cachetime':
$propbag->add('type', 'string');
$propbag->add('name', PLUGIN_REMOTERSS_CACHETIME);
$propbag->add('description', PLUGIN_REMOTERSS_CACHETIME_BLAHBLAH);
$propbag->add('default', 10800);
break;
case 'bulletimg':
$propbag->add('type', 'string');
$propbag->add('name', PLUGIN_REMOTERSS_BULLETIMG);
$propbag->add('description', PLUGIN_REMOTERSS_BULLETIMG_BLAHBLAH);
$propbag->add('default', '');
break;
case 'displaydate':
$propbag->add('type', 'boolean');
$propbag->add('name', PLUGIN_REMOTERSS_DISPLAYDATE);
$propbag->add('description', PLUGIN_REMOTERSS_BLAHBLAH);
$propbag->add('default', 'true');
break;
default:
return false;
}
return true;
}
// Check if a given URI is readable.
function urlcheck($uri) {
// These two substring comparisons are faster than one regexp.
if ('http://' != substr($uri, 0, 7) && 'https://' != substr($uri, 0, 8)) {
return false;
}
// Disabled by now. May get enabled in the future, but for now the extra HTTP call isn't worth trying.
return true;
require_once S9Y_PEAR_PATH . 'HTTP/Request.php';
serendipity_request_start();
$req = &new HTTP_Request($uri);
if (PEAR::isError($req->sendRequest()) || !preg_match('@^[23]..@', $req->getResponseCode())) {
serendipity_request_end();
return false;
} else {
serendipity_request_end();
return true;
}
}
function debug($msg) {
static $debug = false;
if ($debug === false) {
return false;
}
$fp = fopen('rss.log', 'a');
fwrite($fp, '[' . date('Y-m-d H:i') . '] ' . $msg . "\n");
fclose($fp);
}
function generate_content(&$title) {
global $serendipity;
$number = $this->get_config('number');
$displaydate = $this->get_config('displaydate','true');
$dateformat = $this->get_config('dateformat');
$sidebartitle = $title = $this->get_config('sidebartitle', $this->title);
$rssuri = $this->get_config('rssuri');
$target = $this->get_config('target');
$cachetime = $this->get_config('cachetime');
$feedtype = $this->get_config('feedtype', 'rss');
$markup = $this->get_config('markup', 'false');
$bulletimg = $this->get_config('bulletimg');
$charset = $this->get_config('charset', 'native');
if (!$number || !is_numeric($number) || $number < 1) {
$showAll = true;
} else {
$showAll = false;
}
if (!$dateformat || strlen($dateformat) < 1) {
$dateformat = '%A, %B %e. %Y';
}
if (!$cachetime || !is_numeric($cachetime)) {
$cachetime = 10800; // 3 hours in seconds
}
if (trim($rssuri)) {
$feedcache = $serendipity['serendipityPath'] . 'templates_c/remoterss_cache_' . preg_replace('@[^a-z0-9]*@i', '', $rssuri) . '.dat';
if (!file_exists($feedcache) || filesize($feedcache) == 0 || filemtime($feedcache) < (time() - $cachetime)) {
$this->debug('Cachefile does not existing.');
if (!$this->urlcheck($rssuri)) {
$this->debug('URLCheck failed');
echo '<!-- No valid URL! -->';
} elseif ($feedtype == 'rss') {
$this->debug('URLCheck succeeded. Touching ' . $feedcache);
// Touching the feedcache file will prevent loops of death when the RSS target is the same URI than our blog.
@touch($feedcache);
require_once S9Y_PEAR_PATH . 'Onyx/RSS.php';
$c = &new Onyx_RSS($charset);
$this->debug('Running Onyx Parser');
$c->parse($rssuri);
$this->encoding = $c->rss['encoding'];
$i = 0;
$content = '';
while (($showAll || ($i < $number)) && ($item = $c->getNextItem())) {
if (empty($item['title'])) {
continue;
}
$content .= '<a href="' . $this->decode($item['link']) . '" ' . (!empty($target) ? 'target="'.$target.'"' : '') . '>';
if (!empty($bulletimg)) {
$content .= '<img src="' . $bulletimg . '" border="0" alt="*" /> ';
}
$content .= $this->decode($item['title']) . "</a><br />\n";
$item['timestamp'] = @strtotime(isset($item['pubdate']) ? $item['pubdate'] : $item['dc:date']);
if (!($item['timestamp'] == -1) AND ($displaydate == 'true')) {
$content .= '<div class="serendipitySideBarDate">'
. htmlspecialchars(serendipity_formatTime($dateformat, $item['timestamp'], false))
. '</div><br />';
}
++$i;
}
$this->debug('Caching Feed (' . strlen($content) . ' bytes)');
$fp = @fopen($feedcache, 'w');
if (trim($content) != '' && $fp) {
fwrite($fp, $content);
fclose($fp);
$this->debug('Feed cache written');
} else {
$this->debug('Could not write (empty?) cache.');
echo '<!-- Cache failed to ' . $feedcache . ' in ' . getcwd() . ' --><br />';
if (trim($content) == '') {
$this->debug('Getting old feedcache');
$content = @file_get_contents($feedcache);
}
}
$this->debug('RSS Plugin finished.');
} elseif ($feedtype == 'opml') {
// Touching the feedcache file will prevent loops of death when the RSS target is the same URI than our blog.
@touch($feedcache);
$opml = new s9y_remoterss_OPML();
$opmltree = $opml->parseOPML($rssuri);
if (OPMLDEBUG == 1) {
echo "\n<pre>\n";
print_r($opmltree);
echo "\n</pre>\n";
}
if ($opmltree['tag'] === 'opml') {
$head = $opml->getOPMLHead($opmltree);
$ownerName = $opml->getOPMLTag($head, 'ownerName');
$blogrolling = $ownerName != false ? ($ownerName['value'] == 'Blogroll Owner' ? true : false) : false;
$i = 0;
$content = '';
while (($showAll || ($i < $number)) && ($item = $opml->getOPMLOutlineAttr($opmltree, $i))) {
if (!empty($item['url'])) {
$url = $this->decode($item['url']);
} elseif (!empty($item['htmlUrl'])) {
$url = $this->decode($item['htmlUrl']);
} elseif (!empty($item['xmlUrl'])) {
$url = $this->decode($item['xmlUrl']);
} elseif (!empty($item['urlHTTP'])) {
$url = $this->decode($item['urlHTTP']);
} else {
$url = '';
}
if (!empty($item['text'])) {
$text = htmlspecialchars($this->decode($item['text']));
} elseif (!empty($item['title'])) {
$text = htmlspecialchars($this->decode($item['title']));
} elseif (!empty($item['description'])) {
$text = htmlspecialchars($this->decode($item['description']));
} else {
$text = '';
}
if ($blogrolling === true && (!empty($text) || !empty($url))) {
$content .= '&bull; <a href="' . $url . '" ' . (!empty($target) ? 'target="'.$target.'"' : '') . ' title="' . $text . '">' . htmlspecialchars($text) . "</a>";
if (isset($item['isRecent'])) {
$content .= ' <span style="color: Red; ">*</span>';
}
$content .= "<br />";
} elseif ((isset($item['type']) && $item['type'] == 'url') || !empty($url)) {
$content .= '&bull; <a href="' .$url . '" ' . (!empty($target) ? 'target="'.$target.'"' : '') . ' title="' . $text . '">' . $text . "</a>";
$content .= "<br />";
}
++$i;
}
/* Pretend to be a html_nugget so we can apply markup events. */
if ($markup == 'true') {
$entry = array('html_nugget' => $content);
serendipity_plugin_api::hook_event('frontend_display', $entry);
$content = $entry['html_nugget'];
}
$fp = @fopen($feedcache, 'w');
if (trim($content) != '' && $fp) {
fwrite($fp, $content);
fclose($fp);
} else {
echo '<!-- Cache failed to ' . $feedcache . ' in ' . getcwd() . ' --><br />';
if (trim($content) == '') {
$content = @file_get_contents($feedcache);
}
}
} else {
echo '<!-- Not a valid OPML feed -->';
}
} else {
echo '<!-- no valid feedtype -->';
}
} else {
$this->debug('Got feed from cache ' . $feedcache);
$content = file_get_contents($feedcache);
}
echo $content;
} else {
echo PLUGIN_REMOTERSS_NOURI;
}
}
function &decode($string) {
$target = $this->get_config('charset', 'native');
// xml_parser_* functions to recoding from ISO-8859-1/UTF-8
if (LANG_CHARSET == 'ISO-8859-1' || LANG_CHARSET == 'UTF-8') {
return $string;
}
switch($target) {
case 'native':
return $string;
case 'ISO-8859-1':
if (function_exists('iconv')) {
$out = iconv('ISO-8859-1', LANG_CHARSET, $string);
} elseif (function_exists('recode')) {
$out = recode('iso-8859-1..' . LANG_CHARSET, $string);
} else {
return $string;
}
return $out;
case 'UTF-8':
default:
$out = utf8_decode($string);
return $out;
}
}
}
/* vim: set sts=4 ts=4 expandtab : */