mirror of
https://github.com/chylex/Nextcloud-News.git
synced 2025-04-09 10:15:44 +02:00
Merge branch 'master' into filesystem
This commit is contained in:
commit
d31f396111
ajax
controllers
js
l10n
ca.phpcs_CZ.phpda.phpde.phpde_DE.phpel.phpeo.phpes.phpes_AR.phpet_EE.phpeu.phpfa.phpfi_FI.phpfr.phpgl.phphu_HU.phpit.phpja_JP.phpko.phpmk.phpms_MY.phpnb_NO.phpnl.phppl.phppt_BR.phppt_PT.phpru.phpru_RU.phpsi_LK.phpsk_SK.phpsl.phpsr.phpsv.phpth_TH.phptr.phpvi.phpzh_CN.GB2312.phpzh_CN.php
lib
templates
tests
@ -10,32 +10,50 @@
|
||||
*
|
||||
*/
|
||||
|
||||
|
||||
|
||||
// Check if we are a user
|
||||
OCP\JSON::checkLoggedIn();
|
||||
OCP\JSON::checkAppEnabled('news');
|
||||
OCP\JSON::callCheck();
|
||||
session_write_close();
|
||||
|
||||
global $l;
|
||||
$l = OC_L10N::get('news');
|
||||
|
||||
function bailOut($msg) {
|
||||
OCP\JSON::error(array('data' => array('message' => $msg)));
|
||||
global $eventSource;
|
||||
$eventSource->send('error', $msg);
|
||||
$eventSource->close();
|
||||
OCP\Util::writeLog('news','ajax/importopml.php: '.$msg, OCP\Util::ERROR);
|
||||
exit();
|
||||
}
|
||||
|
||||
if (isset($_POST['path'])) {
|
||||
$raw = file_get_contents($_POST['path']);
|
||||
}
|
||||
elseif (isset($_FILES['file'])) {
|
||||
$raw = file_get_contents($_FILES['file']['tmp_name']);
|
||||
}
|
||||
else {
|
||||
bailOut($l->t('No file was submitted.'));
|
||||
}
|
||||
|
||||
global $eventSource;
|
||||
$eventSource=new OC_EventSource();
|
||||
|
||||
require_once 'news/opmlparser.php';
|
||||
|
||||
$source = isset( $_REQUEST['source'] ) ? $_REQUEST['source'] : '';
|
||||
$path = isset( $_REQUEST['path'] ) ? $_REQUEST['path'] : '';
|
||||
|
||||
if($path == '') {
|
||||
bailOut($l->t('Empty filename'));
|
||||
exit();
|
||||
}
|
||||
|
||||
if($source == 'cloud') {
|
||||
$raw = file_get_contents($path);
|
||||
} elseif ($source == 'local') {
|
||||
$storage = \OCP\Files::getStorage('news');
|
||||
$raw = $storage->file_get_contents($path);
|
||||
} else {
|
||||
bailOut($l->t('No source argument passed'));
|
||||
}
|
||||
|
||||
if ($raw == false) {
|
||||
bailOut($l->t('Error while reading file'));
|
||||
}
|
||||
|
||||
try {
|
||||
$parsed = OPMLParser::parse($raw);
|
||||
} catch (Exception $e) {
|
||||
@ -48,17 +66,30 @@ if ($parsed == null) {
|
||||
|
||||
$data = $parsed->getData();
|
||||
|
||||
function importFeed($feedurl, $folderid) {
|
||||
function importFeed($feedurl, $folderid, $feedtitle) {
|
||||
|
||||
global $eventSource;
|
||||
global $l;
|
||||
|
||||
$feedmapper = new OCA\News\FeedMapper();
|
||||
$feedid = $feedmapper->findIdFromUrl($feedurl);
|
||||
|
||||
$l = OC_L10N::get('news');
|
||||
|
||||
if ($feedid === null) {
|
||||
$feed = OCA\News\Utils::slimFetch($feedurl);
|
||||
|
||||
|
||||
if ($feed !== null) {
|
||||
$feed->setTitle($feedtitle); //we want the title of the feed to be the one from the opml file
|
||||
$feedid = $feedmapper->save($feed, $folderid);
|
||||
|
||||
$itemmapper = new OCA\News\ItemMapper(OCP\USER::getUser());
|
||||
$unreadItemsCount = $itemmapper->countAllStatus($feedid, OCA\News\StatusFlag::UNREAD);
|
||||
|
||||
$tmpl_listfeed = new OCP\Template("news", "part.listfeed");
|
||||
$tmpl_listfeed->assign('feed', $feed);
|
||||
$tmpl_listfeed->assign('unreadItemsCount', $unreadItemsCount);
|
||||
$listfeed = $tmpl_listfeed->fetchPage();
|
||||
|
||||
$eventSource->send('progress', array('data' => array('type'=>'feed', 'folderid'=>$folderid, 'listfeed'=>$listfeed)));
|
||||
}
|
||||
} else {
|
||||
OCP\Util::writeLog('news','ajax/importopml.php: This feed is already here: '. $feedurl, OCP\Util::WARN);
|
||||
@ -74,6 +105,10 @@ function importFeed($feedurl, $folderid) {
|
||||
}
|
||||
|
||||
function importFolder($name, $parentid) {
|
||||
|
||||
global $eventSource;
|
||||
global $l;
|
||||
|
||||
$foldermapper = new OCA\News\FolderMapper();
|
||||
|
||||
if($parentid != 0) {
|
||||
@ -84,8 +119,12 @@ function importFolder($name, $parentid) {
|
||||
|
||||
$folderid = $foldermapper->save($folder);
|
||||
|
||||
$l = OC_L10N::get('news');
|
||||
|
||||
$tmpl = new OCP\Template("news" , "part.listfolder");
|
||||
$tmpl->assign("folder", $folder);
|
||||
$listfolder = $tmpl->fetchPage();
|
||||
|
||||
$eventSource->send('progress', array('data' => array('type'=>'folder', 'listfolder'=>$listfolder)));
|
||||
|
||||
if(!$folderid) {
|
||||
OCP\Util::writeLog('news','ajax/importopml.php: Error adding folder' . $name, OCP\Util::ERROR);
|
||||
return null;
|
||||
@ -99,7 +138,8 @@ function importList($data, $parentid) {
|
||||
foreach($data as $collection) {
|
||||
if ($collection instanceOf OCA\News\Feed) {
|
||||
$feedurl = $collection->getUrl();
|
||||
if (importFeed($feedurl, $parentid)) {
|
||||
$feedtitle = $collection->getTitle();
|
||||
if (importFeed($feedurl, $parentid, $feedtitle)) {
|
||||
$countsuccess++;
|
||||
}
|
||||
}
|
||||
@ -119,5 +159,6 @@ function importList($data, $parentid) {
|
||||
|
||||
$countsuccess = importList($data, 0);
|
||||
|
||||
OCP\JSON::success(array('data' => array('title'=>$parsed->getTitle(), 'count'=>$parsed->getCount(),
|
||||
$eventSource->send('success', array('data' => array('title'=>$parsed->getTitle(), 'count'=>$parsed->getCount(),
|
||||
'countsuccess'=>$countsuccess)));
|
||||
$eventSource->close();
|
||||
|
@ -41,5 +41,5 @@ if(!file_exists($localpath)) {
|
||||
if (file_put_contents($tmpfname, file_get_contents($localpath))) {
|
||||
OCP\JSON::success(array('data' => array('tmp'=>$tmpfname, 'path'=>$localpath)));
|
||||
} else {
|
||||
bailOut(bailOut('Couldn\'t save temporary image: '.$tmpfname));
|
||||
bailOut($l->t('Couldn\'t save temporary image: ').$tmpfname);
|
||||
}
|
||||
|
42
ajax/uploadopml.php
Normal file
42
ajax/uploadopml.php
Normal file
@ -0,0 +1,42 @@
|
||||
<?php
|
||||
/**
|
||||
* ownCloud - News app
|
||||
*
|
||||
* @author Alessandro Cosentino
|
||||
* Copyright (c) 2012 - Alessandro Cosentino <cosenal@gmail.com>
|
||||
*
|
||||
* This file is licensed under the Affero General Public License version 3 or later.
|
||||
* See the COPYING-README file
|
||||
*
|
||||
*/
|
||||
|
||||
// Check if we are a user
|
||||
OCP\JSON::checkLoggedIn();
|
||||
OCP\JSON::checkAppEnabled('news');
|
||||
OCP\JSON::callCheck();
|
||||
|
||||
$l = OC_L10N::get('news');
|
||||
|
||||
function bailOut($msg) {
|
||||
OCP\JSON::error(array('data' => array('message' => $msg)));
|
||||
OCP\Util::writeLog('news','ajax/uploadopml.php: '.$msg, OCP\Util::ERROR);
|
||||
exit();
|
||||
}
|
||||
|
||||
if (isset($_POST['path'])) {
|
||||
OCP\JSON::success(array('data' => array('source'=> 'cloud', 'path' => $_POST['path'])));
|
||||
|
||||
}
|
||||
elseif (isset($_FILES['file'])) {
|
||||
$storage = \OCP\Files::getStorage('news');
|
||||
$filename = 'opmlfile.xml';
|
||||
if ($storage->fromTmpFile($_FILES['file']['tmp_name'], $filename)) {
|
||||
OCP\JSON::success(array('data' => array('source'=> 'local', 'path' => $filename)));
|
||||
} else {
|
||||
bailOut('Could not create the temporary file');
|
||||
}
|
||||
|
||||
}
|
||||
else {
|
||||
bailOut('No file loaded');
|
||||
}
|
@ -41,7 +41,6 @@ class NewsController extends Controller {
|
||||
$this->addScript('news');
|
||||
$this->addScript('menu');
|
||||
$this->addScript('items');
|
||||
$this->add3rdPartyScript('jquery.timeago');
|
||||
|
||||
$this->addStyle('news');
|
||||
$this->addStyle('settings');
|
||||
|
@ -632,7 +632,7 @@ var News = News || {};
|
||||
self._toggleKeepUnread();
|
||||
});
|
||||
|
||||
this._$html.find('time.timeago').timeago();
|
||||
//this._$html.find('time.timeago').timeago();
|
||||
};
|
||||
|
||||
/**
|
||||
|
@ -43,13 +43,26 @@ News.Settings={
|
||||
}
|
||||
|
||||
param = {
|
||||
url: OC.filePath('news', 'ajax', 'importopml.php'),
|
||||
url: OC.filePath('news', 'ajax', 'uploadopml.php'),
|
||||
data: ajaxData,
|
||||
type: 'POST',
|
||||
success: function(jsondata){
|
||||
if (jsondata.status == 'success') {
|
||||
$('#notification').html(t('files', '{n_success} out of {n_total} feeds imported successfully!',
|
||||
{n_success: jsondata.data.countsuccess, n_total: jsondata.data.count}));
|
||||
var eventSource=new OC.EventSource(OC.filePath('news','ajax','importopml.php'),{source:jsondata.data.source, path:jsondata.data.path});
|
||||
eventSource.listen('progress',function(progress){
|
||||
if (progress.data.type == 'feed') {
|
||||
News.Objects.Menu.addNode(progress.data.folderid, progress.data.listfeed);
|
||||
} else if (progress.data.type == 'folder') {
|
||||
News.Objects.Menu.addNode(0, progress.data.listfolder);
|
||||
}
|
||||
});
|
||||
eventSource.listen('success',function(data){
|
||||
$('#notification').html(t('news', 'Importing done'));
|
||||
});
|
||||
eventSource.listen('error',function(error){
|
||||
$('#notification').fadeOut('400');
|
||||
OC.dialogs.alert(error, t('news', 'Error while importing feeds.'));
|
||||
});
|
||||
}
|
||||
else {
|
||||
OC.dialogs.alert(jsondata.data.message, t('news', 'Error'));
|
||||
|
@ -9,12 +9,15 @@
|
||||
"Error removing feed." => "Error en eliminar la font.",
|
||||
"Error removing folder." => "Error en eliminar la carpeta.",
|
||||
"Error updating feeds." => "Error en actualitzar les fonts.",
|
||||
"No file was submitted." => "No s'ha enviat cap fitxer",
|
||||
"Empty filename" => "Elimina el nom del fitxer",
|
||||
"No source argument passed" => "No heu passat cap argument origen",
|
||||
"Error while reading file" => "Error en llegir el fitxer",
|
||||
"An error occurred while parsing the file." => "S'ha produït un error en processar el fitxer.",
|
||||
"Feed loaded!" => "S'ha carregat la font!",
|
||||
"Error moving feed into folder." => "Error en moure la font dins la carpeta.",
|
||||
"No file path was submitted." => "No heu enviat cap camí al fitxer",
|
||||
"File doesn't exist:" => "El fitxer no existeix:",
|
||||
"Couldn't save temporary image: " => "No s'ha pogut desar la imatge temporal: ",
|
||||
"Error setting all items as read." => "Error en establir tots els elements com a llegits.",
|
||||
"Error marking item as read." => "Error en marcar l'element com a llegit.",
|
||||
"Error updating feed." => "rror en actualitzar la font.",
|
||||
@ -38,6 +41,10 @@
|
||||
"Error while parsing the feed" => "Error en processar la font",
|
||||
"Fatal Error" => "Error fatal",
|
||||
"No files selected." => "No hi ha fitxers seleccionats",
|
||||
"Importing OPML file..." => "Important el fitxer OPML...",
|
||||
"Not a valid type" => "No és un tipus vàlid",
|
||||
"Importing done" => "La importació ha acabat",
|
||||
"Error while importing feeds." => "Error en importar les fonts.",
|
||||
"Select file" => "Selecciona fitxer",
|
||||
"no title" => "sense títol",
|
||||
"no name" => "sense nom",
|
||||
|
@ -9,12 +9,15 @@
|
||||
"Error removing feed." => "Chyba při odstraňování příspěvku.",
|
||||
"Error removing folder." => "Chyba při odstraňování složky.",
|
||||
"Error updating feeds." => "Chyba při aktualizaci kanálů.",
|
||||
"No file was submitted." => "Nebyl odeslán žádný soubor.",
|
||||
"Empty filename" => "Prázdný název souboru",
|
||||
"No source argument passed" => "Nepředán žádný parametr se zdrojem",
|
||||
"Error while reading file" => "Chyba při čtení souboru",
|
||||
"An error occurred while parsing the file." => "Nastala chyba při zpracování souboru.",
|
||||
"Feed loaded!" => "Kanály načteny.",
|
||||
"Error moving feed into folder." => "Chyba při přesunu kanálu do adresáře",
|
||||
"No file path was submitted." => "Neuvedena cesta k souboru.",
|
||||
"File doesn't exist:" => "Soubor neexistuje:",
|
||||
"Couldn't save temporary image: " => "Nelze uložit dočasný obrázek: ",
|
||||
"Error setting all items as read." => "Chyba při označování všech položek jako přečtené.",
|
||||
"Error marking item as read." => "Chyba při nastavení položky jako přečtené.",
|
||||
"Error updating feed." => "Chyba při aktualizaci kanálu.",
|
||||
@ -40,7 +43,8 @@
|
||||
"No files selected." => "Nebyly vybrány žádné soubory.",
|
||||
"Importing OPML file..." => "Importuji soubor OPML...",
|
||||
"Not a valid type" => "Neplatný typ",
|
||||
"{n_success} out of {n_total} feeds imported successfully!" => "{n_success} z {n_total} kanálů importováno úspěšně.",
|
||||
"Importing done" => "Import dokončen",
|
||||
"Error while importing feeds." => "Chyba při importování kanálů",
|
||||
"Select file" => "Vybrat soubor",
|
||||
"no title" => "bez názvu",
|
||||
"no name" => "bez názvu",
|
||||
|
@ -14,6 +14,7 @@
|
||||
"Error moving feed into folder." => "Fejl ved flytning af feed til mappe.",
|
||||
"No file path was submitted." => "Der var ingen sti til filen i forespørgslen.",
|
||||
"File doesn't exist:" => "Filen eksisterer ikke:",
|
||||
"Couldn't save temporary image: " => "Kunne ikke gemme midlertidigt billede: ",
|
||||
"Error setting all items as read." => "Kunne ikke markére alle artikler som læst.",
|
||||
"Error marking item as read." => "Kunne ikke markére artikel som læst.",
|
||||
"Error updating feed." => "Der opstod en fejl under opdateringen af feedet.",
|
||||
|
10
l10n/de.php
10
l10n/de.php
@ -9,12 +9,15 @@
|
||||
"Error removing feed." => "Fehler beim Entfernen des Feeds.",
|
||||
"Error removing folder." => "Fehler beim Entfernen des Ordners.",
|
||||
"Error updating feeds." => "Fehler bei der Aktualisierung der Feeds.",
|
||||
"No file was submitted." => "Es wurde keine Datei übertragen.",
|
||||
"Empty filename" => "Leerer Dateiname",
|
||||
"No source argument passed" => "Es wurde kein Quell-Argument übergeben.",
|
||||
"Error while reading file" => "Fehler beim Lesen der Datei",
|
||||
"An error occurred while parsing the file." => "Es ist ein Fehler beim Einlesen der Datei aufgetreten.",
|
||||
"Feed loaded!" => "Feed geladen!",
|
||||
"Error moving feed into folder." => "Fehler beim Verschieben des Feeds in den Ordner.",
|
||||
"No file path was submitted." => "Es wurde kein Dateipfad übermittelt.",
|
||||
"File doesn't exist:" => "Die Datei existiert nicht:",
|
||||
"Couldn't save temporary image: " => "Das temporäre Bild konnte nicht gespeichert werden:",
|
||||
"Error setting all items as read." => "Der Versuch, alle Artikel als gelesen zu markieren, ist fehlgeschlagen.",
|
||||
"Error marking item as read." => "Der Versuch, den Artikel als gelesen zu markieren, ist fehlgeschlagen.",
|
||||
"Error updating feed." => "Fehler bei der Aktualisierung der Feeds.",
|
||||
@ -38,9 +41,10 @@
|
||||
"Error while parsing the feed" => "Fehler beim Einlesen des Feed.",
|
||||
"Fatal Error" => "Schwerer Fehler",
|
||||
"No files selected." => "Keine Dateien ausgewählt.",
|
||||
"Importing OPML file..." => "Importiere OPML-Datei ...",
|
||||
"Importing OPML file..." => "OPML Datei wird importiert...",
|
||||
"Not a valid type" => "Kein gültiger Typ",
|
||||
"{n_success} out of {n_total} feeds imported successfully!" => "{n_success} von {n_total} Feeds erfolgreich importiert.",
|
||||
"Importing done" => "Import abgeschlossen",
|
||||
"Error while importing feeds." => "Fehler beim Importieren des Feeds",
|
||||
"Select file" => "Datei auswählen",
|
||||
"no title" => "kein Titel",
|
||||
"no name" => "kein Name",
|
||||
|
@ -9,12 +9,15 @@
|
||||
"Error removing feed." => "Fehler beim Entfernen des Feeds.",
|
||||
"Error removing folder." => "Fehler beim Entfernen des Ordners.",
|
||||
"Error updating feeds." => "Fehler bei der Aktualisierung der Feeds.",
|
||||
"No file was submitted." => "Es wurde keine Datei übertragen.",
|
||||
"Empty filename" => "Leerer Dateiname",
|
||||
"No source argument passed" => "Es wurde kein Quell-Argument übergeben.",
|
||||
"Error while reading file" => "Fehler beim Lesen der Datei",
|
||||
"An error occurred while parsing the file." => "Es ist ein Fehler beim Einlesen der Datei aufgetreten.",
|
||||
"Feed loaded!" => "Feed geladen!",
|
||||
"Error moving feed into folder." => "Fehler beim Verschieben des Feeds in den Ordner.",
|
||||
"No file path was submitted." => "Es wurde kein Dateipfad übermittelt.",
|
||||
"File doesn't exist:" => "Die Datei existiert nicht:",
|
||||
"Couldn't save temporary image: " => "Das temporäre Bild konnte nicht gespeichert werden:",
|
||||
"Error setting all items as read." => "Der Versuch, alle Artikel als gelesen zu markieren, ist fehlgeschlagen.",
|
||||
"Error marking item as read." => "Der Versuch, den Artikel als gelesen zu markieren, ist fehlgeschlagen.",
|
||||
"Error updating feed." => "Fehler bei der Aktualisierung der Feeds.",
|
||||
@ -40,7 +43,8 @@
|
||||
"No files selected." => "Keine Dateien ausgewählt.",
|
||||
"Importing OPML file..." => "OPML Datei wird importiert...",
|
||||
"Not a valid type" => "Kein gültiger Typ.",
|
||||
"{n_success} out of {n_total} feeds imported successfully!" => "{n_success} von {n_total} Feeds wurden erfolgreich importiert!",
|
||||
"Importing done" => "Import abgeschlossen",
|
||||
"Error while importing feeds." => "Fehler beim Importieren des Feeds",
|
||||
"Select file" => "Datei auswählen",
|
||||
"no title" => "kein Titel",
|
||||
"no name" => "kein Name",
|
||||
|
@ -9,11 +9,14 @@
|
||||
"Error removing feed." => "Σφάλμα αφαίρεσης ροής.",
|
||||
"Error removing folder." => "Σφάλμα αφαίρεσης φακέλου.",
|
||||
"Error updating feeds." => "Σφάλμα ενημέρωσης ροών.",
|
||||
"Empty filename" => "Κενό όνομα αρχείου",
|
||||
"Error while reading file" => "Σφάλμα κατά την ανάγνωση του αρχείου",
|
||||
"An error occurred while parsing the file." => "Παρουσιάστηκε σφάλμα κατά την ανάλυση του αρχείου.",
|
||||
"Feed loaded!" => "Φορτώθηκε η ροή!",
|
||||
"Error moving feed into folder." => "Σφάλμα μετακίνησης ροής σε φάκελο.",
|
||||
"No file path was submitted." => "Δεν υποβλήθηκε διαδρομή αρχείου.",
|
||||
"File doesn't exist:" => "Το αρχείο δεν υπάρχει",
|
||||
"Couldn't save temporary image: " => "Δεν ήταν δυνατή η αποθήκευση της προσωρινής εικόνας: ",
|
||||
"Error setting all items as read." => "Σφάλμα ορισμού όλων ως ανεγνωσμένων.",
|
||||
"Error marking item as read." => "Σφάλμα σήμανσης ως ανεγνωσμένου.",
|
||||
"Error updating feed." => "Σφάλμα ενημέρωσης ροής.",
|
||||
@ -37,6 +40,10 @@
|
||||
"Error while parsing the feed" => "Σφάλμα κατά την ανάλυση της ροής",
|
||||
"Fatal Error" => "Μοιραίο Σφάλμα",
|
||||
"No files selected." => "Δεν επιλέχθηκαν αρχεία.",
|
||||
"Importing OPML file..." => "Εισαγωγή αρχείου OPML...",
|
||||
"Not a valid type" => "Μη έγκυρος τύπος",
|
||||
"Importing done" => "Η εισαγωγή ολοκληρώθηκε",
|
||||
"Error while importing feeds." => "Σφάλμα κατά την εισαγωγή ροών.",
|
||||
"Select file" => "Επιλογή αρχείου",
|
||||
"no title" => "χωρίς τίτλο",
|
||||
"no name" => "χωρίς όνομα",
|
||||
|
@ -14,6 +14,7 @@
|
||||
"Error moving feed into folder." => "Eraro dum movo de fluo en dosierujon.",
|
||||
"No file path was submitted." => "Neniu dosiervojo sendiĝis.",
|
||||
"File doesn't exist:" => "Dosiero ne ekzistas:",
|
||||
"Couldn't save temporary image: " => "Ne eblis konservi provizoran bildon: ",
|
||||
"Error setting all items as read." => "Eraro dum markiĝis ĉiuj eroj kiel legitaj.",
|
||||
"Error marking item as read." => "Eraro dum markiĝis ero kiel legita.",
|
||||
"Error updating feed." => "Eraro dum ĝusdatigo de fluo.",
|
||||
|
27
l10n/es.php
27
l10n/es.php
@ -9,12 +9,15 @@
|
||||
"Error removing feed." => "Error al borrar la fuente.",
|
||||
"Error removing folder." => "Error al borrar la carpeta.",
|
||||
"Error updating feeds." => "Error actualizando las fuentes",
|
||||
"No file was submitted." => "No se envío ningún archivo",
|
||||
"Empty filename" => "Nombre de archivo vacío",
|
||||
"No source argument passed" => "No se ha pasado argumentos",
|
||||
"Error while reading file" => "Error al leer el archivo",
|
||||
"An error occurred while parsing the file." => "Se produjo un error al analizar el archivo.",
|
||||
"Feed loaded!" => "Fuente cargada!",
|
||||
"Error moving feed into folder." => "Error al mover la fuente hacia la carpeta",
|
||||
"No file path was submitted." => "No se presentó la ruta del archivo.",
|
||||
"File doesn't exist:" => "El fichero no existe.",
|
||||
"Couldn't save temporary image: " => "No se pudo salvar una imagen temporal",
|
||||
"Error setting all items as read." => "Error al configurar todos los elementos como leídos.",
|
||||
"Error marking item as read." => "Error al marcar elemento como leído.",
|
||||
"Error updating feed." => "Error actualizando la fuente.",
|
||||
@ -29,22 +32,26 @@
|
||||
"Are you sure you want to delete this folder and all its feeds?" => "¿Está seguro de que desea borrar esta carpeta y todas las fuentes?",
|
||||
"Warning" => "Atención",
|
||||
"Name of the folder cannot be empty." => "El nombre de la carpeta no puede estar vacio.",
|
||||
"Adding..." => "Adicionando...",
|
||||
"Adding..." => "Añadiendo...",
|
||||
"Add folder" => "Añadir carpeta",
|
||||
"Changing..." => "Cambiando...",
|
||||
"Change folder name" => "Cambiar nombre de carpeta",
|
||||
"URL cannot be empty." => "URL no puede estar vacio",
|
||||
"Add feed" => "Adicionar fuente",
|
||||
"URL cannot be empty." => "URL no puede estar vacia",
|
||||
"Add feed" => "Añadir fuente",
|
||||
"Error while parsing the feed" => "Error mientras se analizaba la fuente",
|
||||
"Fatal Error" => "Error fatal.",
|
||||
"No files selected." => "No hay ficheros seleccionados.",
|
||||
"Importing OPML file..." => "Importando archivo OPML...",
|
||||
"Not a valid type" => "No es un tipo válido",
|
||||
"Importing done" => "Importación realizada",
|
||||
"Error while importing feeds." => "Error importando las fuentes.",
|
||||
"Select file" => "Seleccionar archivo",
|
||||
"no title" => "sin título",
|
||||
"no name" => "sin nombre",
|
||||
"no body" => "sin cuerpo",
|
||||
"subscriptions in ownCloud - News" => "suscripciones en ownCloud - Noticias",
|
||||
"An error occurred" => "Ocurrió un error",
|
||||
"Nice! You have subscribed to " => "¡Bien! Te has suscribido a",
|
||||
"Nice! You have subscribed to " => "¡Bien! Te has suscrito a",
|
||||
"You had already subcribed to this feed!" => "Ya está subscrito a esta fuente!",
|
||||
"You don't have any feed in your reader." => "Usted no tiene ninguna fuente en el lector.",
|
||||
"Address" => "Dirección",
|
||||
@ -57,18 +64,18 @@
|
||||
"Select file from <a href=\"#\" class=\"settings\" id=\"browselink\">local filesystem</a> or <a href=\"#\" class=\"settings\" id=\"cloudlink\">cloud</a>" => "Seleccionar archivo desde <a href=\"#\" class=\"settings\" id=\"browselink\">sistema de archivo local</a> o <a href=\"#\" class=\"settings\" id=\"cloudlink\">nube</a>",
|
||||
"Import" => "Importar",
|
||||
"Or..." => "O...",
|
||||
"Add feed or folder" => "Adicionar fuente o carpeta",
|
||||
"Add Feed/Folder" => "Adicionar Fuente/Carpeta",
|
||||
"Add feed or folder" => "Añadir fuente o carpeta",
|
||||
"Add Feed/Folder" => "Añadir Fuente/Carpeta",
|
||||
"Feed" => "Fuente",
|
||||
"Folder" => "Carpeta",
|
||||
"Settings" => "Configuración",
|
||||
"Add Folder" => "Adicionar carpeta",
|
||||
"Add Folder" => "Añadir carpeta",
|
||||
"Add new folder" => "Añadir nueva carpeta",
|
||||
"Folder name" => "Nombre de la carpeta",
|
||||
"Add Subscription" => "Adicionar subcripción",
|
||||
"Add Subscription" => "Añadir subcripción",
|
||||
"Add new feed" => "Añadir nueva fuente",
|
||||
"Choose folder" => "Seleccionar carpeta",
|
||||
"Add" => "Adicionar",
|
||||
"Add" => "Añadir",
|
||||
"New articles" => "Nuevo artículo",
|
||||
"Mark all read" => "Marcar como leido",
|
||||
"Starred" => "Favoritos",
|
||||
|
@ -9,11 +9,15 @@
|
||||
"Error removing feed." => "Error al borrar la fuente.",
|
||||
"Error removing folder." => "Error al borrar el directorio.",
|
||||
"Error updating feeds." => "Error actualizando las fuentes",
|
||||
"Empty filename" => "Nombre de archivo vacío",
|
||||
"No source argument passed" => "No se pasaron argumentos a la fuente",
|
||||
"Error while reading file" => "Error al leer el archivo",
|
||||
"An error occurred while parsing the file." => "Se produjo un error al analizar el archivo.",
|
||||
"Feed loaded!" => "¡Fuente cargada!",
|
||||
"Error moving feed into folder." => "Error al mover la fuente hacia el directorio.",
|
||||
"No file path was submitted." => "No se transmitió la ruta del archivo.",
|
||||
"File doesn't exist:" => "El archivo no existe.",
|
||||
"Couldn't save temporary image: " => "No fue posible guardar la imagen temporal",
|
||||
"Error setting all items as read." => "Error al configurar todos los elementos como leídos.",
|
||||
"Error marking item as read." => "Error al marcar elemento como leído.",
|
||||
"Error updating feed." => "Error actualizando la fuente.",
|
||||
@ -37,6 +41,10 @@
|
||||
"Error while parsing the feed" => "Error mientras se analizaba la fuente",
|
||||
"Fatal Error" => "Error fatal.",
|
||||
"No files selected." => "No hay archivos seleccionados.",
|
||||
"Importing OPML file..." => "Importando archivo OPML...",
|
||||
"Not a valid type" => "No es de un tipo válido.",
|
||||
"Importing done" => "Importación terminada",
|
||||
"Error while importing feeds." => "Error al importar fuentes.",
|
||||
"Select file" => "Seleccionar archivo",
|
||||
"no title" => "sin título",
|
||||
"no name" => "sin nombre",
|
||||
|
@ -14,6 +14,7 @@
|
||||
"Error moving feed into folder." => "Viga uudisvoo liigutamisel kausta.",
|
||||
"No file path was submitted." => "Faili asukohta ei sisestatud.",
|
||||
"File doesn't exist:" => "Faili pole olemas:",
|
||||
"Couldn't save temporary image: " => "Ajutise pildi salvestamine ebaõnnestus: ",
|
||||
"Error setting all items as read." => "Viga kõigi kirjete loetuks märkimisel.",
|
||||
"Error marking item as read." => "Viga kirje loetuks märkimisel.",
|
||||
"Error updating feed." => "Viga uudisvoo uuendamisel.",
|
||||
|
@ -14,6 +14,7 @@
|
||||
"Error moving feed into folder." => "Errorea iturburua karpetara mugitzean.",
|
||||
"No file path was submitted." => "Ez da fitxategi bidea zehaztu.",
|
||||
"File doesn't exist:" => "Fitxategia ez da existitzen:",
|
||||
"Couldn't save temporary image: " => "Ezin izan da aldi bateko irudia gorde:",
|
||||
"Error setting all items as read." => "Errorea elementu guztiak irakurrita bezala ezartzean.",
|
||||
"Error marking item as read." => "Errorea elementua irakurrita bezala ezartzean.",
|
||||
"Error updating feed." => "Errorea iturburua eguneratzerakoan.",
|
||||
|
@ -1,5 +1,6 @@
|
||||
<?php $TRANSLATIONS = array(
|
||||
"File doesn't exist:" => "پرونده وجود ندارد",
|
||||
"Couldn't save temporary image: " => "قابلیت ذخیره تصویر موقت وجود ندارد:",
|
||||
"Error" => "خطا",
|
||||
"None" => "هیچکدام",
|
||||
"Warning" => "اخطار",
|
||||
|
@ -8,11 +8,14 @@
|
||||
"Error removing feed." => "Virhe syötettä poistaessa.",
|
||||
"Error removing folder." => "Virhe kansiota poistaessa.",
|
||||
"Error updating feeds." => "Virhe syötteitä päivittäessä.",
|
||||
"Empty filename" => "Tyhjä tiedostonimi",
|
||||
"Error while reading file" => "Virhe tiedostoa luettaessa",
|
||||
"An error occurred while parsing the file." => "Tiedostoa jäsennettäessä tapahtui virhe.",
|
||||
"Feed loaded!" => "Syöte ladattu!",
|
||||
"Error moving feed into folder." => "Virhe siirrettäessä syötettä kansioon.",
|
||||
"No file path was submitted." => "Tiedoston polkua ei annettu.",
|
||||
"File doesn't exist:" => "Tiedostoa ei ole olemassa",
|
||||
"Couldn't save temporary image: " => "Väliaikaiskuvan tallennus epäonnistui:",
|
||||
"Error setting all items as read." => "Virhe tapahtui kun yritettiin merkitä kaikki luetuksi.",
|
||||
"Error marking item as read." => "Virhe tapahtui kun yritettiin merkitä artikkeli luetuksi.",
|
||||
"Error updating feed." => "Virhe syötettä päivittäessä.",
|
||||
@ -36,6 +39,8 @@
|
||||
"Error while parsing the feed" => "Virhe syötettä jäsennettäessä.",
|
||||
"Fatal Error" => "Vakava virhe",
|
||||
"No files selected." => "Tiedostoja ei valittu.",
|
||||
"Importing OPML file..." => "Tuodaan OPML-tiedostoa...",
|
||||
"Not a valid type" => "Virheellinen tyyppi",
|
||||
"Select file" => "Valitse tiedosto",
|
||||
"no title" => "ei otsikkoa",
|
||||
"no name" => "ei nimeä",
|
||||
|
@ -9,12 +9,14 @@
|
||||
"Error removing feed." => "Erreur lors de la suppression du flux.",
|
||||
"Error removing folder." => "Erreur lors de la suppression du répertoire.",
|
||||
"Error updating feeds." => "Erreur lors de la mise à jour des flux.",
|
||||
"No file was submitted." => "Aucun fichier n'a été soumis.",
|
||||
"Empty filename" => "Nom de fichier manquant",
|
||||
"Error while reading file" => "Erreur lors de la lecture du fichier",
|
||||
"An error occurred while parsing the file." => "Une erreur est apparue lors de l'analyse du fichier.",
|
||||
"Feed loaded!" => "Flux chargé !",
|
||||
"Error moving feed into folder." => "Erreur lors du déplacement du flux dans le répertoire.",
|
||||
"No file path was submitted." => "Aucun chemin vers un fichier n'a été indiqué.",
|
||||
"File doesn't exist:" => "Ce fichier n'existe pas :",
|
||||
"Couldn't save temporary image: " => "Impossible de sauvegarder l'image temporaire :",
|
||||
"Error setting all items as read." => "Erreur lors du marquage de tous les articles comme lus.",
|
||||
"Error marking item as read." => "Erreur lors du marquage de l'article comme lu.",
|
||||
"Error updating feed." => "Erreur lors de la mise à jour du flux.",
|
||||
@ -40,7 +42,8 @@
|
||||
"No files selected." => "Aucun fichier selectionné.",
|
||||
"Importing OPML file..." => "Importation du fichier OPML...",
|
||||
"Not a valid type" => "Ce n'est pas un type valide",
|
||||
"{n_success} out of {n_total} feeds imported successfully!" => "{n_success} sur {n_total} flux importés avec succès !",
|
||||
"Importing done" => "importation terminée",
|
||||
"Error while importing feeds." => "Erreur lors de l'importation des flux",
|
||||
"Select file" => "Sélectionnez le fichier",
|
||||
"no title" => "sans titre",
|
||||
"no name" => "sans nom",
|
||||
|
@ -14,6 +14,7 @@
|
||||
"Error moving feed into folder." => "Erro movendo a fonte a carpeta.",
|
||||
"No file path was submitted." => "Non se enviou a ruta ao ficheiro.",
|
||||
"File doesn't exist:" => "Non existe o ficheiro:",
|
||||
"Couldn't save temporary image: " => "Non se puido gardar a imaxe temporal: ",
|
||||
"Error setting all items as read." => "Erro ao marcar todos como lidos.",
|
||||
"Error marking item as read." => "Erro marcando o elemento como lido.",
|
||||
"Error updating feed." => "Erro actualizando a fonte",
|
||||
|
@ -1,5 +1,6 @@
|
||||
<?php $TRANSLATIONS = array(
|
||||
"File doesn't exist:" => "A fájl nem létezik:",
|
||||
"Couldn't save temporary image: " => "Ideiglenes kép létrehozása sikertelen",
|
||||
"Error" => "Hiba",
|
||||
"None" => "Egyik sem",
|
||||
"Warning" => "Figyelmeztetés",
|
||||
|
@ -9,12 +9,15 @@
|
||||
"Error removing feed." => "Errore durante la rimozione della fonte.",
|
||||
"Error removing folder." => "Errore durante la rimozione della cartella.",
|
||||
"Error updating feeds." => "Errore durante l'aggiornamento delle fonti.",
|
||||
"No file was submitted." => "Non è stato inviato alcun file.",
|
||||
"Empty filename" => "Nome file vuoto",
|
||||
"No source argument passed" => "Non è stato fornito alcun argomento sorgente",
|
||||
"Error while reading file" => "Errore durante la lettura del file",
|
||||
"An error occurred while parsing the file." => "Si è verificato un errore durante l'elaborazione del file.",
|
||||
"Feed loaded!" => "Fonte caricata!",
|
||||
"Error moving feed into folder." => "Errore durante lo spostamento della fonte in una cartella.",
|
||||
"No file path was submitted." => "Non è stato fornito alcun percorso al file.",
|
||||
"File doesn't exist:" => "Il file non esiste:",
|
||||
"Couldn't save temporary image: " => "Impossibile salvare l'immagine temporanea: ",
|
||||
"Error setting all items as read." => "Errore durante l'impostazione di tutti gli elementi come letti.",
|
||||
"Error marking item as read." => "Errore durante la marcatura dell'elemento come letto.",
|
||||
"Error updating feed." => "Errore durante l'aggiornamento della fonte.",
|
||||
@ -40,7 +43,8 @@
|
||||
"No files selected." => "Nessun file selezionato.",
|
||||
"Importing OPML file..." => "Importazione file OPML...",
|
||||
"Not a valid type" => "Non è un tipo valido",
|
||||
"{n_success} out of {n_total} feeds imported successfully!" => "{n_success} su {n_total} fonti sono state importate correttamente!",
|
||||
"Importing done" => "Importazione completata",
|
||||
"Error while importing feeds." => "Errore durante l'importazione delle fonti.",
|
||||
"Select file" => "Seleziona file",
|
||||
"no title" => "nessun titolo",
|
||||
"no name" => "nessun nome",
|
||||
|
@ -9,11 +9,15 @@
|
||||
"Error removing feed." => "フィードの削除エラー",
|
||||
"Error removing folder." => "フォルダの削除エラー",
|
||||
"Error updating feeds." => "フィードの更新エラー",
|
||||
"Empty filename" => "空のファイル名",
|
||||
"No source argument passed" => "ソースの引数が入力されていません",
|
||||
"Error while reading file" => "ファイルの読み込みエラー",
|
||||
"An error occurred while parsing the file." => "ファイルの解析中にエラーが発生しました。",
|
||||
"Feed loaded!" => "フィードを読み込みました!",
|
||||
"Error moving feed into folder." => "フォルダへのフィードの移動エラー",
|
||||
"No file path was submitted." => "ファイルパスは送信されませんでした。",
|
||||
"File doesn't exist:" => "ファイルは存在しません:",
|
||||
"Couldn't save temporary image: " => "一時的な画像の保存ができませんでした: ",
|
||||
"Error setting all items as read." => "すべての項目の既読設定エラー",
|
||||
"Error marking item as read." => "アイテムの既読設定エラー",
|
||||
"Error updating feed." => "フィードの更新エラー",
|
||||
@ -37,6 +41,10 @@
|
||||
"Error while parsing the feed" => "フィードの解析エラー",
|
||||
"Fatal Error" => "致命的なエラー",
|
||||
"No files selected." => "ファイルが選択されていません。",
|
||||
"Importing OPML file..." => "OPML ファイルをインポート中...",
|
||||
"Not a valid type" => "有効なタイプではありません",
|
||||
"Importing done" => "インポート完了",
|
||||
"Error while importing feeds." => "フィードのインポート時のエラー。",
|
||||
"Select file" => "ファイルを選択",
|
||||
"no title" => "タイトル無し",
|
||||
"no name" => "名前無し",
|
||||
|
@ -1,5 +1,6 @@
|
||||
<?php $TRANSLATIONS = array(
|
||||
"File doesn't exist:" => "파일이 존재하지 않습니다. ",
|
||||
"Couldn't save temporary image: " => "임시 이미지를 저장할 수 없습니다:",
|
||||
"Error" => "에러",
|
||||
"Warning" => "경고",
|
||||
"Address" => "주소",
|
||||
|
@ -1,5 +1,6 @@
|
||||
<?php $TRANSLATIONS = array(
|
||||
"File doesn't exist:" => "Не постои датотеката:",
|
||||
"Couldn't save temporary image: " => "Не можеше да се сними привремената фотографија:",
|
||||
"Error" => "Грешка",
|
||||
"Warning" => "Предупредување",
|
||||
"Address" => "Адреса",
|
||||
|
@ -1,5 +1,6 @@
|
||||
<?php $TRANSLATIONS = array(
|
||||
"File doesn't exist:" => "Fail tidak wujud:",
|
||||
"Couldn't save temporary image: " => "Tidak boleh menyimpan imej sementara: ",
|
||||
"Error" => "Ralat",
|
||||
"Warning" => "Amaran",
|
||||
"Address" => "Alamat",
|
||||
|
@ -14,6 +14,7 @@
|
||||
"Error moving feed into folder." => "Kunne ikke flytte nyhetskilden til mappen.",
|
||||
"No file path was submitted." => "Ingen filbane ble funnet",
|
||||
"File doesn't exist:" => "Filen eksisterer ikke:",
|
||||
"Couldn't save temporary image: " => "Kunne ikke lagre midlertidig bilde:",
|
||||
"Error setting all items as read." => "Kunne ikke merke filene som lest",
|
||||
"Error marking item as read." => "Kunne ikke merke filen som lest.",
|
||||
"Error updating feed." => "Kunne ikke oppdatere nyhetskilde.",
|
||||
|
@ -9,11 +9,15 @@
|
||||
"Error removing feed." => "Feed kon niet verwijderd worden.",
|
||||
"Error removing folder." => "Map kon niet verwijderd worden.",
|
||||
"Error updating feeds." => "Fout tijdens het updaten van feeds.",
|
||||
"Empty filename" => "Lege bestandnaam",
|
||||
"No source argument passed" => "Geen goede argumenten",
|
||||
"Error while reading file" => "Fout tijdens het lezen van het bestand",
|
||||
"An error occurred while parsing the file." => "Fout tijdens het valideren van bestand.",
|
||||
"Feed loaded!" => "Feed geladen!",
|
||||
"Error moving feed into folder." => "Kon feed niet in map plaatsen.",
|
||||
"No file path was submitted." => "Er werd geen bestandslocatie meegegeven.",
|
||||
"File doesn't exist:" => "Bestand bestaat niet: ",
|
||||
"Couldn't save temporary image: " => "Kan tijdelijk plaatje niet op slaan:",
|
||||
"Error setting all items as read." => "Fout tijdens alle items als gelezen instellen.",
|
||||
"Error marking item as read." => "Fout tijdens item markeren als gelezen.",
|
||||
"Error updating feed." => "Fout tijdens het updaten van feed.",
|
||||
@ -37,6 +41,10 @@
|
||||
"Error while parsing the feed" => "Fout tijdens het valideren van feed",
|
||||
"Fatal Error" => "Fatale fout",
|
||||
"No files selected." => "Geen bestanden geselecteerd.",
|
||||
"Importing OPML file..." => "OPML bestand wordt geïmporteerd...",
|
||||
"Not a valid type" => "Geen geldig type",
|
||||
"Importing done" => "Import uitgevoerd",
|
||||
"Error while importing feeds." => "Er ging iets fout tijdens het importeren van feeds.",
|
||||
"Select file" => "Selecteer bestand",
|
||||
"no title" => "geen titel",
|
||||
"no name" => "geen naam",
|
||||
|
@ -9,11 +9,14 @@
|
||||
"Error removing feed." => "Błąd usuwania kanału.",
|
||||
"Error removing folder." => "Nie wprowadzono ścieżki do pliku",
|
||||
"Error updating feeds." => "Błąd aktualizacji kanałów.",
|
||||
"Empty filename" => "Pusta nazwa pliku",
|
||||
"Error while reading file" => "Błąd przy odczycie pliku",
|
||||
"An error occurred while parsing the file." => "Wystąpił błąd podczas analizowania pliku.",
|
||||
"Feed loaded!" => "Plik załadowany!",
|
||||
"Error moving feed into folder." => "Wystąpił błąd podczas przenoszenia kanału do folderu.",
|
||||
"No file path was submitted." => "Ścieżka do pliku nie została podana.",
|
||||
"File doesn't exist:" => "Plik nie istnieje:",
|
||||
"Couldn't save temporary image: " => "Nie można zapisać obrazu tymczasowego: ",
|
||||
"Error setting all items as read." => "Błąd podczas ustawiania wszystkich elementów jako przeczytanych.",
|
||||
"Error marking item as read." => "Błąd oznaczenia elementu jako przeczytanego.",
|
||||
"Error updating feed." => "Błąd aktualizacji kanału",
|
||||
@ -37,6 +40,8 @@
|
||||
"Error while parsing the feed" => "Błąd podczas analizowania kanału",
|
||||
"Fatal Error" => "Błąd systemu",
|
||||
"No files selected." => "Nie wybrano plików",
|
||||
"Importing OPML file..." => "Importuje plik OPML...",
|
||||
"Not a valid type" => "Niepoprawny typ",
|
||||
"Select file" => "Wybierz plik",
|
||||
"no title" => "brak tytułu",
|
||||
"no name" => "brak nazwy",
|
||||
|
@ -9,12 +9,15 @@
|
||||
"Error removing feed." => "Erro ao remover feed.",
|
||||
"Error removing folder." => "Erro ao remover pasta.",
|
||||
"Error updating feeds." => "Erro ao atualizar feeds.",
|
||||
"No file was submitted." => "Nenhum arquivo foi enviado.",
|
||||
"Empty filename" => "Nome de arquivo vazio",
|
||||
"No source argument passed" => "Nenhum argumento fonte foi passado",
|
||||
"Error while reading file" => "Erro durante leitura do arquivo",
|
||||
"An error occurred while parsing the file." => "Um erro ocorreu ao analisar o arquivo.",
|
||||
"Feed loaded!" => "Feed carregado!",
|
||||
"Error moving feed into folder." => "Erro ao mover feed para pasta.",
|
||||
"No file path was submitted." => "Nenhum caminho de arquivo foi submetido.",
|
||||
"File doesn't exist:" => "Arquivo não existe:",
|
||||
"Couldn't save temporary image: " => "Não foi possível salvar a imagem temporária:",
|
||||
"Error setting all items as read." => "Erro ao marcar todos os itens como lidos.",
|
||||
"Error marking item as read." => "Erro ao marcar item como lido.",
|
||||
"Error updating feed." => "Erro ao atualizar feed.",
|
||||
@ -38,6 +41,10 @@
|
||||
"Error while parsing the feed" => "Erro ao ler feed",
|
||||
"Fatal Error" => "Erro Fatal",
|
||||
"No files selected." => "Nenhum arquivo selecionado.",
|
||||
"Importing OPML file..." => "Importando arquivo OPML...",
|
||||
"Not a valid type" => "Tipo inválido",
|
||||
"Importing done" => "Importação concluída",
|
||||
"Error while importing feeds." => "Erro durante importação de feeds.",
|
||||
"Select file" => "Selecionar arquivo",
|
||||
"no title" => "sem título",
|
||||
"no name" => "sem nome",
|
||||
|
@ -9,12 +9,15 @@
|
||||
"Error removing feed." => "Erro ao remover o feed.",
|
||||
"Error removing folder." => "Erro a remover pasta.",
|
||||
"Error updating feeds." => "Erro a actualizar o feed.",
|
||||
"No file was submitted." => "Nenhum ficheiros foi submetido",
|
||||
"Empty filename" => "Ficheiro vazio",
|
||||
"No source argument passed" => "Nenhum argumento inicial passado",
|
||||
"Error while reading file" => "Erro ao ler o ficheiro.",
|
||||
"An error occurred while parsing the file." => "Ocorreu um erro ao analisar o ficheiro.",
|
||||
"Feed loaded!" => "Feed carregado.",
|
||||
"Error moving feed into folder." => "Erro ao mover o feed para a pasta.",
|
||||
"No file path was submitted." => "Nenhum caminho de arquivo foi submetido.",
|
||||
"File doesn't exist:" => "Ficheiro não existe:",
|
||||
"Couldn't save temporary image: " => "Não foi possível guardar a imagem temporária: ",
|
||||
"Error setting all items as read." => "Erro ao definir todos como lidos.",
|
||||
"Error marking item as read." => "Erro ao definir item como lido.",
|
||||
"Error updating feed." => "Erro ao actualizar o feed.",
|
||||
@ -40,7 +43,8 @@
|
||||
"No files selected." => "Nenhum ficheiro seleccionado.",
|
||||
"Importing OPML file..." => "A importar ficheiro OPML...",
|
||||
"Not a valid type" => "Tipo inválido!",
|
||||
"{n_success} out of {n_total} feeds imported successfully!" => "{n_success} de {n_total} feeds importados com sucesso!",
|
||||
"Importing done" => "Concluída a importação",
|
||||
"Error while importing feeds." => "Erro a importar feeds",
|
||||
"Select file" => "Escolher ficheiro",
|
||||
"no title" => "sem titulo",
|
||||
"no name" => "sem nome",
|
||||
|
@ -9,11 +9,15 @@
|
||||
"Error removing feed." => "Ошибка удаления ленты.",
|
||||
"Error removing folder." => "Ошибка удаления ленты.",
|
||||
"Error updating feeds." => "Ошибка обновления лент.",
|
||||
"Empty filename" => "Пустое имя файла",
|
||||
"No source argument passed" => "Нет исходного аргумента",
|
||||
"Error while reading file" => "Ошибка при чтении файла",
|
||||
"An error occurred while parsing the file." => "При обработке файла возникла ошибка.",
|
||||
"Feed loaded!" => "Лента загружена!",
|
||||
"Error moving feed into folder." => "Ошибка перемещения ленты в папку.",
|
||||
"No file path was submitted." => "Не было указано пути к файлу.",
|
||||
"File doesn't exist:" => "Файл не существует:",
|
||||
"Couldn't save temporary image: " => "Не удалось сохранить временное изображение:",
|
||||
"Error setting all items as read." => "Ошибка установки элементов как прочитанных.",
|
||||
"Error marking item as read." => "Ошибка отметки элемента как прочитанного.",
|
||||
"Error updating feed." => "Ошибка обновления ленты.",
|
||||
@ -37,6 +41,10 @@
|
||||
"Error while parsing the feed" => "Ошибка обработки ленты",
|
||||
"Fatal Error" => "Неисправимая ошибка",
|
||||
"No files selected." => "Нет выбранных файлов.",
|
||||
"Importing OPML file..." => "Импортирование OPML файла...",
|
||||
"Not a valid type" => "Недопустимый тип",
|
||||
"Importing done" => "Импорт завершен",
|
||||
"Error while importing feeds." => "Возникла ошибка при импортировании данных",
|
||||
"Select file" => "Выберите файл",
|
||||
"no title" => "без заголовка",
|
||||
"no name" => "без имени",
|
||||
|
@ -9,12 +9,15 @@
|
||||
"Error removing feed." => "Ошибка при удалении потока.",
|
||||
"Error removing folder." => "Ошибка при удалении папки.",
|
||||
"Error updating feeds." => "Ошибка обновления потоков.",
|
||||
"No file was submitted." => "Файлы не были отправлены.",
|
||||
"Empty filename" => "Пустое имя файла",
|
||||
"No source argument passed" => "Нет годного параметра источника",
|
||||
"Error while reading file" => "Ошибка при чтении файла",
|
||||
"An error occurred while parsing the file." => "При парсинге файла произошла ошибка.",
|
||||
"Feed loaded!" => "Поток загружен!",
|
||||
"Error moving feed into folder." => "Ошибка при перемещении потока в папку. ",
|
||||
"No file path was submitted." => "Не был задан путь к файлу.",
|
||||
"File doesn't exist:" => "Файл не существует:",
|
||||
"Couldn't save temporary image: " => "Не удалось сохранить временное изображение:",
|
||||
"Error setting all items as read." => "Ошибка при отметке всех пунктов прочитанными.",
|
||||
"Error marking item as read." => "Ошибка при отметке пункта прочитанным.",
|
||||
"Error updating feed." => "Ошибка при обновлении потока.",
|
||||
@ -40,7 +43,8 @@
|
||||
"No files selected." => "Не выбран файл.",
|
||||
"Importing OPML file..." => "Импортирование OPML-файла...",
|
||||
"Not a valid type" => "Недопустимый тип",
|
||||
"{n_success} out of {n_total} feeds imported successfully!" => "{n_success} из {n_total} потоков импортированы успешно!",
|
||||
"Importing done" => "Импортирование выполнено",
|
||||
"Error while importing feeds." => "Ошибка при импортировании потоков.",
|
||||
"Select file" => "Выбрать файл",
|
||||
"no title" => "заголовок отсутствует",
|
||||
"no name" => "имя отсутствует",
|
||||
|
@ -9,12 +9,15 @@
|
||||
"Error removing feed." => "සංග්රහය ඉවත් කිරීමේදී දෝෂයක් සිදුවිය",
|
||||
"Error removing folder." => "ෆොල්ඩරය ඉවත් කිරීමේදී දෝෂයක් සිදුවිය",
|
||||
"Error updating feeds." => "සංග්රහ යාවත්කාලීන කිරීමේදී දෝෂයක් සිදුවිය",
|
||||
"No file was submitted." => "කිසිම ගොනුවක් යොමු කර නැත",
|
||||
"Empty filename" => "ගොනු නාමය හිස්",
|
||||
"No source argument passed" => "මුල් තර්කයක් ලබාදී නැත",
|
||||
"Error while reading file" => "ගොනුව කියවීමේදී දෝෂයක්",
|
||||
"An error occurred while parsing the file." => "ගොනුවේ ව්යාකරණ විග්රහ කිරීමේදී දෝෂයක් සිදුවිය",
|
||||
"Feed loaded!" => "සංග්රහය පූරණය කරන ලදි!",
|
||||
"Error moving feed into folder." => "සංග්රහය ෆොල්ඩරයට ගෙනයෑමේදී දෝෂයක් සිදුවිය",
|
||||
"No file path was submitted." => "ගොනු පෙතක් ලබාදී නැත",
|
||||
"File doesn't exist:" => "ගොනුව නොපවතී",
|
||||
"Couldn't save temporary image: " => "තාවකාලික රූපය සුරැකීමට නොහැකි විය",
|
||||
"Error setting all items as read." => "සියලු අයිතම කියවන ලදී යයි සලකුණු කිරීමේදි දෝෂයක් සිදුවිය",
|
||||
"Error marking item as read." => "මෙම අයිතමය කියවන ලදී යයි සලකුණු කිරීමේදි දෝෂයක් සිදුවිය",
|
||||
"Error updating feed." => "සංග්රහය යාවත්කාලීන කිරීමේදී දෝෂයක් සිදුවිය",
|
||||
@ -40,7 +43,6 @@
|
||||
"No files selected." => "ගොනුවක් තෝරා නැත",
|
||||
"Importing OPML file..." => "OPML ගොනුවක් ආයාත කරනවා...",
|
||||
"Not a valid type" => "වලංගු වර්ගයක් නොවේ",
|
||||
"{n_success} out of {n_total} feeds imported successfully!" => "{n_total} වලින් {n_success} සංග්රහයන් ආයාත කරන ලදී!",
|
||||
"Select file" => "ගොනුව තෝරන්න",
|
||||
"no title" => "මාතෘකාවක් නැත",
|
||||
"no name" => "නමක් නැත",
|
||||
|
@ -14,6 +14,7 @@
|
||||
"Error moving feed into folder." => "Chyba pri presune kanálu do priečinka.",
|
||||
"No file path was submitted." => "Neuvedené cesta k súboru.",
|
||||
"File doesn't exist:" => "Súbor neexistuje.",
|
||||
"Couldn't save temporary image: " => "Nemôžem uložiť dočasný obrázok: ",
|
||||
"Error setting all items as read." => "Chyba pri označovaní všetkých položiek ako prečítané.",
|
||||
"Error marking item as read." => "Chyba pri označení položky ako prečítané.",
|
||||
"Error updating feed." => "Chyba pri aktualizácií kanála.",
|
||||
|
@ -14,6 +14,7 @@
|
||||
"Error moving feed into folder." => "Napaka med premikanjem vira v mapo.",
|
||||
"No file path was submitted." => "Pot do datoteke ni poslana.",
|
||||
"File doesn't exist:" => "Datoteka ne obstaja:",
|
||||
"Couldn't save temporary image: " => "Začasne slike ni mogoče shraniti: ",
|
||||
"Error setting all items as read." => "Napaka med označevanjem vseh predmetov kot prebrane.",
|
||||
"Error marking item as read." => "Napaka med označevanjem predmeta kot prebranega.",
|
||||
"Error updating feed." => "Napaka med posodabljanjem vira.",
|
||||
|
@ -1,7 +1,10 @@
|
||||
<?php $TRANSLATIONS = array(
|
||||
"Error" => "Грешка",
|
||||
"Address" => "Адреса",
|
||||
"Upload" => "Пошаљи",
|
||||
"Import" => "Увези",
|
||||
"Folder" => "фасцикла",
|
||||
"Settings" => "Подешавања",
|
||||
"Add" => "Додај"
|
||||
"Add" => "Додај",
|
||||
"Share" => "Дељење"
|
||||
);
|
||||
|
@ -9,12 +9,15 @@
|
||||
"Error removing feed." => "Kunde inte radera flöde.",
|
||||
"Error removing folder." => "Fel vid radering av mapp.",
|
||||
"Error updating feeds." => "Fel vid uppdatering av flöden.",
|
||||
"No file was submitted." => "Ingen fil angavs.",
|
||||
"Empty filename" => "Tomt filnamn",
|
||||
"No source argument passed" => "Inget argument för källa angavs",
|
||||
"Error while reading file" => "Fel vid läsning av fil",
|
||||
"An error occurred while parsing the file." => "Ett fel uppstod vid läsning av filen.",
|
||||
"Feed loaded!" => "Flöde inläst!",
|
||||
"Error moving feed into folder." => "Fel vid flyttning av flöde till mapp.",
|
||||
"No file path was submitted." => "Inga sökvägar angivna.",
|
||||
"File doesn't exist:" => "Filen existerar inte:",
|
||||
"Couldn't save temporary image: " => "Kunde inte spara tillfällig bild:",
|
||||
"Error setting all items as read." => "Ett fel uppstod när alla objekt skulle markeras som lästa.",
|
||||
"Error marking item as read." => "Ett fel uppstod när objektet skulle markeras som läst.",
|
||||
"Error updating feed." => "Fel vid uppdatering av flöde.",
|
||||
@ -38,6 +41,10 @@
|
||||
"Error while parsing the feed" => "Problem med att analysera flöde",
|
||||
"Fatal Error" => "Allvarligt fel",
|
||||
"No files selected." => "Inga filer valda.",
|
||||
"Importing OPML file..." => "Importerar OPML-fil...",
|
||||
"Not a valid type" => "Inte en giltig typ",
|
||||
"Importing done" => "Import klar",
|
||||
"Error while importing feeds." => "Fel vid import av flöden.",
|
||||
"Select file" => "Välj fil",
|
||||
"no title" => "ingen titel",
|
||||
"no name" => "inget namn",
|
||||
|
@ -14,6 +14,7 @@
|
||||
"Error moving feed into folder." => "เกิดข้อผิดพลาดในการย้าย feed ไปที่โฟลเดอร์",
|
||||
"No file path was submitted." => "ยังไม่ได้ส่งข้อมูลตำแหน่งพาธของไฟล์",
|
||||
"File doesn't exist:" => "ไม่มีไฟล์ดังกล่าวอยู่ในระบบ",
|
||||
"Couldn't save temporary image: " => "ไม่สามารถบันทึกรูปภาพชั่วคราวได้: ",
|
||||
"Error setting all items as read." => "เกิดข้อผิดพลาดในการตั้งค่ารายการทั้งหมดว่าอ่านแล้ว",
|
||||
"Error marking item as read." => "เกิดข้อผิดพลาดในระหว่างการทำเครื่องหมายรายการว่าอ่านแล้ว",
|
||||
"Error updating feed." => "เกิดข้อผิดพลาดในการอัพเดท feed",
|
||||
|
@ -1,5 +1,6 @@
|
||||
<?php $TRANSLATIONS = array(
|
||||
"File doesn't exist:" => "Dosya mevcut değil:",
|
||||
"Couldn't save temporary image: " => "Geçici resmi saklayamadı : ",
|
||||
"Error" => "Hata",
|
||||
"Warning" => "Uyarı",
|
||||
"Address" => "Adres",
|
||||
|
60
l10n/vi.php
60
l10n/vi.php
@ -1,39 +1,97 @@
|
||||
<?php $TRANSLATIONS = array(
|
||||
"Error changing name of folder " => "Lỗi khi thay đổi tên của thư mục",
|
||||
"Error collapsing folder." => "Error collapsing folder.",
|
||||
"Feed already exists." => "Feed đã tồn tại",
|
||||
"Error adding feed." => " Lỗi khi thêm feed.",
|
||||
"Feed added!" => "Feed đã được thêm",
|
||||
"Error adding folder." => "Thêm thư mục bị lỗi.",
|
||||
"Folder added!" => "Thư mục đã được thêm",
|
||||
"Error removing feed." => "Lỗi khi xóa feed",
|
||||
"Error removing folder." => "Lỗi xoá thư mục",
|
||||
"Error updating feeds." => "Lỗi khi cập nhật feeds",
|
||||
"Empty filename" => "tên tập tin trống",
|
||||
"No source argument passed" => "Không có đối số nguồn thông qua",
|
||||
"Error while reading file" => "Lỗi khi đọc tập tin",
|
||||
"An error occurred while parsing the file." => "Một lỗi xảy ra trong khi phân tích các tập tin.",
|
||||
"Feed loaded!" => "feed đang được nạp !",
|
||||
"Error moving feed into folder." => "Lỗi di chuyển feed vào thư mục.",
|
||||
"No file path was submitted." => "Không có đường dẫn tập tin đã được gửi.",
|
||||
"File doesn't exist:" => "Tập tin không tồn tại",
|
||||
"Couldn't save temporary image: " => "Không thể lưu ảnh tạm thời:",
|
||||
"Error setting all items as read." => "Lỗi cài đặt tất cả tin là đã đọc.",
|
||||
"Error marking item as read." => "Lỗi đánh dấu mục đã đọc.",
|
||||
"Error updating feed." => "Lỗi khi cập nhập feed",
|
||||
"Feed updated!" => "Cập nhập feed!",
|
||||
"News" => "Tin tức",
|
||||
"Error while loading the feed" => " Lỗi trong khi tải feed",
|
||||
"Error" => "Lỗi",
|
||||
"None" => "none",
|
||||
"Show only unread" => "Hiển thị chưa đọc",
|
||||
"Show everything" => "Hiện tất cả",
|
||||
"Are you sure you want to delete this feed?" => "Bạn có muốn xóa feed này ?",
|
||||
"Are you sure you want to delete this folder and all its feeds?" => "Bạn có muốn xóa thư mục và tất cả feed",
|
||||
"Warning" => "Cảnh báo",
|
||||
"Name of the folder cannot be empty." => " Tên của thự mục không được để trống.",
|
||||
"Adding..." => "Đang thêm...",
|
||||
"Add folder" => "Thêm thư mục",
|
||||
"Changing..." => "Đang thay đổi...",
|
||||
"Change folder name" => "Thay đổi tên thư mục",
|
||||
"URL cannot be empty." => "URL không được để trống.",
|
||||
"Add feed" => "Tâp",
|
||||
"Error while parsing the feed" => "Lỗi trong khi phân tích các feed",
|
||||
"Fatal Error" => "Lỗi nghiêm trọng",
|
||||
"No files selected." => "Không có tập tin được chọn.",
|
||||
"Importing OPML file..." => "Importing OPML tập tin...",
|
||||
"Not a valid type" => "kiểu không hợp lệ",
|
||||
"Importing done" => "import thành công",
|
||||
"Error while importing feeds." => "Lỗi trong khi import feed.",
|
||||
"Select file" => "Chọn tập tin",
|
||||
"no title" => " không có tiêu đề",
|
||||
"no name" => "không có tên",
|
||||
"no body" => "no body",
|
||||
"subscriptions in ownCloud - News" => "đăng ký trong ownCloud - Tin tức",
|
||||
"An error occurred" => "Một lỗi đã xảy ra",
|
||||
"Nice! You have subscribed to " => "Tuyệt! Bạn đã đăng ký",
|
||||
"You had already subcribed to this feed!" => "Bạn đã subcribed với feed này!",
|
||||
"You don't have any feed in your reader." => "Bạn không có bất kỳ feed nào .",
|
||||
"Address" => "Địa chỉ",
|
||||
"Subscribe" => "Theo dõi",
|
||||
"Import OPML" => "Import OPML",
|
||||
"Upload file from desktop" => "Tải tập tin từ Desktop",
|
||||
"Upload" => "Tải lên",
|
||||
"Select file from ownCloud" => "Chọn tập tin từ ownCloud",
|
||||
"Select" => "chọn",
|
||||
"Select file from <a href=\"#\" class=\"settings\" id=\"browselink\">local filesystem</a> or <a href=\"#\" class=\"settings\" id=\"cloudlink\">cloud</a>" => "Chọn tập tin từ <a href=\"#\" class=\"settings\" id=\"browselink\">hệ thống tập tin trên máy tính</a> hoặc <a href=\"#\" class=\"settings\" id=\"cloudlink\">điện toán đám mây</a>",
|
||||
"Import" => "Nhập",
|
||||
"Or..." => "or...",
|
||||
"Add feed or folder" => "Thêm feed hoặc thư mục ",
|
||||
"Add Feed/Folder" => "Thêm feed/thư mục ",
|
||||
"Feed" => "Feed",
|
||||
"Folder" => "Thư mục",
|
||||
"Settings" => "Cài đặt",
|
||||
"Add Folder" => "Thêm thư mục",
|
||||
"Add new folder" => "Thêm thư mục mới",
|
||||
"Folder name" => "Tên thư mục",
|
||||
"Add Subscription" => "Thêm Subscription",
|
||||
"Add new feed" => "Thêm feed mới",
|
||||
"Choose folder" => "Chọn thư mục",
|
||||
"Add" => "Thêm",
|
||||
"New articles" => "Bài viết mới",
|
||||
"Mark all read" => "Đánh dấu tất cả đã đọc",
|
||||
"Starred" => "Starred",
|
||||
"Mark as unimportant" => "Đánh dấu là không quan trọng",
|
||||
"Mark as important" => "Đánh dấu là quan trọng",
|
||||
"from" => "từ",
|
||||
"by" => "bởi",
|
||||
"Share" => "Chia sẻ",
|
||||
"Keep unread" => "Giữ chưa đọc",
|
||||
"Collapse" => "Thu gọn"
|
||||
"Delete feed" => "Xóa feed",
|
||||
"Collapse" => "Thu gọn",
|
||||
"Delete folder" => "Xóa thư mục",
|
||||
"Rename folder" => "Đổi tên thư mục",
|
||||
"Import feeds" => "Import feeds",
|
||||
"Export feeds" => "Export feeds",
|
||||
"Download OPML" => "Tải về OPML",
|
||||
"Subscribelet" => "Subscribelet",
|
||||
"Drag this to your browser bookmarks and click on it whenever you want to subscribe to a webpage quickly:" => "Kéo vào bookmark trình duyệt của bạn và click vào nó bất cứ khi nào bạn muốn để theo dõi trang web một cách nhanh chóng:"
|
||||
);
|
||||
|
@ -14,6 +14,7 @@
|
||||
"Error moving feed into folder." => "移动种子到文件夹出错。",
|
||||
"No file path was submitted." => "没有提交文件路径。",
|
||||
"File doesn't exist:" => "文件不存在。",
|
||||
"Couldn't save temporary image: " => "不能保存临时相片:",
|
||||
"Error setting all items as read." => "全部标记为已读出错。",
|
||||
"Error marking item as read." => "标记条目为已读出错。",
|
||||
"Error updating feed." => "更新种子出错。",
|
||||
@ -37,6 +38,8 @@
|
||||
"Error while parsing the feed" => "解析种子出错",
|
||||
"Fatal Error" => "致命错误",
|
||||
"No files selected." => "没有选择文件。",
|
||||
"Importing OPML file..." => "正在导入 OPML 文件...",
|
||||
"Not a valid type" => "不是一个有效的类型",
|
||||
"Select file" => "选择文件",
|
||||
"no title" => "无主题",
|
||||
"no name" => "无名称",
|
||||
|
@ -14,6 +14,7 @@
|
||||
"Error moving feed into folder." => "移动Feed时出错",
|
||||
"No file path was submitted." => "没有提交文件路径。",
|
||||
"File doesn't exist:" => "文件不存在",
|
||||
"Couldn't save temporary image: " => "无法保存临时图像: ",
|
||||
"Error setting all items as read." => "标识所有已读时出错。",
|
||||
"Error marking item as read." => "标志为已读时出错。",
|
||||
"Error updating feed." => "更新Feed时出错。",
|
||||
|
@ -17,7 +17,7 @@ class OC_Search_Provider_News extends OC_Search_Provider{
|
||||
|
||||
foreach($allFeeds as $feed) {
|
||||
if(substr_count(strtolower($feed['title']), strtolower($query)) > 0) {
|
||||
$link = OCP\Util::linkTo('news', 'index.php').'&feedid='.urlencode($feed['id']);
|
||||
$link = OCP\Util::linkTo('news', 'index.php').'?feedid='.urlencode($feed['id']);
|
||||
$results[]=new OC_Search_Result($feed['title'], '', $link, (string)$l->t('News'));
|
||||
}
|
||||
}
|
||||
|
@ -20,21 +20,33 @@ class Utils {
|
||||
|
||||
/**
|
||||
* @brief Transform a date from UNIX timestamp format to MDB2 timestamp format
|
||||
* @param dbtimestamp
|
||||
* @returns
|
||||
* @param dbtimestamp a date in the UNIX timestamp format
|
||||
* @returns a date in the MDB2 timestamp format, or NULL if an error occurred
|
||||
*/
|
||||
public static function unixtimeToDbtimestamp($unixtime) {
|
||||
if ($unixtime === null) {
|
||||
return null;
|
||||
}
|
||||
$dt = \DateTime::createFromFormat('U', $unixtime);
|
||||
if ($dt === false) {
|
||||
return null;
|
||||
}
|
||||
return $dt->format('Y-m-d H:i:s');
|
||||
}
|
||||
|
||||
/**
|
||||
* @brief Transform a date from MDB2 timestamp format to UNIX timestamp format
|
||||
* @param dbtimestamp
|
||||
* @returns
|
||||
* @param dbtimestamp a date in the MDB2 timestamp format
|
||||
* @returns a date in the UNIX timestamp format, or NULL if an error occurred
|
||||
*/
|
||||
public static function dbtimestampToUnixtime($dbtimestamp) {
|
||||
if ($dbtimestamp === null) {
|
||||
return null;
|
||||
}
|
||||
$dt = \DateTime::createFromFormat('Y-m-d H:i:s', $dbtimestamp);
|
||||
if ($dt === false) {
|
||||
return null;
|
||||
}
|
||||
return $dt->format('U');
|
||||
}
|
||||
|
||||
|
@ -22,8 +22,9 @@ foreach($items as $item) {
|
||||
|
||||
echo '<li class="feed_item ' . $newsItemClass .'" data-id="' . $item->getId() . '" data-feedid="' . $item->getFeedId() . '">';
|
||||
echo '<span class="timestamp">' . $item->getDate() . '</span>';
|
||||
$relative_modified_date = OCP\relative_modified_date($item->getDate());
|
||||
echo '<h2 class="item_date"><time class="timeago" datetime="' .
|
||||
date('c', $item->getDate()) . '">' . date('F j, Y, g:i a', $item->getDate()) . '</time>' . '</h2>';
|
||||
date('c', $item->getDate()) . '">' . $relative_modified_date . '</time>' . '</h2>';
|
||||
|
||||
echo '<div class="utils">';
|
||||
echo '<ul class="primary_item_utils">';
|
||||
@ -38,7 +39,7 @@ foreach($items as $item) {
|
||||
} else {
|
||||
$feedTitle = '';
|
||||
}
|
||||
|
||||
|
||||
if(($item->getAuthor() !== null) && (trim($item->getAuthor()) !== '')) {
|
||||
$author = $l->t('by') . ' ' . htmlspecialchars($item->getAuthor(), ENT_QUOTES, 'UTF-8');
|
||||
} else {
|
||||
@ -53,12 +54,12 @@ foreach($items as $item) {
|
||||
|
||||
echo '<div class="bottom_utils">';
|
||||
echo '<ul class="secondary_item_utils">';
|
||||
echo '<li class="share_link"><a class="share" data-item-type="news_item" data-item="' . $item->getId() . '" title="' . $l->t('Share') .
|
||||
'" data-possible-permissions="' . (OCP\Share::PERMISSION_READ | OCP\Share::PERMISSION_SHARE) . '" href="#">' . $l->t('Share') . '</a></li>';
|
||||
echo '<li class="share_link"><a class="share" data-item-type="news_item" data-item="' . $item->getId() . '" title="' . $l->t('Share') .
|
||||
'" data-possible-permissions="' . (OCP\PERMISSION_READ | OCP\PERMISSION_SHARE) . '" href="#">' . $l->t('Share') . '</a></li>';
|
||||
echo '<li class="keep_unread">' . $l->t('Keep unread') . '<input type="checkbox" /></li>';
|
||||
echo '</ul>';
|
||||
echo '</div>';
|
||||
|
||||
|
||||
|
||||
echo '</li>';
|
||||
|
||||
|
@ -39,7 +39,7 @@ foreach($items as $item) {
|
||||
} else {
|
||||
$feedTitle = '';
|
||||
}
|
||||
|
||||
|
||||
if(($item->getAuthor() !== null) && (trim($item->getAuthor()) !== '')) {
|
||||
$author = $l->t('by') . ' ' . htmlspecialchars($item->getAuthor(), ENT_QUOTES, 'UTF-8');
|
||||
} else {
|
||||
@ -52,15 +52,15 @@ foreach($items as $item) {
|
||||
|
||||
echo '<div class="body">' . $item->getBody() . '</div>';
|
||||
|
||||
echo '<div><a class="share" data-item-type="news_item" data-item="' . $item->getId() . '" title="' . $l->t('Share') .
|
||||
'" data-possible-permissions="' . (OCP\Share::PERMISSION_READ | OCP\Share::PERMISSION_SHARE) . '"/></div>';
|
||||
|
||||
echo '<div><a class="share" data-item-type="news_item" data-item="' . $item->getId() . '" title="' . $l->t('Share') .
|
||||
'" data-possible-permissions="' . (OCP\PERMISSION_READ | OCP\PERMISSION_SHARE) . '"/></div>';
|
||||
|
||||
echo '<div class="bottom_utils">';
|
||||
echo '<ul class="secondary_item_utils">';
|
||||
echo '<ul class="secondary_item_utils">';
|
||||
echo '<li class="keep_unread">' . $l->t('Keep unread') . '<input type="checkbox" /></li>';
|
||||
echo '</ul>';
|
||||
echo '</div>';
|
||||
|
||||
|
||||
|
||||
echo '</li>';
|
||||
|
||||
|
@ -2,7 +2,6 @@
|
||||
|
||||
/**
|
||||
*
|
||||
*/
|
||||
OC_App::loadApp('news');
|
||||
class Test_News_MyTest extends UnitTestCase
|
||||
{
|
||||
@ -11,3 +10,4 @@ class Test_News_MyTest extends UnitTestCase
|
||||
$this->assertTrue(false);
|
||||
}
|
||||
}
|
||||
*/
|
||||
|
Loading…
Reference in New Issue
Block a user