diff --git a/_config/config.yml b/_config/config.yml index e4fb5e0..e806238 100755 --- a/_config/config.yml +++ b/_config/config.yml @@ -4,3 +4,12 @@ Name: blogconfig SilverStripe\Security\Member: extensions: - SilverStripe\Blog\Model\BlogMemberExtension + +--- +Name: featuredpostswidget +Only: + moduleexists: silverstripe/widgets +--- +SilverStripe\Blog\Model\BlogPost: + extensions: + - SilverStripe\Blog\Model\BlogPostFeaturedExtension diff --git a/lang/de.yml b/lang/de.yml index edc011b..feab9c3 100644 --- a/lang/de.yml +++ b/lang/de.yml @@ -32,13 +32,16 @@ de: FILTERDESCRIPTION_PAGE: 'Seite {page}' FILTERDESCRIPTION_TAG: 'Verschlagwortet mit {tag}' LessThanAMinuteToRead: 'Weniger als eine Minute zum Lesen' - LumberjackTitle: 'Blog-Einträge' + LumberjackTitle: Blog-Einträge MinutesToRead: 'Minute(n) zum Lesen' NoPosts: 'Keine Blog-Einträge vorhanden' PERMISSIONS_CATEGORY: 'Blog Berechtigungen' PERMISSION_MANAGE_USERS_DESCRIPTION: 'Benutzer für einzelne Blog-Einträge verwalten' PERMISSION_MANAGE_USERS_HELP: 'Erlaubt, Editoren, Autoren und Mitwirkende zum Blog hinzuzufügen' - PLURALNAME: Basis Seiten + PLURALNAME: 'Basis Seiten' + PLURALS: + one: 'Ein Blog' + other: '{count} Blogs' Posted: Veröffentlicht PostedIn: 'Veröffentlicht in' PostsPerPage: 'Einträge pro Seite' @@ -51,32 +54,47 @@ de: SilverStripe\Blog\Model\BlogCategory: Duplicate: 'Eine Blog Kategorie mit diesem Namen existiert bereits.' PLURALNAME: 'Blog Kategorien' + PLURALS: + one: 'Eine Blog Kategorie' + other: '{count} Blog Kategorien' SINGULARNAME: 'Blog Kategorie' SilverStripe\Blog\Model\BlogMemberExtension: - BLOGPOSTS: 'Blogbeiträge' - TABBLOGPOSTS: 'Blogbeiträge' + BLOGPOSTS: Blogbeiträge + TABBLOGPOSTS: Blogbeiträge SilverStripe\Blog\Model\BlogPost: AUTHOR: Autor AdditionalCredits: 'Zusätzliche Credits' + AdditionalCredits_Description: 'Wenn Autoren dieses Eintrags keinen Zugang zum CMS haben, können Sie die Namen hier mit Kommas getrennt eintragen.' Authors: Autoren - CUSTOMSUMMARY: 'Zusammenfassung' + CUSTOMSUMMARY: Zusammenfassung Categories: Kategorien - FeaturedImage: 'Titelbild' + FeaturedImage: Titelbild PLURALNAME: 'Basis Seiten' - PageTitleLabel: 'Titel' - PostOptions: 'Einstellungen' + PLURALS: + one: 'Ein Blogbeitrag' + other: '{count} Blogbeiträge' + PageTitleLabel: Titel + PostOptions: Einstellungen PublishDate: 'Datum der Veröffentlichung' - SINGULARNAME: 'Blog-Eintrag' + PublishDate_Description: 'Jetzt, wenn nichts eingegeben wird.' + SINGULARNAME: Blog-Eintrag SUMMARY_DESCRIPTION: 'Wenn keine Zusammenfassung angegeben wird, werden die ersten 30 Wörter verwendet.' Tags: Schlagworte SilverStripe\Blog\Model\BlogTag: Duplicate: 'Ein Blog Tag mit diesem Namen existiert bereits.' PLURALNAME: 'Blog Schlagworte' + PLURALS: + one: 'Ein Blog Schlagwort' + other: '{count} Blog Schlagworte' SINGULARNAME: 'Blog Schlagwort' SilverStripe\Blog\Widgets\BlogArchiveWidget: ArchiveType: Archivtyp Blog: Blog NumberToDisplay: 'Anzahl anzeigen' + PLURALNAME: 'Blog Archiv Widgets' + PLURALS: + one: 'Ein Blog Archiv Widget' + other: '{count} Blog Archiv Widgets' SINGULARNAME: 'Blog Archiv Widget' SilverStripe\Blog\Widgets\BlogCategoriesWidget: Blog: Blog @@ -84,18 +102,38 @@ de: Direction_Description: 'Ändern Sie die Sortierreihenfolge der Kategorien, die von diesem Widget angezeigt werden.' Limit: Begrenzen Limit_Description: 'Begrenzen Sie die Anzahl der angezeigten Kategorien (0 zeigt alle Kategorien)' + PLURALNAME: 'Blog Kategorien Widgets' + PLURALS: + one: 'Ein Blog Kategorien Widget' + other: '{count} Blog Kategorien Widgets' + SINGULARNAME: 'Blog Kategorien Widget' Sort: Sortierung Sort_Description: 'Ändern Sie die Sortierung der Kategorien, die von diesem Widget angezeigt werden.' SilverStripe\Blog\Widgets\BlogRecentPostsWidget: Blog: Blog NumberOfPosts: 'Anzahl der Einträge' + PLURALNAME: 'Aktuelle Blog Einträge Widgets' + PLURALS: + one: 'Ein Aktuelle Blog Einträge Widget' + other: '{count} Aktuelle Blog Einträge Widgets' + SINGULARNAME: 'Aktuelle Blog Einträge Widget' SilverStripe\Blog\Widgets\BlogTagsCloudWidget: Blog: Blog + PLURALNAME: Blog-Tag-Cloud-Widgets + PLURALS: + one: 'Ein Blog-Tag-Cloud-Widget' + other: '{count} Blog-Tag-Cloud-Widgets' + SINGULARNAME: Blog-Tag-Cloud-Widget SilverStripe\Blog\Widgets\BlogTagsWidget: Blog: Blog Direction: Richtung Direction_Description: 'Ändern Sie die Sortierreihenfolge der Schlagworte, die von diesem Widget angezeigt werden.' Limit: Begrenzen Limit_Description: 'Begrenzen Sie die Anzahl der angezeigten Schlagworte (0 zeigt alle Schlagworte)' + PLURALNAME: 'Blog Tags Widgets' + PLURALS: + one: 'Ein Blog Tags Widget' + other: '{count} Blog Tags Widgets' + SINGULARNAME: 'Blog Tags Widget' Sort: Sortierung Sort_Description: 'Ändern Sie die Sortierung der Schlagworte, die von diesem Widget angezeigt werden.' diff --git a/lang/en.yml b/lang/en.yml index 4173cba..4baf586 100644 --- a/lang/en.yml +++ b/lang/en.yml @@ -44,15 +44,16 @@ en: other: '{count} Blogs' Posted: Posted PostedIn: 'Posted in' + PostsByUser: 'Posts by {firstname} {surname} for {title}' PostsPerPage: 'Posts Per Page' ReadMoreAbout: 'Read more about ''{title}''...' SINGULARNAME: Blog Tag: Tag Tagged: Tagged Tags: Tags - UsersContributorsFieldDescription: "Contributors have the ability to create or edit BlogPosts, but are unable to publish without \n authorisation of an editor. They are also unable to assign other contributing authors to any of\n their BlogPosts.
\n
\n Contributors have these permissions:
\n
\n Update any BlogPost they have authored or have been assigned to" - UsersEditorsFieldDescription: "An editor has control over specific Blogs, and all posts included within it. \n Short of being able to assign other editors to a blog, they are able to handle most changes to\n their assigned blog.

