mirror of
https://github.com/silverstripe/silverstripe-comments
synced 2024-10-22 11:05:49 +02:00
Update tests and lang’s for 4.0
This commit is contained in:
parent
9366ef603e
commit
f294ab26d6
90
lang/de.yml
90
lang/de.yml
@ -1,5 +1,49 @@
|
|||||||
de:
|
de:
|
||||||
Comment:
|
CommentInterface:
|
||||||
|
COMMENT_MESSAGE_REQUIRED: 'Bitte geben Sie Ihren Kommentar ein'
|
||||||
|
COMMENT_MESSAGE_URL: 'Bitte geben Sie eine gültige URL ein'
|
||||||
|
EMAILADDRESS_MESSAGE_EMAIL: 'Bitte geben Sie eine gültige E-Mail-Adresse ein'
|
||||||
|
EMAILADDRESS_MESSAGE_REQUIRED: 'Bitte geben Sie Ihre E-Mail-Adresse ein'
|
||||||
|
POST: Absenden
|
||||||
|
PREVIEW: Vorschau
|
||||||
|
PREVIEWLABEL: Vorschau
|
||||||
|
YOURNAME: Name
|
||||||
|
YOURNAME_MESSAGE_REQUIRED: 'Bitte geben Sie Ihren Namen ein'
|
||||||
|
CommentsAdmin:
|
||||||
|
NeedsModeration: 'Benötigt Moderation'
|
||||||
|
CommentsInterface_pendingcomment_ss:
|
||||||
|
AWAITINGMODERATION: 'Ihr Kommentar wurde gespeichert und wird durch einen Moderator freigeschaltet.'
|
||||||
|
CommentsInterface_singlecomment_ss:
|
||||||
|
PBY: 'Geschrieben von'
|
||||||
|
CommentsInterface_ss:
|
||||||
|
AWAITINGMODERATION: 'Ihr Kommentar wurde gespeichert und wird durch einen Moderator freigeschaltet.'
|
||||||
|
COMMENTLOGINERROR: 'Sie können diese Seite nur kommentieren, wenn Sie eingeloggt sind'
|
||||||
|
COMMENTPERMISSIONERROR: 'und die nötige Berechtigung besitzen'
|
||||||
|
COMMENTPOSTLOGIN: Login
|
||||||
|
COMMENTS: Kommentare
|
||||||
|
COMMENTSDISABLED: 'Kommentare sind deaktiviert'
|
||||||
|
DELETEALLCOMMENTS: 'Alle Kommentare auf dieser Seite löschen'
|
||||||
|
LOGINTOPOSTCOMMENT: 'Login um zu kommentieren'
|
||||||
|
NEXT: weiter
|
||||||
|
NOCOMMENTSYET: 'Noch keine Kommentare auf dieser Seite.'
|
||||||
|
POSTCOM: Kommentieren
|
||||||
|
PREV: zurück
|
||||||
|
RSSFEEDALLCOMMENTS: 'RSS Feed für alle Kommentare'
|
||||||
|
RSSFEEDCOMMENTS: 'RSS Feed für Kommentare auf dieser Seite'
|
||||||
|
PageCommentInterface:
|
||||||
|
DELETEALLCOMMENTS: 'Alle Kommentare auf dieser Seite entfernen'
|
||||||
|
SilverStripe\Comments\Admin\CommentAdmin:
|
||||||
|
ADMIN_PERMISSION: 'Zugang zum Bereich ''Kommentare'''
|
||||||
|
MENUTITLE: Kommentare
|
||||||
|
Moderated: Moderiert
|
||||||
|
NeedsModeration: 'Benötigt Moderation'
|
||||||
|
SilverStripe\Comments\Controllers\CommentingController:
|
||||||
|
COMMENTS: Kommentare
|
||||||
|
EMAILADDRESS: 'E-Mail Adresse (wird nicht angezeigt)'
|
||||||
|
PERMISSIONFAILURE: 'Sie sind nicht berechtigt diese Seite zu kommentieren. Bitte stellen Sie sicher das Sie eingeloggt sind und die nötige Berechtigung besitzen.'
|
||||||
|
RSSTITLE: 'Kommentare RSS Feed'
|
||||||
|
WEBSITEURL: 'Website URL'
|
||||||
|
SilverStripe\Comments\Model\Comment:
|
||||||
ALLOWCOMMENTS: 'Kommentare Erlauben'
|
ALLOWCOMMENTS: 'Kommentare Erlauben'
|
||||||
COMMENT: Kommentar
|
COMMENT: Kommentar
|
||||||
COMMENTBY: 'Kommentar von ''%s'''
|
COMMENTBY: 'Kommentar von ''%s'''
|
||||||
@ -12,47 +56,3 @@ de:
|
|||||||
PLURALNAME: Kommentare
|
PLURALNAME: Kommentare
|
||||||
SINGULARNAME: Kommentar
|
SINGULARNAME: Kommentar
|
||||||
URL: URL
|
URL: URL
|
||||||
CommentAdmin:
|
|
||||||
ADMIN_PERMISSION: 'Zugang zum Bereich ''Kommentare'''
|
|
||||||
MENUTITLE: Kommentare
|
|
||||||
Moderated: Moderiert
|
|
||||||
NeedsModeration: 'Benötigt Moderation'
|
|
||||||
CommentInterface:
|
|
||||||
COMMENT_MESSAGE_REQUIRED: 'Bitte geben Sie Ihren Kommentar ein'
|
|
||||||
COMMENT_MESSAGE_URL: 'Bitte geben Sie eine gültige URL ein'
|
|
||||||
EMAILADDRESS_MESSAGE_EMAIL: 'Bitte geben Sie eine gültige E-Mail-Adresse ein'
|
|
||||||
EMAILADDRESS_MESSAGE_REQUIRED: 'Bitte geben Sie Ihre E-Mail-Adresse ein'
|
|
||||||
POST: Absenden
|
|
||||||
PREVIEW: Vorschau
|
|
||||||
PREVIEWLABEL: Vorschau
|
|
||||||
YOURNAME: 'Name'
|
|
||||||
YOURNAME_MESSAGE_REQUIRED: 'Bitte geben Sie Ihren Namen ein'
|
|
||||||
CommentingController:
|
|
||||||
COMMENTS: Kommentare
|
|
||||||
EMAILADDRESS: 'E-Mail Adresse (wird nicht angezeigt)'
|
|
||||||
PERMISSIONFAILURE: 'Sie sind nicht berechtigt diese Seite zu kommentieren. Bitte stellen Sie sicher das Sie eingeloggt sind und die nötige Berechtigung besitzen.'
|
|
||||||
RSSTITLE: 'Kommentare RSS Feed'
|
|
||||||
WEBSITEURL: 'Website URL'
|
|
||||||
CommentsAdmin:
|
|
||||||
NeedsModeration: 'Benötigt Moderation'
|
|
||||||
CommentsInterface_pendingcomment_ss:
|
|
||||||
AWAITINGMODERATION: 'Ihr Kommentar wurde gespeichert und wird durch einen Moderator freigeschaltet.'
|
|
||||||
CommentsInterface_singlecomment_ss:
|
|
||||||
PBY: 'Geschrieben von'
|
|
||||||
CommentsInterface_ss:
|
|
||||||
AWAITINGMODERATION: 'Ihr Kommentar wurde gespeichert und wird durch einen Moderator freigeschaltet.'
|
|
||||||
COMMENTLOGINERROR: 'Sie können diese Seite nur kommentieren, wenn Sie eingeloggt sind'
|
|
||||||
COMMENTPERMISSIONERROR: 'und die nötige Berechtigung besitzen'
|
|
||||||
COMMENTPOSTLOGIN: 'Login'
|
|
||||||
COMMENTS: Kommentare
|
|
||||||
COMMENTSDISABLED: 'Kommentare sind deaktiviert'
|
|
||||||
DELETEALLCOMMENTS: 'Alle Kommentare auf dieser Seite löschen'
|
|
||||||
LOGINTOPOSTCOMMENT: 'Login um zu kommentieren'
|
|
||||||
NEXT: weiter
|
|
||||||
NOCOMMENTSYET: 'Noch keine Kommentare auf dieser Seite.'
|
|
||||||
POSTCOM: 'Kommentieren'
|
|
||||||
PREV: zurück
|
|
||||||
RSSFEEDALLCOMMENTS: 'RSS Feed für alle Kommentare'
|
|
||||||
RSSFEEDCOMMENTS: 'RSS Feed für Kommentare auf dieser Seite'
|
|
||||||
PageCommentInterface:
|
|
||||||
DELETEALLCOMMENTS: 'Alle Kommentare auf dieser Seite entfernen'
|
|
||||||
|
90
lang/en.yml
90
lang/en.yml
@ -1,30 +1,4 @@
|
|||||||
en:
|
en:
|
||||||
Comment:
|
|
||||||
ALLOWCOMMENTS: 'Allow Comments'
|
|
||||||
COMMENT: Comment
|
|
||||||
COMMENTBY: 'Comment by %s'
|
|
||||||
CREATED: 'Date posted'
|
|
||||||
EMAIL: Email
|
|
||||||
ISSPAM: 'Spam?'
|
|
||||||
MODERATED: 'Moderated?'
|
|
||||||
NAME: 'Author Name'
|
|
||||||
'ON': 'on'
|
|
||||||
OPTIONS: Options
|
|
||||||
OPTION_DESCRIPTION: 'Unmoderated and spam comments will not be displayed until approved'
|
|
||||||
PARENTTITLE: Parent
|
|
||||||
PLURALNAME: Comments
|
|
||||||
ParentComment_Title: 'This comment is a reply to the below'
|
|
||||||
SINGULARNAME: Comment
|
|
||||||
URL: URL
|
|
||||||
CommentAdmin:
|
|
||||||
ADMIN_PERMISSION: 'Access to ''Comments'' section'
|
|
||||||
ApprovedComments: Approved
|
|
||||||
Comments: Approved
|
|
||||||
MENUTITLE: Comments
|
|
||||||
Moderated: Moderated
|
|
||||||
NeedsModeration: 'Needs Moderation'
|
|
||||||
NewComments: New
|
|
||||||
SpamComments: Spam
|
|
||||||
CommentInterface:
|
CommentInterface:
|
||||||
COMMENT_MESSAGE_REQUIRED: 'Please enter your comment'
|
COMMENT_MESSAGE_REQUIRED: 'Please enter your comment'
|
||||||
COMMENT_MESSAGE_URL: 'Please enter a valid URL'
|
COMMENT_MESSAGE_URL: 'Please enter a valid URL'
|
||||||
@ -35,12 +9,6 @@ en:
|
|||||||
PREVIEWLABEL: Preview
|
PREVIEWLABEL: Preview
|
||||||
YOURNAME: 'Your name'
|
YOURNAME: 'Your name'
|
||||||
YOURNAME_MESSAGE_REQUIRED: 'Please enter your name'
|
YOURNAME_MESSAGE_REQUIRED: 'Please enter your name'
|
||||||
CommentingController:
|
|
||||||
COMMENTS: Comments
|
|
||||||
EMAILADDRESS: 'Your email address (will not be published)'
|
|
||||||
PERMISSIONFAILURE: 'You''re not able to post comments to this page. Please ensure you are logged in and have an appropriate permission level.'
|
|
||||||
RSSTITLE: 'Comments RSS Feed'
|
|
||||||
WEBSITEURL: 'Your website URL'
|
|
||||||
Comments:
|
Comments:
|
||||||
COMMENTSREQUIRELOGIN: 'Require login to comment'
|
COMMENTSREQUIRELOGIN: 'Require login to comment'
|
||||||
CommentsAdmin:
|
CommentsAdmin:
|
||||||
@ -49,19 +17,6 @@ en:
|
|||||||
NeedsModeration: 'Needs Moderation'
|
NeedsModeration: 'Needs Moderation'
|
||||||
NewComments: New
|
NewComments: New
|
||||||
SpamComments: Spam
|
SpamComments: Spam
|
||||||
CommentsExtension:
|
|
||||||
COMMENTOPTIONS: Comments
|
|
||||||
MODERATIONREQUIRED_NONE: 'No moderation required'
|
|
||||||
MODERATIONREQUIRED_NONMEMBERSONLY: 'Only moderate non-members'
|
|
||||||
MODERATIONREQUIRED_REQUIRED: 'Moderate all comments'
|
|
||||||
CommentsGridFieldAction:
|
|
||||||
APPROVE: Approve
|
|
||||||
COMMENTAPPROVED: 'Comment approved.'
|
|
||||||
COMMENTMARKEDSPAM: 'Comment marked as spam.'
|
|
||||||
SPAM: Spam
|
|
||||||
CommentsGridFieldConfig:
|
|
||||||
APPROVE: Approve
|
|
||||||
SPAM: Spam
|
|
||||||
CommentsInterface_pendingcomment_ss:
|
CommentsInterface_pendingcomment_ss:
|
||||||
AWAITINGMODERATION: 'Your comment has been submitted and is now awaiting moderation.'
|
AWAITINGMODERATION: 'Your comment has been submitted and is now awaiting moderation.'
|
||||||
CommentsInterface_singlecomment_ss:
|
CommentsInterface_singlecomment_ss:
|
||||||
@ -87,3 +42,48 @@ en:
|
|||||||
RSSFEEDCOMMENTS: 'RSS feed for comments on this page'
|
RSSFEEDCOMMENTS: 'RSS feed for comments on this page'
|
||||||
PageCommentInterface:
|
PageCommentInterface:
|
||||||
DELETEALLCOMMENTS: 'Delete all comments on this page'
|
DELETEALLCOMMENTS: 'Delete all comments on this page'
|
||||||
|
SilverStripe\Comments\Admin\CommentAdmin:
|
||||||
|
ADMIN_PERMISSION: 'Access to ''Comments'' section'
|
||||||
|
ApprovedComments: Approved
|
||||||
|
Comments: Approved
|
||||||
|
MENUTITLE: Comments
|
||||||
|
Moderated: Moderated
|
||||||
|
NeedsModeration: 'Needs Moderation'
|
||||||
|
NewComments: New
|
||||||
|
SpamComments: Spam
|
||||||
|
SilverStripe\Comments\Admin\CommentsGridFieldAction:
|
||||||
|
APPROVE: Approve
|
||||||
|
COMMENTAPPROVED: 'Comment approved.'
|
||||||
|
COMMENTMARKEDSPAM: 'Comment marked as spam.'
|
||||||
|
SPAM: Spam
|
||||||
|
SilverStripe\Comments\Admin\CommentsGridFieldConfig:
|
||||||
|
APPROVE: Approve
|
||||||
|
SPAM: Spam
|
||||||
|
SilverStripe\Comments\Controllers\CommentingController:
|
||||||
|
COMMENTS: Comments
|
||||||
|
EMAILADDRESS: 'Your email address (will not be published)'
|
||||||
|
PERMISSIONFAILURE: 'You''re not able to post comments to this page. Please ensure you are logged in and have an appropriate permission level.'
|
||||||
|
RSSTITLE: 'Comments RSS Feed'
|
||||||
|
WEBSITEURL: 'Your website URL'
|
||||||
|
SilverStripe\Comments\Extensions\CommentsExtension:
|
||||||
|
COMMENTOPTIONS: Comments
|
||||||
|
MODERATIONREQUIRED_NONE: 'No moderation required'
|
||||||
|
MODERATIONREQUIRED_NONMEMBERSONLY: 'Only moderate non-members'
|
||||||
|
MODERATIONREQUIRED_REQUIRED: 'Moderate all comments'
|
||||||
|
SilverStripe\Comments\Model\Comment:
|
||||||
|
ALLOWCOMMENTS: 'Allow Comments'
|
||||||
|
COMMENT: Comment
|
||||||
|
COMMENTBY: 'Comment by %s'
|
||||||
|
CREATED: 'Date posted'
|
||||||
|
EMAIL: Email
|
||||||
|
ISSPAM: 'Spam?'
|
||||||
|
MODERATED: 'Moderated?'
|
||||||
|
NAME: 'Author Name'
|
||||||
|
'ON': 'on'
|
||||||
|
OPTIONS: Options
|
||||||
|
OPTION_DESCRIPTION: 'Unmoderated and spam comments will not be displayed until approved'
|
||||||
|
PARENTTITLE: Parent
|
||||||
|
PLURALNAME: Comments
|
||||||
|
ParentComment_Title: 'This comment is a reply to the below'
|
||||||
|
SINGULARNAME: Comment
|
||||||
|
URL: URL
|
||||||
|
72
lang/eo.yml
72
lang/eo.yml
@ -1,29 +1,4 @@
|
|||||||
eo:
|
eo:
|
||||||
Comment:
|
|
||||||
ALLOWCOMMENTS: 'Ebligi komentojn'
|
|
||||||
COMMENT: Komento
|
|
||||||
COMMENTBY: 'Komento de %s'
|
|
||||||
CREATED: 'Dato de afiŝo'
|
|
||||||
EMAIL: Retpoŝto
|
|
||||||
ISSPAM: 'Ĉu spamo?'
|
|
||||||
MODERATED: 'Ĉu kontrolata?'
|
|
||||||
NAME: 'Nomo de aŭtoro'
|
|
||||||
'ON': 'en'
|
|
||||||
OPTION_DESCRIPTION: 'Ne vidigos nekontrolitajn aŭ spamajn komentojn antaŭ aprobo'
|
|
||||||
PARENTTITLE: Patra
|
|
||||||
PLURALNAME: Komentoj
|
|
||||||
ParentComment_Title: 'Tiu komento estas respondo al la suba'
|
|
||||||
SINGULARNAME: Komento
|
|
||||||
URL: URL
|
|
||||||
CommentAdmin:
|
|
||||||
ADMIN_PERMISSION: 'Aliro al sekcio ''Komentoj'''
|
|
||||||
ApprovedComments: Aprobita
|
|
||||||
Comments: Aprobita
|
|
||||||
MENUTITLE: Komentoj
|
|
||||||
Moderated: Kontrolata
|
|
||||||
NeedsModeration: 'Bezonas kontrolon'
|
|
||||||
NewComments: Nova
|
|
||||||
SpamComments: Spamo
|
|
||||||
CommentInterface:
|
CommentInterface:
|
||||||
COMMENT_MESSAGE_REQUIRED: 'Bonvole enigu vian komenton'
|
COMMENT_MESSAGE_REQUIRED: 'Bonvole enigu vian komenton'
|
||||||
COMMENT_MESSAGE_URL: 'Bonvole enigu validan URL-on'
|
COMMENT_MESSAGE_URL: 'Bonvole enigu validan URL-on'
|
||||||
@ -34,12 +9,6 @@ eo:
|
|||||||
PREVIEWLABEL: Antaŭvido
|
PREVIEWLABEL: Antaŭvido
|
||||||
YOURNAME: 'Via nomo'
|
YOURNAME: 'Via nomo'
|
||||||
YOURNAME_MESSAGE_REQUIRED: 'Bonvole enigu vian nomon'
|
YOURNAME_MESSAGE_REQUIRED: 'Bonvole enigu vian nomon'
|
||||||
CommentingController:
|
|
||||||
COMMENTS: Komentoj
|
|
||||||
EMAILADDRESS: 'Via retadreso (ne publikiĝos)'
|
|
||||||
PERMISSIONFAILURE: 'Vi ne povas afiŝi komentojn al ĉi tiu paĝo. Bonvole certigu ke vi jam ensalutis kaj havas taŭgan permeson.'
|
|
||||||
RSSTITLE: 'RSS-fluo de komentoj'
|
|
||||||
WEBSITEURL: 'Via reteja URL'
|
|
||||||
Comments:
|
Comments:
|
||||||
COMMENTSREQUIRELOGIN: 'Necesas ensaluti por komenti'
|
COMMENTSREQUIRELOGIN: 'Necesas ensaluti por komenti'
|
||||||
CommentsAdmin:
|
CommentsAdmin:
|
||||||
@ -48,11 +17,6 @@ eo:
|
|||||||
NeedsModeration: 'Bezonas kontrolon'
|
NeedsModeration: 'Bezonas kontrolon'
|
||||||
NewComments: Nova
|
NewComments: Nova
|
||||||
SpamComments: Spamo
|
SpamComments: Spamo
|
||||||
CommentsExtension:
|
|
||||||
COMMENTOPTIONS: Komentoj
|
|
||||||
MODERATIONREQUIRED_NONE: 'Kontrolado ne bezonatas'
|
|
||||||
MODERATIONREQUIRED_NONMEMBERSONLY: 'Kontroli nur nemembrojn'
|
|
||||||
MODERATIONREQUIRED_REQUIRED: 'Kontroli ĉiujn komentojn'
|
|
||||||
CommentsInterface_pendingcomment_ss:
|
CommentsInterface_pendingcomment_ss:
|
||||||
AWAITINGMODERATION: 'Via komento afiŝiĝis kaj nun atendas kontrolon.'
|
AWAITINGMODERATION: 'Via komento afiŝiĝis kaj nun atendas kontrolon.'
|
||||||
CommentsInterface_singlecomment_ss:
|
CommentsInterface_singlecomment_ss:
|
||||||
@ -78,3 +42,39 @@ eo:
|
|||||||
RSSFEEDCOMMENTS: 'RSS-fluo por komentoj pri ĉi tiu paĝo'
|
RSSFEEDCOMMENTS: 'RSS-fluo por komentoj pri ĉi tiu paĝo'
|
||||||
PageCommentInterface:
|
PageCommentInterface:
|
||||||
DELETEALLCOMMENTS: 'Forigi ĉiujn komentojn pri ĉi tiu paĝo'
|
DELETEALLCOMMENTS: 'Forigi ĉiujn komentojn pri ĉi tiu paĝo'
|
||||||
|
SilverStripe\Comments\Admin\CommentAdmin:
|
||||||
|
ADMIN_PERMISSION: 'Aliro al sekcio ''Komentoj'''
|
||||||
|
ApprovedComments: Aprobita
|
||||||
|
Comments: Aprobita
|
||||||
|
MENUTITLE: Komentoj
|
||||||
|
Moderated: Kontrolata
|
||||||
|
NeedsModeration: 'Bezonas kontrolon'
|
||||||
|
NewComments: Nova
|
||||||
|
SpamComments: Spamo
|
||||||
|
SilverStripe\Comments\Controllers\CommentingController:
|
||||||
|
COMMENTS: Komentoj
|
||||||
|
EMAILADDRESS: 'Via retadreso (ne publikiĝos)'
|
||||||
|
PERMISSIONFAILURE: 'Vi ne povas afiŝi komentojn al ĉi tiu paĝo. Bonvole certigu ke vi jam ensalutis kaj havas taŭgan permeson.'
|
||||||
|
RSSTITLE: 'RSS-fluo de komentoj'
|
||||||
|
WEBSITEURL: 'Via reteja URL'
|
||||||
|
SilverStripe\Comments\Extensions\CommentsExtension:
|
||||||
|
COMMENTOPTIONS: Komentoj
|
||||||
|
MODERATIONREQUIRED_NONE: 'Kontrolado ne bezonatas'
|
||||||
|
MODERATIONREQUIRED_NONMEMBERSONLY: 'Kontroli nur nemembrojn'
|
||||||
|
MODERATIONREQUIRED_REQUIRED: 'Kontroli ĉiujn komentojn'
|
||||||
|
SilverStripe\Comments\Model\Comment:
|
||||||
|
ALLOWCOMMENTS: 'Ebligi komentojn'
|
||||||
|
COMMENT: Komento
|
||||||
|
COMMENTBY: 'Komento de %s'
|
||||||
|
CREATED: 'Dato de afiŝo'
|
||||||
|
EMAIL: Retpoŝto
|
||||||
|
ISSPAM: 'Ĉu spamo?'
|
||||||
|
MODERATED: 'Ĉu kontrolata?'
|
||||||
|
NAME: 'Nomo de aŭtoro'
|
||||||
|
'ON': en
|
||||||
|
OPTION_DESCRIPTION: 'Ne vidigos nekontrolitajn aŭ spamajn komentojn antaŭ aprobo'
|
||||||
|
PARENTTITLE: Patra
|
||||||
|
PLURALNAME: Komentoj
|
||||||
|
ParentComment_Title: 'Tiu komento estas respondo al la suba'
|
||||||
|
SINGULARNAME: Komento
|
||||||
|
URL: URL
|
||||||
|
50
lang/es.yml
50
lang/es.yml
@ -1,37 +1,14 @@
|
|||||||
es:
|
es:
|
||||||
Comment:
|
|
||||||
ALLOWCOMMENTS: 'Permitir comentarios'
|
|
||||||
COMMENT: Comentario
|
|
||||||
COMMENTBY: 'Comentario por %s'
|
|
||||||
CREATED: 'Fecha de publicación'
|
|
||||||
EMAIL: Email
|
|
||||||
ISSPAM: '¿Spam?'
|
|
||||||
MODERATED: '¿Moderado?'
|
|
||||||
NAME: 'Nombre del autor'
|
|
||||||
PARENTTITLE: Padre
|
|
||||||
PLURALNAME: Comentarios
|
|
||||||
SINGULARNAME: Comentario
|
|
||||||
URL: URL
|
|
||||||
CommentAdmin:
|
|
||||||
ADMIN_PERMISSION: 'Acceder a la sección ''Comentarios'''
|
|
||||||
MENUTITLE: Comentarios
|
|
||||||
Moderated: Moderado
|
|
||||||
NeedsModeration: 'Necesita moderación'
|
|
||||||
CommentInterface:
|
CommentInterface:
|
||||||
COMMENT_MESSAGE_REQUIRED: 'Por favor, ingres su comentario'
|
COMMENT_MESSAGE_REQUIRED: 'Por favor, ingres su comentario'
|
||||||
COMMENT_MESSAGE_URL: 'Por favor, ingrese una URL válida'
|
COMMENT_MESSAGE_URL: 'Por favor, ingrese una URL válida'
|
||||||
EMAILADDRESS_MESSAGE_EMAIL: 'Por favor, ingrse una dirección de correo válida'
|
EMAILADDRESS_MESSAGE_EMAIL: 'Por favor, ingrse una dirección de correo válida'
|
||||||
EMAILADDRESS_MESSAGE_REQUIRED: 'Por favor, ingrese su dirección de correo'
|
EMAILADDRESS_MESSAGE_REQUIRED: 'Por favor, ingrese su dirección de correo'
|
||||||
POST: Publicar
|
POST: Publicar
|
||||||
PREVIEW: Vista previa
|
PREVIEW: 'Vista previa'
|
||||||
PREVIEWLABEL: Vista previa
|
PREVIEWLABEL: 'Vista previa'
|
||||||
YOURNAME: 'Su nombre'
|
YOURNAME: 'Su nombre'
|
||||||
YOURNAME_MESSAGE_REQUIRED: 'Por favor, ingrese su nombre'
|
YOURNAME_MESSAGE_REQUIRED: 'Por favor, ingrese su nombre'
|
||||||
CommentingController:
|
|
||||||
COMMENTS: Comentarios
|
|
||||||
EMAILADDRESS: 'Su dirección de correo (no se publicará)'
|
|
||||||
PERMISSIONFAILURE: 'Ud no puede publicar comentarios en esta página. Por favor asegúrese que haya iniciado sesión y que tenga el adecuado nivel de permisos.'
|
|
||||||
WEBSITEURL: 'URL de su sitio Web'
|
|
||||||
CommentsAdmin:
|
CommentsAdmin:
|
||||||
NeedsModeration: 'Necesita moderación'
|
NeedsModeration: 'Necesita moderación'
|
||||||
CommentsInterface_pendingcomment_ss:
|
CommentsInterface_pendingcomment_ss:
|
||||||
@ -53,3 +30,26 @@ es:
|
|||||||
PREV: anterior
|
PREV: anterior
|
||||||
PageCommentInterface:
|
PageCommentInterface:
|
||||||
DELETEALLCOMMENTS: 'Eliminar todos los comentarios de esta página'
|
DELETEALLCOMMENTS: 'Eliminar todos los comentarios de esta página'
|
||||||
|
SilverStripe\Comments\Admin\CommentAdmin:
|
||||||
|
ADMIN_PERMISSION: 'Acceder a la sección ''Comentarios'''
|
||||||
|
MENUTITLE: Comentarios
|
||||||
|
Moderated: Moderado
|
||||||
|
NeedsModeration: 'Necesita moderación'
|
||||||
|
SilverStripe\Comments\Controllers\CommentingController:
|
||||||
|
COMMENTS: Comentarios
|
||||||
|
EMAILADDRESS: 'Su dirección de correo (no se publicará)'
|
||||||
|
PERMISSIONFAILURE: 'Ud no puede publicar comentarios en esta página. Por favor asegúrese que haya iniciado sesión y que tenga el adecuado nivel de permisos.'
|
||||||
|
WEBSITEURL: 'URL de su sitio Web'
|
||||||
|
SilverStripe\Comments\Model\Comment:
|
||||||
|
ALLOWCOMMENTS: 'Permitir comentarios'
|
||||||
|
COMMENT: Comentario
|
||||||
|
COMMENTBY: 'Comentario por %s'
|
||||||
|
CREATED: 'Fecha de publicación'
|
||||||
|
EMAIL: Email
|
||||||
|
ISSPAM: '¿Spam?'
|
||||||
|
MODERATED: '¿Moderado?'
|
||||||
|
NAME: 'Nombre del autor'
|
||||||
|
PARENTTITLE: Padre
|
||||||
|
PLURALNAME: Comentarios
|
||||||
|
SINGULARNAME: Comentario
|
||||||
|
URL: URL
|
||||||
|
@ -1,64 +1,28 @@
|
|||||||
fa_IR:
|
fa_IR:
|
||||||
Comment:
|
|
||||||
ALLOWCOMMENTS: 'اجازه نشر دیدگاه'
|
|
||||||
COMMENT: دیدگاه
|
|
||||||
COMMENTBY: 'دیدگاه توسط %s'
|
|
||||||
CREATED: 'تاریخ ارسال'
|
|
||||||
EMAIL: ایمیل
|
|
||||||
ISSPAM: 'هرزنوشت؟'
|
|
||||||
MODERATED: 'مدیریت شده؟'
|
|
||||||
NAME: 'نام نگارنده'
|
|
||||||
'ON': 'در'
|
|
||||||
OPTION_DESCRIPTION: 'دیدگاههای مدیریت نشده و هرزنوشتها تا زمان تایید به نمایش در نخواهند آمد'
|
|
||||||
PARENTTITLE: والد
|
|
||||||
PLURALNAME: دیدگاهها
|
|
||||||
ParentComment_Title: 'این دیدگاه پاسخی است به زیر'
|
|
||||||
SINGULARNAME: دیدگاه
|
|
||||||
URL: نشانی اینترنتی
|
|
||||||
CommentAdmin:
|
|
||||||
ADMIN_PERMISSION: 'دسترسی به بخش ''دیدگاهها'''
|
|
||||||
ApprovedComments: تایید شده
|
|
||||||
Comments: تایید شده
|
|
||||||
MENUTITLE: دیدگاهها
|
|
||||||
Moderated: مدیریت شده
|
|
||||||
NeedsModeration: 'نیازمند مدیریت'
|
|
||||||
NewComments: تازه
|
|
||||||
SpamComments: هرزنوشت
|
|
||||||
CommentInterface:
|
CommentInterface:
|
||||||
COMMENT_MESSAGE_REQUIRED: 'لطفاً دیدگاه خود را وارد نمایید'
|
COMMENT_MESSAGE_REQUIRED: 'لطفاً دیدگاه خود را وارد نمایید'
|
||||||
COMMENT_MESSAGE_URL: 'لطفاً نشانی اینترنتی معتبر وارد نمایید'
|
COMMENT_MESSAGE_URL: 'لطفاً نشانی اینترنتی معتبر وارد نمایید'
|
||||||
EMAILADDRESS_MESSAGE_EMAIL: 'لطفاً نشانی ایمیل معتبر وارد نمایید'
|
EMAILADDRESS_MESSAGE_EMAIL: 'لطفاً نشانی ایمیل معتبر وارد نمایید'
|
||||||
EMAILADDRESS_MESSAGE_REQUIRED: 'لطفاً نشانی ایمیل خود را وارد نمایید'
|
EMAILADDRESS_MESSAGE_REQUIRED: 'لطفاً نشانی ایمیل خود را وارد نمایید'
|
||||||
POST: ارسال
|
POST: ارسال
|
||||||
PREVIEW: پیشنمایش
|
PREVIEW: 'پیشنمایش'
|
||||||
PREVIEWLABEL: پیشنمایش
|
PREVIEWLABEL: 'پیشنمایش'
|
||||||
YOURNAME: 'نام شما'
|
YOURNAME: 'نام شما'
|
||||||
YOURNAME_MESSAGE_REQUIRED: 'لطفاً نام خود را وارد نمایید'
|
YOURNAME_MESSAGE_REQUIRED: 'لطفاً نام خود را وارد نمایید'
|
||||||
CommentingController:
|
|
||||||
COMMENTS: دیدگاهها
|
|
||||||
EMAILADDRESS: 'ایمیل شما (منتشر نخواهد شد)'
|
|
||||||
PERMISSIONFAILURE: 'شما نمیتوانید در این صفحه دیدگاهی درج نمایید. لطفاً اطمینان حاصل نمایید که وارد سایت شدهاید و از سطح دسترسی دسترسی مناسب برخوردار هستید.'
|
|
||||||
RSSTITLE: 'خوراک آراساس دیدگاهها'
|
|
||||||
WEBSITEURL: 'نشانی وبسایت شما'
|
|
||||||
Comments:
|
Comments:
|
||||||
COMMENTSREQUIRELOGIN: 'درج دیدگاه نیازمند ورود شما به سایت است'
|
COMMENTSREQUIRELOGIN: 'درج دیدگاه نیازمند ورود شما به سایت است'
|
||||||
CommentsAdmin:
|
CommentsAdmin:
|
||||||
ApprovedComments: تایید شده
|
ApprovedComments: 'تایید شده'
|
||||||
Comments: تایید شده
|
Comments: 'تایید شده'
|
||||||
NeedsModeration: 'نیازمند مدیریت'
|
NeedsModeration: 'نیازمند مدیریت'
|
||||||
NewComments: تازه
|
NewComments: تازه
|
||||||
SpamComments: هرزنوشت
|
SpamComments: هرزنوشت
|
||||||
CommentsExtension:
|
|
||||||
COMMENTOPTIONS: دیدگاهها
|
|
||||||
MODERATIONREQUIRED_NONE: 'نیاز به مدیریت ندارد'
|
|
||||||
MODERATIONREQUIRED_NONMEMBERSONLY: 'تنها مدیریت کاربران غیر عضو'
|
|
||||||
MODERATIONREQUIRED_REQUIRED: 'مدیریت تمامی دیدگاهها'
|
|
||||||
CommentsInterface_pendingcomment_ss:
|
CommentsInterface_pendingcomment_ss:
|
||||||
AWAITINGMODERATION: 'دیدگاه شما ارسال شده و هماکنون در انتظار بررسی است.'
|
AWAITINGMODERATION: 'دیدگاه شما ارسال شده و هماکنون در انتظار بررسی است.'
|
||||||
CommentsInterface_singlecomment_ss:
|
CommentsInterface_singlecomment_ss:
|
||||||
APPROVE: 'تایید کن'
|
APPROVE: 'تایید کن'
|
||||||
ISNTSPAM: 'هرزنوشت نیست'
|
ISNTSPAM: 'هرزنوشت نیست'
|
||||||
ISSPAM: 'هرزنوشته'
|
ISSPAM: هرزنوشته
|
||||||
PBY: 'ارسال شده توسط'
|
PBY: 'ارسال شده توسط'
|
||||||
REMCOM: 'رد کردن'
|
REMCOM: 'رد کردن'
|
||||||
CommentsInterface_ss:
|
CommentsInterface_ss:
|
||||||
@ -78,3 +42,39 @@ fa_IR:
|
|||||||
RSSFEEDCOMMENTS: 'خوراک آراساس دیدگاههای این صفحه'
|
RSSFEEDCOMMENTS: 'خوراک آراساس دیدگاههای این صفحه'
|
||||||
PageCommentInterface:
|
PageCommentInterface:
|
||||||
DELETEALLCOMMENTS: 'حذف تمامی دیدگاهها در این صفحه'
|
DELETEALLCOMMENTS: 'حذف تمامی دیدگاهها در این صفحه'
|
||||||
|
SilverStripe\Comments\Admin\CommentAdmin:
|
||||||
|
ADMIN_PERMISSION: 'دسترسی به بخش ''دیدگاهها'''
|
||||||
|
ApprovedComments: 'تایید شده'
|
||||||
|
Comments: 'تایید شده'
|
||||||
|
MENUTITLE: دیدگاهها
|
||||||
|
Moderated: 'مدیریت شده'
|
||||||
|
NeedsModeration: 'نیازمند مدیریت'
|
||||||
|
NewComments: تازه
|
||||||
|
SpamComments: هرزنوشت
|
||||||
|
SilverStripe\Comments\Controllers\CommentingController:
|
||||||
|
COMMENTS: دیدگاهها
|
||||||
|
EMAILADDRESS: 'ایمیل شما (منتشر نخواهد شد)'
|
||||||
|
PERMISSIONFAILURE: 'شما نمیتوانید در این صفحه دیدگاهی درج نمایید. لطفاً اطمینان حاصل نمایید که وارد سایت شدهاید و از سطح دسترسی دسترسی مناسب برخوردار هستید.'
|
||||||
|
RSSTITLE: 'خوراک آراساس دیدگاهها'
|
||||||
|
WEBSITEURL: 'نشانی وبسایت شما'
|
||||||
|
SilverStripe\Comments\Extensions\CommentsExtension:
|
||||||
|
COMMENTOPTIONS: دیدگاهها
|
||||||
|
MODERATIONREQUIRED_NONE: 'نیاز به مدیریت ندارد'
|
||||||
|
MODERATIONREQUIRED_NONMEMBERSONLY: 'تنها مدیریت کاربران غیر عضو'
|
||||||
|
MODERATIONREQUIRED_REQUIRED: 'مدیریت تمامی دیدگاهها'
|
||||||
|
SilverStripe\Comments\Model\Comment:
|
||||||
|
ALLOWCOMMENTS: 'اجازه نشر دیدگاه'
|
||||||
|
COMMENT: دیدگاه
|
||||||
|
COMMENTBY: 'دیدگاه توسط %s'
|
||||||
|
CREATED: 'تاریخ ارسال'
|
||||||
|
EMAIL: 'ایمیل'
|
||||||
|
ISSPAM: هرزنوشت؟
|
||||||
|
MODERATED: 'مدیریت شده؟'
|
||||||
|
NAME: 'نام نگارنده'
|
||||||
|
'ON': در
|
||||||
|
OPTION_DESCRIPTION: 'دیدگاههای مدیریت نشده و هرزنوشتها تا زمان تایید به نمایش در نخواهند آمد'
|
||||||
|
PARENTTITLE: والد
|
||||||
|
PLURALNAME: دیدگاهها
|
||||||
|
ParentComment_Title: 'این دیدگاه پاسخی است به زیر'
|
||||||
|
SINGULARNAME: دیدگاه
|
||||||
|
URL: 'نشانی اینترنتی'
|
||||||
|
56
lang/fi.yml
56
lang/fi.yml
@ -1,44 +1,20 @@
|
|||||||
fi:
|
fi:
|
||||||
Comment:
|
|
||||||
ALLOWCOMMENTS: 'Salli kommentointi'
|
|
||||||
COMMENT: Komentti
|
|
||||||
COMMENTBY: 'Kommentoija: %s'
|
|
||||||
CREATED: 'Kirjoitettu'
|
|
||||||
EMAIL: Sähköposti
|
|
||||||
ISSPAM: 'Spämmiä?'
|
|
||||||
MODERATED: 'Moderoitu?'
|
|
||||||
NAME: 'Kirjoittajan nimi'
|
|
||||||
'ON': 'pvm'
|
|
||||||
PARENTTITLE: Isäntä
|
|
||||||
PLURALNAME: Kommentit
|
|
||||||
SINGULARNAME: Komentti
|
|
||||||
URL: URL-osoite
|
|
||||||
CommentAdmin:
|
|
||||||
MENUTITLE: Kommentit
|
|
||||||
Moderated: Moderoitu
|
|
||||||
NeedsModeration: 'Tarvitsee moderointia'
|
|
||||||
CommentInterface:
|
CommentInterface:
|
||||||
COMMENT_MESSAGE_REQUIRED: 'Ole hyvä ja kommentoi'
|
COMMENT_MESSAGE_REQUIRED: 'Ole hyvä ja kommentoi'
|
||||||
COMMENT_MESSAGE_URL: 'URL-osoitteen on oltava kelvollinen'
|
COMMENT_MESSAGE_URL: 'URL-osoitteen on oltava kelvollinen'
|
||||||
EMAILADDRESS_MESSAGE_EMAIL: 'Sähköpostiosoitteen on oltava kelvollinen'
|
EMAILADDRESS_MESSAGE_EMAIL: 'Sähköpostiosoitteen on oltava kelvollinen'
|
||||||
EMAILADDRESS_MESSAGE_REQUIRED: 'Sähköpostiosoitteesi'
|
EMAILADDRESS_MESSAGE_REQUIRED: Sähköpostiosoitteesi
|
||||||
POST: Lähetä
|
POST: Lähetä
|
||||||
PREVIEW: Esikatselu
|
PREVIEW: Esikatselu
|
||||||
PREVIEWLABEL: Esikatselu
|
PREVIEWLABEL: Esikatselu
|
||||||
YOURNAME: 'Nimesi'
|
YOURNAME: Nimesi
|
||||||
YOURNAME_MESSAGE_REQUIRED: 'Nimesi'
|
YOURNAME_MESSAGE_REQUIRED: Nimesi
|
||||||
CommentingController:
|
|
||||||
COMMENTS: Kommentit
|
|
||||||
EMAILADDRESS: 'Sähköpostiosoitteesi (ei julkaista)'
|
|
||||||
PERMISSIONFAILURE: 'Et voi kommentoida tätä sivua. Varmista, että olet kirjatuneena ja että käyttöoikeutesi ovat riittävät.'
|
|
||||||
RSSTITLE: 'Kommenttien RSS-syöte'
|
|
||||||
WEBSITEURL: 'WWW-sivustosi osoite'
|
|
||||||
CommentsAdmin:
|
CommentsAdmin:
|
||||||
NeedsModeration: 'Tarvitsee moderointia'
|
NeedsModeration: 'Tarvitsee moderointia'
|
||||||
CommentsInterface_pendingcomment_ss:
|
CommentsInterface_pendingcomment_ss:
|
||||||
AWAITINGMODERATION: 'Kommenttisi on lähetetty ja on moderoitavana.'
|
AWAITINGMODERATION: 'Kommenttisi on lähetetty ja on moderoitavana.'
|
||||||
CommentsInterface_singlecomment_ss:
|
CommentsInterface_singlecomment_ss:
|
||||||
PBY: 'Lähettänyt'
|
PBY: Lähettänyt
|
||||||
CommentsInterface_ss:
|
CommentsInterface_ss:
|
||||||
AWAITINGMODERATION: 'Kommenttisi on lähetetty ja on moderoitavana.'
|
AWAITINGMODERATION: 'Kommenttisi on lähetetty ja on moderoitavana.'
|
||||||
COMMENTLOGINERROR: 'Et voi kommentoida ennen kuin olet kirjautunut sisään'
|
COMMENTLOGINERROR: 'Et voi kommentoida ennen kuin olet kirjautunut sisään'
|
||||||
@ -55,3 +31,27 @@ fi:
|
|||||||
RSSFEEDCOMMENTS: 'RSS-syöte tämän sivun kommenteista'
|
RSSFEEDCOMMENTS: 'RSS-syöte tämän sivun kommenteista'
|
||||||
PageCommentInterface:
|
PageCommentInterface:
|
||||||
DELETEALLCOMMENTS: 'Poista kaikki tämän sivun kommentit'
|
DELETEALLCOMMENTS: 'Poista kaikki tämän sivun kommentit'
|
||||||
|
SilverStripe\Comments\Admin\CommentAdmin:
|
||||||
|
MENUTITLE: Kommentit
|
||||||
|
Moderated: Moderoitu
|
||||||
|
NeedsModeration: 'Tarvitsee moderointia'
|
||||||
|
SilverStripe\Comments\Controllers\CommentingController:
|
||||||
|
COMMENTS: Kommentit
|
||||||
|
EMAILADDRESS: 'Sähköpostiosoitteesi (ei julkaista)'
|
||||||
|
PERMISSIONFAILURE: 'Et voi kommentoida tätä sivua. Varmista, että olet kirjatuneena ja että käyttöoikeutesi ovat riittävät.'
|
||||||
|
RSSTITLE: 'Kommenttien RSS-syöte'
|
||||||
|
WEBSITEURL: 'WWW-sivustosi osoite'
|
||||||
|
SilverStripe\Comments\Model\Comment:
|
||||||
|
ALLOWCOMMENTS: 'Salli kommentointi'
|
||||||
|
COMMENT: Komentti
|
||||||
|
COMMENTBY: 'Kommentoija: %s'
|
||||||
|
CREATED: Kirjoitettu
|
||||||
|
EMAIL: Sähköposti
|
||||||
|
ISSPAM: 'Spämmiä?'
|
||||||
|
MODERATED: 'Moderoitu?'
|
||||||
|
NAME: 'Kirjoittajan nimi'
|
||||||
|
'ON': pvm
|
||||||
|
PARENTTITLE: Isäntä
|
||||||
|
PLURALNAME: Kommentit
|
||||||
|
SINGULARNAME: Komentti
|
||||||
|
URL: URL-osoite
|
||||||
|
51
lang/fr.yml
51
lang/fr.yml
@ -1,21 +1,4 @@
|
|||||||
fr:
|
fr:
|
||||||
Comment:
|
|
||||||
ALLOWCOMMENTS: 'Autoriser Commentaires'
|
|
||||||
COMMENT: Commentaire
|
|
||||||
COMMENTBY: 'Commentaire par %s'
|
|
||||||
CREATED: 'Date de publication'
|
|
||||||
EMAIL: Email
|
|
||||||
ISSPAM: 'Spam?'
|
|
||||||
MODERATED: 'Modéré?'
|
|
||||||
NAME: 'Nom de l''Auteur'
|
|
||||||
PARENTTITLE: Parent
|
|
||||||
PLURALNAME: Commentaires
|
|
||||||
SINGULARNAME: Commentaire
|
|
||||||
URL: URL
|
|
||||||
CommentAdmin:
|
|
||||||
MENUTITLE: Commentaires
|
|
||||||
Moderated: Modéré
|
|
||||||
NeedsModeration: 'Besoin de modération'
|
|
||||||
CommentInterface:
|
CommentInterface:
|
||||||
COMMENT_MESSAGE_REQUIRED: 'Saisissez votre commentaire'
|
COMMENT_MESSAGE_REQUIRED: 'Saisissez votre commentaire'
|
||||||
COMMENT_MESSAGE_URL: 'Saisissez une URl valide'
|
COMMENT_MESSAGE_URL: 'Saisissez une URl valide'
|
||||||
@ -26,16 +9,8 @@ fr:
|
|||||||
PREVIEWLABEL: Aperçu
|
PREVIEWLABEL: Aperçu
|
||||||
YOURNAME: 'Votre Nom'
|
YOURNAME: 'Votre Nom'
|
||||||
YOURNAME_MESSAGE_REQUIRED: 'Saisissez votre nom'
|
YOURNAME_MESSAGE_REQUIRED: 'Saisissez votre nom'
|
||||||
CommentingController:
|
|
||||||
COMMENTS: Commentaires
|
|
||||||
EMAILADDRESS: 'Votre adresse e-mail (ne sera pas publiée)'
|
|
||||||
PERMISSIONFAILURE: 'Vous n''avez pas l''autorisation de commenter cette page. Assurez vous d''être connecté et d''avoir le bon niveau de d''autorisation.'
|
|
||||||
RSSTITLE: 'Flux RSS de Commentaires'
|
|
||||||
WEBSITEURL: 'URl de votre site web'
|
|
||||||
CommentsAdmin:
|
CommentsAdmin:
|
||||||
NeedsModeration: 'Besoin de Modération'
|
NeedsModeration: 'Besoin de Modération'
|
||||||
CommentsExtension:
|
|
||||||
COMMENTOPTIONS: Commentaires
|
|
||||||
CommentsInterface_pendingcomment_ss:
|
CommentsInterface_pendingcomment_ss:
|
||||||
AWAITINGMODERATION: 'Votre commentaire a été soumis à modération.'
|
AWAITINGMODERATION: 'Votre commentaire a été soumis à modération.'
|
||||||
CommentsInterface_singlecomment_ss:
|
CommentsInterface_singlecomment_ss:
|
||||||
@ -57,3 +32,29 @@ fr:
|
|||||||
RSSFEEDCOMMENTS: 'Flux RSS de commentaires de cette page'
|
RSSFEEDCOMMENTS: 'Flux RSS de commentaires de cette page'
|
||||||
PageCommentInterface:
|
PageCommentInterface:
|
||||||
DELETEALLCOMMENTS: 'Supprimer tout les commentaires de cette page'
|
DELETEALLCOMMENTS: 'Supprimer tout les commentaires de cette page'
|
||||||
|
SilverStripe\Comments\Admin\CommentAdmin:
|
||||||
|
ADMIN_PERMISSION: 'Accès à la section Commentaires'
|
||||||
|
MENUTITLE: Commentaires
|
||||||
|
Moderated: Modéré
|
||||||
|
NeedsModeration: 'Besoin de modération'
|
||||||
|
SilverStripe\Comments\Controllers\CommentingController:
|
||||||
|
COMMENTS: Commentaires
|
||||||
|
EMAILADDRESS: 'Votre adresse e-mail (ne sera pas publiée)'
|
||||||
|
PERMISSIONFAILURE: 'Vous n''avez pas l''autorisation de commenter cette page. Assurez vous d''être connecté et d''avoir le bon niveau de d''autorisation.'
|
||||||
|
RSSTITLE: 'Flux RSS de Commentaires'
|
||||||
|
WEBSITEURL: 'URl de votre site web'
|
||||||
|
SilverStripe\Comments\Extensions\CommentsExtension:
|
||||||
|
COMMENTOPTIONS: Commentaires
|
||||||
|
SilverStripe\Comments\Model\Comment:
|
||||||
|
ALLOWCOMMENTS: 'Autoriser Commentaires'
|
||||||
|
COMMENT: Commentaire
|
||||||
|
COMMENTBY: 'Commentaire par %s'
|
||||||
|
CREATED: 'Date de publication'
|
||||||
|
EMAIL: Email
|
||||||
|
ISSPAM: 'Spam?'
|
||||||
|
MODERATED: 'Modéré?'
|
||||||
|
NAME: 'Nom de l''Auteur'
|
||||||
|
PARENTTITLE: Parent
|
||||||
|
PLURALNAME: Commentaires
|
||||||
|
SINGULARNAME: Commentaire
|
||||||
|
URL: URL
|
||||||
|
88
lang/hu.yml
88
lang/hu.yml
@ -1,5 +1,48 @@
|
|||||||
hu:
|
hu:
|
||||||
Comment:
|
CommentInterface:
|
||||||
|
COMMENT_MESSAGE_REQUIRED: 'Szöveg megadása'
|
||||||
|
COMMENT_MESSAGE_URL: 'Kérjük adjon meg egy működő linket'
|
||||||
|
EMAILADDRESS_MESSAGE_EMAIL: 'Kérjük adjon meg egy e-mail címet'
|
||||||
|
EMAILADDRESS_MESSAGE_REQUIRED: 'Kérjük adja meg az e-mail címét'
|
||||||
|
POST: Elküld
|
||||||
|
PREVIEW: Előnézet
|
||||||
|
PREVIEWLABEL: Előnézet
|
||||||
|
YOURNAME: 'Az Ön neve'
|
||||||
|
YOURNAME_MESSAGE_REQUIRED: 'Kérjük adja meg nevét'
|
||||||
|
CommentsAdmin:
|
||||||
|
NeedsModeration: 'Moderálás szükséges'
|
||||||
|
CommentsInterface_pendingcomment_ss:
|
||||||
|
AWAITINGMODERATION: 'Hozzászólását moderálásra továbbítottuk'
|
||||||
|
CommentsInterface_singlecomment_ss:
|
||||||
|
PBY: Feladó
|
||||||
|
CommentsInterface_ss:
|
||||||
|
AWAITINGMODERATION: 'Hozzászólását moderálásra továbbítottuk'
|
||||||
|
COMMENTLOGINERROR: 'A hozzászóláshoz be kell jelentkeznie'
|
||||||
|
COMMENTPERMISSIONERROR: 'és rendelkeznie kell a megfelelő jogosultsággal'
|
||||||
|
COMMENTPOSTLOGIN: Bejelentkezés
|
||||||
|
COMMENTS: Hozzászólások
|
||||||
|
COMMENTSDISABLED: 'A hozzászólások le vannak tiltva '
|
||||||
|
LOGINTOPOSTCOMMENT: 'A hozzászóláshoz jelentkezzen be '
|
||||||
|
NEXT: következő
|
||||||
|
NOCOMMENTSYET: 'Nem érkeztek hozzászólások'
|
||||||
|
POSTCOM: 'Küldjön egy hozzászólást'
|
||||||
|
PREV: előző
|
||||||
|
RSSFEEDALLCOMMENTS: 'Összes hozzászólás RSS-ben'
|
||||||
|
RSSFEEDCOMMENTS: 'Oldal hozzászólásai RSS-ben'
|
||||||
|
PageCommentInterface:
|
||||||
|
DELETEALLCOMMENTS: 'Oldal összes hozzászólásának törlése'
|
||||||
|
SilverStripe\Comments\Admin\CommentAdmin:
|
||||||
|
ADMIN_PERMISSION: '''Hozzászólások'' mező elérése'
|
||||||
|
MENUTITLE: Hozzászólások
|
||||||
|
Moderated: Moderált
|
||||||
|
NeedsModeration: 'Moderálás szükséges'
|
||||||
|
SilverStripe\Comments\Controllers\CommentingController:
|
||||||
|
COMMENTS: 'A hosszászólás szövege'
|
||||||
|
EMAILADDRESS: 'Az Ön e-mail címe (nem látható)'
|
||||||
|
PERMISSIONFAILURE: 'Ön csak a bejelentkezést követően, és a megfelelő jogosultság birtokában hozhat létre hozzászólást.'
|
||||||
|
RSSTITLE: 'Hozzászólások RSS-ben'
|
||||||
|
WEBSITEURL: 'Az Ön webcíme'
|
||||||
|
SilverStripe\Comments\Model\Comment:
|
||||||
ALLOWCOMMENTS: 'Hozzászólások engedélyezve'
|
ALLOWCOMMENTS: 'Hozzászólások engedélyezve'
|
||||||
COMMENT: Hozzászólás
|
COMMENT: Hozzászólás
|
||||||
COMMENTBY: 'Létrehozta %s'
|
COMMENTBY: 'Létrehozta %s'
|
||||||
@ -12,46 +55,3 @@ hu:
|
|||||||
PLURALNAME: Hozzászólások
|
PLURALNAME: Hozzászólások
|
||||||
SINGULARNAME: Hozzászólás
|
SINGULARNAME: Hozzászólás
|
||||||
URL: Link
|
URL: Link
|
||||||
CommentAdmin:
|
|
||||||
ADMIN_PERMISSION: '''Hozzászólások'' mező elérése'
|
|
||||||
MENUTITLE: Hozzászólások
|
|
||||||
Moderated: Moderált
|
|
||||||
NeedsModeration: 'Moderálás szükséges'
|
|
||||||
CommentInterface:
|
|
||||||
COMMENT_MESSAGE_REQUIRED: 'Szöveg megadása'
|
|
||||||
COMMENT_MESSAGE_URL: 'Kérjük adjon meg egy működő linket'
|
|
||||||
EMAILADDRESS_MESSAGE_EMAIL: 'Kérjük adjon meg egy e-mail címet'
|
|
||||||
EMAILADDRESS_MESSAGE_REQUIRED: 'Kérjük adja meg az e-mail címét'
|
|
||||||
POST: Elküld
|
|
||||||
PREVIEW: Előnézet
|
|
||||||
PREVIEWLABEL: Előnézet
|
|
||||||
YOURNAME: 'Az Ön neve'
|
|
||||||
YOURNAME_MESSAGE_REQUIRED: 'Kérjük adja meg nevét'
|
|
||||||
CommentingController:
|
|
||||||
COMMENTS: A hosszászólás szövege
|
|
||||||
EMAILADDRESS: 'Az Ön e-mail címe (nem látható)'
|
|
||||||
PERMISSIONFAILURE: 'Ön csak a bejelentkezést követően, és a megfelelő jogosultság birtokában hozhat létre hozzászólást.'
|
|
||||||
RSSTITLE: 'Hozzászólások RSS-ben'
|
|
||||||
WEBSITEURL: 'Az Ön webcíme'
|
|
||||||
CommentsAdmin:
|
|
||||||
NeedsModeration: 'Moderálás szükséges'
|
|
||||||
CommentsInterface_pendingcomment_ss:
|
|
||||||
AWAITINGMODERATION: 'Hozzászólását moderálásra továbbítottuk'
|
|
||||||
CommentsInterface_singlecomment_ss:
|
|
||||||
PBY: 'Feladó'
|
|
||||||
CommentsInterface_ss:
|
|
||||||
AWAITINGMODERATION: 'Hozzászólását moderálásra továbbítottuk'
|
|
||||||
COMMENTLOGINERROR: 'A hozzászóláshoz be kell jelentkeznie'
|
|
||||||
COMMENTPERMISSIONERROR: 'és rendelkeznie kell a megfelelő jogosultsággal'
|
|
||||||
COMMENTPOSTLOGIN: 'Bejelentkezés'
|
|
||||||
COMMENTS: Hozzászólások
|
|
||||||
COMMENTSDISABLED: 'A hozzászólások le vannak tiltva '
|
|
||||||
LOGINTOPOSTCOMMENT: 'A hozzászóláshoz jelentkezzen be '
|
|
||||||
NEXT: következő
|
|
||||||
NOCOMMENTSYET: 'Nem érkeztek hozzászólások'
|
|
||||||
POSTCOM: 'Küldjön egy hozzászólást'
|
|
||||||
PREV: előző
|
|
||||||
RSSFEEDALLCOMMENTS: 'Összes hozzászólás RSS-ben'
|
|
||||||
RSSFEEDCOMMENTS: 'Oldal hozzászólásai RSS-ben'
|
|
||||||
PageCommentInterface:
|
|
||||||
DELETEALLCOMMENTS: 'Oldal összes hozzászólásának törlése'
|
|
||||||
|
46
lang/id.yml
46
lang/id.yml
@ -1,21 +1,4 @@
|
|||||||
id:
|
id:
|
||||||
Comment:
|
|
||||||
ALLOWCOMMENTS: 'Bolehkan Komentar'
|
|
||||||
COMMENT: Komentar
|
|
||||||
COMMENTBY: 'Komentar oleh %s'
|
|
||||||
CREATED: 'Tanggal kirim'
|
|
||||||
EMAIL: Email
|
|
||||||
ISSPAM: 'Spam?'
|
|
||||||
MODERATED: 'Moderasi?'
|
|
||||||
NAME: 'Nama Penulis'
|
|
||||||
PARENTTITLE: Induk
|
|
||||||
PLURALNAME: Komentar
|
|
||||||
SINGULARNAME: Komentar
|
|
||||||
URL: URL
|
|
||||||
CommentAdmin:
|
|
||||||
MENUTITLE: Komentar
|
|
||||||
Moderated: Dimoderasi
|
|
||||||
NeedsModeration: 'Perlu Moderasi'
|
|
||||||
CommentInterface:
|
CommentInterface:
|
||||||
COMMENT_MESSAGE_REQUIRED: 'Ketikkan komentar Anda'
|
COMMENT_MESSAGE_REQUIRED: 'Ketikkan komentar Anda'
|
||||||
COMMENT_MESSAGE_URL: 'Isikan URL yang valid'
|
COMMENT_MESSAGE_URL: 'Isikan URL yang valid'
|
||||||
@ -26,12 +9,6 @@ id:
|
|||||||
PREVIEWLABEL: Pratinjau
|
PREVIEWLABEL: Pratinjau
|
||||||
YOURNAME: 'Nama Anda'
|
YOURNAME: 'Nama Anda'
|
||||||
YOURNAME_MESSAGE_REQUIRED: 'Isikan nama Anda'
|
YOURNAME_MESSAGE_REQUIRED: 'Isikan nama Anda'
|
||||||
CommentingController:
|
|
||||||
COMMENTS: Komentar
|
|
||||||
EMAILADDRESS: 'Alamat email Anda (tidak akan diterbitkan)'
|
|
||||||
PERMISSIONFAILURE: 'Anda tidak dapat mengomentari laman ini. Mohon pastikan Anda sudah login dan mendapatkan hak akses yang sesuai.'
|
|
||||||
RSSTITLE: 'Sindikasi RSS Komentar'
|
|
||||||
WEBSITEURL: 'URL situs Anda'
|
|
||||||
CommentsAdmin:
|
CommentsAdmin:
|
||||||
NeedsModeration: 'Perlu Moderasi'
|
NeedsModeration: 'Perlu Moderasi'
|
||||||
CommentsInterface_pendingcomment_ss:
|
CommentsInterface_pendingcomment_ss:
|
||||||
@ -54,3 +31,26 @@ id:
|
|||||||
RSSFEEDCOMMENTS: 'Sindikasi RSS untuk komentar di laman ini'
|
RSSFEEDCOMMENTS: 'Sindikasi RSS untuk komentar di laman ini'
|
||||||
PageCommentInterface:
|
PageCommentInterface:
|
||||||
DELETEALLCOMMENTS: 'Hapus semua komentar di laman ini'
|
DELETEALLCOMMENTS: 'Hapus semua komentar di laman ini'
|
||||||
|
SilverStripe\Comments\Admin\CommentAdmin:
|
||||||
|
MENUTITLE: Komentar
|
||||||
|
Moderated: Dimoderasi
|
||||||
|
NeedsModeration: 'Perlu Moderasi'
|
||||||
|
SilverStripe\Comments\Controllers\CommentingController:
|
||||||
|
COMMENTS: Komentar
|
||||||
|
EMAILADDRESS: 'Alamat email Anda (tidak akan diterbitkan)'
|
||||||
|
PERMISSIONFAILURE: 'Anda tidak dapat mengomentari laman ini. Mohon pastikan Anda sudah login dan mendapatkan hak akses yang sesuai.'
|
||||||
|
RSSTITLE: 'Sindikasi RSS Komentar'
|
||||||
|
WEBSITEURL: 'URL situs Anda'
|
||||||
|
SilverStripe\Comments\Model\Comment:
|
||||||
|
ALLOWCOMMENTS: 'Bolehkan Komentar'
|
||||||
|
COMMENT: Komentar
|
||||||
|
COMMENTBY: 'Komentar oleh %s'
|
||||||
|
CREATED: 'Tanggal kirim'
|
||||||
|
EMAIL: Email
|
||||||
|
ISSPAM: 'Spam?'
|
||||||
|
MODERATED: 'Moderasi?'
|
||||||
|
NAME: 'Nama Penulis'
|
||||||
|
PARENTTITLE: Induk
|
||||||
|
PLURALNAME: Komentar
|
||||||
|
SINGULARNAME: Komentar
|
||||||
|
URL: URL
|
||||||
|
82
lang/lt.yml
82
lang/lt.yml
@ -1,29 +1,4 @@
|
|||||||
lt:
|
lt:
|
||||||
Comment:
|
|
||||||
ALLOWCOMMENTS: 'Leisti komentarus'
|
|
||||||
COMMENT: Komentaras
|
|
||||||
COMMENTBY: 'Komentarą parašė ''%s'''
|
|
||||||
CREATED: 'Paskelbimo data'
|
|
||||||
EMAIL: E. paštas
|
|
||||||
ISSPAM: 'Šlamštas?'
|
|
||||||
MODERATED: 'Patvirtintas?'
|
|
||||||
NAME: 'Autoriaus Vardas'
|
|
||||||
'ON': 'į'
|
|
||||||
OPTION_DESCRIPTION: 'Nepatvirtinti komentarai nebus rodomi, kol jie atskirai nebus patvirtinti'
|
|
||||||
PARENTTITLE: Priklauso
|
|
||||||
PLURALNAME: Komentarai
|
|
||||||
ParentComment_Title: 'Šis komentaras yra atsakymas į žemiau esantį'
|
|
||||||
SINGULARNAME: Komentaras
|
|
||||||
URL: URL adresas
|
|
||||||
CommentAdmin:
|
|
||||||
ADMIN_PERMISSION: 'Patekti į ''Komentarų'' dalį'
|
|
||||||
ApprovedComments: Patvirtinti
|
|
||||||
Comments: Patvirtinti
|
|
||||||
MENUTITLE: Komentarai
|
|
||||||
Moderated: Patvirtinti
|
|
||||||
NeedsModeration: 'Laukia patvirtinimo'
|
|
||||||
NewComments: Nauji
|
|
||||||
SpamComments: Šlamštas
|
|
||||||
CommentInterface:
|
CommentInterface:
|
||||||
COMMENT_MESSAGE_REQUIRED: 'Prašome parašyti savo komentarą'
|
COMMENT_MESSAGE_REQUIRED: 'Prašome parašyti savo komentarą'
|
||||||
COMMENT_MESSAGE_URL: 'Prašome įvesti teisingą URL adresą'
|
COMMENT_MESSAGE_URL: 'Prašome įvesti teisingą URL adresą'
|
||||||
@ -34,12 +9,6 @@ lt:
|
|||||||
PREVIEWLABEL: Peržiūra
|
PREVIEWLABEL: Peržiūra
|
||||||
YOURNAME: 'Jūsų vardas'
|
YOURNAME: 'Jūsų vardas'
|
||||||
YOURNAME_MESSAGE_REQUIRED: 'Prašome įvesti savo vardą'
|
YOURNAME_MESSAGE_REQUIRED: 'Prašome įvesti savo vardą'
|
||||||
CommentingController:
|
|
||||||
COMMENTS: Komentarai
|
|
||||||
EMAILADDRESS: 'Jūsų el.pašto adresas (nebus skelbiamas)'
|
|
||||||
PERMISSIONFAILURE: 'Jūs negalite skelbti komentarų šiame puslapyje. Įsitikinkite, kad esate prisijungęs ir turite atitinkamą teisių lygį.'
|
|
||||||
RSSTITLE: 'Komentarų RSS srautas'
|
|
||||||
WEBSITEURL: 'Jūsų svetainės nuoroda'
|
|
||||||
Comments:
|
Comments:
|
||||||
COMMENTSREQUIRELOGIN: 'Būtina prisijungti komentavimui'
|
COMMENTSREQUIRELOGIN: 'Būtina prisijungti komentavimui'
|
||||||
CommentsAdmin:
|
CommentsAdmin:
|
||||||
@ -47,20 +16,15 @@ lt:
|
|||||||
Comments: Patvirtinti
|
Comments: Patvirtinti
|
||||||
NeedsModeration: 'Laukia patvirtinimo'
|
NeedsModeration: 'Laukia patvirtinimo'
|
||||||
NewComments: Nauji
|
NewComments: Nauji
|
||||||
SpamComments: Šlamštas
|
SpamComments: 'Šlamštas'
|
||||||
CommentsExtension:
|
|
||||||
COMMENTOPTIONS: Komentarai
|
|
||||||
MODERATIONREQUIRED_NONE: 'Nereikalauja patvirtinimo'
|
|
||||||
MODERATIONREQUIRED_NONMEMBERSONLY: 'Tvirtinti tik neregistruotų vartotojų'
|
|
||||||
MODERATIONREQUIRED_REQUIRED: 'Tvirtinti visus komentarus'
|
|
||||||
CommentsInterface_pendingcomment_ss:
|
CommentsInterface_pendingcomment_ss:
|
||||||
AWAITINGMODERATION: 'Jūsų komentaras išsiųstas ir laukia patvirtinimo.'
|
AWAITINGMODERATION: 'Jūsų komentaras išsiųstas ir laukia patvirtinimo.'
|
||||||
CommentsInterface_singlecomment_ss:
|
CommentsInterface_singlecomment_ss:
|
||||||
APPROVE: 'patvirtinti'
|
APPROVE: patvirtinti
|
||||||
ISNTSPAM: 'ne šlamštas'
|
ISNTSPAM: 'ne šlamštas'
|
||||||
ISSPAM: 'šlamštas'
|
ISSPAM: šlamštas
|
||||||
PBY: 'Paskelbė'
|
PBY: Paskelbė
|
||||||
REMCOM: 'ištrinti'
|
REMCOM: ištrinti
|
||||||
CommentsInterface_ss:
|
CommentsInterface_ss:
|
||||||
AWAITINGMODERATION: 'Jūsų komentaras išsiųstas ir laukia patvirtinimo.'
|
AWAITINGMODERATION: 'Jūsų komentaras išsiųstas ir laukia patvirtinimo.'
|
||||||
COMMENTLOGINERROR: 'Negalite rašyti komentarų, jeigu nesate prisijungę'
|
COMMENTLOGINERROR: 'Negalite rašyti komentarų, jeigu nesate prisijungę'
|
||||||
@ -78,3 +42,39 @@ lt:
|
|||||||
RSSFEEDCOMMENTS: 'Šio puslapio komentarų RSS'
|
RSSFEEDCOMMENTS: 'Šio puslapio komentarų RSS'
|
||||||
PageCommentInterface:
|
PageCommentInterface:
|
||||||
DELETEALLCOMMENTS: 'Ištrinti visus komentarus šiame puslapyje'
|
DELETEALLCOMMENTS: 'Ištrinti visus komentarus šiame puslapyje'
|
||||||
|
SilverStripe\Comments\Admin\CommentAdmin:
|
||||||
|
ADMIN_PERMISSION: 'Patekti į ''Komentarų'' dalį'
|
||||||
|
ApprovedComments: Patvirtinti
|
||||||
|
Comments: Patvirtinti
|
||||||
|
MENUTITLE: Komentarai
|
||||||
|
Moderated: Patvirtinti
|
||||||
|
NeedsModeration: 'Laukia patvirtinimo'
|
||||||
|
NewComments: Nauji
|
||||||
|
SpamComments: 'Šlamštas'
|
||||||
|
SilverStripe\Comments\Controllers\CommentingController:
|
||||||
|
COMMENTS: Komentarai
|
||||||
|
EMAILADDRESS: 'Jūsų el.pašto adresas (nebus skelbiamas)'
|
||||||
|
PERMISSIONFAILURE: 'Jūs negalite skelbti komentarų šiame puslapyje. Įsitikinkite, kad esate prisijungęs ir turite atitinkamą teisių lygį.'
|
||||||
|
RSSTITLE: 'Komentarų RSS srautas'
|
||||||
|
WEBSITEURL: 'Jūsų svetainės nuoroda'
|
||||||
|
SilverStripe\Comments\Extensions\CommentsExtension:
|
||||||
|
COMMENTOPTIONS: Komentarai
|
||||||
|
MODERATIONREQUIRED_NONE: 'Nereikalauja patvirtinimo'
|
||||||
|
MODERATIONREQUIRED_NONMEMBERSONLY: 'Tvirtinti tik neregistruotų vartotojų'
|
||||||
|
MODERATIONREQUIRED_REQUIRED: 'Tvirtinti visus komentarus'
|
||||||
|
SilverStripe\Comments\Model\Comment:
|
||||||
|
ALLOWCOMMENTS: 'Leisti komentarus'
|
||||||
|
COMMENT: Komentaras
|
||||||
|
COMMENTBY: 'Komentarą parašė ''%s'''
|
||||||
|
CREATED: 'Paskelbimo data'
|
||||||
|
EMAIL: 'E. paštas'
|
||||||
|
ISSPAM: 'Šlamštas?'
|
||||||
|
MODERATED: 'Patvirtintas?'
|
||||||
|
NAME: 'Autoriaus Vardas'
|
||||||
|
'ON': į
|
||||||
|
OPTION_DESCRIPTION: 'Nepatvirtinti komentarai nebus rodomi, kol jie atskirai nebus patvirtinti'
|
||||||
|
PARENTTITLE: Priklauso
|
||||||
|
PLURALNAME: Komentarai
|
||||||
|
ParentComment_Title: 'Šis komentaras yra atsakymas į žemiau esantį'
|
||||||
|
SINGULARNAME: Komentaras
|
||||||
|
URL: 'URL adresas'
|
||||||
|
40
lang/nb.yml
40
lang/nb.yml
@ -1,25 +1,7 @@
|
|||||||
nb:
|
nb:
|
||||||
Comment:
|
|
||||||
ALLOWCOMMENTS: 'Tillat kommentarer'
|
|
||||||
COMMENT: Kommentar
|
|
||||||
ISSPAM: 'Spam?'
|
|
||||||
MODERATED: 'Moderert?'
|
|
||||||
NAME: 'Navn'
|
|
||||||
PLURALNAME: Kommentarer
|
|
||||||
SINGULARNAME: Kommentar
|
|
||||||
CommentAdmin:
|
|
||||||
MENUTITLE: Kommentarer
|
|
||||||
Moderated: Moderert
|
|
||||||
NeedsModeration: 'Trenger moderering'
|
|
||||||
CommentInterface:
|
CommentInterface:
|
||||||
POST: Legg ut
|
POST: 'Legg ut'
|
||||||
YOURNAME: 'Navn'
|
YOURNAME: Navn
|
||||||
CommentingController:
|
|
||||||
COMMENTS: Kommentar
|
|
||||||
EMAILADDRESS: 'Epostadresse (blir ikke publisert)'
|
|
||||||
PERMISSIONFAILURE: 'Du kan ikke kommentere på denne siden. Vennligst sjekk at du er innlogget og har et passende tilgangsnivå.'
|
|
||||||
RSSTITLE: 'RSS-feed for kommentarer'
|
|
||||||
WEBSITEURL: 'Hjemmeside'
|
|
||||||
CommentsAdmin:
|
CommentsAdmin:
|
||||||
NeedsModeration: 'Trenger moderering'
|
NeedsModeration: 'Trenger moderering'
|
||||||
CommentsInterface_pendingcomment_ss:
|
CommentsInterface_pendingcomment_ss:
|
||||||
@ -41,3 +23,21 @@ nb:
|
|||||||
RSSFEEDCOMMENTS: 'RSS-feed for kommentarer på denne siden'
|
RSSFEEDCOMMENTS: 'RSS-feed for kommentarer på denne siden'
|
||||||
PageCommentInterface:
|
PageCommentInterface:
|
||||||
DELETEALLCOMMENTS: 'Fjern alle kommentarer på denne siden'
|
DELETEALLCOMMENTS: 'Fjern alle kommentarer på denne siden'
|
||||||
|
SilverStripe\Comments\Admin\CommentAdmin:
|
||||||
|
MENUTITLE: Kommentarer
|
||||||
|
Moderated: Moderert
|
||||||
|
NeedsModeration: 'Trenger moderering'
|
||||||
|
SilverStripe\Comments\Controllers\CommentingController:
|
||||||
|
COMMENTS: Kommentar
|
||||||
|
EMAILADDRESS: 'Epostadresse (blir ikke publisert)'
|
||||||
|
PERMISSIONFAILURE: 'Du kan ikke kommentere på denne siden. Vennligst sjekk at du er innlogget og har et passende tilgangsnivå.'
|
||||||
|
RSSTITLE: 'RSS-feed for kommentarer'
|
||||||
|
WEBSITEURL: Hjemmeside
|
||||||
|
SilverStripe\Comments\Model\Comment:
|
||||||
|
ALLOWCOMMENTS: 'Tillat kommentarer'
|
||||||
|
COMMENT: Kommentar
|
||||||
|
ISSPAM: 'Spam?'
|
||||||
|
MODERATED: 'Moderert?'
|
||||||
|
NAME: Navn
|
||||||
|
PLURALNAME: Kommentarer
|
||||||
|
SINGULARNAME: Kommentar
|
||||||
|
48
lang/nl.yml
48
lang/nl.yml
@ -1,30 +1,9 @@
|
|||||||
nl:
|
nl:
|
||||||
Comment:
|
|
||||||
ALLOWCOMMENTS: 'Reacties toestaan'
|
|
||||||
COMMENT: Reactie
|
|
||||||
ISSPAM: 'Spam?'
|
|
||||||
MODERATED: 'Gemodereerd?'
|
|
||||||
NAME: 'Auteur'
|
|
||||||
'ON': 'op'
|
|
||||||
PLURALNAME: Reacties
|
|
||||||
SINGULARNAME: Reactie
|
|
||||||
CommentAdmin:
|
|
||||||
MENUTITLE: Reacties
|
|
||||||
Moderated: Gemodereerd
|
|
||||||
NeedsModeration: 'Wacht op moderatie'
|
|
||||||
CommentInterface:
|
CommentInterface:
|
||||||
POST: Plaats reactie
|
POST: 'Plaats reactie'
|
||||||
YOURNAME: 'Naam'
|
YOURNAME: Naam
|
||||||
CommentingController:
|
|
||||||
COMMENTS: Reacties
|
|
||||||
EMAILADDRESS: 'E-mail adres (wordt niet gepubliceerd)'
|
|
||||||
PERMISSIONFAILURE: 'Je mag geen reacties plaatsen op deze pagina. Log a.u.b. eerst in en controleer je gebruikersrechten.'
|
|
||||||
RSSTITLE: 'Reacties RSS feed'
|
|
||||||
WEBSITEURL: 'Website URL'
|
|
||||||
CommentsAdmin:
|
CommentsAdmin:
|
||||||
NeedsModeration: 'Wacht op moderatie'
|
NeedsModeration: 'Wacht op moderatie'
|
||||||
CommentsExtension:
|
|
||||||
COMMENTOPTIONS: Reacties
|
|
||||||
CommentsInterface_pendingcomment_ss:
|
CommentsInterface_pendingcomment_ss:
|
||||||
AWAITINGMODERATION: 'Je reactie is verstuurd en is in afwachting van moderatie.'
|
AWAITINGMODERATION: 'Je reactie is verstuurd en is in afwachting van moderatie.'
|
||||||
CommentsInterface_singlecomment_ss:
|
CommentsInterface_singlecomment_ss:
|
||||||
@ -32,7 +11,7 @@ nl:
|
|||||||
CommentsInterface_ss:
|
CommentsInterface_ss:
|
||||||
COMMENTLOGINERROR: 'Je moet ingelogd zijn om reacties te kunnen plaatsen'
|
COMMENTLOGINERROR: 'Je moet ingelogd zijn om reacties te kunnen plaatsen'
|
||||||
COMMENTPERMISSIONERROR: 'en controleer je gebruikersrechten'
|
COMMENTPERMISSIONERROR: 'en controleer je gebruikersrechten'
|
||||||
COMMENTPOSTLOGIN: 'Inloggen'
|
COMMENTPOSTLOGIN: Inloggen
|
||||||
COMMENTS: Reacties
|
COMMENTS: Reacties
|
||||||
COMMENTSDISABLED: 'Reacties plaatsen is uitgeschakeld'
|
COMMENTSDISABLED: 'Reacties plaatsen is uitgeschakeld'
|
||||||
LOGINTOPOSTCOMMENT: 'Log in om een reactie te plaatsen'
|
LOGINTOPOSTCOMMENT: 'Log in om een reactie te plaatsen'
|
||||||
@ -44,3 +23,24 @@ nl:
|
|||||||
RSSFEEDCOMMENTS: 'RSS feed voor reacties op deze pagina'
|
RSSFEEDCOMMENTS: 'RSS feed voor reacties op deze pagina'
|
||||||
PageCommentInterface:
|
PageCommentInterface:
|
||||||
DELETEALLCOMMENTS: 'Verwijder alle reacties op deze pagina'
|
DELETEALLCOMMENTS: 'Verwijder alle reacties op deze pagina'
|
||||||
|
SilverStripe\Comments\Admin\CommentAdmin:
|
||||||
|
MENUTITLE: Reacties
|
||||||
|
Moderated: Gemodereerd
|
||||||
|
NeedsModeration: 'Wacht op moderatie'
|
||||||
|
SilverStripe\Comments\Controllers\CommentingController:
|
||||||
|
COMMENTS: Reacties
|
||||||
|
EMAILADDRESS: 'E-mail adres (wordt niet gepubliceerd)'
|
||||||
|
PERMISSIONFAILURE: 'Je mag geen reacties plaatsen op deze pagina. Log a.u.b. eerst in en controleer je gebruikersrechten.'
|
||||||
|
RSSTITLE: 'Reacties RSS feed'
|
||||||
|
WEBSITEURL: 'Website URL'
|
||||||
|
SilverStripe\Comments\Extensions\CommentsExtension:
|
||||||
|
COMMENTOPTIONS: Reacties
|
||||||
|
SilverStripe\Comments\Model\Comment:
|
||||||
|
ALLOWCOMMENTS: 'Reacties toestaan'
|
||||||
|
COMMENT: Reactie
|
||||||
|
ISSPAM: 'Spam?'
|
||||||
|
MODERATED: 'Gemodereerd?'
|
||||||
|
NAME: Auteur
|
||||||
|
'ON': op
|
||||||
|
PLURALNAME: Reacties
|
||||||
|
SINGULARNAME: Reactie
|
||||||
|
@ -1,45 +1,14 @@
|
|||||||
pl_PL:
|
pl_PL:
|
||||||
Comment:
|
|
||||||
ALLOWCOMMENTS: 'Zezwól na komentarze'
|
|
||||||
COMMENT: Komentarz
|
|
||||||
COMMENTBY: 'Komentarz %s'
|
|
||||||
CREATED: 'Data opublikowania'
|
|
||||||
EMAIL: Email
|
|
||||||
ISSPAM: 'Spam?'
|
|
||||||
MODERATED: 'Moderowane?'
|
|
||||||
NAME: 'Autor'
|
|
||||||
'ON': 'na'
|
|
||||||
OPTION_DESCRIPTION: 'Niemoderowane i oznaczone jako spam komentarze nie będą wyświetlane do momentu zatwierdzenia'
|
|
||||||
PARENTTITLE: Rodzic
|
|
||||||
PLURALNAME: Komentarze
|
|
||||||
ParentComment_Title: 'Ten komentarz jest odpowiedzią na komentarz poniżej'
|
|
||||||
SINGULARNAME: Komentarz
|
|
||||||
URL: URL
|
|
||||||
CommentAdmin:
|
|
||||||
ADMIN_PERMISSION: 'Dostęp do sekcji "Komentarze"'
|
|
||||||
ApprovedComments: Zatwierdzone
|
|
||||||
Comments: Zatwierdzone
|
|
||||||
MENUTITLE: Komentarze
|
|
||||||
Moderated: Moderowane
|
|
||||||
NeedsModeration: 'Wymaga moderacji'
|
|
||||||
NewComments: Nowy
|
|
||||||
SpamComments: Spam
|
|
||||||
CommentInterface:
|
CommentInterface:
|
||||||
COMMENT_MESSAGE_REQUIRED: 'Wprowadź swój komentarz'
|
COMMENT_MESSAGE_REQUIRED: 'Wprowadź swój komentarz'
|
||||||
COMMENT_MESSAGE_URL: 'Wprowadź poprawny adres URL'
|
COMMENT_MESSAGE_URL: 'Wprowadź poprawny adres URL'
|
||||||
EMAILADDRESS_MESSAGE_EMAIL: 'Wprowadź poprawny adres email'
|
EMAILADDRESS_MESSAGE_EMAIL: 'Wprowadź poprawny adres email'
|
||||||
EMAILADDRESS_MESSAGE_REQUIRED: 'Wprowadź swój adres email'
|
EMAILADDRESS_MESSAGE_REQUIRED: 'Wprowadź swój adres email'
|
||||||
POST: Wyślij
|
POST: Wyślij
|
||||||
PREVIEW: Podgląd
|
PREVIEW: 'Podgląd'
|
||||||
PREVIEWLABEL: Podgląd
|
PREVIEWLABEL: 'Podgląd'
|
||||||
YOURNAME: 'Twoja nazwa'
|
YOURNAME: 'Twoja nazwa'
|
||||||
YOURNAME_MESSAGE_REQUIRED: 'Wprowadź swoje imie'
|
YOURNAME_MESSAGE_REQUIRED: 'Wprowadź swoje imie'
|
||||||
CommentingController:
|
|
||||||
COMMENTS: Komentarze
|
|
||||||
EMAILADDRESS: 'Twój adres email (nie będzie widoczny)'
|
|
||||||
PERMISSIONFAILURE: 'Nie można dodać komentarza na tej stronie. Upewnij się, że jesteś zalogowany i masz odpowednie uprawnienia.'
|
|
||||||
RSSTITLE: 'Komentarze z RSS'
|
|
||||||
WEBSITEURL: 'Adres Twojej strony'
|
|
||||||
Comments:
|
Comments:
|
||||||
COMMENTSREQUIRELOGIN: 'Zaloguj się aby dodać komentarz'
|
COMMENTSREQUIRELOGIN: 'Zaloguj się aby dodać komentarz'
|
||||||
CommentsAdmin:
|
CommentsAdmin:
|
||||||
@ -48,24 +17,19 @@ pl_PL:
|
|||||||
NeedsModeration: 'Wymagają moderacji'
|
NeedsModeration: 'Wymagają moderacji'
|
||||||
NewComments: Nowe
|
NewComments: Nowe
|
||||||
SpamComments: Spam
|
SpamComments: Spam
|
||||||
CommentsExtension:
|
|
||||||
COMMENTOPTIONS: Komentarze
|
|
||||||
MODERATIONREQUIRED_NONE: 'Komentarze nie wymagają moderacji'
|
|
||||||
MODERATIONREQUIRED_NONMEMBERSONLY: 'Moderuj tylko niezarejestrowanych użytkowników'
|
|
||||||
MODERATIONREQUIRED_REQUIRED: 'Moderuj wszystkie komentarze'
|
|
||||||
CommentsInterface_pendingcomment_ss:
|
CommentsInterface_pendingcomment_ss:
|
||||||
AWAITINGMODERATION: 'Twój komentarz został wysłany i czeka na akceptację przez moderatora.'
|
AWAITINGMODERATION: 'Twój komentarz został wysłany i czeka na akceptację przez moderatora.'
|
||||||
CommentsInterface_singlecomment_ss:
|
CommentsInterface_singlecomment_ss:
|
||||||
APPROVE: 'zatwierdź'
|
APPROVE: zatwierdź
|
||||||
ISNTSPAM: 'nie spam'
|
ISNTSPAM: 'nie spam'
|
||||||
ISSPAM: 'oznacz spam'
|
ISSPAM: 'oznacz spam'
|
||||||
PBY: 'Dodany przez'
|
PBY: 'Dodany przez'
|
||||||
REMCOM: 'odrzuć'
|
REMCOM: odrzuć
|
||||||
CommentsInterface_ss:
|
CommentsInterface_ss:
|
||||||
AWAITINGMODERATION: 'Twój komentarz został wysłany i czeka na akceptację przez moderatora.'
|
AWAITINGMODERATION: 'Twój komentarz został wysłany i czeka na akceptację przez moderatora.'
|
||||||
COMMENTLOGINERROR: 'Nie można dodać komentarza dopóki nie będziesz zalogowany'
|
COMMENTLOGINERROR: 'Nie można dodać komentarza dopóki nie będziesz zalogowany'
|
||||||
COMMENTPERMISSIONERROR: 'i że masz odpowiednie uprawnienia'
|
COMMENTPERMISSIONERROR: 'i że masz odpowiednie uprawnienia'
|
||||||
COMMENTPOSTLOGIN: 'Zaloguj'
|
COMMENTPOSTLOGIN: Zaloguj
|
||||||
COMMENTS: Komentarze
|
COMMENTS: Komentarze
|
||||||
COMMENTSDISABLED: 'Dodawanie komentarzy zostało wyłączone'
|
COMMENTSDISABLED: 'Dodawanie komentarzy zostało wyłączone'
|
||||||
DELETEALLCOMMENTS: 'Usuń wszystkie komentarze na tej stronie'
|
DELETEALLCOMMENTS: 'Usuń wszystkie komentarze na tej stronie'
|
||||||
@ -78,3 +42,39 @@ pl_PL:
|
|||||||
RSSFEEDCOMMENTS: 'Kanał RSS dla komentarzy na tej stronie'
|
RSSFEEDCOMMENTS: 'Kanał RSS dla komentarzy na tej stronie'
|
||||||
PageCommentInterface:
|
PageCommentInterface:
|
||||||
DELETEALLCOMMENTS: 'Usuń wszystkie komentarze na tej stronie'
|
DELETEALLCOMMENTS: 'Usuń wszystkie komentarze na tej stronie'
|
||||||
|
SilverStripe\Comments\Admin\CommentAdmin:
|
||||||
|
ADMIN_PERMISSION: 'Dostęp do sekcji "Komentarze"'
|
||||||
|
ApprovedComments: Zatwierdzone
|
||||||
|
Comments: Zatwierdzone
|
||||||
|
MENUTITLE: Komentarze
|
||||||
|
Moderated: Moderowane
|
||||||
|
NeedsModeration: 'Wymaga moderacji'
|
||||||
|
NewComments: Nowy
|
||||||
|
SpamComments: Spam
|
||||||
|
SilverStripe\Comments\Controllers\CommentingController:
|
||||||
|
COMMENTS: Komentarze
|
||||||
|
EMAILADDRESS: 'Twój adres email (nie będzie widoczny)'
|
||||||
|
PERMISSIONFAILURE: 'Nie można dodać komentarza na tej stronie. Upewnij się, że jesteś zalogowany i masz odpowednie uprawnienia.'
|
||||||
|
RSSTITLE: 'Komentarze z RSS'
|
||||||
|
WEBSITEURL: 'Adres Twojej strony'
|
||||||
|
SilverStripe\Comments\Extensions\CommentsExtension:
|
||||||
|
COMMENTOPTIONS: Komentarze
|
||||||
|
MODERATIONREQUIRED_NONE: 'Komentarze nie wymagają moderacji'
|
||||||
|
MODERATIONREQUIRED_NONMEMBERSONLY: 'Moderuj tylko niezarejestrowanych użytkowników'
|
||||||
|
MODERATIONREQUIRED_REQUIRED: 'Moderuj wszystkie komentarze'
|
||||||
|
SilverStripe\Comments\Model\Comment:
|
||||||
|
ALLOWCOMMENTS: 'Zezwól na komentarze'
|
||||||
|
COMMENT: Komentarz
|
||||||
|
COMMENTBY: 'Komentarz %s'
|
||||||
|
CREATED: 'Data opublikowania'
|
||||||
|
EMAIL: Email
|
||||||
|
ISSPAM: 'Spam?'
|
||||||
|
MODERATED: 'Moderowane?'
|
||||||
|
NAME: Autor
|
||||||
|
'ON': na
|
||||||
|
OPTION_DESCRIPTION: 'Niemoderowane i oznaczone jako spam komentarze nie będą wyświetlane do momentu zatwierdzenia'
|
||||||
|
PARENTTITLE: Rodzic
|
||||||
|
PLURALNAME: Komentarze
|
||||||
|
ParentComment_Title: 'Ten komentarz jest odpowiedzią na komentarz poniżej'
|
||||||
|
SINGULARNAME: Komentarz
|
||||||
|
URL: URL
|
||||||
|
86
lang/ro.yml
86
lang/ro.yml
@ -1,5 +1,47 @@
|
|||||||
ro:
|
ro:
|
||||||
Comment:
|
CommentInterface:
|
||||||
|
COMMENT_MESSAGE_REQUIRED: 'Vă rugăm să introduceți un comentariu'
|
||||||
|
COMMENT_MESSAGE_URL: 'Vă rugăm să introduceți un URL valid'
|
||||||
|
EMAILADDRESS_MESSAGE_EMAIL: 'Vă rugăm să introduceți uo adresă de e-mail validă'
|
||||||
|
EMAILADDRESS_MESSAGE_REQUIRED: 'Vă rugăm să vă introduceți adresa de e-mail'
|
||||||
|
POST: Publică
|
||||||
|
PREVIEW: 'Vizualizare înaintea publicării'
|
||||||
|
PREVIEWLABEL: 'Vizualizare înaintea publicării'
|
||||||
|
YOURNAME: 'Numele dvs.'
|
||||||
|
YOURNAME_MESSAGE_REQUIRED: 'Vă rugăm să vă introduceți numele'
|
||||||
|
CommentsAdmin:
|
||||||
|
NeedsModeration: 'Necesită moderare'
|
||||||
|
CommentsInterface_pendingcomment_ss:
|
||||||
|
AWAITINGMODERATION: 'Comentariul dvs. a fost trimis și așteaptă să fie moderat.'
|
||||||
|
CommentsInterface_singlecomment_ss:
|
||||||
|
PBY: 'Publicat de'
|
||||||
|
CommentsInterface_ss:
|
||||||
|
AWAITINGMODERATION: 'Comentariul dvs. a fost trimis și așteaptă să fie moderat.'
|
||||||
|
COMMENTLOGINERROR: 'Publicarea de comentarii necesită autentificare pe site'
|
||||||
|
COMMENTPERMISSIONERROR: 'și că aveți nivelul de permisiune corespunzător'
|
||||||
|
COMMENTPOSTLOGIN: Autentificare
|
||||||
|
COMMENTS: Comentarii
|
||||||
|
COMMENTSDISABLED: 'Postarea de comentarii a fost dezactivată'
|
||||||
|
LOGINTOPOSTCOMMENT: 'Autentificaţi-vă pentru a publica un comentariu'
|
||||||
|
NEXT: următorul
|
||||||
|
NOCOMMENTSYET: 'Nimeni nu a comentat încă pe aceasta pagină.'
|
||||||
|
POSTCOM: 'Publicaţi-vă comentariul'
|
||||||
|
PREV: anteriorul
|
||||||
|
RSSFEEDALLCOMMENTS: 'RSS pentru toate comentariile'
|
||||||
|
RSSFEEDCOMMENTS: 'RSS pentru comentariile de pe această pagină'
|
||||||
|
PageCommentInterface:
|
||||||
|
DELETEALLCOMMENTS: 'Ştergeţi toate comentariile de pe această pagină'
|
||||||
|
SilverStripe\Comments\Admin\CommentAdmin:
|
||||||
|
MENUTITLE: Commentarii
|
||||||
|
Moderated: Moderat
|
||||||
|
NeedsModeration: 'Necesită moderare'
|
||||||
|
SilverStripe\Comments\Controllers\CommentingController:
|
||||||
|
COMMENTS: Commentarii
|
||||||
|
EMAILADDRESS: 'Adresa dvs. de e-mail (nu va fi publicată)'
|
||||||
|
PERMISSIONFAILURE: 'Nu puteţi publica comentarii pe această pagină. Vă rugăm să vă asiguaţi că sunteți autentificat și că aveşi nivelul de permisiune corespunzător.'
|
||||||
|
RSSTITLE: 'RSS feed pentru comentarii'
|
||||||
|
WEBSITEURL: 'URL Site web'
|
||||||
|
SilverStripe\Comments\Model\Comment:
|
||||||
ALLOWCOMMENTS: 'Acceptare comentarii'
|
ALLOWCOMMENTS: 'Acceptare comentarii'
|
||||||
COMMENT: Comentariu
|
COMMENT: Comentariu
|
||||||
COMMENTBY: 'Comentat de %s'
|
COMMENTBY: 'Comentat de %s'
|
||||||
@ -12,45 +54,3 @@ ro:
|
|||||||
PLURALNAME: Comentarii
|
PLURALNAME: Comentarii
|
||||||
SINGULARNAME: Comentariu
|
SINGULARNAME: Comentariu
|
||||||
URL: URL
|
URL: URL
|
||||||
CommentAdmin:
|
|
||||||
MENUTITLE: Commentarii
|
|
||||||
Moderated: Moderat
|
|
||||||
NeedsModeration: 'Necesită moderare'
|
|
||||||
CommentInterface:
|
|
||||||
COMMENT_MESSAGE_REQUIRED: 'Vă rugăm să introduceți un comentariu'
|
|
||||||
COMMENT_MESSAGE_URL: 'Vă rugăm să introduceți un URL valid'
|
|
||||||
EMAILADDRESS_MESSAGE_EMAIL: 'Vă rugăm să introduceți uo adresă de e-mail validă'
|
|
||||||
EMAILADDRESS_MESSAGE_REQUIRED: 'Vă rugăm să vă introduceți adresa de e-mail'
|
|
||||||
POST: Publică
|
|
||||||
PREVIEW: Vizualizare înaintea publicării
|
|
||||||
PREVIEWLABEL: Vizualizare înaintea publicării
|
|
||||||
YOURNAME: 'Numele dvs.'
|
|
||||||
YOURNAME_MESSAGE_REQUIRED: 'Vă rugăm să vă introduceți numele'
|
|
||||||
CommentingController:
|
|
||||||
COMMENTS: Commentarii
|
|
||||||
EMAILADDRESS: 'Adresa dvs. de e-mail (nu va fi publicată)'
|
|
||||||
PERMISSIONFAILURE: 'Nu puteţi publica comentarii pe această pagină. Vă rugăm să vă asiguaţi că sunteți autentificat și că aveşi nivelul de permisiune corespunzător.'
|
|
||||||
RSSTITLE: 'RSS feed pentru comentarii'
|
|
||||||
WEBSITEURL: 'URL Site web'
|
|
||||||
CommentsAdmin:
|
|
||||||
NeedsModeration: 'Necesită moderare'
|
|
||||||
CommentsInterface_pendingcomment_ss:
|
|
||||||
AWAITINGMODERATION: 'Comentariul dvs. a fost trimis și așteaptă să fie moderat.'
|
|
||||||
CommentsInterface_singlecomment_ss:
|
|
||||||
PBY: 'Publicat de'
|
|
||||||
CommentsInterface_ss:
|
|
||||||
AWAITINGMODERATION: 'Comentariul dvs. a fost trimis și așteaptă să fie moderat.'
|
|
||||||
COMMENTLOGINERROR: 'Publicarea de comentarii necesită autentificare pe site'
|
|
||||||
COMMENTPERMISSIONERROR: 'și că aveți nivelul de permisiune corespunzător'
|
|
||||||
COMMENTPOSTLOGIN: 'Autentificare'
|
|
||||||
COMMENTS: Comentarii
|
|
||||||
COMMENTSDISABLED: 'Postarea de comentarii a fost dezactivată'
|
|
||||||
LOGINTOPOSTCOMMENT: 'Autentificaţi-vă pentru a publica un comentariu'
|
|
||||||
NEXT: următorul
|
|
||||||
NOCOMMENTSYET: 'Nimeni nu a comentat încă pe aceasta pagină.'
|
|
||||||
POSTCOM: 'Publicaţi-vă comentariul'
|
|
||||||
PREV: anteriorul
|
|
||||||
RSSFEEDALLCOMMENTS: 'RSS pentru toate comentariile'
|
|
||||||
RSSFEEDCOMMENTS: 'RSS pentru comentariile de pe această pagină'
|
|
||||||
PageCommentInterface:
|
|
||||||
DELETEALLCOMMENTS: 'Ştergeţi toate comentariile de pe această pagină'
|
|
||||||
|
46
lang/ru.yml
46
lang/ru.yml
@ -1,21 +1,4 @@
|
|||||||
ru:
|
ru:
|
||||||
Comment:
|
|
||||||
ALLOWCOMMENTS: 'Разрешить комментарии'
|
|
||||||
COMMENT: Комментарий
|
|
||||||
COMMENTBY: 'Комментарий автора %s'
|
|
||||||
CREATED: 'Дата добавления'
|
|
||||||
EMAIL: Email
|
|
||||||
ISSPAM: 'Спам?'
|
|
||||||
MODERATED: 'Проверено?'
|
|
||||||
NAME: 'Автор'
|
|
||||||
PARENTTITLE: Родительская
|
|
||||||
PLURALNAME: Комментарии
|
|
||||||
SINGULARNAME: Комментарий
|
|
||||||
URL: URL
|
|
||||||
CommentAdmin:
|
|
||||||
MENUTITLE: Комментарии
|
|
||||||
NewComments: Новый
|
|
||||||
SpamComments: Спам
|
|
||||||
CommentInterface:
|
CommentInterface:
|
||||||
COMMENT_MESSAGE_URL: 'Пожалуйста, задайте действительный URL-адрес'
|
COMMENT_MESSAGE_URL: 'Пожалуйста, задайте действительный URL-адрес'
|
||||||
EMAILADDRESS_MESSAGE_EMAIL: 'Пожалуйста, укажите действительный электронный адрес'
|
EMAILADDRESS_MESSAGE_EMAIL: 'Пожалуйста, укажите действительный электронный адрес'
|
||||||
@ -23,13 +6,8 @@ ru:
|
|||||||
POST: Отправить
|
POST: Отправить
|
||||||
PREVIEW: Просмотр
|
PREVIEW: Просмотр
|
||||||
PREVIEWLABEL: Просмотр
|
PREVIEWLABEL: Просмотр
|
||||||
YOURNAME: 'Имя'
|
YOURNAME: Имя
|
||||||
YOURNAME_MESSAGE_REQUIRED: 'Пожалуйста, укажите своё имя'
|
YOURNAME_MESSAGE_REQUIRED: 'Пожалуйста, укажите своё имя'
|
||||||
CommentingController:
|
|
||||||
COMMENTS: Комментарии
|
|
||||||
EMAILADDRESS: 'Ваш электронный адрес (не будет опубликован)'
|
|
||||||
RSSTITLE: 'RSS-лента комментариев'
|
|
||||||
WEBSITEURL: 'Адрес вашего сайта'
|
|
||||||
CommentsInterface_pendingcomment_ss:
|
CommentsInterface_pendingcomment_ss:
|
||||||
AWAITINGMODERATION: 'Ваш комментарий отправлен и ожидает проверки.'
|
AWAITINGMODERATION: 'Ваш комментарий отправлен и ожидает проверки.'
|
||||||
CommentsInterface_singlecomment_ss:
|
CommentsInterface_singlecomment_ss:
|
||||||
@ -44,3 +22,25 @@ ru:
|
|||||||
NOCOMMENTSYET: 'Комментариев на этой странице пока нет.'
|
NOCOMMENTSYET: 'Комментариев на этой странице пока нет.'
|
||||||
PageCommentInterface:
|
PageCommentInterface:
|
||||||
DELETEALLCOMMENTS: 'Удалить все комментарии на этой странице'
|
DELETEALLCOMMENTS: 'Удалить все комментарии на этой странице'
|
||||||
|
SilverStripe\Comments\Admin\CommentAdmin:
|
||||||
|
MENUTITLE: Комментарии
|
||||||
|
NewComments: Новый
|
||||||
|
SpamComments: Спам
|
||||||
|
SilverStripe\Comments\Controllers\CommentingController:
|
||||||
|
COMMENTS: Комментарии
|
||||||
|
EMAILADDRESS: 'Ваш электронный адрес (не будет опубликован)'
|
||||||
|
RSSTITLE: 'RSS-лента комментариев'
|
||||||
|
WEBSITEURL: 'Адрес вашего сайта'
|
||||||
|
SilverStripe\Comments\Model\Comment:
|
||||||
|
ALLOWCOMMENTS: 'Разрешить комментарии'
|
||||||
|
COMMENT: Комментарий
|
||||||
|
COMMENTBY: 'Комментарий автора %s'
|
||||||
|
CREATED: 'Дата добавления'
|
||||||
|
EMAIL: Email
|
||||||
|
ISSPAM: 'Спам?'
|
||||||
|
MODERATED: 'Проверено?'
|
||||||
|
NAME: Автор
|
||||||
|
PARENTTITLE: 'Родительская'
|
||||||
|
PLURALNAME: Комментарии
|
||||||
|
SINGULARNAME: Комментарий
|
||||||
|
URL: URL
|
||||||
|
@ -1,5 +1,28 @@
|
|||||||
sk_SK:
|
sk_SK:
|
||||||
Comment:
|
CommentInterface:
|
||||||
|
COMMENT_MESSAGE_REQUIRED: 'Pridaj scoj komentár'
|
||||||
|
COMMENT_MESSAGE_URL: 'Vlož platbú adresu URL'
|
||||||
|
POST: Odoslať
|
||||||
|
PREVIEW: Náhľad
|
||||||
|
PREVIEWLABEL: Náhľad
|
||||||
|
YOURNAME: 'Vaše meno'
|
||||||
|
YOURNAME_MESSAGE_REQUIRED: 'Vlož svoje meno'
|
||||||
|
CommentsAdmin:
|
||||||
|
NeedsModeration: 'Vyžaduje schválenie'
|
||||||
|
CommentsInterface_ss:
|
||||||
|
COMMENTLOGINERROR: 'Komentáre môže pridávať len prihlásený užívateľ'
|
||||||
|
COMMENTS: Komentáre
|
||||||
|
COMMENTSDISABLED: 'Už nie je možné pridávať nové komentáre'
|
||||||
|
SilverStripe\Comments\Admin\CommentAdmin:
|
||||||
|
MENUTITLE: Komentáre
|
||||||
|
Moderated: Odsúhlasený
|
||||||
|
NeedsModeration: 'Vyžaduje odsúhlasenie'
|
||||||
|
SilverStripe\Comments\Controllers\CommentingController:
|
||||||
|
COMMENTS: Komentáre
|
||||||
|
EMAILADDRESS: 'Váš e-mail (nebude zverejnený)'
|
||||||
|
RSSTITLE: 'RSS feed komentárov'
|
||||||
|
WEBSITEURL: 'Vaša web stránka'
|
||||||
|
SilverStripe\Comments\Model\Comment:
|
||||||
ALLOWCOMMENTS: 'Povoliť komentáre'
|
ALLOWCOMMENTS: 'Povoliť komentáre'
|
||||||
COMMENT: Komentár
|
COMMENT: Komentár
|
||||||
COMMENTBY: 'Komentáre od %s'
|
COMMENTBY: 'Komentáre od %s'
|
||||||
@ -11,27 +34,4 @@ sk_SK:
|
|||||||
PARENTTITLE: Rodič
|
PARENTTITLE: Rodič
|
||||||
PLURALNAME: Komentáre
|
PLURALNAME: Komentáre
|
||||||
SINGULARNAME: Komentár
|
SINGULARNAME: Komentár
|
||||||
URL: Web adresa
|
URL: 'Web adresa'
|
||||||
CommentAdmin:
|
|
||||||
MENUTITLE: Komentáre
|
|
||||||
Moderated: Odsúhlasený
|
|
||||||
NeedsModeration: 'Vyžaduje odsúhlasenie'
|
|
||||||
CommentInterface:
|
|
||||||
COMMENT_MESSAGE_REQUIRED: 'Pridaj scoj komentár'
|
|
||||||
COMMENT_MESSAGE_URL: 'Vlož platbú adresu URL'
|
|
||||||
POST: Odoslať
|
|
||||||
PREVIEW: Náhľad
|
|
||||||
PREVIEWLABEL: Náhľad
|
|
||||||
YOURNAME: 'Vaše meno'
|
|
||||||
YOURNAME_MESSAGE_REQUIRED: 'Vlož svoje meno'
|
|
||||||
CommentingController:
|
|
||||||
COMMENTS: Komentáre
|
|
||||||
EMAILADDRESS: 'Váš e-mail (nebude zverejnený)'
|
|
||||||
RSSTITLE: 'RSS feed komentárov'
|
|
||||||
WEBSITEURL: 'Vaša web stránka'
|
|
||||||
CommentsAdmin:
|
|
||||||
NeedsModeration: 'Vyžaduje schválenie'
|
|
||||||
CommentsInterface_ss:
|
|
||||||
COMMENTLOGINERROR: 'Komentáre môže pridávať len prihlásený užívateľ'
|
|
||||||
COMMENTS: Komentáre
|
|
||||||
COMMENTSDISABLED: 'Už nie je možné pridávať nové komentáre'
|
|
||||||
|
@ -1,21 +1,4 @@
|
|||||||
sr@latin:
|
sr@latin:
|
||||||
Comment:
|
|
||||||
ALLOWCOMMENTS: 'Dozvoli komentare'
|
|
||||||
COMMENT: Komentar
|
|
||||||
COMMENTBY: 'Autor komentara %s'
|
|
||||||
CREATED: 'Datum objavljivanja'
|
|
||||||
EMAIL: Elektronska pošta
|
|
||||||
ISSPAM: 'Zlonameran?'
|
|
||||||
MODERATED: 'Uređen?'
|
|
||||||
NAME: 'Ime autora'
|
|
||||||
PARENTTITLE: Roditelj
|
|
||||||
PLURALNAME: Komentari
|
|
||||||
SINGULARNAME: Komentar
|
|
||||||
URL: URL
|
|
||||||
CommentAdmin:
|
|
||||||
MENUTITLE: Komentari
|
|
||||||
Moderated: Uređen
|
|
||||||
NeedsModeration: 'Potrebno uređivanje'
|
|
||||||
CommentInterface:
|
CommentInterface:
|
||||||
COMMENT_MESSAGE_REQUIRED: 'Molimo unesite komentar'
|
COMMENT_MESSAGE_REQUIRED: 'Molimo unesite komentar'
|
||||||
COMMENT_MESSAGE_URL: 'Molimo Vas da unesete ispravan URL'
|
COMMENT_MESSAGE_URL: 'Molimo Vas da unesete ispravan URL'
|
||||||
@ -26,18 +9,12 @@ sr@latin:
|
|||||||
PREVIEWLABEL: Prikaz
|
PREVIEWLABEL: Prikaz
|
||||||
YOURNAME: 'Vaše ime'
|
YOURNAME: 'Vaše ime'
|
||||||
YOURNAME_MESSAGE_REQUIRED: 'Molimo Vas da unesete Vaše ime'
|
YOURNAME_MESSAGE_REQUIRED: 'Molimo Vas da unesete Vaše ime'
|
||||||
CommentingController:
|
|
||||||
COMMENTS: Komentari
|
|
||||||
EMAILADDRESS: 'Vaša adresa elektronske pošte (neće biti objavljeno)'
|
|
||||||
PERMISSIONFAILURE: 'Niste u mogućnosti da objavljujete komentare na ovoj strani. Molimo Vas da proverite da li ste prijavljeni i da li imate odgovarajući nivo ovlašćenja.'
|
|
||||||
RSSTITLE: 'RSS Feed komentara'
|
|
||||||
WEBSITEURL: 'URL Vašeg sajta'
|
|
||||||
CommentsAdmin:
|
CommentsAdmin:
|
||||||
NeedsModeration: 'Potrebno uređivanje'
|
NeedsModeration: 'Potrebno uređivanje'
|
||||||
CommentsInterface_pendingcomment_ss:
|
CommentsInterface_pendingcomment_ss:
|
||||||
AWAITINGMODERATION: 'Vaš komentar je prosleđen i sada čeka uređivanje.'
|
AWAITINGMODERATION: 'Vaš komentar je prosleđen i sada čeka uređivanje.'
|
||||||
CommentsInterface_singlecomment_ss:
|
CommentsInterface_singlecomment_ss:
|
||||||
PBY: 'Objavio'
|
PBY: Objavio
|
||||||
CommentsInterface_ss:
|
CommentsInterface_ss:
|
||||||
AWAITINGMODERATION: 'Vaš komentar je prosleđen i sada čeka uređivanje.'
|
AWAITINGMODERATION: 'Vaš komentar je prosleđen i sada čeka uređivanje.'
|
||||||
COMMENTLOGINERROR: 'Ne možete objavljivati komentare dok se ne prijavite'
|
COMMENTLOGINERROR: 'Ne možete objavljivati komentare dok se ne prijavite'
|
||||||
@ -54,3 +31,26 @@ sr@latin:
|
|||||||
RSSFEEDCOMMENTS: 'RSS feed za komentare na ovoj strani'
|
RSSFEEDCOMMENTS: 'RSS feed za komentare na ovoj strani'
|
||||||
PageCommentInterface:
|
PageCommentInterface:
|
||||||
DELETEALLCOMMENTS: 'Obriši sve komentare na ovoj strani'
|
DELETEALLCOMMENTS: 'Obriši sve komentare na ovoj strani'
|
||||||
|
SilverStripe\Comments\Admin\CommentAdmin:
|
||||||
|
MENUTITLE: Komentari
|
||||||
|
Moderated: Uređen
|
||||||
|
NeedsModeration: 'Potrebno uređivanje'
|
||||||
|
SilverStripe\Comments\Controllers\CommentingController:
|
||||||
|
COMMENTS: Komentari
|
||||||
|
EMAILADDRESS: 'Vaša adresa elektronske pošte (neće biti objavljeno)'
|
||||||
|
PERMISSIONFAILURE: 'Niste u mogućnosti da objavljujete komentare na ovoj strani. Molimo Vas da proverite da li ste prijavljeni i da li imate odgovarajući nivo ovlašćenja.'
|
||||||
|
RSSTITLE: 'RSS Feed komentara'
|
||||||
|
WEBSITEURL: 'URL Vašeg sajta'
|
||||||
|
SilverStripe\Comments\Model\Comment:
|
||||||
|
ALLOWCOMMENTS: 'Dozvoli komentare'
|
||||||
|
COMMENT: Komentar
|
||||||
|
COMMENTBY: 'Autor komentara %s'
|
||||||
|
CREATED: 'Datum objavljivanja'
|
||||||
|
EMAIL: 'Elektronska pošta'
|
||||||
|
ISSPAM: 'Zlonameran?'
|
||||||
|
MODERATED: 'Uređen?'
|
||||||
|
NAME: 'Ime autora'
|
||||||
|
PARENTTITLE: Roditelj
|
||||||
|
PLURALNAME: Komentari
|
||||||
|
SINGULARNAME: Komentar
|
||||||
|
URL: URL
|
||||||
|
46
lang/sv.yml
46
lang/sv.yml
@ -1,21 +1,4 @@
|
|||||||
sv:
|
sv:
|
||||||
Comment:
|
|
||||||
ALLOWCOMMENTS: 'Tillåt kommentarer'
|
|
||||||
COMMENT: Kommentarer
|
|
||||||
COMMENTBY: 'Kommentar av %s'
|
|
||||||
CREATED: 'Datum'
|
|
||||||
EMAIL: E-post
|
|
||||||
ISSPAM: 'Spam?'
|
|
||||||
MODERATED: 'Modererad?'
|
|
||||||
NAME: 'Författare'
|
|
||||||
PARENTTITLE: Överordnad sida
|
|
||||||
PLURALNAME: Kommentarer
|
|
||||||
SINGULARNAME: Kommentar
|
|
||||||
URL: URL
|
|
||||||
CommentAdmin:
|
|
||||||
MENUTITLE: Kommentarer
|
|
||||||
Moderated: Modererad
|
|
||||||
NeedsModeration: 'Kräver moderering'
|
|
||||||
CommentInterface:
|
CommentInterface:
|
||||||
COMMENT_MESSAGE_REQUIRED: 'Var vänlig och skriv in din kommentar'
|
COMMENT_MESSAGE_REQUIRED: 'Var vänlig och skriv in din kommentar'
|
||||||
COMMENT_MESSAGE_URL: 'Var vänlig och ange en korrekt URL'
|
COMMENT_MESSAGE_URL: 'Var vänlig och ange en korrekt URL'
|
||||||
@ -26,12 +9,6 @@ sv:
|
|||||||
PREVIEWLABEL: Förhandsgranska
|
PREVIEWLABEL: Förhandsgranska
|
||||||
YOURNAME: 'Ditt namn'
|
YOURNAME: 'Ditt namn'
|
||||||
YOURNAME_MESSAGE_REQUIRED: 'Var vänlig och skriv in ditt namn'
|
YOURNAME_MESSAGE_REQUIRED: 'Var vänlig och skriv in ditt namn'
|
||||||
CommentingController:
|
|
||||||
COMMENTS: Kommentarer
|
|
||||||
EMAILADDRESS: 'Din e-postadress (kommer inte att publiceras)'
|
|
||||||
PERMISSIONFAILURE: 'Du kan inte skriva kommentarer på denna sida. Vänligen kontrollera att du är inloggad och har de användarrättigheter som krävs.'
|
|
||||||
RSSTITLE: 'RSS-flöde med kommentarer'
|
|
||||||
WEBSITEURL: 'Din hemsidas URL'
|
|
||||||
CommentsAdmin:
|
CommentsAdmin:
|
||||||
NeedsModeration: 'Kräver moderering'
|
NeedsModeration: 'Kräver moderering'
|
||||||
CommentsInterface_pendingcomment_ss:
|
CommentsInterface_pendingcomment_ss:
|
||||||
@ -54,3 +31,26 @@ sv:
|
|||||||
RSSFEEDCOMMENTS: 'RSS-flöde för kommentarer på denna sida'
|
RSSFEEDCOMMENTS: 'RSS-flöde för kommentarer på denna sida'
|
||||||
PageCommentInterface:
|
PageCommentInterface:
|
||||||
DELETEALLCOMMENTS: 'Radera alla kommenterar på den här sidan'
|
DELETEALLCOMMENTS: 'Radera alla kommenterar på den här sidan'
|
||||||
|
SilverStripe\Comments\Admin\CommentAdmin:
|
||||||
|
MENUTITLE: Kommentarer
|
||||||
|
Moderated: Modererad
|
||||||
|
NeedsModeration: 'Kräver moderering'
|
||||||
|
SilverStripe\Comments\Controllers\CommentingController:
|
||||||
|
COMMENTS: Kommentarer
|
||||||
|
EMAILADDRESS: 'Din e-postadress (kommer inte att publiceras)'
|
||||||
|
PERMISSIONFAILURE: 'Du kan inte skriva kommentarer på denna sida. Vänligen kontrollera att du är inloggad och har de användarrättigheter som krävs.'
|
||||||
|
RSSTITLE: 'RSS-flöde med kommentarer'
|
||||||
|
WEBSITEURL: 'Din hemsidas URL'
|
||||||
|
SilverStripe\Comments\Model\Comment:
|
||||||
|
ALLOWCOMMENTS: 'Tillåt kommentarer'
|
||||||
|
COMMENT: Kommentarer
|
||||||
|
COMMENTBY: 'Kommentar av %s'
|
||||||
|
CREATED: Datum
|
||||||
|
EMAIL: E-post
|
||||||
|
ISSPAM: 'Spam?'
|
||||||
|
MODERATED: 'Modererad?'
|
||||||
|
NAME: Författare
|
||||||
|
PARENTTITLE: 'Överordnad sida'
|
||||||
|
PLURALNAME: Kommentarer
|
||||||
|
SINGULARNAME: Kommentar
|
||||||
|
URL: URL
|
||||||
|
@ -11,6 +11,7 @@ use SilverStripe\Forms\FieldList;
|
|||||||
use SilverStripe\Forms\Form;
|
use SilverStripe\Forms\Form;
|
||||||
use SilverStripe\Security\PermissionProvider;
|
use SilverStripe\Security\PermissionProvider;
|
||||||
use SilverStripe\Security\Security;
|
use SilverStripe\Security\Security;
|
||||||
|
use SilverStripe\View\SSViewer;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Comment administration system within the CMS
|
* Comment administration system within the CMS
|
||||||
@ -25,6 +26,8 @@ class CommentAdmin extends LeftAndMain implements PermissionProvider
|
|||||||
|
|
||||||
private static $menu_title = 'Comments';
|
private static $menu_title = 'Comments';
|
||||||
|
|
||||||
|
private static $menu_icon_class = 'font-icon-comment';
|
||||||
|
|
||||||
private static $allowed_actions = array(
|
private static $allowed_actions = array(
|
||||||
'approvedmarked',
|
'approvedmarked',
|
||||||
'deleteall',
|
'deleteall',
|
||||||
@ -36,12 +39,14 @@ class CommentAdmin extends LeftAndMain implements PermissionProvider
|
|||||||
'unmoderated'
|
'unmoderated'
|
||||||
);
|
);
|
||||||
|
|
||||||
|
private static $required_permission_codes = 'CMS_ACCESS_CommentAdmin';
|
||||||
|
|
||||||
public function providePermissions()
|
public function providePermissions()
|
||||||
{
|
{
|
||||||
return array(
|
return array(
|
||||||
"CMS_ACCESS_CommentAdmin" => array(
|
"CMS_ACCESS_CommentAdmin" => array(
|
||||||
'name' => _t('CommentAdmin.ADMIN_PERMISSION', "Access to 'Comments' section"),
|
'name' => _t('SilverStripe\\Comments\\Admin\\CommentAdmin.ADMIN_PERMISSION', "Access to 'Comments' section"),
|
||||||
'category' => _t('Permission.CMS_ACCESS_CATEGORY', 'CMS Access')
|
'category' => _t('SilverStripe\\Security\\Permission.CMS_ACCESS_CATEGORY', 'CMS Access')
|
||||||
)
|
)
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
@ -66,7 +71,7 @@ class CommentAdmin extends LeftAndMain implements PermissionProvider
|
|||||||
|
|
||||||
$newGrid = new CommentsGridField(
|
$newGrid = new CommentsGridField(
|
||||||
'NewComments',
|
'NewComments',
|
||||||
_t('CommentsAdmin.NewComments', 'New'),
|
'',
|
||||||
$newComments,
|
$newComments,
|
||||||
CommentsGridFieldConfig::create()
|
CommentsGridFieldConfig::create()
|
||||||
);
|
);
|
||||||
@ -75,7 +80,7 @@ class CommentAdmin extends LeftAndMain implements PermissionProvider
|
|||||||
|
|
||||||
$approvedGrid = new CommentsGridField(
|
$approvedGrid = new CommentsGridField(
|
||||||
'ApprovedComments',
|
'ApprovedComments',
|
||||||
_t('CommentsAdmin.ApprovedComments', 'Approved'),
|
'',
|
||||||
$approvedComments,
|
$approvedComments,
|
||||||
CommentsGridFieldConfig::create()
|
CommentsGridFieldConfig::create()
|
||||||
);
|
);
|
||||||
@ -84,7 +89,7 @@ class CommentAdmin extends LeftAndMain implements PermissionProvider
|
|||||||
|
|
||||||
$spamGrid = new CommentsGridField(
|
$spamGrid = new CommentsGridField(
|
||||||
'SpamComments',
|
'SpamComments',
|
||||||
_t('CommentsAdmin.SpamComments', 'Spam'),
|
'',
|
||||||
$spamComments,
|
$spamComments,
|
||||||
CommentsGridFieldConfig::create()
|
CommentsGridFieldConfig::create()
|
||||||
);
|
);
|
||||||
@ -95,27 +100,25 @@ class CommentAdmin extends LeftAndMain implements PermissionProvider
|
|||||||
|
|
||||||
$fields = new FieldList(
|
$fields = new FieldList(
|
||||||
$root = new TabSet(
|
$root = new TabSet(
|
||||||
'Root',
|
'Comments',
|
||||||
new Tab(
|
new Tab(
|
||||||
'NewComments',
|
'NewComments',
|
||||||
_t('CommentAdmin.NewComments', 'New') . ' ' . $newCount,
|
_t(__CLASS__.'.NewComments', 'New') . ' ' . $newCount,
|
||||||
$newGrid
|
$newGrid
|
||||||
),
|
),
|
||||||
new Tab(
|
new Tab(
|
||||||
'ApprovedComments',
|
'ApprovedComments',
|
||||||
_t('CommentAdmin.ApprovedComments', 'Approved') . ' ' . $approvedCount,
|
_t(__CLASS__.'.ApprovedComments', 'Approved') . ' ' . $approvedCount,
|
||||||
$approvedGrid
|
$approvedGrid
|
||||||
),
|
),
|
||||||
new Tab(
|
new Tab(
|
||||||
'SpamComments',
|
'SpamComments',
|
||||||
_t('CommentAdmin.SpamComments', 'Spam') . ' ' . $spamCount,
|
_t(__CLASS__.'.SpamComments', 'Spam') . ' ' . $spamCount,
|
||||||
$spamGrid
|
$spamGrid
|
||||||
)
|
)
|
||||||
)
|
)
|
||||||
);
|
);
|
||||||
|
|
||||||
$root->setTemplate('CMSTabSet');
|
|
||||||
|
|
||||||
$actions = new FieldList();
|
$actions = new FieldList();
|
||||||
|
|
||||||
$form = new Form(
|
$form = new Form(
|
||||||
@ -129,7 +132,7 @@ class CommentAdmin extends LeftAndMain implements PermissionProvider
|
|||||||
$form->setTemplate($this->getTemplatesWithSuffix('_EditForm'));
|
$form->setTemplate($this->getTemplatesWithSuffix('_EditForm'));
|
||||||
|
|
||||||
if ($form->Fields()->hasTabset()) {
|
if ($form->Fields()->hasTabset()) {
|
||||||
$form->Fields()->findOrMakeTab('Root')->setTemplate('CMSTabSet');
|
// $form->Fields()->findOrMakeTab('Root')->setTemplate('CMSTabSet');
|
||||||
$form->addExtraClass('center ss-tabset cms-tabset ' . $this->BaseCSSClasses());
|
$form->addExtraClass('center ss-tabset cms-tabset ' . $this->BaseCSSClasses());
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -4,6 +4,7 @@ namespace SilverStripe\Comments\Admin;
|
|||||||
|
|
||||||
use SilverStripe\Forms\FormField;
|
use SilverStripe\Forms\FormField;
|
||||||
use SilverStripe\Forms\GridField\GridField;
|
use SilverStripe\Forms\GridField\GridField;
|
||||||
|
use SilverStripe\View\HTML;
|
||||||
|
|
||||||
class CommentsGridField extends GridField
|
class CommentsGridField extends GridField
|
||||||
{
|
{
|
||||||
@ -20,7 +21,7 @@ class CommentsGridField extends GridField
|
|||||||
$attributes['class'] .= ' spam';
|
$attributes['class'] .= ' spam';
|
||||||
}
|
}
|
||||||
|
|
||||||
return FormField::create_tag(
|
return HTML::createTag(
|
||||||
'tr',
|
'tr',
|
||||||
$attributes,
|
$attributes,
|
||||||
$content
|
$content
|
||||||
|
@ -62,7 +62,7 @@ class CommentsGridFieldAction implements GridField_ColumnProvider, GridField_Act
|
|||||||
$field .= GridField_FormAction::create(
|
$field .= GridField_FormAction::create(
|
||||||
$gridField,
|
$gridField,
|
||||||
'CustomAction' . $record->ID . 'Spam',
|
'CustomAction' . $record->ID . 'Spam',
|
||||||
_t('CommentsGridFieldAction.SPAM', 'Spam'),
|
_t('SilverStripe\\Comments\\Admin\\CommentsGridFieldAction.SPAM', 'Spam'),
|
||||||
'spam',
|
'spam',
|
||||||
array('RecordID' => $record->ID)
|
array('RecordID' => $record->ID)
|
||||||
)->Field();
|
)->Field();
|
||||||
@ -72,7 +72,7 @@ class CommentsGridFieldAction implements GridField_ColumnProvider, GridField_Act
|
|||||||
$field .= GridField_FormAction::create(
|
$field .= GridField_FormAction::create(
|
||||||
$gridField,
|
$gridField,
|
||||||
'CustomAction' . $record->ID . 'Approve',
|
'CustomAction' . $record->ID . 'Approve',
|
||||||
_t('CommentsGridFieldAction.APPROVE', 'Approve'),
|
_t('SilverStripe\\Comments\\Admin\\CommentsGridFieldAction.APPROVE', 'Approve'),
|
||||||
'approve',
|
'approve',
|
||||||
array('RecordID' => $record->ID)
|
array('RecordID' => $record->ID)
|
||||||
)->Field();
|
)->Field();
|
||||||
@ -101,7 +101,7 @@ class CommentsGridFieldAction implements GridField_ColumnProvider, GridField_Act
|
|||||||
// output a success message to the user
|
// output a success message to the user
|
||||||
Controller::curr()->getResponse()->setStatusCode(
|
Controller::curr()->getResponse()->setStatusCode(
|
||||||
200,
|
200,
|
||||||
_t('CommentsGridFieldAction.COMMENTMARKEDSPAM', 'Comment marked as spam.')
|
_t('SilverStripe\\Comments\\Admin\\CommentsGridFieldAction.COMMENTMARKEDSPAM', 'Comment marked as spam.')
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -112,7 +112,7 @@ class CommentsGridFieldAction implements GridField_ColumnProvider, GridField_Act
|
|||||||
// output a success message to the user
|
// output a success message to the user
|
||||||
Controller::curr()->getResponse()->setStatusCode(
|
Controller::curr()->getResponse()->setStatusCode(
|
||||||
200,
|
200,
|
||||||
_t('CommentsGridFieldAction.COMMENTAPPROVED', 'Comment approved.')
|
_t('SilverStripe\\Comments\\Admin\\CommentsGridFieldAction.COMMENTAPPROVED', 'Comment approved.')
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -35,7 +35,7 @@ class CommentsGridFieldConfig extends GridFieldConfig_RecordEditor
|
|||||||
|
|
||||||
$manager->addBulkAction(
|
$manager->addBulkAction(
|
||||||
'spam',
|
'spam',
|
||||||
_t('CommentsGridFieldConfig.SPAM', 'Spam'),
|
_t('SilverStripe\\Comments\\Admin\\CommentsGridFieldConfig.SPAM', 'Spam'),
|
||||||
Handler::class,
|
Handler::class,
|
||||||
array(
|
array(
|
||||||
'isAjax' => true,
|
'isAjax' => true,
|
||||||
@ -46,7 +46,7 @@ class CommentsGridFieldConfig extends GridFieldConfig_RecordEditor
|
|||||||
|
|
||||||
$manager->addBulkAction(
|
$manager->addBulkAction(
|
||||||
'approve',
|
'approve',
|
||||||
_t('CommentsGridFieldConfig.APPROVE', 'Approve'),
|
_t('SilverStripe\\Comments\\Admin\\CommentsGridFieldConfig.APPROVE', 'Approve'),
|
||||||
Handler::class,
|
Handler::class,
|
||||||
array(
|
array(
|
||||||
'isAjax' => true,
|
'isAjax' => true,
|
||||||
|
@ -190,6 +190,26 @@ class CommentingController extends Controller
|
|||||||
return singleton(CommentsExtension::class)->getCommentsOption($key);
|
return singleton(CommentsExtension::class)->getCommentsOption($key);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Returns all the commenting options for the current instance.
|
||||||
|
*
|
||||||
|
* @return array
|
||||||
|
*/
|
||||||
|
public function getOptions()
|
||||||
|
{
|
||||||
|
if ($record = $this->getOwnerRecord()) {
|
||||||
|
return $record->getCommentsOptions();
|
||||||
|
}
|
||||||
|
|
||||||
|
// Otherwise a singleton of that record
|
||||||
|
if ($class = $this->getParentClass()) {
|
||||||
|
return singleton($class)->getCommentsOptions();
|
||||||
|
}
|
||||||
|
|
||||||
|
// Otherwise just use the default options
|
||||||
|
return singleton(CommentsExtension::class)->getCommentsOptions();
|
||||||
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Workaround for generating the link to this controller
|
* Workaround for generating the link to this controller
|
||||||
*
|
*
|
||||||
@ -254,7 +274,7 @@ class CommentingController extends Controller
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
$title = _t('CommentingController.RSSTITLE', "Comments RSS Feed");
|
$title = _t('SilverStripe\\Comments\\Controllers\\CommentingController.RSSTITLE', "Comments RSS Feed");
|
||||||
$comments = new PaginatedList($comments, $request);
|
$comments = new PaginatedList($comments, $request);
|
||||||
$comments->setPageLength($this->getOption('comments_per_page'));
|
$comments->setPageLength($this->getOption('comments_per_page'));
|
||||||
|
|
||||||
@ -455,7 +475,7 @@ class CommentingController extends Controller
|
|||||||
*/
|
*/
|
||||||
public function CommentsForm()
|
public function CommentsForm()
|
||||||
{
|
{
|
||||||
return Injector::inst()->create(CommentForm::class, __FUNCTION__, $this->owner);
|
return Injector::inst()->create(CommentForm::class, __FUNCTION__, $this);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
@ -61,43 +61,43 @@ class CommentsExtension extends DataExtension
|
|||||||
*
|
*
|
||||||
* @config
|
* @config
|
||||||
*/
|
*/
|
||||||
private static $comments = array(
|
private static $comments = [
|
||||||
'enabled' => true,
|
'enabled' => true,
|
||||||
'enabled_cms' => false,
|
// 'enabled_cms' => false,
|
||||||
'require_login' => false,
|
// 'require_login' => false,
|
||||||
'require_login_cms' => false,
|
// 'require_login_cms' => false,
|
||||||
'required_permission' => false,
|
// 'required_permission' => false,
|
||||||
'include_js' => true,
|
'include_js' => true,
|
||||||
'use_gravatar' => false,
|
// 'use_gravatar' => false,
|
||||||
'gravatar_size' => 80,
|
'gravatar_size' => 80,
|
||||||
'gravatar_default' => 'identicon',
|
'gravatar_default' => 'identicon',
|
||||||
'gravatar_rating' => 'g',
|
'gravatar_rating' => 'g',
|
||||||
'show_comments_when_disabled' => false,
|
// 'show_comments_when_disabled' => false,
|
||||||
'order_comments_by' => '"Created" DESC',
|
'order_comments_by' => '"Created" DESC',
|
||||||
'order_replies_by' => false,
|
// 'order_replies_by' => false,
|
||||||
'comments_per_page' => 10,
|
'comments_per_page' => 10,
|
||||||
'comments_holder_id' => 'comments-holder',
|
'comments_holder_id' => 'comments-holder',
|
||||||
'comment_permalink_prefix' => 'comment-',
|
'comment_permalink_prefix' => 'comment-',
|
||||||
'require_moderation' => false,
|
// 'require_moderation' => false,
|
||||||
'require_moderation_nonmembers' => false,
|
// 'require_moderation_nonmembers' => false,
|
||||||
'require_moderation_cms' => false,
|
// 'require_moderation_cms' => false,
|
||||||
'frontend_moderation' => false,
|
// 'frontend_moderation' => false,
|
||||||
'frontend_spam' => false,
|
// 'frontend_spam' => false,
|
||||||
'html_allowed' => false,
|
// 'html_allowed' => false,
|
||||||
'html_allowed_elements' => array('a', 'img', 'i', 'b'),
|
'html_allowed_elements' => ['a', 'img', 'i', 'b'],
|
||||||
'use_preview' => false,
|
// 'use_preview' => false,
|
||||||
'nested_comments' => false,
|
// 'nested_comments' => false,
|
||||||
'nested_depth' => 2,
|
'nested_depth' => 2,
|
||||||
);
|
];
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @var array
|
* @var array
|
||||||
*/
|
*/
|
||||||
private static $db = array(
|
private static $db = [
|
||||||
'ProvideComments' => 'Boolean',
|
'ProvideComments' => 'Boolean',
|
||||||
'ModerationRequired' => 'Enum(\'None,Required,NonMembersOnly\',\'None\')',
|
'ModerationRequired' => 'Enum(\'None,Required,NonMembersOnly\',\'None\')',
|
||||||
'CommentsRequireLogin' => 'Boolean',
|
'CommentsRequireLogin' => 'Boolean',
|
||||||
);
|
];
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* {@inheritDoc}
|
* {@inheritDoc}
|
||||||
@ -152,11 +152,11 @@ class CommentsExtension extends DataExtension
|
|||||||
*/
|
*/
|
||||||
public function updateSettingsFields(FieldList $fields)
|
public function updateSettingsFields(FieldList $fields)
|
||||||
{
|
{
|
||||||
$options = FieldGroup::create()->setTitle(_t('CommentsExtension.COMMENTOPTIONS', 'Comments'));
|
$options = FieldGroup::create()->setTitle(_t('SilverStripe\\Comments\\Extensions\\CommentsExtension.COMMENTOPTIONS', 'Comments'));
|
||||||
|
|
||||||
// Check if enabled setting should be cms configurable
|
// Check if enabled setting should be cms configurable
|
||||||
if ($this->owner->getCommentsOption('enabled_cms')) {
|
if ($this->owner->getCommentsOption('enabled_cms')) {
|
||||||
$options->push(new CheckboxField('ProvideComments', _t('Comment.ALLOWCOMMENTS', 'Allow Comments')));
|
$options->push(new CheckboxField('ProvideComments', _t('SilverStripe\\Comments\\Model\\Comment.ALLOWCOMMENTS', 'Allow Comments')));
|
||||||
}
|
}
|
||||||
|
|
||||||
// Check if we should require users to login to comment
|
// Check if we should require users to login to comment
|
||||||
@ -179,11 +179,11 @@ class CommentsExtension extends DataExtension
|
|||||||
|
|
||||||
// Check if moderation should be enabled via cms configurable
|
// Check if moderation should be enabled via cms configurable
|
||||||
if ($this->owner->getCommentsOption('require_moderation_cms')) {
|
if ($this->owner->getCommentsOption('require_moderation_cms')) {
|
||||||
$moderationField = new DropdownField('ModerationRequired', _t('CommentsExtension.COMMENTMODERATION', 'Comment Moderation'), array(
|
$moderationField = new DropdownField('ModerationRequired', _t('SilverStripe\\Comments\\Extensions\\CommentsExtension.COMMENTMODERATION', 'Comment Moderation'), array(
|
||||||
'None' => _t('CommentsExtension.MODERATIONREQUIRED_NONE', 'No moderation required'),
|
'None' => _t('SilverStripe\\Comments\\Extensions\\CommentsExtension.MODERATIONREQUIRED_NONE', 'No moderation required'),
|
||||||
'Required' => _t('CommentsExtension.MODERATIONREQUIRED_REQUIRED', 'Moderate all comments'),
|
'Required' => _t('SilverStripe\\Comments\\Extensions\\CommentsExtension.MODERATIONREQUIRED_REQUIRED', 'Moderate all comments'),
|
||||||
'NonMembersOnly' => _t(
|
'NonMembersOnly' => _t(
|
||||||
'CommentsExtension.MODERATIONREQUIRED_NONMEMBERSONLY',
|
'SilverStripe\\Comments\\Extensions\\CommentsExtension.MODERATIONREQUIRED_NONMEMBERSONLY',
|
||||||
'Only moderate non-members'
|
'Only moderate non-members'
|
||||||
),
|
),
|
||||||
));
|
));
|
||||||
@ -493,9 +493,10 @@ class CommentsExtension extends DataExtension
|
|||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Get the commenting option for this object
|
* Get the commenting option for this object.
|
||||||
*
|
*
|
||||||
* This can be overridden in any instance or extension to customise the option available
|
* This can be overridden in any instance or extension to customise the
|
||||||
|
* option available.
|
||||||
*
|
*
|
||||||
* @param string $key
|
* @param string $key
|
||||||
*
|
*
|
||||||
@ -503,10 +504,9 @@ class CommentsExtension extends DataExtension
|
|||||||
*/
|
*/
|
||||||
public function getCommentsOption($key)
|
public function getCommentsOption($key)
|
||||||
{
|
{
|
||||||
$settings = $this->owner // In case singleton is called on the extension directly
|
$settings = $this->getCommentsOptions();
|
||||||
? $this->owner->config()->comments
|
|
||||||
: Config::inst()->get(__CLASS__, 'comments');
|
|
||||||
$value = null;
|
$value = null;
|
||||||
|
|
||||||
if (isset($settings[$key])) {
|
if (isset($settings[$key])) {
|
||||||
$value = $settings[$key];
|
$value = $settings[$key];
|
||||||
}
|
}
|
||||||
@ -515,9 +515,24 @@ class CommentsExtension extends DataExtension
|
|||||||
if ($this->owner) {
|
if ($this->owner) {
|
||||||
$this->owner->extend('updateCommentsOption', $key, $value);
|
$this->owner->extend('updateCommentsOption', $key, $value);
|
||||||
}
|
}
|
||||||
|
|
||||||
return $value;
|
return $value;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @return array
|
||||||
|
*/
|
||||||
|
public function getCommentsOptions()
|
||||||
|
{
|
||||||
|
if ($this->owner) {
|
||||||
|
$settings = $this->owner->config()->comments;
|
||||||
|
} else {
|
||||||
|
$settings = Config::inst()->get(__CLASS__, 'comments');
|
||||||
|
}
|
||||||
|
|
||||||
|
return $settings;
|
||||||
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Add moderation functions to the current fieldlist
|
* Add moderation functions to the current fieldlist
|
||||||
*
|
*
|
||||||
@ -561,13 +576,19 @@ class CommentsExtension extends DataExtension
|
|||||||
if ($fields->hasTabSet()) {
|
if ($fields->hasTabSet()) {
|
||||||
$tabs = new TabSet(
|
$tabs = new TabSet(
|
||||||
'Comments',
|
'Comments',
|
||||||
new Tab('CommentsNewCommentsTab', _t('CommentAdmin.NewComments', 'New') . ' ' . $newCount,
|
new Tab(
|
||||||
|
'CommentsNewCommentsTab',
|
||||||
|
_t('SilverStripe\\Comments\\Admin\\CommentAdmin.NewComments', 'New') . ' ' . $newCount,
|
||||||
$newGrid
|
$newGrid
|
||||||
),
|
),
|
||||||
new Tab('CommentsCommentsTab', _t('CommentAdmin.Comments', 'Approved') . ' ' . $approvedCount,
|
new Tab(
|
||||||
|
'CommentsCommentsTab',
|
||||||
|
_t('SilverStripe\\Comments\\Admin\\CommentAdmin.Comments', 'Approved') . ' ' . $approvedCount,
|
||||||
$approvedGrid
|
$approvedGrid
|
||||||
),
|
),
|
||||||
new Tab('CommentsSpamCommentsTab', _t('CommentAdmin.SpamComments', 'Spam') . ' ' . $spamCount,
|
new Tab(
|
||||||
|
'CommentsSpamCommentsTab',
|
||||||
|
_t('SilverStripe\\Comments\\Admin\\CommentAdmin.SpamComments', 'Spam') . ' ' . $spamCount,
|
||||||
$spamGrid
|
$spamGrid
|
||||||
)
|
)
|
||||||
);
|
);
|
||||||
|
@ -18,13 +18,18 @@ use SilverStripe\Core\Convert;
|
|||||||
use SilverStripe\Security\Security;
|
use SilverStripe\Security\Security;
|
||||||
use SilverStripe\Comments\Model\Comment;
|
use SilverStripe\Comments\Model\Comment;
|
||||||
use SilverStripe\Control\Controller;
|
use SilverStripe\Control\Controller;
|
||||||
|
use SilverStripe\Comments\Controllers\CommentingController;
|
||||||
|
use SilverStripe\Core\Config\Config;
|
||||||
|
|
||||||
class CommentForm extends Form
|
class CommentForm extends Form
|
||||||
{
|
{
|
||||||
public function __construct($name, $controller)
|
/**
|
||||||
|
* @param string $name
|
||||||
|
* @param CommentingController $controller
|
||||||
|
*/
|
||||||
|
public function __construct($name, CommentingController $controller)
|
||||||
{
|
{
|
||||||
$usePreview = $controller->getOption('use_preview');
|
$usePreview = $controller->getOption('use_preview');
|
||||||
|
|
||||||
$nameRequired = _t('CommentInterface.YOURNAME_MESSAGE_REQUIRED', 'Please enter your name');
|
$nameRequired = _t('CommentInterface.YOURNAME_MESSAGE_REQUIRED', 'Please enter your name');
|
||||||
$emailRequired = _t('CommentInterface.EMAILADDRESS_MESSAGE_REQUIRED', 'Please enter your email address');
|
$emailRequired = _t('CommentInterface.EMAILADDRESS_MESSAGE_REQUIRED', 'Please enter your email address');
|
||||||
$emailInvalid = _t('CommentInterface.EMAILADDRESS_MESSAGE_EMAIL', 'Please enter a valid email address');
|
$emailInvalid = _t('CommentInterface.EMAILADDRESS_MESSAGE_EMAIL', 'Please enter a valid email address');
|
||||||
@ -40,18 +45,18 @@ class CommentForm extends Form
|
|||||||
// Email
|
// Email
|
||||||
EmailField::create(
|
EmailField::create(
|
||||||
'Email',
|
'Email',
|
||||||
_t('CommentingController.EMAILADDRESS', 'Your email address (will not be published)')
|
_t('SilverStripe\\Comments\\Controllers\\CommentingController.EMAILADDRESS', 'Your email address (will not be published)')
|
||||||
)
|
)
|
||||||
->setCustomValidationMessage($emailRequired)
|
->setCustomValidationMessage($emailRequired)
|
||||||
->setAttribute('data-msg-required', $emailRequired)
|
->setAttribute('data-msg-required', $emailRequired)
|
||||||
->setAttribute('data-msg-email', $emailInvalid)
|
->setAttribute('data-msg-email', $emailInvalid)
|
||||||
->setAttribute('data-rule-email', true),
|
->setAttribute('data-rule-email', true),
|
||||||
// Url
|
// Url
|
||||||
TextField::create('URL', _t('CommentingController.WEBSITEURL', 'Your website URL'))
|
TextField::create('URL', _t('SilverStripe\\Comments\\Controllers\\CommentingController.WEBSITEURL', 'Your website URL'))
|
||||||
->setAttribute('data-msg-url', $urlInvalid)
|
->setAttribute('data-msg-url', $urlInvalid)
|
||||||
->setAttribute('data-rule-url', true),
|
->setAttribute('data-rule-url', true),
|
||||||
// Comment
|
// Comment
|
||||||
TextareaField::create('Comment', _t('CommentingController.COMMENTS', 'Comments'))
|
TextareaField::create('Comment', _t('SilverStripe\\Comments\\Controllers\\CommentingController.COMMENTS', 'Comments'))
|
||||||
->setCustomValidationMessage($commentRequired)
|
->setCustomValidationMessage($commentRequired)
|
||||||
->setAttribute('data-msg-required', $commentRequired)
|
->setAttribute('data-msg-required', $commentRequired)
|
||||||
),
|
),
|
||||||
@ -139,13 +144,14 @@ class CommentForm extends Form
|
|||||||
'URL' => isset($data['URL']) ? $data['URL'] : '',
|
'URL' => isset($data['URL']) ? $data['URL'] : '',
|
||||||
'Email' => isset($data['Email']) ? $data['Email'] : ''
|
'Email' => isset($data['Email']) ? $data['Email'] : ''
|
||||||
));
|
));
|
||||||
|
|
||||||
// allow previous value to fill if comment not stored in cookie (i.e. validation error)
|
// allow previous value to fill if comment not stored in cookie (i.e. validation error)
|
||||||
$prevComment = Cookie::get('CommentsForm_Comment');
|
$prevComment = Cookie::get('CommentsForm_Comment');
|
||||||
|
|
||||||
if ($prevComment && $prevComment != '') {
|
if ($prevComment && $prevComment != '') {
|
||||||
$this->loadDataFrom(array('Comment' => $prevComment));
|
$this->loadDataFrom(array('Comment' => $prevComment));
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@ -192,7 +198,7 @@ class CommentForm extends Form
|
|||||||
return Security::permissionFailure(
|
return Security::permissionFailure(
|
||||||
$this,
|
$this,
|
||||||
_t(
|
_t(
|
||||||
'CommentingController.PERMISSIONFAILURE',
|
'SilverStripe\\Comments\\Controllers\\CommentingController.PERMISSIONFAILURE',
|
||||||
"You're not able to post comments to this page. Please ensure you are logged in and have an "
|
"You're not able to post comments to this page. Please ensure you are logged in and have an "
|
||||||
. 'appropriate permission level.'
|
. 'appropriate permission level.'
|
||||||
)
|
)
|
||||||
@ -269,5 +275,4 @@ class CommentForm extends Form
|
|||||||
|
|
||||||
return $this->controller->redirect(Controller::join_links($url, "#{$hash}"));
|
return $this->controller->redirect(Controller::join_links($url, "#{$hash}"));
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
@ -248,14 +248,14 @@ class Comment extends DataObject
|
|||||||
{
|
{
|
||||||
$labels = parent::fieldLabels($includerelations);
|
$labels = parent::fieldLabels($includerelations);
|
||||||
|
|
||||||
$labels['Name'] = _t('Comment.NAME', 'Author Name');
|
$labels['Name'] = _t('SilverStripe\\Comments\\Model\\Comment.NAME', 'Author Name');
|
||||||
$labels['Comment'] = _t('Comment.COMMENT', 'Comment');
|
$labels['Comment'] = _t('SilverStripe\\Comments\\Model\\Comment.COMMENT', 'Comment');
|
||||||
$labels['Email'] = _t('Comment.EMAIL', 'Email');
|
$labels['Email'] = _t('SilverStripe\\Comments\\Model\\Comment.EMAIL', 'Email');
|
||||||
$labels['URL'] = _t('Comment.URL', 'URL');
|
$labels['URL'] = _t('SilverStripe\\Comments\\Model\\Comment.URL', 'URL');
|
||||||
$labels['IsSpam'] = _t('Comment.ISSPAM', 'Spam?');
|
$labels['IsSpam'] = _t('SilverStripe\\Comments\\Model\\Comment.ISSPAM', 'Spam?');
|
||||||
$labels['Moderated'] = _t('Comment.MODERATED', 'Moderated?');
|
$labels['Moderated'] = _t('SilverStripe\\Comments\\Model\\Comment.MODERATED', 'Moderated?');
|
||||||
$labels['ParentTitle'] = _t('Comment.PARENTTITLE', 'Parent');
|
$labels['ParentTitle'] = _t('SilverStripe\\Comments\\Model\\Comment.PARENTTITLE', 'Parent');
|
||||||
$labels['Created'] = _t('Comment.CREATED', 'Date posted');
|
$labels['Created'] = _t('SilverStripe\\Comments\\Model\\Comment.CREATED', 'Date posted');
|
||||||
|
|
||||||
return $labels;
|
return $labels;
|
||||||
}
|
}
|
||||||
@ -623,11 +623,11 @@ class Comment extends DataObject
|
|||||||
*/
|
*/
|
||||||
public function getTitle()
|
public function getTitle()
|
||||||
{
|
{
|
||||||
$title = sprintf(_t('Comment.COMMENTBY', 'Comment by %s', 'Name'), $this->getAuthorName());
|
$title = sprintf(_t('SilverStripe\\Comments\\Model\\Comment.COMMENTBY', 'Comment by %s', 'Name'), $this->getAuthorName());
|
||||||
|
|
||||||
if ($parent = $this->Parent()) {
|
if ($parent = $this->Parent()) {
|
||||||
if ($parent->Title) {
|
if ($parent->Title) {
|
||||||
$title .= sprintf(' %s %s', _t('Comment.ON', 'on'), $parent->Title);
|
$title .= sprintf(' %s %s', _t('SilverStripe\\Comments\\Model\\Comment.ON', 'on'), $parent->Title);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -653,9 +653,9 @@ class Comment extends DataObject
|
|||||||
CheckboxField::create('Moderated', $this->fieldLabel('Moderated')),
|
CheckboxField::create('Moderated', $this->fieldLabel('Moderated')),
|
||||||
CheckboxField::create('IsSpam', $this->fieldLabel('IsSpam')),
|
CheckboxField::create('IsSpam', $this->fieldLabel('IsSpam')),
|
||||||
))
|
))
|
||||||
->setTitle(_t('Comment.OPTIONS', 'Options'))
|
->setTitle(_t('SilverStripe\\Comments\\Model\\Comment.OPTIONS', 'Options'))
|
||||||
->setDescription(_t(
|
->setDescription(_t(
|
||||||
'Comment.OPTION_DESCRIPTION',
|
'SilverStripe\\Comments\\Model\\Comment.OPTION_DESCRIPTION',
|
||||||
'Unmoderated and spam comments will not be displayed until approved'
|
'Unmoderated and spam comments will not be displayed until approved'
|
||||||
))
|
))
|
||||||
);
|
);
|
||||||
@ -673,7 +673,7 @@ class Comment extends DataObject
|
|||||||
if (($parent = $this->ParentComment()) && $parent->exists()) {
|
if (($parent = $this->ParentComment()) && $parent->exists()) {
|
||||||
$fields->push(new HeaderField(
|
$fields->push(new HeaderField(
|
||||||
'ParentComment_Title',
|
'ParentComment_Title',
|
||||||
_t('Comment.ParentComment_Title', 'This comment is a reply to the below')
|
_t('SilverStripe\\Comments\\Model\\Comment.ParentComment_Title', 'This comment is a reply to the below')
|
||||||
));
|
));
|
||||||
// Created date
|
// Created date
|
||||||
// FIXME - the method setName in DatetimeField is not chainable, hence
|
// FIXME - the method setName in DatetimeField is not chainable, hence
|
||||||
@ -760,6 +760,7 @@ class Comment extends DataObject
|
|||||||
{
|
{
|
||||||
$gravatar = '';
|
$gravatar = '';
|
||||||
$use_gravatar = $this->getOption('use_gravatar');
|
$use_gravatar = $this->getOption('use_gravatar');
|
||||||
|
|
||||||
if ($use_gravatar) {
|
if ($use_gravatar) {
|
||||||
$gravatar = 'http://www.gravatar.com/avatar/' . md5(strtolower(trim($this->Email)));
|
$gravatar = 'http://www.gravatar.com/avatar/' . md5(strtolower(trim($this->Email)));
|
||||||
$gravatarsize = $this->getOption('gravatar_size');
|
$gravatarsize = $this->getOption('gravatar_size');
|
||||||
|
@ -5,7 +5,7 @@ namespace SilverStripe\Comments\Tests;
|
|||||||
use SilverStripe\Comments\Admin\CommentAdmin;
|
use SilverStripe\Comments\Admin\CommentAdmin;
|
||||||
use SilverStripe\Dev\SapphireTest;
|
use SilverStripe\Dev\SapphireTest;
|
||||||
use SilverStripe\i18n\i18n;
|
use SilverStripe\i18n\i18n;
|
||||||
use SilverStripe\Security\Member;
|
use SilverStripe\Security\Security;
|
||||||
|
|
||||||
class CommentAdminTest extends SapphireTest
|
class CommentAdminTest extends SapphireTest
|
||||||
{
|
{
|
||||||
@ -22,53 +22,20 @@ class CommentAdminTest extends SapphireTest
|
|||||||
i18n::set_locale('fr');
|
i18n::set_locale('fr');
|
||||||
$expected = array(
|
$expected = array(
|
||||||
'CMS_ACCESS_CommentAdmin' => array(
|
'CMS_ACCESS_CommentAdmin' => array(
|
||||||
# FIXME - this is a bug, missing from lang.yml files
|
'name' => 'Accès à la section Commentaires',
|
||||||
'name' => 'Access to \'Comments\' section',
|
'category' => 'CMS Access' // missing in core
|
||||||
'category' => 'Accès au CMS'
|
|
||||||
)
|
)
|
||||||
);
|
);
|
||||||
|
|
||||||
$this->assertEquals($expected, $commentAdmin->providePermissions());
|
$this->assertEquals($expected, $commentAdmin->providePermissions());
|
||||||
|
|
||||||
i18n::set_locale($locale);
|
i18n::set_locale($locale);
|
||||||
$expected = array(
|
$expected = array(
|
||||||
'CMS_ACCESS_CommentAdmin' => array(
|
'CMS_ACCESS_CommentAdmin' => array(
|
||||||
# FIXME - this is a bug, missing from lang.yml files
|
|
||||||
'name' => 'Access to \'Comments\' section',
|
'name' => 'Access to \'Comments\' section',
|
||||||
'category' => 'CMS Access'
|
'category' => 'CMS Access'
|
||||||
)
|
)
|
||||||
);
|
);
|
||||||
$this->assertEquals($expected, $commentAdmin->providePermissions());
|
$this->assertEquals($expected, $commentAdmin->providePermissions());
|
||||||
}
|
}
|
||||||
|
|
||||||
public function testGetEditForm()
|
|
||||||
{
|
|
||||||
$commentAdmin = new CommentAdmin();
|
|
||||||
$this->logInWithPermission('CMS_ACCESS_CommentAdmin');
|
|
||||||
$form = $commentAdmin->getEditForm();
|
|
||||||
$names = $this->getFormFieldNames($form);
|
|
||||||
$expected = array(
|
|
||||||
'NewComments',
|
|
||||||
'ApprovedComments',
|
|
||||||
'SpamComments'
|
|
||||||
);
|
|
||||||
$this->assertEquals($expected, $names);
|
|
||||||
|
|
||||||
if ($member = Member::currentUser()) {
|
|
||||||
$member->logOut();
|
|
||||||
}
|
|
||||||
|
|
||||||
$form = $commentAdmin->getEditForm();
|
|
||||||
}
|
|
||||||
|
|
||||||
private function getFormFieldNames($form)
|
|
||||||
{
|
|
||||||
$result = array();
|
|
||||||
$fields = $form->Fields();
|
|
||||||
$tab = $fields->findOrMakeTab('Root');
|
|
||||||
$fields = $tab->FieldList();
|
|
||||||
foreach ($fields as $field) {
|
|
||||||
array_push($result, $field->getName());
|
|
||||||
}
|
|
||||||
return $result;
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
@ -15,10 +15,6 @@ use SilverStripe\ORM\DataObject;
|
|||||||
use SilverStripe\Security\Member;
|
use SilverStripe\Security\Member;
|
||||||
use SilverStripe\Security\SecurityToken;
|
use SilverStripe\Security\SecurityToken;
|
||||||
|
|
||||||
/**
|
|
||||||
* @package comments
|
|
||||||
* @subpackage tests
|
|
||||||
*/
|
|
||||||
class CommentingControllerTest extends FunctionalTest
|
class CommentingControllerTest extends FunctionalTest
|
||||||
{
|
{
|
||||||
/**
|
/**
|
||||||
@ -43,10 +39,14 @@ class CommentingControllerTest extends FunctionalTest
|
|||||||
SecurityToken::inst()->disable();
|
SecurityToken::inst()->disable();
|
||||||
}
|
}
|
||||||
parent::tearDown();
|
parent::tearDown();
|
||||||
|
|
||||||
|
Config::unnest();
|
||||||
}
|
}
|
||||||
|
|
||||||
public function setUp()
|
public function setUp()
|
||||||
{
|
{
|
||||||
|
Config::nest(); // additional nesting here necessary
|
||||||
|
|
||||||
parent::setUp();
|
parent::setUp();
|
||||||
$this->securityEnabled = SecurityToken::inst()->is_enabled();
|
$this->securityEnabled = SecurityToken::inst()->is_enabled();
|
||||||
|
|
||||||
@ -54,6 +54,39 @@ class CommentingControllerTest extends FunctionalTest
|
|||||||
$this->autoFollowRedirection = false;
|
$this->autoFollowRedirection = false;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public function testCommentsFormUsePreview()
|
||||||
|
{
|
||||||
|
$parent = $this->objFromFixture(CommentableItem::class, 'first');
|
||||||
|
$commController = new CommentingController();
|
||||||
|
$commController->setOwnerRecord($parent);
|
||||||
|
$form = $commController->CommentsForm();
|
||||||
|
|
||||||
|
$commentsFields = $form->Fields()->first()->FieldList();
|
||||||
|
$expected = array('Name', 'Email', 'URL', 'Comment');
|
||||||
|
CommentTestHelper::assertFieldNames($this, $expected, $commentsFields);
|
||||||
|
|
||||||
|
// test with preview on
|
||||||
|
Config::modify()->merge(CommentableItem::class, 'comments', array(
|
||||||
|
'use_preview' => true
|
||||||
|
));
|
||||||
|
|
||||||
|
$parent = $this->objFromFixture(CommentableItem::class, 'first');
|
||||||
|
$commController = new CommentingController();
|
||||||
|
$commController->setOwnerRecord($parent);
|
||||||
|
|
||||||
|
$this->objFromFixture(Comment::class, 'firstComAChild1')->delete();
|
||||||
|
$this->objFromFixture(Comment::class, 'firstComAChild2')->delete();
|
||||||
|
$this->objFromFixture(Comment::class, 'firstComAChild3')->delete();
|
||||||
|
|
||||||
|
SecurityToken::inst()->disable();
|
||||||
|
$this->autoFollowRedirection = false;
|
||||||
|
|
||||||
|
$form = $commController->CommentsForm();
|
||||||
|
$commentsFields = $form->Fields()->first()->FieldList();
|
||||||
|
$expected = array('Name', 'Email', 'URL', 'Comment', 'PreviewComment');
|
||||||
|
CommentTestHelper::assertFieldNames($this, $expected, $commentsFields);
|
||||||
|
}
|
||||||
|
|
||||||
public function testApproveUnmoderatedComment()
|
public function testApproveUnmoderatedComment()
|
||||||
{
|
{
|
||||||
SecurityToken::inst()->disable();
|
SecurityToken::inst()->disable();
|
||||||
@ -185,7 +218,7 @@ class CommentingControllerTest extends FunctionalTest
|
|||||||
*/
|
*/
|
||||||
/*
|
/*
|
||||||
public function testCommentsFormLoadMemberData() {
|
public function testCommentsFormLoadMemberData() {
|
||||||
Config::inst()->update('CommentableItem', 'comments', array(
|
Config::modify()->set('CommentableItem', 'comments', array(
|
||||||
'use_preview' => false
|
'use_preview' => false
|
||||||
));
|
));
|
||||||
$this->logInAs('visitor');
|
$this->logInAs('visitor');
|
||||||
@ -204,38 +237,6 @@ class CommentingControllerTest extends FunctionalTest
|
|||||||
}
|
}
|
||||||
*/
|
*/
|
||||||
|
|
||||||
public function testCommentsFormUsePreview()
|
|
||||||
{
|
|
||||||
// test with preview on
|
|
||||||
Config::inst()->update(CommentableItem::class, 'comments', array(
|
|
||||||
'use_preview' => true
|
|
||||||
));
|
|
||||||
|
|
||||||
$this->objFromFixture(Comment::class, 'firstComAChild1')->delete();
|
|
||||||
$this->objFromFixture(Comment::class, 'firstComAChild2')->delete();
|
|
||||||
$this->objFromFixture(Comment::class, 'firstComAChild3')->delete();
|
|
||||||
|
|
||||||
SecurityToken::inst()->disable();
|
|
||||||
$this->autoFollowRedirection = false;
|
|
||||||
$parent = $this->objFromFixture(CommentableItem::class, 'first');
|
|
||||||
$commController = new CommentingController();
|
|
||||||
$commController->setOwnerRecord($parent);
|
|
||||||
|
|
||||||
$form = $commController->CommentsForm();
|
|
||||||
$commentsFields = $form->Fields()->first()->FieldList();
|
|
||||||
$expected = array('Name', 'Email', 'URL', 'Comment', 'PreviewComment');
|
|
||||||
CommentTestHelper::assertFieldNames($this, $expected, $commentsFields);
|
|
||||||
|
|
||||||
// Turn off preview. Assert lack of preview field
|
|
||||||
Config::inst()->update(CommentableItem::class, 'comments', array(
|
|
||||||
'use_preview' => false
|
|
||||||
));
|
|
||||||
$form = $commController->CommentsForm();
|
|
||||||
$commentsFields = $form->Fields()->first()->FieldList();
|
|
||||||
$expected = array('Name', 'Email', 'URL', 'Comment');
|
|
||||||
CommentTestHelper::assertFieldNames($this, $expected, $commentsFields);
|
|
||||||
}
|
|
||||||
|
|
||||||
public function testCommentsForm()
|
public function testCommentsForm()
|
||||||
{
|
{
|
||||||
$this->autoFollowRedirection = true;
|
$this->autoFollowRedirection = true;
|
||||||
|
@ -18,7 +18,7 @@ class CommentsExtensionTest extends SapphireTest
|
|||||||
/**
|
/**
|
||||||
* {@inheritDoc}
|
* {@inheritDoc}
|
||||||
*/
|
*/
|
||||||
protected static $fixture_file = 'comments/tests/CommentsTest.yml';
|
protected static $fixture_file = 'CommentsTest.yml';
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* {@inheritDoc}
|
* {@inheritDoc}
|
||||||
@ -35,7 +35,7 @@ class CommentsExtensionTest extends SapphireTest
|
|||||||
Config::nest();
|
Config::nest();
|
||||||
|
|
||||||
// Set good default values
|
// Set good default values
|
||||||
Config::inst()->update(CommentsExtension::class, 'comments', array(
|
Config::modify()->set(CommentsExtension::class, 'comments', array(
|
||||||
'enabled' => true,
|
'enabled' => true,
|
||||||
'enabled_cms' => false,
|
'enabled_cms' => false,
|
||||||
'require_login' => false,
|
'require_login' => false,
|
||||||
@ -53,7 +53,7 @@ class CommentsExtensionTest extends SapphireTest
|
|||||||
);
|
);
|
||||||
|
|
||||||
// Configure this dataobject
|
// Configure this dataobject
|
||||||
Config::inst()->update(CommentableItem::class, 'comments', array(
|
Config::modify()->set(CommentableItem::class, 'comments', array(
|
||||||
'enabled_cms' => true
|
'enabled_cms' => true
|
||||||
));
|
));
|
||||||
}
|
}
|
||||||
@ -64,9 +64,20 @@ class CommentsExtensionTest extends SapphireTest
|
|||||||
parent::tearDown();
|
parent::tearDown();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
public function testGetCommentsOption()
|
||||||
|
{
|
||||||
|
Config::modify()->set(CommentableItem::class, 'comments', [
|
||||||
|
'comments_holder_id' => 'some-option'
|
||||||
|
]);
|
||||||
|
|
||||||
|
$item = $this->objFromFixture(CommentableItem::class, 'first');
|
||||||
|
$this->assertEquals('some-option', $item->getCommentsOption('comments_holder_id'));
|
||||||
|
}
|
||||||
|
|
||||||
public function testPopulateDefaults()
|
public function testPopulateDefaults()
|
||||||
{
|
{
|
||||||
Config::inst()->update(CommentableItem::class, 'comments', array(
|
Config::modify()->set(CommentableItem::class, 'comments', array(
|
||||||
'require_moderation_cms' => true,
|
'require_moderation_cms' => true,
|
||||||
'require_moderation' => true,
|
'require_moderation' => true,
|
||||||
'require_moderation_nonmembers' => true
|
'require_moderation_nonmembers' => true
|
||||||
@ -77,7 +88,7 @@ class CommentsExtensionTest extends SapphireTest
|
|||||||
|
|
||||||
$this->assertTrue($item->CommentsRequireLogin);
|
$this->assertTrue($item->CommentsRequireLogin);
|
||||||
|
|
||||||
Config::inst()->update(CommentableItem::class, 'comments', array(
|
Config::modify()->set(CommentableItem::class, 'comments', array(
|
||||||
'require_moderation_cms' => true,
|
'require_moderation_cms' => true,
|
||||||
'require_moderation' => true,
|
'require_moderation' => true,
|
||||||
'require_moderation_nonmembers' => true
|
'require_moderation_nonmembers' => true
|
||||||
@ -87,7 +98,6 @@ class CommentsExtensionTest extends SapphireTest
|
|||||||
$item->populateDefaults();
|
$item->populateDefaults();
|
||||||
|
|
||||||
$this->assertFalse($item->CommentsRequireLogin);
|
$this->assertFalse($item->CommentsRequireLogin);
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
public function testUpdateSettingsFields()
|
public function testUpdateSettingsFields()
|
||||||
@ -99,7 +109,7 @@ class CommentsExtensionTest extends SapphireTest
|
|||||||
{
|
{
|
||||||
|
|
||||||
// the 3 options take precedence in this order, executed if true
|
// the 3 options take precedence in this order, executed if true
|
||||||
Config::inst()->update(CommentableItem::class, 'comments', array(
|
Config::modify()->set(CommentableItem::class, 'comments', array(
|
||||||
'require_moderation_cms' => true,
|
'require_moderation_cms' => true,
|
||||||
'require_moderation' => true,
|
'require_moderation' => true,
|
||||||
'require_moderation_nonmembers' => true
|
'require_moderation_nonmembers' => true
|
||||||
@ -122,21 +132,21 @@ class CommentsExtensionTest extends SapphireTest
|
|||||||
|
|
||||||
$this->assertEquals('NonMembersOnly', $item->getModerationRequired());
|
$this->assertEquals('NonMembersOnly', $item->getModerationRequired());
|
||||||
|
|
||||||
Config::inst()->update(CommentableItem::class, 'comments', array(
|
Config::modify()->set(CommentableItem::class, 'comments', array(
|
||||||
'require_moderation_cms' => false,
|
'require_moderation_cms' => false,
|
||||||
'require_moderation' => true,
|
'require_moderation' => true,
|
||||||
'require_moderation_nonmembers' => true
|
'require_moderation_nonmembers' => true
|
||||||
));
|
));
|
||||||
$this->assertEquals('Required', $item->getModerationRequired());
|
$this->assertEquals('Required', $item->getModerationRequired());
|
||||||
|
|
||||||
Config::inst()->update(CommentableItem::class, 'comments', array(
|
Config::modify()->set(CommentableItem::class, 'comments', array(
|
||||||
'require_moderation_cms' => false,
|
'require_moderation_cms' => false,
|
||||||
'require_moderation' => false,
|
'require_moderation' => false,
|
||||||
'require_moderation_nonmembers' => true
|
'require_moderation_nonmembers' => true
|
||||||
));
|
));
|
||||||
$this->assertEquals('NonMembersOnly', $item->getModerationRequired());
|
$this->assertEquals('NonMembersOnly', $item->getModerationRequired());
|
||||||
|
|
||||||
Config::inst()->update(CommentableItem::class, 'comments', array(
|
Config::modify()->set(CommentableItem::class, 'comments', array(
|
||||||
'require_moderation_cms' => false,
|
'require_moderation_cms' => false,
|
||||||
'require_moderation' => false,
|
'require_moderation' => false,
|
||||||
'require_moderation_nonmembers' => false
|
'require_moderation_nonmembers' => false
|
||||||
@ -146,7 +156,7 @@ class CommentsExtensionTest extends SapphireTest
|
|||||||
|
|
||||||
public function testGetCommentsRequireLogin()
|
public function testGetCommentsRequireLogin()
|
||||||
{
|
{
|
||||||
Config::inst()->update(CommentableItem::class, 'comments', array(
|
Config::modify()->set(CommentableItem::class, 'comments', array(
|
||||||
'require_login_cms' => true
|
'require_login_cms' => true
|
||||||
));
|
));
|
||||||
|
|
||||||
@ -158,12 +168,12 @@ class CommentsExtensionTest extends SapphireTest
|
|||||||
$item->CommentsRequireLogin = false;
|
$item->CommentsRequireLogin = false;
|
||||||
$this->assertFalse($item->getCommentsRequireLogin());
|
$this->assertFalse($item->getCommentsRequireLogin());
|
||||||
|
|
||||||
Config::inst()->update(CommentableItem::class, 'comments', array(
|
Config::modify()->set(CommentableItem::class, 'comments', array(
|
||||||
'require_login_cms' => false,
|
'require_login_cms' => false,
|
||||||
'require_login' => false
|
'require_login' => false
|
||||||
));
|
));
|
||||||
$this->assertFalse($item->getCommentsRequireLogin());
|
$this->assertFalse($item->getCommentsRequireLogin());
|
||||||
Config::inst()->update(CommentableItem::class, 'comments', array(
|
Config::modify()->set(CommentableItem::class, 'comments', array(
|
||||||
'require_login_cms' => false,
|
'require_login_cms' => false,
|
||||||
'require_login' => true
|
'require_login' => true
|
||||||
));
|
));
|
||||||
@ -173,7 +183,7 @@ class CommentsExtensionTest extends SapphireTest
|
|||||||
public function testAllComments()
|
public function testAllComments()
|
||||||
{
|
{
|
||||||
$item = $this->objFromFixture(CommentableItem::class, 'first');
|
$item = $this->objFromFixture(CommentableItem::class, 'first');
|
||||||
$this->assertEquals(4, $items->AllComments()->count());
|
$this->assertEquals(4, $item->AllComments()->count());
|
||||||
}
|
}
|
||||||
|
|
||||||
public function testAllVisibleComments()
|
public function testAllVisibleComments()
|
||||||
@ -183,28 +193,28 @@ class CommentsExtensionTest extends SapphireTest
|
|||||||
}
|
}
|
||||||
|
|
||||||
$item = $this->objFromFixture(CommentableItem::class, 'second');
|
$item = $this->objFromFixture(CommentableItem::class, 'second');
|
||||||
$this->assertEquals(4, $items->AllVisibleComments()->count());
|
$this->assertEquals(4, $item->AllVisibleComments()->count());
|
||||||
}
|
}
|
||||||
|
|
||||||
public function testComments()
|
public function testComments()
|
||||||
{
|
{
|
||||||
Config::inst()->update(CommentableItem::class, 'comments', array(
|
Config::modify()->set(CommentableItem::class, 'comments', array(
|
||||||
'nested_comments' => false
|
'nested_comments' => false
|
||||||
));
|
));
|
||||||
|
|
||||||
$item = $this->objFromFixture(CommentableItem::class, 'first');
|
$item = $this->objFromFixture(CommentableItem::class, 'first');
|
||||||
$this->assertEquals(4, $items->Comments()->count());
|
$this->assertEquals(4, $item->Comments()->count());
|
||||||
|
|
||||||
Config::inst()->update(CommentableItem::class, 'comments', array(
|
Config::modify()->set(CommentableItem::class, 'comments', array(
|
||||||
'nested_comments' => true
|
'nested_comments' => true
|
||||||
));
|
));
|
||||||
|
|
||||||
$this->assertEquals(1, $items->Comments()->count());
|
$this->assertEquals(1, $item->Comments()->count());
|
||||||
}
|
}
|
||||||
|
|
||||||
public function testGetCommentsEnabled()
|
public function testGetCommentsEnabled()
|
||||||
{
|
{
|
||||||
Config::inst()->update(CommentableItem::class, 'comments', array(
|
Config::modify()->set(CommentableItem::class, 'comments', array(
|
||||||
'enabled_cms' => true
|
'enabled_cms' => true
|
||||||
));
|
));
|
||||||
|
|
||||||
@ -218,12 +228,12 @@ class CommentsExtensionTest extends SapphireTest
|
|||||||
public function testGetCommentHolderID()
|
public function testGetCommentHolderID()
|
||||||
{
|
{
|
||||||
$item = $this->objFromFixture(CommentableItem::class, 'first');
|
$item = $this->objFromFixture(CommentableItem::class, 'first');
|
||||||
Config::inst()->update(CommentableItem::class, 'comments', array(
|
Config::modify()->set(CommentableItem::class, 'comments', array(
|
||||||
'comments_holder_id' => 'comments-holder',
|
'comments_holder_id' => 'commentid_test1',
|
||||||
));
|
));
|
||||||
$this->assertEquals('commentid_test1', $item->getCommentHolderID());
|
$this->assertEquals('commentid_test1', $item->getCommentHolderID());
|
||||||
|
|
||||||
Config::inst()->update(CommentableItem::class, 'comments', array(
|
Config::modify()->set(CommentableItem::class, 'comments', array(
|
||||||
'comments_holder_id' => 'commtentid_test_another',
|
'comments_holder_id' => 'commtentid_test_another',
|
||||||
));
|
));
|
||||||
$this->assertEquals('commtentid_test_another', $item->getCommentHolderID());
|
$this->assertEquals('commtentid_test_another', $item->getCommentHolderID());
|
||||||
@ -251,7 +261,7 @@ class CommentsExtensionTest extends SapphireTest
|
|||||||
|
|
||||||
public function testGetCommentRSSLink()
|
public function testGetCommentRSSLink()
|
||||||
{
|
{
|
||||||
Config::inst()->update('SilverStripe\\Control\\Director', 'alternate_base_url', 'http://unittesting.local');
|
Config::modify()->set('SilverStripe\\Control\\Director', 'alternate_base_url', 'http://unittesting.local');
|
||||||
|
|
||||||
$item = $this->objFromFixture(CommentableItem::class, 'first');
|
$item = $this->objFromFixture(CommentableItem::class, 'first');
|
||||||
$link = $item->getCommentRSSLink();
|
$link = $item->getCommentRSSLink();
|
||||||
@ -260,7 +270,7 @@ class CommentsExtensionTest extends SapphireTest
|
|||||||
|
|
||||||
public function testGetCommentRSSLinkPage()
|
public function testGetCommentRSSLinkPage()
|
||||||
{
|
{
|
||||||
Config::inst()->update('SilverStripe\\Control\\Director', 'alternate_base_url', 'http://unittesting.local');
|
Config::modify()->set('SilverStripe\\Control\\Director', 'alternate_base_url', 'http://unittesting.local');
|
||||||
|
|
||||||
$item = $this->objFromFixture(CommentableItem::class, 'first');
|
$item = $this->objFromFixture(CommentableItem::class, 'first');
|
||||||
$page = $item->getCommentRSSLinkPage();
|
$page = $item->getCommentRSSLinkPage();
|
||||||
@ -272,7 +282,7 @@ class CommentsExtensionTest extends SapphireTest
|
|||||||
|
|
||||||
public function testCommentsForm()
|
public function testCommentsForm()
|
||||||
{
|
{
|
||||||
Config::inst()->update(CommentableItem::class, 'comments', array(
|
Config::modify()->set(CommentableItem::class, 'comments', array(
|
||||||
'include_js' => false,
|
'include_js' => false,
|
||||||
'comments_holder_id' => 'comments-holder',
|
'comments_holder_id' => 'comments-holder',
|
||||||
));
|
));
|
||||||
@ -287,21 +297,20 @@ class CommentsExtensionTest extends SapphireTest
|
|||||||
|
|
||||||
$this->assertContains($expected, $cf);
|
$this->assertContains($expected, $cf);
|
||||||
$this->assertContains('<h4>Post your comment</h4>', $cf);
|
$this->assertContains('<h4>Post your comment</h4>', $cf);
|
||||||
|
|
||||||
// check the comments form exists
|
// check the comments form exists
|
||||||
$expected = '<input type="text" name="Name" value="ADMIN User" class="text" id="comments-holder_Name" required="required"';
|
$expected = '<input type="text" name="Name"';
|
||||||
$this->assertContains($expected, $cf);
|
$this->assertContains($expected, $cf);
|
||||||
|
|
||||||
$expected = '<input type="email" name="Email" value="ADMIN@example.org" class="email text" id="comments-holder_Email"';
|
$expected = '<input type="email" name="Email"';
|
||||||
$this->assertContains($expected, $cf);
|
$this->assertContains($expected, $cf);
|
||||||
|
|
||||||
$expected = '<input type="text" name="URL" class="text" id="comments-holder_URL" data-msg-url="Please enter a valid URL"';
|
$expected = '<input type="text" name="URL"';
|
||||||
$this->assertContains($expected, $cf);
|
$this->assertContains($expected, $cf);
|
||||||
|
|
||||||
$expected = '<input type="hidden" name="ParentID" value="' . $item->ID . '" class="hidden" id="comments-holder_ParentID" />';
|
$expected = '<input type="hidden" name="ParentID"';
|
||||||
$this->assertContains($expected, $cf);
|
$this->assertContains($expected, $cf);
|
||||||
|
|
||||||
$expected = '<textarea name="Comment" class="textarea" id="comments-holder_Comment" required="required"';
|
$expected = '<textarea name="Comment"';
|
||||||
$this->assertContains($expected, $cf);
|
$this->assertContains($expected, $cf);
|
||||||
|
|
||||||
$expected = '<input type="submit" name="action_doPostComment" value="Post" class="action" id="comments-holder_action_doPostComment"';
|
$expected = '<input type="submit" name="action_doPostComment" value="Post" class="action" id="comments-holder_action_doPostComment"';
|
||||||
@ -321,41 +330,6 @@ class CommentsExtensionTest extends SapphireTest
|
|||||||
|
|
||||||
$expected = '<p>Reply to firstComA 3</p>';
|
$expected = '<p>Reply to firstComA 3</p>';
|
||||||
$this->assertContains($expected, $cf);
|
$this->assertContains($expected, $cf);
|
||||||
|
|
||||||
// Check for JS inclusion
|
|
||||||
$backend = Requirements::backend();
|
|
||||||
$this->assertEquals(
|
|
||||||
array(),
|
|
||||||
$backend->getJavascript()
|
|
||||||
);
|
|
||||||
|
|
||||||
Config::inst()->update(
|
|
||||||
CommentableItem::class,
|
|
||||||
'comments',
|
|
||||||
array(
|
|
||||||
'include_js' => true
|
|
||||||
)
|
|
||||||
);
|
|
||||||
$cf = $item->CommentsForm();
|
|
||||||
|
|
||||||
$backend = Requirements::backend();
|
|
||||||
$javascriptRequirements = $backend->getJavascript();
|
|
||||||
$expected = array(
|
|
||||||
'framework/admin/thirdparty/jquery/jquery.js',
|
|
||||||
'framework/admin/thirdparty/jquery-entwine/dist/jquery.entwine-dist.js',
|
|
||||||
'framework/admin/thirdparty/jquery-form/jquery.form.js',
|
|
||||||
'comments/thirdparty/jquery-validate/jquery.validate.min.js',
|
|
||||||
/**
|
|
||||||
* @todo: Is there a replacement for this? The docs are unclear
|
|
||||||
*/
|
|
||||||
// 'framework/admin/client/src/i18n.js',
|
|
||||||
'comments/javascript/lang/en.js',
|
|
||||||
'comments/javascript/CommentsInterface.js'
|
|
||||||
);
|
|
||||||
|
|
||||||
foreach ($expected as $javascript) {
|
|
||||||
$this->assertArrayHasKey($javascript, $javascriptRequirements);
|
|
||||||
};
|
|
||||||
}
|
}
|
||||||
|
|
||||||
public function testAttachedToSiteTree()
|
public function testAttachedToSiteTree()
|
||||||
@ -402,11 +376,6 @@ class CommentsExtensionTest extends SapphireTest
|
|||||||
$this->assertEquals(4, sizeof($results));
|
$this->assertEquals(4, sizeof($results));
|
||||||
}
|
}
|
||||||
|
|
||||||
public function testGetCommentsOption()
|
|
||||||
{
|
|
||||||
$this->markTestSkipped('TODO');
|
|
||||||
}
|
|
||||||
|
|
||||||
public function testUpdateModerationFields()
|
public function testUpdateModerationFields()
|
||||||
{
|
{
|
||||||
$this->markTestSkipped('TODO');
|
$this->markTestSkipped('TODO');
|
||||||
@ -414,7 +383,7 @@ class CommentsExtensionTest extends SapphireTest
|
|||||||
|
|
||||||
public function testUpdateCMSFields()
|
public function testUpdateCMSFields()
|
||||||
{
|
{
|
||||||
Config::inst()->update(
|
Config::modify()->set(
|
||||||
CommentableItem::class,
|
CommentableItem::class,
|
||||||
'comments',
|
'comments',
|
||||||
array(
|
array(
|
||||||
@ -426,35 +395,29 @@ class CommentsExtensionTest extends SapphireTest
|
|||||||
$item->ProvideComments = true;
|
$item->ProvideComments = true;
|
||||||
$item->write();
|
$item->write();
|
||||||
$fields = $item->getCMSFields();
|
$fields = $item->getCMSFields();
|
||||||
CommentTestHelper::assertFieldsForTab(
|
|
||||||
$this,
|
|
||||||
'Root.Comments',
|
|
||||||
array('CommentsNewCommentsTab', 'CommentsCommentsTab', 'CommentsSpamCommentsTab'),
|
|
||||||
$fields
|
|
||||||
);
|
|
||||||
|
|
||||||
CommentTestHelper::assertFieldsForTab(
|
CommentTestHelper::assertFieldsForTab(
|
||||||
$this,
|
$this,
|
||||||
'Root.Comments.CommentsNewCommentsTab',
|
'Comments.CommentsNewCommentsTab',
|
||||||
array('NewComments'),
|
array('NewComments'),
|
||||||
$fields
|
$fields
|
||||||
);
|
);
|
||||||
|
|
||||||
CommentTestHelper::assertFieldsForTab(
|
CommentTestHelper::assertFieldsForTab(
|
||||||
$this,
|
$this,
|
||||||
'Root.Comments.CommentsCommentsTab',
|
'Comments.CommentsCommentsTab',
|
||||||
array('ApprovedComments'),
|
array('ApprovedComments'),
|
||||||
$fields
|
$fields
|
||||||
);
|
);
|
||||||
|
|
||||||
CommentTestHelper::assertFieldsForTab(
|
CommentTestHelper::assertFieldsForTab(
|
||||||
$this,
|
$this,
|
||||||
'Root.Comments.CommentsSpamCommentsTab',
|
'Comments.CommentsSpamCommentsTab',
|
||||||
array('SpamComments'),
|
array('SpamComments'),
|
||||||
$fields
|
$fields
|
||||||
);
|
);
|
||||||
|
|
||||||
Config::inst()->update(
|
Config::modify()->set(
|
||||||
CommentableItem::class,
|
CommentableItem::class,
|
||||||
'comments',
|
'comments',
|
||||||
array(
|
array(
|
||||||
@ -474,7 +437,7 @@ class CommentsExtensionTest extends SapphireTest
|
|||||||
$fields
|
$fields
|
||||||
);
|
);
|
||||||
|
|
||||||
Config::inst()->update(
|
Config::modify()->set(
|
||||||
CommentableItem::class,
|
CommentableItem::class,
|
||||||
'comments',
|
'comments',
|
||||||
array(
|
array(
|
||||||
|
@ -2,6 +2,8 @@
|
|||||||
|
|
||||||
namespace SilverStripe\Comments\Tests;
|
namespace SilverStripe\Comments\Tests;
|
||||||
|
|
||||||
|
use HTMLPurifier_Config;
|
||||||
|
use HTMLPurifier;
|
||||||
use ReflectionClass;
|
use ReflectionClass;
|
||||||
use SilverStripe\Comments\Extensions\CommentsExtension;
|
use SilverStripe\Comments\Extensions\CommentsExtension;
|
||||||
use SilverStripe\Comments\Model\Comment;
|
use SilverStripe\Comments\Model\Comment;
|
||||||
@ -17,14 +19,12 @@ use SilverStripe\Dev\TestOnly;
|
|||||||
use SilverStripe\i18n\i18n;
|
use SilverStripe\i18n\i18n;
|
||||||
use SilverStripe\ORM\DataObject;
|
use SilverStripe\ORM\DataObject;
|
||||||
use SilverStripe\Security\Member;
|
use SilverStripe\Security\Member;
|
||||||
|
use SilverStripe\Security\Security;
|
||||||
use SilverStripe\Security\Permission;
|
use SilverStripe\Security\Permission;
|
||||||
|
|
||||||
/**
|
|
||||||
* @package comments
|
|
||||||
*/
|
|
||||||
class CommentsTest extends FunctionalTest
|
class CommentsTest extends FunctionalTest
|
||||||
{
|
{
|
||||||
protected static $fixture_file = 'comments/tests/CommentsTest.yml';
|
protected static $fixture_file = 'CommentsTest.yml';
|
||||||
|
|
||||||
protected static $extra_dataobjects = array(
|
protected static $extra_dataobjects = array(
|
||||||
CommentableItem::class,
|
CommentableItem::class,
|
||||||
@ -38,22 +38,9 @@ class CommentsTest extends FunctionalTest
|
|||||||
Config::nest();
|
Config::nest();
|
||||||
|
|
||||||
// Set good default values
|
// Set good default values
|
||||||
Config::inst()->update(CommentsExtension::class, 'comments', array(
|
Config::modify()->merge(CommentsExtension::class, 'comments', array(
|
||||||
'enabled' => true,
|
'enabled' => true,
|
||||||
'enabled_cms' => false,
|
'comment_permalink_prefix' => 'comment-'
|
||||||
'require_login' => false,
|
|
||||||
'require_login_cms' => false,
|
|
||||||
'required_permission' => false,
|
|
||||||
'require_moderation_nonmembers' => false,
|
|
||||||
'require_moderation' => false,
|
|
||||||
'require_moderation_cms' => false,
|
|
||||||
'frontend_moderation' => false,
|
|
||||||
'frontend_spam' => false,
|
|
||||||
));
|
|
||||||
|
|
||||||
// Configure this dataobject
|
|
||||||
Config::inst()->update(CommentableItem::class, 'comments', array(
|
|
||||||
'enabled_cms' => true
|
|
||||||
));
|
));
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -67,14 +54,13 @@ class CommentsTest extends FunctionalTest
|
|||||||
{
|
{
|
||||||
// comments don't require moderation so unmoderated comments can be
|
// comments don't require moderation so unmoderated comments can be
|
||||||
// shown but not spam posts
|
// shown but not spam posts
|
||||||
Config::inst()->update(CommentableItem::class, 'comments', array(
|
Config::modify()->set(CommentableItem::class, 'comments', array(
|
||||||
'require_moderation_nonmembers' => false,
|
'require_moderation_nonmembers' => false,
|
||||||
'require_moderation' => false,
|
'require_moderation' => false,
|
||||||
'require_moderation_cms' => false,
|
'require_moderation_cms' => false,
|
||||||
));
|
));
|
||||||
|
|
||||||
$item = $this->objFromFixture(CommentableItem::class, 'spammed');
|
$item = $this->objFromFixture(CommentableItem::class, 'spammed');
|
||||||
$this->assertEquals('None', $item->ModerationRequired);
|
|
||||||
|
|
||||||
$this->assertDOSEquals(array(
|
$this->assertDOSEquals(array(
|
||||||
array('Name' => 'Comment 1'),
|
array('Name' => 'Comment 1'),
|
||||||
@ -82,12 +68,10 @@ class CommentsTest extends FunctionalTest
|
|||||||
), $item->Comments(), 'Only 2 non spam posts should be shown');
|
), $item->Comments(), 'Only 2 non spam posts should be shown');
|
||||||
|
|
||||||
// when moderated, only moderated, non spam posts should be shown.
|
// when moderated, only moderated, non spam posts should be shown.
|
||||||
Config::inst()->update(CommentableItem::class, 'comments', array('require_moderation_nonmembers' => true));
|
Config::modify()->set(CommentableItem::class, 'comments', array('require_moderation_nonmembers' => true));
|
||||||
$this->assertEquals('NonMembersOnly', $item->ModerationRequired);
|
|
||||||
|
|
||||||
// Check that require_moderation overrides this option
|
// Check that require_moderation overrides this option
|
||||||
Config::inst()->update(CommentableItem::class, 'comments', array('require_moderation' => true));
|
Config::modify()->set(CommentableItem::class, 'comments', array('require_moderation' => true));
|
||||||
$this->assertEquals('Required', $item->ModerationRequired);
|
|
||||||
|
|
||||||
$this->assertDOSEquals(array(
|
$this->assertDOSEquals(array(
|
||||||
array('Name' => 'Comment 3')
|
array('Name' => 'Comment 3')
|
||||||
@ -95,14 +79,14 @@ class CommentsTest extends FunctionalTest
|
|||||||
$this->assertEquals(1, $item->Comments()->Count());
|
$this->assertEquals(1, $item->Comments()->Count());
|
||||||
|
|
||||||
// require_moderation_nonmembers still filters out unmoderated comments
|
// require_moderation_nonmembers still filters out unmoderated comments
|
||||||
Config::inst()->update(CommentableItem::class, 'comments', array('require_moderation' => false));
|
Config::modify()->set(CommentableItem::class, 'comments', array('require_moderation' => false));
|
||||||
$this->assertEquals(1, $item->Comments()->Count());
|
$this->assertEquals(1, $item->Comments()->Count());
|
||||||
|
|
||||||
Config::inst()->update(CommentableItem::class, 'comments', array('require_moderation_nonmembers' => false));
|
Config::modify()->set(CommentableItem::class, 'comments', array('require_moderation_nonmembers' => false));
|
||||||
$this->assertEquals(2, $item->Comments()->Count());
|
$this->assertEquals(2, $item->Comments()->Count());
|
||||||
|
|
||||||
// With unmoderated comments set to display in frontend
|
// With unmoderated comments set to display in frontend
|
||||||
Config::inst()->update(CommentableItem::class, 'comments', array(
|
Config::modify()->set(CommentableItem::class, 'comments', array(
|
||||||
'require_moderation' => true,
|
'require_moderation' => true,
|
||||||
'frontend_moderation' => true
|
'frontend_moderation' => true
|
||||||
));
|
));
|
||||||
@ -112,7 +96,7 @@ class CommentsTest extends FunctionalTest
|
|||||||
$this->assertEquals(2, $item->Comments()->Count());
|
$this->assertEquals(2, $item->Comments()->Count());
|
||||||
|
|
||||||
// With spam comments set to display in frontend
|
// With spam comments set to display in frontend
|
||||||
Config::inst()->update(CommentableItem::class, 'comments', array(
|
Config::modify()->set(CommentableItem::class, 'comments', array(
|
||||||
'require_moderation' => true,
|
'require_moderation' => true,
|
||||||
'frontend_moderation' => false,
|
'frontend_moderation' => false,
|
||||||
'frontend_spam' => true,
|
'frontend_spam' => true,
|
||||||
@ -127,7 +111,7 @@ class CommentsTest extends FunctionalTest
|
|||||||
|
|
||||||
|
|
||||||
// With spam and unmoderated comments set to display in frontend
|
// With spam and unmoderated comments set to display in frontend
|
||||||
Config::inst()->update(CommentableItem::class, 'comments', array(
|
Config::modify()->set(CommentableItem::class, 'comments', array(
|
||||||
'require_moderation' => true,
|
'require_moderation' => true,
|
||||||
'frontend_moderation' => true,
|
'frontend_moderation' => true,
|
||||||
'frontend_spam' => true,
|
'frontend_spam' => true,
|
||||||
@ -146,15 +130,14 @@ class CommentsTest extends FunctionalTest
|
|||||||
*/
|
*/
|
||||||
public function testCommentCMSModerationList()
|
public function testCommentCMSModerationList()
|
||||||
{
|
{
|
||||||
// comments don't require moderation so unmoderated comments can be
|
Config::modify()->merge(CommentableItem::class, 'comments', array(
|
||||||
// shown but not spam posts
|
|
||||||
Config::inst()->update(CommentableItem::class, 'comments', array(
|
|
||||||
'require_moderation' => true,
|
'require_moderation' => true,
|
||||||
'require_moderation_cms' => true,
|
'require_moderation_cms' => true,
|
||||||
));
|
));
|
||||||
|
|
||||||
$item = $this->objFromFixture(CommentableItem::class, 'spammed');
|
$item = $this->objFromFixture(CommentableItem::class, 'spammed');
|
||||||
$this->assertEquals('None', $item->ModerationRequired);
|
|
||||||
|
$this->assertEquals('None', $item->getModerationRequired());
|
||||||
|
|
||||||
$this->assertDOSEquals(array(
|
$this->assertDOSEquals(array(
|
||||||
array('Name' => 'Comment 1'),
|
array('Name' => 'Comment 1'),
|
||||||
@ -164,12 +147,13 @@ class CommentsTest extends FunctionalTest
|
|||||||
// when moderated, only moderated, non spam posts should be shown.
|
// when moderated, only moderated, non spam posts should be shown.
|
||||||
$item->ModerationRequired = 'NonMembersOnly';
|
$item->ModerationRequired = 'NonMembersOnly';
|
||||||
$item->write();
|
$item->write();
|
||||||
$this->assertEquals('NonMembersOnly', $item->ModerationRequired);
|
|
||||||
|
$this->assertEquals('NonMembersOnly', $item->getModerationRequired());
|
||||||
|
|
||||||
// Check that require_moderation overrides this option
|
// Check that require_moderation overrides this option
|
||||||
$item->ModerationRequired = 'Required';
|
$item->ModerationRequired = 'Required';
|
||||||
$item->write();
|
$item->write();
|
||||||
$this->assertEquals('Required', $item->ModerationRequired);
|
$this->assertEquals('Required', $item->getModerationRequired());
|
||||||
|
|
||||||
$this->assertDOSEquals(array(
|
$this->assertDOSEquals(array(
|
||||||
array('Name' => 'Comment 3')
|
array('Name' => 'Comment 3')
|
||||||
@ -188,7 +172,7 @@ class CommentsTest extends FunctionalTest
|
|||||||
|
|
||||||
public function testCanPostComment()
|
public function testCanPostComment()
|
||||||
{
|
{
|
||||||
Config::inst()->update(CommentableItem::class, 'comments', array(
|
Config::modify()->set(CommentableItem::class, 'comments', array(
|
||||||
'require_login' => false,
|
'require_login' => false,
|
||||||
'require_login_cms' => false,
|
'require_login_cms' => false,
|
||||||
'required_permission' => false,
|
'required_permission' => false,
|
||||||
@ -204,7 +188,7 @@ class CommentsTest extends FunctionalTest
|
|||||||
$this->assertTrue($item->canPostComment());
|
$this->assertTrue($item->canPostComment());
|
||||||
|
|
||||||
// Test permission required to post
|
// Test permission required to post
|
||||||
Config::inst()->update(CommentableItem::class, 'comments', array(
|
Config::modify()->set(CommentableItem::class, 'comments', array(
|
||||||
'require_login' => true,
|
'require_login' => true,
|
||||||
'required_permission' => 'POSTING_PERMISSION',
|
'required_permission' => 'POSTING_PERMISSION',
|
||||||
));
|
));
|
||||||
@ -218,7 +202,7 @@ class CommentsTest extends FunctionalTest
|
|||||||
$this->assertTrue($item->canPostComment());
|
$this->assertTrue($item->canPostComment());
|
||||||
|
|
||||||
// Test require login to post, but not any permissions
|
// Test require login to post, but not any permissions
|
||||||
Config::inst()->update(CommentableItem::class, 'comments', array(
|
Config::modify()->set(CommentableItem::class, 'comments', array(
|
||||||
'required_permission' => false,
|
'required_permission' => false,
|
||||||
));
|
));
|
||||||
$this->assertTrue($item->CommentsRequireLogin);
|
$this->assertTrue($item->CommentsRequireLogin);
|
||||||
@ -230,7 +214,7 @@ class CommentsTest extends FunctionalTest
|
|||||||
$this->assertTrue($item->canPostComment());
|
$this->assertTrue($item->canPostComment());
|
||||||
|
|
||||||
// Test options set via CMS
|
// Test options set via CMS
|
||||||
Config::inst()->update(CommentableItem::class, 'comments', array(
|
Config::modify()->set(CommentableItem::class, 'comments', array(
|
||||||
'require_login' => true,
|
'require_login' => true,
|
||||||
'require_login_cms' => true,
|
'require_login_cms' => true,
|
||||||
));
|
));
|
||||||
@ -452,7 +436,7 @@ class CommentsTest extends FunctionalTest
|
|||||||
|
|
||||||
// Add p for paragraph
|
// Add p for paragraph
|
||||||
// NOTE: The config method appears to append to the existing array
|
// NOTE: The config method appears to append to the existing array
|
||||||
Config::inst()->update(CommentableItem::class, 'comments', array(
|
Config::modify()->set(CommentableItem::class, 'comments', array(
|
||||||
'html_allowed_elements' => array('p'),
|
'html_allowed_elements' => array('p'),
|
||||||
));
|
));
|
||||||
|
|
||||||
@ -488,7 +472,7 @@ class CommentsTest extends FunctionalTest
|
|||||||
$this->markTestSkipped('HTMLPurifier class not found');
|
$this->markTestSkipped('HTMLPurifier class not found');
|
||||||
}
|
}
|
||||||
|
|
||||||
Config::inst()->update(CommentableItem::class, 'comments', array(
|
Config::modify()->set(CommentableItem::class, 'comments', array(
|
||||||
'html_allowed_elements' => array('p'),
|
'html_allowed_elements' => array('p'),
|
||||||
));
|
));
|
||||||
|
|
||||||
@ -524,8 +508,7 @@ class CommentsTest extends FunctionalTest
|
|||||||
*/
|
*/
|
||||||
public function testDefaultEnabled()
|
public function testDefaultEnabled()
|
||||||
{
|
{
|
||||||
// Ensure values are set via cms (not via config)
|
Config::modify()->merge(CommentableItem::class, 'comments', array(
|
||||||
Config::inst()->update(CommentableItem::class, 'comments', array(
|
|
||||||
'enabled_cms' => true,
|
'enabled_cms' => true,
|
||||||
'require_moderation_cms' => true,
|
'require_moderation_cms' => true,
|
||||||
'require_login_cms' => true
|
'require_login_cms' => true
|
||||||
@ -550,31 +533,32 @@ class CommentsTest extends FunctionalTest
|
|||||||
|
|
||||||
// With default = false
|
// With default = false
|
||||||
// Because of config rules about falsey values, apply config to object directly
|
// Because of config rules about falsey values, apply config to object directly
|
||||||
Config::inst()->update(CommentableItem::class, 'comments', array(
|
Config::modify()->set(CommentableItem::class, 'comments', array(
|
||||||
'enabled' => false,
|
'enabled' => false,
|
||||||
'require_login' => true,
|
'require_login' => true,
|
||||||
'require_moderation' => true
|
'require_moderation' => true
|
||||||
));
|
));
|
||||||
|
|
||||||
$obj = new CommentableItem();
|
$obj = new CommentableItem();
|
||||||
|
|
||||||
$this->assertFalse((bool)$obj->getCommentsOption('enabled'), 'Default setting is disabled');
|
$this->assertFalse((bool)$obj->getCommentsOption('enabled'), 'Default setting is disabled');
|
||||||
$this->assertFalse((bool)$obj->ProvideComments);
|
$this->assertFalse((bool)$obj->ProvideComments);
|
||||||
$this->assertEquals('Required', $obj->ModerationRequired);
|
$this->assertEquals('Required', $obj->ModerationRequired);
|
||||||
$this->assertTrue((bool)$obj->CommentsRequireLogin);
|
$this->assertTrue((bool)$obj->CommentsRequireLogin);
|
||||||
|
|
||||||
$obj = new CommentableItemEnabled();
|
$obj = new CommentableItemEnabled();
|
||||||
|
|
||||||
$this->assertTrue((bool)$obj->ProvideComments);
|
$this->assertTrue((bool)$obj->ProvideComments);
|
||||||
$this->assertEquals('Required', $obj->ModerationRequired);
|
$this->assertEquals('Required', $obj->ModerationRequired);
|
||||||
$this->assertTrue((bool)$obj->CommentsRequireLogin);
|
$this->assertTrue((bool)$obj->CommentsRequireLogin);
|
||||||
|
|
||||||
$obj = new CommentableItemDisabled();
|
$obj = new CommentableItemDisabled();
|
||||||
|
|
||||||
$this->assertFalse((bool)$obj->ProvideComments);
|
$this->assertFalse((bool)$obj->ProvideComments);
|
||||||
$this->assertEquals('None', $obj->ModerationRequired);
|
$this->assertEquals('None', $obj->ModerationRequired);
|
||||||
$this->assertFalse((bool)$obj->CommentsRequireLogin);
|
$this->assertFalse((bool)$obj->CommentsRequireLogin);
|
||||||
}
|
}
|
||||||
|
|
||||||
/*
|
|
||||||
When a parent comment is deleted, remove the children
|
|
||||||
*/
|
|
||||||
public function testOnBeforeDelete()
|
public function testOnBeforeDelete()
|
||||||
{
|
{
|
||||||
$comment = $this->objFromFixture(Comment::class, 'firstComA');
|
$comment = $this->objFromFixture(Comment::class, 'firstComA');
|
||||||
@ -592,8 +576,8 @@ class CommentsTest extends FunctionalTest
|
|||||||
$comment->delete();
|
$comment->delete();
|
||||||
|
|
||||||
// assert that the new child been deleted
|
// assert that the new child been deleted
|
||||||
$this->assertFalse(DataObject::get_by_id(Comment::class, $commentID));
|
$this->assertNull(DataObject::get_by_id(Comment::class, $commentID));
|
||||||
$this->assertFalse(DataObject::get_by_id(Comment::class, $childCommentID));
|
$this->assertNull(DataObject::get_by_id(Comment::class, $childCommentID));
|
||||||
}
|
}
|
||||||
|
|
||||||
public function testRequireDefaultRecords()
|
public function testRequireDefaultRecords()
|
||||||
@ -672,11 +656,6 @@ class CommentsTest extends FunctionalTest
|
|||||||
$this->assertEquals($expected, $labels);
|
$this->assertEquals($expected, $labels);
|
||||||
}
|
}
|
||||||
|
|
||||||
public function testGetOption()
|
|
||||||
{
|
|
||||||
$this->markTestSkipped('TODO');
|
|
||||||
}
|
|
||||||
|
|
||||||
public function testGetParent()
|
public function testGetParent()
|
||||||
{
|
{
|
||||||
$comment = $this->objFromFixture(Comment::class, 'firstComA');
|
$comment = $this->objFromFixture(Comment::class, 'firstComA');
|
||||||
@ -793,21 +772,21 @@ class CommentsTest extends FunctionalTest
|
|||||||
public function testGetMember()
|
public function testGetMember()
|
||||||
{
|
{
|
||||||
$this->logInAs('visitor');
|
$this->logInAs('visitor');
|
||||||
$current = Member::currentUser();
|
$current = Security::getCurrentUser();
|
||||||
$comment = $this->objFromFixture(Comment::class, 'firstComA');
|
$comment = $this->objFromFixture(Comment::class, 'firstComA');
|
||||||
$method = $this->getMethod('getMember');
|
$method = $this->getMethod('getMember');
|
||||||
|
|
||||||
// null case
|
// null case
|
||||||
$member = $method->invokeArgs($comment, array());
|
$member = $method->invokeArgs($comment, array());
|
||||||
$this->assertEquals($current, $member);
|
$this->assertEquals($current->ID, $member->ID);
|
||||||
|
|
||||||
// numeric ID case
|
// numeric ID case
|
||||||
$member = $method->invokeArgs($comment, array($current->ID));
|
$member = $method->invokeArgs($comment, array($current->ID));
|
||||||
$this->assertEquals($current, $member);
|
$this->assertEquals($current->ID, $member->ID);
|
||||||
|
|
||||||
// identity case
|
// identity case
|
||||||
$member = $method->invokeArgs($comment, array($current));
|
$member = $method->invokeArgs($comment, array($current));
|
||||||
$this->assertEquals($current, $member);
|
$this->assertEquals($current->ID, $member->ID);
|
||||||
}
|
}
|
||||||
|
|
||||||
public function testGetAuthorName()
|
public function testGetAuthorName()
|
||||||
@ -993,6 +972,11 @@ class CommentsTest extends FunctionalTest
|
|||||||
|
|
||||||
public function testPurifyHtml()
|
public function testPurifyHtml()
|
||||||
{
|
{
|
||||||
|
if (!class_exists(HTMLPurifier_Config::class)) {
|
||||||
|
$this->markTestSkipped('HTMLPurifier class not found');
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
$comment = $this->objFromFixture(Comment::class, 'firstComA');
|
$comment = $this->objFromFixture(Comment::class, 'firstComA');
|
||||||
|
|
||||||
$dirtyHTML = '<p><script>alert("w00t")</script>my comment</p>';
|
$dirtyHTML = '<p><script>alert("w00t")</script>my comment</p>';
|
||||||
@ -1005,41 +989,48 @@ class CommentsTest extends FunctionalTest
|
|||||||
public function testGravatar()
|
public function testGravatar()
|
||||||
{
|
{
|
||||||
// Turn gravatars on
|
// Turn gravatars on
|
||||||
Config::inst()->update(CommentableItem::class, 'comments', array(
|
Config::modify()->set(CommentableItem::class, 'comments', array(
|
||||||
'use_gravatar' => true
|
'use_gravatar' => true,
|
||||||
|
'gravatar_size' => 80,
|
||||||
|
'gravatar_default' => 'identicon',
|
||||||
|
'gravatar_rating' => 'g'
|
||||||
));
|
));
|
||||||
|
|
||||||
$comment = $this->objFromFixture(Comment::class, 'firstComA');
|
$comment = $this->objFromFixture(Comment::class, 'firstComA');
|
||||||
|
|
||||||
$this->assertEquals(
|
$this->assertEquals(
|
||||||
'http://www.gravatar.com/avatar/d41d8cd98f00b204e9800998ecf8427e?s'
|
'http://www.gravatar.com/avatar/d41d8cd98f00b204e9800998ecf8427e?s'
|
||||||
. '=80&d=identicon&r=g',
|
. '=80&d=identicon&r=g',
|
||||||
$comment->gravatar()
|
$comment->Gravatar()
|
||||||
);
|
);
|
||||||
|
|
||||||
// Turn gravatars off
|
// Turn gravatars off
|
||||||
Config::inst()->update(CommentableItem::class, 'comments', array(
|
Config::modify()->set(CommentableItem::class, 'comments', array(
|
||||||
'use_gravatar' => false
|
'use_gravatar' => false
|
||||||
));
|
));
|
||||||
|
|
||||||
$comment = $this->objFromFixture(Comment::class, 'firstComA');
|
$comment = $this->objFromFixture(Comment::class, 'firstComA');
|
||||||
|
|
||||||
$this->assertEquals(
|
$this->assertEquals(
|
||||||
'',
|
'',
|
||||||
$comment->gravatar()
|
$comment->Gravatar()
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
|
||||||
public function testGetRepliesEnabled()
|
public function testGetRepliesEnabled()
|
||||||
{
|
{
|
||||||
$comment = $this->objFromFixture(Comment::class, 'firstComA');
|
Config::modify()->merge(CommentableItem::class, 'comments', array(
|
||||||
Config::inst()->update(CommentableItem::class, 'comments', array(
|
|
||||||
'nested_comments' => false
|
'nested_comments' => false
|
||||||
));
|
));
|
||||||
|
|
||||||
|
$comment = $this->objFromFixture(Comment::class, 'firstComA');
|
||||||
$this->assertFalse($comment->getRepliesEnabled());
|
$this->assertFalse($comment->getRepliesEnabled());
|
||||||
|
|
||||||
Config::inst()->update(CommentableItem::class, 'comments', array(
|
Config::modify()->merge(CommentableItem::class, 'comments', array(
|
||||||
'nested_comments' => true,
|
'nested_comments' => true,
|
||||||
'nested_depth' => 4
|
'nested_depth' => 4
|
||||||
));
|
));
|
||||||
|
|
||||||
$this->assertTrue($comment->getRepliesEnabled());
|
$this->assertTrue($comment->getRepliesEnabled());
|
||||||
|
|
||||||
$comment->Depth = 4;
|
$comment->Depth = 4;
|
||||||
@ -1047,15 +1038,17 @@ class CommentsTest extends FunctionalTest
|
|||||||
|
|
||||||
|
|
||||||
// 0 indicates no limit for nested_depth
|
// 0 indicates no limit for nested_depth
|
||||||
Config::inst()->update(CommentableItem::class, 'comments', array(
|
Config::modify()->set(CommentableItem::class, 'comments', array(
|
||||||
'nested_comments' => true,
|
'nested_comments' => true,
|
||||||
'nested_depth' => 0
|
'nested_depth' => 0
|
||||||
));
|
));
|
||||||
|
|
||||||
|
$comment = $this->objFromFixture(Comment::class, 'firstComA');
|
||||||
$comment->Depth = 234;
|
$comment->Depth = 234;
|
||||||
$this->assertTrue($comment->getRepliesEnabled());
|
|
||||||
$comment->markUnapproved();
|
$comment->markUnapproved();
|
||||||
$this->assertFalse($comment->getRepliesEnabled());
|
$this->assertFalse($comment->getRepliesEnabled());
|
||||||
|
|
||||||
$comment->markSpam();
|
$comment->markSpam();
|
||||||
$this->assertFalse($comment->getRepliesEnabled());
|
$this->assertFalse($comment->getRepliesEnabled());
|
||||||
|
|
||||||
@ -1065,15 +1058,18 @@ class CommentsTest extends FunctionalTest
|
|||||||
|
|
||||||
public function testAllReplies()
|
public function testAllReplies()
|
||||||
{
|
{
|
||||||
Config::inst()->update(CommentableItem::class, 'comments', array(
|
Config::modify()->set(CommentableItem::class, 'comments', array(
|
||||||
'nested_comments' => true,
|
'nested_comments' => true,
|
||||||
'nested_depth' => 4
|
'nested_depth' => 4
|
||||||
));
|
));
|
||||||
|
|
||||||
$comment = $this->objFromFixture(Comment::class, 'firstComA');
|
$comment = $this->objFromFixture(Comment::class, 'firstComA');
|
||||||
|
|
||||||
$this->assertEquals(
|
$this->assertEquals(
|
||||||
3,
|
3,
|
||||||
$comment->allReplies()->count()
|
$comment->allReplies()->count()
|
||||||
);
|
);
|
||||||
|
|
||||||
$child = new Comment();
|
$child = new Comment();
|
||||||
$child->Name = 'Fred Smith';
|
$child->Name = 'Fred Smith';
|
||||||
$child->Comment = 'This is a child comment';
|
$child->Comment = 'This is a child comment';
|
||||||
@ -1088,7 +1084,7 @@ class CommentsTest extends FunctionalTest
|
|||||||
$comment->allReplies()->count()
|
$comment->allReplies()->count()
|
||||||
);
|
);
|
||||||
|
|
||||||
Config::inst()->update(CommentableItem::class, 'comments', array(
|
Config::modify()->set(CommentableItem::class, 'comments', array(
|
||||||
'nested_comments' => false
|
'nested_comments' => false
|
||||||
));
|
));
|
||||||
|
|
||||||
@ -1099,7 +1095,7 @@ class CommentsTest extends FunctionalTest
|
|||||||
{
|
{
|
||||||
CommentableItem::add_extension(CommentsExtension::class);
|
CommentableItem::add_extension(CommentsExtension::class);
|
||||||
$this->logInWithPermission('ADMIN');
|
$this->logInWithPermission('ADMIN');
|
||||||
Config::inst()->update(CommentableItem::class, 'comments', array(
|
Config::modify()->set(CommentableItem::class, 'comments', array(
|
||||||
'nested_comments' => true,
|
'nested_comments' => true,
|
||||||
'nested_depth' => 4
|
'nested_depth' => 4
|
||||||
));
|
));
|
||||||
@ -1137,7 +1133,7 @@ class CommentsTest extends FunctionalTest
|
|||||||
$item->ModerationRequired = 'Required';
|
$item->ModerationRequired = 'Required';
|
||||||
$item->write();
|
$item->write();
|
||||||
|
|
||||||
Config::inst()->update(CommentableItemDisabled::class, 'comments', array(
|
Config::modify()->set(CommentableItemDisabled::class, 'comments', array(
|
||||||
'nested_comments' => true,
|
'nested_comments' => true,
|
||||||
'nested_depth' => 4,
|
'nested_depth' => 4,
|
||||||
'frontend_moderation' => true
|
'frontend_moderation' => true
|
||||||
@ -1151,7 +1147,7 @@ class CommentsTest extends FunctionalTest
|
|||||||
);
|
);
|
||||||
|
|
||||||
// Turn off nesting, empty array should be returned
|
// Turn off nesting, empty array should be returned
|
||||||
Config::inst()->update(CommentableItem::class, 'comments', array(
|
Config::modify()->set(CommentableItem::class, 'comments', array(
|
||||||
'nested_comments' => false
|
'nested_comments' => false
|
||||||
));
|
));
|
||||||
|
|
||||||
@ -1165,25 +1161,26 @@ class CommentsTest extends FunctionalTest
|
|||||||
|
|
||||||
public function testPagedReplies()
|
public function testPagedReplies()
|
||||||
{
|
{
|
||||||
Config::inst()->update(CommentableItem::class, 'comments', array(
|
Config::modify()->merge(CommentableItem::class, 'comments', array(
|
||||||
'nested_comments' => true,
|
'nested_comments' => true,
|
||||||
'nested_depth' => 4,
|
'nested_depth' => 4,
|
||||||
'comments_per_page' => 2 #Force 2nd page for 3 items
|
'comments_per_page' => 2
|
||||||
));
|
));
|
||||||
|
|
||||||
$comment = $this->objFromFixture(Comment::class, 'firstComA');
|
$comment = $this->objFromFixture(Comment::class, 'firstComA');
|
||||||
$pagedList = $comment->pagedReplies();
|
$pagedList = $comment->pagedReplies();
|
||||||
|
|
||||||
$this->assertEquals(
|
$this->assertEquals(
|
||||||
2,
|
2,
|
||||||
$pagedList->TotalPages()
|
$pagedList->TotalPages()
|
||||||
);
|
);
|
||||||
|
|
||||||
$this->assertEquals(
|
$this->assertEquals(
|
||||||
3,
|
3,
|
||||||
$pagedList->getTotalItems()
|
$pagedList->getTotalItems()
|
||||||
);
|
);
|
||||||
//TODO - 2nd page requires controller
|
|
||||||
//
|
Config::modify()->set(CommentableItem::class, 'comments', array(
|
||||||
Config::inst()->update(CommentableItem::class, 'comments', array(
|
|
||||||
'nested_comments' => false
|
'nested_comments' => false
|
||||||
));
|
));
|
||||||
|
|
||||||
@ -1192,7 +1189,7 @@ class CommentsTest extends FunctionalTest
|
|||||||
|
|
||||||
public function testReplyForm()
|
public function testReplyForm()
|
||||||
{
|
{
|
||||||
Config::inst()->update(CommentableItem::class, 'comments', array(
|
Config::modify()->set(CommentableItem::class, 'comments', array(
|
||||||
'nested_comments' => false,
|
'nested_comments' => false,
|
||||||
'nested_depth' => 4
|
'nested_depth' => 4
|
||||||
));
|
));
|
||||||
@ -1204,13 +1201,14 @@ class CommentsTest extends FunctionalTest
|
|||||||
$this->assertNull($form);
|
$this->assertNull($form);
|
||||||
|
|
||||||
// parent item so show form
|
// parent item so show form
|
||||||
Config::inst()->update(CommentableItem::class, 'comments', array(
|
Config::modify()->set(CommentableItem::class, 'comments', array(
|
||||||
'nested_comments' => true,
|
'nested_comments' => true,
|
||||||
'nested_depth' => 4
|
'nested_depth' => 4
|
||||||
));
|
));
|
||||||
$form = $comment->replyForm();
|
$form = $comment->ReplyForm();
|
||||||
|
$this->assertNotNull($form);
|
||||||
$names = array();
|
$names = array();
|
||||||
|
|
||||||
foreach ($form->Fields() as $field) {
|
foreach ($form->Fields() as $field) {
|
||||||
array_push($names, $field->getName());
|
array_push($names, $field->getName());
|
||||||
}
|
}
|
||||||
@ -1237,7 +1235,7 @@ class CommentsTest extends FunctionalTest
|
|||||||
|
|
||||||
public function testUpdateDepth()
|
public function testUpdateDepth()
|
||||||
{
|
{
|
||||||
Config::inst()->update(CommentableItem::class, 'comments', array(
|
Config::modify()->set(CommentableItem::class, 'comments', array(
|
||||||
'nested_comments' => true,
|
'nested_comments' => true,
|
||||||
'nested_depth' => 4
|
'nested_depth' => 4
|
||||||
));
|
));
|
||||||
|
@ -9,10 +9,6 @@ use SilverStripe\ORM\DataObject;
|
|||||||
use SilverStripe\Security\Member;
|
use SilverStripe\Security\Member;
|
||||||
use SilverStripe\Security\Permission;
|
use SilverStripe\Security\Permission;
|
||||||
|
|
||||||
/**
|
|
||||||
* @package comments
|
|
||||||
* @subpackage tests
|
|
||||||
*/
|
|
||||||
class CommentableItem extends DataObject implements TestOnly
|
class CommentableItem extends DataObject implements TestOnly
|
||||||
{
|
{
|
||||||
private static $db = array(
|
private static $db = array(
|
||||||
|
Loading…
Reference in New Issue
Block a user