mirror of
https://github.com/silverstripe/silverstripe-blog
synced 2024-10-22 11:05:58 +02:00
Merge branch '2.4' into 2
This commit is contained in:
commit
9a5690ca3e
@ -2,6 +2,8 @@ language: php
|
||||
|
||||
sudo: false
|
||||
|
||||
dist: precise
|
||||
|
||||
addons:
|
||||
apt:
|
||||
packages:
|
||||
|
@ -1,8 +0,0 @@
|
||||
[main]
|
||||
host = https://www.transifex.com
|
||||
|
||||
[silverstripe-blog.master-v2]
|
||||
file_filter = lang/<lang>.yml
|
||||
source_file = lang/en.yml
|
||||
source_lang = en
|
||||
type = YML
|
@ -12,7 +12,7 @@ class BlogMemberExtension extends DataExtension
|
||||
* @var array
|
||||
*/
|
||||
private static $db = array(
|
||||
'URLSegment' => 'Varchar',
|
||||
'URLSegment' => 'Varchar(255)',
|
||||
'BlogProfileSummary' => 'Text',
|
||||
);
|
||||
|
||||
|
@ -708,8 +708,10 @@ class Blog_Controller extends Page_Controller
|
||||
$urlSegment = $this->request->param('URLSegment');
|
||||
|
||||
if ($urlSegment) {
|
||||
$filter = URLSegmentFilter::create();
|
||||
|
||||
return Member::get()
|
||||
->filter('URLSegment', $urlSegment)
|
||||
->filter('URLSegment', $filter->filter($urlSegment))
|
||||
->first();
|
||||
}
|
||||
|
||||
@ -860,8 +862,10 @@ class Blog_Controller extends Page_Controller
|
||||
$dataRecord = $this->dataRecord;
|
||||
$tag = $this->request->param('Tag');
|
||||
if ($tag) {
|
||||
$filter = URLSegmentFilter::create();
|
||||
|
||||
return $dataRecord->Tags()
|
||||
->filter('URLSegment', array($tag, rawurlencode($tag)))
|
||||
->filter('URLSegment', array($tag, $filter->filter($tag)))
|
||||
->first();
|
||||
}
|
||||
return null;
|
||||
@ -904,8 +908,10 @@ class Blog_Controller extends Page_Controller
|
||||
$dataRecord = $this->dataRecord;
|
||||
$category = $this->request->param('Category');
|
||||
if ($category) {
|
||||
$filter = URLSegmentFilter::create();
|
||||
|
||||
return $dataRecord->Categories()
|
||||
->filter('URLSegment', array($category, rawurlencode($category)))
|
||||
->filter('URLSegment', array($category, $filter->filter($category)))
|
||||
->first();
|
||||
}
|
||||
return null;
|
||||
@ -1098,7 +1104,7 @@ class Blog_Controller extends Page_Controller
|
||||
{
|
||||
return $this->Link('rss');
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* Displays an RSS feed of the given blog posts.
|
||||
*
|
||||
@ -1115,11 +1121,11 @@ class Blog_Controller extends Page_Controller
|
||||
|
||||
return $rss->outputToBrowser();
|
||||
}
|
||||
|
||||
/**
|
||||
|
||||
/**
|
||||
* Returns true if the $Rss sub-action for categories/tags has been set to "rss"
|
||||
*/
|
||||
private function isRSS()
|
||||
private function isRSS()
|
||||
{
|
||||
$rss = $this->request->param('Rss');
|
||||
if(is_string($rss) && strcasecmp($rss, "rss") == 0) {
|
||||
|
@ -693,6 +693,9 @@ class BlogPost extends Page
|
||||
*/
|
||||
public function getDate()
|
||||
{
|
||||
if ($this->hasDatabaseField('Date')) {
|
||||
return $this->getField('Date');
|
||||
}
|
||||
return !empty($this->PublishDate) ? $this->PublishDate : null;
|
||||
}
|
||||
|
||||
|
@ -84,52 +84,47 @@ class BlogArchiveWidget extends Widget
|
||||
/**
|
||||
* Returns a list of months where blog posts are present.
|
||||
*
|
||||
* @return DataList
|
||||
* @return ArrayList
|
||||
*/
|
||||
public function getArchive()
|
||||
{
|
||||
$query = $this->Blog()->getBlogPosts()->dataQuery();
|
||||
$format = ($this->ArchiveType == 'Yearly') ? '%Y' : '%Y-%m';
|
||||
$publishDate = DB::get_conn()->formattedDatetimeClause('"PublishDate"', $format);
|
||||
$fields = array(
|
||||
'PublishDate' => $publishDate,
|
||||
'Total' => "Count('PublishDate')"
|
||||
);
|
||||
|
||||
if ($this->ArchiveType == 'Yearly') {
|
||||
$query->groupBy('DATE_FORMAT("PublishDate", \'%Y\')');
|
||||
} else {
|
||||
$query->groupBy('DATE_FORMAT("PublishDate", \'%Y-%M\')');
|
||||
}
|
||||
$stage = Versioned::current_stage();
|
||||
$suffix = ($stage == 'Stage') ? '' : "_{$stage}";
|
||||
$query = SQLSelect::create($fields, "BlogPost{$suffix}")
|
||||
->addGroupBy($publishDate)
|
||||
->addOrderBy('PublishDate Desc')
|
||||
->addWhere(array('PublishDate < ?' => SS_Datetime::now()->Format('Y-m-d')));
|
||||
|
||||
$posts = $this->Blog()->getBlogPosts()->setDataQuery($query);
|
||||
$posts = $query->execute();
|
||||
$result = new ArrayList();
|
||||
while ($next = $posts->next()) {
|
||||
$date = Date::create();
|
||||
$date->setValue(strtotime($next['PublishDate']));
|
||||
$year = $date->Format('Y');
|
||||
|
||||
if ($this->NumberToDisplay > 0) {
|
||||
$posts = $posts->limit($this->NumberToDisplay);
|
||||
}
|
||||
|
||||
$archive = new ArrayList();
|
||||
|
||||
if ($posts->count() > 0) {
|
||||
foreach ($posts as $post) {
|
||||
/**
|
||||
* @var BlogPost $post
|
||||
*/
|
||||
$date = Date::create();
|
||||
$date->setValue($post->PublishDate);
|
||||
|
||||
if ($this->ArchiveType == 'Yearly') {
|
||||
$year = $date->Format("Y");
|
||||
$month = null;
|
||||
$title = $year;
|
||||
} else {
|
||||
$year = $date->Format("Y");
|
||||
$month = $date->Format("m");
|
||||
$title = $date->FormatI18N("%B %Y");
|
||||
}
|
||||
|
||||
$archive->push(new ArrayData(array(
|
||||
'Title' => $title,
|
||||
'Link' => Controller::join_links($this->Blog()->Link('archive'), $year, $month)
|
||||
)));
|
||||
if ($this->ArchiveType == 'Yearly') {
|
||||
$month = null;
|
||||
$title = $year;
|
||||
} else {
|
||||
$month = $date->Format('m');
|
||||
$title = $date->FormatI18N('%B %Y');
|
||||
}
|
||||
|
||||
$result->push(new ArrayData(array(
|
||||
'Title' => $title,
|
||||
'Link' => Controller::join_links($this->Blog()->Link('archive'), $year, $month)
|
||||
)));
|
||||
}
|
||||
|
||||
return $archive;
|
||||
$this->extend('updateGetArchive', $result);
|
||||
return $result;
|
||||
}
|
||||
}
|
||||
|
||||
|
96
lang/es.yml
Normal file
96
lang/es.yml
Normal file
@ -0,0 +1,96 @@
|
||||
es:
|
||||
Blog:
|
||||
AND: 'y'
|
||||
Archive: Archivo
|
||||
By: por
|
||||
CONTRIBUTOR: Contribuidor
|
||||
Categories: Categorías
|
||||
Category: Categoría
|
||||
Comments: Comentarios
|
||||
DESCRIPTION: 'Añade un blog a tu sitio web.'
|
||||
EDITOR: Editor
|
||||
FILTERDESCRIPTION_AUTHOR: 'Por {author}'
|
||||
FILTERDESCRIPTION_CATEGORY: 'En la categoría {category}'
|
||||
FILTERDESCRIPTION_DATE: 'En {date}'
|
||||
FILTERDESCRIPTION_PAGE: 'Página {page}'
|
||||
FILTERDESCRIPTION_TAG: 'Etiquetado con {tag}'
|
||||
LumberjackTitle: 'Publicaciones del Blog'
|
||||
NoPosts: 'No hay publicaciones'
|
||||
PERMISSIONS_CATEGORY: 'Permisos del Blog'
|
||||
PERMISSION_MANAGE_USERS_DESCRIPTION: 'Administrar usuarios para blogs individuales'
|
||||
PLURALNAME: 'Página base'
|
||||
Posted: Publicado
|
||||
PostedIn: 'Publicado en'
|
||||
PostsPerPage: 'Publicaciones por Página'
|
||||
ReadMoreAbout: 'Leer más sobre ''{title}''...'
|
||||
SINGULARNAME: Blog
|
||||
Tag: Etiqueta
|
||||
Tagged: Etiquetado
|
||||
Tags: Etiquetas
|
||||
WRITER: Escritor
|
||||
BlogArchiveWidget:
|
||||
ArchiveType: 'Tipo de Archivo'
|
||||
Blog: Blog
|
||||
NumberToDisplay: 'Nº a Mostrar'
|
||||
BlogCategoriesWidget:
|
||||
Blog: Blog
|
||||
Direction:
|
||||
Label: Dirección
|
||||
Limit:
|
||||
Label: Límite
|
||||
Sort:
|
||||
Label: Ordenar
|
||||
BlogCategory:
|
||||
Duplicate: 'Ya existe una categoría del blog con el mismo nombre'
|
||||
PLURALNAME: 'Categorías del Blog'
|
||||
SINGULARNAME: 'Categoría del Blog'
|
||||
Title: Título
|
||||
BlogEntry:
|
||||
DESCRIPTION: 'Página de contenido genérico'
|
||||
PLURALNAME: 'Página base'
|
||||
SINGULARNAME: 'Entrada del Blog'
|
||||
BlogHolder:
|
||||
DESCRIPTION: 'Página de contenido genérico'
|
||||
PLURALNAME: 'Página base'
|
||||
SINGULARNAME: 'Contenedor de Blog'
|
||||
BlogPost:
|
||||
AUTHOR: Autor
|
||||
AdditionalCredits: 'Créditos adicionales'
|
||||
Authors: Autores
|
||||
CUSTOMSUMMARY: 'Añadir un Resumen Personalizado'
|
||||
Categories: Categorías
|
||||
DESCRIPTION: 'Página de contenido genérico'
|
||||
FeaturedImage: 'Imagen Destacada'
|
||||
PLURALNAME: 'Página base'
|
||||
PageTitleLabel: 'Título de la Publicación'
|
||||
PublishDate: 'Fecha de Publicación'
|
||||
PublishDate_Description: 'Se establecerá a "ahora" si se publica sin un valor.'
|
||||
SINGULARNAME: 'Publicación del Blog'
|
||||
SUMMARY_DESCRIPTION: 'Si no se especifica un resumen se usarán las 30 primeras palabras.'
|
||||
Tags: Etiquetas
|
||||
BlogRecentPostsWidget:
|
||||
Blog: Blog
|
||||
NumberOfPosts: 'Número de entradas'
|
||||
BlogTag:
|
||||
PLURALNAME: 'Etiquetas del Blog'
|
||||
SINGULARNAME: Blog
|
||||
Title: Título
|
||||
BlogTagsCloudWidget:
|
||||
Blog: Blog
|
||||
BlogTagsWidget:
|
||||
Blog: Blog
|
||||
Direction:
|
||||
Label: Dirección
|
||||
Limit:
|
||||
Label: Límite
|
||||
Sort:
|
||||
Label: Ordenar
|
||||
BlogTree:
|
||||
DESCRIPTION: 'Página de contenido genérico'
|
||||
PLURALNAME: 'Página base'
|
||||
SINGULARNAME: 'Árbol del Blog'
|
||||
GridFieldAddByDBField:
|
||||
Add: 'Añadir {name}'
|
||||
TagCloudWidget:
|
||||
PLURALNAME: 'Nube de Etiquetas de Widgets'
|
||||
SINGULARNAME: 'Nube de Etiquetas de Widget'
|
@ -3,6 +3,7 @@ fa_IR:
|
||||
PLURALNAME: 'ویجتهای بایگانی'
|
||||
SINGULARNAME: 'ویجت بایگانی'
|
||||
Blog:
|
||||
AND: و
|
||||
Archive: بایگانی
|
||||
By: توسط
|
||||
CONTRIBUTOR: 'مشارکتکننده'
|
||||
@ -41,8 +42,10 @@ fa_IR:
|
||||
BlogCategoriesWidget:
|
||||
Blog: وبلاگ
|
||||
Direction:
|
||||
Description: 'تغییر جهت ترتیب مجموعههای نمایش دادهشده توسط این ویجت'
|
||||
Label: جهت
|
||||
Limit:
|
||||
Description: 'محدود کردن تعداد مجموعههای نمایش داده شده توسط این ویجت (روی 0 بگذارید تا همه به نمایش دربیایند)'
|
||||
Label: 'محدود کردن'
|
||||
PLURALNAME: 'ویجتهای مجموعههای بلاگ'
|
||||
SINGULARNAME: 'ویجت مجموعههای بلاگ'
|
||||
@ -50,6 +53,7 @@ fa_IR:
|
||||
Description: 'تغییر ترتیب مجموعههای نمایش دادهشده توسط این ویجت'
|
||||
Label: 'مرتبسازی'
|
||||
BlogCategory:
|
||||
Duplicate: 'یک مجموعه وبلاگ با این نام از قبل موجود است'
|
||||
PLURALNAME: 'مجموعههای وبلاگ'
|
||||
SINGULARNAME: 'مجموعه وبلاگ'
|
||||
Title: عنوان
|
||||
@ -64,15 +68,18 @@ fa_IR:
|
||||
BlogPost:
|
||||
AUTHOR: نگارنده
|
||||
AdditionalCredits: 'دیگر مشارکتکنندگان'
|
||||
AdditionalCredits_Description: 'اگر برخی از نگارندگان این ارسال دسترسی به سیاماس ندارند، نام آنها را اینجا وارد نمایید. میتوانید نامها را با علامت ویرگول از هم جدا کنید.'
|
||||
Authors: نگارندگان
|
||||
CUSTOMSUMMARY: 'افزودن یک خلاصه دلخواه'
|
||||
Categories: 'مجموعهها'
|
||||
DESCRIPTION: 'صفحه محتوای عمومی'
|
||||
FeaturedImage: 'تصویر برجسته'
|
||||
PLURALNAME: 'صفحات پایهای'
|
||||
PageTitleLabel: 'عنوان ارسال'
|
||||
PublishDate: 'تاریخ انتشار'
|
||||
PublishDate_Description: 'اگر بدون دادهای منتشر شود به "اکنون" تنظیم خواهد شد.'
|
||||
SINGULARNAME: 'ارسال وبلاگ'
|
||||
SUMMARY_DESCRIPTION: 'اگر هیچ خلاصهای معرفی نشود ۳۰ کلمهی آغازین استفاده خواهد شد.'
|
||||
Tags: تگها
|
||||
BlogRecentPostsWidget:
|
||||
Blog: وبلاگ
|
||||
@ -80,12 +87,18 @@ fa_IR:
|
||||
PLURALNAME: 'ویجتهای جدیدترین ارسالهای بلاگ'
|
||||
SINGULARNAME: 'ویجت جدیدترین ارسالهای بلاگ'
|
||||
BlogTag:
|
||||
Duplicate: 'یک تگ وبلاگ با این نام از قبل موجود است'
|
||||
PLURALNAME: 'تگهای وبلاگ'
|
||||
SINGULARNAME: 'تگ وبلاگ'
|
||||
Title: عنوان
|
||||
BlogTagsCloudWidget:
|
||||
Blog: وبلاگ
|
||||
PLURALNAME: 'ویجت ابر تگهای وبلاگ'
|
||||
SINGULARNAME: 'ویجتهای ابر تگهای وبلاگ'
|
||||
BlogTagsWidget:
|
||||
Blog: وبلاگ
|
||||
Direction:
|
||||
Description: 'تغییر جهت ترتیب تگهای نمایش دادهشده توسط این ویجت'
|
||||
Label: جهت
|
||||
Limit:
|
||||
Description: 'محدود کردن تعداد تگهای نمایش داده شده توسط این ویجت (روی 0 بگذارید تا همه به نمایش دربیایند)'
|
||||
@ -93,6 +106,7 @@ fa_IR:
|
||||
PLURALNAME: 'ویجتهای تگهای وبلاگ'
|
||||
SINGULARNAME: 'ویجت تگهای وبلاگ'
|
||||
Sort:
|
||||
Description: 'تغییر ترتیب تگهای نمایش دادهشده توسط این ویجت'
|
||||
Label: 'مرتبسازی'
|
||||
BlogTree:
|
||||
DESCRIPTION: 'صفحه محتوای عمومی'
|
||||
@ -100,7 +114,12 @@ fa_IR:
|
||||
SINGULARNAME: 'نمایش درختی وبلاگ'
|
||||
GridFieldAddByDBField:
|
||||
Add: 'افزودن {name}'
|
||||
AddFail: 'ناتوان از ذخیرهسازی {class} در بانک داده'
|
||||
PermissionFail: 'شما دسترسی لازم جهت ایجاد یک {class} را ندارید.'
|
||||
GridFieldBlogPostState:
|
||||
Draft: '<i class="btn-icon gridfield-icon btn-icon-pencil"></i> ذخیرهشده به عنوان پیشنویس در {date}'
|
||||
Published: '<i class="btn-icon gridfield-icon btn-icon-accept"></i> انتشار یافته در {date}'
|
||||
Timer: '<i class="gridfield-icon blog-icon-timer"></i> انتشار یافته در {date}'
|
||||
TagCloudWidget:
|
||||
PLURALNAME: 'ویجتهای ابر تگ'
|
||||
SINGULARNAME: 'ویجت ابر تگ'
|
||||
|
@ -3,6 +3,7 @@ fi:
|
||||
PLURALNAME: Arkistovimpaimet
|
||||
SINGULARNAME: Arkistovimpain
|
||||
Blog:
|
||||
AND: ja
|
||||
Archive: Arkisto
|
||||
By: kirjoittanut
|
||||
CONTRIBUTOR: Avustaja
|
||||
|
@ -3,6 +3,7 @@ nl:
|
||||
PLURALNAME: Archief-widgets
|
||||
SINGULARNAME: Archief-widget
|
||||
Blog:
|
||||
AND: en
|
||||
Archive: Archief
|
||||
By: door
|
||||
CONTRIBUTOR: Co-auteur
|
||||
@ -21,7 +22,7 @@ nl:
|
||||
NoUnfeaturedPosts: 'Er zijn geen niet aanbevolen artikelen'
|
||||
PERMISSIONS_CATEGORY: 'Blog rechten'
|
||||
PERMISSION_MANAGE_USERS_DESCRIPTION: 'Beheer gebruikers voor individuele blogs'
|
||||
PERMISSION_MANAGE_USERS_HELP: 'Laat toewijzing van Redacteurs, Auteurs en Co-auteurs toe.'
|
||||
PERMISSION_MANAGE_USERS_HELP: 'Laat toewijzing toe van Redacteurs, Auteurs en Co-auteurs.'
|
||||
PLURALNAME: Blogs
|
||||
Posted: Geplaatst
|
||||
PostedIn: 'Geplaatst in'
|
||||
@ -68,7 +69,7 @@ nl:
|
||||
AUTHOR: Auteur
|
||||
AdditionalCredits: Dankbetuigingen
|
||||
AdditionalCredits_Description: 'Indien (enkele) auteurs geen toegang hebben tot dit CMS, kunnen ze hier toegevoegd worden. Scheid namen door middel van komma''s'
|
||||
Authors: Auterus
|
||||
Authors: Auteurs
|
||||
CUSTOMSUMMARY: 'Voeg een eigen samenvatting toe'
|
||||
Categories: Categorieën
|
||||
DESCRIPTION: 'Blog Artikel'
|
||||
|
115
lang/sk.yml
115
lang/sk.yml
@ -1,20 +1,121 @@
|
||||
sk:
|
||||
ArchiveWidget:
|
||||
PLURALNAME: 'Widgety archív'
|
||||
SINGULARNAME: 'Widget archív'
|
||||
Blog:
|
||||
FILTERDESCRIPTION_PAGE: 'Strana {page}'
|
||||
PLURALNAME: 'Základné stránky'
|
||||
AND: a
|
||||
Archive: Archív
|
||||
By: ' od'
|
||||
CONTRIBUTOR: Prispievateľ
|
||||
Categories: Kategórie
|
||||
Category: Kategória
|
||||
Comments: Komentáre
|
||||
DESCRIPTION: 'Pridá blog na stránku.'
|
||||
EDITOR: Vydavateľ
|
||||
FILTERDESCRIPTION_AUTHOR: '{author}'
|
||||
FILTERDESCRIPTION_CATEGORY: 'V kategórii {category}'
|
||||
FILTERDESCRIPTION_DATE: '{date}'
|
||||
FILTERDESCRIPTION_PAGE: 'Stránka {page}'
|
||||
FILTERDESCRIPTION_TAG: 'Štítkovaný {tag}'
|
||||
LumberjackTitle: 'Príspevky v blogu'
|
||||
NoPosts: 'Žiadne príspevky'
|
||||
PERMISSIONS_CATEGORY: 'Práva blogu'
|
||||
PERMISSION_MANAGE_USERS_DESCRIPTION: 'Správa užívateľov pre jednotlivé blogy'
|
||||
PERMISSION_MANAGE_USERS_HELP: 'Umožniť priradenie vydavateľov, spisovateľov alebo prispievateľov do blogu.'
|
||||
PLURALNAME: Blogy
|
||||
Posted: Uverejnené
|
||||
PostedIn: 'Uverejnené v'
|
||||
PostsPerPage: 'Príspevky na stránke'
|
||||
ReadMoreAbout: 'Čítať viac o ''{title}''...'
|
||||
SINGULARNAME: Blog
|
||||
Tag: 'Štítok'
|
||||
Tagged: Oštítkované
|
||||
Tags: 'Štítky'
|
||||
WRITER: Spisovateľ
|
||||
BlogArchiveWidget:
|
||||
ArchiveType: 'Typ archívu'
|
||||
Blog: Blog
|
||||
NumberToDisplay: 'Počet na zobrazenie'
|
||||
PLURALNAME: 'Widgety archívu blogu'
|
||||
SINGULARNAME: 'Widget archívu blogu'
|
||||
BlogCategoriesWidget:
|
||||
Blog: Blog
|
||||
Direction:
|
||||
Description: 'Zmení smer usporiadania kategórií na tomto widgete.'
|
||||
Label: Smer
|
||||
Limit:
|
||||
Description: 'Obmedzí počet zobrazených kategórií na tomto widgete (nastavením na 0 sa zobrazujú všetky kategórie).'
|
||||
Label: 'Max. počet'
|
||||
PLURALNAME: 'Widgety kategórií blogu'
|
||||
SINGULARNAME: 'Widget kategórií blogu'
|
||||
Sort:
|
||||
Description: 'Zmení usporiadanie kategórií na tomto widgete.'
|
||||
Label: Usporiadanie
|
||||
BlogCategory:
|
||||
Duplicate: 'Kategória blogu s týmto názvom už existuje'
|
||||
PLURALNAME: 'Kategórie blogu'
|
||||
SINGULARNAME: 'Kategória blogu'
|
||||
Title: Názov
|
||||
BlogEntry:
|
||||
DESCRIPTION: 'Obyčajná jednoduchá stránka s vlastným obsahom.'
|
||||
DESCRIPTION: 'Generický obsah stránky'
|
||||
PLURALNAME: 'Základné stránky'
|
||||
BlogHolder:
|
||||
DESCRIPTION: 'Obyčajná jednoduchá stránka s vlastným obsahom.'
|
||||
DESCRIPTION: 'Generický obsah stránky'
|
||||
PLURALNAME: 'Základné stránky'
|
||||
BlogPost:
|
||||
DESCRIPTION: 'Obyčajná jednoduchá stránka s vlastným obsahom.'
|
||||
PLURALNAME: 'Základné stránky'
|
||||
AUTHOR: Autor
|
||||
AdditionalCredits: 'Doplnkoví autori'
|
||||
AdditionalCredits_Description: 'Ak niektorí autori tohto príspevku nemajú prístup k CMS, zadajte ich mená sem. Viacero autorov môžete oddeliť čiarkou.'
|
||||
Authors: 'Ak niektorí autori tohto príspevku nemajú prístup k CMS, zadajte ich mená sem. Viacero autorov môžete oddeliť čiarkou.'
|
||||
CUSTOMSUMMARY: 'Pridať vlastné zhrnutie'
|
||||
Categories: Kategórie
|
||||
DESCRIPTION: 'Generický obsah stránky'
|
||||
FeaturedImage: 'Hlavný obrázok'
|
||||
PLURALNAME: 'Príspevky v blogu'
|
||||
PageTitleLabel: 'Názov príspevku'
|
||||
PublishDate: 'Dátum publikovania'
|
||||
PublishDate_Description: 'V prípade zverejnenia bez hodnoty bude nastavený aktuálny dátum a čas.'
|
||||
SINGULARNAME: 'Príspevok v blogu'
|
||||
SUMMARY_DESCRIPTION: 'Ak zhrnutie nie je uvedené, bude použitých prvých 30 slov z obsahu.'
|
||||
Tags: 'Štítky'
|
||||
BlogRecentPostsWidget:
|
||||
Blog: Blog
|
||||
NumberOfPosts: 'Počet príspevkov'
|
||||
PLURALNAME: 'Widgety nedávnych príspevkov blogu'
|
||||
SINGULARNAME: 'Widget nedávnych príspevkov blogu'
|
||||
BlogTag:
|
||||
Duplicate: 'Štítok blogu s týmto názvom už existuje'
|
||||
PLURALNAME: 'Štítky blogu'
|
||||
SINGULARNAME: 'Štítok blogu'
|
||||
Title: Názov
|
||||
BlogTagsCloudWidget:
|
||||
Blog: Blog
|
||||
PLURALNAME: 'Widgety používaných štítkov blogu'
|
||||
SINGULARNAME: 'Widget používaných štítkov blogu'
|
||||
BlogTagsWidget:
|
||||
Blog: Blog
|
||||
Direction:
|
||||
Description: 'Zmení smer usporiadania štítkov na tomto widgete.'
|
||||
Label: Smer
|
||||
Limit:
|
||||
Description: 'Obmedzí počet zobrazených štítkov na tomto widgete (nastavením na 0 sa zobrazujú všetky štítky).'
|
||||
Label: 'Max. počet'
|
||||
PLURALNAME: 'Widgety štítkov blogu'
|
||||
SINGULARNAME: 'Widget štítkov blogu'
|
||||
Sort:
|
||||
Description: 'Zmení usporiadanie štítkov na tomto widgete.'
|
||||
Label: Usporiadanie
|
||||
BlogTree:
|
||||
DESCRIPTION: 'Obyčajná jednoduchá stránka s vlastným obsahom.'
|
||||
DESCRIPTION: 'Generický obsah stránky'
|
||||
PLURALNAME: 'Základné stránky'
|
||||
GridFieldAddByDBField:
|
||||
Add: 'Pridať {name}'
|
||||
AddFail: 'Nie je možné uložiť {class} do databázy.'
|
||||
PermissionFail: 'Nemáte oprávnenie na vytvorenie {class}.'
|
||||
GridFieldBlogPostState:
|
||||
Draft: '<i class="btn-icon gridfield-icon btn-icon-pencil"></i> Uložený ako koncept dňa {date}'
|
||||
Published: '<i class="btn-icon gridfield-icon btn-icon-accept"></i> Publikovaný dňa {date}'
|
||||
Timer: '<i class="gridfield-icon blog-icon-timer"></i> Zverejnený dňa {date}'
|
||||
TagCloudWidget:
|
||||
PLURALNAME: 'Widgety používaných štítkov'
|
||||
SINGULARNAME: 'Widget používaných štítkov'
|
||||
|
121
lang/sk_SK.yml
Normal file
121
lang/sk_SK.yml
Normal file
@ -0,0 +1,121 @@
|
||||
sk_SK:
|
||||
ArchiveWidget:
|
||||
PLURALNAME: 'Widgety archív'
|
||||
SINGULARNAME: 'Widget archív'
|
||||
Blog:
|
||||
AND: a
|
||||
Archive: Archív
|
||||
By: ' od'
|
||||
CONTRIBUTOR: Prispievateľ
|
||||
Categories: Kategórie
|
||||
Category: Kategória
|
||||
Comments: Komentáre
|
||||
DESCRIPTION: 'Pridá blog na stránku.'
|
||||
EDITOR: Vydavateľ
|
||||
FILTERDESCRIPTION_AUTHOR: '{author}'
|
||||
FILTERDESCRIPTION_CATEGORY: 'V kategórii {category}'
|
||||
FILTERDESCRIPTION_DATE: '{date}'
|
||||
FILTERDESCRIPTION_PAGE: 'Stránka {page}'
|
||||
FILTERDESCRIPTION_TAG: 'Štítkovaný {tag}'
|
||||
LumberjackTitle: 'Príspevky v blogu'
|
||||
NoPosts: 'Žiadne príspevky'
|
||||
PERMISSIONS_CATEGORY: 'Práva blogu'
|
||||
PERMISSION_MANAGE_USERS_DESCRIPTION: 'Správa užívateľov pre jednotlivé blogy'
|
||||
PERMISSION_MANAGE_USERS_HELP: 'Umožniť priradenie vydavateľov, spisovateľov alebo prispievateľov do blogu.'
|
||||
PLURALNAME: Blogy
|
||||
Posted: Uverejnené
|
||||
PostedIn: 'Uverejnené v'
|
||||
PostsPerPage: 'Príspevky na stránke'
|
||||
ReadMoreAbout: 'Čítať viac o ''{title}''...'
|
||||
SINGULARNAME: Blog
|
||||
Tag: 'Štítok'
|
||||
Tagged: Oštítkované
|
||||
Tags: 'Štítky'
|
||||
WRITER: Spisovateľ
|
||||
BlogArchiveWidget:
|
||||
ArchiveType: 'Typ archívu'
|
||||
Blog: Blog
|
||||
NumberToDisplay: 'Počet na zobrazenie'
|
||||
PLURALNAME: 'Widgety archívu blogu'
|
||||
SINGULARNAME: 'Widget archívu blogu'
|
||||
BlogCategoriesWidget:
|
||||
Blog: Blog
|
||||
Direction:
|
||||
Description: 'Zmení smer usporiadania kategórií na tomto widgete.'
|
||||
Label: Smer
|
||||
Limit:
|
||||
Description: 'Obmedzí počet zobrazených kategórií na tomto widgete (nastavením na 0 sa zobrazujú všetky kategórie).'
|
||||
Label: 'Max. počet'
|
||||
PLURALNAME: 'Widgety kategórií blogu'
|
||||
SINGULARNAME: 'Widget kategórií blogu'
|
||||
Sort:
|
||||
Description: 'Zmení usporiadanie kategórií na tomto widgete.'
|
||||
Label: Usporiadanie
|
||||
BlogCategory:
|
||||
Duplicate: 'Kategória blogu s týmto názvom už existuje'
|
||||
PLURALNAME: 'Kategórie blogu'
|
||||
SINGULARNAME: 'Kategória blogu'
|
||||
Title: Názov
|
||||
BlogEntry:
|
||||
DESCRIPTION: 'Generický obsah stránky'
|
||||
PLURALNAME: 'Základné stránky'
|
||||
BlogHolder:
|
||||
DESCRIPTION: 'Generický obsah stránky'
|
||||
PLURALNAME: 'Základné stránky'
|
||||
BlogPost:
|
||||
AUTHOR: Autor
|
||||
AdditionalCredits: 'Doplnkoví autori'
|
||||
AdditionalCredits_Description: 'Ak niektorí autori tohto príspevku nemajú prístup k CMS, zadajte ich mená sem. Viacero autorov môžete oddeliť čiarkou.'
|
||||
Authors: Autori
|
||||
CUSTOMSUMMARY: 'Pridať vlastné zhrnutie'
|
||||
Categories: Kategórie
|
||||
DESCRIPTION: 'Generický obsah stránky'
|
||||
FeaturedImage: 'Hlavný obrázok'
|
||||
PLURALNAME: 'Príspevky v blogu'
|
||||
PageTitleLabel: 'Názov príspevku'
|
||||
PublishDate: 'Dátum publikovania'
|
||||
PublishDate_Description: 'V prípade zverejnenia bez hodnoty bude nastavený aktuálny dátum a čas.'
|
||||
SINGULARNAME: 'Príspevok v blogu'
|
||||
SUMMARY_DESCRIPTION: 'Ak zhrnutie nie je uvedené, bude použitých prvých 30 slov z obsahu.'
|
||||
Tags: 'Štítky'
|
||||
BlogRecentPostsWidget:
|
||||
Blog: Blog
|
||||
NumberOfPosts: 'Počet príspevkov'
|
||||
PLURALNAME: 'Widgety nedávnych príspevkov blogu'
|
||||
SINGULARNAME: 'Widget nedávnych príspevkov blogu'
|
||||
BlogTag:
|
||||
Duplicate: 'Štítok blogu s týmto názvom už existuje'
|
||||
PLURALNAME: 'Štítky blogu'
|
||||
SINGULARNAME: 'Štítok blogu'
|
||||
Title: Názov
|
||||
BlogTagsCloudWidget:
|
||||
Blog: Blog
|
||||
PLURALNAME: 'Widgety používaných štítkov blogu'
|
||||
SINGULARNAME: 'Widget používaných štítkov blogu'
|
||||
BlogTagsWidget:
|
||||
Blog: Blog
|
||||
Direction:
|
||||
Description: 'Zmení smer usporiadania štítkov na tomto widgete.'
|
||||
Label: Smer
|
||||
Limit:
|
||||
Description: 'Obmedzí počet zobrazených štítkov na tomto widgete (nastavením na 0 sa zobrazujú všetky štítky).'
|
||||
Label: 'Max. počet'
|
||||
PLURALNAME: 'Widgety štítkov blogu'
|
||||
SINGULARNAME: 'Widget štítkov blogu'
|
||||
Sort:
|
||||
Description: 'Zmení usporiadanie štítkov na tomto widgete.'
|
||||
Label: Usporiadanie
|
||||
BlogTree:
|
||||
DESCRIPTION: 'Generický obsah stránky'
|
||||
PLURALNAME: 'Základné stránky'
|
||||
GridFieldAddByDBField:
|
||||
Add: 'Pridať {name}'
|
||||
AddFail: 'Nie je možné uložiť {class} do databázy.'
|
||||
PermissionFail: 'Nemáte oprávnenie na vytvorenie {class}.'
|
||||
GridFieldBlogPostState:
|
||||
Draft: '<i class="btn-icon gridfield-icon btn-icon-pencil"></i> Uložený ako koncept dňa {date}'
|
||||
Published: '<i class="btn-icon gridfield-icon btn-icon-accept"></i> Publikovaný dňa {date}'
|
||||
Timer: '<i class="gridfield-icon blog-icon-timer"></i> Zverejnený dňa {date}'
|
||||
TagCloudWidget:
|
||||
PLURALNAME: 'Widgety používaných štítkov'
|
||||
SINGULARNAME: 'Widget používaných štítkov'
|
@ -3,6 +3,7 @@ sv:
|
||||
PLURALNAME: Arkiv-Widgets
|
||||
SINGULARNAME: Arkiv-Widget
|
||||
Blog:
|
||||
AND: och
|
||||
Archive: Arkiv
|
||||
By: av
|
||||
CONTRIBUTOR: Bidragsgivare
|
||||
@ -52,6 +53,7 @@ sv:
|
||||
Description: 'Ändra ordningen av kategorier som visas av denna widget.'
|
||||
Label: Sortera
|
||||
BlogCategory:
|
||||
Duplicate: 'En kategori med det här namnet är redan tillagd'
|
||||
PLURALNAME: 'Blogg Kategorier'
|
||||
SINGULARNAME: 'Blogg Kategori'
|
||||
Title: Titel
|
||||
@ -66,6 +68,7 @@ sv:
|
||||
BlogPost:
|
||||
AUTHOR: Författare
|
||||
AdditionalCredits: 'Ytterligare erkännanden'
|
||||
AdditionalCredits_Description: 'Om några av författarna till denna post inte har konton i CMS:en kan du lägga till deras namn här. Fler än ett namn kan separeras med komma.'
|
||||
Authors: Författare
|
||||
CUSTOMSUMMARY: 'Lägg till en anpassad sammanfattning'
|
||||
Categories: Kategorier
|
||||
@ -83,9 +86,14 @@ sv:
|
||||
PLURALNAME: 'Blogg Senaste Inläggs-Widget'
|
||||
SINGULARNAME: 'Blogg Senaste Inläggs-Widget'
|
||||
BlogTag:
|
||||
Duplicate: 'En tag med det här namnet är redan tillagd'
|
||||
PLURALNAME: 'Blogg taggar'
|
||||
SINGULARNAME: 'Blogg tag'
|
||||
Title: Titel
|
||||
BlogTagsCloudWidget:
|
||||
Blog: Blogg
|
||||
PLURALNAME: 'Cloud-widgets för taggar'
|
||||
SINGULARNAME: 'Cloud-widget för tagg'
|
||||
BlogTagsWidget:
|
||||
Blog: Blogg
|
||||
Direction:
|
||||
|
40
tests/BlogFunctionalTest.php
Normal file
40
tests/BlogFunctionalTest.php
Normal file
@ -0,0 +1,40 @@
|
||||
<?php
|
||||
|
||||
class BlogFunctionalTest extends FunctionalTest
|
||||
{
|
||||
protected static $fixture_file = 'BlogFunctionalTest.yml';
|
||||
|
||||
protected static $use_draft_site = true;
|
||||
|
||||
public function setUp()
|
||||
{
|
||||
Config::inst()->update('URLSegmentFilter', 'default_allow_multibyte', true);
|
||||
|
||||
parent::setUp();
|
||||
|
||||
i18n::set_locale('fa_IR');
|
||||
}
|
||||
|
||||
public function testBlogWithMultibyteUrl()
|
||||
{
|
||||
$result = $this->get('آبید');
|
||||
|
||||
$this->assertEquals(200, $result->getStatusCode());
|
||||
}
|
||||
|
||||
public function testMemberProfileWithMultibyteUrlAndName()
|
||||
{
|
||||
$result = $this->get('آبید/profile/عبّاس-آبان');
|
||||
|
||||
$this->assertEquals(200, $result->getStatusCode());
|
||||
$this->assertContains('My Blog Post', $result->getBody());
|
||||
}
|
||||
|
||||
public function testMemberProfileWithMultibyteUrlAndEnglishName()
|
||||
{
|
||||
$result = $this->get('آبید/profile/bob-jones');
|
||||
|
||||
$this->assertEquals(200, $result->getStatusCode());
|
||||
$this->assertContains('My Blog Post', $result->getBody());
|
||||
}
|
||||
}
|
22
tests/BlogFunctionalTest.yml
Normal file
22
tests/BlogFunctionalTest.yml
Normal file
@ -0,0 +1,22 @@
|
||||
Member:
|
||||
member_a:
|
||||
FirstName: عبّاس
|
||||
Surname: آبان
|
||||
Email: foo@example.com
|
||||
member_b:
|
||||
FirstName: Bob
|
||||
Surname: Jones
|
||||
Email: bobjones@example.com
|
||||
|
||||
Blog:
|
||||
blog_a:
|
||||
URLSegment: آبید
|
||||
Title: My Blog
|
||||
|
||||
BlogPost:
|
||||
blogpost_a:
|
||||
Title: My Blog Post
|
||||
URLSegment: آبیدآبید
|
||||
PublishDate: '2017-08-01 00:00:00'
|
||||
Parent: =>Blog.blog_a
|
||||
Authors: =>Member.member_a, =>Member.member_b
|
Loading…
Reference in New Issue
Block a user