\n Editors have these permissions:
\n
\n Update or publish any BlogPost in their Blog
\n Update or publish their Blog
\n Assign/unassign writers to their Blog
\n Assign/unassign contributors to their Blog
\n Assign/unassign any member as an author of a particular BlogPost" - UsersWritersFieldDescription: "A writer has full control over creating, editing and publishing BlogPosts they have authored\n or have been assigned to. Writers are unable to edit BlogPosts to which they are not assigned.\n

\n Writers have these permissions:
\n
\n Update or publish any BlogPost they have authored or have been assigned to
\n Assign/unassign any member as an author of a particular BlogPost they have authored or have been \n assigned to" + UsersContributorsFieldDescription: "Contributors have the ability to create or edit BlogPosts, but are unable to publish without\n authorisation of an editor. They are also unable to assign other contributing authors to any of\n their BlogPosts.
\n
\n Contributors have these permissions:
\n
\n Update any BlogPost they have authored or have been assigned to" + UsersEditorsFieldDescription: "An editor has control over specific Blogs, and all posts included within it.\n Short of being able to assign other editors to a blog, they are able to handle most changes to\n their assigned blog.

\n Editors have these permissions:
\n
\n Update or publish any BlogPost in their Blog
\n Update or publish their Blog
\n Assign/unassign writers to their Blog
\n Assign/unassign contributors to their Blog
\n Assign/unassign any member as an author of a particular BlogPost" + UsersWritersFieldDescription: "A writer has full control over creating, editing and publishing BlogPosts they have authored\n or have been assigned to. Writers are unable to edit BlogPosts to which they are not assigned.\n

\n Writers have these permissions:
\n
\n Update or publish any BlogPost they have authored or have been assigned to
\n Assign/unassign any member as an author of a particular BlogPost they have authored or have been\n assigned to" WRITER: Writer SilverStripe\Blog\Model\BlogCategory: Duplicate: 'A blog category already exists with that name.' @@ -83,6 +84,8 @@ en: SINGULARNAME: 'Blog Post' SUMMARY_DESCRIPTION: 'If no summary is specified the first 30 words will be used.' Tags: Tags + SilverStripe\Blog\Model\BlogPostFeaturedExtension: + FEATURED: 'Include Post in Feature Widget' SilverStripe\Blog\Model\BlogTag: Duplicate: 'A blog tag already exists with that name.' PLURALNAME: 'Blog Tags' @@ -112,6 +115,14 @@ en: SINGULARNAME: 'Blog Categories Widget' Sort: Sort Sort_Description: 'Change the order of categories shown by this widget.' + SilverStripe\Blog\Widgets\BlogFeaturedPostsWidget: + Blog: Blog + NumberOfPosts: 'Number of Posts' + PLURALNAME: 'Blog Featured Posts Widgets' + PLURALS: + one: 'A Blog Featured Posts Widget' + other: '{count} Blog Featured Posts Widgets' + SINGULARNAME: 'Blog Featured Posts Widget' SilverStripe\Blog\Widgets\BlogRecentPostsWidget: Blog: Blog NumberOfPosts: 'Number of Posts' diff --git a/lang/eo.yml b/lang/eo.yml index 036c86c..c71e49a 100644 --- a/lang/eo.yml +++ b/lang/eo.yml @@ -38,7 +38,7 @@ eo: PERMISSIONS_CATEGORY: 'Blogaj permesoj' PERMISSION_MANAGE_USERS_DESCRIPTION: 'Administri uzantojn por specifaj blogaĵoj' PERMISSION_MANAGE_USERS_HELP: 'Permesi agordi redaktantojn, verkantojn, aŭ kontribuantojn al blogoj' - PLURALNAME: Bazaj paĝoj + PLURALNAME: 'Bazaj paĝoj' PLURALS: one: 'Unu blogo' other: '{count} blogoj' @@ -48,7 +48,7 @@ eo: ReadMoreAbout: 'Legi plu pri ''{title}''...' SINGULARNAME: Blogo Tag: Etikedo - Tagged: Havas etikedon + Tagged: 'Havas etikedon' Tags: Etikedoj UsersContributorsFieldDescription: "Kontribuantoj povas krei aŭ redakti BlogAfiŝojn, sed ne povas publikigi sen la rajtigo\nde redaktanto. Ili ankaŭ ne povas atribui aliajn kontribuantajn aŭtorojn al iu \nel siaj BlogAfiŝojn.\n\nKontribuantoj havas la jenajn permesojn:\n\nĜisdatigi ajnan BlogAfiŝon kiun ili aŭtoris aŭ al kiu ili estas atribuitaj" UsersEditorsFieldDescription: "Redaktanto mastrumas specifajn blogojn, kaj ĉiujn afiŝojn en ĝi.\nAscepte de atribui aliajn redaktantojn al blogo, ili povas traki plejmultajn ŝanĝojn al\nsia atribuita blogo.\nRedaktantoj havas ĉi tiujn permesojn:\n\nĜisdatigi aŭ publikigi iun BlogAfiŝon en sia BlogĜisdatigo\nĜisdatigi aŭ publikigi sian blogon\nAtribui/malatribui verkantojn al sia blogo\nAtribui/malatribui kontribuantojn al sia blogo\nAtribui/malatribui iun membron kiel aŭtoron de specifa BlogAfiŝo" @@ -80,7 +80,7 @@ eo: PostOptions: 'Afiŝaj agordoj' PublishDate: 'Dato de publikigo' PublishDate_Description: 'Agordiĝos al "nun", se publikigita sen valoro' - SINGULARNAME: 'Blogaĵo' + SINGULARNAME: Blogaĵo SUMMARY_DESCRIPTION: 'Se resumo ne estas agordita, la unuaj 30 vortoj uziĝos.' Tags: Etikedoj SilverStripe\Blog\Model\BlogTag: diff --git a/lang/es.yml b/lang/es.yml index 7d4ab96..117ffbc 100644 --- a/lang/es.yml +++ b/lang/es.yml @@ -16,7 +16,7 @@ es: SilverStripe\Blog\Model: Title: Título SilverStripe\Blog\Model\Blog: - AND: y + AND: 'y' Archive: Archivo By: Por CONTRIBUTOR: Contribuidor @@ -88,7 +88,7 @@ es: other: '{count} Etiquetas de blog' SINGULARNAME: 'Etiqueta del Blog' SilverStripe\Blog\Widgets\BlogArchiveWidget: - ArchiveType: Tipo de archivo + ArchiveType: 'Tipo de archivo' Blog: Blog NumberToDisplay: 'No. a mostrar' SilverStripe\Blog\Widgets\BlogCategoriesWidget: diff --git a/lang/fa_IR.yml b/lang/fa_IR.yml index a8af796..155db87 100644 --- a/lang/fa_IR.yml +++ b/lang/fa_IR.yml @@ -21,8 +21,8 @@ fa_IR: PERMISSIONS_CATEGORY: 'دسترسی‌های وبلاگ' PERMISSION_MANAGE_USERS_DESCRIPTION: 'مدیریت کاربران برای بلاگ‌های انفرادی' PERMISSION_MANAGE_USERS_HELP: 'تعیین اجازه‌ی دسترسی ویرایش‌گران، نویسندگان یا مشارکت‌کنندگان به وبلاگ' - PLURALNAME: صفحات پایه‌ای - Posted: ارسال شده + PLURALNAME: 'صفحات پایه‌ای' + Posted: 'ارسال شده' PostedIn: 'ارسال شده در' PostsPerPage: 'تعداد ارسال در صفحه' ReadMoreAbout: 'درباره ''{title}'' بیشتر بخوانید...' @@ -50,13 +50,13 @@ fa_IR: PLURALNAME: 'تگ‌های وبلاگ' SINGULARNAME: 'تگ وبلاگ' SilverStripe\Blog\Widgets\BlogArchiveWidget: - ArchiveType: نوع بایگانی + ArchiveType: 'نوع بایگانی' Blog: وبلاگ NumberToDisplay: 'شمار در نمایش' SilverStripe\Blog\Widgets\BlogCategoriesWidget: Blog: وبلاگ Direction: جهت - Limit: محدود کردن + Limit: 'محدود کردن' Sort: مرتب‌سازی Sort_Description: 'تغییر ترتیب مجموعه‌های نمایش داده‌‌شده توسط این ویجت' SilverStripe\Blog\Widgets\BlogRecentPostsWidget: @@ -65,6 +65,6 @@ fa_IR: SilverStripe\Blog\Widgets\BlogTagsWidget: Blog: وبلاگ Direction: جهت - Limit: محدود کردن + Limit: 'محدود کردن' Limit_Description: 'محدود کردن تعداد تگ‌های نمایش داده شده توسط این ویجت (روی 0 بگذارید تا همه به نمایش دربیایند)' Sort: مرتب‌سازی diff --git a/lang/fi.yml b/lang/fi.yml index 1c44e68..907e124 100755 --- a/lang/fi.yml +++ b/lang/fi.yml @@ -1,10 +1,16 @@ fi: + SilverStripe\Blog\Admin\GridFieldCategorisationConfig: + Posts: Artikkelit + Title: Otsikko + SilverStripe\Blog\Admin\GridFieldMergeAction: + MovePostsTo: 'Siirrä artikkeli kohteeseen' SilverStripe\Blog\Forms\GridField\GridFieldAddByDBField: Add: 'Lisää {name}' AddFail: '{class} ei voida tallentaa tietokantaan.' PermissionFail: 'Sinulla ei ole oikeuksia luoda {class}.' SilverStripe\Blog\Forms\GridField\GridFieldBlogPostState: Draft: 'Versio tallennettu {date}' + Modified: Muokattu Published: 'Julkaistu {date}' Timer: 'Julkaistaan {date}' SilverStripe\Blog\Model: @@ -15,6 +21,7 @@ fi: By: kirjoittanut CONTRIBUTOR: Avustaja Categories: Kategoriat + Categorisation: Kategoriointi Category: Kategoria Comments: Kommentit DESCRIPTION: 'Lisää blogin nettisivuillesi.' @@ -24,14 +31,16 @@ fi: FILTERDESCRIPTION_DATE: 'Pvm: {date}' FILTERDESCRIPTION_PAGE: 'Sivu {page}' FILTERDESCRIPTION_TAG: 'Avainsanat: {tag}' - LumberjackTitle: 'Blogikirjoitukset' + LessThanAMinuteToRead: 'Lukemiseen kuluu alle minuutti' + LumberjackTitle: Blogikirjoitukset + MinutesToRead: 'Minuutti(a) lukemiseen' NoPosts: 'Ei kirjoituksia' PERMISSIONS_CATEGORY: 'Blogin oikeudet' PERMISSION_MANAGE_USERS_DESCRIPTION: 'Hallinnoi käyttäjiä yksittäisissä blogeissa' PERMISSION_MANAGE_USERS_HELP: 'Salli toimittajien, kirjoittajien tai avustajien kiinnittäminen blogeihin' PLURALNAME: Pohjasivut PLURALS: - one: 'Blogi' + one: Blogi other: '{count} blogia' Posted: Kirjoitettu PostedIn: 'Kirjoitettu:' @@ -41,33 +50,35 @@ fi: Tag: Avainsana Tagged: Merkitty Tags: Avainsanat + UsersContributorsFieldDescription: "Kirjoittajilla on oikeus luoda tai muokata artikkeli, mutta ei julkausuoikeuksia \n ilman päätoimittajan hyväksyntää. He eivät voi myöskään antaa oikeuksia muille kirjoittajille\n omaan artikkeliinsa.
\n
\n Kirjoittajilla on seuraavat oikeudet:
\n
\n Artikkelin päivitys ja luonti (niihin, jotka he ovat itse kirjoittaneet tai saaneet oikeuden)." WRITER: Kirjoittaja SilverStripe\Blog\Model\BlogCategory: Duplicate: 'Tämä blogikategoria on jo olemassa' - PLURALNAME: 'Blogikategoriat' + PLURALNAME: Blogikategoriat PLURALS: one: 'Blogin kategoria' other: '{count} blogin kategoriaa' - SINGULARNAME: 'Blogikategoria' + SINGULARNAME: Blogikategoria SilverStripe\Blog\Model\BlogMemberExtension: - BLOGPOSTS: 'Artikkelit' - TABBLOGPOSTS: 'Artikkelit' + BLOGPOSTS: Artikkelit + TABBLOGPOSTS: Artikkelit SilverStripe\Blog\Model\BlogPost: AUTHOR: Kirjoittaja - AdditionalCredits: 'Lisäkiitokset' + AdditionalCredits: Lisäkiitokset AdditionalCredits_Description: 'Mikäli kaikilla artikkelin kirjoittajilla ei ole pääsyä sisällönhallintajärjestelmään, syötä heidän nimensä (nimi) tähän. Erota useampi pilkulla.' Authors: Kirjoittajat CUSTOMSUMMARY: 'Lisää tiivistelmä' Categories: Kategoriat - FeaturedImage: 'Kuvanosto' - PLURALNAME: 'Pohjasivut' + FeaturedImage: Kuvanosto + PLURALNAME: Pohjasivut PLURALS: - one: 'Blogipostaus' + one: Blogipostaus other: '{count} Blogipostausta' - PageTitleLabel: 'Otsikko' - PublishDate: 'Julkaisupäivä' + PageTitleLabel: Otsikko + PostOptions: 'Artikkelin asetukset' + PublishDate: Julkaisupäivä PublishDate_Description: 'Asetetaan "nyt", mikäli arvo jätetään asettamatta.' - SINGULARNAME: 'Blogikirjoitus' + SINGULARNAME: Blogikirjoitus SUMMARY_DESCRIPTION: 'Mikäli tiivistelmää ei ole kirjoitettu, käytetään 30 ensimmäistä sanaa kirjoituksesta.' Tags: Avainsanat SilverStripe\Blog\Model\BlogTag: @@ -80,25 +91,50 @@ fi: SilverStripe\Blog\Widgets\BlogArchiveWidget: ArchiveType: Arkistotyyppi Blog: Blogi - NumberToDisplay: 'Näytetään' + NumberToDisplay: Näytetään + PLURALNAME: Blogiarkisto-vimpaimet + PLURALS: + one: Blogiarkisto-vimpain + other: '{count} Blogiarkisto-vimpaimet' + SINGULARNAME: Blogiarkisto-vimpain SilverStripe\Blog\Widgets\BlogCategoriesWidget: Blog: Blogi Direction: Suunta Direction_Description: 'Vaihda vimpaimen näytettävien kategorioiden järjestyksen suunta.' Limit: Rajoita Limit_Description: 'Rajoita näytettävien kategorioiden määrää tässä vimpaimessa (aseta arvoksi 0, jos haluat näyttää kaikki kategoriat).' + PLURALNAME: Blogikategoria-vimpaimet + PLURALS: + one: 'Blogin kategoria-vimpain' + other: '{count} blogikategoria-vimpainta' + SINGULARNAME: Blogikategoriat-vimpain Sort: Järjestä Sort_Description: 'Vaihda vimpaimen näytettävien kategorioiden järjestys.' SilverStripe\Blog\Widgets\BlogRecentPostsWidget: Blog: Blogi NumberOfPosts: 'Kirjoituksien määrä' + PLURALNAME: 'Äskettäiset julkaisut vimpain' + PLURALS: + one: 'Blogin äskettäiset julkaisut -vimpain' + other: '{count} blogin äskettäiset julkaisut -vimpainta' + SINGULARNAME: 'Äskettäin julkaistut artikkelit -vimpain' SilverStripe\Blog\Widgets\BlogTagsCloudWidget: Blog: Blogi + PLURALNAME: Avainsanapilvi-vimpaimet + PLURALS: + one: Avainsanapilvi-vimpain + other: '{count} avainsanapilvi-vimpainta' + SINGULARNAME: 'Blogin avainanapilvivimpain' SilverStripe\Blog\Widgets\BlogTagsWidget: Blog: Blogi Direction: Suunta Direction_Description: 'Vaihda vimpaimen näytettävien avainsanojen järjestyksen suunta' Limit: Rajoita Limit_Description: 'Rajoita vimpaimella näytettävien avainsanojen määrää (aseta arvoksi 0, jos haluat näyttää kaikki avainsanat).' + PLURALNAME: 'Blogin avainsanavimpain' + PLURALS: + one: 'Blogin avainsanavimpain' + other: '{count} blogin avainsanavimpainta' + SINGULARNAME: 'Blogin avainsanavimpain' Sort: Järjestä Sort_Description: 'Vaihda vimpaimella näytettävien avainsanojen järjestystä.' diff --git a/lang/fr.yml b/lang/fr.yml index 7390513..f629daf 100644 --- a/lang/fr.yml +++ b/lang/fr.yml @@ -45,11 +45,11 @@ fr: Authors: Auteurs CUSTOMSUMMARY: 'Ajouter un sommaire personnalisé' Categories: Catégories - PLURALNAME: 'Billets' + PLURALNAME: Billets PageTitleLabel: 'Titre du billet' PublishDate: 'Date de publication' PublishDate_Description: 'Sera mis à "maintenant" si publié sans valeur.' - SINGULARNAME: 'Billet' + SINGULARNAME: Billet SUMMARY_DESCRIPTION: 'Si aucun sommaire, les 30 premiers mots seront utilisés.' Tags: Tags SilverStripe\Blog\Model\BlogTag: diff --git a/lang/hr.yml b/lang/hr.yml index 43143df..593ee96 100644 --- a/lang/hr.yml +++ b/lang/hr.yml @@ -17,7 +17,7 @@ hr: NoPosts: 'Nema zapisa' PERMISSIONS_CATEGORY: 'Blog dozvole' PERMISSION_MANAGE_USERS_DESCRIPTION: 'Upravljaj korisnike za pojedinačne blogove' - PLURALNAME: Bazne stranice + PLURALNAME: 'Bazne stranice' Posted: Objavljeno PostedIn: 'Objavljeno u' PostsPerPage: 'Postova po stranici' @@ -38,7 +38,7 @@ hr: SINGULARNAME: 'Blog zapis' Tags: Tagovi SilverStripe\Blog\Widgets\BlogArchiveWidget: - ArchiveType: Tip arhive + ArchiveType: 'Tip arhive' Blog: Blog NumberToDisplay: 'Broj za prikaz' SilverStripe\Blog\Widgets\BlogCategoriesWidget: diff --git a/lang/nl.yml b/lang/nl.yml index 4657e91..f2cf1af 100644 --- a/lang/nl.yml +++ b/lang/nl.yml @@ -1,9 +1,9 @@ nl: SilverStripe\Blog\Admin\GridFieldCategorisationConfig: - Posts: Posts + Posts: Artikels Title: Titel SilverStripe\Blog\Admin\GridFieldMergeAction: - MovePostsTo: 'Posts verplaatsen naar' + MovePostsTo: 'Artikels verplaatsen naar' SilverStripe\Blog\Forms\GridField\GridFieldAddByDBField: Add: 'Voeg {name} toe' AddFail: 'Kon geen {class} opslaan in de database.' @@ -66,7 +66,7 @@ nl: TABBLOGPOSTS: 'Blog Artikel' SilverStripe\Blog\Model\BlogPost: AUTHOR: Auteur - AdditionalCredits: 'Dankbetuigingen' + AdditionalCredits: Dankbetuigingen AdditionalCredits_Description: 'Indien enkele van de auteurs geen toegang hebben tot dit CMS, kunnen ze hier worden toegevoegd. Scheid namen door middel van komma''s.' Authors: Auteurs CUSTOMSUMMARY: 'Voeg een eigen samenvatting toe' @@ -78,7 +78,7 @@ nl: other: '{count} Blog Artikelen' PageTitleLabel: 'Artikel Titel' PostOptions: 'Artikel opties' - PublishDate: 'Publicatiedatum' + PublishDate: Publicatiedatum PublishDate_Description: 'Wordt op "nu" gezet indien gepubliceerd zonder waarde.' SINGULARNAME: 'Blog Artikel' SUMMARY_DESCRIPTION: 'Als geen samenvatting ingevoerd wordt, worden de eerste 30 worden gebruikt.' diff --git a/lang/ru.yml b/lang/ru.yml index 3ef49e9..c0bd194 100644 --- a/lang/ru.yml +++ b/lang/ru.yml @@ -25,9 +25,9 @@ ru: NoPosts: 'В блоге нет записей' PERMISSIONS_CATEGORY: 'Права доступа к содержимому блога' PERMISSION_MANAGE_USERS_DESCRIPTION: 'Управление пользователями для индивидуальных блогов' - PLURALNAME: Базовые страницы + PLURALNAME: 'Базовые страницы' Posted: Отправлено - PostedIn: 'Отправлено' + PostedIn: Отправлено PostsPerPage: 'Записей на странице' ReadMoreAbout: 'Узнать больше о ''{title}''...' SINGULARNAME: Блог @@ -43,7 +43,7 @@ ru: SINGULARNAME: 'Запись в блоге' Tags: Метки SilverStripe\Blog\Widgets\BlogArchiveWidget: - ArchiveType: Тип архива + ArchiveType: 'Тип архива' Blog: Блог SilverStripe\Blog\Widgets\BlogCategoriesWidget: Blog: Блог diff --git a/lang/sv.yml b/lang/sv.yml index 24c5b54..28039e8 100644 --- a/lang/sv.yml +++ b/lang/sv.yml @@ -24,12 +24,12 @@ sv: FILTERDESCRIPTION_DATE: 'På {date}' FILTERDESCRIPTION_PAGE: 'Sida {page}' FILTERDESCRIPTION_TAG: 'Taggat med {tag}' - LumberjackTitle: 'Bloginlägg' + LumberjackTitle: Bloginlägg NoPosts: 'Det finns inga bloginlägg' PERMISSIONS_CATEGORY: 'Blogg rättigheter' PERMISSION_MANAGE_USERS_DESCRIPTION: 'Hantera användare för enskilda bloggar' PERMISSION_MANAGE_USERS_HELP: 'Tillåt tilldelning av redaktörer , författare , eller bidragsgivare till bloggar' - PLURALNAME: Bas sidor + PLURALNAME: 'Bas sidor' Posted: Postat PostedIn: 'Postat den' PostsPerPage: 'Blogginlägg per sida' @@ -44,8 +44,8 @@ sv: PLURALNAME: 'Blogg Kategorier' SINGULARNAME: 'Blogg Kategori' SilverStripe\Blog\Model\BlogMemberExtension: - BLOGPOSTS: 'Blogginlägg' - TABBLOGPOSTS: 'Blogginlägg' + BLOGPOSTS: Blogginlägg + TABBLOGPOSTS: Blogginlägg SilverStripe\Blog\Model\BlogPost: AUTHOR: Författare AdditionalCredits: 'Ytterligare erkännanden' @@ -55,10 +55,10 @@ sv: Categories: Kategorier FeaturedImage: 'Utvald bild' PLURALNAME: 'Bas sidor' - PageTitleLabel: 'Blogginläggstitel' + PageTitleLabel: Blogginläggstitel PublishDate: 'Publicerat datum' PublishDate_Description: 'Kommer att sättas till "nu" om publiceras utan ett värde .' - SINGULARNAME: 'Bloginlägg' + SINGULARNAME: Bloginlägg SUMMARY_DESCRIPTION: 'Om ingen sammanfattning anges, kommer de första 30 orden att användas .' Tags: Taggar SilverStripe\Blog\Model\BlogTag: diff --git a/src/Model/BlogPostFeaturedExtension.php b/src/Model/BlogPostFeaturedExtension.php new file mode 100644 index 0000000..80128d8 --- /dev/null +++ b/src/Model/BlogPostFeaturedExtension.php @@ -0,0 +1,32 @@ + 'Boolean', + ]; + + /** + * {@inheritdoc} + */ + public function updateCMSFields(FieldList $fields) + { + // Add the checkbox in. + $fields->addFieldToTab( + 'Root.PostOptions', + CheckboxField::create('FeaturedInWidget', _t(__CLASS__ . '.FEATURED', 'Include Post in Feature Widget')) + ); + } +} diff --git a/src/Widgets/BlogFeaturedPostsWidget.php b/src/Widgets/BlogFeaturedPostsWidget.php new file mode 100644 index 0000000..32bdc54 --- /dev/null +++ b/src/Widgets/BlogFeaturedPostsWidget.php @@ -0,0 +1,93 @@ + 'Int', + ]; + + /** + * @var array + */ + private static $has_one = [ + 'Blog' => Blog::class, + ]; + + /** + * @var string + */ + private static $table_name = 'BlogFeaturedPostsWidget'; + + /** + * {@inheritdoc} + */ + public function getCMSFields() + { + $this->beforeUpdateCMSFields(function ($fields) { + /** + * @var FieldList $fields + */ + $fields->merge([ + DropdownField::create('BlogID', _t(__CLASS__ . '.Blog', 'Blog'), Blog::get()->map()), + NumericField::create('NumberOfPosts', _t(__CLASS__ . '.NumberOfPosts', 'Number of Posts')) + ]); + }); + + return parent::getCMSFields(); + } + + /** + * @return array|DataList + */ + public function getPosts() + { + $blog = $this->Blog(); + + if ($blog) { + return $blog->getBlogPosts() + ->filter('ID:not', Director::get_current_page()->ID) + ->filter('FeaturedInWidget', true) + ->sort('RAND()') + ->limit($this->NumberOfPosts); + } + + return []; + } +} diff --git a/templates/SilverStripe/Blog/Widgets/BlogFeaturedPostsWidget.ss b/templates/SilverStripe/Blog/Widgets/BlogFeaturedPostsWidget.ss new file mode 100644 index 0000000..e195ad6 --- /dev/null +++ b/templates/SilverStripe/Blog/Widgets/BlogFeaturedPostsWidget.ss @@ -0,0 +1,12 @@ +<% if $Posts %> + +<% end_if %> diff --git a/templates/WidgetHolder.ss b/templates/WidgetHolder.ss index f73142e..d2b3afb 100644 --- a/templates/WidgetHolder.ss +++ b/templates/WidgetHolder.ss @@ -1,4 +1,4 @@ - \ No newline at end of file +