From 3b2a883f223b3bf0c100623bbaba83ea95348296 Mon Sep 17 00:00:00 2001 From: "p.tacconi" Date: Fri, 15 Nov 2013 13:52:37 +0100 Subject: [PATCH 001/271] Updated Italian translation with E2EE strings --- view/it/messages.po | 2309 +++++++++++++++++++++++-------------------- view/it/strings.php | 91 +- 2 files changed, 1332 insertions(+), 1068 deletions(-) diff --git a/view/it/messages.po b/view/it/messages.po index b812dd64d..7a77586bc 100644 --- a/view/it/messages.po +++ b/view/it/messages.po @@ -13,8 +13,8 @@ msgid "" msgstr "" "Project-Id-Version: Red Matrix\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2013-10-18 00:02-0700\n" -"PO-Revision-Date: 2013-10-19 12:20+0000\n" +"POT-Creation-Date: 2013-11-15 00:03-0800\n" +"PO-Revision-Date: 2013-11-15 11:55+0000\n" "Last-Translator: tuscanhobbit Pa \n" "Language-Team: Italian (http://www.transifex.com/projects/p/red-matrix/language/it/)\n" "MIME-Version: 1.0\n" @@ -75,78 +75,78 @@ msgstr "Grazie," msgid "%s Administrator" msgstr "Amministratore %s" -#: ../../include/enotify.php:75 +#: ../../include/enotify.php:76 #, php-format msgid "%s " msgstr "%s " -#: ../../include/enotify.php:79 +#: ../../include/enotify.php:80 #, php-format msgid "[Red:Notify] New mail received at %s" msgstr "[Red:Notifica] Nuovo messaggio ricevuto alle %s" -#: ../../include/enotify.php:81 +#: ../../include/enotify.php:82 #, php-format msgid "%1$s sent you a new private message at %2$s." msgstr "%1$s ti ha mandato un messaggio privato alle %2$s." -#: ../../include/enotify.php:82 +#: ../../include/enotify.php:83 #, php-format msgid "%1$s sent you %2$s." msgstr "%1$s ti ha mandato %2$s." -#: ../../include/enotify.php:82 +#: ../../include/enotify.php:83 msgid "a private message" msgstr "un messaggio privato" -#: ../../include/enotify.php:83 +#: ../../include/enotify.php:84 #, php-format msgid "Please visit %s to view and/or reply to your private messages." msgstr "Visita %s per leggere i tuoi messaggi privati e rispondere." -#: ../../include/enotify.php:134 +#: ../../include/enotify.php:135 #, php-format msgid "%1$s commented on [zrl=%2$s]a %3$s[/zrl]" msgstr "%1$s ha commentato [zrl=%2$s]%3$s[/zrl]" -#: ../../include/enotify.php:141 +#: ../../include/enotify.php:142 #, php-format msgid "%1$s commented on [zrl=%2$s]%3$s's %4$s[/zrl]" msgstr "%1$s ha commentato [zrl=%2$s]%4$s di %3$s[/zrl]" -#: ../../include/enotify.php:149 +#: ../../include/enotify.php:150 #, php-format msgid "%1$s commented on [zrl=%2$s]your %3$s[/zrl]" msgstr "%1$s ha commentato [zrl=%2$s]%3$s[/zrl] che hai creato" -#: ../../include/enotify.php:159 +#: ../../include/enotify.php:160 #, php-format msgid "[Red:Notify] Comment to conversation #%1$d by %2$s" msgstr "[Red:Notifica] Nuovo commento di %2$s alla conversazione #%1$d" -#: ../../include/enotify.php:160 +#: ../../include/enotify.php:161 #, php-format msgid "%s commented on an item/conversation you have been following." msgstr "%s ha commentato una conversazione che stai seguendo." -#: ../../include/enotify.php:163 ../../include/enotify.php:180 +#: ../../include/enotify.php:164 ../../include/enotify.php:181 #: ../../include/enotify.php:206 ../../include/enotify.php:224 #: ../../include/enotify.php:237 #, php-format msgid "Please visit %s to view and/or reply to the conversation." msgstr "Visita %s per leggere o commentare la conversazione." -#: ../../include/enotify.php:170 +#: ../../include/enotify.php:171 #, php-format msgid "[Red:Notify] %s posted to your profile wall" msgstr "[Red:Notifica] %s ha scritto sulla tua bacheca" -#: ../../include/enotify.php:172 +#: ../../include/enotify.php:173 #, php-format msgid "%1$s posted to your profile wall at %2$s" msgstr "%1$s ha scritto sulla tua bacheca alle %2$s" -#: ../../include/enotify.php:174 +#: ../../include/enotify.php:175 #, php-format msgid "%1$s posted to [zrl=%2$s]your wall[/zrl]" msgstr "%1$s ha scritto sulla [zrl=%2$s]tua bacheca[/zrl]" @@ -248,26 +248,26 @@ msgstr "Foto:" msgid "Please visit %s to approve or reject the suggestion." msgstr "Visita %s per approvare o rifiutare il suggerimento." -#: ../../include/ItemObject.php:88 ../../mod/photos.php:960 +#: ../../include/ItemObject.php:88 ../../mod/photos.php:952 msgid "Private Message" msgstr "Messaggio privato" #: ../../include/ItemObject.php:95 ../../include/page_widgets.php:8 -#: ../../mod/webpages.php:98 ../../mod/settings.php:710 ../../mod/menu.php:55 -#: ../../mod/layouts.php:89 ../../mod/editlayout.php:100 -#: ../../mod/editwebpage.php:119 ../../mod/blocks.php:92 -#: ../../mod/editpost.php:94 ../../mod/editblock.php:114 +#: ../../mod/webpages.php:101 ../../mod/settings.php:712 ../../mod/menu.php:55 +#: ../../mod/layouts.php:102 ../../mod/editlayout.php:100 +#: ../../mod/editwebpage.php:119 ../../mod/blocks.php:93 +#: ../../mod/editpost.php:97 ../../mod/editblock.php:114 msgid "Edit" msgstr "Modifica" -#: ../../include/ItemObject.php:107 ../../include/conversation.php:631 -#: ../../mod/settings.php:711 ../../mod/admin.php:677 ../../mod/group.php:182 -#: ../../mod/photos.php:1141 ../../mod/connections.php:351 +#: ../../include/ItemObject.php:107 ../../include/conversation.php:628 +#: ../../mod/settings.php:713 ../../mod/admin.php:677 ../../mod/group.php:182 +#: ../../mod/photos.php:1130 ../../mod/connections.php:354 #: ../../mod/filestorage.php:82 msgid "Delete" msgstr "Elimina" -#: ../../include/ItemObject.php:113 ../../include/conversation.php:630 +#: ../../include/ItemObject.php:113 ../../include/conversation.php:627 msgid "Select" msgstr "Seleziona" @@ -291,7 +291,7 @@ msgstr "Attiva/disattiva preferito" msgid "starred" msgstr "preferito" -#: ../../include/ItemObject.php:160 ../../include/conversation.php:641 +#: ../../include/ItemObject.php:160 ../../include/conversation.php:638 msgid "Message is verified" msgstr "Messaggio verificato" @@ -299,19 +299,19 @@ msgstr "Messaggio verificato" msgid "add tag" msgstr "Aggiungi tag" -#: ../../include/ItemObject.php:174 ../../mod/photos.php:1070 +#: ../../include/ItemObject.php:174 ../../mod/photos.php:1058 msgid "I like this (toggle)" msgstr "Attiva/disattiva Mi piace" -#: ../../include/ItemObject.php:174 ../../include/taxonomy.php:249 +#: ../../include/ItemObject.php:174 ../../include/taxonomy.php:251 msgid "like" msgstr "mi piace" -#: ../../include/ItemObject.php:175 ../../mod/photos.php:1071 +#: ../../include/ItemObject.php:175 ../../mod/photos.php:1059 msgid "I don't like this (toggle)" msgstr "Attiva/disattiva Non mi piace" -#: ../../include/ItemObject.php:175 ../../include/taxonomy.php:250 +#: ../../include/ItemObject.php:175 ../../include/taxonomy.php:252 msgid "dislike" msgstr "non mi piace" @@ -333,110 +333,125 @@ msgid "to" msgstr "a" #: ../../include/ItemObject.php:204 +msgid "via" +msgstr "via" + +#: ../../include/ItemObject.php:205 msgid "Wall-to-Wall" msgstr "Da bacheca a bacheca" -#: ../../include/ItemObject.php:205 +#: ../../include/ItemObject.php:206 msgid "via Wall-To-Wall:" msgstr "da bacheca a bacheca:" -#: ../../include/ItemObject.php:215 ../../include/conversation.php:685 +#: ../../include/ItemObject.php:216 ../../include/conversation.php:682 #, php-format msgid " from %s" msgstr " da %s" -#: ../../include/ItemObject.php:244 ../../include/conversation.php:704 -#: ../../include/conversation.php:1104 ../../mod/photos.php:1073 -#: ../../mod/message.php:321 ../../mod/message.php:498 +#: ../../include/ItemObject.php:219 ../../include/conversation.php:685 +#, php-format +msgid "last edited: %s" +msgstr "ultima modifica: %s" + +#: ../../include/ItemObject.php:246 ../../include/conversation.php:702 +#: ../../include/conversation.php:1112 ../../mod/photos.php:1061 +#: ../../mod/message.php:332 ../../mod/message.php:516 #: ../../mod/editlayout.php:109 ../../mod/editwebpage.php:128 -#: ../../mod/editpost.php:103 ../../mod/editblock.php:123 +#: ../../mod/editpost.php:106 ../../mod/editblock.php:123 msgid "Please wait" msgstr "Attendere" -#: ../../include/ItemObject.php:265 +#: ../../include/ItemObject.php:267 #, php-format msgid "%d comment" msgid_plural "%d comments" msgstr[0] "%d commento" msgstr[1] "%d commenti" -#: ../../include/ItemObject.php:266 ../../include/js_strings.php:7 +#: ../../include/ItemObject.php:268 ../../include/js_strings.php:7 #: ../../include/contact_widgets.php:148 msgid "show more" -msgstr "mostra tutti" +msgstr "mostra tutto" -#: ../../include/ItemObject.php:525 ../../mod/photos.php:1089 -#: ../../mod/photos.php:1175 +#: ../../include/ItemObject.php:527 ../../mod/photos.php:1077 +#: ../../mod/photos.php:1164 msgid "This is you" msgstr "Questo sei tu" -#: ../../include/ItemObject.php:527 ../../include/js_strings.php:6 -#: ../../mod/photos.php:1091 ../../mod/photos.php:1177 +#: ../../include/ItemObject.php:529 ../../include/js_strings.php:6 +#: ../../mod/photos.php:1079 ../../mod/photos.php:1166 msgid "Comment" msgstr "Commento" -#: ../../include/ItemObject.php:528 ../../mod/events.php:458 -#: ../../mod/thing.php:190 ../../mod/invite.php:153 ../../mod/setup.php:283 -#: ../../mod/setup.php:326 ../../mod/settings.php:648 -#: ../../mod/settings.php:760 ../../mod/settings.php:788 -#: ../../mod/settings.php:812 ../../mod/settings.php:883 -#: ../../mod/settings.php:1051 ../../mod/connect.php:96 +#: ../../include/ItemObject.php:530 ../../mod/events.php:458 +#: ../../mod/thing.php:190 ../../mod/invite.php:154 ../../mod/setup.php:302 +#: ../../mod/setup.php:345 ../../mod/settings.php:650 +#: ../../mod/settings.php:762 ../../mod/settings.php:790 +#: ../../mod/settings.php:814 ../../mod/settings.php:885 +#: ../../mod/settings.php:1053 ../../mod/connect.php:96 #: ../../mod/sources.php:83 ../../mod/sources.php:110 ../../mod/admin.php:418 #: ../../mod/admin.php:670 ../../mod/admin.php:810 ../../mod/admin.php:1009 -#: ../../mod/admin.php:1096 ../../mod/group.php:87 ../../mod/photos.php:693 -#: ../../mod/photos.php:787 ../../mod/photos.php:1052 -#: ../../mod/photos.php:1092 ../../mod/photos.php:1178 -#: ../../mod/message.php:322 ../../mod/message.php:497 -#: ../../mod/connections.php:429 ../../mod/profiles.php:529 +#: ../../mod/admin.php:1096 ../../mod/group.php:87 ../../mod/photos.php:685 +#: ../../mod/photos.php:779 ../../mod/photos.php:1040 +#: ../../mod/photos.php:1080 ../../mod/photos.php:1167 +#: ../../mod/message.php:333 ../../mod/message.php:515 +#: ../../mod/connections.php:432 ../../mod/profiles.php:529 #: ../../mod/import.php:385 ../../mod/crepair.php:166 ../../mod/poke.php:166 #: ../../mod/fsuggest.php:108 ../../mod/mood.php:137 -#: ../../view/theme/redbasic/php/config.php:64 -#: ../../view/theme/apw/php/config.php:158 +#: ../../view/theme/redbasic/php/config.php:79 +#: ../../view/theme/apw/php/config.php:231 msgid "Submit" msgstr "Salva" -#: ../../include/ItemObject.php:529 +#: ../../include/ItemObject.php:531 msgid "Bold" msgstr "Grassetto" -#: ../../include/ItemObject.php:530 +#: ../../include/ItemObject.php:532 msgid "Italic" msgstr "Corsivo" -#: ../../include/ItemObject.php:531 +#: ../../include/ItemObject.php:533 msgid "Underline" msgstr "Sottolineato" -#: ../../include/ItemObject.php:532 +#: ../../include/ItemObject.php:534 msgid "Quote" msgstr "Citazione" -#: ../../include/ItemObject.php:533 +#: ../../include/ItemObject.php:535 msgid "Code" msgstr "Codice" -#: ../../include/ItemObject.php:534 +#: ../../include/ItemObject.php:536 msgid "Image" msgstr "Immagine" -#: ../../include/ItemObject.php:535 +#: ../../include/ItemObject.php:537 msgid "Link" msgstr "Link" -#: ../../include/ItemObject.php:536 +#: ../../include/ItemObject.php:538 msgid "Video" msgstr "Video" -#: ../../include/ItemObject.php:537 ../../include/conversation.php:1124 -#: ../../mod/photos.php:1093 ../../mod/editlayout.php:129 -#: ../../mod/editwebpage.php:150 ../../mod/editpost.php:123 -#: ../../mod/editblock.php:144 +#: ../../include/ItemObject.php:539 ../../include/conversation.php:1075 +#: ../../mod/webpages.php:105 ../../mod/photos.php:1081 +#: ../../mod/editlayout.php:129 ../../mod/editwebpage.php:150 +#: ../../mod/editpost.php:126 ../../mod/editblock.php:144 msgid "Preview" msgstr "Anteprima" +#: ../../include/ItemObject.php:542 ../../include/conversation.php:1139 +#: ../../mod/message.php:338 ../../mod/message.php:521 +#: ../../mod/editpost.php:134 +msgid "Encrypt text" +msgstr "Crittografia del testo" + #: ../../include/Contact.php:87 ../../include/contact_widgets.php:23 -#: ../../mod/match.php:58 ../../mod/suggest.php:56 ../../mod/directory.php:185 -#: ../../boot.php:1716 +#: ../../mod/match.php:58 ../../mod/suggest.php:56 ../../mod/directory.php:198 +#: ../../boot.php:1745 msgid "Connect" msgstr "Connetti" @@ -448,33 +463,33 @@ msgstr "Nuova finestra" msgid "Open the selected location in a different window or browser tab" msgstr "Apri l'indirizzo selezionato in una nuova scheda o finestra" -#: ../../include/Contact.php:492 ../../include/conversation.php:932 +#: ../../include/Contact.php:524 ../../include/conversation.php:930 msgid "Poke" msgstr "Poke" -#: ../../include/Contact.php:493 ../../include/conversation.php:926 +#: ../../include/Contact.php:525 ../../include/conversation.php:924 msgid "View Status" msgstr "Guarda il messaggio di stato" -#: ../../include/Contact.php:494 ../../include/nav.php:75 -#: ../../include/conversation.php:927 ../../mod/connections.php:304 -#: ../../mod/connections.php:418 +#: ../../include/Contact.php:526 ../../include/nav.php:76 +#: ../../include/conversation.php:925 ../../mod/connections.php:307 +#: ../../mod/connections.php:421 msgid "View Profile" msgstr "Profilo" -#: ../../include/Contact.php:495 ../../include/conversation.php:928 +#: ../../include/Contact.php:527 ../../include/conversation.php:926 msgid "View Photos" msgstr "Guarda le foto" -#: ../../include/Contact.php:496 +#: ../../include/Contact.php:528 msgid "Network Posts" msgstr "Articoli dalla tua rete" -#: ../../include/Contact.php:497 ../../include/conversation.php:930 +#: ../../include/Contact.php:529 ../../include/conversation.php:928 msgid "Edit Contact" msgstr "Modifica il contatto" -#: ../../include/Contact.php:498 ../../include/conversation.php:931 +#: ../../include/Contact.php:530 ../../include/conversation.php:929 msgid "Send PM" msgstr "Invia messaggio privato" @@ -539,7 +554,7 @@ msgid "RSS/Atom" msgstr "RSS/Atom" #: ../../include/contact_selectors.php:77 ../../mod/admin.php:673 -#: ../../mod/admin.php:682 ../../boot.php:1444 +#: ../../mod/admin.php:682 ../../boot.php:1465 msgid "Email" msgstr "Email" @@ -645,22 +660,6 @@ msgstr "%1$d %2$s fa" msgid "Cannot locate DNS info for database server '%s'" msgstr "Non trovo le informazioni DNS per il database server '%s'" -#: ../../include/dir_fns.php:15 -msgid "Sort Options" -msgstr "Opzioni di ordinamento" - -#: ../../include/dir_fns.php:16 -msgid "Alphabetic" -msgstr "Alfabetico" - -#: ../../include/dir_fns.php:17 -msgid "Reverse Alphabetic" -msgstr "Alfabetico inverso" - -#: ../../include/dir_fns.php:18 -msgid "Newest to Oldest" -msgstr "Dal più nuovo al più vecchio" - #: ../../include/event.php:11 ../../include/bb2diaspora.php:433 msgid "l F d, Y \\@ g:i A" msgstr "l d F Y \\@ G:i" @@ -674,7 +673,7 @@ msgid "Finishes:" msgstr "Fine:" #: ../../include/event.php:40 ../../include/bb2diaspora.php:455 -#: ../../mod/events.php:450 ../../mod/directory.php:160 ../../boot.php:1766 +#: ../../mod/events.php:450 ../../mod/directory.php:173 ../../boot.php:1795 msgid "Location:" msgstr "Luogo:" @@ -682,6 +681,14 @@ msgstr "Luogo:" msgid "General Features" msgstr "Funzionalità generali" +#: ../../include/features.php:23 +msgid "Content Expiration" +msgstr "Scadenza" + +#: ../../include/features.php:23 +msgid "Remove posts/comments and/or private messages at a future time" +msgstr "Elimina gli articoli, i commenti o i messaggi privati dopo che è trascorso del tempo" + #: ../../include/features.php:24 msgid "Multiple Profiles" msgstr "Profili multipli" @@ -710,7 +717,7 @@ msgstr "Abilita gli album fotografici con funzionalità avanzate" msgid "Extended Identity Sharing" msgstr "Condivisione avanzata dell'identità" -#: ../../include/features.php:28 ../../include/js_strings.php:28 +#: ../../include/features.php:28 ../../include/js_strings.php:30 msgid " " msgstr " " @@ -752,7 +759,7 @@ msgstr "Anteprima articolo" msgid "Allow previewing posts and comments before publishing them" msgstr "Abilita l'anteprima degli articoli e dei commenti prima di pubblicarli" -#: ../../include/features.php:38 ../../mod/settings.php:118 +#: ../../include/features.php:38 ../../mod/settings.php:120 #: ../../mod/sources.php:67 msgid "Channel Sources" msgstr "Sorgenti del canale" @@ -761,124 +768,132 @@ msgstr "Sorgenti del canale" msgid "Automatically import channel content from other channels or feeds" msgstr "Importa automaticamente il contenuto del canale da altri canali o feed" -#: ../../include/features.php:43 +#: ../../include/features.php:39 +msgid "Even More Encryption" +msgstr "Crittografia addizionale" + +#: ../../include/features.php:39 +msgid "Allow encryption of content end-to-end with a shared secret key" +msgstr "Abilita la crittografia dei contenuti tra il mittente e i destinatari con una chiave segreta" + +#: ../../include/features.php:44 msgid "Network and Stream Filtering" msgstr "Filtraggio dei contenuti" -#: ../../include/features.php:44 +#: ../../include/features.php:45 msgid "Search by Date" msgstr "Ricerca per data" -#: ../../include/features.php:44 +#: ../../include/features.php:45 msgid "Ability to select posts by date ranges" msgstr "Per selezionare gli articoli in un intervallo tra date" -#: ../../include/features.php:45 +#: ../../include/features.php:46 msgid "Collections Filter" msgstr "Filtra per insiemi di canali" -#: ../../include/features.php:45 +#: ../../include/features.php:46 msgid "Enable widget to display Network posts only from selected collections" msgstr "Mostra il riquadro per filtrare gli articoli di certi insiemi di canali" -#: ../../include/features.php:46 ../../mod/network.php:173 +#: ../../include/features.php:47 ../../mod/network.php:173 #: ../../mod/search.php:17 msgid "Saved Searches" msgstr "Ricerche salvate" -#: ../../include/features.php:46 +#: ../../include/features.php:47 msgid "Save search terms for re-use" msgstr "Salva i termini delle ricerche per poterle ripetere" -#: ../../include/features.php:47 +#: ../../include/features.php:48 msgid "Network Personal Tab" msgstr "Attività personale" -#: ../../include/features.php:47 +#: ../../include/features.php:48 msgid "Enable tab to display only Network posts that you've interacted on" msgstr "Abilita il link per mostrare solamente i contenuti con cui hai interagito" -#: ../../include/features.php:48 +#: ../../include/features.php:49 msgid "Network New Tab" msgstr "Contenuti nuovi" -#: ../../include/features.php:48 +#: ../../include/features.php:49 msgid "Enable tab to display all new Network activity" msgstr "Abilita il link per visualizzare solo i nuovi contenuti" -#: ../../include/features.php:49 +#: ../../include/features.php:50 msgid "Affinity Tool" msgstr "Filtro per affinità" -#: ../../include/features.php:49 +#: ../../include/features.php:50 msgid "Filter stream activity by depth of relationships" msgstr "Permette di selezionare i contenuti in base al livello di amicizia" -#: ../../include/features.php:54 +#: ../../include/features.php:55 msgid "Post/Comment Tools" msgstr "Gestione articoli e commenti" -#: ../../include/features.php:55 +#: ../../include/features.php:56 msgid "Multiple Deletion" msgstr "Eliminazione multipla" -#: ../../include/features.php:55 +#: ../../include/features.php:56 msgid "Select and delete multiple posts/comments at once" msgstr "Rendi possibile l'eliminazione di molti articoli o commenti con un solo comando" -#: ../../include/features.php:56 +#: ../../include/features.php:57 msgid "Edit Sent Posts" msgstr "Modifica gli articoli già inviati" -#: ../../include/features.php:56 +#: ../../include/features.php:57 msgid "Edit and correct posts and comments after sending" msgstr "Modifica e correggi gli articoli o i commenti anche dopo l'invio" -#: ../../include/features.php:57 +#: ../../include/features.php:58 msgid "Tagging" msgstr "Tag" -#: ../../include/features.php:57 +#: ../../include/features.php:58 msgid "Ability to tag existing posts" msgstr "Permetti l'aggiunta di tag su articoli già esistenti" -#: ../../include/features.php:58 +#: ../../include/features.php:59 msgid "Post Categories" msgstr "Categorie degli articoli" -#: ../../include/features.php:58 +#: ../../include/features.php:59 msgid "Add categories to your posts" msgstr "Abilita le categorie per i tuoi articoli" -#: ../../include/features.php:59 ../../include/contact_widgets.php:76 +#: ../../include/features.php:60 ../../include/contact_widgets.php:76 msgid "Saved Folders" msgstr "Cartelle salvate" -#: ../../include/features.php:59 +#: ../../include/features.php:60 msgid "Ability to file posts under folders" msgstr "Abilita la raccolta dei tuoi articoli in cartelle" -#: ../../include/features.php:60 +#: ../../include/features.php:61 msgid "Dislike Posts" msgstr "Non mi piace" -#: ../../include/features.php:60 +#: ../../include/features.php:61 msgid "Ability to dislike posts/comments" msgstr "Abilità la funzionalità \"non mi piace\" per i tuoi articoli" -#: ../../include/features.php:61 +#: ../../include/features.php:62 msgid "Star Posts" msgstr "Articoli stella (preferiti)" -#: ../../include/features.php:61 +#: ../../include/features.php:62 msgid "Ability to mark special posts with a star indicator" msgstr "Mostra la stella per scegliere gli articoli preferiti" -#: ../../include/features.php:62 +#: ../../include/features.php:63 msgid "Tag Cloud" msgstr "Nuvola di tag" -#: ../../include/features.php:62 +#: ../../include/features.php:63 msgid "Provide a personal tag cloud on your channel page" msgstr "Mostra la nuvola dei tag che usi di più sulla pagina del tuo canale" @@ -941,72 +956,80 @@ msgstr "Le password non corrispondono" msgid "everybody" msgstr "tutti" +#: ../../include/js_strings.php:12 +msgid "Secret Passphrase" +msgstr "Chiave segreta" + #: ../../include/js_strings.php:13 +msgid "Passphrase hint" +msgstr "Suggerimento per la chiave segreta" + +#: ../../include/js_strings.php:15 msgid "timeago.prefixAgo" msgstr "timeago.prefixAgo" -#: ../../include/js_strings.php:14 +#: ../../include/js_strings.php:16 msgid "timeago.suffixAgo" msgstr "timeago.suffixAgo" -#: ../../include/js_strings.php:15 +#: ../../include/js_strings.php:17 msgid "ago" msgstr "fa" -#: ../../include/js_strings.php:16 +#: ../../include/js_strings.php:18 msgid "from now" msgstr "da adesso" -#: ../../include/js_strings.php:17 +#: ../../include/js_strings.php:19 msgid "less than a minute" msgstr "meno di un minuto" -#: ../../include/js_strings.php:18 +#: ../../include/js_strings.php:20 msgid "about a minute" msgstr "circa un minuto" -#: ../../include/js_strings.php:19 +#: ../../include/js_strings.php:21 #, php-format msgid "%d minutes" msgstr "%d minuti" -#: ../../include/js_strings.php:20 +#: ../../include/js_strings.php:22 msgid "about an hour" msgstr "circa un’ora" -#: ../../include/js_strings.php:21 +#: ../../include/js_strings.php:23 #, php-format msgid "about %d hours" msgstr "circa %d ore" -#: ../../include/js_strings.php:22 +#: ../../include/js_strings.php:24 msgid "a day" msgstr "un giorno" -#: ../../include/js_strings.php:23 +#: ../../include/js_strings.php:25 #, php-format msgid "%d days" msgstr "%d giorni" -#: ../../include/js_strings.php:24 +#: ../../include/js_strings.php:26 msgid "about a month" msgstr "circa un mese" -#: ../../include/js_strings.php:25 +#: ../../include/js_strings.php:27 #, php-format msgid "%d months" msgstr "%d mesi" -#: ../../include/js_strings.php:26 +#: ../../include/js_strings.php:28 msgid "about a year" msgstr "circa un anno" -#: ../../include/js_strings.php:27 +#: ../../include/js_strings.php:29 #, php-format msgid "%d years" msgstr "%d anni" -#: ../../include/js_strings.php:29 +#: ../../include/js_strings.php:31 msgid "timeago.numbers" msgstr "timeago.numbers" @@ -1018,11 +1041,11 @@ msgstr "Devi scegliere un destinatario." msgid "[no subject]" msgstr "[nessun titolo]" -#: ../../include/message.php:38 +#: ../../include/message.php:42 msgid "Unable to determine sender." msgstr "Impossibile determinare il mittente." -#: ../../include/message.php:138 +#: ../../include/message.php:143 msgid "Stored post could not be verified." msgstr "Non è stato possibile verificare l'articolo inserito." @@ -1031,7 +1054,7 @@ msgid "view full size" msgstr "guarda nelle dimensioni reali" #: ../../include/photo/photo_driver.php:609 ../../include/photos.php:51 -#: ../../mod/photos.php:97 ../../mod/photos.php:772 ../../mod/photos.php:794 +#: ../../mod/photos.php:97 ../../mod/photos.php:764 ../../mod/photos.php:786 #: ../../mod/profile_photo.php:88 ../../mod/profile_photo.php:235 #: ../../mod/profile_photo.php:346 msgid "Profile Photos" @@ -1042,12 +1065,12 @@ msgstr "Foto del profilo" msgid "Profile" msgstr "Profilo" -#: ../../include/profile_advanced.php:15 ../../mod/settings.php:1059 +#: ../../include/profile_advanced.php:15 ../../mod/settings.php:1061 msgid "Full Name:" msgstr "Nome completo:" -#: ../../include/profile_advanced.php:17 ../../mod/directory.php:162 -#: ../../boot.php:1768 +#: ../../include/profile_advanced.php:17 ../../mod/directory.php:175 +#: ../../boot.php:1797 msgid "Gender:" msgstr "Sesso:" @@ -1067,8 +1090,8 @@ msgstr "Compleanno:" msgid "Age:" msgstr "Età:" -#: ../../include/profile_advanced.php:37 ../../mod/directory.php:164 -#: ../../boot.php:1769 +#: ../../include/profile_advanced.php:37 ../../mod/directory.php:177 +#: ../../boot.php:1798 msgid "Status:" msgstr "Stato:" @@ -1081,8 +1104,8 @@ msgstr "per %1$d %2$s" msgid "Sexual Preference:" msgstr "Preferenze sessuali:" -#: ../../include/profile_advanced.php:48 ../../mod/directory.php:166 -#: ../../boot.php:1770 +#: ../../include/profile_advanced.php:48 ../../mod/directory.php:179 +#: ../../boot.php:1799 msgid "Homepage:" msgstr "Home page:" @@ -1102,7 +1125,7 @@ msgstr "Orientamento politico:" msgid "Religion:" msgstr "Religione:" -#: ../../include/profile_advanced.php:58 ../../mod/directory.php:168 +#: ../../include/profile_advanced.php:58 ../../mod/directory.php:181 msgid "About:" msgstr "Informazioni:" @@ -1189,7 +1212,7 @@ msgstr[1] "%d contatti" msgid "View Connections" msgstr "Elenco contatti" -#: ../../include/text.php:730 ../../include/nav.php:134 +#: ../../include/text.php:730 ../../include/nav.php:135 #: ../../mod/search.php:96 msgid "Search" msgstr "Cerca" @@ -1326,167 +1349,167 @@ msgstr "rilassato" msgid "surprised" msgstr "sorpreso" -#: ../../include/text.php:968 +#: ../../include/text.php:970 msgid "Monday" msgstr "lunedì" -#: ../../include/text.php:968 +#: ../../include/text.php:970 msgid "Tuesday" msgstr "martedì" -#: ../../include/text.php:968 +#: ../../include/text.php:970 msgid "Wednesday" msgstr "mercoledì" -#: ../../include/text.php:968 +#: ../../include/text.php:970 msgid "Thursday" msgstr "giovedì" -#: ../../include/text.php:968 +#: ../../include/text.php:970 msgid "Friday" msgstr "venerdì" -#: ../../include/text.php:968 +#: ../../include/text.php:970 msgid "Saturday" msgstr "sabato" -#: ../../include/text.php:968 +#: ../../include/text.php:970 msgid "Sunday" msgstr "domenica" -#: ../../include/text.php:972 +#: ../../include/text.php:974 msgid "January" msgstr "gennaio" -#: ../../include/text.php:972 +#: ../../include/text.php:974 msgid "February" msgstr "febbraio" -#: ../../include/text.php:972 +#: ../../include/text.php:974 msgid "March" msgstr "marzo" -#: ../../include/text.php:972 +#: ../../include/text.php:974 msgid "April" msgstr "aprile" -#: ../../include/text.php:972 +#: ../../include/text.php:974 msgid "May" msgstr "maggio" -#: ../../include/text.php:972 +#: ../../include/text.php:974 msgid "June" msgstr "giugno" -#: ../../include/text.php:972 +#: ../../include/text.php:974 msgid "July" msgstr "luglio" -#: ../../include/text.php:972 +#: ../../include/text.php:974 msgid "August" msgstr "agosto" -#: ../../include/text.php:972 +#: ../../include/text.php:974 msgid "September" msgstr "settembre" -#: ../../include/text.php:972 +#: ../../include/text.php:974 msgid "October" msgstr "ottobre" -#: ../../include/text.php:972 +#: ../../include/text.php:974 msgid "November" msgstr "novembre" -#: ../../include/text.php:972 +#: ../../include/text.php:974 msgid "December" msgstr "dicembre" -#: ../../include/text.php:1050 ../../mod/message.php:433 +#: ../../include/text.php:1052 ../../mod/message.php:453 msgid "unknown.???" msgstr "sconosciuto???" -#: ../../include/text.php:1051 ../../mod/message.php:434 +#: ../../include/text.php:1053 ../../mod/message.php:454 msgid "bytes" msgstr "byte" -#: ../../include/text.php:1086 +#: ../../include/text.php:1088 msgid "remove category" msgstr "rimuovi la categoria" -#: ../../include/text.php:1108 +#: ../../include/text.php:1110 msgid "remove from file" msgstr "rimuovi dal file" -#: ../../include/text.php:1162 ../../include/text.php:1174 +#: ../../include/text.php:1164 ../../include/text.php:1176 msgid "Click to open/close" msgstr "Clicca per aprire/chiudere" -#: ../../include/text.php:1345 ../../mod/events.php:326 +#: ../../include/text.php:1352 ../../mod/events.php:326 msgid "link to source" msgstr "Link all'originale" -#: ../../include/text.php:1364 +#: ../../include/text.php:1371 msgid "Select a page layout: " msgstr "Scegli il layout della pagina:" -#: ../../include/text.php:1367 ../../include/text.php:1432 +#: ../../include/text.php:1374 ../../include/text.php:1439 msgid "default" msgstr "predefinito" -#: ../../include/text.php:1403 +#: ../../include/text.php:1410 msgid "Page content type: " msgstr "Contenuto della pagina:" -#: ../../include/text.php:1444 +#: ../../include/text.php:1451 msgid "Select an alternate language" msgstr "Seleziona una lingua diversa" -#: ../../include/text.php:1596 ../../include/conversation.php:117 +#: ../../include/text.php:1603 ../../include/conversation.php:117 #: ../../mod/like.php:103 ../../mod/subthread.php:89 ../../mod/tagger.php:45 msgid "photo" msgstr "la foto" -#: ../../include/text.php:1599 ../../include/conversation.php:120 +#: ../../include/text.php:1606 ../../include/conversation.php:120 #: ../../mod/tagger.php:49 msgid "event" msgstr "l'evento" -#: ../../include/text.php:1602 ../../include/conversation.php:145 +#: ../../include/text.php:1609 ../../include/conversation.php:145 #: ../../mod/like.php:103 ../../mod/subthread.php:89 ../../mod/tagger.php:53 msgid "status" msgstr "il messaggio di stato" -#: ../../include/text.php:1604 ../../include/conversation.php:147 +#: ../../include/text.php:1611 ../../include/conversation.php:147 #: ../../mod/tagger.php:55 msgid "comment" msgstr "il commento" -#: ../../include/text.php:1609 +#: ../../include/text.php:1616 msgid "activity" msgstr "l'attività" -#: ../../include/text.php:1871 +#: ../../include/text.php:1878 msgid "Design" msgstr "Design" -#: ../../include/text.php:1873 +#: ../../include/text.php:1880 msgid "Blocks" msgstr "Riquadri" -#: ../../include/text.php:1874 +#: ../../include/text.php:1881 msgid "Menus" msgstr "Menù" -#: ../../include/text.php:1875 +#: ../../include/text.php:1882 msgid "Layouts" msgstr "Layout" -#: ../../include/text.php:1876 +#: ../../include/text.php:1883 msgid "Pages" msgstr "Pagine" -#: ../../include/identity.php:14 ../../mod/item.php:1126 +#: ../../include/identity.php:14 ../../mod/item.php:1131 msgid "Unable to obtain identity information from database" msgstr "Impossibile ottenere le informazioni di identificazione dal database" @@ -1502,45 +1525,57 @@ msgstr "Nome troppo lungo" msgid "No account identifier" msgstr "Account senza identificativo" -#: ../../include/identity.php:98 +#: ../../include/identity.php:90 +msgid "Nickname is required." +msgstr "Il nome dell'account è obbligatorio." + +#: ../../include/identity.php:104 msgid "" "Nickname has unsupported characters or is already being used on this site." msgstr "Il nome dell'account è già in uso oppure ha dei caratteri non supportati." -#: ../../include/identity.php:157 +#: ../../include/identity.php:163 msgid "Unable to retrieve created identity" msgstr "Impossibile caricare l'identità creata" -#: ../../include/identity.php:214 +#: ../../include/identity.php:220 msgid "Default Profile" msgstr "Profilo predefinito" -#: ../../include/identity.php:239 ../../include/profile_selectors.php:42 -#: ../../mod/network.php:387 ../../mod/connections.php:384 +#: ../../include/identity.php:245 ../../include/profile_selectors.php:42 +#: ../../mod/network.php:387 ../../mod/connections.php:387 msgid "Friends" msgstr "Amici" -#: ../../include/bbcode.php:94 ../../include/bbcode.php:451 -#: ../../include/bbcode.php:454 +#: ../../include/bbcode.php:94 ../../include/bbcode.php:494 +#: ../../include/bbcode.php:497 msgid "Image/photo" msgstr "Immagine" -#: ../../include/bbcode.php:141 +#: ../../include/bbcode.php:126 ../../include/bbcode.php:502 +msgid "Encrypted content" +msgstr "Contenuto crittografato" + +#: ../../include/bbcode.php:173 #, php-format msgid "%1$s wrote the following %2$s %3$s" msgstr "%1$s ha scritto %2$s seguente %3$s" -#: ../../include/bbcode.php:143 +#: ../../include/bbcode.php:175 msgid "post" msgstr "l'articolo" -#: ../../include/bbcode.php:411 ../../include/bbcode.php:431 +#: ../../include/bbcode.php:454 ../../include/bbcode.php:474 msgid "$1 wrote:" msgstr "$1 ha scritto:" -#: ../../include/bbcode.php:458 ../../include/bbcode.php:459 -msgid "Encrypted content" -msgstr "Contenuto crittografato" +#: ../../include/oembed.php:149 +msgid "Embedded content" +msgstr "Contenuti incorporati" + +#: ../../include/oembed.php:158 +msgid "Embedding disabled" +msgstr "Contenuti incorporati - funzione disabilitata" #: ../../include/notify.php:23 msgid "created a new post" @@ -1551,39 +1586,31 @@ msgstr "Ha creato un nuovo articolo" msgid "commented on %s's post" msgstr "ha commentato l'articolo di %s" -#: ../../include/oembed.php:148 -msgid "Embedded content" -msgstr "Contenuti incorporati" - -#: ../../include/oembed.php:157 -msgid "Embedding disabled" -msgstr "Contenuti incorporati - funzione disabilitata" - #: ../../include/photos.php:15 ../../include/attach.php:102 #: ../../include/attach.php:133 ../../include/attach.php:189 #: ../../include/attach.php:204 ../../include/attach.php:237 #: ../../include/attach.php:251 ../../include/attach.php:272 -#: ../../include/attach.php:464 ../../include/items.php:3548 -#: ../../mod/common.php:43 ../../mod/events.php:134 ../../mod/invite.php:13 -#: ../../mod/invite.php:102 ../../mod/allfriends.php:10 -#: ../../mod/webpages.php:40 ../../mod/api.php:26 ../../mod/api.php:31 -#: ../../mod/lastpost.php:93 ../../mod/page.php:30 ../../mod/setup.php:181 -#: ../../mod/settings.php:625 ../../mod/viewconnections.php:33 -#: ../../mod/viewconnections.php:38 ../../mod/delegate.php:6 -#: ../../mod/sources.php:48 ../../mod/mitem.php:92 ../../mod/group.php:15 -#: ../../mod/photos.php:74 ../../mod/photos.php:662 ../../mod/viewsrc.php:12 -#: ../../mod/menu.php:40 ../../mod/message.php:204 ../../mod/layouts.php:27 -#: ../../mod/layouts.php:42 ../../mod/network.php:7 ../../mod/intro.php:50 -#: ../../mod/connections.php:174 ../../mod/profiles.php:163 -#: ../../mod/profiles.php:476 ../../mod/new_channel.php:66 -#: ../../mod/new_channel.php:97 ../../mod/filestorage.php:26 -#: ../../mod/manage.php:6 ../../mod/crepair.php:115 -#: ../../mod/editlayout.php:48 ../../mod/nogroup.php:25 -#: ../../mod/profile_photo.php:197 ../../mod/profile_photo.php:210 -#: ../../mod/editwebpage.php:42 ../../mod/editwebpage.php:64 -#: ../../mod/notifications.php:66 ../../mod/blocks.php:29 -#: ../../mod/blocks.php:44 ../../mod/editpost.php:13 ../../mod/poke.php:128 -#: ../../mod/channel.php:123 ../../mod/fsuggest.php:78 +#: ../../include/attach.php:464 ../../include/attach.php:539 +#: ../../include/items.php:3572 ../../mod/common.php:43 +#: ../../mod/events.php:134 ../../mod/invite.php:13 ../../mod/invite.php:102 +#: ../../mod/allfriends.php:10 ../../mod/webpages.php:40 ../../mod/api.php:26 +#: ../../mod/api.php:31 ../../mod/lastpost.php:93 ../../mod/page.php:30 +#: ../../mod/page.php:80 ../../mod/setup.php:200 ../../mod/settings.php:627 +#: ../../mod/viewconnections.php:33 ../../mod/viewconnections.php:38 +#: ../../mod/delegate.php:6 ../../mod/sources.php:48 ../../mod/mitem.php:92 +#: ../../mod/group.php:15 ../../mod/photos.php:74 ../../mod/photos.php:654 +#: ../../mod/viewsrc.php:12 ../../mod/menu.php:40 ../../mod/message.php:208 +#: ../../mod/layouts.php:27 ../../mod/layouts.php:42 ../../mod/network.php:7 +#: ../../mod/intro.php:50 ../../mod/connections.php:177 +#: ../../mod/profiles.php:163 ../../mod/profiles.php:476 +#: ../../mod/new_channel.php:66 ../../mod/new_channel.php:97 +#: ../../mod/filestorage.php:26 ../../mod/manage.php:6 +#: ../../mod/crepair.php:115 ../../mod/editlayout.php:48 +#: ../../mod/nogroup.php:25 ../../mod/profile_photo.php:197 +#: ../../mod/profile_photo.php:210 ../../mod/editwebpage.php:42 +#: ../../mod/editwebpage.php:64 ../../mod/notifications.php:66 +#: ../../mod/blocks.php:29 ../../mod/blocks.php:44 ../../mod/editpost.php:13 +#: ../../mod/poke.php:128 ../../mod/channel.php:123 ../../mod/fsuggest.php:78 #: ../../mod/editblock.php:48 ../../mod/item.php:173 ../../mod/item.php:181 #: ../../mod/suggest.php:32 ../../mod/register.php:60 ../../mod/regmod.php:18 #: ../../mod/mood.php:114 ../../index.php:178 ../../index.php:340 @@ -1607,12 +1634,12 @@ msgstr "Impossibile elaborare l'immagine" msgid "Photo storage failed." msgstr "Impossibile caricare la foto." -#: ../../include/photos.php:288 ../../boot.php:2217 +#: ../../include/photos.php:288 ../../boot.php:2246 msgid "Photo Albums" msgstr "Album foto" -#: ../../include/photos.php:292 ../../mod/photos.php:810 -#: ../../mod/photos.php:1287 +#: ../../include/photos.php:292 ../../mod/photos.php:802 +#: ../../mod/photos.php:1276 msgid "Upload New Photos" msgstr "Carica nuove foto" @@ -1882,243 +1909,25 @@ msgstr "Il file non può essere verificato. Caricamento fallito." msgid "Path not available." msgstr "Percorso non disponibile." -#: ../../include/nav.php:71 ../../include/nav.php:86 ../../boot.php:1441 -msgid "Logout" -msgstr "Esci" +#: ../../include/attach.php:544 +msgid "Empty pathname" +msgstr "Il percorso del file è vuoto" -#: ../../include/nav.php:71 ../../include/nav.php:86 -msgid "End this session" -msgstr "Chiudi questa sessione" +#: ../../include/attach.php:562 +msgid "duplicate filename or path" +msgstr "il file o percorso del file è duplicato" -#: ../../include/nav.php:74 ../../include/nav.php:120 -msgid "Home" -msgstr "Bacheca" +#: ../../include/attach.php:584 +msgid "Path not found." +msgstr "Percorso del file non trovato." -#: ../../include/nav.php:74 -msgid "Your posts and conversations" -msgstr "I tuoi articoli e conversazioni" +#: ../../include/attach.php:628 +msgid "mkdir failed." +msgstr "mkdir fallito." -#: ../../include/nav.php:75 -msgid "Your profile page" -msgstr "Il tuo profilo" - -#: ../../include/nav.php:77 -msgid "Edit Profiles" -msgstr "Modifica i profili" - -#: ../../include/nav.php:77 -msgid "Manage/Edit Profiles" -msgstr "Gestisci e modifica i profili" - -#: ../../include/nav.php:78 ../../mod/fbrowser.php:25 ../../boot.php:2214 -msgid "Photos" -msgstr "Foto" - -#: ../../include/nav.php:78 -msgid "Your photos" -msgstr "Le tue foto" - -#: ../../include/nav.php:84 ../../boot.php:1442 -msgid "Login" -msgstr "Accedi" - -#: ../../include/nav.php:84 -msgid "Sign in" -msgstr "Entra" - -#: ../../include/nav.php:101 -#, php-format -msgid "%s - click to logout" -msgstr "%s - clicca per uscire" - -#: ../../include/nav.php:106 -msgid "Click to authenticate to your home hub" -msgstr "Clicca per autenticarti sul tuo server principale" - -#: ../../include/nav.php:120 -msgid "Home Page" -msgstr "Bacheca" - -#: ../../include/nav.php:124 ../../mod/register.php:187 ../../boot.php:1417 -msgid "Register" -msgstr "Iscriviti" - -#: ../../include/nav.php:124 -msgid "Create an account" -msgstr "Crea un account" - -#: ../../include/nav.php:129 ../../mod/help.php:34 -msgid "Help" -msgstr "Guida" - -#: ../../include/nav.php:129 -msgid "Help and documentation" -msgstr "Guida e documentazione" - -#: ../../include/nav.php:132 -msgid "Apps" -msgstr "Apps" - -#: ../../include/nav.php:132 -msgid "Addon applications, utilities, games" -msgstr "App, strumenti e giochi aggiuntivi" - -#: ../../include/nav.php:134 -msgid "Search site content" -msgstr "Cerca nel sito" - -#: ../../include/nav.php:137 ../../mod/directory.php:212 -msgid "Directory" -msgstr "Tutti i canali" - -#: ../../include/nav.php:137 -msgid "Channel Locator" -msgstr "Ricerca canali" - -#: ../../include/nav.php:148 -msgid "Matrix" -msgstr "La tua rete" - -#: ../../include/nav.php:148 -msgid "Your matrix" -msgstr "La tua rete" - -#: ../../include/nav.php:149 -msgid "See all matrix notifications" -msgstr "Notifiche dalla tua rete" - -#: ../../include/nav.php:150 -msgid "Mark all matrix notifications seen" -msgstr "Segna come lette le notifiche della tua rete" - -#: ../../include/nav.php:152 -msgid "Channel Home" -msgstr "Bacheca del canale" - -#: ../../include/nav.php:152 -msgid "Channel home" -msgstr "Bacheca del canale" - -#: ../../include/nav.php:153 -msgid "See all channel notifications" -msgstr "Guarda le notifiche dei canali" - -#: ../../include/nav.php:154 -msgid "Mark all channel notifications seen" -msgstr "Segna come lette le notifiche dei canali" - -#: ../../include/nav.php:157 -msgid "Intros" -msgstr "Richieste" - -#: ../../include/nav.php:157 ../../mod/connections.php:562 -msgid "New Connections" -msgstr "Nuovi contatti" - -#: ../../include/nav.php:158 -msgid "See all channel introductions" -msgstr "Guarda tutte le richieste di amicizia" - -#: ../../include/nav.php:161 -msgid "Notices" -msgstr "Notifiche" - -#: ../../include/nav.php:161 ../../mod/notifications.php:218 -msgid "Notifications" -msgstr "Notifiche" - -#: ../../include/nav.php:162 -msgid "See all notifications" -msgstr "Vedi tutte le notifiche" - -#: ../../include/nav.php:163 -msgid "Mark all system notifications seen" -msgstr "Segna come lette le notifiche di sistema" - -#: ../../include/nav.php:165 -msgid "Mail" -msgstr "Messaggi" - -#: ../../include/nav.php:165 -msgid "Private mail" -msgstr "Messaggi privati" - -#: ../../include/nav.php:166 -msgid "See all private messages" -msgstr "Guarda tutti i messaggi privati" - -#: ../../include/nav.php:167 -msgid "Mark all private messages seen" -msgstr "Segna come letti tutti i messaggi privati" - -#: ../../include/nav.php:168 -msgid "Inbox" -msgstr "In arrivo" - -#: ../../include/nav.php:169 -msgid "Outbox" -msgstr "Inviati" - -#: ../../include/nav.php:170 ../../mod/message.php:21 -msgid "New Message" -msgstr "Nuovo messaggio" - -#: ../../include/nav.php:173 ../../mod/events.php:348 ../../boot.php:2225 -msgid "Events" -msgstr "Eventi" - -#: ../../include/nav.php:173 -msgid "Event Calendar" -msgstr "Calendario" - -#: ../../include/nav.php:174 -msgid "See all events" -msgstr "Guarda tutti gli eventi" - -#: ../../include/nav.php:175 -msgid "Mark all events seen" -msgstr "Marca come letti tutti gli eventi" - -#: ../../include/nav.php:177 -msgid "Channel Select" -msgstr "Gestisci i canali" - -#: ../../include/nav.php:177 -msgid "Manage Your Channels" -msgstr "Gestisci i contatti dei tuoi canali" - -#: ../../include/nav.php:179 ../../mod/settings.php:129 -#: ../../mod/admin.php:769 ../../mod/admin.php:974 -msgid "Settings" -msgstr "Impostazioni" - -#: ../../include/nav.php:179 -msgid "Account/Channel Settings" -msgstr "Impostazioni account e canali" - -#: ../../include/nav.php:181 ../../mod/connections.php:668 -msgid "Connections" -msgstr "Contatti" - -#: ../../include/nav.php:181 -msgid "Manage/Edit Friends and Connections" -msgstr "Modifica amici e contatti" - -#: ../../include/nav.php:188 ../../mod/admin.php:111 -msgid "Admin" -msgstr "Amministrazione" - -#: ../../include/nav.php:188 -msgid "Site Setup and Configuration" -msgstr "Configurazione del sito" - -#: ../../include/nav.php:211 -msgid "Nothing new here" -msgstr "Niente di nuovo qui" - -#: ../../include/nav.php:216 -msgid "Please wait..." -msgstr "Attendere..." +#: ../../include/attach.php:632 +msgid "database storage failed." +msgstr "scrittura su database fallita." #: ../../include/zot.php:426 msgid "Invalid data packet" @@ -2133,6 +1942,244 @@ msgstr "Impossibile verificare la firma elettronica del canale" msgid "Unable to verify site signature for %s" msgstr "Impossibile verificare la firma elettronica del sito %s" +#: ../../include/nav.php:72 ../../include/nav.php:87 ../../boot.php:1462 +msgid "Logout" +msgstr "Esci" + +#: ../../include/nav.php:72 ../../include/nav.php:87 +msgid "End this session" +msgstr "Chiudi questa sessione" + +#: ../../include/nav.php:75 ../../include/nav.php:121 +msgid "Home" +msgstr "Bacheca" + +#: ../../include/nav.php:75 +msgid "Your posts and conversations" +msgstr "I tuoi articoli e conversazioni" + +#: ../../include/nav.php:76 +msgid "Your profile page" +msgstr "Il tuo profilo" + +#: ../../include/nav.php:78 +msgid "Edit Profiles" +msgstr "Modifica i profili" + +#: ../../include/nav.php:78 +msgid "Manage/Edit Profiles" +msgstr "Gestisci e modifica i profili" + +#: ../../include/nav.php:79 ../../mod/fbrowser.php:25 ../../boot.php:2243 +msgid "Photos" +msgstr "Foto" + +#: ../../include/nav.php:79 +msgid "Your photos" +msgstr "Le tue foto" + +#: ../../include/nav.php:85 ../../boot.php:1463 +msgid "Login" +msgstr "Accedi" + +#: ../../include/nav.php:85 +msgid "Sign in" +msgstr "Entra" + +#: ../../include/nav.php:102 +#, php-format +msgid "%s - click to logout" +msgstr "%s - clicca per uscire" + +#: ../../include/nav.php:107 +msgid "Click to authenticate to your home hub" +msgstr "Clicca per autenticarti sul tuo server principale" + +#: ../../include/nav.php:121 +msgid "Home Page" +msgstr "Bacheca" + +#: ../../include/nav.php:125 ../../mod/register.php:187 ../../boot.php:1439 +msgid "Register" +msgstr "Iscriviti" + +#: ../../include/nav.php:125 +msgid "Create an account" +msgstr "Crea un account" + +#: ../../include/nav.php:130 ../../mod/help.php:34 +msgid "Help" +msgstr "Guida" + +#: ../../include/nav.php:130 +msgid "Help and documentation" +msgstr "Guida e documentazione" + +#: ../../include/nav.php:133 +msgid "Apps" +msgstr "Apps" + +#: ../../include/nav.php:133 +msgid "Addon applications, utilities, games" +msgstr "App, strumenti e giochi aggiuntivi" + +#: ../../include/nav.php:135 +msgid "Search site content" +msgstr "Cerca nel sito" + +#: ../../include/nav.php:138 ../../mod/directory.php:225 +msgid "Directory" +msgstr "Tutti i canali" + +#: ../../include/nav.php:138 +msgid "Channel Locator" +msgstr "Ricerca canali" + +#: ../../include/nav.php:149 +msgid "Matrix" +msgstr "La tua rete" + +#: ../../include/nav.php:149 +msgid "Your matrix" +msgstr "La tua rete" + +#: ../../include/nav.php:150 +msgid "See all matrix notifications" +msgstr "Notifiche dalla tua rete" + +#: ../../include/nav.php:151 +msgid "Mark all matrix notifications seen" +msgstr "Segna come lette le notifiche della tua rete" + +#: ../../include/nav.php:153 +msgid "Channel Home" +msgstr "Bacheca del canale" + +#: ../../include/nav.php:153 +msgid "Channel home" +msgstr "Bacheca del canale" + +#: ../../include/nav.php:154 +msgid "See all channel notifications" +msgstr "Guarda le notifiche dei canali" + +#: ../../include/nav.php:155 +msgid "Mark all channel notifications seen" +msgstr "Segna come lette le notifiche dei canali" + +#: ../../include/nav.php:158 +msgid "Intros" +msgstr "Richieste" + +#: ../../include/nav.php:158 ../../mod/connections.php:565 +msgid "New Connections" +msgstr "Nuovi contatti" + +#: ../../include/nav.php:159 +msgid "See all channel introductions" +msgstr "Guarda tutte le richieste di amicizia" + +#: ../../include/nav.php:162 +msgid "Notices" +msgstr "Notifiche" + +#: ../../include/nav.php:162 ../../mod/notifications.php:218 +msgid "Notifications" +msgstr "Notifiche" + +#: ../../include/nav.php:163 +msgid "See all notifications" +msgstr "Vedi tutte le notifiche" + +#: ../../include/nav.php:164 +msgid "Mark all system notifications seen" +msgstr "Segna come lette le notifiche di sistema" + +#: ../../include/nav.php:166 +msgid "Mail" +msgstr "Messaggi" + +#: ../../include/nav.php:166 +msgid "Private mail" +msgstr "Messaggi privati" + +#: ../../include/nav.php:167 +msgid "See all private messages" +msgstr "Guarda tutti i messaggi privati" + +#: ../../include/nav.php:168 +msgid "Mark all private messages seen" +msgstr "Segna come letti tutti i messaggi privati" + +#: ../../include/nav.php:169 +msgid "Inbox" +msgstr "In arrivo" + +#: ../../include/nav.php:170 +msgid "Outbox" +msgstr "Inviati" + +#: ../../include/nav.php:171 ../../mod/message.php:24 +msgid "New Message" +msgstr "Nuovo messaggio" + +#: ../../include/nav.php:174 ../../mod/events.php:348 ../../boot.php:2254 +msgid "Events" +msgstr "Eventi" + +#: ../../include/nav.php:174 +msgid "Event Calendar" +msgstr "Calendario" + +#: ../../include/nav.php:175 +msgid "See all events" +msgstr "Guarda tutti gli eventi" + +#: ../../include/nav.php:176 +msgid "Mark all events seen" +msgstr "Marca come letti tutti gli eventi" + +#: ../../include/nav.php:178 +msgid "Channel Select" +msgstr "Gestisci i canali" + +#: ../../include/nav.php:178 +msgid "Manage Your Channels" +msgstr "Gestisci i contatti dei tuoi canali" + +#: ../../include/nav.php:180 ../../mod/settings.php:131 +#: ../../mod/admin.php:769 ../../mod/admin.php:974 +msgid "Settings" +msgstr "Impostazioni" + +#: ../../include/nav.php:180 +msgid "Account/Channel Settings" +msgstr "Impostazioni account e canali" + +#: ../../include/nav.php:182 ../../mod/connections.php:671 +msgid "Connections" +msgstr "Contatti" + +#: ../../include/nav.php:182 +msgid "Manage/Edit Friends and Connections" +msgstr "Modifica amici e contatti" + +#: ../../include/nav.php:189 ../../mod/admin.php:111 +msgid "Admin" +msgstr "Amministrazione" + +#: ../../include/nav.php:189 +msgid "Site Setup and Configuration" +msgstr "Configurazione del sito" + +#: ../../include/nav.php:212 +msgid "Nothing new here" +msgstr "Niente di nuovo qui" + +#: ../../include/nav.php:217 +msgid "Please wait..." +msgstr "Attendere..." + #: ../../include/account.php:23 msgid "Not a valid email address" msgstr "Email non valida" @@ -2189,15 +2236,15 @@ msgstr "Account approvato." msgid "Registration revoked for %s" msgstr "Registrazione revocata per %s" -#: ../../include/auth.php:66 +#: ../../include/auth.php:67 msgid "Logged out." msgstr "Uscita effettuata." -#: ../../include/auth.php:178 +#: ../../include/auth.php:179 msgid "Failed authentication" msgstr "Autenticazione fallita" -#: ../../include/auth.php:187 +#: ../../include/auth.php:188 msgid "Login failed." msgstr "Accesso fallito." @@ -2241,8 +2288,8 @@ msgstr "Segui" msgid "Examples: Robert Morgenstein, Fishing" msgstr "Per esempio: Mario Rossi, Pesca" -#: ../../include/contact_widgets.php:48 ../../mod/connections.php:674 -#: ../../mod/directory.php:208 ../../mod/directory.php:213 +#: ../../include/contact_widgets.php:48 ../../mod/connections.php:677 +#: ../../mod/directory.php:221 ../../mod/directory.php:226 msgid "Find" msgstr "Cerca" @@ -2262,7 +2309,7 @@ msgstr "Invita amici" msgid "Everything" msgstr "Tutto" -#: ../../include/contact_widgets.php:110 +#: ../../include/contact_widgets.php:110 ../../include/widgets.php:26 msgid "Categories" msgstr "Categorie" @@ -2390,35 +2437,35 @@ msgid "" "Extremely advanced. Leave this alone unless you know what you are doing" msgstr "Impostazione pericolosa - lasciare il valore predefinito se non si è assolutamente sicuri" -#: ../../include/taxonomy.php:208 +#: ../../include/taxonomy.php:210 msgid "Tags" msgstr "Tag" -#: ../../include/taxonomy.php:222 +#: ../../include/taxonomy.php:224 msgid "Keywords" msgstr "Parole chiave" -#: ../../include/taxonomy.php:247 +#: ../../include/taxonomy.php:249 msgid "have" msgstr "ho" -#: ../../include/taxonomy.php:247 +#: ../../include/taxonomy.php:249 msgid "has" msgstr "ha" -#: ../../include/taxonomy.php:248 +#: ../../include/taxonomy.php:250 msgid "want" msgstr "voglio" -#: ../../include/taxonomy.php:248 +#: ../../include/taxonomy.php:250 msgid "wants" msgstr "vuole" -#: ../../include/taxonomy.php:249 +#: ../../include/taxonomy.php:251 msgid "likes" msgstr "ama" -#: ../../include/taxonomy.php:250 +#: ../../include/taxonomy.php:252 msgid "dislikes" msgstr "non ama" @@ -2434,8 +2481,8 @@ msgstr "Questa operazione esce dai termini del tuo abbonamento." msgid "This action is not available under your subscription plan." msgstr "Questa operazione non è prevista dal tuo abbonamento." -#: ../../include/comanche.php:33 ../../view/theme/redbasic/php/config.php:41 -#: ../../view/theme/apw/php/config.php:119 +#: ../../include/comanche.php:35 ../../view/theme/redbasic/php/config.php:56 +#: ../../view/theme/apw/php/config.php:176 msgid "Default" msgstr "Predefinito" @@ -2468,226 +2515,238 @@ msgstr "%1$s ha mandato un poke a %2$s" msgid "%1$s is currently %2$s" msgstr "%1$s al momento è %2$s" -#: ../../include/conversation.php:661 +#: ../../include/conversation.php:658 #, php-format msgid "View %s's profile @ %s" msgstr "Vedi il profilo di %s @ %s" -#: ../../include/conversation.php:675 +#: ../../include/conversation.php:672 msgid "Categories:" msgstr "Categorie:" -#: ../../include/conversation.php:676 +#: ../../include/conversation.php:673 msgid "Filed under:" msgstr "Classificato come:" -#: ../../include/conversation.php:702 +#: ../../include/conversation.php:700 msgid "View in context" msgstr "Vedi nel contesto" -#: ../../include/conversation.php:828 +#: ../../include/conversation.php:826 msgid "remove" msgstr "rimuovi" -#: ../../include/conversation.php:832 +#: ../../include/conversation.php:830 msgid "Loading..." msgstr "Caricamento in corso..." -#: ../../include/conversation.php:833 +#: ../../include/conversation.php:831 msgid "Delete Selected Items" msgstr "Elimina gli oggetti selezionati" -#: ../../include/conversation.php:924 +#: ../../include/conversation.php:922 msgid "View Source" msgstr "Vedi il sorgente" -#: ../../include/conversation.php:925 +#: ../../include/conversation.php:923 msgid "Follow Thread" msgstr "Segui la discussione" -#: ../../include/conversation.php:929 +#: ../../include/conversation.php:927 msgid "Matrix Activity" msgstr "Attività nella tua rete" -#: ../../include/conversation.php:994 +#: ../../include/conversation.php:992 #, php-format msgid "%s likes this." msgstr "Piace a %s." -#: ../../include/conversation.php:994 +#: ../../include/conversation.php:992 #, php-format msgid "%s doesn't like this." msgstr "Non piace a %s." -#: ../../include/conversation.php:998 +#: ../../include/conversation.php:996 #, php-format msgid "%2$d people like this." msgstr "Piace a %2$d persone." -#: ../../include/conversation.php:1000 +#: ../../include/conversation.php:998 #, php-format msgid "%2$d people don't like this." msgstr "Non piace a %2$d persone." -#: ../../include/conversation.php:1006 +#: ../../include/conversation.php:1004 msgid "and" msgstr "e" -#: ../../include/conversation.php:1009 +#: ../../include/conversation.php:1007 #, php-format msgid ", and %d other people" msgstr "e altre %d persone" -#: ../../include/conversation.php:1010 +#: ../../include/conversation.php:1008 #, php-format msgid "%s like this." msgstr "Piace a %s." -#: ../../include/conversation.php:1010 +#: ../../include/conversation.php:1008 #, php-format msgid "%s don't like this." msgstr "Non piace a %s." -#: ../../include/conversation.php:1060 +#: ../../include/conversation.php:1058 msgid "Visible to everybody" msgstr "Visibile a tutti" -#: ../../include/conversation.php:1061 ../../mod/message.php:271 -#: ../../mod/message.php:398 +#: ../../include/conversation.php:1059 ../../mod/message.php:281 +#: ../../mod/message.php:417 msgid "Please enter a link URL:" msgstr "Inserisci l'indirizzo del link:" -#: ../../include/conversation.php:1062 +#: ../../include/conversation.php:1060 msgid "Please enter a video link/URL:" msgstr "Inserisci l'indirizzo del video:" -#: ../../include/conversation.php:1063 +#: ../../include/conversation.php:1061 msgid "Please enter an audio link/URL:" msgstr "Inserisci l'indirizzo dell'audio:" -#: ../../include/conversation.php:1064 +#: ../../include/conversation.php:1062 msgid "Tag term:" msgstr "Tag:" -#: ../../include/conversation.php:1065 ../../mod/filer.php:35 +#: ../../include/conversation.php:1063 ../../mod/filer.php:35 msgid "Save to Folder:" msgstr "Salva nella cartella:" -#: ../../include/conversation.php:1066 +#: ../../include/conversation.php:1064 msgid "Where are you right now?" msgstr "Dove sei ora?" -#: ../../include/conversation.php:1081 ../../mod/photos.php:1072 +#: ../../include/conversation.php:1065 ../../mod/message.php:282 +#: ../../mod/message.php:418 ../../mod/editpost.php:52 +msgid "Expires YYYY-MM-DD HH:MM" +msgstr "Scadenza il AAAA-MM-GG OO:MM" + +#: ../../include/conversation.php:1089 ../../mod/photos.php:1060 msgid "Share" msgstr "Condividi" -#: ../../include/conversation.php:1083 +#: ../../include/conversation.php:1091 msgid "Page link title" msgstr "Link del titolo" -#: ../../include/conversation.php:1085 ../../mod/message.php:318 -#: ../../mod/message.php:494 ../../mod/editlayout.php:101 -#: ../../mod/editwebpage.php:120 ../../mod/editpost.php:95 +#: ../../include/conversation.php:1093 ../../mod/message.php:329 +#: ../../mod/message.php:512 ../../mod/editlayout.php:101 +#: ../../mod/editwebpage.php:120 ../../mod/editpost.php:98 #: ../../mod/editblock.php:115 msgid "Upload photo" msgstr "Carica foto" -#: ../../include/conversation.php:1086 +#: ../../include/conversation.php:1094 msgid "upload photo" msgstr "carica foto" -#: ../../include/conversation.php:1087 ../../mod/message.php:319 -#: ../../mod/message.php:495 ../../mod/editlayout.php:102 -#: ../../mod/editwebpage.php:121 ../../mod/editpost.php:96 +#: ../../include/conversation.php:1095 ../../mod/message.php:330 +#: ../../mod/message.php:513 ../../mod/editlayout.php:102 +#: ../../mod/editwebpage.php:121 ../../mod/editpost.php:99 #: ../../mod/editblock.php:116 msgid "Attach file" msgstr "Allega file" -#: ../../include/conversation.php:1088 +#: ../../include/conversation.php:1096 msgid "attach file" msgstr "allega file" -#: ../../include/conversation.php:1089 ../../mod/message.php:320 -#: ../../mod/message.php:496 ../../mod/editlayout.php:103 -#: ../../mod/editwebpage.php:122 ../../mod/editpost.php:97 +#: ../../include/conversation.php:1097 ../../mod/message.php:331 +#: ../../mod/message.php:514 ../../mod/editlayout.php:103 +#: ../../mod/editwebpage.php:122 ../../mod/editpost.php:100 #: ../../mod/editblock.php:117 msgid "Insert web link" msgstr "Inserisci un indirizzo web" -#: ../../include/conversation.php:1090 +#: ../../include/conversation.php:1098 msgid "web link" msgstr "link web" -#: ../../include/conversation.php:1091 +#: ../../include/conversation.php:1099 msgid "Insert video link" msgstr "Inserisci l'indirizzo di un video" -#: ../../include/conversation.php:1092 +#: ../../include/conversation.php:1100 msgid "video link" msgstr "link video" -#: ../../include/conversation.php:1093 +#: ../../include/conversation.php:1101 msgid "Insert audio link" msgstr "Inserisci l'indirizzo di un audio" -#: ../../include/conversation.php:1094 +#: ../../include/conversation.php:1102 msgid "audio link" msgstr "link audio" -#: ../../include/conversation.php:1095 ../../mod/editlayout.php:107 -#: ../../mod/editwebpage.php:126 ../../mod/editpost.php:101 +#: ../../include/conversation.php:1103 ../../mod/editlayout.php:107 +#: ../../mod/editwebpage.php:126 ../../mod/editpost.php:104 #: ../../mod/editblock.php:121 msgid "Set your location" msgstr "La tua località" -#: ../../include/conversation.php:1096 +#: ../../include/conversation.php:1104 msgid "set location" msgstr "la tua località" -#: ../../include/conversation.php:1097 ../../mod/editlayout.php:108 -#: ../../mod/editwebpage.php:127 ../../mod/editpost.php:102 +#: ../../include/conversation.php:1105 ../../mod/editlayout.php:108 +#: ../../mod/editwebpage.php:127 ../../mod/editpost.php:105 #: ../../mod/editblock.php:122 msgid "Clear browser location" msgstr "Rimuovi la località data dal browser" -#: ../../include/conversation.php:1098 +#: ../../include/conversation.php:1106 msgid "clear location" msgstr "rimuovi la località" -#: ../../include/conversation.php:1100 ../../mod/editlayout.php:121 -#: ../../mod/editwebpage.php:142 ../../mod/editpost.php:115 +#: ../../include/conversation.php:1108 ../../mod/editlayout.php:121 +#: ../../mod/editwebpage.php:142 ../../mod/editpost.php:118 #: ../../mod/editblock.php:136 msgid "Set title" msgstr "Scegli un titolo" -#: ../../include/conversation.php:1103 ../../mod/editlayout.php:123 -#: ../../mod/editwebpage.php:144 ../../mod/editpost.php:117 +#: ../../include/conversation.php:1111 ../../mod/editlayout.php:123 +#: ../../mod/editwebpage.php:144 ../../mod/editpost.php:120 #: ../../mod/editblock.php:138 msgid "Categories (comma-separated list)" msgstr "Categorie (separate da virgola)" -#: ../../include/conversation.php:1105 ../../mod/editlayout.php:110 -#: ../../mod/editwebpage.php:129 ../../mod/editpost.php:104 +#: ../../include/conversation.php:1113 ../../mod/editlayout.php:110 +#: ../../mod/editwebpage.php:129 ../../mod/editpost.php:107 #: ../../mod/editblock.php:124 msgid "Permission settings" msgstr "Impostazioni permessi" -#: ../../include/conversation.php:1106 +#: ../../include/conversation.php:1114 msgid "permissions" msgstr "permessi" -#: ../../include/conversation.php:1114 ../../mod/editlayout.php:118 -#: ../../mod/editwebpage.php:137 ../../mod/editpost.php:112 +#: ../../include/conversation.php:1122 ../../mod/editlayout.php:118 +#: ../../mod/editwebpage.php:137 ../../mod/editpost.php:115 #: ../../mod/editblock.php:133 msgid "Public post" msgstr "Articolo pubblico" -#: ../../include/conversation.php:1116 ../../mod/editlayout.php:124 -#: ../../mod/editwebpage.php:145 ../../mod/editpost.php:118 +#: ../../include/conversation.php:1124 ../../mod/editlayout.php:124 +#: ../../mod/editwebpage.php:145 ../../mod/editpost.php:121 #: ../../mod/editblock.php:139 msgid "Example: bob@example.com, mary@example.com" msgstr "Per esempio: mario@esempio.com, simona@esempio.com" +#: ../../include/conversation.php:1137 ../../mod/message.php:336 +#: ../../mod/message.php:519 ../../mod/editlayout.php:134 +#: ../../mod/editwebpage.php:155 ../../mod/editpost.php:132 +#: ../../mod/editblock.php:149 +msgid "Set expiration date" +msgstr "Data di scadenza" + #: ../../include/security.php:49 msgid "Welcome " msgstr "Ciao" @@ -2711,28 +2770,56 @@ msgstr "L'identificativo di sicurezza del modulo che hai riempito non è corrett msgid "Permission denied" msgstr "Permesso negato" -#: ../../include/items.php:3497 ../../mod/page.php:66 ../../mod/admin.php:150 +#: ../../include/items.php:3521 ../../mod/admin.php:150 #: ../../mod/admin.php:714 ../../mod/admin.php:917 ../../mod/viewsrc.php:18 #: ../../mod/home.php:64 ../../mod/display.php:32 msgid "Item not found." msgstr "Elemento non trovato." -#: ../../include/items.php:3669 +#: ../../include/items.php:3693 msgid "Archives" msgstr "Archivi" -#: ../../include/items.php:3830 ../../mod/group.php:44 ../../mod/group.php:146 +#: ../../include/items.php:3854 ../../mod/group.php:44 ../../mod/group.php:146 msgid "Collection not found." msgstr "Insieme non trovato." -#: ../../include/items.php:3846 ../../mod/network.php:469 +#: ../../include/items.php:3870 ../../mod/network.php:469 msgid "Group is empty" msgstr "L'insieme è vuoto" -#: ../../include/items.php:3862 +#: ../../include/items.php:3886 msgid "Connection not found." msgstr "Gruppo non trovato." +#: ../../include/dir_fns.php:15 +msgid "Sort Options" +msgstr "Opzioni di ordinamento" + +#: ../../include/dir_fns.php:16 +msgid "Alphabetic" +msgstr "Alfabetico" + +#: ../../include/dir_fns.php:17 +msgid "Reverse Alphabetic" +msgstr "Alfabetico inverso" + +#: ../../include/dir_fns.php:18 +msgid "Newest to Oldest" +msgstr "Dal più nuovo al più vecchio" + +#: ../../include/dir_fns.php:29 +msgid "Enable Safe Search" +msgstr "Abilita SafeSearch" + +#: ../../include/dir_fns.php:31 +msgid "Disable Safe Search" +msgstr "Disabilita SafeSearch" + +#: ../../include/dir_fns.php:33 +msgid "Safe Mode" +msgstr "Modalità SafeSearch" + #: ../../mod/common.php:10 msgid "No channel." msgstr "Nessun canale." @@ -2765,7 +2852,7 @@ msgstr "Crea un nuovo evento" msgid "Previous" msgstr "Precendente" -#: ../../mod/events.php:351 ../../mod/setup.php:237 +#: ../../mod/events.php:351 ../../mod/setup.php:256 msgid "Next" msgstr "Successivo" @@ -2896,31 +2983,37 @@ msgstr "Spedisci inviti" msgid "Enter email addresses, one per line:" msgstr "Inserisci gli indirizzi email, uno per riga:" -#: ../../mod/invite.php:141 ../../mod/message.php:315 -#: ../../mod/message.php:490 +#: ../../mod/invite.php:141 ../../mod/message.php:326 +#: ../../mod/message.php:508 msgid "Your message:" msgstr "Il tuo messaggio:" #: ../../mod/invite.php:142 msgid "" "You are cordially invited to join me and some other close friends on the Red" -" Matrix - a revolutionary new decentralised social and information tool." -msgstr "Questo è un caloroso invito ad unirti a me e altri amici su Red Matrix - uno strumento di comunicazione social rivoluzionario e decentrato." +" Matrix - a revolutionary new decentralised communication and information " +"tool." +msgstr "Questo è un invito cordiale ad unirti a me e ad altri miei amici stretti su Red Matrix - uno nuovo strumento di comunicazione decentralizzato e rivoluzionario." #: ../../mod/invite.php:144 msgid "You will need to supply this invitation code: $invite_code" msgstr "Sarà necessario fornire questo codice invito: $invite_code" -#: ../../mod/invite.php:146 +#: ../../mod/invite.php:145 msgid "Please visit my channel at" msgstr "Puoi visitare il mio canale su" -#: ../../mod/invite.php:150 +#: ../../mod/invite.php:149 msgid "" -"Once you have registered, please connect with my Red Matrix channel address:" -msgstr "Una volta che avrai fatto la registrazione, potrai connetterti al mio canale Red Matrix a questo indirizzo:" +"Once you have registered (on ANY Red Matrix site - they are all inter-" +"connected), please connect with my Red Matrix channel address:" +msgstr "Una volta che avrai completato la registrazione (su QUALSIASI sito Red Matrix - sono tutti interconnessi), potrai connetterti al mio canale:" -#: ../../mod/invite.php:152 +#: ../../mod/invite.php:151 +msgid "Click the [Register] link on the following page to join." +msgstr "Fai clic su [Registrati] nella pagina seguente per iscriverti." + +#: ../../mod/invite.php:153 msgid "" "For more information about the Red Matrix Project and why it has the " "potential to change the internet as we know it, please visit " @@ -2938,11 +3031,12 @@ msgstr "Nessun amico da visualizzare." #: ../../mod/webpages.php:8 ../../mod/connect.php:13 ../../mod/layouts.php:8 #: ../../mod/filestorage.php:8 ../../mod/blocks.php:10 ../../mod/profile.php:8 -#: ../../boot.php:1615 +#: ../../boot.php:1644 msgid "Requested profile is not available." msgstr "Il profilo richiesto non è disponibile." -#: ../../mod/webpages.php:101 ../../mod/layouts.php:92 ../../mod/blocks.php:95 +#: ../../mod/webpages.php:104 ../../mod/layouts.php:105 +#: ../../mod/blocks.php:96 msgid "View" msgstr "Guarda" @@ -2964,17 +3058,17 @@ msgid "" " and/or create new posts for you?" msgstr "Vuoi autorizzare questa app ad accedere ai messaggi e ai contatti o creare nuovi messaggi per te?" -#: ../../mod/api.php:105 ../../mod/settings.php:1006 -#: ../../mod/settings.php:1011 ../../mod/settings.php:1034 -#: ../../mod/settings.php:1036 ../../mod/settings.php:1037 -#: ../../mod/settings.php:1038 ../../mod/profiles.php:506 +#: ../../mod/api.php:105 ../../mod/settings.php:1008 +#: ../../mod/settings.php:1013 ../../mod/settings.php:1036 +#: ../../mod/settings.php:1038 ../../mod/settings.php:1039 +#: ../../mod/settings.php:1040 ../../mod/profiles.php:506 msgid "Yes" msgstr "Si" -#: ../../mod/api.php:106 ../../mod/settings.php:1006 -#: ../../mod/settings.php:1011 ../../mod/settings.php:1034 -#: ../../mod/settings.php:1036 ../../mod/settings.php:1037 -#: ../../mod/settings.php:1038 ../../mod/profiles.php:507 +#: ../../mod/api.php:106 ../../mod/settings.php:1008 +#: ../../mod/settings.php:1013 ../../mod/settings.php:1036 +#: ../../mod/settings.php:1038 ../../mod/settings.php:1039 +#: ../../mod/settings.php:1040 ../../mod/profiles.php:507 msgid "No" msgstr "No" @@ -2995,349 +3089,358 @@ msgid "Invalid item." msgstr "Elemento non valido." #: ../../mod/page.php:47 ../../mod/chanview.php:78 ../../mod/home.php:51 -#: ../../mod/magic.php:65 ../../mod/wall_upload.php:35 +#: ../../mod/magic.php:77 ../../mod/wall_upload.php:35 msgid "Channel not found." msgstr "Canale non trovato." +#: ../../mod/page.php:83 ../../mod/help.php:41 ../../mod/display.php:92 +#: ../../index.php:229 +msgid "Page not found." +msgstr "Pagina non trovata." + #: ../../mod/attach.php:9 msgid "Item not available." msgstr "Elemento non disponibile." -#: ../../mod/setup.php:142 +#: ../../mod/setup.php:161 msgid "Red Matrix Server - Setup" msgstr "Red Matrix Server - Installazione" -#: ../../mod/setup.php:148 +#: ../../mod/setup.php:167 msgid "Could not connect to database." msgstr " Impossibile connettersi al database." -#: ../../mod/setup.php:152 +#: ../../mod/setup.php:171 msgid "" "Could not connect to specified site URL. Possible SSL certificate or DNS " "issue." msgstr "Non è possibile raggiungere l'indirizzo del sito specificato. Potrebbe essere un problema di SSL o DNS." -#: ../../mod/setup.php:157 +#: ../../mod/setup.php:176 msgid "Could not create table." msgstr "Impossibile creare le tabelle." -#: ../../mod/setup.php:163 +#: ../../mod/setup.php:182 msgid "Your site database has been installed." msgstr "Il database del sito è stato installato." -#: ../../mod/setup.php:168 +#: ../../mod/setup.php:187 msgid "" "You may need to import the file \"install/database.sql\" manually using " "phpmyadmin or mysql." msgstr "Potresti dover importare il file 'install/database.sql' manualmente usando phpmyadmin o mysql." -#: ../../mod/setup.php:169 ../../mod/setup.php:236 ../../mod/setup.php:565 +#: ../../mod/setup.php:188 ../../mod/setup.php:255 ../../mod/setup.php:584 msgid "Please see the file \"install/INSTALL.txt\"." msgstr "Leggi il file 'install/INSTALL.txt'." -#: ../../mod/setup.php:233 +#: ../../mod/setup.php:252 msgid "System check" msgstr "Verifica del sistema" -#: ../../mod/setup.php:238 +#: ../../mod/setup.php:257 msgid "Check again" msgstr "Verifica di nuovo" -#: ../../mod/setup.php:260 +#: ../../mod/setup.php:279 msgid "Database connection" msgstr "Connessione al database" -#: ../../mod/setup.php:261 +#: ../../mod/setup.php:280 msgid "" "In order to install Red Matrix we need to know how to connect to your " "database." msgstr "Per installare Red Matrix è necessario conoscere i parametri di connessione al database." -#: ../../mod/setup.php:262 +#: ../../mod/setup.php:281 msgid "" "Please contact your hosting provider or site administrator if you have " "questions about these settings." msgstr "Contatta il tuo fornitore di hosting o l'amministratore del sito se hai domande su queste impostazioni." -#: ../../mod/setup.php:263 +#: ../../mod/setup.php:282 msgid "" "The database you specify below should already exist. If it does not, please " "create it before continuing." msgstr "Il database deve già esistere. Se non esiste, crealo prima di continuare." -#: ../../mod/setup.php:267 +#: ../../mod/setup.php:286 msgid "Database Server Name" msgstr "Server del database" -#: ../../mod/setup.php:267 +#: ../../mod/setup.php:286 msgid "Default is localhost" msgstr "'localhost' è il predefinito" -#: ../../mod/setup.php:268 +#: ../../mod/setup.php:287 msgid "Database Port" msgstr "Port del database" -#: ../../mod/setup.php:268 +#: ../../mod/setup.php:287 msgid "Communication port number - use 0 for default" msgstr "Scrivi 0 per usare il valore standard" -#: ../../mod/setup.php:269 +#: ../../mod/setup.php:288 msgid "Database Login Name" msgstr "Utente database" -#: ../../mod/setup.php:270 +#: ../../mod/setup.php:289 msgid "Database Login Password" msgstr "Password utente database" -#: ../../mod/setup.php:271 +#: ../../mod/setup.php:290 msgid "Database Name" msgstr "Nome database" -#: ../../mod/setup.php:273 ../../mod/setup.php:315 +#: ../../mod/setup.php:292 ../../mod/setup.php:334 msgid "Site administrator email address" msgstr "Indirizzo email dell'amministratore del sito" -#: ../../mod/setup.php:273 ../../mod/setup.php:315 +#: ../../mod/setup.php:292 ../../mod/setup.php:334 msgid "" "Your account email address must match this in order to use the web admin " "panel." msgstr "Il tuo indirizzo email deve corrispondere a questo per poter usare il pannello di amministrazione web." -#: ../../mod/setup.php:274 ../../mod/setup.php:317 +#: ../../mod/setup.php:293 ../../mod/setup.php:336 msgid "Website URL" msgstr "URL completo del sito" -#: ../../mod/setup.php:274 ../../mod/setup.php:317 +#: ../../mod/setup.php:293 ../../mod/setup.php:336 msgid "Please use SSL (https) URL if available." msgstr "Se disponibile, usa l'indirizzo SSL (https)." -#: ../../mod/setup.php:277 ../../mod/setup.php:320 +#: ../../mod/setup.php:296 ../../mod/setup.php:339 msgid "Please select a default timezone for your website" msgstr "Seleziona il fuso orario predefinito per il tuo sito web" -#: ../../mod/setup.php:304 +#: ../../mod/setup.php:323 msgid "Site settings" msgstr "Impostazioni del sito" -#: ../../mod/setup.php:360 +#: ../../mod/setup.php:379 msgid "Could not find a command line version of PHP in the web server PATH." msgstr "Non è possibile trovare la versione di PHP da riga di comando nel PATH del server web" -#: ../../mod/setup.php:361 +#: ../../mod/setup.php:380 msgid "" "If you don't have a command line version of PHP installed on server, you " "will not be able to run background polling via cron." msgstr "Se non hai installata la versione di PHP da riga di comando non potrai attivare il polling in background tramite cron." -#: ../../mod/setup.php:365 +#: ../../mod/setup.php:384 msgid "PHP executable path" msgstr "Path del comando PHP" -#: ../../mod/setup.php:365 +#: ../../mod/setup.php:384 msgid "" "Enter full path to php executable. You can leave this blank to continue the " "installation." msgstr "Inserisci il percorso dell'eseguibile PHP. Puoi lasciarlo vuoto per continuare l'installazione." -#: ../../mod/setup.php:370 +#: ../../mod/setup.php:389 msgid "Command line PHP" msgstr "PHP da riga di comando" -#: ../../mod/setup.php:379 +#: ../../mod/setup.php:398 msgid "" "The command line version of PHP on your system does not have " "\"register_argc_argv\" enabled." msgstr "La versione da riga di comando di PHP nel sistema non ha abilitato \"register_argc_argv\"." -#: ../../mod/setup.php:380 +#: ../../mod/setup.php:399 msgid "This is required for message delivery to work." msgstr "E' necessario perché funzioni la consegna dei messaggi." -#: ../../mod/setup.php:382 +#: ../../mod/setup.php:401 msgid "PHP register_argc_argv" msgstr "PHP register_argc_argv" -#: ../../mod/setup.php:403 +#: ../../mod/setup.php:422 msgid "" "Error: the \"openssl_pkey_new\" function on this system is not able to " "generate encryption keys" msgstr "Errore: la funzione \"openssl_pkey_new\" su questo sistema non è in grado di generare le chiavi di criptazione" -#: ../../mod/setup.php:404 +#: ../../mod/setup.php:423 msgid "" "If running under Windows, please see " "\"http://www.php.net/manual/en/openssl.installation.php\"." msgstr "Se stai usando un server windows, guarda \"http://www.php.net/manual/en/openssl.installation.php\"." -#: ../../mod/setup.php:406 +#: ../../mod/setup.php:425 msgid "Generate encryption keys" msgstr "Genera chiavi di criptazione" -#: ../../mod/setup.php:413 +#: ../../mod/setup.php:432 msgid "libCurl PHP module" msgstr "modulo PHP libCurl" -#: ../../mod/setup.php:414 +#: ../../mod/setup.php:433 msgid "GD graphics PHP module" msgstr "modulo PHP GD graphics" -#: ../../mod/setup.php:415 +#: ../../mod/setup.php:434 msgid "OpenSSL PHP module" msgstr "modulo PHP OpenSSL" -#: ../../mod/setup.php:416 +#: ../../mod/setup.php:435 msgid "mysqli PHP module" msgstr "modulo PHP mysqli" -#: ../../mod/setup.php:417 +#: ../../mod/setup.php:436 msgid "mb_string PHP module" msgstr "modulo PHP mb_string" -#: ../../mod/setup.php:418 +#: ../../mod/setup.php:437 msgid "mcrypt PHP module" msgstr "modulo PHP mcrypt" -#: ../../mod/setup.php:423 ../../mod/setup.php:425 +#: ../../mod/setup.php:442 ../../mod/setup.php:444 msgid "Apache mod_rewrite module" msgstr "modulo Apache mod_rewrite" -#: ../../mod/setup.php:423 +#: ../../mod/setup.php:442 msgid "" "Error: Apache webserver mod-rewrite module is required but not installed." msgstr "Errore: il modulo mod-rewrite di Apache è richiesto ma non installato" -#: ../../mod/setup.php:429 ../../mod/setup.php:432 +#: ../../mod/setup.php:448 ../../mod/setup.php:451 msgid "proc_open" msgstr "proc_open" -#: ../../mod/setup.php:429 +#: ../../mod/setup.php:448 msgid "" "Error: proc_open is required but is either not installed or has been " "disabled in php.ini" msgstr "Errore: proc_open è richiesto ma non è installato o è disabilitato in php.ini" -#: ../../mod/setup.php:437 +#: ../../mod/setup.php:456 msgid "Error: libCURL PHP module required but not installed." msgstr "Errore: il modulo libCURL di PHP è richiesto ma non installato." -#: ../../mod/setup.php:441 +#: ../../mod/setup.php:460 msgid "" "Error: GD graphics PHP module with JPEG support required but not installed." msgstr "Errore: Il modulo GD graphics di PHP con supporto a JPEG è richiesto ma non installato." -#: ../../mod/setup.php:445 +#: ../../mod/setup.php:464 msgid "Error: openssl PHP module required but not installed." msgstr "Errore: il modulo openssl di PHP è richiesto ma non installato." -#: ../../mod/setup.php:449 +#: ../../mod/setup.php:468 msgid "Error: mysqli PHP module required but not installed." msgstr "Errore: il modulo mysqli di PHP è richiesto ma non installato." -#: ../../mod/setup.php:453 +#: ../../mod/setup.php:472 msgid "Error: mb_string PHP module required but not installed." msgstr "Errore: il modulo PHP mb_string è richiesto ma non installato." -#: ../../mod/setup.php:457 +#: ../../mod/setup.php:476 msgid "Error: mcrypt PHP module required but not installed." msgstr "Errore: il modulo PHP mcrypt è richiesto ma non installato." -#: ../../mod/setup.php:473 +#: ../../mod/setup.php:492 msgid "" "The web installer needs to be able to create a file called \".htconfig.php\"" " in the top folder of your web server and it is unable to do so." msgstr "L'installazione web deve poter creare un file chiamato \".htconfig.php\" nella cartella principale del tuo web server ma non è in grado di farlo." -#: ../../mod/setup.php:474 +#: ../../mod/setup.php:493 msgid "" "This is most often a permission setting, as the web server may not be able " "to write files in your folder - even if you can." msgstr "Spesso ciò è dovuto ai permessi di accesso al disco: il web server potrebbe non aver diritto di scrivere il file nella cartella, anche se tu puoi." -#: ../../mod/setup.php:475 +#: ../../mod/setup.php:494 msgid "" "At the end of this procedure, we will give you a text to save in a file " "named .htconfig.php in your Red top folder." msgstr "Alla fine di questa procedura ti sarà dato il testo da salvare in un file di nome .htconfig.php dentro la cartella principale di Red." -#: ../../mod/setup.php:476 +#: ../../mod/setup.php:495 msgid "" "You can alternatively skip this procedure and perform a manual installation." " Please see the file \"install/INSTALL.txt\" for instructions." msgstr "Puoi anche saltare questa procedura ed effettuare un'installazione manuale. Guarda il file 'install/INSTALL.txt' per le istruzioni." -#: ../../mod/setup.php:479 +#: ../../mod/setup.php:498 msgid ".htconfig.php is writable" msgstr ".htconfig.php è scrivibile" -#: ../../mod/setup.php:489 +#: ../../mod/setup.php:508 msgid "" "Red uses the Smarty3 template engine to render its web views. Smarty3 " "compiles templates to PHP to speed up rendering." msgstr "Red usa il sistema Smarty3 per costruire i suoi template grafici. Smarty3 è molto veloce perché compila i template delle pagine direttamente in PHP." -#: ../../mod/setup.php:490 +#: ../../mod/setup.php:509 msgid "" "In order to store these compiled templates, the web server needs to have " "write access to the directory view/tpl/smarty3/ under the Red top level " "folder." msgstr "Per poter memorizzare i template compilati, il web server deve avere accesso in scrittura alla cartella view/tpl/smarty3/ sotto la cartella di installazione di Red." -#: ../../mod/setup.php:491 +#: ../../mod/setup.php:510 msgid "" "Please ensure that the user that your web server runs as (e.g. www-data) has" " write access to this folder." msgstr "Assicurati che il tuo web server sia in esecuzione come un utente che ha diritto di scrittura su quella cartella (ad esempio www-data)." -#: ../../mod/setup.php:492 +#: ../../mod/setup.php:511 msgid "" "Note: as a security measure, you should give the web server write access to " "view/tpl/smarty3/ only--not the template files (.tpl) that it contains." msgstr "Nota bene: come precauzione, dovresti dare i diritti di scrittura solamente per view/tpl/smarty3/ non per tutti i file di template (.tpl) che contiene." -#: ../../mod/setup.php:495 +#: ../../mod/setup.php:514 msgid "view/tpl/smarty3 is writable" msgstr "view/tpl/smarty3 è scrivibile" -#: ../../mod/setup.php:509 +#: ../../mod/setup.php:528 msgid "SSL certificate validation" msgstr "Validazione del certificato SSL" -#: ../../mod/setup.php:509 +#: ../../mod/setup.php:528 msgid "" "SSL certificate cannot be validated. Fix certificate or disable https access" " to this site." msgstr "Il certificato SSL non può essere validato. Correggi l'errore o disabilita l'accesso https al sito." -#: ../../mod/setup.php:516 +#: ../../mod/setup.php:535 msgid "" "Url rewrite in .htaccess is not working. Check your server configuration." msgstr "In .htaccess la funzionalità url rewrite non funziona. Controlla la configurazione del server." -#: ../../mod/setup.php:518 +#: ../../mod/setup.php:537 msgid "Url rewrite is working" msgstr "Url rewrite funziona correttamente" -#: ../../mod/setup.php:528 +#: ../../mod/setup.php:547 msgid "" "The database configuration file \".htconfig.php\" could not be written. " "Please use the enclosed text to create a configuration file in your web " "server root." msgstr "Il file di configurazione del database \".htconfig.php\" non puo' essere scritto. Usa il testo qui di seguito per creare questo file di configurazione nella cartella principale del tuo sito." -#: ../../mod/setup.php:552 +#: ../../mod/setup.php:571 msgid "Errors encountered creating database tables." msgstr "La creazione delle tabelle del database ha generato errori." -#: ../../mod/setup.php:563 +#: ../../mod/setup.php:582 msgid "

What next

" msgstr "

I prossimi passi

" -#: ../../mod/setup.php:564 +#: ../../mod/setup.php:583 msgid "" "IMPORTANT: You will need to [manually] setup a scheduled task for the " "poller." msgstr "IMPORTANTE: Devi creare [manualmente] la pianificazione del polling." +#: ../../mod/rpost.php:83 ../../mod/editpost.php:42 +msgid "Edit post" +msgstr "Modifica articolo" + #: ../../mod/subthread.php:105 #, php-format msgid "%1$s is following %2$s's %3$s" @@ -3358,463 +3461,463 @@ msgstr "attiva/disattiva schermo intero" msgid "%1$s tagged %2$s's %3$s with %4$s" msgstr "%1$s ha taggato %3$s di %2$s con %4$s" -#: ../../mod/settings.php:51 +#: ../../mod/settings.php:53 msgid "Account settings" msgstr "Impostazioni dell'account" -#: ../../mod/settings.php:57 +#: ../../mod/settings.php:59 msgid "Channel settings" msgstr "Impostazioni del canale" -#: ../../mod/settings.php:63 +#: ../../mod/settings.php:65 msgid "Additional features" msgstr "Funzionalità aggiuntive" -#: ../../mod/settings.php:69 +#: ../../mod/settings.php:71 msgid "Feature settings" msgstr "Impostazioni aggiuntive" -#: ../../mod/settings.php:75 +#: ../../mod/settings.php:77 msgid "Display settings" msgstr "Impostazioni grafiche" -#: ../../mod/settings.php:81 +#: ../../mod/settings.php:83 msgid "Connected apps" msgstr "App connesse" -#: ../../mod/settings.php:87 +#: ../../mod/settings.php:89 msgid "Export channel" msgstr "Esporta il canale" -#: ../../mod/settings.php:99 +#: ../../mod/settings.php:101 msgid "Automatic Permissions (Advanced)" msgstr "Permessi predefiniti (avanzato)" -#: ../../mod/settings.php:109 +#: ../../mod/settings.php:111 msgid "Premium Channel Settings" msgstr "Canale premium - impostazioni" -#: ../../mod/settings.php:169 +#: ../../mod/settings.php:171 msgid "Name is required" msgstr "Il nome è obbligatorio" -#: ../../mod/settings.php:173 +#: ../../mod/settings.php:175 msgid "Key and Secret are required" msgstr "Chiave e Segreto sono richiesti" -#: ../../mod/settings.php:177 ../../mod/settings.php:674 +#: ../../mod/settings.php:179 ../../mod/settings.php:676 msgid "Update" msgstr "Aggiorna" -#: ../../mod/settings.php:290 +#: ../../mod/settings.php:292 msgid "Passwords do not match. Password unchanged." msgstr "Le password non corrispondono. Password non cambiata." -#: ../../mod/settings.php:294 +#: ../../mod/settings.php:296 msgid "Empty passwords are not allowed. Password unchanged." msgstr "Le password non possono essere vuote. Password non cambiata." -#: ../../mod/settings.php:307 +#: ../../mod/settings.php:309 msgid "Password changed." msgstr "Password cambiata." -#: ../../mod/settings.php:309 +#: ../../mod/settings.php:311 msgid "Password update failed. Please try again." msgstr "Aggiornamento password fallito. Prova ancora." -#: ../../mod/settings.php:323 +#: ../../mod/settings.php:325 msgid "Not valid email." msgstr "Email non valida." -#: ../../mod/settings.php:326 +#: ../../mod/settings.php:328 msgid "Protected email address. Cannot change to that email." msgstr "È un indirizzo email riservato. Non puoi sceglierlo." -#: ../../mod/settings.php:335 +#: ../../mod/settings.php:337 msgid "System failure storing new email. Please try again." msgstr "Errore di sistema. Non è stato possibile memorizzare il tuo messaggio, riprova per favore." -#: ../../mod/settings.php:576 +#: ../../mod/settings.php:578 msgid "Settings updated." msgstr "Impostazioni aggiornate." -#: ../../mod/settings.php:647 ../../mod/settings.php:673 -#: ../../mod/settings.php:709 +#: ../../mod/settings.php:649 ../../mod/settings.php:675 +#: ../../mod/settings.php:711 msgid "Add application" msgstr "Aggiungi una app" -#: ../../mod/settings.php:649 ../../mod/settings.php:675 +#: ../../mod/settings.php:651 ../../mod/settings.php:677 #: ../../mod/tagrm.php:11 ../../mod/tagrm.php:94 ../../mod/fbrowser.php:82 #: ../../mod/fbrowser.php:117 msgid "Cancel" msgstr "Annulla" -#: ../../mod/settings.php:650 ../../mod/settings.php:676 +#: ../../mod/settings.php:652 ../../mod/settings.php:678 #: ../../mod/admin.php:673 ../../mod/crepair.php:148 msgid "Name" msgstr "Nome" -#: ../../mod/settings.php:650 +#: ../../mod/settings.php:652 msgid "Name of application" msgstr "Nome dell'applicazione" -#: ../../mod/settings.php:651 ../../mod/settings.php:677 +#: ../../mod/settings.php:653 ../../mod/settings.php:679 msgid "Consumer Key" msgstr "Consumer Key" -#: ../../mod/settings.php:651 ../../mod/settings.php:652 +#: ../../mod/settings.php:653 ../../mod/settings.php:654 msgid "Automatically generated - change if desired. Max length 20" msgstr "Generato automaticamente - è possibile cambiarlo. Lunghezza massima 20" -#: ../../mod/settings.php:652 ../../mod/settings.php:678 +#: ../../mod/settings.php:654 ../../mod/settings.php:680 msgid "Consumer Secret" msgstr "Consumer Secret" -#: ../../mod/settings.php:653 ../../mod/settings.php:679 +#: ../../mod/settings.php:655 ../../mod/settings.php:681 msgid "Redirect" msgstr "Redirect" -#: ../../mod/settings.php:653 +#: ../../mod/settings.php:655 msgid "" "Redirect URI - leave blank unless your application specifically requires " "this" msgstr "URI ridirezionato - lasciare bianco se non richiesto specificamente dall'applicazione." -#: ../../mod/settings.php:654 ../../mod/settings.php:680 +#: ../../mod/settings.php:656 ../../mod/settings.php:682 msgid "Icon url" msgstr "Url icona" -#: ../../mod/settings.php:654 +#: ../../mod/settings.php:656 msgid "Optional" msgstr "Opzionale" -#: ../../mod/settings.php:665 +#: ../../mod/settings.php:667 msgid "You can't edit this application." msgstr "Non puoi modificare questa applicazione." -#: ../../mod/settings.php:708 +#: ../../mod/settings.php:710 msgid "Connected Apps" msgstr "App connesse" -#: ../../mod/settings.php:712 +#: ../../mod/settings.php:714 msgid "Client key starts with" msgstr "La client key inizia con" -#: ../../mod/settings.php:713 +#: ../../mod/settings.php:715 msgid "No name" msgstr "Nessun nome" -#: ../../mod/settings.php:714 +#: ../../mod/settings.php:716 msgid "Remove authorization" msgstr "Revoca l'autorizzazione" -#: ../../mod/settings.php:725 +#: ../../mod/settings.php:727 msgid "No feature settings configured" msgstr "Non ci sono funzionalità aggiuntive personalizzabili" -#: ../../mod/settings.php:733 +#: ../../mod/settings.php:735 msgid "Feature Settings" msgstr "Impostazioni aggiuntive" -#: ../../mod/settings.php:756 +#: ../../mod/settings.php:758 msgid "Account Settings" msgstr "Impostazioni account" -#: ../../mod/settings.php:757 +#: ../../mod/settings.php:759 msgid "Password Settings" msgstr "Impostazioni password" -#: ../../mod/settings.php:758 +#: ../../mod/settings.php:760 msgid "New Password:" msgstr "Nuova password:" -#: ../../mod/settings.php:759 +#: ../../mod/settings.php:761 msgid "Confirm:" msgstr "Conferma:" -#: ../../mod/settings.php:759 +#: ../../mod/settings.php:761 msgid "Leave password fields blank unless changing" msgstr "Lascia questi campi in bianco per non cambiare la password" -#: ../../mod/settings.php:761 ../../mod/settings.php:1060 +#: ../../mod/settings.php:763 ../../mod/settings.php:1062 msgid "Email Address:" msgstr "Indirizzo email:" -#: ../../mod/settings.php:762 +#: ../../mod/settings.php:764 msgid "Remove Account" msgstr "Elimina l'account" -#: ../../mod/settings.php:763 +#: ../../mod/settings.php:765 msgid "Warning: This action is permanent and cannot be reversed." msgstr "Attenzione: questa azione è permanente e non potrà più essere annullata." -#: ../../mod/settings.php:779 +#: ../../mod/settings.php:781 msgid "Off" msgstr "Off" -#: ../../mod/settings.php:779 +#: ../../mod/settings.php:781 msgid "On" msgstr "On" -#: ../../mod/settings.php:786 +#: ../../mod/settings.php:788 msgid "Additional Features" msgstr "Funzionalità aggiuntive" -#: ../../mod/settings.php:811 +#: ../../mod/settings.php:813 msgid "Connector Settings" msgstr "Impostazioni del connettore" -#: ../../mod/settings.php:841 ../../mod/admin.php:369 +#: ../../mod/settings.php:843 ../../mod/admin.php:369 msgid "No special theme for mobile devices" msgstr "Nessun tema per dispositivi mobili" -#: ../../mod/settings.php:881 +#: ../../mod/settings.php:883 msgid "Display Settings" msgstr "Impostazioni grafiche" -#: ../../mod/settings.php:887 +#: ../../mod/settings.php:889 msgid "Display Theme:" msgstr "Tema per monitor:" -#: ../../mod/settings.php:888 +#: ../../mod/settings.php:890 msgid "Mobile Theme:" msgstr "Tema per dispositivi mobili:" -#: ../../mod/settings.php:889 +#: ../../mod/settings.php:891 msgid "Update browser every xx seconds" msgstr "Aggiorna il browser ogni x secondi" -#: ../../mod/settings.php:889 +#: ../../mod/settings.php:891 msgid "Minimum of 10 seconds, no maximum" msgstr "Minimo 10 secondi, nessun limite massimo" -#: ../../mod/settings.php:890 +#: ../../mod/settings.php:892 msgid "Maximum number of conversations to load at any time:" msgstr "Massimo numero di conversazioni da mostrare ogni volta:" -#: ../../mod/settings.php:890 +#: ../../mod/settings.php:892 msgid "Maximum of 100 items" msgstr "Massimo 100" -#: ../../mod/settings.php:891 +#: ../../mod/settings.php:893 msgid "Don't show emoticons" msgstr "Non mostrare le emoticons" -#: ../../mod/settings.php:927 +#: ../../mod/settings.php:929 msgid "Nobody except yourself" msgstr "Nessuno tranne te" -#: ../../mod/settings.php:928 +#: ../../mod/settings.php:930 msgid "Only those you specifically allow" msgstr "Solo chi riceve il mio permesso" -#: ../../mod/settings.php:929 +#: ../../mod/settings.php:931 msgid "Anybody in your address book" msgstr "Chiunque tra i miei contatti" -#: ../../mod/settings.php:930 +#: ../../mod/settings.php:932 msgid "Anybody on this website" msgstr "Chiunque su questo sito" -#: ../../mod/settings.php:931 +#: ../../mod/settings.php:933 msgid "Anybody in this network" msgstr "Chiunque su Red" -#: ../../mod/settings.php:932 +#: ../../mod/settings.php:934 msgid "Anybody on the internet" msgstr "Chiunque su internet" -#: ../../mod/settings.php:1006 +#: ../../mod/settings.php:1008 msgid "Publish your default profile in the network directory" msgstr "Pubblica il mio profilo predefinito sull'elenco pubblico dei canali" -#: ../../mod/settings.php:1011 +#: ../../mod/settings.php:1013 msgid "Allow us to suggest you as a potential friend to new members?" msgstr "Vuoi essere suggerito come potenziale amico ai nuovi membri?" -#: ../../mod/settings.php:1015 ../../mod/profile_photo.php:298 +#: ../../mod/settings.php:1017 ../../mod/profile_photo.php:298 msgid "or" msgstr "o" -#: ../../mod/settings.php:1020 +#: ../../mod/settings.php:1022 msgid "Your channel address is" msgstr "L'indirizzo del tuo canale è" -#: ../../mod/settings.php:1031 +#: ../../mod/settings.php:1033 msgid "Automatically expire posts after this many days:" msgstr "Gli articoli scadono automaticamente dopo questo numero di giorni:" -#: ../../mod/settings.php:1031 +#: ../../mod/settings.php:1033 msgid "If empty, posts will not expire. Expired posts will be deleted" msgstr "Se lasci vuoto, i messaggi non scadranno mai. I messaggi scaduti saranno eliminati." -#: ../../mod/settings.php:1032 +#: ../../mod/settings.php:1034 msgid "Advanced expiration settings" msgstr "Impostazioni avanzate di scandenza" -#: ../../mod/settings.php:1033 +#: ../../mod/settings.php:1035 msgid "Advanced Expiration" msgstr "Scadenza" -#: ../../mod/settings.php:1034 +#: ../../mod/settings.php:1036 msgid "Expire posts:" msgstr "Fai scadere gli articoli:" -#: ../../mod/settings.php:1036 +#: ../../mod/settings.php:1038 msgid "Expire starred posts:" msgstr "Fai scadere gli articoli preferiti:" -#: ../../mod/settings.php:1037 +#: ../../mod/settings.php:1039 msgid "Expire photos:" msgstr "Fai scadere le foto:" -#: ../../mod/settings.php:1038 +#: ../../mod/settings.php:1040 msgid "Only expire posts by others:" msgstr "Fai scadere solo gli articoli scritti da altri:" -#: ../../mod/settings.php:1049 +#: ../../mod/settings.php:1051 msgid "Channel Settings" msgstr "Impostazioni del canale" -#: ../../mod/settings.php:1058 +#: ../../mod/settings.php:1060 msgid "Basic Settings" msgstr "Impostazioni di base" -#: ../../mod/settings.php:1061 +#: ../../mod/settings.php:1063 msgid "Your Timezone:" msgstr "Il tuo fuso orario:" -#: ../../mod/settings.php:1062 +#: ../../mod/settings.php:1064 msgid "Default Post Location:" msgstr "Località predefinita:" -#: ../../mod/settings.php:1063 +#: ../../mod/settings.php:1065 msgid "Use Browser Location:" msgstr "Usa la località rilevata dal browser:" -#: ../../mod/settings.php:1065 +#: ../../mod/settings.php:1067 msgid "Adult Content" msgstr "Contenuto per adulti" -#: ../../mod/settings.php:1065 +#: ../../mod/settings.php:1067 msgid "This channel publishes adult content." msgstr "Questo canale pubblica contenuto per adulti." -#: ../../mod/settings.php:1067 +#: ../../mod/settings.php:1069 msgid "Security and Privacy Settings" msgstr "Impostazioni di sicurezza e privacy" -#: ../../mod/settings.php:1069 +#: ../../mod/settings.php:1071 msgid "Quick Privacy Settings:" msgstr "Impostazioni veloci della privacy:" -#: ../../mod/settings.php:1070 +#: ../../mod/settings.php:1072 msgid "Very Public - extremely permissive" msgstr "Tutto pubblico - molto permissivo" -#: ../../mod/settings.php:1071 +#: ../../mod/settings.php:1073 msgid "Typical - default public, privacy when desired" msgstr "Normale - tutto sarà pubblico tranne quel che vorrai tu" -#: ../../mod/settings.php:1072 +#: ../../mod/settings.php:1074 msgid "Private - default private, rarely open or public" msgstr "Privato - i contenuti saranno privati ma, se vorrai, alcuni potrai renderli pubblici" -#: ../../mod/settings.php:1073 +#: ../../mod/settings.php:1075 msgid "Blocked - default blocked to/from everybody" msgstr "Bloccato - non ci saranno interazioni con altri a meno che tu non voglia" -#: ../../mod/settings.php:1076 +#: ../../mod/settings.php:1078 msgid "Maximum Friend Requests/Day:" msgstr "Numero massimo giornaliero di richieste di amicizia:" -#: ../../mod/settings.php:1076 +#: ../../mod/settings.php:1078 msgid "May reduce spam activity" msgstr "Serve e ridurre lo spam" -#: ../../mod/settings.php:1077 +#: ../../mod/settings.php:1079 msgid "Default Post Permissions" msgstr "Permessi predefiniti per gli articoli" -#: ../../mod/settings.php:1078 +#: ../../mod/settings.php:1080 msgid "(click to open/close)" msgstr "(clicca per aprire/chiudere)" -#: ../../mod/settings.php:1091 +#: ../../mod/settings.php:1093 msgid "Maximum private messages per day from unknown people:" msgstr "Numero massimo giornaliero di messaggi privati da utenti sconosciuti:" -#: ../../mod/settings.php:1091 +#: ../../mod/settings.php:1093 msgid "Useful to reduce spamming" msgstr "Serve e ridurre lo spam" -#: ../../mod/settings.php:1094 +#: ../../mod/settings.php:1096 msgid "Notification Settings" msgstr "Impostazioni di notifica" -#: ../../mod/settings.php:1095 +#: ../../mod/settings.php:1097 msgid "By default post a status message when:" msgstr "Pubblica un messaggio di stato quando:" -#: ../../mod/settings.php:1096 +#: ../../mod/settings.php:1098 msgid "accepting a friend request" msgstr "accetto una nuova amicizia" -#: ../../mod/settings.php:1097 +#: ../../mod/settings.php:1099 msgid "joining a forum/community" msgstr "entro a far parte di un forum" -#: ../../mod/settings.php:1098 +#: ../../mod/settings.php:1100 msgid "making an interesting profile change" msgstr "faccio un cambiamento interessante al mio profilo" -#: ../../mod/settings.php:1099 +#: ../../mod/settings.php:1101 msgid "Send a notification email when:" msgstr "Invia una email di notifica quando:" -#: ../../mod/settings.php:1100 +#: ../../mod/settings.php:1102 msgid "You receive an introduction" msgstr "Ricevi una richiesta di amicizia" -#: ../../mod/settings.php:1101 +#: ../../mod/settings.php:1103 msgid "Your introductions are confirmed" msgstr "Le tue richieste di amicizia sono state accettate" -#: ../../mod/settings.php:1102 +#: ../../mod/settings.php:1104 msgid "Someone writes on your profile wall" msgstr "Qualcuno scrive sulla tua bacheca" -#: ../../mod/settings.php:1103 +#: ../../mod/settings.php:1105 msgid "Someone writes a followup comment" msgstr "Qualcuno scrive un commento a un tuo articolo" -#: ../../mod/settings.php:1104 +#: ../../mod/settings.php:1106 msgid "You receive a private message" msgstr "Ricevi un messaggio privato" -#: ../../mod/settings.php:1105 +#: ../../mod/settings.php:1107 msgid "You receive a friend suggestion" msgstr "Ti viene suggerito un amico" -#: ../../mod/settings.php:1106 +#: ../../mod/settings.php:1108 msgid "You are tagged in a post" msgstr "Sei taggato in un articolo" -#: ../../mod/settings.php:1107 +#: ../../mod/settings.php:1109 msgid "You are poked/prodded/etc. in a post" msgstr "Ricevi un poke in un articolo" -#: ../../mod/settings.php:1110 +#: ../../mod/settings.php:1112 msgid "Advanced Account/Page Type Settings" msgstr "Impostazioni avanzate" -#: ../../mod/settings.php:1111 +#: ../../mod/settings.php:1113 msgid "Change the behaviour of this account for special situations" msgstr "Cambia il funzionamento di questo account in situazioni particolari" #: ../../mod/viewconnections.php:28 ../../mod/photos.php:576 #: ../../mod/display.php:9 ../../mod/search.php:80 ../../mod/community.php:18 -#: ../../mod/directory.php:25 +#: ../../mod/directory.php:32 msgid "Public access denied." msgstr "Accesso pubblico negato." @@ -4406,12 +4509,12 @@ msgid "Deny" msgstr "Nega" #: ../../mod/admin.php:678 ../../mod/intro.php:14 ../../mod/intro.php:99 -#: ../../mod/connections.php:325 ../../mod/connections.php:467 +#: ../../mod/connections.php:328 ../../mod/connections.php:470 msgid "Block" msgstr "Blocca" -#: ../../mod/admin.php:679 ../../mod/connections.php:325 -#: ../../mod/connections.php:467 +#: ../../mod/admin.php:679 ../../mod/connections.php:328 +#: ../../mod/connections.php:470 msgid "Unblock" msgstr "Sblocca" @@ -4678,11 +4781,11 @@ msgstr "Impossibile ottenere informazioni sul proprietario della pagina." msgid "Album not found." msgstr "Album non trovato." -#: ../../mod/photos.php:125 ../../mod/photos.php:788 +#: ../../mod/photos.php:125 ../../mod/photos.php:780 msgid "Delete Album" msgstr "Elimina album" -#: ../../mod/photos.php:165 ../../mod/photos.php:1053 +#: ../../mod/photos.php:165 ../../mod/photos.php:1041 msgid "Delete Photo" msgstr "Elimina foto" @@ -4699,111 +4802,111 @@ msgstr "una foto" msgid "No photos selected" msgstr "Nessuna foto selezionata" -#: ../../mod/photos.php:640 +#: ../../mod/photos.php:631 msgid "Access to this item is restricted." msgstr "Questo elemento non è visibile a tutti." -#: ../../mod/photos.php:704 +#: ../../mod/photos.php:696 #, php-format msgid "You have used %1$.2f Mbytes of %2$.2f Mbytes photo storage." msgstr "Hai usato %1$.2f Mb di %2$.2f Mb disponibili per le foto." -#: ../../mod/photos.php:707 +#: ../../mod/photos.php:699 #, php-format msgid "You have used %1$.2f Mbytes of photo storage." msgstr "Hai usato %1$.2f Mb di spazio per le foto." -#: ../../mod/photos.php:715 +#: ../../mod/photos.php:707 msgid "Upload Photos" msgstr "Carica foto" -#: ../../mod/photos.php:719 ../../mod/photos.php:783 +#: ../../mod/photos.php:711 ../../mod/photos.php:775 msgid "New album name: " msgstr "Nome del nuovo album: " -#: ../../mod/photos.php:720 +#: ../../mod/photos.php:712 msgid "or existing album name: " msgstr "o nome di un album esistente: " -#: ../../mod/photos.php:721 +#: ../../mod/photos.php:713 msgid "Do not show a status post for this upload" msgstr "Non creare un messaggio di stato per questo caricamento" -#: ../../mod/photos.php:723 ../../mod/photos.php:1048 +#: ../../mod/photos.php:715 ../../mod/photos.php:1036 msgid "Permissions" msgstr "Permessi" -#: ../../mod/photos.php:772 ../../mod/photos.php:794 ../../mod/photos.php:1223 -#: ../../mod/photos.php:1238 +#: ../../mod/photos.php:764 ../../mod/photos.php:786 ../../mod/photos.php:1212 +#: ../../mod/photos.php:1227 msgid "Contact Photos" msgstr "Foto dei contatti" -#: ../../mod/photos.php:798 +#: ../../mod/photos.php:790 msgid "Edit Album" msgstr "Modifica album" -#: ../../mod/photos.php:804 +#: ../../mod/photos.php:796 msgid "Show Newest First" msgstr "Prima i più recenti" -#: ../../mod/photos.php:806 +#: ../../mod/photos.php:798 msgid "Show Oldest First" msgstr "Prima i più vecchi" -#: ../../mod/photos.php:850 ../../mod/photos.php:1270 +#: ../../mod/photos.php:842 ../../mod/photos.php:1259 msgid "View Photo" msgstr "Guarda la foto" -#: ../../mod/photos.php:894 +#: ../../mod/photos.php:886 msgid "Permission denied. Access to this item may be restricted." msgstr "Permesso negato. L'accesso a questo elemento può essere stato limitato." -#: ../../mod/photos.php:896 +#: ../../mod/photos.php:888 msgid "Photo not available" msgstr "Foto non disponibile" -#: ../../mod/photos.php:954 +#: ../../mod/photos.php:946 msgid "Use as profile photo" msgstr "Usa come foto del profilo" -#: ../../mod/photos.php:982 +#: ../../mod/photos.php:970 msgid "View Full Size" msgstr "Vedi nelle dimensioni originali" -#: ../../mod/photos.php:1036 +#: ../../mod/photos.php:1024 msgid "Edit photo" msgstr "Modifica la foto" -#: ../../mod/photos.php:1038 +#: ../../mod/photos.php:1026 msgid "Rotate CW (right)" msgstr "Ruota (senso orario)" -#: ../../mod/photos.php:1039 +#: ../../mod/photos.php:1027 msgid "Rotate CCW (left)" msgstr "Ruota (senso antiorario)" -#: ../../mod/photos.php:1041 +#: ../../mod/photos.php:1029 msgid "New album name" msgstr "Nuovo nome dell'album" -#: ../../mod/photos.php:1044 +#: ../../mod/photos.php:1032 msgid "Caption" msgstr "Titolo" -#: ../../mod/photos.php:1046 +#: ../../mod/photos.php:1034 msgid "Add a Tag" msgstr "Aggiungi tag" -#: ../../mod/photos.php:1050 +#: ../../mod/photos.php:1038 msgid "" "Example: @bob, @Barbara_Jensen, @jim@example.com, #California, #camping" msgstr "Per esempio: @luca, @Maria_Bianchi, @bob@example.com, #California, #camping" -#: ../../mod/photos.php:1276 +#: ../../mod/photos.php:1265 msgid "View Album" msgstr "Guarda l'album" -#: ../../mod/photos.php:1285 +#: ../../mod/photos.php:1274 msgid "Recent Photos" msgstr "Foto recenti" @@ -4815,11 +4918,11 @@ msgstr "ti ha inviato un messaggio privato" msgid "added your channel" msgstr "ha aggiunto il tuo canale" -#: ../../mod/ping.php:230 ../../boot.php:1833 ../../boot.php:1913 +#: ../../mod/ping.php:230 ../../boot.php:1862 ../../boot.php:1942 msgid "g A l F d" msgstr "g A l d F" -#: ../../mod/ping.php:252 ../../boot.php:1879 ../../boot.php:1954 +#: ../../mod/ping.php:252 ../../boot.php:1908 ../../boot.php:1983 msgid "[today]" msgstr "[oggi]" @@ -4856,7 +4959,7 @@ msgid "Drop" msgstr "Elimina" #: ../../mod/menu.php:57 ../../mod/network.php:321 -#: ../../mod/connections.php:529 +#: ../../mod/connections.php:532 msgid "New" msgstr "Novità" @@ -4917,93 +5020,93 @@ msgstr "Aggiungi o rimuovi elementi di questo menù" msgid "Welcome to %s" msgstr "%s ti dà il benvenuto" -#: ../../mod/message.php:16 +#: ../../mod/message.php:19 msgid "Check Mail" msgstr "Controlla i messaggi" -#: ../../mod/message.php:52 +#: ../../mod/message.php:56 msgid "Unable to lookup recipient." msgstr "Impossibile associare un destinatario." -#: ../../mod/message.php:60 +#: ../../mod/message.php:64 msgid "Unable to communicate with requested channel." msgstr "Impossibile comunicare con il canale richiesto." -#: ../../mod/message.php:67 +#: ../../mod/message.php:71 msgid "Cannot verify requested channel." msgstr "Impossibile verificare il canale richiesto." -#: ../../mod/message.php:93 +#: ../../mod/message.php:97 msgid "Selected channel has private message restrictions. Send failed." msgstr "Il canale ha delle regole restrittive per la ricezione dei messaggi privati. Invio fallito." -#: ../../mod/message.php:213 ../../mod/notifications.php:101 +#: ../../mod/message.php:223 ../../mod/notifications.php:101 msgid "Messages" msgstr "Messaggi" -#: ../../mod/message.php:224 +#: ../../mod/message.php:234 msgid "Message deleted." msgstr "Messaggio eliminato." -#: ../../mod/message.php:231 +#: ../../mod/message.php:241 msgid "Conversation removed." msgstr "Conversazione rimossa." -#: ../../mod/message.php:248 +#: ../../mod/message.php:258 msgid "Message recalled." msgstr "Messaggio revocato." -#: ../../mod/message.php:305 +#: ../../mod/message.php:316 msgid "Send Private Message" msgstr "Invia un messaggio privato" -#: ../../mod/message.php:306 ../../mod/message.php:485 +#: ../../mod/message.php:317 ../../mod/message.php:503 msgid "To:" msgstr "A:" -#: ../../mod/message.php:311 ../../mod/message.php:487 +#: ../../mod/message.php:322 ../../mod/message.php:505 msgid "Subject:" msgstr "Oggetto:" -#: ../../mod/message.php:340 +#: ../../mod/message.php:359 msgid "No messages." msgstr "Nessun messaggio." -#: ../../mod/message.php:356 ../../mod/message.php:452 +#: ../../mod/message.php:375 ../../mod/message.php:472 msgid "Delete message" msgstr "Elimina il messaggio" -#: ../../mod/message.php:358 +#: ../../mod/message.php:377 msgid "D, d M Y - g:i A" msgstr "D d M Y - G:i" -#: ../../mod/message.php:377 +#: ../../mod/message.php:396 msgid "Message not found." msgstr "Messaggio non trovato." -#: ../../mod/message.php:453 +#: ../../mod/message.php:473 msgid "Recall message" msgstr "Revoca il messaggio" -#: ../../mod/message.php:455 +#: ../../mod/message.php:475 msgid "Message has been recalled." msgstr "Il messaggio è stato revocato." -#: ../../mod/message.php:474 +#: ../../mod/message.php:492 msgid "Private Conversation" msgstr "Conversazione privata" -#: ../../mod/message.php:478 +#: ../../mod/message.php:496 msgid "Delete conversation" msgstr "Elimina la conversazione" -#: ../../mod/message.php:480 +#: ../../mod/message.php:498 msgid "" "No secure communications available. You may be able to " "respond from the sender's profile page." msgstr "Non è disponibile alcun sistema per comunicare in modo sicuro. Puoi verificare se eventualmente è possibile rispondere dalla pagina del profilo del mittente." -#: ../../mod/message.php:484 +#: ../../mod/message.php:502 msgid "Send Reply" msgstr "Invia la risposta" @@ -5011,6 +5114,18 @@ msgstr "Invia la risposta" msgid "No profile" msgstr "Nessun profilo" +#: ../../mod/layouts.php:52 +msgid "Layout Help" +msgstr "Guida al layout" + +#: ../../mod/layouts.php:55 +msgid "Help with this feature" +msgstr "La guida per questa funzionalità" + +#: ../../mod/layouts.php:74 +msgid "Layout Name" +msgstr "Nome layout" + #: ../../mod/help.php:30 msgid "Help:" msgstr "Guida:" @@ -5019,10 +5134,6 @@ msgstr "Guida:" msgid "Not Found" msgstr "Non disponibile" -#: ../../mod/help.php:41 ../../index.php:229 -msgid "Page not found." -msgstr "Pagina non trovata." - #: ../../mod/rmagic.php:56 msgid "Remote Authentication" msgstr "Autenticazione a distanza" @@ -5087,11 +5198,11 @@ msgstr "Articoli marcati come spam" msgid "Refresh" msgstr "Aggiorna" -#: ../../mod/network.php:385 ../../mod/connections.php:381 +#: ../../mod/network.php:385 ../../mod/connections.php:384 msgid "Me" msgstr "Io" -#: ../../mod/network.php:386 ../../mod/connections.php:383 +#: ../../mod/network.php:386 ../../mod/connections.php:386 msgid "Best Friends" msgstr "Buoni amici" @@ -5099,11 +5210,11 @@ msgstr "Buoni amici" msgid "Co-workers" msgstr "Colleghi" -#: ../../mod/network.php:389 ../../mod/connections.php:385 +#: ../../mod/network.php:389 ../../mod/connections.php:388 msgid "Former Friends" msgstr "Ex amici" -#: ../../mod/network.php:390 ../../mod/connections.php:386 +#: ../../mod/network.php:390 ../../mod/connections.php:389 msgid "Acquaintances" msgstr "Conoscenti" @@ -5128,13 +5239,13 @@ msgid "Invalid connection." msgstr "Connessione non valida." #: ../../mod/intro.php:17 ../../mod/intro.php:100 -#: ../../mod/connections.php:332 ../../mod/connections.php:468 +#: ../../mod/connections.php:335 ../../mod/connections.php:471 #: ../../mod/notifications.php:51 ../../mod/notifications.php:162 #: ../../mod/notifications.php:208 msgid "Ignore" msgstr "Ignora" -#: ../../mod/intro.php:29 ../../mod/connections.php:119 +#: ../../mod/intro.php:29 ../../mod/connections.php:122 msgid "Connection updated." msgstr "Contatto aggiornato." @@ -5154,7 +5265,7 @@ msgstr "Nessuna richiesta in attesa." msgid "System error. Please try again later." msgstr "Errore di sistema. Riprovare più tardi." -#: ../../mod/intro.php:95 ../../mod/connections.php:473 +#: ../../mod/intro.php:95 ../../mod/connections.php:476 #: ../../mod/notifications.php:155 ../../mod/notifications.php:202 msgid "Hide this contact from others" msgstr "Nascondi questo contatto agli altri" @@ -5174,385 +5285,385 @@ msgstr "se possibile" msgid "Discard" msgstr "Rifiuta" -#: ../../mod/connections.php:64 +#: ../../mod/connections.php:67 msgid "Could not access contact record." msgstr "Non è possibile accedere alle informazioni sul contatto." -#: ../../mod/connections.php:78 +#: ../../mod/connections.php:81 msgid "Could not locate selected profile." msgstr "Non riesco a trovare il profilo selezionato." -#: ../../mod/connections.php:121 +#: ../../mod/connections.php:124 msgid "Failed to update connection record." msgstr "Impossibile aggiornare le informazioni di contatto." -#: ../../mod/connections.php:196 +#: ../../mod/connections.php:199 msgid "Could not access address book record." msgstr "Impossibile accedere alle informazioni della rubrica." -#: ../../mod/connections.php:210 +#: ../../mod/connections.php:213 msgid "Refresh failed - channel is currently unavailable." msgstr "Il canale non è disponibile - impossibile aggiornare." -#: ../../mod/connections.php:217 +#: ../../mod/connections.php:220 msgid "Channel has been unblocked" msgstr "Il canale è stato sbloccato" -#: ../../mod/connections.php:218 +#: ../../mod/connections.php:221 msgid "Channel has been blocked" msgstr "Il canale è stato bloccato" -#: ../../mod/connections.php:222 ../../mod/connections.php:234 -#: ../../mod/connections.php:246 ../../mod/connections.php:258 -#: ../../mod/connections.php:273 +#: ../../mod/connections.php:225 ../../mod/connections.php:237 +#: ../../mod/connections.php:249 ../../mod/connections.php:261 +#: ../../mod/connections.php:276 msgid "Unable to set address book parameters." msgstr "Impossibile impostare i parametri della rubrica." -#: ../../mod/connections.php:229 +#: ../../mod/connections.php:232 msgid "Channel has been unignored" msgstr "Il canale non sarà più ignorato" -#: ../../mod/connections.php:230 +#: ../../mod/connections.php:233 msgid "Channel has been ignored" msgstr "Il canale sarà ignorato" -#: ../../mod/connections.php:241 +#: ../../mod/connections.php:244 msgid "Channel has been unarchived" msgstr "Il canale non è più archiviato" -#: ../../mod/connections.php:242 +#: ../../mod/connections.php:245 msgid "Channel has been archived" msgstr "Il canale è stato archiviato" -#: ../../mod/connections.php:253 +#: ../../mod/connections.php:256 msgid "Channel has been unhidden" msgstr "Il canale non è più nascosto" -#: ../../mod/connections.php:254 +#: ../../mod/connections.php:257 msgid "Channel has been hidden" msgstr "Il canale è stato nascosto" -#: ../../mod/connections.php:268 +#: ../../mod/connections.php:271 msgid "Channel has been approved" msgstr "Il canale è stato approvato" -#: ../../mod/connections.php:269 +#: ../../mod/connections.php:272 msgid "Channel has been unapproved" msgstr "Il canale non è più approvato" -#: ../../mod/connections.php:287 +#: ../../mod/connections.php:290 msgid "Contact has been removed." msgstr "Il contatto è stato rimosso." -#: ../../mod/connections.php:307 +#: ../../mod/connections.php:310 #, php-format msgid "View %s's profile" msgstr "Guarda il profilo di %s" -#: ../../mod/connections.php:311 +#: ../../mod/connections.php:314 msgid "Refresh Permissions" msgstr "Aggiorna i permessi" -#: ../../mod/connections.php:314 +#: ../../mod/connections.php:317 msgid "Fetch updated permissions" msgstr "Scarica i permessi aggiornati" -#: ../../mod/connections.php:318 +#: ../../mod/connections.php:321 msgid "Recent Activity" msgstr "Attività recenti" -#: ../../mod/connections.php:321 +#: ../../mod/connections.php:324 msgid "View recent posts and comments" msgstr "Leggi i post recenti e i commenti" -#: ../../mod/connections.php:328 +#: ../../mod/connections.php:331 msgid "Block or Unblock this connection" msgstr "Per bloccare o meno questo contatto" -#: ../../mod/connections.php:332 ../../mod/connections.php:468 +#: ../../mod/connections.php:335 ../../mod/connections.php:471 msgid "Unignore" msgstr "Non ignorare" -#: ../../mod/connections.php:335 +#: ../../mod/connections.php:338 msgid "Ignore or Unignore this connection" msgstr "Per ignorare o meno questo contatto" -#: ../../mod/connections.php:338 +#: ../../mod/connections.php:341 msgid "Unarchive" msgstr "Non archiviare" -#: ../../mod/connections.php:338 +#: ../../mod/connections.php:341 msgid "Archive" msgstr "Archivia" -#: ../../mod/connections.php:341 +#: ../../mod/connections.php:344 msgid "Archive or Unarchive this connection" msgstr "Per archiviare o meno questo contatto" -#: ../../mod/connections.php:344 +#: ../../mod/connections.php:347 msgid "Unhide" msgstr "Non nascondere" -#: ../../mod/connections.php:344 +#: ../../mod/connections.php:347 msgid "Hide" msgstr "Nascondi" -#: ../../mod/connections.php:347 +#: ../../mod/connections.php:350 msgid "Hide or Unhide this connection" msgstr "Per nascondere o meno questo contatto" -#: ../../mod/connections.php:354 +#: ../../mod/connections.php:357 msgid "Delete this connection" msgstr "Elimina questo contatto" -#: ../../mod/connections.php:387 +#: ../../mod/connections.php:390 msgid "Unknown" msgstr "Sconosciuto" -#: ../../mod/connections.php:397 ../../mod/connections.php:426 +#: ../../mod/connections.php:400 ../../mod/connections.php:429 msgid "Approve this connection" msgstr "Approva questo contatto" -#: ../../mod/connections.php:397 +#: ../../mod/connections.php:400 msgid "Accept connection to allow communication" msgstr "Accetta il contatto per poter comunicare" -#: ../../mod/connections.php:413 +#: ../../mod/connections.php:416 msgid "Automatic Permissions Settings" msgstr "Permessi predefiniti" -#: ../../mod/connections.php:413 +#: ../../mod/connections.php:416 #, php-format msgid "Connections: settings for %s" msgstr "Contatti: impostazioni per %s" -#: ../../mod/connections.php:417 +#: ../../mod/connections.php:420 msgid "" "When receiving a channel introduction, any permissions provided here will be" " applied to the new connection automatically and the introduction approved. " "Leave this page if you do not wish to use this feature." msgstr "Quando ricevi una richiesta di amicizia da un canale, i permessi mostrati in questa pagina saranno applicati al nuovo contatto con l'approvazione della richiesta. Lascia questa pagina se non vuoi proseguire." -#: ../../mod/connections.php:419 +#: ../../mod/connections.php:422 msgid "Slide to adjust your degree of friendship" msgstr "Trascina per restringere il grado di amicizia da mostrare" -#: ../../mod/connections.php:425 +#: ../../mod/connections.php:428 msgid "inherited" msgstr "derivato" -#: ../../mod/connections.php:427 +#: ../../mod/connections.php:430 msgid "Connection has no individual permissions!" msgstr "Non hai assegnato permessi individuali a questo contatto!" -#: ../../mod/connections.php:428 +#: ../../mod/connections.php:431 msgid "" "This may be appropriate based on your privacy " "settings, though you may wish to review the \"Advanced Permissions\"." msgstr "Questo corrisponde alle tue impostazioni di privacy, ma puoi anche dare un'occhiata ai 'Permessi avanzati' per opzioni più dettagliate." -#: ../../mod/connections.php:430 +#: ../../mod/connections.php:433 msgid "Profile Visibility" msgstr "Visibilità del profilo" -#: ../../mod/connections.php:431 +#: ../../mod/connections.php:434 #, php-format msgid "" "Please choose the profile you would like to display to %s when viewing your " "profile securely." msgstr "Seleziona il profilo che vuoi mostrare a %s quando visita il tuo profilo in modo sicuro." -#: ../../mod/connections.php:432 +#: ../../mod/connections.php:435 msgid "Contact Information / Notes" msgstr "Informazioni e annotazioni sul contatto" -#: ../../mod/connections.php:433 +#: ../../mod/connections.php:436 msgid "Edit contact notes" msgstr "Modifica le informazioni sul contatto" -#: ../../mod/connections.php:435 +#: ../../mod/connections.php:438 msgid "Their Settings" msgstr "Permessi concessi a te" -#: ../../mod/connections.php:436 +#: ../../mod/connections.php:439 msgid "My Settings" msgstr "I permessi che concedo" -#: ../../mod/connections.php:438 +#: ../../mod/connections.php:441 msgid "Forum Members" msgstr "Membro di un forum" -#: ../../mod/connections.php:439 +#: ../../mod/connections.php:442 msgid "Soapbox" msgstr "Comunicati e annunci" -#: ../../mod/connections.php:440 +#: ../../mod/connections.php:443 msgid "Full Sharing" msgstr "Condivisione totale" -#: ../../mod/connections.php:441 +#: ../../mod/connections.php:444 msgid "Cautious Sharing" msgstr "Condivisione prudente" -#: ../../mod/connections.php:442 +#: ../../mod/connections.php:445 msgid "Follow Only" msgstr "Follower" -#: ../../mod/connections.php:443 +#: ../../mod/connections.php:446 msgid "Individual Permissions" msgstr "Permessi individuali" -#: ../../mod/connections.php:444 +#: ../../mod/connections.php:447 msgid "" "Some permissions may be inherited from your privacy " "settings, which have higher priority. Changing those on this page will " "have no effect." msgstr "Alcuni permessi possono derivano dalle impostazioni di privacy, che hanno una priorità maggiore. Cambiarli in questa pagina non avrà alcun effetto." -#: ../../mod/connections.php:445 +#: ../../mod/connections.php:448 msgid "Advanced Permissions" msgstr "Permessi avanzati" -#: ../../mod/connections.php:446 +#: ../../mod/connections.php:449 msgid "Quick Links" msgstr "Impostazioni veloci" -#: ../../mod/connections.php:450 +#: ../../mod/connections.php:453 #, php-format msgid "Visit %s's profile - %s" msgstr "Guarda il profilo di %s - %s" -#: ../../mod/connections.php:451 +#: ../../mod/connections.php:454 msgid "Block/Unblock contact" msgstr "Blocca/sblocca contatto" -#: ../../mod/connections.php:452 +#: ../../mod/connections.php:455 msgid "Ignore contact" msgstr "Ignora il contatto" -#: ../../mod/connections.php:453 +#: ../../mod/connections.php:456 msgid "Repair URL settings" msgstr "Ripara le impostazioni URL" -#: ../../mod/connections.php:454 +#: ../../mod/connections.php:457 msgid "View conversations" msgstr "Leggi le conversazioni" -#: ../../mod/connections.php:456 +#: ../../mod/connections.php:459 msgid "Delete contact" msgstr "Elimina contatto" -#: ../../mod/connections.php:459 +#: ../../mod/connections.php:462 msgid "Last update:" msgstr "Ultimo aggiornamento:" -#: ../../mod/connections.php:461 +#: ../../mod/connections.php:464 msgid "Update public posts" msgstr "Aggiorna gli articoli pubblici" -#: ../../mod/connections.php:463 +#: ../../mod/connections.php:466 msgid "Update now" msgstr "Aggiorna adesso" -#: ../../mod/connections.php:469 +#: ../../mod/connections.php:472 msgid "Currently blocked" msgstr "Attualmente bloccato" -#: ../../mod/connections.php:470 +#: ../../mod/connections.php:473 msgid "Currently ignored" msgstr "Attualmente ignorato" -#: ../../mod/connections.php:471 +#: ../../mod/connections.php:474 msgid "Currently archived" msgstr "Attualmente archiviato" -#: ../../mod/connections.php:472 +#: ../../mod/connections.php:475 msgid "Currently pending" msgstr "Attualmente da approvare" -#: ../../mod/connections.php:473 +#: ../../mod/connections.php:476 msgid "" "Replies/likes to your public posts may still be visible" msgstr "Le risposte ai tuoi articoli pubblici potrebbero restare comunque visibili" -#: ../../mod/connections.php:509 ../../mod/connections.php:581 +#: ../../mod/connections.php:512 ../../mod/connections.php:584 msgid "Blocked" msgstr "Bloccati" -#: ../../mod/connections.php:514 ../../mod/connections.php:588 +#: ../../mod/connections.php:517 ../../mod/connections.php:591 msgid "Ignored" msgstr "Ignorati" -#: ../../mod/connections.php:519 ../../mod/connections.php:602 +#: ../../mod/connections.php:522 ../../mod/connections.php:605 msgid "Hidden" msgstr "Nascosti" -#: ../../mod/connections.php:524 ../../mod/connections.php:595 +#: ../../mod/connections.php:527 ../../mod/connections.php:598 msgid "Archived" msgstr "Archiviati" -#: ../../mod/connections.php:535 +#: ../../mod/connections.php:538 msgid "All" msgstr "Tutti" -#: ../../mod/connections.php:556 +#: ../../mod/connections.php:559 msgid "Suggestions" msgstr "Suggerimenti" -#: ../../mod/connections.php:559 +#: ../../mod/connections.php:562 msgid "Suggest new connections" msgstr "Suggerisci nuovi contatti" -#: ../../mod/connections.php:565 +#: ../../mod/connections.php:568 msgid "Show pending (new) connections" msgstr "Richieste di amicizia in attesa" -#: ../../mod/connections.php:568 +#: ../../mod/connections.php:571 msgid "All Connections" msgstr "Tutti i contatti" -#: ../../mod/connections.php:571 +#: ../../mod/connections.php:574 msgid "Show all connections" msgstr "Mostra tutti i contatti" -#: ../../mod/connections.php:574 +#: ../../mod/connections.php:577 msgid "Unblocked" msgstr "Non bloccati" -#: ../../mod/connections.php:577 +#: ../../mod/connections.php:580 msgid "Only show unblocked connections" msgstr "Mostra solo i contatti non bloccati" -#: ../../mod/connections.php:584 +#: ../../mod/connections.php:587 msgid "Only show blocked connections" msgstr "Mostra solo i contatti bloccati" -#: ../../mod/connections.php:591 +#: ../../mod/connections.php:594 msgid "Only show ignored connections" msgstr "Mostra solo i contatti ignorati" -#: ../../mod/connections.php:598 +#: ../../mod/connections.php:601 msgid "Only show archived connections" msgstr "Mostra solo i contatti archiviati" -#: ../../mod/connections.php:605 +#: ../../mod/connections.php:608 msgid "Only show hidden connections" msgstr "Mostra solo i contatti nascosti" -#: ../../mod/connections.php:647 +#: ../../mod/connections.php:650 #, php-format msgid "%1$s [%2$s]" msgstr "%1$s [%2$s]" -#: ../../mod/connections.php:648 ../../mod/nogroup.php:41 +#: ../../mod/connections.php:651 ../../mod/nogroup.php:41 msgid "Edit contact" msgstr "Modifica il contatto" -#: ../../mod/connections.php:672 +#: ../../mod/connections.php:675 msgid "Search your connections" msgstr "Cerca tra i contatti" -#: ../../mod/connections.php:673 +#: ../../mod/connections.php:676 msgid "Finding: " msgstr "Ricerca: " @@ -5641,7 +5752,7 @@ msgstr "Interessi" msgid "Address" msgstr "Indirizzo" -#: ../../mod/profiles.php:367 +#: ../../mod/profiles.php:367 ../../mod/pubsites.php:31 msgid "Location" msgstr "Luogo attuale" @@ -5804,7 +5915,7 @@ msgid "" "be visible to anybody using the internet." msgstr "Questo è il tuo profilo publico.
Potrebbe essere visto da chiunque attraverso internet." -#: ../../mod/profiles.php:584 ../../mod/directory.php:147 +#: ../../mod/profiles.php:584 ../../mod/directory.php:160 msgid "Age: " msgstr "Età:" @@ -5812,23 +5923,23 @@ msgstr "Età:" msgid "Edit/Manage Profiles" msgstr "Modifica/gestisci i profili" -#: ../../mod/profiles.php:624 ../../boot.php:1730 +#: ../../mod/profiles.php:624 ../../boot.php:1759 msgid "Change profile photo" msgstr "Cambia la foto del profilo" -#: ../../mod/profiles.php:625 ../../boot.php:1737 +#: ../../mod/profiles.php:625 ../../boot.php:1766 msgid "Create New Profile" msgstr "Crea un nuovo profilo" -#: ../../mod/profiles.php:636 ../../boot.php:1751 +#: ../../mod/profiles.php:636 ../../boot.php:1780 msgid "Profile Image" msgstr "Immagine del profilo" -#: ../../mod/profiles.php:639 ../../boot.php:1754 +#: ../../mod/profiles.php:639 ../../boot.php:1783 msgid "visible to everybody" msgstr "visibile a tutti" -#: ../../mod/profiles.php:640 ../../boot.php:1755 +#: ../../mod/profiles.php:640 ../../boot.php:1784 msgid "Edit visibility" msgstr "Cambia la visibilità" @@ -5906,7 +6017,7 @@ msgid "" "Password reset failed." msgstr "La richiesta non può essere verificata (potresti averla già usata precedentemente). La password non può essere reimpostata." -#: ../../mod/lostpass.php:85 ../../boot.php:1452 +#: ../../mod/lostpass.php:85 ../../boot.php:1473 msgid "Password Reset" msgstr "Reimposta la password" @@ -6032,32 +6143,32 @@ msgstr "Per ciascuna opzione, scegli se vuoi rendere questo server il tuo indiri msgid "Make this hub my primary location" msgstr "Rendi questo server il mio indirizzo primario" -#: ../../mod/manage.php:62 +#: ../../mod/manage.php:63 #, php-format msgid "You have created %1$.0f of %2$.0f allowed channels." msgstr "Hai creato %1$.0f dei %2$.0f canali permessi." -#: ../../mod/manage.php:70 +#: ../../mod/manage.php:71 msgid "Create a new channel" msgstr "Crea un nuovo canale" -#: ../../mod/manage.php:75 +#: ../../mod/manage.php:76 msgid "Channel Manager" msgstr "Gestione canali" -#: ../../mod/manage.php:76 +#: ../../mod/manage.php:77 msgid "Current Channel" msgstr "Canale attuale" -#: ../../mod/manage.php:78 +#: ../../mod/manage.php:79 msgid "Attach to one of your channels by selecting it." msgstr "Seleziona il canale a cui vuoi passare." -#: ../../mod/manage.php:79 +#: ../../mod/manage.php:80 msgid "Default Channel" msgstr "Canale predefinito" -#: ../../mod/manage.php:80 +#: ../../mod/manage.php:81 msgid "Make Default" msgstr "Rendi predefinito" @@ -6168,21 +6279,21 @@ msgid "Edit Layout" msgstr "Modifica il layout" #: ../../mod/editlayout.php:104 ../../mod/editwebpage.php:123 -#: ../../mod/editpost.php:98 ../../mod/editblock.php:118 +#: ../../mod/editpost.php:101 ../../mod/editblock.php:118 msgid "Insert YouTube video" msgstr "Inserisci video da YouTube" #: ../../mod/editlayout.php:105 ../../mod/editwebpage.php:124 -#: ../../mod/editpost.php:99 ../../mod/editblock.php:119 +#: ../../mod/editpost.php:102 ../../mod/editblock.php:119 msgid "Insert Vorbis [.ogg] video" msgstr "Inserisci video Vorbis [.ogg]" #: ../../mod/editlayout.php:106 ../../mod/editwebpage.php:125 -#: ../../mod/editpost.php:100 ../../mod/editblock.php:120 +#: ../../mod/editpost.php:103 ../../mod/editblock.php:120 msgid "Insert Vorbis [.ogg] audio" msgstr "Inserisci audio Vorbis [.ogg]" -#: ../../mod/editlayout.php:137 +#: ../../mod/editlayout.php:140 msgid "Delete Layout" msgstr "Elimina il layout" @@ -6270,7 +6381,7 @@ msgstr "Il ridimensionamento del'immagine [%s] è fallito." msgid "Edit Webpage" msgstr "Modifica la pagina web" -#: ../../mod/editwebpage.php:158 +#: ../../mod/editwebpage.php:162 msgid "Delete Webpage" msgstr "Elimina la pagina web" @@ -6408,7 +6519,15 @@ msgstr "Non ci sono nuove notifiche dalla bacheca." msgid "Home Notifications" msgstr "Notifiche dalla bacheca" -#: ../../mod/oexchange.php:22 +#: ../../mod/blocks.php:65 +msgid "Block Name" +msgstr "Nome del riquadro" + +#: ../../mod/oexchange.php:23 +msgid "Unable to find your hub." +msgstr "Impossibile raggiungere il tuo hub." + +#: ../../mod/oexchange.php:37 msgid "Post successful." msgstr "Inviato!" @@ -6416,10 +6535,6 @@ msgstr "Inviato!" msgid "Item is not editable" msgstr "L'elemento non è modificabile" -#: ../../mod/editpost.php:40 -msgid "Edit post" -msgstr "Modifica articolo" - #: ../../mod/profile.php:111 msgid "Access to this profile has been restricted." msgstr "L'accesso a questo profilo è stato limitato." @@ -6444,7 +6559,7 @@ msgstr "Scegli cosa vuoi inviare al destinatario" msgid "Make this post private" msgstr "Rendi privato questo articolo" -#: ../../mod/wall_upload.php:41 ../../mod/item.php:1052 +#: ../../mod/wall_upload.php:41 ../../mod/item.php:1057 msgid "Wall Photos" msgstr "Foto della bacheca" @@ -6485,7 +6600,7 @@ msgstr "Suggerisci un amico a %s" msgid "Edit Block" msgstr "Modifica il riquadro" -#: ../../mod/editblock.php:153 +#: ../../mod/editblock.php:156 msgid "Delete Block" msgstr "Elimina il riquadro" @@ -6517,20 +6632,20 @@ msgstr "Impossibile trovare il messaggio originale." msgid "Empty post discarded." msgstr "L'articolo vuoto è stato ignorato." -#: ../../mod/item.php:365 +#: ../../mod/item.php:363 msgid "Executable content type not permitted to this channel." msgstr "I contenuti eseguibili non sono permessi su questo canale." -#: ../../mod/item.php:767 +#: ../../mod/item.php:772 msgid "System error. Post not saved." msgstr "Errore di sistema. Articolo non salvato." -#: ../../mod/item.php:1131 +#: ../../mod/item.php:1136 #, php-format msgid "You have reached your limit of %1$.0f top level posts." msgstr "Hai raggiunto il limite massimo di %1$.0f articoli sulla pagina principale." -#: ../../mod/item.php:1137 +#: ../../mod/item.php:1142 #, php-format msgid "You have reached your limit of %1$.0f webpages." msgstr "Hai raggiunto il limite massimo di %1$.0f pagine web." @@ -6554,9 +6669,9 @@ msgstr "Red" #: ../../mod/siteinfo.php:82 msgid "" -"This is Red - another decentralized, distributed communications project by " -"the folks at Friendica." -msgstr "Questo è Red - un progetto di comunicazione decentralizzata e distribuita dagli autori di Friendica." +"This is a hub of the Red Matrix - a global cooperative network of " +"decentralised privacy enhanced websites." +msgstr "Questo è un hub di Red Matrix - una rete cooperativa e decentralizzata di siti con elevato livello di privacy. " #: ../../mod/siteinfo.php:84 msgid "Running at web location" @@ -6564,9 +6679,9 @@ msgstr "In esecuzione sull'indirizzo web" #: ../../mod/siteinfo.php:85 msgid "" -"Please visit Friendica.com to learn " -"more about the Friendica and/or Red project." -msgstr "Visita Friendica.com per scoprire di più sul progetto Red o sul progetto Friendica." +"Please visit GetZot.com to learn more " +"about the Red Matrix." +msgstr "Visita GetZot.com per scoprire il progetto Red Matrix." #: ../../mod/siteinfo.php:86 msgid "Bug reports and issues: please visit" @@ -6574,9 +6689,9 @@ msgstr "Per segnalare bug e problemi: visita" #: ../../mod/siteinfo.php:89 msgid "" -"Suggestions, praise, donations, etc. - please email \"Info\" at Friendica - " -"dot com" -msgstr "Per suggerimenti, ringraziamenti, donazioni, ecc - scrivi a \"info chiocciola friendica punto com\"" +"Suggestions, praise, donations, etc. - please email \"redmatrix\" at " +"librelist - dot com" +msgstr "Per consigli, ringraziamenti, donazioni, ecc. - scrivi a \"redmatrix\" at librelist - dot com" #: ../../mod/suggest.php:41 msgid "" @@ -6592,15 +6707,24 @@ msgstr "Ignora/nascondi" msgid "Public Sites" msgstr "Siti pubblici" -#: ../../mod/pubsites.php:28 +#: ../../mod/pubsites.php:25 +msgid "" +"The listed sites allow public registration into the Red Matrix. All sites in" +" the matrix are interlinked so membership on any of them conveys membership " +"in the matrix as a whole. Some sites may require subscription or provide " +"tiered service plans. The provider links may provide " +"additional details." +msgstr "Gli indirizzi elencati permettono la registrazione su Red Matrix. Tutti i siti di questa rete sono interconnessi, quindi essere registrati su uno è come essere registrati ovunque. Alcuni potrebbero richiedere un'iscrizione a pagamento o prevedere tipi diversi di abbonamento. Potrai trovare maggiori informazioni al riguardo visitando ciascun sito." + +#: ../../mod/pubsites.php:31 msgid "Site URL" msgstr "URL del sito" -#: ../../mod/pubsites.php:28 +#: ../../mod/pubsites.php:31 msgid "Access Type" msgstr "Tipo di accesso" -#: ../../mod/pubsites.php:28 +#: ../../mod/pubsites.php:31 msgid "Registration Policy" msgstr "Politica di registrazione" @@ -6686,37 +6810,51 @@ msgstr "L'autenticazione remota non è disponibile. Hai accesso solamente a ques msgid "Welcome %s. Remote authentication successful." msgstr "Ciao %s. La tua autenticazione da remoto è avvenuta con successo." -#: ../../mod/removeme.php:45 ../../mod/removeme.php:48 -msgid "Remove My Account" -msgstr "Elimina il mio account" +#: ../../mod/removeme.php:49 +msgid "Remove This Channel" +msgstr "Elimina questo canale" -#: ../../mod/removeme.php:46 +#: ../../mod/removeme.php:50 msgid "" -"This will completely remove your account. Once this has been done it is not " -"recoverable." -msgstr "Questo comando rimuoverà completamente il tuo account. Una volta rimosso non potrai più recuperarlo." +"This will completely remove this channel from the network. Once this has " +"been done it is not recoverable." +msgstr "Questo comando rimuoverà completamente il canale che stai usando. Una volta fatto non sarà più possibile ripristinarlo." -#: ../../mod/removeme.php:47 +#: ../../mod/removeme.php:51 msgid "Please enter your password for verification:" msgstr "Inserisci la tua password per verifica:" -#: ../../mod/directory.php:150 +#: ../../mod/removeme.php:52 +msgid "Remove this channel and all its clones from the network" +msgstr "Rimuovi questo canale e tutti i suoi cloni dalla rete" + +#: ../../mod/removeme.php:52 +msgid "" +"By default only the instance of the channel located on this hub will be " +"removed from the network" +msgstr "L'impostazione predefinita è che sia eliminata solo l'istanza del canale presente su questo hub, non gli eventuali cloni" + +#: ../../mod/removeme.php:53 +msgid "Remove My Account" +msgstr "Elimina il mio account" + +#: ../../mod/directory.php:163 msgid "Gender: " msgstr "Sesso:" -#: ../../mod/directory.php:209 +#: ../../mod/directory.php:222 msgid "Finding:" msgstr "Ricerca:" -#: ../../mod/directory.php:217 +#: ../../mod/directory.php:230 msgid "next page" msgstr "pagina succ." -#: ../../mod/directory.php:217 +#: ../../mod/directory.php:230 msgid "previous page" msgstr "pagina prec." -#: ../../mod/directory.php:224 +#: ../../mod/directory.php:237 msgid "No entries (some entries may be hidden)." msgstr "Nessun risultato (qualcosa potrebbe essere nascosto)." @@ -6728,252 +6866,329 @@ msgstr "Umore" msgid "Set your current mood and tell your friends" msgstr "Scegli il tuo umore attuale per mostrarlo agli amici" -#: ../../view/theme/redbasic/php/config.php:67 -#: ../../view/theme/apw/php/config.php:161 +#: ../../view/theme/redbasic/php/config.php:68 +msgid "Scheme Default" +msgstr "Schema predefinito" + +#: ../../view/theme/redbasic/php/config.php:69 +msgid "red" +msgstr "rosso" + +#: ../../view/theme/redbasic/php/config.php:70 +msgid "black" +msgstr "nero" + +#: ../../view/theme/redbasic/php/config.php:71 +msgid "silver" +msgstr "argento" + +#: ../../view/theme/redbasic/php/config.php:82 +#: ../../view/theme/apw/php/config.php:234 msgid "Theme settings" msgstr "Impostazioni del tema" -#: ../../view/theme/redbasic/php/config.php:68 -#: ../../view/theme/apw/php/config.php:162 +#: ../../view/theme/redbasic/php/config.php:83 +#: ../../view/theme/apw/php/config.php:235 msgid "Set scheme" msgstr "Schema" -#: ../../view/theme/redbasic/php/config.php:69 +#: ../../view/theme/redbasic/php/config.php:84 msgid "Navigation bar colour" msgstr "Colore della barra di navigazione" -#: ../../view/theme/redbasic/php/config.php:70 +#: ../../view/theme/redbasic/php/config.php:85 +msgid "Set font-colour for banner" +msgstr "Colore del font del banner" + +#: ../../view/theme/redbasic/php/config.php:86 msgid "Set the background colour" msgstr "Colore di sfondo" -#: ../../view/theme/redbasic/php/config.php:71 +#: ../../view/theme/redbasic/php/config.php:87 msgid "Set the background image" msgstr "Immagine di sfondo" -#: ../../view/theme/redbasic/php/config.php:72 +#: ../../view/theme/redbasic/php/config.php:88 msgid "Set the background colour of items" msgstr "Colore di sfondo degli elementi della pagina" -#: ../../view/theme/redbasic/php/config.php:73 +#: ../../view/theme/redbasic/php/config.php:89 msgid "Set the opacity of items" msgstr "Opacità degli oggetti" -#: ../../view/theme/redbasic/php/config.php:74 -#: ../../view/theme/apw/php/config.php:163 +#: ../../view/theme/redbasic/php/config.php:90 +msgid "Set the basic colour for item icons" +msgstr "Colore di base per le icone" + +#: ../../view/theme/redbasic/php/config.php:91 +msgid "Set the hover colour for item icons" +msgstr "Colore per le icone in evidenza" + +#: ../../view/theme/redbasic/php/config.php:92 +#: ../../view/theme/apw/php/config.php:236 msgid "Set font-size for posts and comments" msgstr "Dimensioni del carattere per articoli e commenti" -#: ../../view/theme/redbasic/php/config.php:75 +#: ../../view/theme/redbasic/php/config.php:93 msgid "Set font-colour for posts and comments" msgstr "Colore del carattere per articoli e commenti" -#: ../../view/theme/redbasic/php/config.php:76 +#: ../../view/theme/redbasic/php/config.php:94 msgid "Set radius of corners" msgstr "Raggio degli angoli stondati" -#: ../../view/theme/redbasic/php/config.php:77 +#: ../../view/theme/redbasic/php/config.php:95 msgid "Set shadow depth of photos" msgstr "Profondità dell'ombra delle foto" -#: ../../view/theme/apw/php/config.php:130 -#: ../../view/theme/apw/php/config.php:143 +#: ../../view/theme/redbasic/php/config.php:96 +msgid "Set maximum width of conversation regions" +msgstr "Larghezza massima delle aree delle conversazioni" + +#: ../../view/theme/redbasic/php/config.php:97 +msgid "Set minimum opacity of nav bar - to hide it" +msgstr "Imposta l'opacità minima della barra di navigazione per nasconderla" + +#: ../../view/theme/redbasic/php/config.php:98 +msgid "Sloppy photo albums" +msgstr "Photo album semplificati" + +#: ../../view/theme/redbasic/php/config.php:98 +msgid "Are you a clean desk or a messy desk person?" +msgstr "Hai una scrivania ordinata o sei una persona che lascia confusione?" + +#: ../../view/theme/apw/php/config.php:193 +#: ../../view/theme/apw/php/config.php:211 msgid "Schema Default" msgstr "Schema predefinito" -#: ../../view/theme/apw/php/config.php:131 +#: ../../view/theme/apw/php/config.php:194 msgid "Sans-Serif" msgstr "Sans-Serif" -#: ../../view/theme/apw/php/config.php:132 +#: ../../view/theme/apw/php/config.php:195 msgid "Monospace" msgstr "Monospace" -#: ../../view/theme/apw/php/config.php:164 +#: ../../view/theme/apw/php/config.php:237 msgid "Set font face" msgstr "Tipo di carattere" -#: ../../view/theme/apw/php/config.php:165 +#: ../../view/theme/apw/php/config.php:238 msgid "Set iconset" msgstr "Icone" -#: ../../view/theme/apw/php/config.php:166 +#: ../../view/theme/apw/php/config.php:239 +msgid "Set big shadow size, default 15px 15px 15px" +msgstr "Ombra grande, predefinita 15px 15px 15px" + +#: ../../view/theme/apw/php/config.php:240 +msgid "Set small shadow size, default 5px 5px 5px" +msgstr "Ombra piccola, predefinita 5px 5px 5px" + +#: ../../view/theme/apw/php/config.php:241 +msgid "Set shadow colour, default #000" +msgstr "Colore dell'ombra, predefinito #000" + +#: ../../view/theme/apw/php/config.php:242 +msgid "Set radius size, default 5px" +msgstr "Raggio degli angoli, predefinito 5px" + +#: ../../view/theme/apw/php/config.php:243 msgid "Set line-height for posts and comments" msgstr "Altezza della riga per articoli e commenti" -#: ../../view/theme/apw/php/config.php:167 +#: ../../view/theme/apw/php/config.php:244 msgid "Set background image" msgstr "Immagine di sfondo" -#: ../../view/theme/apw/php/config.php:168 +#: ../../view/theme/apw/php/config.php:245 msgid "Set background colour" msgstr "Colore di sfondo" -#: ../../view/theme/apw/php/config.php:169 +#: ../../view/theme/apw/php/config.php:246 +msgid "Set section background image" +msgstr "Immagine di sfondo della sezione" + +#: ../../view/theme/apw/php/config.php:247 +msgid "Set section background colour" +msgstr "Colore di sfondo della sezione" + +#: ../../view/theme/apw/php/config.php:248 msgid "Set colour of items - use hex" msgstr "Colore degli elementi della pagina - esadecimale" -#: ../../view/theme/apw/php/config.php:170 +#: ../../view/theme/apw/php/config.php:249 msgid "Set colour of links - use hex" msgstr "Colore dei link - esadecimale" -#: ../../view/theme/apw/php/config.php:171 +#: ../../view/theme/apw/php/config.php:250 msgid "Set max-width for items. Default 400px" msgstr "Larghezza massima degli elementi della pagina. Predefinita: 400px" -#: ../../view/theme/apw/php/config.php:172 +#: ../../view/theme/apw/php/config.php:251 msgid "Set min-width for items. Default 240px" msgstr "Larghezza minima degli elementi della pagina. Predefinita: 240px" -#: ../../view/theme/apw/php/config.php:173 +#: ../../view/theme/apw/php/config.php:252 msgid "Set the generic content wrapper width. Default 48%" msgstr "Larghezza di tutta l'area dei contenuti. Predefinita: 48%" -#: ../../view/theme/apw/php/config.php:174 +#: ../../view/theme/apw/php/config.php:253 msgid "Set colour of fonts - use hex" msgstr "Colore dei caratteri - esadecimale" -#: ../../view/theme/apw/php/config.php:175 +#: ../../view/theme/apw/php/config.php:254 msgid "Set background-size element" msgstr "Background-size element" -#: ../../view/theme/apw/php/config.php:176 +#: ../../view/theme/apw/php/config.php:255 msgid "Item opacity" msgstr "Opacità degli elementi della pagina" -#: ../../view/theme/apw/php/config.php:177 +#: ../../view/theme/apw/php/config.php:256 msgid "Display post previews only" msgstr "Mostra le anteprime solo degli articoli" -#: ../../view/theme/apw/php/config.php:178 +#: ../../view/theme/apw/php/config.php:257 msgid "Display side bar on channel page" msgstr "Mostra la colonna laterale sulla pagina del canale" -#: ../../view/theme/apw/php/config.php:179 +#: ../../view/theme/apw/php/config.php:258 msgid "Colour of the navigation bar" msgstr "Colore della barra di navigazione" -#: ../../view/theme/apw/php/config.php:180 +#: ../../view/theme/apw/php/config.php:259 msgid "Item float" msgstr "Float degli oggetti della pagina" -#: ../../view/theme/apw/php/config.php:181 +#: ../../view/theme/apw/php/config.php:260 msgid "Left offset of the section element" msgstr "Spazio a sinistra dell'elemento section" -#: ../../view/theme/apw/php/config.php:182 +#: ../../view/theme/apw/php/config.php:261 msgid "Right offset of the section element" msgstr "Spazio a destra dell'elemento section" -#: ../../view/theme/apw/php/config.php:183 +#: ../../view/theme/apw/php/config.php:262 msgid "Section width" msgstr "Larghezza section" -#: ../../view/theme/apw/php/config.php:184 +#: ../../view/theme/apw/php/config.php:263 msgid "Left offset of the aside" msgstr "Spazio a sinistra del aside" -#: ../../view/theme/apw/php/config.php:185 +#: ../../view/theme/apw/php/config.php:264 msgid "Right offset of the aside element" msgstr "Spazio a destra del aside" -#: ../../boot.php:1255 +#: ../../boot.php:1278 #, php-format msgid "Update %s failed. See error logs." msgstr "%s: aggiornamento fallito. Controlla i log di errore." -#: ../../boot.php:1258 +#: ../../boot.php:1281 #, php-format msgid "Update Error at %s" msgstr "Errore di aggiornamento su %s" -#: ../../boot.php:1416 -msgid "Create a New Account" -msgstr "Crea un nuovo account" +#: ../../boot.php:1438 +msgid "" +"Create an account to access services and applications within the Red Matrix" +msgstr "Registrati per accedere ai servizi e alle applicazioni di Red Matrix" -#: ../../boot.php:1445 +#: ../../boot.php:1466 msgid "Password" msgstr "Password" -#: ../../boot.php:1446 +#: ../../boot.php:1467 msgid "Remember me" msgstr "Resta connesso" -#: ../../boot.php:1451 +#: ../../boot.php:1472 msgid "Forgot your password?" msgstr "Hai dimenticato la password?" -#: ../../boot.php:1570 +#: ../../boot.php:1537 +msgid "permission denied" +msgstr "permesso negato" + +#: ../../boot.php:1538 +msgid "Got Zot?" +msgstr "Hai Zot?" + +#: ../../boot.php:1597 msgid "Requested channel is not available." msgstr "Il canale che cerchi non è disponibile." -#: ../../boot.php:1582 +#: ../../boot.php:1609 msgid " Sorry, you don't have the permission to view this profile. " msgstr "Purtroppo non hai il permesso di vedere questo profilo." -#: ../../boot.php:1736 +#: ../../boot.php:1765 msgid "Profiles" msgstr "Profili" -#: ../../boot.php:1736 +#: ../../boot.php:1765 msgid "Manage/edit profiles" msgstr "Gestisci/modifica i profili" -#: ../../boot.php:1740 +#: ../../boot.php:1769 msgid "Edit Profile" msgstr "Modifica il profilo" -#: ../../boot.php:1834 ../../boot.php:1914 +#: ../../boot.php:1863 ../../boot.php:1943 msgid "F d" msgstr "d F" -#: ../../boot.php:1891 +#: ../../boot.php:1920 msgid "Birthday Reminders" msgstr "Promemoria compleanni" -#: ../../boot.php:1892 +#: ../../boot.php:1921 msgid "Birthdays this week:" msgstr "Compleanni questa settimana:" -#: ../../boot.php:1947 +#: ../../boot.php:1976 msgid "[No description]" msgstr "[Nessuna descrizione]" -#: ../../boot.php:1965 +#: ../../boot.php:1994 msgid "Event Reminders" msgstr "Promemoria" -#: ../../boot.php:1966 +#: ../../boot.php:1995 msgid "Events this week:" msgstr "Eventi di questa settimana:" -#: ../../boot.php:2200 +#: ../../boot.php:2229 msgid "Channel" msgstr "Canale" -#: ../../boot.php:2203 +#: ../../boot.php:2232 msgid "Status Messages and Posts" msgstr "Articoli e messaggi di stato" -#: ../../boot.php:2207 +#: ../../boot.php:2236 msgid "About" msgstr "Informazioni" -#: ../../boot.php:2210 +#: ../../boot.php:2239 msgid "Profile Details" msgstr "Dettagli del profilo" -#: ../../boot.php:2228 +#: ../../boot.php:2257 msgid "Events and Calendar" msgstr "Calendario eventi" -#: ../../boot.php:2233 +#: ../../boot.php:2262 msgid "Webpages" msgstr "Pagine web" -#: ../../boot.php:2236 +#: ../../boot.php:2265 msgid "Manage Webpages" msgstr "Gestisci le pagine web" -#: ../../boot.php:2518 +#: ../../boot.php:2547 msgid "toggle mobile" msgstr "attiva/disattiva versione mobile" diff --git a/view/it/strings.php b/view/it/strings.php index 6561df3b1..62936964f 100644 --- a/view/it/strings.php +++ b/view/it/strings.php @@ -70,15 +70,17 @@ $a->strings["Share this"] = "Condividi"; $a->strings["share"] = "condividi"; $a->strings["View %s's profile - %s"] = "Guarda il profilo di %s - %s"; $a->strings["to"] = "a"; +$a->strings["via"] = "via"; $a->strings["Wall-to-Wall"] = "Da bacheca a bacheca"; $a->strings["via Wall-To-Wall:"] = "da bacheca a bacheca:"; $a->strings[" from %s"] = " da %s"; +$a->strings["last edited: %s"] = "ultima modifica: %s"; $a->strings["Please wait"] = "Attendere"; $a->strings["%d comment"] = array( 0 => "%d commento", 1 => "%d commenti", ); -$a->strings["show more"] = "mostra tutti"; +$a->strings["show more"] = "mostra tutto"; $a->strings["This is you"] = "Questo sei tu"; $a->strings["Comment"] = "Commento"; $a->strings["Submit"] = "Salva"; @@ -91,6 +93,7 @@ $a->strings["Image"] = "Immagine"; $a->strings["Link"] = "Link"; $a->strings["Video"] = "Video"; $a->strings["Preview"] = "Anteprima"; +$a->strings["Encrypt text"] = "Crittografia del testo"; $a->strings["Connect"] = "Connetti"; $a->strings["New window"] = "Nuova finestra"; $a->strings["Open the selected location in a different window or browser tab"] = "Apri l'indirizzo selezionato in una nuova scheda o finestra"; @@ -142,15 +145,13 @@ $a->strings["second"] = "secondo"; $a->strings["seconds"] = "secondi"; $a->strings["%1\$d %2\$s ago"] = "%1\$d %2\$s fa"; $a->strings["Cannot locate DNS info for database server '%s'"] = "Non trovo le informazioni DNS per il database server '%s'"; -$a->strings["Sort Options"] = "Opzioni di ordinamento"; -$a->strings["Alphabetic"] = "Alfabetico"; -$a->strings["Reverse Alphabetic"] = "Alfabetico inverso"; -$a->strings["Newest to Oldest"] = "Dal più nuovo al più vecchio"; $a->strings["l F d, Y \\@ g:i A"] = "l d F Y \\@ G:i"; $a->strings["Starts:"] = "Inizio:"; $a->strings["Finishes:"] = "Fine:"; $a->strings["Location:"] = "Luogo:"; $a->strings["General Features"] = "Funzionalità generali"; +$a->strings["Content Expiration"] = "Scadenza"; +$a->strings["Remove posts/comments and/or private messages at a future time"] = "Elimina gli articoli, i commenti o i messaggi privati dopo che è trascorso del tempo"; $a->strings["Multiple Profiles"] = "Profili multipli"; $a->strings["Ability to create multiple profiles"] = "Abilitazione a creare profili multipli"; $a->strings["Web Pages"] = "Pagine web"; @@ -170,6 +171,8 @@ $a->strings["Post Preview"] = "Anteprima articolo"; $a->strings["Allow previewing posts and comments before publishing them"] = "Abilita l'anteprima degli articoli e dei commenti prima di pubblicarli"; $a->strings["Channel Sources"] = "Sorgenti del canale"; $a->strings["Automatically import channel content from other channels or feeds"] = "Importa automaticamente il contenuto del canale da altri canali o feed"; +$a->strings["Even More Encryption"] = "Crittografia addizionale"; +$a->strings["Allow encryption of content end-to-end with a shared secret key"] = "Abilita la crittografia dei contenuti tra il mittente e i destinatari con una chiave segreta"; $a->strings["Network and Stream Filtering"] = "Filtraggio dei contenuti"; $a->strings["Search by Date"] = "Ricerca per data"; $a->strings["Ability to select posts by date ranges"] = "Per selezionare gli articoli in un intervallo tra date"; @@ -214,6 +217,8 @@ $a->strings["show fewer"] = "riduci"; $a->strings["Password too short"] = "Password troppo corta"; $a->strings["Passwords do not match"] = "Le password non corrispondono"; $a->strings["everybody"] = "tutti"; +$a->strings["Secret Passphrase"] = "Chiave segreta"; +$a->strings["Passphrase hint"] = "Suggerimento per la chiave segreta"; $a->strings["timeago.prefixAgo"] = "timeago.prefixAgo"; $a->strings["timeago.suffixAgo"] = "timeago.suffixAgo"; $a->strings["ago"] = "fa"; @@ -352,19 +357,20 @@ $a->strings["Unable to obtain identity information from database"] = "Impossibil $a->strings["Empty name"] = "Nome vuoto"; $a->strings["Name too long"] = "Nome troppo lungo"; $a->strings["No account identifier"] = "Account senza identificativo"; +$a->strings["Nickname is required."] = "Il nome dell'account è obbligatorio."; $a->strings["Nickname has unsupported characters or is already being used on this site."] = "Il nome dell'account è già in uso oppure ha dei caratteri non supportati."; $a->strings["Unable to retrieve created identity"] = "Impossibile caricare l'identità creata"; $a->strings["Default Profile"] = "Profilo predefinito"; $a->strings["Friends"] = "Amici"; $a->strings["Image/photo"] = "Immagine"; +$a->strings["Encrypted content"] = "Contenuto crittografato"; $a->strings["%1\$s wrote the following %2\$s %3\$s"] = "%1\$s ha scritto %2\$s seguente %3\$s"; $a->strings["post"] = "l'articolo"; $a->strings["$1 wrote:"] = "$1 ha scritto:"; -$a->strings["Encrypted content"] = "Contenuto crittografato"; -$a->strings["created a new post"] = "Ha creato un nuovo articolo"; -$a->strings["commented on %s's post"] = "ha commentato l'articolo di %s"; $a->strings["Embedded content"] = "Contenuti incorporati"; $a->strings["Embedding disabled"] = "Contenuti incorporati - funzione disabilitata"; +$a->strings["created a new post"] = "Ha creato un nuovo articolo"; +$a->strings["commented on %s's post"] = "ha commentato l'articolo di %s"; $a->strings["Permission denied."] = "Permesso negato."; $a->strings["Image exceeds website size limit of %lu bytes"] = "L'immagine supera il limite massimo di %lu bytes"; $a->strings["Image file is empty."] = "Il file dell'immagine è vuoto."; @@ -438,6 +444,14 @@ $a->strings["You have reached your limit of %1$.0f Mbytes attachment storage."] $a->strings["File upload failed. Possible system limit or action terminated."] = "Caricamento file fallito, potrebbe aver superato i limiti o l'azione potrebbe essere stata interrotta."; $a->strings["Stored file could not be verified. Upload failed."] = "Il file non può essere verificato. Caricamento fallito."; $a->strings["Path not available."] = "Percorso non disponibile."; +$a->strings["Empty pathname"] = "Il percorso del file è vuoto"; +$a->strings["duplicate filename or path"] = "il file o percorso del file è duplicato"; +$a->strings["Path not found."] = "Percorso del file non trovato."; +$a->strings["mkdir failed."] = "mkdir fallito."; +$a->strings["database storage failed."] = "scrittura su database fallita."; +$a->strings["Invalid data packet"] = "Dati non validi"; +$a->strings["Unable to verify channel signature"] = "Impossibile verificare la firma elettronica del canale"; +$a->strings["Unable to verify site signature for %s"] = "Impossibile verificare la firma elettronica del sito %s"; $a->strings["Logout"] = "Esci"; $a->strings["End this session"] = "Chiudi questa sessione"; $a->strings["Home"] = "Bacheca"; @@ -497,9 +511,6 @@ $a->strings["Admin"] = "Amministrazione"; $a->strings["Site Setup and Configuration"] = "Configurazione del sito"; $a->strings["Nothing new here"] = "Niente di nuovo qui"; $a->strings["Please wait..."] = "Attendere..."; -$a->strings["Invalid data packet"] = "Dati non validi"; -$a->strings["Unable to verify channel signature"] = "Impossibile verificare la firma elettronica del canale"; -$a->strings["Unable to verify site signature for %s"] = "Impossibile verificare la firma elettronica del sito %s"; $a->strings["Not a valid email address"] = "Email non valida"; $a->strings["Your email domain is not among those allowed on this site"] = "Il dominio della tua email attualmente non è permesso su questo sito"; $a->strings["Your email address is already registered at this site."] = "La tua email è già registrata su questo sito."; @@ -610,6 +621,7 @@ $a->strings["Please enter an audio link/URL:"] = "Inserisci l'indirizzo dell'aud $a->strings["Tag term:"] = "Tag:"; $a->strings["Save to Folder:"] = "Salva nella cartella:"; $a->strings["Where are you right now?"] = "Dove sei ora?"; +$a->strings["Expires YYYY-MM-DD HH:MM"] = "Scadenza il AAAA-MM-GG OO:MM"; $a->strings["Share"] = "Condividi"; $a->strings["Page link title"] = "Link del titolo"; $a->strings["Upload photo"] = "Carica foto"; @@ -632,6 +644,7 @@ $a->strings["Permission settings"] = "Impostazioni permessi"; $a->strings["permissions"] = "permessi"; $a->strings["Public post"] = "Articolo pubblico"; $a->strings["Example: bob@example.com, mary@example.com"] = "Per esempio: mario@esempio.com, simona@esempio.com"; +$a->strings["Set expiration date"] = "Data di scadenza"; $a->strings["Welcome "] = "Ciao"; $a->strings["Please upload a profile photo."] = "Carica una foto per il profilo!"; $a->strings["Welcome back "] = "Ciao, è bello rivederti"; @@ -642,6 +655,13 @@ $a->strings["Archives"] = "Archivi"; $a->strings["Collection not found."] = "Insieme non trovato."; $a->strings["Group is empty"] = "L'insieme è vuoto"; $a->strings["Connection not found."] = "Gruppo non trovato."; +$a->strings["Sort Options"] = "Opzioni di ordinamento"; +$a->strings["Alphabetic"] = "Alfabetico"; +$a->strings["Reverse Alphabetic"] = "Alfabetico inverso"; +$a->strings["Newest to Oldest"] = "Dal più nuovo al più vecchio"; +$a->strings["Enable Safe Search"] = "Abilita SafeSearch"; +$a->strings["Disable Safe Search"] = "Disabilita SafeSearch"; +$a->strings["Safe Mode"] = "Modalità SafeSearch"; $a->strings["No channel."] = "Nessun canale."; $a->strings["Common connections"] = "Contatti in comune"; $a->strings["No connections in common."] = "Nessun contatto in comune."; @@ -685,10 +705,11 @@ $a->strings["You have no more invitations available"] = "Non hai altri inviti di $a->strings["Send invitations"] = "Spedisci inviti"; $a->strings["Enter email addresses, one per line:"] = "Inserisci gli indirizzi email, uno per riga:"; $a->strings["Your message:"] = "Il tuo messaggio:"; -$a->strings["You are cordially invited to join me and some other close friends on the Red Matrix - a revolutionary new decentralised social and information tool."] = "Questo è un caloroso invito ad unirti a me e altri amici su Red Matrix - uno strumento di comunicazione social rivoluzionario e decentrato."; +$a->strings["You are cordially invited to join me and some other close friends on the Red Matrix - a revolutionary new decentralised communication and information tool."] = "Questo è un invito cordiale ad unirti a me e ad altri miei amici stretti su Red Matrix - uno nuovo strumento di comunicazione decentralizzato e rivoluzionario."; $a->strings["You will need to supply this invitation code: \$invite_code"] = "Sarà necessario fornire questo codice invito: \$invite_code"; $a->strings["Please visit my channel at"] = "Puoi visitare il mio canale su"; -$a->strings["Once you have registered, please connect with my Red Matrix channel address:"] = "Una volta che avrai fatto la registrazione, potrai connetterti al mio canale Red Matrix a questo indirizzo:"; +$a->strings["Once you have registered (on ANY Red Matrix site - they are all inter-connected), please connect with my Red Matrix channel address:"] = "Una volta che avrai completato la registrazione (su QUALSIASI sito Red Matrix - sono tutti interconnessi), potrai connetterti al mio canale:"; +$a->strings["Click the [Register] link on the following page to join."] = "Fai clic su [Registrati] nella pagina seguente per iscriverti."; $a->strings["For more information about the Red Matrix Project and why it has the potential to change the internet as we know it, please visit http://getzot.com"] = "Per saperne di più sul progetto Red Matrix e sul perché potrebbe cambiare internet per come la conosciamo, visita http://getzot.com"; $a->strings["Friends of %s"] = "Amici di %s"; $a->strings["No friends to display."] = "Nessun amico da visualizzare."; @@ -705,6 +726,7 @@ $a->strings["No installed applications."] = "Nessuna app installata."; $a->strings["Applications"] = "Applicazioni"; $a->strings["Invalid item."] = "Elemento non valido."; $a->strings["Channel not found."] = "Canale non trovato."; +$a->strings["Page not found."] = "Pagina non trovata."; $a->strings["Item not available."] = "Elemento non disponibile."; $a->strings["Red Matrix Server - Setup"] = "Red Matrix Server - Installazione"; $a->strings["Could not connect to database."] = " Impossibile connettersi al database."; @@ -777,6 +799,7 @@ $a->strings["The database configuration file \".htconfig.php\" could not be writ $a->strings["Errors encountered creating database tables."] = "La creazione delle tabelle del database ha generato errori."; $a->strings["

What next

"] = "

I prossimi passi

"; $a->strings["IMPORTANT: You will need to [manually] setup a scheduled task for the poller."] = "IMPORTANTE: Devi creare [manualmente] la pianificazione del polling."; +$a->strings["Edit post"] = "Modifica articolo"; $a->strings["%1\$s is following %2\$s's %3\$s"] = "%1\$s sta seguendo %3\$s di %2\$s"; $a->strings["[Embedded content - reload page to view]"] = "[Contenuto incorporato - ricarica la pagina per visualizzarlo correttamente]"; $a->strings["toggle full screen mode"] = "attiva/disattiva schermo intero"; @@ -1181,9 +1204,11 @@ $a->strings["Delete conversation"] = "Elimina la conversazione"; $a->strings["No secure communications available. You may be able to respond from the sender's profile page."] = "Non è disponibile alcun sistema per comunicare in modo sicuro. Puoi verificare se eventualmente è possibile rispondere dalla pagina del profilo del mittente."; $a->strings["Send Reply"] = "Invia la risposta"; $a->strings["No profile"] = "Nessun profilo"; +$a->strings["Layout Help"] = "Guida al layout"; +$a->strings["Help with this feature"] = "La guida per questa funzionalità"; +$a->strings["Layout Name"] = "Nome layout"; $a->strings["Help:"] = "Guida:"; $a->strings["Not Found"] = "Non disponibile"; -$a->strings["Page not found."] = "Pagina non trovata."; $a->strings["Remote Authentication"] = "Autenticazione a distanza"; $a->strings["Enter your channel address (e.g. channel@example.com)"] = "Inserisci l'indirizzo del tuo canale (ad esempio lucia@esempio.com)"; $a->strings["Authenticate"] = "Autenticazione"; @@ -1511,9 +1536,10 @@ $a->strings["No more personal notifications."] = "Non ci sono nuove notifiche pe $a->strings["Personal Notifications"] = "Notifiche personali"; $a->strings["No more home notifications."] = "Non ci sono nuove notifiche dalla bacheca."; $a->strings["Home Notifications"] = "Notifiche dalla bacheca"; +$a->strings["Block Name"] = "Nome del riquadro"; +$a->strings["Unable to find your hub."] = "Impossibile raggiungere il tuo hub."; $a->strings["Post successful."] = "Inviato!"; $a->strings["Item is not editable"] = "L'elemento non è modificabile"; -$a->strings["Edit post"] = "Modifica articolo"; $a->strings["Access to this profile has been restricted."] = "L'accesso a questo profilo è stato limitato."; $a->strings["Poke/Prod"] = "Poke/Prod"; $a->strings["poke, prod or do other things to somebody"] = "Manda un poke, un prod o altro"; @@ -1546,14 +1572,15 @@ $a->strings["Version %s"] = "Versione %s"; $a->strings["Installed plugins/addons/apps:"] = "App e componenti aggiuntivi instalati:"; $a->strings["No installed plugins/addons/apps"] = "Nessuna app o componente aggiuntivo installato"; $a->strings["Red"] = "Red"; -$a->strings["This is Red - another decentralized, distributed communications project by the folks at Friendica."] = "Questo è Red - un progetto di comunicazione decentralizzata e distribuita dagli autori di Friendica."; +$a->strings["This is a hub of the Red Matrix - a global cooperative network of decentralised privacy enhanced websites."] = "Questo è un hub di Red Matrix - una rete cooperativa e decentralizzata di siti con elevato livello di privacy. "; $a->strings["Running at web location"] = "In esecuzione sull'indirizzo web"; -$a->strings["Please visit Friendica.com to learn more about the Friendica and/or Red project."] = "Visita Friendica.com per scoprire di più sul progetto Red o sul progetto Friendica."; +$a->strings["Please visit GetZot.com to learn more about the Red Matrix."] = "Visita GetZot.com per scoprire il progetto Red Matrix."; $a->strings["Bug reports and issues: please visit"] = "Per segnalare bug e problemi: visita"; -$a->strings["Suggestions, praise, donations, etc. - please email \"Info\" at Friendica - dot com"] = "Per suggerimenti, ringraziamenti, donazioni, ecc - scrivi a \"info chiocciola friendica punto com\""; +$a->strings["Suggestions, praise, donations, etc. - please email \"redmatrix\" at librelist - dot com"] = "Per consigli, ringraziamenti, donazioni, ecc. - scrivi a \"redmatrix\" at librelist - dot com"; $a->strings["No suggestions available. If this is a new site, please try again in 24 hours."] = "Nessun suggerimento disponibile. Se questo è un sito nuovo, riprova tra 24 ore."; $a->strings["Ignore/Hide"] = "Ignora/nascondi"; $a->strings["Public Sites"] = "Siti pubblici"; +$a->strings["The listed sites allow public registration into the Red Matrix. All sites in the matrix are interlinked so membership on any of them conveys membership in the matrix as a whole. Some sites may require subscription or provide tiered service plans. The provider links may provide additional details."] = "Gli indirizzi elencati permettono la registrazione su Red Matrix. Tutti i siti di questa rete sono interconnessi, quindi essere registrati su uno è come essere registrati ovunque. Alcuni potrebbero richiedere un'iscrizione a pagamento o prevedere tipi diversi di abbonamento. Potrai trovare maggiori informazioni al riguardo visitando ciascun sito."; $a->strings["Site URL"] = "URL del sito"; $a->strings["Access Type"] = "Tipo di accesso"; $a->strings["Registration Policy"] = "Politica di registrazione"; @@ -1575,9 +1602,12 @@ $a->strings["Please re-enter your password"] = "Ripeti la password per verifica" $a->strings["Please login."] = "Accedi."; $a->strings["Remote authentication blocked. You are logged into this site locally. Please logout and retry."] = "L'autenticazione remota non è disponibile. Hai accesso solamente a questo sito. Puoi provare ad uscire per tentare di nuovo."; $a->strings["Welcome %s. Remote authentication successful."] = "Ciao %s. La tua autenticazione da remoto è avvenuta con successo."; -$a->strings["Remove My Account"] = "Elimina il mio account"; -$a->strings["This will completely remove your account. Once this has been done it is not recoverable."] = "Questo comando rimuoverà completamente il tuo account. Una volta rimosso non potrai più recuperarlo."; +$a->strings["Remove This Channel"] = "Elimina questo canale"; +$a->strings["This will completely remove this channel from the network. Once this has been done it is not recoverable."] = "Questo comando rimuoverà completamente il canale che stai usando. Una volta fatto non sarà più possibile ripristinarlo."; $a->strings["Please enter your password for verification:"] = "Inserisci la tua password per verifica:"; +$a->strings["Remove this channel and all its clones from the network"] = "Rimuovi questo canale e tutti i suoi cloni dalla rete"; +$a->strings["By default only the instance of the channel located on this hub will be removed from the network"] = "L'impostazione predefinita è che sia eliminata solo l'istanza del canale presente su questo hub, non gli eventuali cloni"; +$a->strings["Remove My Account"] = "Elimina il mio account"; $a->strings["Gender: "] = "Sesso:"; $a->strings["Finding:"] = "Ricerca:"; $a->strings["next page"] = "pagina succ."; @@ -1585,25 +1615,42 @@ $a->strings["previous page"] = "pagina prec."; $a->strings["No entries (some entries may be hidden)."] = "Nessun risultato (qualcosa potrebbe essere nascosto)."; $a->strings["Mood"] = "Umore"; $a->strings["Set your current mood and tell your friends"] = "Scegli il tuo umore attuale per mostrarlo agli amici"; +$a->strings["Scheme Default"] = "Schema predefinito"; +$a->strings["red"] = "rosso"; +$a->strings["black"] = "nero"; +$a->strings["silver"] = "argento"; $a->strings["Theme settings"] = "Impostazioni del tema"; $a->strings["Set scheme"] = "Schema"; $a->strings["Navigation bar colour"] = "Colore della barra di navigazione"; +$a->strings["Set font-colour for banner"] = "Colore del font del banner"; $a->strings["Set the background colour"] = "Colore di sfondo"; $a->strings["Set the background image"] = "Immagine di sfondo"; $a->strings["Set the background colour of items"] = "Colore di sfondo degli elementi della pagina"; $a->strings["Set the opacity of items"] = "Opacità degli oggetti"; +$a->strings["Set the basic colour for item icons"] = "Colore di base per le icone"; +$a->strings["Set the hover colour for item icons"] = "Colore per le icone in evidenza"; $a->strings["Set font-size for posts and comments"] = "Dimensioni del carattere per articoli e commenti"; $a->strings["Set font-colour for posts and comments"] = "Colore del carattere per articoli e commenti"; $a->strings["Set radius of corners"] = "Raggio degli angoli stondati"; $a->strings["Set shadow depth of photos"] = "Profondità dell'ombra delle foto"; +$a->strings["Set maximum width of conversation regions"] = "Larghezza massima delle aree delle conversazioni"; +$a->strings["Set minimum opacity of nav bar - to hide it"] = "Imposta l'opacità minima della barra di navigazione per nasconderla"; +$a->strings["Sloppy photo albums"] = "Photo album semplificati"; +$a->strings["Are you a clean desk or a messy desk person?"] = "Hai una scrivania ordinata o sei una persona che lascia confusione?"; $a->strings["Schema Default"] = "Schema predefinito"; $a->strings["Sans-Serif"] = "Sans-Serif"; $a->strings["Monospace"] = "Monospace"; $a->strings["Set font face"] = "Tipo di carattere"; $a->strings["Set iconset"] = "Icone"; +$a->strings["Set big shadow size, default 15px 15px 15px"] = "Ombra grande, predefinita 15px 15px 15px"; +$a->strings["Set small shadow size, default 5px 5px 5px"] = "Ombra piccola, predefinita 5px 5px 5px"; +$a->strings["Set shadow colour, default #000"] = "Colore dell'ombra, predefinito #000"; +$a->strings["Set radius size, default 5px"] = "Raggio degli angoli, predefinito 5px"; $a->strings["Set line-height for posts and comments"] = "Altezza della riga per articoli e commenti"; $a->strings["Set background image"] = "Immagine di sfondo"; $a->strings["Set background colour"] = "Colore di sfondo"; +$a->strings["Set section background image"] = "Immagine di sfondo della sezione"; +$a->strings["Set section background colour"] = "Colore di sfondo della sezione"; $a->strings["Set colour of items - use hex"] = "Colore degli elementi della pagina - esadecimale"; $a->strings["Set colour of links - use hex"] = "Colore dei link - esadecimale"; $a->strings["Set max-width for items. Default 400px"] = "Larghezza massima degli elementi della pagina. Predefinita: 400px"; @@ -1623,10 +1670,12 @@ $a->strings["Left offset of the aside"] = "Spazio a sinistra del aside"; $a->strings["Right offset of the aside element"] = "Spazio a destra del aside"; $a->strings["Update %s failed. See error logs."] = "%s: aggiornamento fallito. Controlla i log di errore."; $a->strings["Update Error at %s"] = "Errore di aggiornamento su %s"; -$a->strings["Create a New Account"] = "Crea un nuovo account"; +$a->strings["Create an account to access services and applications within the Red Matrix"] = "Registrati per accedere ai servizi e alle applicazioni di Red Matrix"; $a->strings["Password"] = "Password"; $a->strings["Remember me"] = "Resta connesso"; $a->strings["Forgot your password?"] = "Hai dimenticato la password?"; +$a->strings["permission denied"] = "permesso negato"; +$a->strings["Got Zot?"] = "Hai Zot?"; $a->strings["Requested channel is not available."] = "Il canale che cerchi non è disponibile."; $a->strings[" Sorry, you don't have the permission to view this profile. "] = "Purtroppo non hai il permesso di vedere questo profilo."; $a->strings["Profiles"] = "Profili"; From 0f93174b61b9200c65f6d42727013a3b810cbe88 Mon Sep 17 00:00:00 2001 From: friendica Date: Fri, 15 Nov 2013 15:15:44 -0800 Subject: [PATCH 002/271] Let's provide a shared to-do list for code and doco --- doc/Home.md | 2 ++ doc/To-Do-Code.md | 38 ++++++++++++++++++++++++++++++++++++++ doc/To-Do.md | 23 +++++++++++++++++++++++ 3 files changed, 63 insertions(+) create mode 100644 doc/To-Do-Code.md create mode 100644 doc/To-Do.md diff --git a/doc/Home.md b/doc/Home.md index 5f922c09d..a940d586d 100644 --- a/doc/Home.md +++ b/doc/Home.md @@ -20,6 +20,8 @@ Red Matrix Documentation and Resources * [Plugins](help/Plugins) * [Developers](help/Developers) * [Code](doc/html) +* [To-Do list for the Red Documentation Project](help/To-Do) +* [To-Do list for Developers](help/To-Do-Code) **External Resources** diff --git a/doc/To-Do-Code.md b/doc/To-Do-Code.md new file mode 100644 index 000000000..d4c4f4f3a --- /dev/null +++ b/doc/To-Do-Code.md @@ -0,0 +1,38 @@ +Project Code To-Do List +======================= + +We need much more than this, but here are areas where developers can help. Please edit this page when items are finished. Another place for developers to start is with the issues list. + + +* Documentation - see [Red Documentation Project To-Do List](help/To-Do) + +* Finish the anti-spam bayesian engine + +* Write more webpage layouts + +* Write more webpage widgets + +* (Advanced) create a UI for building Comanche pages + +* Help with WebDAV and file storage implementation + +* Extend WebDAV to provide desktop access to photo albums and existing file (attachment) storage + +* Events module - bring back birthday reminders for friends, fix permissions on events, and provide JS translation support for the calendar overview + +* Events module - event followups and RSVP + +* Photos module - turn photos into normal conversations and fix tagging + +* Provide RSS feed support which look like channels (in matrix only - copyright issues) + +* Fully implement "things". + +* Activity Stream generation for liking things, liking channels and other combinations. + +* Implement owned and exchangeable "things". + +In many cases some of the work has already been started and code exists so that you needn't start from scratch. Please contact one of the developer channels like Channel One (one@zothub.com) before embarking and we can tell you what we already have and provide some insights on how we envision these features fitting together. + + + \ No newline at end of file diff --git a/doc/To-Do.md b/doc/To-Do.md new file mode 100644 index 000000000..76b78b6ac --- /dev/null +++ b/doc/To-Do.md @@ -0,0 +1,23 @@ +Documentation we need to write +============================== + + +* Database schema detailed descriptions + +* Complete plugin hook documentation + +* API documentation + +* Function and code documentation (doxygen) + +* New Member guide + +* "Extra Feature" reference, description of each + +* Detailed Personal Settings Documentation + +* Administration Guide (post-install) + +* Administration Guide (pre-install) + + From e8c9dafb90e556a9cc9590022ef1131d76b1129d Mon Sep 17 00:00:00 2001 From: friendica Date: Fri, 15 Nov 2013 15:32:26 -0800 Subject: [PATCH 003/271] revert to prepare_page - but have it call prepare_body --- include/conversation.php | 2 +- mod/page.php | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/include/conversation.php b/include/conversation.php index fea53015e..a2eeda25b 100644 --- a/include/conversation.php +++ b/include/conversation.php @@ -1301,7 +1301,7 @@ function prepare_page($item) { '$auth_url' => (($naked) ? '' : $item['author']['xchan_url']), '$date' => (($naked) ? '' : datetime_convert('UTC',date_default_timezone_get(),$item['created'],'Y-m-d H:i')), '$title' => smilies(bbcode($item['title'])), - '$body' => prepare_text($item['body'],$item['mimetype']) + '$body' => prepare_body($item,true) )); } diff --git a/mod/page.php b/mod/page.php index 403016eb2..df17dbf52 100644 --- a/mod/page.php +++ b/mod/page.php @@ -112,7 +112,7 @@ function page_content(&$a) { xchan_query($r); $r = fetch_post_tags($r,true); - $o .= prepare_body($r[0],true); + $o .= prepare_page($r[0]); return $o; } From f13c513aba7b8914059845e8791faddbff052d9f Mon Sep 17 00:00:00 2001 From: friendica Date: Fri, 15 Nov 2013 22:10:30 -0800 Subject: [PATCH 004/271] update to-do list --- doc/To-Do-Code.md | 2 ++ 1 file changed, 2 insertions(+) diff --git a/doc/To-Do-Code.md b/doc/To-Do-Code.md index d4c4f4f3a..b68aaf4bd 100644 --- a/doc/To-Do-Code.md +++ b/doc/To-Do-Code.md @@ -18,6 +18,8 @@ We need much more than this, but here are areas where developers can help. Pleas * Extend WebDAV to provide desktop access to photo albums and existing file (attachment) storage +* Directory - provide a hover popup providing much more detail about the channel of interest. Keywords, additional public profile details, perhaps the last public post, anything else of interest. + * Events module - bring back birthday reminders for friends, fix permissions on events, and provide JS translation support for the calendar overview * Events module - event followups and RSVP From 579cf4ccfb7bc55ac53fe474e1752203f8d55003 Mon Sep 17 00:00:00 2001 From: friendica Date: Fri, 15 Nov 2013 23:18:53 -0800 Subject: [PATCH 005/271] reposition certain things like the wall-to-wall "to" photo when one changes the size of the author icons --- view/theme/redbasic/css/style.css | 9 +++++---- view/theme/redbasic/php/style.php | 6 ++++-- 2 files changed, 9 insertions(+), 6 deletions(-) diff --git a/view/theme/redbasic/css/style.css b/view/theme/redbasic/css/style.css index c280e555a..9dbeb5550 100644 --- a/view/theme/redbasic/css/style.css +++ b/view/theme/redbasic/css/style.css @@ -840,6 +840,7 @@ footer { .thread-wrapper .wall-item-comment-wrapper, .wall-item-content-wrapper.comment { margin-left: 50px; + border-left: 2px solid #eee; } .wall-item-content-wrapper { @@ -911,7 +912,7 @@ footer { left: 50px; margin: 0; position: absolute; - top: 70px; + top: $wwtop; width: 30px } .wallwall .wwto img { @@ -926,7 +927,7 @@ footer { .wall-item-arrowphoto-wrapper { position: absolute; left: 75px; - top: 70px; + top: $wwtop; z-index: 99; } .wall-item-wrapper { @@ -1084,8 +1085,8 @@ footer { .comment-edit-text-empty { color: gray; - height: 1.5em; - width: 40%; /*Too wide? */ + height: 1.0em; + width: 270px; overflow: auto; margin-bottom: 10px; } diff --git a/view/theme/redbasic/php/style.php b/view/theme/redbasic/php/style.php index 2fcda2cc8..eb32e5ef7 100644 --- a/view/theme/redbasic/php/style.php +++ b/view/theme/redbasic/php/style.php @@ -94,11 +94,12 @@ if(! $top_photo) $top_photo = '64px'; $pmenu_top = intval($top_photo) - 6 . 'px'; + $wwtop = intval($top_photo) - 5 . 'px'; if(! $reply_photo) $reply_photo = '32px'; $pmenu_reply = intval($reply_photo) - 6 . 'px'; - + if($nav_min_opacity === false || $nav_min_opacity === '') { $nav_float_min_opacity = 1.0; $nav_percent_min_opacity = 100; @@ -161,7 +162,8 @@ $options = array ( '$top_photo' => $top_photo, '$reply_photo' => $reply_photo, '$pmenu_top' => $pmenu_top, -'$pmenu_reply' => $pmenu_reply +'$pmenu_reply' => $pmenu_reply, +'$wwtop' => $wwtop ); echo str_replace(array_keys($options), array_values($options), $x); From 60a9d9e750be5971a6fa2706c22da95796ca3b1b Mon Sep 17 00:00:00 2001 From: friendica Date: Fri, 15 Nov 2013 23:51:27 -0800 Subject: [PATCH 006/271] do a better job of lining things up (like comments) when the photo size changes --- view/theme/redbasic/css/style.css | 2 +- view/theme/redbasic/php/style.php | 4 +++- 2 files changed, 4 insertions(+), 2 deletions(-) diff --git a/view/theme/redbasic/css/style.css b/view/theme/redbasic/css/style.css index 9dbeb5550..44165e038 100644 --- a/view/theme/redbasic/css/style.css +++ b/view/theme/redbasic/css/style.css @@ -839,7 +839,7 @@ footer { .thread-wrapper .wall-item-comment-wrapper, .wall-item-content-wrapper.comment { - margin-left: 50px; + margin-left: $comment_indent; border-left: 2px solid #eee; } diff --git a/view/theme/redbasic/php/style.php b/view/theme/redbasic/php/style.php index eb32e5ef7..a45482be8 100644 --- a/view/theme/redbasic/php/style.php +++ b/view/theme/redbasic/php/style.php @@ -95,6 +95,7 @@ $top_photo = '64px'; $pmenu_top = intval($top_photo) - 6 . 'px'; $wwtop = intval($top_photo) - 5 . 'px'; + $comment_indent = intval($top_photo) + 10 . 'px'; if(! $reply_photo) $reply_photo = '32px'; @@ -163,7 +164,8 @@ $options = array ( '$reply_photo' => $reply_photo, '$pmenu_top' => $pmenu_top, '$pmenu_reply' => $pmenu_reply, -'$wwtop' => $wwtop +'$wwtop' => $wwtop, +'$comment_indent' => $comment_indent ); echo str_replace(array_keys($options), array_values($options), $x); From fda617830deaad2f22ebe021354848f55abc8cec Mon Sep 17 00:00:00 2001 From: friendica Date: Fri, 15 Nov 2013 23:56:41 -0800 Subject: [PATCH 007/271] theme work --- view/theme/redbasic/css/style.css | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/view/theme/redbasic/css/style.css b/view/theme/redbasic/css/style.css index 44165e038..da30cb4a1 100644 --- a/view/theme/redbasic/css/style.css +++ b/view/theme/redbasic/css/style.css @@ -91,6 +91,10 @@ blockquote { margin-left: 5px; } +.hide-comments-outer { + margin-left: 10px; +} + #panel { background-color: ivory; position: absolute; From 766529b78ed1adeee0ae829847d8f04da6e0e78b Mon Sep 17 00:00:00 2001 From: friendica Date: Sat, 16 Nov 2013 00:01:03 -0800 Subject: [PATCH 008/271] theme works --- version.inc | 2 +- view/theme/redbasic/css/style.css | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/version.inc b/version.inc index e0b3d1ca3..e2a33a1da 100644 --- a/version.inc +++ b/version.inc @@ -1 +1 @@ -2013-11-15.498 +2013-11-16.499 diff --git a/view/theme/redbasic/css/style.css b/view/theme/redbasic/css/style.css index da30cb4a1..741c795a1 100644 --- a/view/theme/redbasic/css/style.css +++ b/view/theme/redbasic/css/style.css @@ -1076,7 +1076,7 @@ footer { } .comment-edit-photo img { - width: 25px; + width: $reply_photo; } .comment-edit-text-empty, .comment-edit-text-full { float: left; From 3f9eb41e762772c9eda42e8ba2c3e75eced37685 Mon Sep 17 00:00:00 2001 From: friendica Date: Sat, 16 Nov 2013 13:00:18 -0800 Subject: [PATCH 009/271] more of a light&fresh look --- view/theme/redbasic/css/style.css | 6 +++++- view/theme/redbasic/php/style.php | 4 ++-- 2 files changed, 7 insertions(+), 3 deletions(-) diff --git a/view/theme/redbasic/css/style.css b/view/theme/redbasic/css/style.css index 741c795a1..07a838f0b 100644 --- a/view/theme/redbasic/css/style.css +++ b/view/theme/redbasic/css/style.css @@ -63,6 +63,10 @@ input { font-size: $body_font_size; } +input[type="submit"] { + background-color: #F8F8F8; +} + code { font-family: Courier, monospace; display: block; @@ -169,7 +173,7 @@ nav #site-location { .info-message { font-size: 1.1em; border: 1px solid #444; - background-color: #ccc; + background-color: #F0F0F0; padding: 10px; -moz-border-radius: $radiuspx; border-radius: $radiuspx; diff --git a/view/theme/redbasic/php/style.php b/view/theme/redbasic/php/style.php index a45482be8..515356cb6 100644 --- a/view/theme/redbasic/php/style.php +++ b/view/theme/redbasic/php/style.php @@ -66,11 +66,11 @@ if (! $banner_colour) $banner_colour = "fff"; if (! $bgcolour) - $bgcolour = "#f8f8f8"; + $bgcolour = "#fdfdfd"; if (! $background_image) $background_image =''; if (! $item_colour) - $item_colour = "#f8f8f8"; + $item_colour = "#fdfdfd"; if (! $toolicon_colour) $toolicon_colour = '#777777'; if (! $toolicon_activecolour) From e16943006b8081a1606007dfdca6e1a3d677cbb7 Mon Sep 17 00:00:00 2001 From: friendica Date: Sat, 16 Nov 2013 13:07:44 -0800 Subject: [PATCH 010/271] update to-do --- doc/To-Do-Code.md | 2 ++ 1 file changed, 2 insertions(+) diff --git a/doc/To-Do-Code.md b/doc/To-Do-Code.md index b68aaf4bd..a0841cc1b 100644 --- a/doc/To-Do-Code.md +++ b/doc/To-Do-Code.md @@ -4,6 +4,8 @@ Project Code To-Do List We need much more than this, but here are areas where developers can help. Please edit this page when items are finished. Another place for developers to start is with the issues list. +* ACL widget - provide cc/bcc toggle to allow recipients to be discoverable at receiving end. This should integrate with public/private collections which currently exist but have no defined function. + * Documentation - see [Red Documentation Project To-Do List](help/To-Do) * Finish the anti-spam bayesian engine From 808f0fc1d4bd77799756d5430cc7f6e435bec225 Mon Sep 17 00:00:00 2001 From: friendica Date: Sat, 16 Nov 2013 13:19:33 -0800 Subject: [PATCH 011/271] more to-do --- doc/To-Do-Code.md | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/doc/To-Do-Code.md b/doc/To-Do-Code.md index a0841cc1b..d61ff1077 100644 --- a/doc/To-Do-Code.md +++ b/doc/To-Do-Code.md @@ -3,9 +3,10 @@ Project Code To-Do List We need much more than this, but here are areas where developers can help. Please edit this page when items are finished. Another place for developers to start is with the issues list. - * ACL widget - provide cc/bcc toggle to allow recipients to be discoverable at receiving end. This should integrate with public/private collections which currently exist but have no defined function. +* Turn top-level Apps menu into an Apps page - which will probably require App plugins to have icons. Add documentation specifically to the plugin/addon documentation for creating apps. Add links to the App Store (which doesn't currently exist). + * Documentation - see [Red Documentation Project To-Do List](help/To-Do) * Finish the anti-spam bayesian engine @@ -32,6 +33,8 @@ We need much more than this, but here are areas where developers can help. Pleas * Fully implement "things". +* Create mobile clients for the top platforms - which involves extending the API so that we can do stuff far beyond the current crop of Twitter/Statusnet clients. Ditto for mobile themes. We can probably use something like the Friendica Android app as a base to start from. + * Activity Stream generation for liking things, liking channels and other combinations. * Implement owned and exchangeable "things". From 2e464cb909ed12fbc6b9c51e8360daf3f53b6a2c Mon Sep 17 00:00:00 2001 From: friendica Date: Sat, 16 Nov 2013 19:27:06 -0800 Subject: [PATCH 012/271] make submit buttons look more or less like links --- view/theme/redbasic/css/style.css | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/view/theme/redbasic/css/style.css b/view/theme/redbasic/css/style.css index 07a838f0b..572eafdfb 100644 --- a/view/theme/redbasic/css/style.css +++ b/view/theme/redbasic/css/style.css @@ -64,7 +64,10 @@ input { } input[type="submit"] { - background-color: #F8F8F8; + background-color: #F0F0F0; + font-weight: bold; + color: #0080FF; + text-decoration: none; } code { From 8893643da065fb12bf9b60e3d31f65cf64c6754b Mon Sep 17 00:00:00 2001 From: friendica Date: Sat, 16 Nov 2013 19:48:45 -0800 Subject: [PATCH 013/271] more photo menu positioning work for varying photo sizes --- view/theme/redbasic/css/style.css | 7 ++++--- view/theme/redbasic/php/style.php | 6 +++--- 2 files changed, 7 insertions(+), 6 deletions(-) diff --git a/view/theme/redbasic/css/style.css b/view/theme/redbasic/css/style.css index 572eafdfb..f7d641e6b 100644 --- a/view/theme/redbasic/css/style.css +++ b/view/theme/redbasic/css/style.css @@ -882,7 +882,7 @@ footer { } .wall-item-photo-wrapper { - margin-top: 10px; + margin-top: 0px; margin-left: 10px; margin-bottom: 10px; width: 100px; @@ -907,7 +907,8 @@ footer { border: 2px solid #444444; background: #FFFFFF; position: absolute; - left: 10px; top: 90px; + left: 10px; + top: $top_photo; display: none; z-index: 10000; } @@ -917,7 +918,7 @@ footer { .comment .wall-item-photo-menu-button { top: $pmenu_reply;} -.comment .wall-item-photo-menu { top: 60px; } +.comment .wall-item-photo-menu { top: $reply_photo; } .wallwall .wwto { left: 50px; diff --git a/view/theme/redbasic/php/style.php b/view/theme/redbasic/php/style.php index 515356cb6..1eb5abfbb 100644 --- a/view/theme/redbasic/php/style.php +++ b/view/theme/redbasic/php/style.php @@ -93,13 +93,13 @@ $converse_width="1024px"; if(! $top_photo) $top_photo = '64px'; - $pmenu_top = intval($top_photo) - 6 . 'px'; - $wwtop = intval($top_photo) - 5 . 'px'; + $pmenu_top = intval($top_photo) - 16 . 'px'; + $wwtop = intval($top_photo) - 15 . 'px'; $comment_indent = intval($top_photo) + 10 . 'px'; if(! $reply_photo) $reply_photo = '32px'; - $pmenu_reply = intval($reply_photo) - 6 . 'px'; + $pmenu_reply = intval($reply_photo) - 16 . 'px'; if($nav_min_opacity === false || $nav_min_opacity === '') { $nav_float_min_opacity = 1.0; From 92f37fd0d5222d4f8cb7234d3de5fa8c784f81d3 Mon Sep 17 00:00:00 2001 From: friendica Date: Sun, 17 Nov 2013 01:10:46 -0800 Subject: [PATCH 014/271] document extra features --- boot.php | 6 ++- doc/Features.md | 103 ++++++++++++++++++++++++++++++++++++++++++++++++ doc/Home.md | 1 + mod/post.php | 4 +- version.inc | 2 +- 5 files changed, 111 insertions(+), 5 deletions(-) create mode 100644 doc/Features.md diff --git a/boot.php b/boot.php index ef7c140ee..8c20074fe 100755 --- a/boot.php +++ b/boot.php @@ -2318,8 +2318,8 @@ function zid_init(&$a) { $arr = array('zid' => $tmp_str, 'url' => $a->cmd); call_hooks('zid_init',$arr); if((! local_user()) && (! remote_user())) { - logger('zid_init: not authenticated. Invoking reverse magic-auth'); - $r = q("select * from hubloc where hubloc_addr = '%s' limit 1", + logger('zid_init: not authenticated. Invoking reverse magic-auth for ' . $tmp_str); + $r = q("select * from hubloc where hubloc_addr = '%s' order by hubloc_id desc limit 1", dbesc($tmp_str) ); // try to avoid recursion - but send them home to do a proper magic auth @@ -2328,6 +2328,8 @@ function zid_init(&$a) { if($r && ($r[0]['hubloc_url'] != z_root()) && (! strstr($dest,'/magic')) && (! strstr($dest,'/rmagic'))) { goaway($r[0]['hubloc_url'] . '/magic' . '?f=&rev=1&dest=' . z_root() . $dest); } + else + logger('zid_init: no hubloc found.'); } } } diff --git a/doc/Features.md b/doc/Features.md new file mode 100644 index 000000000..f4b26a647 --- /dev/null +++ b/doc/Features.md @@ -0,0 +1,103 @@ +Extra Features +============== + +The default interface of the Red Matrix was designed to be uncluttered. There are a huge number of extra features (some of which are extremely useful) which you can turn on and get the most of the application. These are found under the [Extra Features](settings/features) link of your [Settings](settings) page. + +**Content Expiration** + +Remove posts/comments and/or private messages at a future time. An extra button is added to the post editor which asks you for an expiration. Typically this in "yyyy-mm-dd hh:mm" format, but in the English language you have a bit more freedom and can use most any recognisable date reference such as "next Thursday" or "+1 day". At the specified time (give or take approximately ten minutes based on the remote system's checking frequency) the post is removed. + +**Multiple Profiles** + +The ability to create multiple profiles which are visible only to specific persons or groups. Your default profile may be visible to anybody, but secodnary profiles can all contain different or additional information and can only be seen by those to whom that profile is assigned. + +**Web Pages** + +Provides the ability to use web page design feaures and create custom webpages from your own content and also to design the pages with page layouts, custom menus, and content blocks. + +**Enhanced Photo Albums** + +Provides a photo album viewer that is a bit prettier than the normal interface. + +**Extended Identity Sharing** + +By default your identity travels with you as you browse the matrix to remote sites - and they know who you are and can show you content that only you can see. With Extended Identity Sharing you can provide this information to any website you visit from within the matrix. + +**Expert Mode** + +This allows you to see some advanced configuration options that would confuse some people or cause support issues. In particular this can give you full control over theme features and colours - so that you can tweak a large number of settings of the display theme to your liking. + +**Premium Channel** + +This allows you to set restrictions and terms on those that connect with your channel. This may be used by celebrities or anybody else who wishes to describe their channel to people who wish to connect with it. In certain cases you may be asked for payment in order to connect. + + +**Richtext Editor** + +The status post editor is plaintext, but the matrix allows a wide range of markup using BBcode. The visual editor provides "what you see is what you get" for many of the most frequently used markup tags. + +**Post Preview** + +Allows previewing posts and comments exactly as they would look on the page before publishing them. + +**Channel Sources** + +Automatically import channel content from other channels or feeds. This allows you to create sub-channels and super-channels from content provided elsewhere. The rules are that the content must be public, and the author/owner must give you permission to source their channel. + +**Even More Encryption** + +Private messages are encrypted during transport and storage. In this day and age, this encyption may not be enough if your communications are extremely sensitive. This options lets you provide optional encryption of content end-to-end with a shared secret key. How the recipient learns the key is up to you. You can provide a hint such as "the name of aunt Claire's first dog". + + +**Search by Date** + +This provides the ability to select posts by date ranges + +**Collections Filter** + +Enable widget to display stream posts only from selected collections. This also toggles the outbound permissions while you are viewing a collection. This is analogous to Google "circles" or Disapora "aspects". + +**Saved Searches** + +Provides a search widget on your matrix page which can save selected search terms for re-use. + +**Personal Tab** + +Enable tab to display only matrix posts that you've interacted with in some way, as an author or a contributor to the conversation. + +**New Tab** + +Enables a tab to display all new matrix activity as a firehose or timeline. + +**Affinity Tool** + +Filter matrix stream activity by the depth of your relationships + +**Edit Sent Posts** + +Edit and correct posts and comments after sending + +**Tagging** + +Ability to tag existing posts, including those written by others. + +**Post Categories** + +Add categories to your channel posts + +**Saved Folders** + +Ability to file posts under folders or tags for later recall + +**Dislike Posts** + +Ability to dislike posts/comments + +**Star Posts** + +Ability to mark special posts with a star indicator + +**Tag Cloud** + +Provide a personal tag cloud on your channel page + diff --git a/doc/Home.md b/doc/Home.md index a940d586d..f97f987da 100644 --- a/doc/Home.md +++ b/doc/Home.md @@ -9,6 +9,7 @@ Red Matrix Documentation and Resources * [Channels](help/Channels) * [Connecting to Channels](help/Connecting-to-Channels) * [Permissions](help/Permissions) +* [But Wait - There's More. MUCH More...](help/Features) * [Tags and Mentions](help/Tags-and-Mentions) * [Web Pages](help/Webpages) * [Remove Account](help/Remove-Account) diff --git a/mod/post.php b/mod/post.php index 92d810356..3b98fce81 100644 --- a/mod/post.php +++ b/mod/post.php @@ -130,8 +130,8 @@ function post_init(&$a) { } else { logger('mod_zot: still not authenticated: ' . $x[0]['xchan_addr']); q("update hubloc set hubloc_status = (hubloc_status | %d ) where hubloc_addr = '%s'", - intval(HUBLOC_RECEIVE_ERROR), - $x[0][xchan_addr] + intval(HUBLOC_RECEIVE_ERROR), + $x[0][xchan_addr] ); } diff --git a/version.inc b/version.inc index e2a33a1da..771e7842a 100644 --- a/version.inc +++ b/version.inc @@ -1 +1 @@ -2013-11-16.499 +2013-11-17.500 From bec85f1494026a94eb521b802a74b67762b01a6c Mon Sep 17 00:00:00 2001 From: friendica Date: Sun, 17 Nov 2013 13:54:43 -0800 Subject: [PATCH 015/271] implement admin remove account --- mod/admin.php | 6 +++--- view/theme/redbasic/css/style.css | 5 +++++ view/tpl/admin_users.tpl | 8 ++++---- 3 files changed, 12 insertions(+), 7 deletions(-) diff --git a/mod/admin.php b/mod/admin.php index fad03e34a..3608f6eda 100644 --- a/mod/admin.php +++ b/mod/admin.php @@ -563,7 +563,7 @@ function admin_page_users_post(&$a){ if (x($_POST,'page_users_delete')){ require_once("include/Contact.php"); foreach($users as $uid){ - user_remove($uid); + account_remove($uid,true); } notice( sprintf( tt("%s user deleted", "%s users deleted", count($users)), count($users)) ); } @@ -605,9 +605,9 @@ function admin_page_users(&$a){ check_form_security_token_redirectOnErr('/admin/users', 'admin_users', 't'); // delete user require_once("include/Contact.php"); - user_remove($uid); + account_remove($uid,true); - notice( sprintf(t("User '%s' deleted"), $user[0]['username']) . EOL); + notice( sprintf(t("User '%s' deleted"), $account[0]['account_email']) . EOL); }; break; case "block":{ check_form_security_token_redirectOnErr('/admin/users', 'admin_users', 't'); diff --git a/view/theme/redbasic/css/style.css b/view/theme/redbasic/css/style.css index f7d641e6b..8e15d1eaf 100644 --- a/view/theme/redbasic/css/style.css +++ b/view/theme/redbasic/css/style.css @@ -3564,3 +3564,8 @@ text-decoration: none; .savedsearchdrop { opacity: 0; } + +.admin-icons { + color: $toolicon_colour; + margin-right: 10px; +} \ No newline at end of file diff --git a/view/tpl/admin_users.tpl b/view/tpl/admin_users.tpl index 770df7eba..b51fa3559 100755 --- a/view/tpl/admin_users.tpl +++ b/view/tpl/admin_users.tpl @@ -34,8 +34,8 @@ {{$u.email}} - - + + {{/foreach}} @@ -71,8 +71,8 @@ {{$u.account_service_class}} - - + + {{/foreach}} From 28b0eb9c330261ea6a8cd36248c194b6b153f5e6 Mon Sep 17 00:00:00 2001 From: friendica Date: Sun, 17 Nov 2013 14:28:13 -0800 Subject: [PATCH 016/271] more work on redmtx.com magic-auth situation --- mod/magic.php | 26 ++++++++++++++++++++++---- 1 file changed, 22 insertions(+), 4 deletions(-) diff --git a/mod/magic.php b/mod/magic.php index 4794f86a8..21f703192 100644 --- a/mod/magic.php +++ b/mod/magic.php @@ -28,16 +28,34 @@ function magic_init(&$a) { ); } else { + // See if we know anybody at the dest site that will unlock the door for us + // This is the equivalent of buzzing every apartment in an apartment block + // to get inside the front gate. The thing about magic auth is that we're + // authenticating to the other site. Permissions provided by various + // channels will still affect what we can do once authenticated. + $b = explode('/',$dest); if(count($b) >= 2) { $u = $b[0] . '//' . $b[2]; - $x = q("select xchan.xchan_url, hubloc.* from xchan left join hubloc on xchan_hash = hubloc_hash - where hubloc_url = '%s' order by hubloc_id desc limit 5", - dbesc($u) - ); + if(local_user()) { + // first look for a connection or anybody who knows us + $x = q("select xchan.xchan_url, hubloc.* from xchan left join hubloc on xchan_hash = hubloc_hash + left join abook on abook_xchan = hubloc_hash + where abook_channel = %d and hubloc_url = '%s' order by hubloc_id desc limit 5", + intval(local_user()), + dbesc($u) + ); + } + if(! $x) { + // no luck - ok anybody will do + $x = q("select xchan.xchan_url, hubloc.* from xchan left join hubloc on xchan_hash = hubloc_hash + where hubloc_url = '%s' order by hubloc_id desc limit 5", + dbesc($u) + ); + } if($x) { // They must have a valid hubloc_addr From 06e0272db873ad0b7dbc96596e92b8c635f940a2 Mon Sep 17 00:00:00 2001 From: friendica Date: Sun, 17 Nov 2013 16:50:32 -0800 Subject: [PATCH 017/271] populate some posts when somebody is granted "read stream" permission --- include/items.php | 5 +++++ include/onepoll.php | 9 ++++++--- include/poller.php | 3 +++ include/zot.php | 14 +++++++++++++- mod/connections.php | 3 +++ mod/follow.php | 2 +- mod/zotfeed.php | 4 +++- 7 files changed, 34 insertions(+), 6 deletions(-) diff --git a/include/items.php b/include/items.php index 520ea7230..5793a7d66 100755 --- a/include/items.php +++ b/include/items.php @@ -3757,6 +3757,7 @@ function fetch_post_tags($items,$link = false) { function zot_feed($uid,$observer_xchan,$mindate) { + $result = array(); $mindate = datetime_convert('UTC','UTC',$mindate); if(! $mindate) @@ -3764,10 +3765,14 @@ function zot_feed($uid,$observer_xchan,$mindate) { $mindate = dbesc($mindate); + logger('zot_feed: ' . $uid); + if(! perm_is_allowed($uid,$observer_xchan,'view_stream')) { + logger('zot_feed: permission denied.'); return $result; } + require_once('include/security.php'); $sql_extra = item_permissions_sql($uid); if($mindate != '0000-00-00 00:00:00') { diff --git a/include/onepoll.php b/include/onepoll.php index 50c2566be..5e5589228 100644 --- a/include/onepoll.php +++ b/include/onepoll.php @@ -98,8 +98,11 @@ function onepoll_run($argv, $argc){ return; if($contact['xchan_connurl']) { - $feedurl = str_replace('/poco/','/zotfeed/',$channel['xchan_connurl']); - $x = z_fetch_url($feedurl . '?f=&mindate=' . $last_update); + $feedurl = str_replace('/poco/','/zotfeed/',$contact['xchan_connurl']); + $x = z_fetch_url($feedurl . '?f=&mindate=' . urlencode($last_update)); + + logger('feed_update: ' . print_r($x,true), LOGGER_DATA); + if($x['success']) { $total = 0; logger('onepoll: feed update ' . $contact['xchan_name']); @@ -107,7 +110,7 @@ function onepoll_run($argv, $argc){ $j = json_decode($x['body'],true); if($j['success'] && $j['messages']) { foreach($j['messages'] as $message) { - $results = process_delivery(array('hash' => $contact['xchan_hash']),$message, + $results = process_delivery(array('hash' => $contact['xchan_hash']), get_item_elements($message), array(array('hash' => $importer['xchan_hash'])), false); $total ++; } diff --git a/include/poller.php b/include/poller.php index 3c4e6402c..0dcec4c0f 100644 --- a/include/poller.php +++ b/include/poller.php @@ -117,7 +117,10 @@ function poller_run($argv, $argc){ set_config('system','last_expire_day',$d2); + // Uncomment when expire protocol component is working +// Update - this is not going to happen. We are only going to +// implement per-item expire, not blanket expiration // proc_run('php','include/expire.php'); proc_run('php','include/cli_suggest.php'); diff --git a/include/zot.php b/include/zot.php index 09a3c28fa..71f720a6d 100644 --- a/include/zot.php +++ b/include/zot.php @@ -306,6 +306,11 @@ function zot_refresh($them,$channel = null) { ); if(! $y) logger('abook update failed'); + else { + // if we were just granted read stream permission and didn't have it before, try to pull in some posts + if((! ($r[0]['abook_their_perms'] & PERMS_R_STREAM)) && ($their_perms & PERMS_R_STREAM)) + proc_run('php','include/onepoll.php',$r[0]['abook_id']); + } } else { $default_perms = 0; @@ -330,7 +335,6 @@ function zot_refresh($them,$channel = null) { ); if($y) { - logger("New introduction received for {$channel['channel_name']}"); if($default_perms) { // send back a permissions update for auto-friend/auto-permissions @@ -342,6 +346,14 @@ function zot_refresh($them,$channel = null) { if($z) proc_run('php','include/notifier.php','permission_update',$z[0]['abook_id']); } + $new_connection = q("select abook_id from abook where abook_channel = %d and abook_xchan = '%s' order by abook_created desc limit 1", + intval($channel['channel_id']), + dbesc($x['hash']) + ); + + if($new_connection && ($their_perms & PERMS_R_STREAM)) + proc_run('php','include/onepoll.php',$new_connection[0]['abook_id']); + } } } diff --git a/mod/connections.php b/mod/connections.php index 1ad9fedbc..a40a8fa90 100644 --- a/mod/connections.php +++ b/mod/connections.php @@ -133,6 +133,9 @@ function connections_post(&$a) { // friends in general or this friend in particular aren't hidden) // and send out a new friend activity // TODO + + // pull in a bit of content if there is any to pull in + proc_run('php','include/onepoll.php',$contact_id); } // Refresh the structure in memory with the new data diff --git a/mod/follow.php b/mod/follow.php index 9f5a8183b..1d29dab2e 100644 --- a/mod/follow.php +++ b/mod/follow.php @@ -15,7 +15,7 @@ function follow_init(&$a) { $confirm = intval($_REQUEST['confirm']); $result = new_contact($uid,$url,$a->get_channel(),true,$confirm); - + if($result['success'] == false) { if($result['message']) notice($result['message']); diff --git a/mod/zotfeed.php b/mod/zotfeed.php index 2ca049563..6d84a5a1e 100644 --- a/mod/zotfeed.php +++ b/mod/zotfeed.php @@ -21,7 +21,7 @@ function zotfeed_init(&$a) { $channel_address = ((argc() > 1) ? argv(1) : ''); if($channel_address) { - $r = q("select channel_id from channel where channel_address = '%s' limit 1", + $r = q("select channel_id, channel_name from channel where channel_address = '%s' limit 1", dbesc(argv(1)) ); } @@ -30,6 +30,8 @@ function zotfeed_init(&$a) { json_return_and_die($result); } + logger('zotfeed request: ' . $r[0]['channel_name'], LOGGER_DEBUG); + $result['messages'] = zot_feed($r[0]['channel_id'],$observer['xchan_hash'],$mindate); $result['success'] = true; json_return_and_die($result); From d6a3465a5b462ad2f29454d6331e1efae03e6166 Mon Sep 17 00:00:00 2001 From: friendica Date: Sun, 17 Nov 2013 16:59:06 -0800 Subject: [PATCH 018/271] s/Developer Preview/Public Preview/g --- README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/README.md b/README.md index 77a3dde41..ef1b8c892 100644 --- a/README.md +++ b/README.md @@ -33,7 +33,7 @@ Within the Red Matrix, identity is nomadic. It defines you and it belongs to you The Red Matrix is free and open source distributed under the MIT license. -Currently the project is in "Developer Preview". A lot of work remains, but many important bits are functioning. Please connect with one of the developer channels ("Channel One" would be a good choice) if you are interested in helping us out. +Currently the project is in "Public Preview". A lot of work remains, but many important bits are functioning. Please connect with one of the developer channels ("Channel One" would be a good choice) if you are interested in helping us out. [Please help us change the world by providing a small donation.](http://pledgie.com/campaigns/18417) (Large donations are also graciously accepted). From 772e3795bf1513b5f8ac3ab520c6c8cdb68de3af Mon Sep 17 00:00:00 2001 From: friendica Date: Sun, 17 Nov 2013 17:26:41 -0800 Subject: [PATCH 019/271] typo --- doc/Features.md | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/doc/Features.md b/doc/Features.md index f4b26a647..addc57704 100644 --- a/doc/Features.md +++ b/doc/Features.md @@ -9,7 +9,7 @@ Remove posts/comments and/or private messages at a future time. An extra button **Multiple Profiles** -The ability to create multiple profiles which are visible only to specific persons or groups. Your default profile may be visible to anybody, but secodnary profiles can all contain different or additional information and can only be seen by those to whom that profile is assigned. +The ability to create multiple profiles which are visible only to specific persons or groups. Your default profile may be visible to anybody, but secondary profiles can all contain different or additional information and can only be seen by those to whom that profile is assigned. **Web Pages** @@ -42,11 +42,11 @@ Allows previewing posts and comments exactly as they would look on the page befo **Channel Sources** -Automatically import channel content from other channels or feeds. This allows you to create sub-channels and super-channels from content provided elsewhere. The rules are that the content must be public, and the author/owner must give you permission to source their channel. +Automatically import and re-publish channel content from other channels or feeds. This allows you to create sub-channels and super-channels from content provided elsewhere. The rules are that the content must be public, and the channel owner must give you permission to source their channel. **Even More Encryption** -Private messages are encrypted during transport and storage. In this day and age, this encyption may not be enough if your communications are extremely sensitive. This options lets you provide optional encryption of content end-to-end with a shared secret key. How the recipient learns the key is up to you. You can provide a hint such as "the name of aunt Claire's first dog". +Private messages are encrypted during transport and storage. In this day and age, this encyption may not be enough if your communications are extremely sensitive. This options lets you provide optional encryption of content "end-to-end" with a shared secret key. How the recipient learns the secret key is completely up to you. You can provide a hint such as "the name of aunt Claire's first dog". **Search by Date** From 13538cdd21c6e13a2ff108f1b42dbecaab8b375a Mon Sep 17 00:00:00 2001 From: friendica Date: Sun, 17 Nov 2013 19:22:24 -0800 Subject: [PATCH 020/271] pull in some posts when we first connect with a new channel (if allowed to) - if not allowed to, do it if that condition changes --- boot.php | 2 +- include/items.php | 27 ++++++++++++++++++++------- include/onepoll.php | 24 ++++++++++++++++++------ include/zot.php | 4 ++-- mod/follow.php | 6 ++++++ mod/item.php | 8 -------- mod/network.php | 4 ++-- 7 files changed, 49 insertions(+), 26 deletions(-) diff --git a/boot.php b/boot.php index 8c20074fe..2a214e5c2 100755 --- a/boot.php +++ b/boot.php @@ -1586,7 +1586,7 @@ function get_max_import_size() { function profile_load(&$a, $nickname, $profile = '') { - logger('profile_load: ' . $profile); + logger('profile_load: ' . $nickname . (($profile) ? ' profile: ' . $profile : '')); $user = q("select channel_id from channel where channel_address = '%s' limit 1", dbesc($nickname) diff --git a/include/items.php b/include/items.php index 5793a7d66..f8b698a4a 100755 --- a/include/items.php +++ b/include/items.php @@ -552,15 +552,20 @@ function get_item_elements($x) { $arr['created'] = datetime_convert('UTC','UTC',$x['created']); $arr['edited'] = datetime_convert('UTC','UTC',$x['edited']); - $arr['expires'] = ((x($x,'expires') && $x['expires']) - ? datetime_convert('UTC','UTC',$x['expires']) - : '0000-00-00 00:00:00'); if($arr['created'] > datetime_convert()) $arr['created'] = datetime_convert(); if($arr['edited'] > datetime_convert()) $arr['edited'] = datetime_convert(); + $arr['expires'] = ((x($x,'expires') && $x['expires']) + ? datetime_convert('UTC','UTC',$x['expires']) + : '0000-00-00 00:00:00'); + + $arr['commented'] = ((x($x,'commented') && $x['commented']) + ? datetime_convert('UTC','UTC',$x['commented']) + : $arr['created']); + $arr['title'] = (($x['title']) ? htmlentities($x['title'], ENT_COMPAT,'UTF-8',false) : ''); if(mb_strlen($arr['title']) > 255) @@ -714,6 +719,7 @@ function encode_item($item) { $x['created'] = $item['created']; $x['edited'] = $item['edited']; $x['expires'] = $item['expires']; + $x['commented'] = $item['commented']; $x['mimetype'] = $item['mimetype']; $x['title'] = $item['title']; $x['body'] = $item['body']; @@ -1539,8 +1545,8 @@ function item_store($arr,$allow_exec = false) { $arr['owner_xchan'] = ((x($arr,'owner_xchan')) ? notags(trim($arr['owner_xchan'])) : ''); $arr['created'] = ((x($arr,'created') !== false) ? datetime_convert('UTC','UTC',$arr['created']) : datetime_convert()); $arr['edited'] = ((x($arr,'edited') !== false) ? datetime_convert('UTC','UTC',$arr['edited']) : datetime_convert()); - $arr['expires'] = ((x($arr,'expires') !== false) ? datetime_convert('UTC','UTC',$arr['expires']) : '0000-00-00 00:00:00'); - $arr['commented'] = datetime_convert(); + $arr['expires'] = ((x($arr,'expires') !== false) ? datetime_convert('UTC','UTC',$arr['expires']) : '0000-00-00 00:00:00'); + $arr['commented'] = ((x($arr,'commented') !== false) ? datetime_convert('UTC','UTC',$arr['commented']) : datetime_convert()); $arr['received'] = datetime_convert(); $arr['changed'] = datetime_convert(); $arr['location'] = ((x($arr,'location')) ? notags(trim($arr['location'])) : ''); @@ -1777,8 +1783,15 @@ function item_store($arr,$allow_exec = false) { // update the commented timestamp on the parent - q("UPDATE item set commented = '%s', changed = '%s' WHERE id = %d LIMIT 1", - dbesc(datetime_convert()), + q("update item set commented = ( select max(created) from item where parent_mid = '%s' and uid = %d ) + where id = %d limit 1", + dbesc($arr['parent_mid']), + intval($arr['uid']), + intval($parent_id) + ); + + + q("UPDATE item set changed = '%s' WHERE id = %d LIMIT 1", dbesc(datetime_convert()), intval($parent_id) ); diff --git a/include/onepoll.php b/include/onepoll.php index 5e5589228..a821b76cf 100644 --- a/include/onepoll.php +++ b/include/onepoll.php @@ -36,11 +36,12 @@ function onepoll_run($argv, $argc){ $contacts = q("SELECT abook.*, xchan.*, account.* FROM abook LEFT JOIN account on abook_account = account_id left join xchan on xchan_hash = abook_xchan where abook_id = %d - AND (( abook_flags = %d ) OR ( abook_flags = %d )) + AND (( abook_flags = %d ) OR ( abook_flags = %d ) OR ( abook_flags & %d )) AND (( account_flags = %d ) OR ( account_flags = %d )) limit 1", intval($contact_id), intval(ABOOK_FLAG_HIDDEN), intval(0), + intval(ABOOK_FLAG_PENDING), intval(ACCOUNT_OK), intval(ACCOUNT_UNVERIFIED) ); @@ -67,7 +68,7 @@ function onepoll_run($argv, $argc){ logger("onepoll: poll: ({$contact['id']}) IMPORTER: {$importer['xchan_name']}, CONTACT: {$contact['xchan_name']}"); - $last_update = (($contact['abook_updated'] === '0000-00-00 00:00:00') + $last_update = ((($contact['abook_updated'] === $contact['abook_created']) || ($contact['abook_updated'] === '0000-00-00 00:00:00')) ? datetime_convert('UTC','UTC','now - 7 days') : datetime_convert('UTC','UTC',$contact['abook_updated'] . ' - 2 days') ); @@ -98,12 +99,22 @@ function onepoll_run($argv, $argc){ return; if($contact['xchan_connurl']) { - $feedurl = str_replace('/poco/','/zotfeed/',$contact['xchan_connurl']); - $x = z_fetch_url($feedurl . '?f=&mindate=' . urlencode($last_update)); + $fetch_feed = true; + $x = null; - logger('feed_update: ' . print_r($x,true), LOGGER_DATA); + if(! ($contact['abook_their_perms'] & PERMS_R_STREAM )) + $fetch_feed = false; - if($x['success']) { + if($fetch_feed) { + + $feedurl = str_replace('/poco/','/zotfeed/',$contact['xchan_connurl']); + $x = z_fetch_url($feedurl . '?f=&mindate=' . urlencode($last_update)); + + logger('feed_update: ' . print_r($x,true), LOGGER_DATA); + + } + + if(($x) && ($x['success'])) { $total = 0; logger('onepoll: feed update ' . $contact['xchan_name']); @@ -112,6 +123,7 @@ function onepoll_run($argv, $argc){ foreach($j['messages'] as $message) { $results = process_delivery(array('hash' => $contact['xchan_hash']), get_item_elements($message), array(array('hash' => $importer['xchan_hash'])), false); + logger('onepoll: feed_update: process_delivery: ' . print_r($results,true)); $total ++; } logger("onepoll: $total messages processed"); diff --git a/include/zot.php b/include/zot.php index 71f720a6d..018f00ba5 100644 --- a/include/zot.php +++ b/include/zot.php @@ -346,12 +346,12 @@ function zot_refresh($them,$channel = null) { if($z) proc_run('php','include/notifier.php','permission_update',$z[0]['abook_id']); } - $new_connection = q("select abook_id from abook where abook_channel = %d and abook_xchan = '%s' order by abook_created desc limit 1", + $new_connection = q("select abook_id, abook_flags from abook where abook_channel = %d and abook_xchan = '%s' order by abook_created desc limit 1", intval($channel['channel_id']), dbesc($x['hash']) ); - if($new_connection && ($their_perms & PERMS_R_STREAM)) + if($new_connection && (! ($new_connection[0]['abook_flags'] & ABOOK_FLAG_PENDING)) && ($their_perms & PERMS_R_STREAM)) proc_run('php','include/onepoll.php',$new_connection[0]['abook_id']); } diff --git a/mod/follow.php b/mod/follow.php index 1d29dab2e..364fe76b9 100644 --- a/mod/follow.php +++ b/mod/follow.php @@ -24,6 +24,12 @@ function follow_init(&$a) { info( t('Channel added.') . EOL); + // If we can view their stream, pull in some posts + + if($result['abook']['abook_their_perms'] & PERMS_R_STREAM) + proc_run('php','include/onepoll.php',$result['abook']['abook_id']); + + goaway(z_root() . '/connections/' . $result['abook']['abook_id']); } diff --git a/mod/item.php b/mod/item.php index b564c7545..7eebbe287 100644 --- a/mod/item.php +++ b/mod/item.php @@ -774,14 +774,6 @@ function item_post(&$a) { // NOTREACHED } - // update the commented timestamp on the parent - - q("UPDATE `item` set `commented` = '%s', `changed` = '%s' WHERE `id` = %d LIMIT 1", - dbesc(datetime_convert()), - dbesc(datetime_convert()), - intval($parent) - ); - $page_type = ''; if($webpage & ITEM_WEBPAGE) diff --git a/mod/network.php b/mod/network.php index 81b38a5ae..9ee21dc05 100644 --- a/mod/network.php +++ b/mod/network.php @@ -512,7 +512,7 @@ function network_content(&$a, $update = 0, $load = false) { . "'; var profile_page = " . $a->pager['page'] . ";"; -logger('Search: ' . $search); + $a->page['htmlhead'] .= replace_macros(get_markup_template("build_query.tpl"),array( '$baseurl' => z_root(), @@ -734,7 +734,7 @@ logger('Search: ' . $search); $o .= alt_pager($a,count($items)); if($load) { - logger('mod_network: load: ' . count($items) . ' items', LOGGER_DATA); +// logger('mod_network: load: ' . count($items) . ' items', LOGGER_DATA); profiler($start,$first,'network parents'); profiler($first,$second,'network children'); From 23352b939b0fadaadad9c6e02d6d1545f00ee0e9 Mon Sep 17 00:00:00 2001 From: friendica Date: Sun, 17 Nov 2013 19:49:48 -0800 Subject: [PATCH 021/271] better job of setting parent created --- include/items.php | 11 ++++------- 1 file changed, 4 insertions(+), 7 deletions(-) diff --git a/include/items.php b/include/items.php index f8b698a4a..5625f2c68 100755 --- a/include/items.php +++ b/include/items.php @@ -1783,16 +1783,13 @@ function item_store($arr,$allow_exec = false) { // update the commented timestamp on the parent - q("update item set commented = ( select max(created) from item where parent_mid = '%s' and uid = %d ) - where id = %d limit 1", + $z = q("select max(created) as created from item where parent_mid = '%s' and uid = %d ", dbesc($arr['parent_mid']), - intval($arr['uid']), - intval($parent_id) + intval($arr['uid']) ); - - q("UPDATE item set changed = '%s' WHERE id = %d LIMIT 1", - dbesc(datetime_convert()), + q("UPDATE item set created = '%s', changed = '%s' WHERE id = %d LIMIT 1", + dbesc(($z) ? $z[0]['created'] : (datetime_convert())), intval($parent_id) ); From 6378600747e70ed19f43614cd022aa332d731c45 Mon Sep 17 00:00:00 2001 From: friendica Date: Sun, 17 Nov 2013 20:09:40 -0800 Subject: [PATCH 022/271] fix commented timestamp --- include/items.php | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/include/items.php b/include/items.php index 5625f2c68..7db22d0da 100755 --- a/include/items.php +++ b/include/items.php @@ -1783,13 +1783,14 @@ function item_store($arr,$allow_exec = false) { // update the commented timestamp on the parent - $z = q("select max(created) as created from item where parent_mid = '%s' and uid = %d ", + $z = q("select max(commented) as commented from item where parent_mid = '%s' and uid = %d ", dbesc($arr['parent_mid']), intval($arr['uid']) ); - q("UPDATE item set created = '%s', changed = '%s' WHERE id = %d LIMIT 1", - dbesc(($z) ? $z[0]['created'] : (datetime_convert())), + q("UPDATE item set commented = '%s', changed = '%s' WHERE id = %d LIMIT 1", + dbesc(($z) ? $z[0]['commented'] : (datetime_convert())), + dbesc(datetime_convert()), intval($parent_id) ); From f8b07e1935dd6d035b7458141eca099a2445b077 Mon Sep 17 00:00:00 2001 From: friendica Date: Sun, 17 Nov 2013 20:43:50 -0800 Subject: [PATCH 023/271] filter out duplicate recipients on local deliveries. We only need to deliver stuff once to any particular channel. --- include/zot.php | 20 +++++++++++++++++++- 1 file changed, 19 insertions(+), 1 deletion(-) diff --git a/include/zot.php b/include/zot.php index 018f00ba5..1191cc221 100644 --- a/include/zot.php +++ b/include/zot.php @@ -910,11 +910,29 @@ function zot_import($arr, $sender_url) { $deliveries = allowed_public_recips($i); } + + // Go through the hash array and remove duplicates. array_unique() won't do this because the array is more than one level. + + $no_dups = array(); + if($deliveries) { + foreach($deliveries as $d) { + if(! in_array($d['hash'],$no_dups)) + $no_dups[] = $d['hash']; + } + + if($no_dups) { + $deliveries = array(); + foreach($no_dups as $n) { + $deliveries[] = array('hash' => $n); + } + } + } + if(! $deliveries) { logger('zot_import: no deliveries on this site'); continue; } - + if($i['message']) { if($i['message']['type'] === 'activity') { $arr = get_item_elements($i['message']); From dd6c64f95adc89895d4adf9ede8fbc8fdae41750 Mon Sep 17 00:00:00 2001 From: friendica Date: Sun, 17 Nov 2013 23:12:34 -0800 Subject: [PATCH 024/271] magic auth issues --- include/items.php | 2 +- mod/magic.php | 2 +- mod/post.php | 6 +++--- 3 files changed, 5 insertions(+), 5 deletions(-) diff --git a/include/items.php b/include/items.php index 7db22d0da..7e21b9c4d 100755 --- a/include/items.php +++ b/include/items.php @@ -1783,7 +1783,7 @@ function item_store($arr,$allow_exec = false) { // update the commented timestamp on the parent - $z = q("select max(commented) as commented from item where parent_mid = '%s' and uid = %d ", + $z = q("select max(created) as commented from item where parent_mid = '%s' and uid = %d ", dbesc($arr['parent_mid']), intval($arr['uid']) ); diff --git a/mod/magic.php b/mod/magic.php index 21f703192..6c8ad24ed 100644 --- a/mod/magic.php +++ b/mod/magic.php @@ -159,7 +159,7 @@ function magic_init(&$a) { logger('mod_magic: redirecting to: ' . $target_url, LOGGER_DEBUG); goaway($target_url - . '/?f=&auth=' . $channel['channel_address'] . '@' . $a->get_hostname() + . '/?f=&auth=' . urlencode($channel['channel_address'] . '@' . $a->get_hostname()) . '&sec=' . $token . '&dest=' . urlencode($dest) . '&version=' . ZOT_REVISION); } diff --git a/mod/post.php b/mod/post.php index 3b98fce81..6eab0988e 100644 --- a/mod/post.php +++ b/mod/post.php @@ -55,7 +55,7 @@ function post_init(&$a) { if(! $x) { // finger them if they can't be found. - $ret = zot_finger($addr,null); + $ret = zot_finger($address,null); if($ret['success']) { $j = json_decode($ret['body'],true); if($j) @@ -66,7 +66,7 @@ function post_init(&$a) { } } if(! $x) { - logger('mod_zot: auth: unable to finger ' . $addr); + logger('mod_zot: auth: unable to finger ' . $address); goaway($desturl); } @@ -131,7 +131,7 @@ function post_init(&$a) { logger('mod_zot: still not authenticated: ' . $x[0]['xchan_addr']); q("update hubloc set hubloc_status = (hubloc_status | %d ) where hubloc_addr = '%s'", intval(HUBLOC_RECEIVE_ERROR), - $x[0][xchan_addr] + dbesc($x[0]['xchan_addr']) ); } From fa8f26c544060b01fc8f6d0df22eea71ae8770fd Mon Sep 17 00:00:00 2001 From: friendica Date: Mon, 18 Nov 2013 00:55:41 -0800 Subject: [PATCH 025/271] change the way magic-auth works - we rarely need a destination channel and if that channel has problems it shouldn't mess up authentication to the hub. --- mod/post.php | 233 +++++++++++++++++++++++++-------------------------- version.inc | 2 +- 2 files changed, 117 insertions(+), 118 deletions(-) diff --git a/mod/post.php b/mod/post.php index 6eab0988e..ceb41b19d 100644 --- a/mod/post.php +++ b/mod/post.php @@ -15,140 +15,139 @@ function post_init(&$a) { // as a get request, and the only communications to arrive this way. if(argc() > 1) { - $webbie = argv(1); + } + + if(array_key_exists('auth',$_REQUEST)) { + logger('mod_zot: auth request received.'); + $address = $_REQUEST['auth']; + $dest = $_REQUEST['dest']; + $sec = $_REQUEST['sec']; + $version = $_REQUEST['version']; - if(array_key_exists('auth',$_REQUEST)) { - logger('mod_zot: auth request received.'); - $address = $_REQUEST['auth']; - $dest = $_REQUEST['dest']; - $sec = $_REQUEST['sec']; - $version = $_REQUEST['version']; - - switch($dest) { - case 'channel': - $desturl = z_root() . '/channel/' . $webbie; - break; - case 'photos': - $desturl = z_root() . '/photos/' . $webbie; - break; - case 'profile': - $desturl = z_root() . '/profile/' . $webbie; - break; - default: - $desturl = $dest; - break; - } + switch($dest) { + case 'channel': + $desturl = z_root() . '/channel/' . $webbie; + break; + case 'photos': + $desturl = z_root() . '/photos/' . $webbie; + break; + case 'profile': + $desturl = z_root() . '/profile/' . $webbie; + break; + default: + $desturl = $dest; + break; + } + if($webbie) { $c = q("select * from channel where channel_address = '%s' limit 1", dbesc($webbie) ); if(! $c) { logger('mod_zot: auth: unable to find channel ' . $webbie); // They'll get a notice when they hit the page, we don't need two of them. - goaway($desturl); + // In fact we only need the name to map the destination, auth can proceed + // without it. + // goaway($desturl); } + } - // Try and find a hubloc for the person attempting to auth - $x = q("select * from hubloc left join xchan on xchan_hash = hubloc_hash where hubloc_addr = '%s' order by hubloc_id desc limit 1", - dbesc($address) - ); + // Try and find a hubloc for the person attempting to auth + $x = q("select * from hubloc left join xchan on xchan_hash = hubloc_hash where hubloc_addr = '%s' order by hubloc_id desc limit 1", + dbesc($address) + ); - if(! $x) { - // finger them if they can't be found. - $ret = zot_finger($address,null); - if($ret['success']) { - $j = json_decode($ret['body'],true); - if($j) - import_xchan($j); - $x = q("select * from hubloc left join xchan on xchan_hash = hubloc_hash where hubloc_addr = '%s' order by hubloc_id desc limit 1", - dbesc($address) - ); - } - } - if(! $x) { - logger('mod_zot: auth: unable to finger ' . $address); - goaway($desturl); - } - - logger('mod_zot: auth request received from ' . $x[0]['xchan_addr'] . ' for ' . $webbie); - - // check credentials and access - - // If they are already authenticated and haven't changed credentials, - // we can save an expensive network round trip and improve performance. - - $remote = remote_user(); - $result = null; - - $already_authed = ((($remote) && ($x[0]['hubloc_hash'] == $remote)) ? true : false); - - if(! $already_authed) { - // Auth packets MUST use ultra top-secret hush-hush mode - $p = zot_build_packet($c[0],$type = 'auth_check', - array(array('guid' => $x[0]['hubloc_guid'],'guid_sig' => $x[0]['hubloc_guid_sig'])), - $x[0]['hubloc_sitekey'], $sec); - $result = zot_zot($x[0]['hubloc_callback'],$p); - if(! $result['success']) { - logger('mod_zot: auth_check callback failed.'); - goaway($desturl); - } - $j = json_decode($result['body'],true); - } - - if($already_authed || $j['success']) { - if($j['success']) { - // legit response, but we do need to check that this wasn't answered by a man-in-middle - if(! rsa_verify($sec . $x[0]['xchan_hash'],base64url_decode($j['confirm']),$x[0]['xchan_pubkey'])) { - logger('mod_zot: auth: final confirmation failed.'); - goaway($desturl); - } - } - // everything is good... maybe - if(local_user()) { - - // tell them to logout if they're logged in locally as anything but the target remote account - // in which case just shut up because they don't need to be doing this at all. - - if($a->channel['channel_hash'] != $x[0]['xchan_hash']) { - logger('mod_zot: auth: already authenticated locally as somebody else.'); - notice( t('Remote authentication blocked. You are logged into this site locally. Please logout and retry.') . EOL); - } - goaway($desturl); - } - // log them in - $_SESSION['authenticated'] = 1; - $_SESSION['visitor_id'] = $x[0]['xchan_hash']; - $_SESSION['my_address'] = $address; - $arr = array('xchan' => $x[0], 'url' => $desturl, 'channel_address' => $webbie); - call_hooks('magic_auth_success',$arr); - $a->set_observer($x[0]); - require_once('include/security.php'); - $a->set_groups(init_groups_visitor($_SESSION['visitor_id'])); - info(sprintf( t('Welcome %s. Remote authentication successful.'),$x[0]['xchan_name'])); - logger('mod_zot: auth success from ' . $x[0]['xchan_addr'] . ' for ' . $webbie); - - } else { - logger('mod_zot: still not authenticated: ' . $x[0]['xchan_addr']); - q("update hubloc set hubloc_status = (hubloc_status | %d ) where hubloc_addr = '%s'", - intval(HUBLOC_RECEIVE_ERROR), - dbesc($x[0]['xchan_addr']) + if(! $x) { + // finger them if they can't be found. + $ret = zot_finger($address,null); + if($ret['success']) { + $j = json_decode($ret['body'],true); + if($j) + import_xchan($j); + $x = q("select * from hubloc left join xchan on xchan_hash = hubloc_hash where hubloc_addr = '%s' order by hubloc_id desc limit 1", + dbesc($address) ); } - -// FIXME - we really want to save the return_url in the session before we visit rmagic. -// This does however prevent a recursion if you visit rmagic directly, as it would otherwise send you back here again. -// But z_root() probably isn't where you really want to go. - - if(strstr($desturl,z_root() . '/rmagic')) - goaway(z_root()); - + } + if(! $x) { + logger('mod_zot: auth: unable to finger ' . $address); goaway($desturl); } - logger('mod_zot: invalid args: ' . print_r($a->argv,true)); - killme(); - } + logger('mod_zot: auth request received from ' . $x[0]['xchan_addr'] . ' for ' . (($webbie) ? $webbie : 'undefined')); + // check credentials and access + + // If they are already authenticated and haven't changed credentials, + // we can save an expensive network round trip and improve performance. + + $remote = remote_user(); + $result = null; + + $already_authed = ((($remote) && ($x[0]['hubloc_hash'] == $remote)) ? true : false); + + if(! $already_authed) { + // Auth packets MUST use ultra top-secret hush-hush mode + $p = zot_build_packet($c[0],$type = 'auth_check', + array(array('guid' => $x[0]['hubloc_guid'],'guid_sig' => $x[0]['hubloc_guid_sig'])), + $x[0]['hubloc_sitekey'], $sec); + $result = zot_zot($x[0]['hubloc_callback'],$p); + if(! $result['success']) { + logger('mod_zot: auth_check callback failed.'); + goaway($desturl); + } + $j = json_decode($result['body'],true); + } + + if($already_authed || $j['success']) { + if($j['success']) { + // legit response, but we do need to check that this wasn't answered by a man-in-middle + if(! rsa_verify($sec . $x[0]['xchan_hash'],base64url_decode($j['confirm']),$x[0]['xchan_pubkey'])) { + logger('mod_zot: auth: final confirmation failed.'); + goaway($desturl); + } + } + // everything is good... maybe + if(local_user()) { + + // tell them to logout if they're logged in locally as anything but the target remote account + // in which case just shut up because they don't need to be doing this at all. + + if($a->channel['channel_hash'] != $x[0]['xchan_hash']) { + logger('mod_zot: auth: already authenticated locally as somebody else.'); + notice( t('Remote authentication blocked. You are logged into this site locally. Please logout and retry.') . EOL); + } + goaway($desturl); + } + // log them in + $_SESSION['authenticated'] = 1; + $_SESSION['visitor_id'] = $x[0]['xchan_hash']; + $_SESSION['my_address'] = $address; + $arr = array('xchan' => $x[0], 'url' => $desturl, 'channel_address' => $webbie); + call_hooks('magic_auth_success',$arr); + $a->set_observer($x[0]); + require_once('include/security.php'); + $a->set_groups(init_groups_visitor($_SESSION['visitor_id'])); + info(sprintf( t('Welcome %s. Remote authentication successful.'),$x[0]['xchan_name'])); + logger('mod_zot: auth success from ' . $x[0]['xchan_addr'] . ' for ' . $webbie); + + } else { + logger('mod_zot: still not authenticated: ' . $x[0]['xchan_addr']); + q("update hubloc set hubloc_status = (hubloc_status | %d ) where hubloc_addr = '%s'", + intval(HUBLOC_RECEIVE_ERROR), + dbesc($x[0]['xchan_addr']) + ); + } + + // FIXME - we really want to save the return_url in the session before we visit rmagic. + // This does however prevent a recursion if you visit rmagic directly, as it would otherwise send you back here again. + // But z_root() probably isn't where you really want to go. + + if(strstr($desturl,z_root() . '/rmagic')) + goaway(z_root()); + + goaway($desturl); + } return; } diff --git a/version.inc b/version.inc index 771e7842a..cda99cbcd 100644 --- a/version.inc +++ b/version.inc @@ -1 +1 @@ -2013-11-17.500 +2013-11-18.501 From 718f69c6fc090752238bb64e7486d6a3eef5b518 Mon Sep 17 00:00:00 2001 From: friendica Date: Mon, 18 Nov 2013 00:57:56 -0800 Subject: [PATCH 026/271] to clarify the fact, we'll remove the line we no longer need instead of commenting it --- mod/post.php | 1 - 1 file changed, 1 deletion(-) diff --git a/mod/post.php b/mod/post.php index ceb41b19d..6a5c919e1 100644 --- a/mod/post.php +++ b/mod/post.php @@ -48,7 +48,6 @@ function post_init(&$a) { // They'll get a notice when they hit the page, we don't need two of them. // In fact we only need the name to map the destination, auth can proceed // without it. - // goaway($desturl); } } From b1a4dc7d7ed9ae19c7f8c0cb1d706eb57872ff28 Mon Sep 17 00:00:00 2001 From: friendica Date: Mon, 18 Nov 2013 01:00:04 -0800 Subject: [PATCH 027/271] set a default value for $webbie - it's the right thing to do. --- mod/post.php | 2 ++ 1 file changed, 2 insertions(+) diff --git a/mod/post.php b/mod/post.php index 6a5c919e1..2778621d3 100644 --- a/mod/post.php +++ b/mod/post.php @@ -17,6 +17,8 @@ function post_init(&$a) { if(argc() > 1) { $webbie = argv(1); } + else + $webbie = ''; if(array_key_exists('auth',$_REQUEST)) { logger('mod_zot: auth request received.'); From fce5f2042db1a9d0b13c3bd5f6d37980fa98ca7f Mon Sep 17 00:00:00 2001 From: friendica Date: Mon, 18 Nov 2013 14:06:34 -0800 Subject: [PATCH 028/271] resetting password tries to update email address even if it didn't change - and if you've got the admin email this spits out a warning. --- mod/settings.php | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/mod/settings.php b/mod/settings.php index 4e122607b..ba7540b91 100644 --- a/mod/settings.php +++ b/mod/settings.php @@ -319,8 +319,8 @@ function settings_post(&$a) { } $email = ((x($_POST,'email')) ? trim(notags($_POST['email'])) : ''); + $account = $a->get_account(); if($email != $account['account_email']) { - $account = $a->get_account(); if(! valid_email($email)) $errs[] = t('Not valid email.'); $adm = trim(get_config('system','admin_email')); From dc6cd8a701f2225070bf6c37833279768f1a3b10 Mon Sep 17 00:00:00 2001 From: friendica Date: Mon, 18 Nov 2013 15:38:02 -0800 Subject: [PATCH 029/271] admin/users - add expiration date to table and ability to sort by reverse expiration and also filter by service class through url options --- mod/admin.php | 49 ++++++++++++++++++++++++---------------- view/tpl/admin_users.tpl | 1 + 2 files changed, 30 insertions(+), 20 deletions(-) diff --git a/mod/admin.php b/mod/admin.php index 3608f6eda..1615412b5 100644 --- a/mod/admin.php +++ b/mod/admin.php @@ -640,26 +640,35 @@ function admin_page_users(&$a){ // WEe'll still need to link email addresses to admin/users/channels or some such, but this bit doesn't exist yet. // That's where we need to be doing last post/channel flags/etc, not here. - $users =q("SELECT `account_id` , `account_email`, `account_lastlog`, `account_created`, `account_service_class` FROM `account`", - intval($a->pager['start']), - intval($a->pager['itemspage']) - ); - - function _setup_users($e){ - $accounts = Array( - t('Normal Account'), - t('Soapbox Account'), - t('Community/Celebrity Account'), - t('Automatic Friend Account') - ); - $e['page_flags'] = $accounts[$e['page-flags']]; - $e['register_date'] = relative_date($e['register_date']); - $e['login_date'] = relative_date($e['login_date']); - $e['lastitem_date'] = relative_date($e['lastitem_date']); - return $e; - } - $users = array_map("_setup_users", $users); + + $serviceclass = (($_REQUEST['class']) ? " and account_service_class = '" . dbesc($_REQUEST['class']) . "' " : ''); + + + $order = " order by account_email asc "; + if($_REQUEST['order'] === 'expires') + $order = " order by account_expires desc "; + + $users =q("SELECT `account_id` , `account_email`, `account_lastlog`, `account_created`, `account_expires`, `account_service_class` FROM `account` where true $serviceclass $order limit %d , %d ", + intval($a->pager['start']), + intval($a->pager['itemspage']) + ); + +// function _setup_users($e){ +// $accounts = Array( +// t('Normal Account'), +// t('Soapbox Account'), +// t('Community/Celebrity Account'), +// t('Automatic Friend Account') +// ); + +// $e['page_flags'] = $accounts[$e['page-flags']]; +// $e['register_date'] = relative_date($e['register_date']); +// $e['login_date'] = relative_date($e['login_date']); +// $e['lastitem_date'] = relative_date($e['lastitem_date']); +// return $e; +// } +// $users = array_map("_setup_users", $users); $t = get_markup_template("admin_users.tpl"); @@ -679,7 +688,7 @@ function admin_page_users(&$a){ '$unblock' => t('Unblock'), '$h_users' => t('Users'), - '$th_users' => array( t('Email'), t('Register date'), t('Last login'), t('Service Class')), + '$th_users' => array( t('Email'), t('Register date'), t('Last login'), t('Expires'), t('Service Class')), '$confirm_delete_multi' => t('Selected users will be deleted!\n\nEverything these users had posted on this site will be permanently deleted!\n\nAre you sure?'), '$confirm_delete' => t('The user {0} will be deleted!\n\nEverything this user has posted on this site will be permanently deleted!\n\nAre you sure?'), diff --git a/view/tpl/admin_users.tpl b/view/tpl/admin_users.tpl index b51fa3559..cedd55216 100755 --- a/view/tpl/admin_users.tpl +++ b/view/tpl/admin_users.tpl @@ -68,6 +68,7 @@ {{$u.account_email}} {{$u.account_created}} {{$u.account_lastlog}} + {{$u.account_expires}} {{$u.account_service_class}} From ed129f19b01f4f8f34129e297f93c9926e36548a Mon Sep 17 00:00:00 2001 From: friendica Date: Mon, 18 Nov 2013 18:37:38 -0800 Subject: [PATCH 030/271] fix plugin and them toggles for the colourblind, add theme info block and recent screenshot to redbasic --- include/plugin.php | 4 ++-- view/theme/redbasic/css/style.css | 1 + view/theme/redbasic/img/screenshot.jpg | Bin 72559 -> 135205 bytes view/theme/redbasic/php/theme.php | 10 ++++++++++ view/tpl/admin_plugins.tpl | 2 +- view/tpl/admin_plugins_details.tpl | 2 +- 6 files changed, 15 insertions(+), 4 deletions(-) diff --git a/include/plugin.php b/include/plugin.php index ea88a61df..d90434b3a 100755 --- a/include/plugin.php +++ b/include/plugin.php @@ -298,10 +298,10 @@ function get_theme_info($theme){ 'name' => $theme, 'description' => "", 'author' => array(), - 'maintainer' => array(), 'version' => "", - 'credits' => "", 'compat' => "", + 'credits' => "", + 'maintainer' => array(), 'experimental' => false, 'unsupported' => false ); diff --git a/view/theme/redbasic/css/style.css b/view/theme/redbasic/css/style.css index 8e15d1eaf..d3779152d 100644 --- a/view/theme/redbasic/css/style.css +++ b/view/theme/redbasic/css/style.css @@ -3499,6 +3499,7 @@ margin-right: 50px; } .comment-icon, +.admin-icons, .jot-icons { font-size: 1.2em; color: $toolicon_colour; diff --git a/view/theme/redbasic/img/screenshot.jpg b/view/theme/redbasic/img/screenshot.jpg index 5f00ec39eb98161f3e0784d51778a2915faaea1f..51d4cbb0dde7435e8172673d06ce74d62bba3a6e 100644 GIT binary patch literal 135205 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%0AElJe8*$@IRV#DKg|=T*h@=>vS3j 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 OO*pRfQ)kpaPyY_L@vbBQ literal 72559 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�-oZ>d4tcp2C$>& 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 eS#s=W {{foreach $plugins as $p}}
  • $bgcolour : style.php
  • +
  • $body_font_size +: style.php +
  • $called_api : api.php
  • +
  • $channel +: theme_init.php +
  • +
  • $comment_indent +: style.php +
  • $converse_width : style.php
  • @@ -184,9 +193,9 @@ $(document).ready(function(){initNavTree('globals.html','');}); : docblox_errorchecker.php
  • $files -: typo.php -, extract.php +: extract.php , tpldebug.php +, typo.php
  • $font_colour : style.php @@ -245,12 +254,27 @@ $(document).ready(function(){initNavTree('globals.html','');});
  • $phpfile : php2po.php
  • +
  • $plugin +: post_to_red.php +
  • +
  • $plugin_dir +: post_to_red.php +
  • +
  • $pmenu_reply +: style.php +
  • +
  • $pmenu_top +: style.php +
  • $pofile : php2po.php
  • $radius : style.php
  • +
  • $reply_photo +: style.php +
  • $res : docblox_errorchecker.php
  • @@ -287,12 +311,18 @@ $(document).ready(function(){initNavTree('globals.html','');});
  • $toolicon_colour : style.php
  • +
  • $top_photo +: style.php +
  • $uid : style.php
  • $width : minimalisticdarkness.php
  • +
  • $wwtop +: style.php +
  • $zones : extract.php
  • diff --git a/doc/html/globals_0x63.html b/doc/html/globals_0x63.html index f3d89103d..8b6dbf253 100644 --- a/doc/html/globals_0x63.html +++ b/doc/html/globals_0x63.html @@ -450,6 +450,12 @@ $(document).ready(function(){initNavTree('globals_0x63.html','');});
  • cronhooks_run() : cronhooks.php
  • +
  • crypto_encapsulate() +: crypto.php +
  • +
  • crypto_unencapsulate() +: crypto.php +
  • curPageURL() : boot.php
  • diff --git a/doc/html/globals_0x6d.html b/doc/html/globals_0x6d.html index 83a755fa0..7e5d7b9df 100644 --- a/doc/html/globals_0x6d.html +++ b/doc/html/globals_0x6d.html @@ -259,7 +259,7 @@ $(document).ready(function(){initNavTree('globals_0x6d.html','');}); : text.php
  • mini_group_select() -: group.php +: group.php
  • mitem_content() : mitem.php diff --git a/doc/html/globals_0x70.html b/doc/html/globals_0x70.html index 661e88771..7f8dd0a80 100644 --- a/doc/html/globals_0x70.html +++ b/doc/html/globals_0x70.html @@ -386,6 +386,54 @@ $(document).ready(function(){initNavTree('globals_0x70.html','');});
  • post_post() : post.php
  • +
  • post_to_red_acct_name +: post_to_red.php +
  • +
  • post_to_red_admin() +: post_to_red.php +
  • +
  • post_to_red_deactivate() +: post_to_red.php +
  • +
  • post_to_red_display_admin_page() +: post_to_red.php +
  • +
  • post_to_red_displayAdminContent() +: post_to_red.php +
  • +
  • post_to_red_get_acct_name() +: post_to_red.php +
  • +
  • post_to_red_get_password() +: post_to_red.php +
  • +
  • post_to_red_get_seed_location() +: post_to_red.php +
  • +
  • post_to_red_get_user_name() +: post_to_red.php +
  • +
  • post_to_red_path +: post_to_red.php +
  • +
  • post_to_red_post() +: post_to_red.php +
  • +
  • post_to_red_post_checkbox() +: post_to_red.php +
  • +
  • post_to_red_post_field_data() +: post_to_red.php +
  • +
  • post_to_red_post_meta_content() +: post_to_red.php +
  • +
  • post_to_red_settings_link() +: post_to_red.php +
  • +
  • post_to_red_version +: post_to_red.php +
  • post_url() : network.php
  • @@ -395,6 +443,9 @@ $(document).ready(function(){initNavTree('globals_0x70.html','');});
  • posted_dates() : items.php
  • +
  • preg_callback_help_include() +: help.php +
  • preg_heart() : text.php
  • diff --git a/doc/html/globals_0x78.html b/doc/html/globals_0x78.html index e111a1710..434ab8b68 100644 --- a/doc/html/globals_0x78.html +++ b/doc/html/globals_0x78.html @@ -180,6 +180,9 @@ $(document).ready(function(){initNavTree('globals_0x78.html','');});
  • xmlify() : text.php
  • +
  • xpost_to_html2bbcode() +: post_to_red.php +
  • xrd_init() : xrd.php
  • diff --git a/doc/html/globals_func_0x63.html b/doc/html/globals_func_0x63.html index 00bb1dc6a..fcf1bc606 100644 --- a/doc/html/globals_func_0x63.html +++ b/doc/html/globals_func_0x63.html @@ -431,6 +431,12 @@ $(document).ready(function(){initNavTree('globals_func_0x63.html','');});
  • cronhooks_run() : cronhooks.php
  • +
  • crypto_encapsulate() +: crypto.php +
  • +
  • crypto_unencapsulate() +: crypto.php +
  • curPageURL() : boot.php
  • diff --git a/doc/html/globals_func_0x6d.html b/doc/html/globals_func_0x6d.html index 25e39fcab..2e63556bf 100644 --- a/doc/html/globals_func_0x6d.html +++ b/doc/html/globals_func_0x6d.html @@ -228,7 +228,7 @@ $(document).ready(function(){initNavTree('globals_func_0x6d.html','');}); : text.php
  • mini_group_select() -: group.php +: group.php
  • mitem_content() : mitem.php diff --git a/doc/html/globals_func_0x70.html b/doc/html/globals_func_0x70.html index 4b81db067..9aab42fcc 100644 --- a/doc/html/globals_func_0x70.html +++ b/doc/html/globals_func_0x70.html @@ -263,6 +263,45 @@ $(document).ready(function(){initNavTree('globals_func_0x70.html','');});
  • post_post() : post.php
  • +
  • post_to_red_admin() +: post_to_red.php +
  • +
  • post_to_red_deactivate() +: post_to_red.php +
  • +
  • post_to_red_display_admin_page() +: post_to_red.php +
  • +
  • post_to_red_displayAdminContent() +: post_to_red.php +
  • +
  • post_to_red_get_acct_name() +: post_to_red.php +
  • +
  • post_to_red_get_password() +: post_to_red.php +
  • +
  • post_to_red_get_seed_location() +: post_to_red.php +
  • +
  • post_to_red_get_user_name() +: post_to_red.php +
  • +
  • post_to_red_post() +: post_to_red.php +
  • +
  • post_to_red_post_checkbox() +: post_to_red.php +
  • +
  • post_to_red_post_field_data() +: post_to_red.php +
  • +
  • post_to_red_post_meta_content() +: post_to_red.php +
  • +
  • post_to_red_settings_link() +: post_to_red.php +
  • post_url() : network.php
  • @@ -272,6 +311,9 @@ $(document).ready(function(){initNavTree('globals_func_0x70.html','');});
  • posted_dates() : items.php
  • +
  • preg_callback_help_include() +: help.php +
  • preg_heart() : text.php
  • diff --git a/doc/html/globals_func_0x78.html b/doc/html/globals_func_0x78.html index 6df4adb06..992f1acef 100644 --- a/doc/html/globals_func_0x78.html +++ b/doc/html/globals_func_0x78.html @@ -164,6 +164,9 @@ $(document).ready(function(){initNavTree('globals_func_0x78.html','');});
  • xmlify() : text.php
  • +
  • xpost_to_html2bbcode() +: post_to_red.php +
  • xrd_init() : xrd.php
  • diff --git a/doc/html/globals_vars.html b/doc/html/globals_vars.html index 71353f1fc..e466fa2e3 100644 --- a/doc/html/globals_vars.html +++ b/doc/html/globals_vars.html @@ -160,9 +160,18 @@ $(document).ready(function(){initNavTree('globals_vars.html','');});
  • $bgcolour : style.php
  • +
  • $body_font_size +: style.php +
  • $called_api : api.php
  • +
  • $channel +: theme_init.php +
  • +
  • $comment_indent +: style.php +
  • $converse_width : style.php
  • @@ -179,9 +188,9 @@ $(document).ready(function(){initNavTree('globals_vars.html','');}); : docblox_errorchecker.php
  • $files -: typo.php -, extract.php +: extract.php , tpldebug.php +, typo.php
  • $font_colour : style.php @@ -240,12 +249,27 @@ $(document).ready(function(){initNavTree('globals_vars.html','');});
  • $phpfile : php2po.php
  • +
  • $plugin +: post_to_red.php +
  • +
  • $plugin_dir +: post_to_red.php +
  • +
  • $pmenu_reply +: style.php +
  • +
  • $pmenu_top +: style.php +
  • $pofile : php2po.php
  • $radius : style.php
  • +
  • $reply_photo +: style.php +
  • $res : docblox_errorchecker.php
  • @@ -282,12 +306,18 @@ $(document).ready(function(){initNavTree('globals_vars.html','');});
  • $toolicon_colour : style.php
  • +
  • $top_photo +: style.php +
  • $uid : style.php
  • $width : minimalisticdarkness.php
  • +
  • $wwtop +: style.php +
  • $zones : extract.php
  • diff --git a/doc/html/globals_vars_0x70.html b/doc/html/globals_vars_0x70.html index 6d7299997..46d6b28a2 100644 --- a/doc/html/globals_vars_0x70.html +++ b/doc/html/globals_vars_0x70.html @@ -261,6 +261,15 @@ $(document).ready(function(){initNavTree('globals_vars_0x70.html','');});
  • POLL_TENSCALE : boot.php
  • +
  • post_to_red_acct_name +: post_to_red.php +
  • +
  • post_to_red_path +: post_to_red.php +
  • +
  • post_to_red_version +: post_to_red.php +
  • diff --git a/doc/html/help_8php.html b/doc/html/help_8php.html index f095349b6..3cf14b906 100644 --- a/doc/html/help_8php.html +++ b/doc/html/help_8php.html @@ -114,6 +114,8 @@ $(document).ready(function(){initNavTree('help_8php.html','');}); Functions if(!function_exists('load_doc_file')) help_content (&$a)   + preg_callback_help_include ($matches) + 

    Function Documentation

    @@ -129,6 +131,25 @@ Functions
    +

    You can create local site resources in doc/Site.md and either link to doc/Home.md for the standard resources or use our include mechanism to include it on your local page.

    +

    #include doc/Home.md;

    +

    The syntax is somewhat strict.

    + +
    + + +
    +
    + + + + + + + + +
    preg_callback_help_include ( $matches)
    +
    diff --git a/doc/html/help_8php.js b/doc/html/help_8php.js index 1178a13f2..bc1247ed4 100644 --- a/doc/html/help_8php.js +++ b/doc/html/help_8php.js @@ -1,4 +1,5 @@ var help_8php = [ - [ "help_content", "help_8php.html#af055e15f600ffa6fbca9386fdf715224", null ] + [ "help_content", "help_8php.html#af055e15f600ffa6fbca9386fdf715224", null ], + [ "preg_callback_help_include", "help_8php.html#a06b2a51aaabed99e53a9b639047c4ce4", null ] ]; \ No newline at end of file diff --git a/doc/html/include_2group_8php.html b/doc/html/include_2group_8php.html index eba6ee1ae..a491fc476 100644 --- a/doc/html/include_2group_8php.html +++ b/doc/html/include_2group_8php.html @@ -126,8 +126,8 @@ Functions    group_get_members ($gid)   - mini_group_select ($uid, $gid=0) -  + mini_group_select ($uid, $group= '') +   group_side ($every="contacts", $each="group", $edit=false, $group_id=0, $cid= '')    expand_groups ($a) @@ -226,7 +226,7 @@ Functions @@ -300,7 +300,7 @@ Functions
    -

    Referenced by new_contact().

    +

    Referenced by connections_post(), and new_contact().

    @@ -456,7 +456,7 @@ Functions - +
    @@ -470,7 +470,7 @@ Functions - + diff --git a/doc/html/include_2group_8php.js b/doc/html/include_2group_8php.js index d0800938c..ef82dca8f 100644 --- a/doc/html/include_2group_8php.js +++ b/doc/html/include_2group_8php.js @@ -11,5 +11,5 @@ var include_2group_8php = [ "group_side", "include_2group_8php.html#a1042d74055bafe54a6a30103d87a7f17", null ], [ "groups_containing", "include_2group_8php.html#afb802ae2ce73aae4bc36d157f7b6a92f", null ], [ "member_of", "include_2group_8php.html#a048f6892bfd28852de1b76470df411de", null ], - [ "mini_group_select", "include_2group_8php.html#ab4d9e5b59f48787cb01baae5dc6c381f", null ] + [ "mini_group_select", "include_2group_8php.html#ab0e422a0f31c0c64fd9084ca03d85f32", null ] ]; \ No newline at end of file diff --git a/doc/html/items_8php.html b/doc/html/items_8php.html index 7554583ae..5f9663fca 100644 --- a/doc/html/items_8php.html +++ b/doc/html/items_8php.html @@ -1047,7 +1047,7 @@ Functions
     $gid = 0 $group = '' 
    -

    Referenced by zot_import().

    +

    Referenced by onepoll_run(), and zot_import().

    diff --git a/doc/html/language_8php.html b/doc/html/language_8php.html index f586d08f4..e18eace92 100644 --- a/doc/html/language_8php.html +++ b/doc/html/language_8php.html @@ -280,7 +280,7 @@ Functions
    -

    Referenced by admin_content(), admin_page_dbsync(), admin_page_hubloc(), admin_page_logs(), admin_page_logs_post(), admin_page_plugins(), admin_page_site(), admin_page_site_post(), admin_page_summary(), admin_page_themes(), admin_page_users(), admin_post(), advanced_profile(), allfriends_content(), alt_pager(), api_content(), api_post(), api_statuses_public_timeline(), apps_content(), apw_form(), attach_by_hash(), attach_by_hash_nodata(), attach_count_files(), attach_init(), attach_list_files(), attach_mkdir(), attach_store(), authenticate_success(), bbcode(), blocks_content(), categories_widget(), channel_content(), channel_init(), chanview_content(), check_account_email(), check_account_invite(), check_config(), check_form_security_std_err_msg(), check_funcs(), check_htaccess(), check_htconfig(), check_keys(), check_php(), check_smarty3(), common_content(), common_friends_visitor_widget(), common_init(), community_content(), connect_content(), connect_init(), connect_post(), connections_content(), connections_post(), construct_page(), contact_block(), contact_poll_interval(), contact_reputation(), conversation(), create_account(), create_identity(), crepair_content(), crepair_post(), datesel_format(), day_translate(), delegate_content(), design_tools(), dir_safe_mode(), dir_sort_links(), dir_tagblock(), directory_content(), dirsearch_content(), display_content(), drop_item(), editblock_content(), editlayout_content(), editpost_content(), editwebpage_content(), events_content(), events_post(), fbrowser_content(), fileas_widget(), filer_content(), filestorage_content(), findpeople_widget(), fix_attached_photo_permissions(), follow_init(), follow_widget(), format_categories(), format_event_diaspora(), format_event_html(), format_filer(), format_like(), format_notification(), fsuggest_content(), fsuggest_post(), gender_selector(), get_birthdays(), Item\get_comment_box(), get_events(), get_features(), get_mood_verbs(), get_perms(), get_plink(), get_poke_verbs(), Item\get_template_data(), group_add(), group_content(), group_post(), group_side(), hcard_init(), help_content(), identity_check_service_class(), import_channel_photo(), import_content(), import_post(), import_xchan(), dba_driver\install(), intro_content(), intro_post(), invite_content(), invite_post(), item_check_service_class(), item_photo_menu(), item_post(), item_post_type(), items_fetch(), lang_selector(), lastpost_content(), lastpost_init(), layout_select(), layouts_content(), like_content(), load_database(), localize_item(), lockview_content(), login(), lostpass_content(), lostpass_post(), magic_init(), manage_content(), manual_config(), marital_selector(), match_content(), menu_content(), menu_post(), message_aside(), message_content(), message_post(), mimetype_select(), mini_group_select(), mitem_content(), mitem_init(), mitem_post(), mood_content(), mood_init(), nav(), network_content(), network_init(), network_to_name(), new_channel_content(), new_channel_post(), new_contact(), nogroup_content(), notice(), notification(), notifications_content(), notifications_post(), notify_content(), obj_verbs(), oembed_bbcode2html(), oembed_iframe(), oexchange_content(), page_content(), paginate(), pdl_selector(), photo_upload(), photos_album_widget(), photos_content(), photos_init(), photos_post(), ping_init(), poke_content(), poke_init(), populate_acl(), post_activity_item(), post_init(), posted_date_widget(), profile_activity(), profile_content(), profile_init(), profile_load(), profile_photo_post(), profile_sidebar(), profile_tabs(), profiles_content(), profiles_init(), profiles_post(), profperm_content(), pubsites_content(), redbasic_form(), register_content(), register_post(), regmod_content(), relative_date(), removeme_content(), rmagic_content(), rpost_content(), saved_searches(), scale_external_images(), search(), search_content(), search_saved_searches(), select_timezone(), send_message(), send_reg_approval_email(), send_verification_email(), settings_aside(), settings_post(), setup_content(), sexpref_selector(), siteinfo_content(), sources_content(), sources_post(), subthread_content(), suggest_content(), tagblock(), tagger_content(), tagrm_content(), tagrm_post(), theme_attachments(), thing_content(), thing_init(), timezone_cmp(), update_channel_content(), update_community_content(), update_display_content(), update_network_content(), update_search_content(), upgrade_bool_message(), upgrade_link(), upgrade_message(), user_allow(), user_deny(), validate_channelname(), vcard_from_xchan(), viewconnections_content(), viewsrc_content(), vote_content(), wall_upload_post(), webpages_content(), what_next(), widget_tagcloud(), writepages_widget(), xchan_content(), z_readdir(), and zfinger_init().

    +

    Referenced by admin_content(), admin_page_dbsync(), admin_page_hubloc(), admin_page_logs(), admin_page_logs_post(), admin_page_plugins(), admin_page_site(), admin_page_site_post(), admin_page_summary(), admin_page_themes(), admin_page_users(), admin_post(), advanced_profile(), allfriends_content(), alt_pager(), api_content(), api_post(), api_statuses_public_timeline(), apps_content(), apw_form(), attach_by_hash(), attach_by_hash_nodata(), attach_count_files(), attach_init(), attach_list_files(), attach_mkdir(), attach_store(), authenticate_success(), bbcode(), blocks_content(), categories_widget(), channel_content(), channel_init(), chanview_content(), check_account_email(), check_account_invite(), check_config(), check_form_security_std_err_msg(), check_funcs(), check_htaccess(), check_htconfig(), check_keys(), check_php(), check_smarty3(), common_content(), common_friends_visitor_widget(), common_init(), community_content(), connect_content(), connect_init(), connect_post(), connections_content(), connections_post(), construct_page(), contact_block(), contact_poll_interval(), contact_reputation(), conversation(), create_account(), create_identity(), crepair_content(), crepair_post(), datesel_format(), day_translate(), delegate_content(), design_tools(), dir_safe_mode(), dir_sort_links(), dir_tagblock(), directory_content(), dirsearch_content(), display_content(), drop_item(), editblock_content(), editlayout_content(), editpost_content(), editwebpage_content(), events_content(), events_post(), fbrowser_content(), fileas_widget(), filer_content(), filestorage_content(), findpeople_widget(), fix_attached_photo_permissions(), follow_init(), follow_widget(), format_categories(), format_event_diaspora(), format_event_html(), format_filer(), format_like(), format_notification(), fsuggest_content(), fsuggest_post(), gender_selector(), get_birthdays(), Item\get_comment_box(), get_events(), get_features(), get_mood_verbs(), get_perms(), get_plink(), get_poke_verbs(), Item\get_template_data(), group_add(), group_content(), group_post(), group_side(), hcard_init(), help_content(), identity_check_service_class(), import_channel_photo(), import_content(), import_post(), import_xchan(), dba_driver\install(), intro_content(), intro_post(), invite_content(), invite_post(), item_check_service_class(), item_photo_menu(), item_post(), item_post_type(), items_fetch(), lang_selector(), lastpost_content(), lastpost_init(), layout_select(), layouts_content(), like_content(), load_database(), localize_item(), lockview_content(), login(), lostpass_content(), lostpass_post(), magic_init(), manage_content(), manual_config(), marital_selector(), match_content(), menu_content(), menu_post(), message_aside(), message_content(), message_post(), mimetype_select(), mini_group_select(), mitem_content(), mitem_init(), mitem_post(), mood_content(), mood_init(), nav(), network_content(), network_init(), network_to_name(), new_channel_content(), new_channel_post(), new_contact(), nogroup_content(), notice(), notification(), notifications_content(), notifications_post(), notify_content(), obj_verbs(), oembed_bbcode2html(), oembed_iframe(), oexchange_content(), page_content(), paginate(), pdl_selector(), photo_upload(), photos_album_widget(), photos_content(), photos_init(), photos_post(), ping_init(), poke_content(), poke_init(), populate_acl(), post_activity_item(), post_init(), posted_date_widget(), profile_activity(), profile_content(), profile_init(), profile_load(), profile_photo_post(), profile_sidebar(), profile_tabs(), profiles_content(), profiles_init(), profiles_post(), profperm_content(), pubsites_content(), redbasic_form(), register_content(), register_post(), regmod_content(), relative_date(), removeme_content(), rmagic_content(), rpost_content(), saved_searches(), scale_external_images(), search(), search_content(), search_saved_searches(), select_timezone(), send_message(), send_reg_approval_email(), send_verification_email(), settings_aside(), settings_post(), setup_content(), sexpref_selector(), siteinfo_content(), sources_content(), sources_post(), subthread_content(), suggest_content(), tagblock(), tagger_content(), tagrm_content(), tagrm_post(), theme_attachments(), thing_content(), thing_init(), timezone_cmp(), update_channel_content(), update_community_content(), update_display_content(), update_network_content(), update_search_content(), upgrade_bool_message(), upgrade_link(), upgrade_message(), user_allow(), user_deny(), validate_channelname(), vcard_from_xchan(), viewconnections_content(), viewsrc_content(), vote_content(), wall_upload_post(), webpages_content(), what_next(), widget_tagcloud(), writepages_widget(), xchan_content(), z_readdir(), and zfinger_init().

    diff --git a/doc/html/navtree.js b/doc/html/navtree.js index cf971021a..522a59cf0 100644 --- a/doc/html/navtree.js +++ b/doc/html/navtree.js @@ -39,10 +39,10 @@ var NAVTREEINDEX = "boot_8php.html#a8da836617174eed9fc2ac8054125354b", "classConversation.html#af84ea6ccd72214c9bb4c504461cc8b09", "contact__selectors_8php.html#a9839e8fdaac7ffb37bf1420493f5c28f", -"globals_0x6d.html", -"include_2photos_8php.html#a7e7abc69872180697c5471dc69349afe", -"php2po_8php.html#a401d84ce156e49e8168bd0c4781e1be1", -"text_8php.html#a1360fed7f918d859daaca1c9f384f9af" +"globals_0x6a.html", +"include_2oembed_8php.html#ab953a6e7c11bc6498ce01ed73e2ba319", +"photo__driver_8php.html#a7273b82b017fd96d29b2c57bab03aea6", +"tagger_8php.html" ]; var SYNCONMSG = 'click to disable panel synchronisation'; diff --git a/doc/html/navtreeindex3.js b/doc/html/navtreeindex3.js index e8a0c821c..8ead73d31 100644 --- a/doc/html/navtreeindex3.js +++ b/doc/html/navtreeindex3.js @@ -41,15 +41,17 @@ var NAVTREEINDEX3 = "cronhooks_8php.html":[5,0,0,22], "cronhooks_8php.html#a4c4c1bbec4ecc9a0efa00dd6afd2c0ca":[5,0,0,22,0], "crypto_8php.html":[5,0,0,23], +"crypto_8php.html#a0781202b0a43b82426929cc87c2fa2b5":[5,0,0,23,5], "crypto_8php.html#a2148d7aac7b30c720f7ebda7e9790286":[5,0,0,23,2], +"crypto_8php.html#a32fc08d57a5694f94d8543ecbb03323c":[5,0,0,23,4], "crypto_8php.html#a5c61821d205f95f127114159cbffa764":[5,0,0,23,1], -"crypto_8php.html#a920e5f222d0020f47556033d8b2b6552":[5,0,0,23,7], -"crypto_8php.html#aae0ab70d6a199b29555b1ac3cf250d6a":[5,0,0,23,4], -"crypto_8php.html#ab4f21d8f6b8ece0915e7c8bb73379f96":[5,0,0,23,8], +"crypto_8php.html#a920e5f222d0020f47556033d8b2b6552":[5,0,0,23,9], +"crypto_8php.html#aae0ab70d6a199b29555b1ac3cf250d6a":[5,0,0,23,6], +"crypto_8php.html#ab4f21d8f6b8ece0915e7c8bb73379f96":[5,0,0,23,10], "crypto_8php.html#ac852ee41392d1358c3a54d54935e0bf9":[5,0,0,23,0], -"crypto_8php.html#ac95ac3b1b23b65b04a86613d4206ae85":[5,0,0,23,6], +"crypto_8php.html#ac95ac3b1b23b65b04a86613d4206ae85":[5,0,0,23,8], "crypto_8php.html#aca7c3a574bfb6c6ef1f2403a56823914":[5,0,0,23,3], -"crypto_8php.html#ad5e51fd44cff93cfaa07a37e24a5edec":[5,0,0,23,5], +"crypto_8php.html#ad5e51fd44cff93cfaa07a37e24a5edec":[5,0,0,23,7], "dark_8php.html":[5,0,3,1,1,1,0], "darkness_8php.html":[5,0,3,1,0,1,0], "darknessleftaside_8php.html":[5,0,3,1,0,1,1], @@ -68,7 +70,7 @@ var NAVTREEINDEX3 = "datetime_8php.html#ac265b86f384ee094ed5479aae02aa5c8":[5,0,0,24,2], "datetime_8php.html#ad6301e74b0f9267d52f8d432b5beb226":[5,0,0,24,4], "datetime_8php.html#aea356409ba69f9de412298c998595dd2":[5,0,0,24,1], -"db__update_8php.html":[5,0,2,1], +"db__update_8php.html":[5,0,2,2], "dba__driver_8php.html":[5,0,0,0,0], "dba__driver_8php.html#a2c09a731d3b4fef41fed0e83db01be1f":[5,0,0,0,0,8], "dba__driver_8php.html#a55bf30d8176967e682656b5be4ad9249":[5,0,0,0,0,7], @@ -93,6 +95,7 @@ var NAVTREEINDEX3 = "dir_23ec12649285f9fabf3a6b7380226c28.html":[5,0,2], "dir_3d9c9d0c5e9556dd3eba1e072fa6eaeb.html":[5,0,3,1,1,1], "dir_55dbaf9b7b53c4fc605c9011743a7353.html":[5,0,3,1,1], +"dir_720432dea4a717197ae070dbc42b8f20.html":[5,0,2,1], "dir_817f6d302394b98e59575acdb59998bc.html":[5,0,3,0], "dir_8543001e5d25368a6edede3e63efb554.html":[5,0,3,1], "dir__fns_8php.html":[5,0,0,26], @@ -114,18 +117,18 @@ var NAVTREEINDEX3 = "dirsearch_8php.html#aa1fb04e1de4f25b63349ac78f94ceb4c":[5,0,1,20,0], "display_8php.html":[5,0,1,21], "display_8php.html#a37137c98d47bf3306f4c2bb9f5b60de0":[5,0,1,21,0], -"docblox__errorchecker_8php.html":[5,0,2,2], -"docblox__errorchecker_8php.html#a1659f0a629d408e0f849dbe4ee061e62":[5,0,2,2,3], -"docblox__errorchecker_8php.html#a21b4bbe5aae2d85db33affc7126a67ec":[5,0,2,2,2], -"docblox__errorchecker_8php.html#a2b767cfc461fdd5061fffc9e4a806d5b":[5,0,2,2,0], -"docblox__errorchecker_8php.html#a49a8a4009b02e49717caa88b128affc5":[5,0,2,2,8], -"docblox__errorchecker_8php.html#a648a570b0f9f6e0e51b7267647c4b09b":[5,0,2,2,5], -"docblox__errorchecker_8php.html#a721c6ff80a6d3e4ad4ffa52a04c60085":[5,0,2,2,9], -"docblox__errorchecker_8php.html#a83018d9153d17d91fbcf3bc10158d34f":[5,0,2,2,6], -"docblox__errorchecker_8php.html#a852004caba0a34390297a079f4aaac73":[5,0,2,2,7], -"docblox__errorchecker_8php.html#ab66bc0493d25f39bf8b4dcbb429f04e6":[5,0,2,2,4], -"docblox__errorchecker_8php.html#ae9562cf60aa693114603d27b55d2185f":[5,0,2,2,1], -"docblox__errorchecker_8php.html#af4ca738a05beffe9c8c23e1f7aea3c2d":[5,0,2,2,10], +"docblox__errorchecker_8php.html":[5,0,2,3], +"docblox__errorchecker_8php.html#a1659f0a629d408e0f849dbe4ee061e62":[5,0,2,3,3], +"docblox__errorchecker_8php.html#a21b4bbe5aae2d85db33affc7126a67ec":[5,0,2,3,2], +"docblox__errorchecker_8php.html#a2b767cfc461fdd5061fffc9e4a806d5b":[5,0,2,3,0], +"docblox__errorchecker_8php.html#a49a8a4009b02e49717caa88b128affc5":[5,0,2,3,8], +"docblox__errorchecker_8php.html#a648a570b0f9f6e0e51b7267647c4b09b":[5,0,2,3,5], +"docblox__errorchecker_8php.html#a721c6ff80a6d3e4ad4ffa52a04c60085":[5,0,2,3,9], +"docblox__errorchecker_8php.html#a83018d9153d17d91fbcf3bc10158d34f":[5,0,2,3,6], +"docblox__errorchecker_8php.html#a852004caba0a34390297a079f4aaac73":[5,0,2,3,7], +"docblox__errorchecker_8php.html#ab66bc0493d25f39bf8b4dcbb429f04e6":[5,0,2,3,4], +"docblox__errorchecker_8php.html#ae9562cf60aa693114603d27b55d2185f":[5,0,2,3,1], +"docblox__errorchecker_8php.html#af4ca738a05beffe9c8c23e1f7aea3c2d":[5,0,2,3,10], "editblock_8php.html":[5,0,1,22], "editblock_8php.html#abbe8f55de06967bc8d79d620509a49e6":[5,0,1,22,0], "editlayout_8php.html":[5,0,1,23], @@ -149,11 +152,11 @@ var NAVTREEINDEX3 = "events_8php.html#ab3e8a8f901175f8e40a8089eea45c075":[5,0,1,26,1], "expire_8php.html":[5,0,0,30], "expire_8php.html#a444e45c9b67727b27db4c779fd51a298":[5,0,0,30,0], -"extract_8php.html":[5,0,2,3], -"extract_8php.html#a0cbe524ffc9a496114fd7ba9f423ef44":[5,0,2,3,3], -"extract_8php.html#a50b05cf2e02ef0b67fcad97106dd7634":[5,0,2,3,2], -"extract_8php.html#a63bb4c41bc532baacf6a4976cfaa0feb":[5,0,2,3,0], -"extract_8php.html#a9590b15215a21e9b42eb546aeef79704":[5,0,2,3,1], +"extract_8php.html":[5,0,2,4], +"extract_8php.html#a0cbe524ffc9a496114fd7ba9f423ef44":[5,0,2,4,3], +"extract_8php.html#a50b05cf2e02ef0b67fcad97106dd7634":[5,0,2,4,2], +"extract_8php.html#a63bb4c41bc532baacf6a4976cfaa0feb":[5,0,2,4,0], +"extract_8php.html#a9590b15215a21e9b42eb546aeef79704":[5,0,2,4,1], "fbrowser_8php.html":[5,0,1,27], "fbrowser_8php.html#aee476addcf7a3e0fe9454f7dfd5a56c4":[5,0,1,27,0], "features_8php.html":[5,0,0,31], @@ -171,22 +174,22 @@ var NAVTREEINDEX3 = "fpostit_8php.html":[5,0,2,0,0], "fpostit_8php.html#a3f3ae3ae61578b5671673914fd894443":[5,0,2,0,0,0], "fpostit_8php.html#a501b5ca82f287509fc691c88524064c1":[5,0,2,0,0,1], -"friendica-to-smarty-tpl_8py.html":[5,0,2,4], -"friendica-to-smarty-tpl_8py.html#a005c1b7a69cac31fad72a941974ba7bb":[5,0,2,4,11], -"friendica-to-smarty-tpl_8py.html#a0b4cf73d1a8d201a28d269eeb62a5d5c":[5,0,2,4,8], -"friendica-to-smarty-tpl_8py.html#a3719dd46e286a57d315e6adae1845854":[5,0,2,4,1], -"friendica-to-smarty-tpl_8py.html#a38503e37fe68ac27c88cce91a9ac9efa":[5,0,2,4,0], -"friendica-to-smarty-tpl_8py.html#a5dfc21ab8282dda8e3a7dff43cd0e283":[5,0,2,4,13], -"friendica-to-smarty-tpl_8py.html#a5f9bf7a67d955c0d6be70a82097611c5":[5,0,2,4,6], -"friendica-to-smarty-tpl_8py.html#a68d15934660cd1f4301ce251b1646f09":[5,0,2,4,12], -"friendica-to-smarty-tpl_8py.html#a8540514fb7c4aa18ad2dffa2a975036b":[5,0,2,4,14], -"friendica-to-smarty-tpl_8py.html#a87182a9bab47640428bd0b2b9946bef9":[5,0,2,4,10], -"friendica-to-smarty-tpl_8py.html#a89388ea9b2826e8218ed480e917d8105":[5,0,2,4,2], -"friendica-to-smarty-tpl_8py.html#a965e1d6d6293654a56e029a7e454dec7":[5,0,2,4,5], -"friendica-to-smarty-tpl_8py.html#ad9ef87ccb2c9960501f5e02424a22d80":[5,0,2,4,9], -"friendica-to-smarty-tpl_8py.html#ae74419b16516956c66f7db714a93a6ac":[5,0,2,4,7], -"friendica-to-smarty-tpl_8py.html#aecf730e0884bb4ddc6c0deb1ef85f8eb":[5,0,2,4,4], -"friendica-to-smarty-tpl_8py.html#af6b2c793958aae2aadc294577431f749":[5,0,2,4,3], +"friendica-to-smarty-tpl_8py.html":[5,0,2,5], +"friendica-to-smarty-tpl_8py.html#a005c1b7a69cac31fad72a941974ba7bb":[5,0,2,5,11], +"friendica-to-smarty-tpl_8py.html#a0b4cf73d1a8d201a28d269eeb62a5d5c":[5,0,2,5,8], +"friendica-to-smarty-tpl_8py.html#a3719dd46e286a57d315e6adae1845854":[5,0,2,5,1], +"friendica-to-smarty-tpl_8py.html#a38503e37fe68ac27c88cce91a9ac9efa":[5,0,2,5,0], +"friendica-to-smarty-tpl_8py.html#a5dfc21ab8282dda8e3a7dff43cd0e283":[5,0,2,5,13], +"friendica-to-smarty-tpl_8py.html#a5f9bf7a67d955c0d6be70a82097611c5":[5,0,2,5,6], +"friendica-to-smarty-tpl_8py.html#a68d15934660cd1f4301ce251b1646f09":[5,0,2,5,12], +"friendica-to-smarty-tpl_8py.html#a8540514fb7c4aa18ad2dffa2a975036b":[5,0,2,5,14], +"friendica-to-smarty-tpl_8py.html#a87182a9bab47640428bd0b2b9946bef9":[5,0,2,5,10], +"friendica-to-smarty-tpl_8py.html#a89388ea9b2826e8218ed480e917d8105":[5,0,2,5,2], +"friendica-to-smarty-tpl_8py.html#a965e1d6d6293654a56e029a7e454dec7":[5,0,2,5,5], +"friendica-to-smarty-tpl_8py.html#ad9ef87ccb2c9960501f5e02424a22d80":[5,0,2,5,9], +"friendica-to-smarty-tpl_8py.html#ae74419b16516956c66f7db714a93a6ac":[5,0,2,5,7], +"friendica-to-smarty-tpl_8py.html#aecf730e0884bb4ddc6c0deb1ef85f8eb":[5,0,2,5,4], +"friendica-to-smarty-tpl_8py.html#af6b2c793958aae2aadc294577431f749":[5,0,2,5,3], "friendica__smarty_8php.html":[5,0,0,33], "fsuggest_8php.html":[5,0,1,33], "fsuggest_8php.html#a61ecfe10ce937ed526614f8fd3de3c7d":[5,0,1,33,1], @@ -246,8 +249,5 @@ var NAVTREEINDEX3 = "globals_0x66.html":[5,1,0,7], "globals_0x67.html":[5,1,0,8], "globals_0x68.html":[5,1,0,9], -"globals_0x69.html":[5,1,0,10], -"globals_0x6a.html":[5,1,0,11], -"globals_0x6b.html":[5,1,0,12], -"globals_0x6c.html":[5,1,0,13] +"globals_0x69.html":[5,1,0,10] }; diff --git a/doc/html/navtreeindex4.js b/doc/html/navtreeindex4.js index a9a8c6b22..9187fb896 100644 --- a/doc/html/navtreeindex4.js +++ b/doc/html/navtreeindex4.js @@ -1,5 +1,8 @@ var NAVTREEINDEX4 = { +"globals_0x6a.html":[5,1,0,11], +"globals_0x6b.html":[5,1,0,12], +"globals_0x6c.html":[5,1,0,13], "globals_0x6d.html":[5,1,0,14], "globals_0x6e.html":[5,1,0,15], "globals_0x6f.html":[5,1,0,16], @@ -13,8 +16,8 @@ var NAVTREEINDEX4 = "globals_0x77.html":[5,1,0,24], "globals_0x78.html":[5,1,0,25], "globals_0x7a.html":[5,1,0,26], -"globals_func.html":[5,1,1,0], "globals_func.html":[5,1,1], +"globals_func.html":[5,1,1,0], "globals_func_0x61.html":[5,1,1,1], "globals_func_0x62.html":[5,1,1,2], "globals_func_0x63.html":[5,1,1,3], @@ -40,8 +43,8 @@ var NAVTREEINDEX4 = "globals_func_0x77.html":[5,1,1,23], "globals_func_0x78.html":[5,1,1,24], "globals_func_0x7a.html":[5,1,1,25], -"globals_vars.html":[5,1,2], "globals_vars.html":[5,1,2,0], +"globals_vars.html":[5,1,2], "globals_vars_0x61.html":[5,1,2,1], "globals_vars_0x63.html":[5,1,2,2], "globals_vars_0x64.html":[5,1,2,3], @@ -70,6 +73,7 @@ var NAVTREEINDEX4 = "hcard_8php.html#a956c7cae2009652a37900306e5b7b73d":[5,0,1,35,0], "hcard_8php.html#ac34f26b0e6a37eef44fa49bea135136d":[5,0,1,35,1], "help_8php.html":[5,0,1,36], +"help_8php.html#a06b2a51aaabed99e53a9b639047c4ce4":[5,0,1,36,1], "help_8php.html#af055e15f600ffa6fbca9386fdf715224":[5,0,1,36,0], "hierarchy.html":[4,2], "home_8php.html":[5,0,1,37], @@ -189,7 +193,7 @@ var NAVTREEINDEX4 = "include_2group_8php.html#a540e3ef36f47d47532646be4241f6518":[5,0,0,35,7], "include_2group_8php.html#a5bd191d9692e6c34d48c0ede10810f09":[5,0,0,35,4], "include_2group_8php.html#a90e157b3e1b99c981809cb5a2abd3245":[5,0,0,35,5], -"include_2group_8php.html#ab4d9e5b59f48787cb01baae5dc6c381f":[5,0,0,35,11], +"include_2group_8php.html#ab0e422a0f31c0c64fd9084ca03d85f32":[5,0,0,35,11], "include_2group_8php.html#abd66a5ea34a07a3422dc2dde6c7b3ecb":[5,0,0,35,3], "include_2group_8php.html#afb802ae2ce73aae4bc36d157f7b6a92f":[5,0,0,35,9], "include_2menu_8php.html":[5,0,0,43], @@ -245,9 +249,5 @@ var NAVTREEINDEX4 = "include_2oembed_8php.html#a03fa3b7832c98a3d0b4630afeb73d487":[5,0,0,50,1], "include_2oembed_8php.html#a26bb4c1e330d2f94ea7b6ce2fe970cf3":[5,0,0,50,4], "include_2oembed_8php.html#a98549b9af8140eda3eceaeedcaabc2c2":[5,0,0,50,3], -"include_2oembed_8php.html#a9e57f3e36a0a0a47e6db79544b701d9a":[5,0,0,50,6], -"include_2oembed_8php.html#ab953a6e7c11bc6498ce01ed73e2ba319":[5,0,0,50,0], -"include_2oembed_8php.html#aba89ae64b355efcb4f706553d3edb6a2":[5,0,0,50,2], -"include_2photos_8php.html":[5,0,0,55], -"include_2photos_8php.html#a6c40ef58aefef705a5adc84a40e97109":[5,0,0,55,0] +"include_2oembed_8php.html#a9e57f3e36a0a0a47e6db79544b701d9a":[5,0,0,50,6] }; diff --git a/doc/html/navtreeindex5.js b/doc/html/navtreeindex5.js index b336d6b70..db8b56edb 100644 --- a/doc/html/navtreeindex5.js +++ b/doc/html/navtreeindex5.js @@ -1,5 +1,9 @@ var NAVTREEINDEX5 = { +"include_2oembed_8php.html#ab953a6e7c11bc6498ce01ed73e2ba319":[5,0,0,50,0], +"include_2oembed_8php.html#aba89ae64b355efcb4f706553d3edb6a2":[5,0,0,50,2], +"include_2photos_8php.html":[5,0,0,55], +"include_2photos_8php.html#a6c40ef58aefef705a5adc84a40e97109":[5,0,0,55,0], "include_2photos_8php.html#a7e7abc69872180697c5471dc69349afe":[5,0,0,55,2], "include_2photos_8php.html#a8e8b7be99e24c2497bc2cb3339280c35":[5,0,0,55,1], "include_2photos_8php.html#aa27b9e435dcc34e1009f56dc02c7ca51":[5,0,0,55,7], @@ -179,8 +183,8 @@ var NAVTREEINDEX5 = "msearch_8php.html#ac80d2a6c0a92e79eec7efbbccd74d9a8":[5,0,1,56,0], "namespaceFriendica.html":[3,0,1], "namespaceFriendica.html":[4,0,1], -"namespaceacl__selectors.html":[3,0,0], "namespaceacl__selectors.html":[4,0,0], +"namespaceacl__selectors.html":[3,0,0], "namespacefriendica-to-smarty-tpl.html":[4,0,2], "namespacefriendica-to-smarty-tpl.html":[3,0,2], "namespacemembers.html":[3,1,0], @@ -201,6 +205,7 @@ var NAVTREEINDEX5 = "nogroup_8php.html":[5,0,1,59], "nogroup_8php.html#a099cb353bf62e8453069ce107b763212":[5,0,1,59,1], "nogroup_8php.html#a52085b183f97c552f1db5c4926e8ec30":[5,0,1,59,0], +"none_8php.html":[5,0,3,0,6], "notifications_8php.html":[5,0,1,60], "notifications_8php.html#a5baffec7b2e625c9f9cefbc097550d33":[5,0,1,60,1], "notifications_8php.html#aadd0b5525bd8c283a5d8a37982bbfe62":[5,0,1,60,0], @@ -244,10 +249,5 @@ var NAVTREEINDEX5 = "photo__driver_8php.html":[5,0,0,1,0], "photo__driver_8php.html#a102f3f26f67e0e38f4322a771951c1ca":[5,0,0,1,0,3], "photo__driver_8php.html#a1d0bc7161dec0d177b7d3bbe4421af9a":[5,0,0,1,0,2], -"photo__driver_8php.html#a32e2817faa25d7f11f60a8abff565035":[5,0,0,1,0,4], -"photo__driver_8php.html#a7273b82b017fd96d29b2c57bab03aea6":[5,0,0,1,0,1], -"photo__gd_8php.html":[5,0,0,1,1], -"photo__imagick_8php.html":[5,0,0,1,2], -"php2po_8php.html":[5,0,2,5], -"php2po_8php.html#a1594a11499d06cc8a789ee7ca0c7a12b":[5,0,2,5,7] +"photo__driver_8php.html#a32e2817faa25d7f11f60a8abff565035":[5,0,0,1,0,4] }; diff --git a/doc/html/navtreeindex6.js b/doc/html/navtreeindex6.js index 9078e9c9d..6accdb665 100644 --- a/doc/html/navtreeindex6.js +++ b/doc/html/navtreeindex6.js @@ -1,12 +1,17 @@ var NAVTREEINDEX6 = { -"php2po_8php.html#a401d84ce156e49e8168bd0c4781e1be1":[5,0,2,5,5], -"php2po_8php.html#a45b05625748f412ec97afcd61cf7980b":[5,0,2,5,6], -"php2po_8php.html#a48cb304902320d173a4eaa41543327b9":[5,0,2,5,3], -"php2po_8php.html#a61f8ddeb5557d46ebc546cc355bda214":[5,0,2,5,0], -"php2po_8php.html#a6b0b8ebd9ce811d1325ef2c129443bc0":[5,0,2,5,1], -"php2po_8php.html#abbb0e5fd8fbc1f13a9bf68f86eb3d2a4":[5,0,2,5,4], -"php2po_8php.html#ad6726cfaa85d4b8299d2b0f034cbf178":[5,0,2,5,2], +"photo__driver_8php.html#a7273b82b017fd96d29b2c57bab03aea6":[5,0,0,1,0,1], +"photo__gd_8php.html":[5,0,0,1,1], +"photo__imagick_8php.html":[5,0,0,1,2], +"php2po_8php.html":[5,0,2,6], +"php2po_8php.html#a1594a11499d06cc8a789ee7ca0c7a12b":[5,0,2,6,7], +"php2po_8php.html#a401d84ce156e49e8168bd0c4781e1be1":[5,0,2,6,5], +"php2po_8php.html#a45b05625748f412ec97afcd61cf7980b":[5,0,2,6,6], +"php2po_8php.html#a48cb304902320d173a4eaa41543327b9":[5,0,2,6,3], +"php2po_8php.html#a61f8ddeb5557d46ebc546cc355bda214":[5,0,2,6,0], +"php2po_8php.html#a6b0b8ebd9ce811d1325ef2c129443bc0":[5,0,2,6,1], +"php2po_8php.html#abbb0e5fd8fbc1f13a9bf68f86eb3d2a4":[5,0,2,6,4], +"php2po_8php.html#ad6726cfaa85d4b8299d2b0f034cbf178":[5,0,2,6,2], "php_8php.html":[5,0,1,69], "php_8php.html#adb7164dfed9a4ecbe2e168e1e78f12f6":[5,0,1,69,0], "pine_8php.html":[5,0,3,1,0,1,8], @@ -39,8 +44,8 @@ var NAVTREEINDEX6 = "plugin_8php.html#af92789f559b89a380e49d303218aeeca":[5,0,0,56,10], "plugin_8php.html#af9ac19004dca49adae1ac7a0d9f3b025":[5,0,0,56,16], "plugin_8php.html#aff0178bd8d0b34a94d5efddc883edd35":[5,0,0,56,5], -"po2php_8php.html":[5,0,2,6], -"po2php_8php.html#a3b75e36f913198299e99559b175cd8b4":[5,0,2,6,0], +"po2php_8php.html":[5,0,2,7], +"po2php_8php.html#a3b75e36f913198299e99559b175cd8b4":[5,0,2,7,0], "poco_8php.html":[5,0,1,71], "poco_8php.html#a53def16f75e3d41f1d2bb7cfa4905498":[5,0,1,71,0], "poke_8php.html":[5,0,1,72], @@ -51,6 +56,26 @@ var NAVTREEINDEX6 = "post_8php.html":[5,0,1,73], "post_8php.html#af4b48181ce773ef0cdfc972441445c34":[5,0,1,73,0], "post_8php.html#af59e6a1dc22d19d9257b01cd7ccedb75":[5,0,1,73,1], +"post__to__red_8php.html":[5,0,2,1,0], +"post__to__red_8php.html#a0f139dea77a94c98f26007963eea639c":[5,0,2,1,0,9], +"post__to__red_8php.html#a49fd35f7b1cdddfe6e26ddfcf8d3c4ec":[5,0,2,1,0,1], +"post__to__red_8php.html#a4d90ac085c14f53ff4d8ab4c23477ea6":[5,0,2,1,0,5], +"post__to__red_8php.html#a588cea66afe0b32f27f2713d44940119":[5,0,2,1,0,16], +"post__to__red_8php.html#a6210f39392a5f0fa0255cc7d3760493a":[5,0,2,1,0,17], +"post__to__red_8php.html#a75db5d87226a0287a0ac0fa315f2bcfd":[5,0,2,1,0,3], +"post__to__red_8php.html#a7e68a8d9c83cb28d032aad3ea85ce0a6":[5,0,2,1,0,10], +"post__to__red_8php.html#a8ec8f8809e3c5d1b2c9598c8185d63aa":[5,0,2,1,0,2], +"post__to__red_8php.html#a906be8f72cf1aa2e199c0683ea6a4017":[5,0,2,1,0,12], +"post__to__red_8php.html#a9497cd6a80c6897dbbf9aabde62b53e7":[5,0,2,1,0,7], +"post__to__red_8php.html#a96d0ccecb96600ef1bfd50ab3f77315f":[5,0,2,1,0,6], +"post__to__red_8php.html#a99811555b30bde504a863e44015f2f19":[5,0,2,1,0,15], +"post__to__red_8php.html#aa97aeda12ef080665f16311a4e1eb901":[5,0,2,1,0,11], +"post__to__red_8php.html#ada8a7130088351710bb02ed622d6bf65":[5,0,2,1,0,14], +"post__to__red_8php.html#ae6f3a2c0561cbeacda5be565b06de8a7":[5,0,2,1,0,4], +"post__to__red_8php.html#aeec4125719184e7b097b3b9fba3101b5":[5,0,2,1,0,0], +"post__to__red_8php.html#af2713018a2dc97e88f121fc6215beb66":[5,0,2,1,0,13], +"post__to__red_8php.html#af3e7ebd361d4ed7cb6d43209970cd94a":[5,0,2,1,0,18], +"post__to__red_8php.html#af5fd50e2c42ede85f8a9e8d9ee3cf540":[5,0,2,1,0,8], "pretheme_8php.html":[5,0,1,74], "pretheme_8php.html#af5660943ee99db5fd75182316522eafe":[5,0,1,74,0], "probe_8php.html":[5,0,1,75], @@ -90,26 +115,33 @@ var NAVTREEINDEX6 = "randprof_8php.html":[5,0,1,82], "randprof_8php.html#abf5dba3c608b9304cbf68327cd31b090":[5,0,1,82,0], "redbasic_2php_2style_8php.html":[5,0,3,1,1,0,1], -"redbasic_2php_2style_8php.html#a01c151bf47f7da2b979aaa4cb868da4c":[5,0,3,1,1,0,1,10], +"redbasic_2php_2style_8php.html#a01c151bf47f7da2b979aaa4cb868da4c":[5,0,3,1,1,0,1,12], +"redbasic_2php_2style_8php.html#a0b070f2c9140a7a12a0b1f88601a29e4":[5,0,3,1,1,0,1,16], "redbasic_2php_2style_8php.html#a0bdce350cf14bac44976e786d1be6574":[5,0,3,1,1,0,1,2], -"redbasic_2php_2style_8php.html#a0cb037986e32302685d4f580dedd6473":[5,0,3,1,1,0,1,3], -"redbasic_2php_2style_8php.html#a109bbd7f4add27541707b191b73ef84a":[5,0,3,1,1,0,1,17], -"redbasic_2php_2style_8php.html#a136b0a2cdeb37f3fa506d28f82dcdbf8":[5,0,3,1,1,0,1,7], -"redbasic_2php_2style_8php.html#a27cb59bbc750341f448cd0c298a7ea16":[5,0,3,1,1,0,1,6], +"redbasic_2php_2style_8php.html#a0cb037986e32302685d4f580dedd6473":[5,0,3,1,1,0,1,5], +"redbasic_2php_2style_8php.html#a109bbd7f4add27541707b191b73ef84a":[5,0,3,1,1,0,1,23], +"redbasic_2php_2style_8php.html#a136b0a2cdeb37f3fa506d28f82dcdbf8":[5,0,3,1,1,0,1,9], +"redbasic_2php_2style_8php.html#a27cb59bbc750341f448cd0c298a7ea16":[5,0,3,1,1,0,1,8], "redbasic_2php_2style_8php.html#a339624aeef6604a2f00209a3962c6e1c":[5,0,3,1,1,0,1,0], -"redbasic_2php_2style_8php.html#a4161f6b8aa923f67e53f54dfb6554cdb":[5,0,3,1,1,0,1,16], -"redbasic_2php_2style_8php.html#a6502bedd57105ad1fb2dee2be9cf6351":[5,0,3,1,1,0,1,11], -"redbasic_2php_2style_8php.html#a68e3ff836ec87ae1370c9f4a12c21c6b":[5,0,3,1,1,0,1,4], -"redbasic_2php_2style_8php.html#a6ffadaf926b41ad84c30da319011e9ad":[5,0,3,1,1,0,1,14], -"redbasic_2php_2style_8php.html#a83022b1d70799d2bde3d64dca9cb40ee":[5,0,3,1,1,0,1,12], -"redbasic_2php_2style_8php.html#a883f9f14e205f7aa7de02c14df67b40a":[5,0,3,1,1,0,1,19], -"redbasic_2php_2style_8php.html#a8fdd5874587a9ad86fb05ed0be265649":[5,0,3,1,1,0,1,8], -"redbasic_2php_2style_8php.html#ab00dfc29448b183055d2ae61a0e1874a":[5,0,3,1,1,0,1,13], -"redbasic_2php_2style_8php.html#ab3afb90d611eca90819f597a2c0bb459":[5,0,3,1,1,0,1,18], -"redbasic_2php_2style_8php.html#ab5ec5703848e0132f8a8f3d3a53a58e1":[5,0,3,1,1,0,1,9], -"redbasic_2php_2style_8php.html#acfd00ec469ca3c5e8bfac787573093f3":[5,0,3,1,1,0,1,15], +"redbasic_2php_2style_8php.html#a4161f6b8aa923f67e53f54dfb6554cdb":[5,0,3,1,1,0,1,21], +"redbasic_2php_2style_8php.html#a5bff5012c56e34da6b3b2ed475726b27":[5,0,3,1,1,0,1,4], +"redbasic_2php_2style_8php.html#a61891d0d3e6894f52410d507b04e565d":[5,0,3,1,1,0,1,24], +"redbasic_2php_2style_8php.html#a6502bedd57105ad1fb2dee2be9cf6351":[5,0,3,1,1,0,1,15], +"redbasic_2php_2style_8php.html#a68e3ff836ec87ae1370c9f4a12c21c6b":[5,0,3,1,1,0,1,6], +"redbasic_2php_2style_8php.html#a6ffadaf926b41ad84c30da319011e9ad":[5,0,3,1,1,0,1,19], +"redbasic_2php_2style_8php.html#a810142b4bdd35a1d377ab279b02b47eb":[5,0,3,1,1,0,1,22], +"redbasic_2php_2style_8php.html#a83022b1d70799d2bde3d64dca9cb40ee":[5,0,3,1,1,0,1,17], +"redbasic_2php_2style_8php.html#a883f9f14e205f7aa7de02c14df67b40a":[5,0,3,1,1,0,1,26], +"redbasic_2php_2style_8php.html#a8fdd5874587a9ad86fb05ed0be265649":[5,0,3,1,1,0,1,10], +"redbasic_2php_2style_8php.html#a9b489f1c595b867212d30eca0c85b38c":[5,0,3,1,1,0,1,13], +"redbasic_2php_2style_8php.html#ab00dfc29448b183055d2ae61a0e1874a":[5,0,3,1,1,0,1,18], +"redbasic_2php_2style_8php.html#ab3afb90d611eca90819f597a2c0bb459":[5,0,3,1,1,0,1,25], +"redbasic_2php_2style_8php.html#ab5ec5703848e0132f8a8f3d3a53a58e1":[5,0,3,1,1,0,1,11], +"redbasic_2php_2style_8php.html#ac98bd8264411bd207a5740d08e81a158":[5,0,3,1,1,0,1,14], +"redbasic_2php_2style_8php.html#acfd00ec469ca3c5e8bfac787573093f3":[5,0,3,1,1,0,1,20], +"redbasic_2php_2style_8php.html#ad78cb8a1793834626d73aca22a1501f8":[5,0,3,1,1,0,1,3], "redbasic_2php_2style_8php.html#ae587aa6949ab6e4aa77a591e60f67ee0":[5,0,3,1,1,0,1,1], -"redbasic_2php_2style_8php.html#afcbcf57d0b90d2e4226c2e8a1171befc":[5,0,3,1,1,0,1,5], +"redbasic_2php_2style_8php.html#afcbcf57d0b90d2e4226c2e8a1171befc":[5,0,3,1,1,0,1,7], "redbasic_2php_2theme_8php.html":[5,0,3,1,1,0,2], "redbasic_2php_2theme_8php.html#af6eb813e9fc7e2d76ac1b82bc5c0ed9b":[5,0,3,1,1,0,2,0], "redbasic_8php.html":[5,0,3,1,0,1,9], @@ -217,37 +249,5 @@ var NAVTREEINDEX6 = "suggest_8php.html#a58748a8235d4523f8333847f3e42dd91":[5,0,1,101,1], "suggest_8php.html#a696acf1dd8070e479adcc80c63c6718c":[5,0,1,101,2], "system__unavailable_8php.html":[5,0,0,67], -"system__unavailable_8php.html#a73751a6bcc17ad3ca503496e2fb020fa":[5,0,0,67,0], -"tagger_8php.html":[5,0,1,102], -"tagger_8php.html#a0e4a3eb177d1684553c547503d67161c":[5,0,1,102,0], -"tagrm_8php.html":[5,0,1,103], -"tagrm_8php.html#a1702f40aa53a2fa93deade1f609abe78":[5,0,1,103,1], -"tagrm_8php.html#adfd4ea5b4d7fc6d9c9e042af5cd7d49a":[5,0,1,103,0], -"taxonomy_8php.html":[5,0,0,68], -"taxonomy_8php.html#a03f55ee46c5f496e42f3d29db8d09cce":[5,0,0,68,8], -"taxonomy_8php.html#a088371f4bc19155b2291508f5cd63332":[5,0,0,68,0], -"taxonomy_8php.html#a08df5164926d2b31b8e9fcfe919de2b6":[5,0,0,68,2], -"taxonomy_8php.html#a0fb8cf0ac7bcbc8b27d856fe9bf69cd1":[5,0,0,68,6], -"taxonomy_8php.html#a163b5131f388080b0fc82398d3a32fe1":[5,0,0,68,4], -"taxonomy_8php.html#a3299482ac20e9d79453048dd52881d37":[5,0,0,68,3], -"taxonomy_8php.html#a4ba1339b2a7054971178ce194e4440fd":[5,0,0,68,9], -"taxonomy_8php.html#a599ee71dd3194c8127b00dabec77abc1":[5,0,0,68,1], -"taxonomy_8php.html#a7a913d19c77610da689be48fbbf6734c":[5,0,0,68,13], -"taxonomy_8php.html#aaeded36bcc983b35d9205fe5b6c18c43":[5,0,0,68,12], -"taxonomy_8php.html#aaf90ba8b839d6459065f39a4f1109b8a":[5,0,0,68,10], -"taxonomy_8php.html#ac12a651a42ed77f8dc7072c6168811a2":[5,0,0,68,7], -"taxonomy_8php.html#ac21d1dff16d569e7d110167aea4e63c2":[5,0,0,68,11], -"taxonomy_8php.html#adfead45e3b8a3dfb2b4a4b9281d0dbe1":[5,0,0,68,5], -"template__processor_8php.html":[5,0,0,69], -"template__processor_8php.html#a797745996c7839a93b2ab1af456631ab":[5,0,0,69,3], -"template__processor_8php.html#ab2bcd8738f20f293636a6ae8e1099db5":[5,0,0,69,1], -"template__processor_8php.html#ac635bb19a5f6eadd6b0cddefdd537c1e":[5,0,0,69,2], -"text_8php.html":[5,0,0,70], -"text_8php.html#a0271381208acfa2d4cff36da281e3e23":[5,0,0,70,39], -"text_8php.html#a030fa5ecc64168af0c4f44897a9bce63":[5,0,0,70,45], -"text_8php.html#a070384ec000fd65043fce11d5392d241":[5,0,0,70,6], -"text_8php.html#a0a1f7c0e97f9ecbebf3e5834582b014c":[5,0,0,70,16], -"text_8php.html#a0c65597bb4aed3a039eb795ff540e5e3":[5,0,0,70,11], -"text_8php.html#a11255c8c4e5245b6c24f97684826aa54":[5,0,0,70,44], -"text_8php.html#a13286f8a95d2de6b102966ecc270c8d6":[5,0,0,70,5] +"system__unavailable_8php.html#a73751a6bcc17ad3ca503496e2fb020fa":[5,0,0,67,0] }; diff --git a/doc/html/navtreeindex7.js b/doc/html/navtreeindex7.js index 7df7b09fd..364e45cf3 100644 --- a/doc/html/navtreeindex7.js +++ b/doc/html/navtreeindex7.js @@ -1,5 +1,37 @@ var NAVTREEINDEX7 = { +"tagger_8php.html":[5,0,1,102], +"tagger_8php.html#a0e4a3eb177d1684553c547503d67161c":[5,0,1,102,0], +"tagrm_8php.html":[5,0,1,103], +"tagrm_8php.html#a1702f40aa53a2fa93deade1f609abe78":[5,0,1,103,1], +"tagrm_8php.html#adfd4ea5b4d7fc6d9c9e042af5cd7d49a":[5,0,1,103,0], +"taxonomy_8php.html":[5,0,0,68], +"taxonomy_8php.html#a03f55ee46c5f496e42f3d29db8d09cce":[5,0,0,68,8], +"taxonomy_8php.html#a088371f4bc19155b2291508f5cd63332":[5,0,0,68,0], +"taxonomy_8php.html#a08df5164926d2b31b8e9fcfe919de2b6":[5,0,0,68,2], +"taxonomy_8php.html#a0fb8cf0ac7bcbc8b27d856fe9bf69cd1":[5,0,0,68,6], +"taxonomy_8php.html#a163b5131f388080b0fc82398d3a32fe1":[5,0,0,68,4], +"taxonomy_8php.html#a3299482ac20e9d79453048dd52881d37":[5,0,0,68,3], +"taxonomy_8php.html#a4ba1339b2a7054971178ce194e4440fd":[5,0,0,68,9], +"taxonomy_8php.html#a599ee71dd3194c8127b00dabec77abc1":[5,0,0,68,1], +"taxonomy_8php.html#a7a913d19c77610da689be48fbbf6734c":[5,0,0,68,13], +"taxonomy_8php.html#aaeded36bcc983b35d9205fe5b6c18c43":[5,0,0,68,12], +"taxonomy_8php.html#aaf90ba8b839d6459065f39a4f1109b8a":[5,0,0,68,10], +"taxonomy_8php.html#ac12a651a42ed77f8dc7072c6168811a2":[5,0,0,68,7], +"taxonomy_8php.html#ac21d1dff16d569e7d110167aea4e63c2":[5,0,0,68,11], +"taxonomy_8php.html#adfead45e3b8a3dfb2b4a4b9281d0dbe1":[5,0,0,68,5], +"template__processor_8php.html":[5,0,0,69], +"template__processor_8php.html#a797745996c7839a93b2ab1af456631ab":[5,0,0,69,3], +"template__processor_8php.html#ab2bcd8738f20f293636a6ae8e1099db5":[5,0,0,69,1], +"template__processor_8php.html#ac635bb19a5f6eadd6b0cddefdd537c1e":[5,0,0,69,2], +"text_8php.html":[5,0,0,70], +"text_8php.html#a0271381208acfa2d4cff36da281e3e23":[5,0,0,70,39], +"text_8php.html#a030fa5ecc64168af0c4f44897a9bce63":[5,0,0,70,45], +"text_8php.html#a070384ec000fd65043fce11d5392d241":[5,0,0,70,6], +"text_8php.html#a0a1f7c0e97f9ecbebf3e5834582b014c":[5,0,0,70,16], +"text_8php.html#a0c65597bb4aed3a039eb795ff540e5e3":[5,0,0,70,11], +"text_8php.html#a11255c8c4e5245b6c24f97684826aa54":[5,0,0,70,44], +"text_8php.html#a13286f8a95d2de6b102966ecc270c8d6":[5,0,0,70,5], "text_8php.html#a1360fed7f918d859daaca1c9f384f9af":[5,0,0,70,77], "text_8php.html#a138a3a611fa7f4f3630674145fc826bf":[5,0,0,70,32], "text_8php.html#a1557112a774ec00fa06ed6b6f6495506":[5,0,0,70,35], @@ -81,7 +113,8 @@ var NAVTREEINDEX7 = "text_8php.html#afe18627c4983ee5f7c940a0992818cd5":[5,0,0,70,12], "text_8php.html#afe54312607d92f7ce9593f5760831f80":[5,0,0,70,58], "text_8php.html#afe9f178d264d44a94dc1292aaf0fd585":[5,0,0,70,53], -"theme__init_8php.html":[5,0,3,0,6], +"theme__init_8php.html":[5,0,3,0,7], +"theme__init_8php.html#a54f32c086fe209c99769a4c4047dd864":[5,0,3,0,7,0], "thing_8php.html":[5,0,1,104], "thing_8php.html#a24a35f1e64029a67fdbea94a776ae04b":[5,0,1,104,0], "thing_8php.html#a8be23b1d475ec3d9291999221c674c80":[5,0,1,104,1], @@ -89,19 +122,19 @@ var NAVTREEINDEX7 = "toggle__mobile_8php.html#aca53ade8971802b45c31e722b22c6254":[5,0,1,105,0], "toggle__safesearch_8php.html":[5,0,1,106], "toggle__safesearch_8php.html#a23d5cfb2727a266e44993ffbf5595a79":[5,0,1,106,0], -"tpldebug_8php.html":[5,0,2,7], -"tpldebug_8php.html#a44778457a6c02554812fbfad19d32ba3":[5,0,2,7,0], -"tpldebug_8php.html#a5358407d65f2ca826f96356a6642d149":[5,0,2,7,1], -"tpldebug_8php.html#afbc7aadb3f7ff1edf0aaaa326a42179c":[5,0,2,7,2], -"typo_8php.html":[5,0,2,8], -"typo_8php.html#a1b709c1d79631ebc8320b41bda028b54":[5,0,2,8,1], -"typo_8php.html#a329c9c12217d2c8660c47bbc7c8df4c5":[5,0,2,8,4], -"typo_8php.html#a3ecd17ac846be1b35f3662f5c12ab6bd":[5,0,2,8,3], -"typo_8php.html#a9590b15215a21e9b42eb546aeef79704":[5,0,2,8,2], -"typo_8php.html#acebf83966ef6d7e5645a6b62ba368f9f":[5,0,2,8,0], -"typohelper_8php.html":[5,0,2,9], -"typohelper_8php.html#a7542d95618011800c61773127fa625cf":[5,0,2,9,0], -"typohelper_8php.html#ab6fd357fb5b2a3ba8aab9e8b98c6a805":[5,0,2,9,1], +"tpldebug_8php.html":[5,0,2,8], +"tpldebug_8php.html#a44778457a6c02554812fbfad19d32ba3":[5,0,2,8,0], +"tpldebug_8php.html#a5358407d65f2ca826f96356a6642d149":[5,0,2,8,1], +"tpldebug_8php.html#afbc7aadb3f7ff1edf0aaaa326a42179c":[5,0,2,8,2], +"typo_8php.html":[5,0,2,9], +"typo_8php.html#a1b709c1d79631ebc8320b41bda028b54":[5,0,2,9,1], +"typo_8php.html#a329c9c12217d2c8660c47bbc7c8df4c5":[5,0,2,9,4], +"typo_8php.html#a3ecd17ac846be1b35f3662f5c12ab6bd":[5,0,2,9,3], +"typo_8php.html#a9590b15215a21e9b42eb546aeef79704":[5,0,2,9,2], +"typo_8php.html#acebf83966ef6d7e5645a6b62ba368f9f":[5,0,2,9,0], +"typohelper_8php.html":[5,0,2,10], +"typohelper_8php.html#a7542d95618011800c61773127fa625cf":[5,0,2,10,0], +"typohelper_8php.html#ab6fd357fb5b2a3ba8aab9e8b98c6a805":[5,0,2,10,1], "uexport_8php.html":[5,0,1,107], "uexport_8php.html#a118920137dedebe0581623a2e57e7b0d":[5,0,1,107,0], "update__channel_8php.html":[5,0,1,108], @@ -114,13 +147,13 @@ var NAVTREEINDEX7 = "update__network_8php.html#a8abf5b9f65af6a27ee2f9d7207ed1b41":[5,0,1,111,0], "update__search_8php.html":[5,0,1,112], "update__search_8php.html#ace4c3a23fa7d6922399e27c297a6ba52":[5,0,1,112,0], -"updatetpl_8py.html":[5,0,2,10], -"updatetpl_8py.html#a52a85ffa6b6d63d840b185a133478c12":[5,0,2,10,5], -"updatetpl_8py.html#a79c20eb62d568c999b56eb08530355d3":[5,0,2,10,2], -"updatetpl_8py.html#a988d937ed5d5c2b592b763036af5cf94":[5,0,2,10,1], -"updatetpl_8py.html#ab42dd79af65ee82201fd6f04715f62f6":[5,0,2,10,3], -"updatetpl_8py.html#ac9d11279fed403a329a719298feafc4f":[5,0,2,10,0], -"updatetpl_8py.html#ae694f5e1f25f8a92a945eb90c432dfe6":[5,0,2,10,4], +"updatetpl_8py.html":[5,0,2,11], +"updatetpl_8py.html#a52a85ffa6b6d63d840b185a133478c12":[5,0,2,11,5], +"updatetpl_8py.html#a79c20eb62d568c999b56eb08530355d3":[5,0,2,11,2], +"updatetpl_8py.html#a988d937ed5d5c2b592b763036af5cf94":[5,0,2,11,1], +"updatetpl_8py.html#ab42dd79af65ee82201fd6f04715f62f6":[5,0,2,11,3], +"updatetpl_8py.html#ac9d11279fed403a329a719298feafc4f":[5,0,2,11,0], +"updatetpl_8py.html#ae694f5e1f25f8a92a945eb90c432dfe6":[5,0,2,11,4], "view_2theme_2apw_2php_2config_8php.html":[5,0,3,1,0,0,0], "view_2theme_2apw_2php_2config_8php.html#a8b51951a70e1c1324be71345a61d70ec":[5,0,3,1,0,0,0,0], "view_2theme_2apw_2php_2config_8php.html#aa7d5739b72efef9822535b2b32d5364d":[5,0,3,1,0,0,0,1], diff --git a/doc/html/none_8php.html b/doc/html/none_8php.html new file mode 100644 index 000000000..de5c43817 --- /dev/null +++ b/doc/html/none_8php.html @@ -0,0 +1,112 @@ + + + + + + +The Red Matrix: view/php/none.php File Reference + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    The Red Matrix +
    +
    +
    + + + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    +
    +
    none.php File Reference
    +
    +
    +
    +
    + diff --git a/doc/html/plugin_8php.html b/doc/html/plugin_8php.html index 4582c3263..4f77cd3b5 100644 --- a/doc/html/plugin_8php.html +++ b/doc/html/plugin_8php.html @@ -282,7 +282,7 @@ Functions
    -

    Referenced by admin_content(), admin_page_dbsync(), admin_page_hubloc(), admin_page_logs(), admin_page_plugins(), admin_page_site(), admin_page_summary(), admin_page_themes(), admin_page_users(), advanced_profile(), allfriends_content(), alt_pager(), api_apply_template(), api_content(), apps_content(), apw_form(), blocks_content(), App\build_pagehead(), categories_widget(), channel_content(), chanview_content(), check_php(), common_content(), common_friends_visitor_widget(), connect_content(), connections_content(), construct_page(), contact_block(), conversation(), crepair_content(), delegate_content(), design_tools(), dir_safe_mode(), dir_sort_links(), directory_content(), display_content(), editblock_content(), editlayout_content(), editpost_content(), editwebpage_content(), events_content(), fbrowser_content(), field_timezone(), fileas_widget(), filer_content(), filestorage_content(), findpeople_widget(), follow_widget(), format_categories(), format_filer(), get_birthdays(), Item\get_comment_box(), get_events(), get_feed_for(), group_content(), group_side(), help_content(), hostxrd_init(), import_content(), intro_content(), invite_content(), lang_selector(), lastpost_content(), layouts_content(), login(), lostpass_content(), manage_content(), match_content(), menu_content(), menu_render(), message_aside(), message_content(), micropro(), mini_group_select(), mitem_content(), mood_content(), nav(), network_content(), new_channel_content(), nogroup_content(), notification(), notifications_content(), notify_content(), oembed_format_object(), oexchange_init(), opensearch_init(), pagelist_widget(), photos_album_widget(), photos_content(), poco_init(), poke_content(), populate_acl(), posted_date_widget(), profile_sidebar(), profile_tabs(), profiles_content(), redbasic_form(), register_content(), removeme_content(), rmagic_content(), rpost_content(), saved_searches(), search_content(), settings_aside(), setup_content(), siteinfo_content(), sources_content(), suggest_content(), theme_attachments(), thing_content(), vcard_from_xchan(), viewconnections_content(), vote_content(), webpages_content(), writepages_widget(), and xrd_init().

    +

    Referenced by admin_content(), admin_page_dbsync(), admin_page_hubloc(), admin_page_logs(), admin_page_plugins(), admin_page_site(), admin_page_summary(), admin_page_themes(), admin_page_users(), advanced_profile(), allfriends_content(), alt_pager(), api_apply_template(), api_content(), apps_content(), apw_form(), blocks_content(), App\build_pagehead(), categories_widget(), channel_content(), chanview_content(), check_php(), common_content(), common_friends_visitor_widget(), connect_content(), connections_content(), construct_page(), contact_block(), conversation(), crepair_content(), delegate_content(), design_tools(), dir_safe_mode(), dir_sort_links(), directory_content(), display_content(), editblock_content(), editlayout_content(), editpost_content(), editwebpage_content(), events_content(), fbrowser_content(), field_timezone(), fileas_widget(), filer_content(), filestorage_content(), findpeople_widget(), follow_widget(), format_categories(), format_filer(), get_birthdays(), Item\get_comment_box(), get_events(), get_feed_for(), group_content(), group_side(), help_content(), hostxrd_init(), import_content(), intro_content(), invite_content(), lang_selector(), lastpost_content(), layouts_content(), login(), lostpass_content(), manage_content(), match_content(), menu_content(), menu_render(), message_aside(), message_content(), micropro(), mini_group_select(), mitem_content(), mood_content(), nav(), network_content(), new_channel_content(), nogroup_content(), notification(), notifications_content(), notify_content(), oembed_format_object(), oexchange_init(), opensearch_init(), pagelist_widget(), photos_album_widget(), photos_content(), poco_init(), poke_content(), populate_acl(), posted_date_widget(), profile_sidebar(), profile_tabs(), profiles_content(), redbasic_form(), register_content(), removeme_content(), rmagic_content(), rpost_content(), saved_searches(), search_content(), settings_aside(), setup_content(), siteinfo_content(), sources_content(), suggest_content(), theme_attachments(), thing_content(), vcard_from_xchan(), viewconnections_content(), vote_content(), webpages_content(), writepages_widget(), and xrd_init().

    diff --git a/doc/html/post_8php.html b/doc/html/post_8php.html index d20efd0e8..bbaa4c652 100644 --- a/doc/html/post_8php.html +++ b/doc/html/post_8php.html @@ -155,7 +155,8 @@ Functions

    pickup: end

    All other message types require us to verify the sender. This is a generic check, so we will do it once here and bail if anything goes wrong.

    Check if the sender is already verified here

    -

    Have never seen this guid or this guid coming from this location. Check it and register it.

    +

    Have never seen this guid or this guid coming from this location. Check it and register it.

    +

    This hub has now been proven to be valid. Any hub with the same URL and a different sitekey cannot be valid. Get rid of them (mark them deleted). There's a good chance they were re-installs.

    diff --git a/doc/html/post__to__red_8php.html b/doc/html/post__to__red_8php.html new file mode 100644 index 000000000..51e9f5069 --- /dev/null +++ b/doc/html/post__to__red_8php.html @@ -0,0 +1,453 @@ + + + + + + +The Red Matrix: util/wp/post_to_red.php File Reference + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    The Red Matrix +
    +
    +
    + + + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    post_to_red.php File Reference
    +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

    +Functions

     post_to_red_deactivate ()
     
     post_to_red_get_seed_location ()
     
     post_to_red_get_acct_name ()
     
     post_to_red_get_user_name ()
     
     post_to_red_get_password ()
     
     post_to_red_post ($post_id)
     
     post_to_red_displayAdminContent ()
     
     post_to_red_post_checkbox ()
     
     post_to_red_post_meta_content ($post_id)
     
     post_to_red_post_field_data ($post_id)
     
     post_to_red_display_admin_page ()
     
     post_to_red_settings_link ($links)
     
     post_to_red_admin ()
     
     xpost_to_html2bbcode ($text)
     
    + + + + + + + + + + + +

    +Variables

    const post_to_red_path WP_PLUGIN_URL . "/" . str_replace(basename( __FILE__), "", plugin_basename(__FILE__))
     
    const post_to_red_version "1.2"
     
     $plugin_dir = basename(dirname(__FILE__))
     
     $plugin = plugin_basename(__FILE__)
     
    const post_to_red_acct_name "post_to_red_admin_options"
     
    +

    Function Documentation

    + +
    +
    + + + + + + + +
    post_to_red_admin ()
    +
    + +
    +
    + +
    +
    + + + + + + + +
    post_to_red_deactivate ()
    +
    + +
    +
    + +
    +
    + + + + + + + +
    post_to_red_display_admin_page ()
    +
    + +
    +
    + +
    +
    + + + + + + + +
    post_to_red_displayAdminContent ()
    +
    + +

    Referenced by post_to_red_display_admin_page().

    + +
    +
    + +
    +
    + + + + + + + +
    post_to_red_get_acct_name ()
    +
    + +

    Referenced by post_to_red_displayAdminContent().

    + +
    +
    + +
    +
    + + + + + + + +
    post_to_red_get_password ()
    +
    +
    + +
    +
    + + + + + + + +
    post_to_red_get_seed_location ()
    +
    +
    + +
    +
    + + + + + + + +
    post_to_red_get_user_name ()
    +
    + +

    Referenced by post_to_red_post().

    + +
    +
    + +
    +
    + + + + + + + + +
    post_to_red_post ( $post_id)
    +
    + +
    +
    + +
    +
    + + + + + + + +
    post_to_red_post_checkbox ()
    +
    + +
    +
    + +
    +
    + + + + + + + + +
    post_to_red_post_field_data ( $post_id)
    +
    + +
    +
    + +
    +
    + + + + + + + + +
    post_to_red_post_meta_content ( $post_id)
    +
    + +
    +
    + +
    +
    + + + + + + + + +
    post_to_red_settings_link ( $links)
    +
    + +
    +
    + +
    +
    + + + + + + + + +
    xpost_to_html2bbcode ( $text)
    +
    + +

    Referenced by post_to_red_post().

    + +
    +
    +

    Variable Documentation

    + +
    +
    + + + + +
    $plugin = plugin_basename(__FILE__)
    +
    +
    + +
    +
    + + + + +
    $plugin_dir = basename(dirname(__FILE__))
    +
    + +
    +
    + +
    +
    + + + + +
    const post_to_red_acct_name "post_to_red_admin_options"
    +
    +
    + +
    +
    + + + + +
    const post_to_red_path WP_PLUGIN_URL . "/" . str_replace(basename( __FILE__), "", plugin_basename(__FILE__))
    +
    + +
    +
    + +
    +
    + + + + +
    const post_to_red_version "1.2"
    +
    + +
    +
    +
    +
    + diff --git a/doc/html/post__to__red_8php.js b/doc/html/post__to__red_8php.js new file mode 100644 index 000000000..42057c549 --- /dev/null +++ b/doc/html/post__to__red_8php.js @@ -0,0 +1,22 @@ +var post__to__red_8php = +[ + [ "post_to_red_admin", "post__to__red_8php.html#aeec4125719184e7b097b3b9fba3101b5", null ], + [ "post_to_red_deactivate", "post__to__red_8php.html#a49fd35f7b1cdddfe6e26ddfcf8d3c4ec", null ], + [ "post_to_red_display_admin_page", "post__to__red_8php.html#a8ec8f8809e3c5d1b2c9598c8185d63aa", null ], + [ "post_to_red_displayAdminContent", "post__to__red_8php.html#a75db5d87226a0287a0ac0fa315f2bcfd", null ], + [ "post_to_red_get_acct_name", "post__to__red_8php.html#ae6f3a2c0561cbeacda5be565b06de8a7", null ], + [ "post_to_red_get_password", "post__to__red_8php.html#a4d90ac085c14f53ff4d8ab4c23477ea6", null ], + [ "post_to_red_get_seed_location", "post__to__red_8php.html#a96d0ccecb96600ef1bfd50ab3f77315f", null ], + [ "post_to_red_get_user_name", "post__to__red_8php.html#a9497cd6a80c6897dbbf9aabde62b53e7", null ], + [ "post_to_red_post", "post__to__red_8php.html#af5fd50e2c42ede85f8a9e8d9ee3cf540", null ], + [ "post_to_red_post_checkbox", "post__to__red_8php.html#a0f139dea77a94c98f26007963eea639c", null ], + [ "post_to_red_post_field_data", "post__to__red_8php.html#a7e68a8d9c83cb28d032aad3ea85ce0a6", null ], + [ "post_to_red_post_meta_content", "post__to__red_8php.html#aa97aeda12ef080665f16311a4e1eb901", null ], + [ "post_to_red_settings_link", "post__to__red_8php.html#a906be8f72cf1aa2e199c0683ea6a4017", null ], + [ "xpost_to_html2bbcode", "post__to__red_8php.html#af2713018a2dc97e88f121fc6215beb66", null ], + [ "$plugin", "post__to__red_8php.html#ada8a7130088351710bb02ed622d6bf65", null ], + [ "$plugin_dir", "post__to__red_8php.html#a99811555b30bde504a863e44015f2f19", null ], + [ "post_to_red_acct_name", "post__to__red_8php.html#a588cea66afe0b32f27f2713d44940119", null ], + [ "post_to_red_path", "post__to__red_8php.html#a6210f39392a5f0fa0255cc7d3760493a", null ], + [ "post_to_red_version", "post__to__red_8php.html#af3e7ebd361d4ed7cb6d43209970cd94a", null ] +]; \ No newline at end of file diff --git a/doc/html/redbasic_2php_2style_8php.html b/doc/html/redbasic_2php_2style_8php.html index 9a7c7502e..962e09fb4 100644 --- a/doc/html/redbasic_2php_2style_8php.html +++ b/doc/html/redbasic_2php_2style_8php.html @@ -134,6 +134,8 @@ Variables    $item_opacity = get_pconfig($uid, "redbasic", "item_opacity")   + $body_font_size = get_pconfig($uid, "redbasic", "body_font_size") +   $font_size = get_pconfig($uid, "redbasic", "font_size")    $font_colour = get_pconfig($uid, "redbasic", "font_colour") @@ -148,6 +150,18 @@ Variables    $sloppy_photos =get_pconfig($uid,'redbasic','sloppy_photos')   + $top_photo =get_pconfig($uid,'redbasic','top_photo') +  + $reply_photo =get_pconfig($uid,'redbasic','reply_photo') +  + $pmenu_top = intval($top_photo) - 16 . 'px' +  + $wwtop = intval($top_photo) - 15 . 'px' +  + $comment_indent = intval($top_photo) + 10 . 'px' +  + $pmenu_reply = intval($reply_photo) - 16 . 'px' +  if($nav_min_opacity===false||$nav_min_opacity=== '') else    $nav_percent_min_opacity = (int) 100 * $nav_min_opacity @@ -190,6 +204,30 @@ Variables

    Referenced by apw_form(), and theme_content().

    + + + +
    +
    + + + + +
    $body_font_size = get_pconfig($uid, "redbasic", "body_font_size")
    +
    + +
    +
    + +
    +
    + + + + +
    $comment_indent = intval($top_photo) + 10 . 'px'
    +
    +
    @@ -292,6 +330,30 @@ Variables
    +
    + + +
    +
    + + + + +
    $pmenu_reply = intval($reply_photo) - 16 . 'px'
    +
    + +
    +
    + +
    +
    + + + + +
    $pmenu_top = intval($top_photo) - 16 . 'px'
    +
    +
    @@ -306,6 +368,18 @@ Variables

    Referenced by apw_form(), and theme_content().

    + + + +
    +
    + + + + +
    $reply_photo =get_pconfig($uid,'redbasic','reply_photo')
    +
    +
    @@ -368,6 +442,18 @@ Variables
    +
    + + +
    +
    + + + + +
    $top_photo =get_pconfig($uid,'redbasic','top_photo')
    +
    +
    @@ -380,6 +466,18 @@ Variables
    +
    + + +
    +
    + + + + +
    $wwtop = intval($top_photo) - 15 . 'px'
    +
    +
    diff --git a/doc/html/redbasic_2php_2style_8php.js b/doc/html/redbasic_2php_2style_8php.js index e096b5ce6..c5e370461 100644 --- a/doc/html/redbasic_2php_2style_8php.js +++ b/doc/html/redbasic_2php_2style_8php.js @@ -3,6 +3,8 @@ var redbasic_2php_2style_8php = [ "$background_image", "redbasic_2php_2style_8php.html#a339624aeef6604a2f00209a3962c6e1c", null ], [ "$banner_colour", "redbasic_2php_2style_8php.html#ae587aa6949ab6e4aa77a591e60f67ee0", null ], [ "$bgcolour", "redbasic_2php_2style_8php.html#a0bdce350cf14bac44976e786d1be6574", null ], + [ "$body_font_size", "redbasic_2php_2style_8php.html#ad78cb8a1793834626d73aca22a1501f8", null ], + [ "$comment_indent", "redbasic_2php_2style_8php.html#a5bff5012c56e34da6b3b2ed475726b27", null ], [ "$converse_width", "redbasic_2php_2style_8php.html#a0cb037986e32302685d4f580dedd6473", null ], [ "$font_colour", "redbasic_2php_2style_8php.html#a68e3ff836ec87ae1370c9f4a12c21c6b", null ], [ "$font_size", "redbasic_2php_2style_8php.html#afcbcf57d0b90d2e4226c2e8a1171befc", null ], @@ -11,13 +13,18 @@ var redbasic_2php_2style_8php = [ "$nav_colour", "redbasic_2php_2style_8php.html#a8fdd5874587a9ad86fb05ed0be265649", null ], [ "$nav_min_opacity", "redbasic_2php_2style_8php.html#ab5ec5703848e0132f8a8f3d3a53a58e1", null ], [ "$nav_percent_min_opacity", "redbasic_2php_2style_8php.html#a01c151bf47f7da2b979aaa4cb868da4c", null ], + [ "$pmenu_reply", "redbasic_2php_2style_8php.html#a9b489f1c595b867212d30eca0c85b38c", null ], + [ "$pmenu_top", "redbasic_2php_2style_8php.html#ac98bd8264411bd207a5740d08e81a158", null ], [ "$radius", "redbasic_2php_2style_8php.html#a6502bedd57105ad1fb2dee2be9cf6351", null ], + [ "$reply_photo", "redbasic_2php_2style_8php.html#a0b070f2c9140a7a12a0b1f88601a29e4", null ], [ "$schema", "redbasic_2php_2style_8php.html#a83022b1d70799d2bde3d64dca9cb40ee", null ], [ "$shadow", "redbasic_2php_2style_8php.html#ab00dfc29448b183055d2ae61a0e1874a", null ], [ "$sloppy_photos", "redbasic_2php_2style_8php.html#a6ffadaf926b41ad84c30da319011e9ad", null ], [ "$toolicon_activecolour", "redbasic_2php_2style_8php.html#acfd00ec469ca3c5e8bfac787573093f3", null ], [ "$toolicon_colour", "redbasic_2php_2style_8php.html#a4161f6b8aa923f67e53f54dfb6554cdb", null ], + [ "$top_photo", "redbasic_2php_2style_8php.html#a810142b4bdd35a1d377ab279b02b47eb", null ], [ "$uid", "redbasic_2php_2style_8php.html#a109bbd7f4add27541707b191b73ef84a", null ], + [ "$wwtop", "redbasic_2php_2style_8php.html#a61891d0d3e6894f52410d507b04e565d", null ], [ "else", "redbasic_2php_2style_8php.html#ab3afb90d611eca90819f597a2c0bb459", null ], [ "if", "redbasic_2php_2style_8php.html#a883f9f14e205f7aa7de02c14df67b40a", null ] ]; \ No newline at end of file diff --git a/doc/html/redbasic_2php_2theme_8php.html b/doc/html/redbasic_2php_2theme_8php.html index dbbbd82df..eb9630b87 100644 --- a/doc/html/redbasic_2php_2theme_8php.html +++ b/doc/html/redbasic_2php_2theme_8php.html @@ -129,6 +129,14 @@ Functions
    +
      +
    • Name: Redbasic
    • +
    • Description: RedMatrix standard theme
    • +
    • Version: 1.0
    • +
    • Author: Fabrixxm
    • +
    • Maintainer: Mike Macgirvin
    • +
    • Compat: Red [*]
    • +
    diff --git a/doc/html/rpost_8php.html b/doc/html/rpost_8php.html index b1f75081d..559a2fbff 100644 --- a/doc/html/rpost_8php.html +++ b/doc/html/rpost_8php.html @@ -132,7 +132,7 @@ Functions

    remote post

    https://yoursite/rpost?f=&title=&body=&remote_return=

    This can be called via either GET or POST, use POST for long body content as suhosin often limits GET parameter length

    -

    f= placeholder, often required title= Title of post body= Body of post remote_return= absolute URL to return after posting is finished type= choices are 'html' or 'bbcode', default is 'bbcode'

    +

    f= placeholder, often required title= Title of post body= Body of post source= Source application remote_return= absolute URL to return after posting is finished type= choices are 'html' or 'bbcode', default is 'bbcode'

    diff --git a/doc/html/search/all_24.js b/doc/html/search/all_24.js index cca20bbe5..0947880f2 100644 --- a/doc/html/search/all_24.js +++ b/doc/html/search/all_24.js @@ -15,17 +15,19 @@ var searchData= ['_24banner_5fcolour',['$banner_colour',['../redbasic_2php_2style_8php.html#ae587aa6949ab6e4aa77a591e60f67ee0',1,'style.php']]], ['_24baseurl',['$baseurl',['../classApp.html#ad5175536561021548ae8188e24c7b80c',1,'App']]], ['_24bgcolour',['$bgcolour',['../redbasic_2php_2style_8php.html#a0bdce350cf14bac44976e786d1be6574',1,'style.php']]], + ['_24body_5ffont_5fsize',['$body_font_size',['../redbasic_2php_2style_8php.html#ad78cb8a1793834626d73aca22a1501f8',1,'style.php']]], ['_24cached_5fprofile_5fimage',['$cached_profile_image',['../classApp.html#abe0e4fa91097f7a6588e1213a834121c',1,'App']]], ['_24cached_5fprofile_5fpicdate',['$cached_profile_picdate',['../classApp.html#aab4a685d15a363bb1d7edbbc20bfb94e',1,'App']]], ['_24called_5fapi',['$called_api',['../include_2api_8php.html#aa62b15a6bbb280e86b98132eb214013d',1,'api.php']]], ['_24category',['$category',['../classApp.html#a5cfc098c061b7d765add58fd2ca97445',1,'App']]], - ['_24channel',['$channel',['../classApp.html#a050b0696118da47e8b30859ad1a2c149',1,'App\$channel()'],['../classItem.html#acc32426c0f465391be8a99ad810c7b8e',1,'Item\$channel()']]], + ['_24channel',['$channel',['../classApp.html#a050b0696118da47e8b30859ad1a2c149',1,'App\$channel()'],['../classItem.html#acc32426c0f465391be8a99ad810c7b8e',1,'Item\$channel()'],['../theme__init_8php.html#a54f32c086fe209c99769a4c4047dd864',1,'$channel(): theme_init.php']]], ['_24channel_5fid',['$channel_id',['../classRedDirectory.html#ae624dcaa4d73a517f4b1616d33df690d',1,'RedDirectory']]], ['_24children',['$children',['../classItem.html#a80dcd0fb7673776c0967839d429c2a0f',1,'Item']]], ['_24cid',['$cid',['../classApp.html#ad1c8eb91a6fd470b94f34b7fdad3a2d0',1,'App']]], ['_24cipher',['$cipher',['../classConversation.html#aa95c1a62af38bdfba7add9549bec083b',1,'Conversation']]], ['_24cmd',['$cmd',['../classApp.html#a495ec082c2719314e536070ca1ce073d',1,'App']]], ['_24comment_5fbox_5ftemplate',['$comment_box_template',['../classItem.html#a90743c8348b13213275c223bb9333aa0',1,'Item']]], + ['_24comment_5findent',['$comment_indent',['../redbasic_2php_2style_8php.html#a5bff5012c56e34da6b3b2ed475726b27',1,'style.php']]], ['_24commentable',['$commentable',['../classConversation.html#afd4965d22a6e4bfea2f35e931b3273c6',1,'Conversation\$commentable()'],['../classItem.html#aa2c221231ad0fc3720ccc1f00f0c6304',1,'Item\$commentable()']]], ['_24config',['$config',['../classApp.html#ac73dc90e4764497e2f1b7e6612c8fb88',1,'App']]], ['_24connected',['$connected',['../classdba__driver.html#a205f6535e399700b6fca2492f96f2229',1,'dba_driver']]], @@ -97,7 +99,11 @@ var searchData= ['_24perms',['$perms',['../classApp.html#ab47de68fa39806d1fb0976407e188b77',1,'App']]], ['_24phpath',['$phpath',['../typo_8php.html#a3ecd17ac846be1b35f3662f5c12ab6bd',1,'typo.php']]], ['_24phpfile',['$phpfile',['../php2po_8php.html#abbb0e5fd8fbc1f13a9bf68f86eb3d2a4',1,'php2po.php']]], + ['_24plugin',['$plugin',['../post__to__red_8php.html#ada8a7130088351710bb02ed622d6bf65',1,'post_to_red.php']]], + ['_24plugin_5fdir',['$plugin_dir',['../post__to__red_8php.html#a99811555b30bde504a863e44015f2f19',1,'post_to_red.php']]], ['_24plugins',['$plugins',['../classApp.html#ae9f96338f32187d308b67b980eea0008',1,'App']]], + ['_24pmenu_5freply',['$pmenu_reply',['../redbasic_2php_2style_8php.html#a9b489f1c595b867212d30eca0c85b38c',1,'style.php']]], + ['_24pmenu_5ftop',['$pmenu_top',['../redbasic_2php_2style_8php.html#ac98bd8264411bd207a5740d08e81a158',1,'style.php']]], ['_24pofile',['$pofile',['../php2po_8php.html#a401d84ce156e49e8168bd0c4781e1be1',1,'php2po.php']]], ['_24prepared_5fitem',['$prepared_item',['../classConversation.html#a5b6adbb2fe24f0f53d6c22660dff91b2',1,'Conversation']]], ['_24preview',['$preview',['../classConversation.html#ae9937f9e0f3d927acc2bed46cc72e9ae',1,'Conversation']]], @@ -111,6 +117,7 @@ var searchData= ['_24red_5fpath',['$red_path',['../classRedDirectory.html#acb32b8df27538c57772824a745e751d7',1,'RedDirectory']]], ['_24redirect_5furl',['$redirect_url',['../classItem.html#a5b561415861f5b89b0733aacfe0428d1',1,'Item']]], ['_24replace',['$replace',['../classTemplate.html#a4e86b566c3f728e95ce5db1b33665c10',1,'Template']]], + ['_24reply_5fphoto',['$reply_photo',['../redbasic_2php_2style_8php.html#a0b070f2c9140a7a12a0b1f88601a29e4',1,'style.php']]], ['_24res',['$res',['../docblox__errorchecker_8php.html#a49a8a4009b02e49717caa88b128affc5',1,'docblox_errorchecker.php']]], ['_24s',['$s',['../extract_8php.html#a50b05cf2e02ef0b67fcad97106dd7634',1,'extract.php']]], ['_24schema',['$schema',['../redbasic_2php_2style_8php.html#a83022b1d70799d2bde3d64dca9cb40ee',1,'style.php']]], @@ -137,6 +144,7 @@ var searchData= ['_24timezone',['$timezone',['../classApp.html#ab35b01a366a2ea95725e97af278f87ab',1,'App']]], ['_24toolicon_5factivecolour',['$toolicon_activecolour',['../redbasic_2php_2style_8php.html#acfd00ec469ca3c5e8bfac787573093f3',1,'style.php']]], ['_24toolicon_5fcolour',['$toolicon_colour',['../redbasic_2php_2style_8php.html#a4161f6b8aa923f67e53f54dfb6554cdb',1,'style.php']]], + ['_24top_5fphoto',['$top_photo',['../redbasic_2php_2style_8php.html#a810142b4bdd35a1d377ab279b02b47eb',1,'style.php']]], ['_24toplevel',['$toplevel',['../classItem.html#a5cfa6cf964f433a917a81cab079ff9d8',1,'Item']]], ['_24type',['$type',['../classphoto__driver.html#a4920ed7cbb1ac735ac84153067537f03',1,'photo_driver']]], ['_24types',['$types',['../classphoto__driver.html#a00cb166c00b7502dbc456c94330e5b03',1,'photo_driver']]], @@ -151,5 +159,6 @@ var searchData= ['_24widgets',['$widgets',['../classApp.html#aa5a87c46ab3fee21362c466bf78042ef',1,'App']]], ['_24width',['$width',['../classphoto__driver.html#a3e4215890f4a4894bf3799a7d2e0c0b1',1,'photo_driver\$width()'],['../minimalisticdarkness_8php.html#a5795120b4b324bc4ca83f1e6fdce7d57',1,'$width(): minimalisticdarkness.php']]], ['_24writable',['$writable',['../classConversation.html#ae81221251307e315f566a11f921ce0a9',1,'Conversation']]], + ['_24wwtop',['$wwtop',['../redbasic_2php_2style_8php.html#a61891d0d3e6894f52410d507b04e565d',1,'style.php']]], ['_24zones',['$zones',['../extract_8php.html#a0cbe524ffc9a496114fd7ba9f423ef44',1,'extract.php']]] ]; diff --git a/doc/html/search/all_63.js b/doc/html/search/all_63.js index 580f6ed45..73a94e96b 100644 --- a/doc/html/search/all_63.js +++ b/doc/html/search/all_63.js @@ -141,6 +141,8 @@ var searchData= ['cronhooks_5frun',['cronhooks_run',['../cronhooks_8php.html#a4c4c1bbec4ecc9a0efa00dd6afd2c0ca',1,'cronhooks.php']]], ['cropimage',['cropImage',['../classphoto__driver.html#a2e6e61f1e356a90bc978f4404a77137e',1,'photo_driver\cropImage()'],['../classphoto__gd.html#ab2232d775c8bacf66773a03308105f0c',1,'photo_gd\cropImage()'],['../classphoto__imagick.html#a2f33a03a89497a2b2768e29736d4a8a4',1,'photo_imagick\cropImage()']]], ['crypto_2ephp',['crypto.php',['../crypto_8php.html',1,'']]], + ['crypto_5fencapsulate',['crypto_encapsulate',['../crypto_8php.html#a32fc08d57a5694f94d8543ecbb03323c',1,'crypto.php']]], + ['crypto_5funencapsulate',['crypto_unencapsulate',['../crypto_8php.html#a0781202b0a43b82426929cc87c2fa2b5',1,'crypto.php']]], ['curpageurl',['curPageURL',['../boot_8php.html#aa4221641e5c21db69fa52c426b9017f5',1,'boot.php']]], ['current_5ftheme',['current_theme',['../boot_8php.html#ad206598b909e8eb67eb0e0bb5ef69c13',1,'boot.php']]], ['current_5ftheme_5furl',['current_theme_url',['../boot_8php.html#a926cad0b3d8b9d9ee5da1898fc063ba3',1,'boot.php']]], diff --git a/doc/html/search/all_6d.js b/doc/html/search/all_6d.js index d3c7c9b76..44c214360 100644 --- a/doc/html/search/all_6d.js +++ b/doc/html/search/all_6d.js @@ -45,7 +45,7 @@ var searchData= ['message_5fpost',['message_post',['../mod_2message_8php.html#a0db7030362a7e9ed9549b341d7b35718',1,'message.php']]], ['micropro',['micropro',['../text_8php.html#a2a902f5fdba8646333e997898ac45ea3',1,'text.php']]], ['mimetype_5fselect',['mimetype_select',['../text_8php.html#a1633412120f52bdce5f43e0a127d9293',1,'text.php']]], - ['mini_5fgroup_5fselect',['mini_group_select',['../include_2group_8php.html#ab4d9e5b59f48787cb01baae5dc6c381f',1,'group.php']]], + ['mini_5fgroup_5fselect',['mini_group_select',['../include_2group_8php.html#ab0e422a0f31c0c64fd9084ca03d85f32',1,'group.php']]], ['minimal_2ephp',['minimal.php',['../minimal_8php.html',1,'']]], ['minimalisticdarkness_2ephp',['minimalisticdarkness.php',['../minimalisticdarkness_8php.html',1,'']]], ['mitem_2ephp',['mitem.php',['../mitem_8php.html',1,'']]], diff --git a/doc/html/search/all_6e.js b/doc/html/search/all_6e.js index 5fc653c57..ae1398cd5 100644 --- a/doc/html/search/all_6e.js +++ b/doc/html/search/all_6e.js @@ -56,6 +56,7 @@ var searchData= ['nogroup_2ephp',['nogroup.php',['../nogroup_8php.html',1,'']]], ['nogroup_5fcontent',['nogroup_content',['../nogroup_8php.html#a52085b183f97c552f1db5c4926e8ec30',1,'nogroup.php']]], ['nogroup_5finit',['nogroup_init',['../nogroup_8php.html#a099cb353bf62e8453069ce107b763212',1,'nogroup.php']]], + ['none_2ephp',['none.php',['../none_8php.html',1,'']]], ['normalise_5flink',['normalise_link',['../text_8php.html#a4bbb7d00c05cd20b4e043424f322388f',1,'text.php']]], ['normalise_5fopenid',['normalise_openid',['../text_8php.html#adba17ec946f4285285dc100f7860bf51',1,'text.php']]], ['notags',['notags',['../text_8php.html#a1af49756c8c71902a66c7e329c462beb',1,'text.php']]], diff --git a/doc/html/search/all_70.js b/doc/html/search/all_70.js index 632f60bdd..1480b53d2 100644 --- a/doc/html/search/all_70.js +++ b/doc/html/search/all_70.js @@ -108,9 +108,27 @@ var searchData= ['post_5factivity_5fitem',['post_activity_item',['../items_8php.html#a410f9c743877c125ca06312373346903',1,'items.php']]], ['post_5finit',['post_init',['../post_8php.html#af4b48181ce773ef0cdfc972441445c34',1,'post.php']]], ['post_5fpost',['post_post',['../post_8php.html#af59e6a1dc22d19d9257b01cd7ccedb75',1,'post.php']]], + ['post_5fto_5fred_2ephp',['post_to_red.php',['../post__to__red_8php.html',1,'']]], + ['post_5fto_5fred_5facct_5fname',['post_to_red_acct_name',['../post__to__red_8php.html#a588cea66afe0b32f27f2713d44940119',1,'post_to_red.php']]], + ['post_5fto_5fred_5fadmin',['post_to_red_admin',['../post__to__red_8php.html#aeec4125719184e7b097b3b9fba3101b5',1,'post_to_red.php']]], + ['post_5fto_5fred_5fdeactivate',['post_to_red_deactivate',['../post__to__red_8php.html#a49fd35f7b1cdddfe6e26ddfcf8d3c4ec',1,'post_to_red.php']]], + ['post_5fto_5fred_5fdisplay_5fadmin_5fpage',['post_to_red_display_admin_page',['../post__to__red_8php.html#a8ec8f8809e3c5d1b2c9598c8185d63aa',1,'post_to_red.php']]], + ['post_5fto_5fred_5fdisplayadmincontent',['post_to_red_displayAdminContent',['../post__to__red_8php.html#a75db5d87226a0287a0ac0fa315f2bcfd',1,'post_to_red.php']]], + ['post_5fto_5fred_5fget_5facct_5fname',['post_to_red_get_acct_name',['../post__to__red_8php.html#ae6f3a2c0561cbeacda5be565b06de8a7',1,'post_to_red.php']]], + ['post_5fto_5fred_5fget_5fpassword',['post_to_red_get_password',['../post__to__red_8php.html#a4d90ac085c14f53ff4d8ab4c23477ea6',1,'post_to_red.php']]], + ['post_5fto_5fred_5fget_5fseed_5flocation',['post_to_red_get_seed_location',['../post__to__red_8php.html#a96d0ccecb96600ef1bfd50ab3f77315f',1,'post_to_red.php']]], + ['post_5fto_5fred_5fget_5fuser_5fname',['post_to_red_get_user_name',['../post__to__red_8php.html#a9497cd6a80c6897dbbf9aabde62b53e7',1,'post_to_red.php']]], + ['post_5fto_5fred_5fpath',['post_to_red_path',['../post__to__red_8php.html#a6210f39392a5f0fa0255cc7d3760493a',1,'post_to_red.php']]], + ['post_5fto_5fred_5fpost',['post_to_red_post',['../post__to__red_8php.html#af5fd50e2c42ede85f8a9e8d9ee3cf540',1,'post_to_red.php']]], + ['post_5fto_5fred_5fpost_5fcheckbox',['post_to_red_post_checkbox',['../post__to__red_8php.html#a0f139dea77a94c98f26007963eea639c',1,'post_to_red.php']]], + ['post_5fto_5fred_5fpost_5ffield_5fdata',['post_to_red_post_field_data',['../post__to__red_8php.html#a7e68a8d9c83cb28d032aad3ea85ce0a6',1,'post_to_red.php']]], + ['post_5fto_5fred_5fpost_5fmeta_5fcontent',['post_to_red_post_meta_content',['../post__to__red_8php.html#aa97aeda12ef080665f16311a4e1eb901',1,'post_to_red.php']]], + ['post_5fto_5fred_5fsettings_5flink',['post_to_red_settings_link',['../post__to__red_8php.html#a906be8f72cf1aa2e199c0683ea6a4017',1,'post_to_red.php']]], + ['post_5fto_5fred_5fversion',['post_to_red_version',['../post__to__red_8php.html#af3e7ebd361d4ed7cb6d43209970cd94a',1,'post_to_red.php']]], ['post_5furl',['post_url',['../include_2network_8php.html#aa44d9e33a579d930e9e79c4ebb3d6b5e',1,'network.php']]], ['posted_5fdate_5fwidget',['posted_date_widget',['../items_8php.html#abe695dd89e1e10ed042c26b80114f0ed',1,'items.php']]], ['posted_5fdates',['posted_dates',['../items_8php.html#ad2abb4644ff1f20fefbc80326fe01cf0',1,'items.php']]], + ['preg_5fcallback_5fhelp_5finclude',['preg_callback_help_include',['../help_8php.html#a06b2a51aaabed99e53a9b639047c4ce4',1,'help.php']]], ['preg_5fheart',['preg_heart',['../text_8php.html#ac19d2b33a58372a357a43d51eed19162',1,'text.php']]], ['prepare_5fbody',['prepare_body',['../text_8php.html#ae4df74296fbe55051ed3c035e55205e5',1,'text.php']]], ['prepare_5fpage',['prepare_page',['../conversation_8php.html#a4b0888b0f26e1c284a4341fe5fd04f0c',1,'conversation.php']]], diff --git a/doc/html/search/all_78.js b/doc/html/search/all_78.js index 6872444ed..b001e9752 100644 --- a/doc/html/search/all_78.js +++ b/doc/html/search/all_78.js @@ -13,6 +13,7 @@ var searchData= ['xml2array',['xml2array',['../include_2network_8php.html#a99353baabbc3e0584b85eb79ee802cff',1,'network.php']]], ['xml_5fstatus',['xml_status',['../include_2network_8php.html#a9e9da2aafb806c98ecdc318604e60dc6',1,'network.php']]], ['xmlify',['xmlify',['../text_8php.html#aaed4413ed8918838b517e3b2fafaea0d',1,'text.php']]], + ['xpost_5fto_5fhtml2bbcode',['xpost_to_html2bbcode',['../post__to__red_8php.html#af2713018a2dc97e88f121fc6215beb66',1,'post_to_red.php']]], ['xrd_2ephp',['xrd.php',['../xrd_8php.html',1,'']]], ['xrd_5finit',['xrd_init',['../xrd_8php.html#aee3cf087968e4a0ff3a87de16eb23270',1,'xrd.php']]] ]; diff --git a/doc/html/search/files_6e.js b/doc/html/search/files_6e.js index 1d6cb6c17..fcb0aa467 100644 --- a/doc/html/search/files_6e.js +++ b/doc/html/search/files_6e.js @@ -5,6 +5,7 @@ var searchData= ['network_2ephp',['network.php',['../mod_2network_8php.html',1,'']]], ['new_5fchannel_2ephp',['new_channel.php',['../new__channel_8php.html',1,'']]], ['nogroup_2ephp',['nogroup.php',['../nogroup_8php.html',1,'']]], + ['none_2ephp',['none.php',['../none_8php.html',1,'']]], ['notifications_2ephp',['notifications.php',['../notifications_8php.html',1,'']]], ['notifier_2ephp',['notifier.php',['../notifier_8php.html',1,'']]], ['notify_2ephp',['notify.php',['../mod_2notify_8php.html',1,'']]], diff --git a/doc/html/search/files_70.js b/doc/html/search/files_70.js index 660b1f132..295000ad9 100644 --- a/doc/html/search/files_70.js +++ b/doc/html/search/files_70.js @@ -10,8 +10,8 @@ var searchData= ['photo_5fdriver_2ephp',['photo_driver.php',['../photo__driver_8php.html',1,'']]], ['photo_5fgd_2ephp',['photo_gd.php',['../photo__gd_8php.html',1,'']]], ['photo_5fimagick_2ephp',['photo_imagick.php',['../photo__imagick_8php.html',1,'']]], - ['photos_2ephp',['photos.php',['../include_2photos_8php.html',1,'']]], ['photos_2ephp',['photos.php',['../mod_2photos_8php.html',1,'']]], + ['photos_2ephp',['photos.php',['../include_2photos_8php.html',1,'']]], ['php_2ephp',['php.php',['../php_8php.html',1,'']]], ['php2po_2ephp',['php2po.php',['../php2po_8php.html',1,'']]], ['pine_2ephp',['pine.php',['../pine_8php.html',1,'']]], @@ -22,6 +22,7 @@ var searchData= ['poke_2ephp',['poke.php',['../poke_8php.html',1,'']]], ['poller_2ephp',['poller.php',['../poller_8php.html',1,'']]], ['post_2ephp',['post.php',['../post_8php.html',1,'']]], + ['post_5fto_5fred_2ephp',['post_to_red.php',['../post__to__red_8php.html',1,'']]], ['pretheme_2ephp',['pretheme.php',['../pretheme_8php.html',1,'']]], ['probe_2ephp',['probe.php',['../probe_8php.html',1,'']]], ['profile_2ephp',['profile.php',['../profile_8php.html',1,'']]], diff --git a/doc/html/search/functions_63.js b/doc/html/search/functions_63.js index db6f6b013..2fd8ce91d 100644 --- a/doc/html/search/functions_63.js +++ b/doc/html/search/functions_63.js @@ -108,6 +108,8 @@ var searchData= ['crepair_5fpost',['crepair_post',['../crepair_8php.html#acc4493e1ffd1462a605dd9b870034513',1,'crepair.php']]], ['cronhooks_5frun',['cronhooks_run',['../cronhooks_8php.html#a4c4c1bbec4ecc9a0efa00dd6afd2c0ca',1,'cronhooks.php']]], ['cropimage',['cropImage',['../classphoto__driver.html#a2e6e61f1e356a90bc978f4404a77137e',1,'photo_driver\cropImage()'],['../classphoto__gd.html#ab2232d775c8bacf66773a03308105f0c',1,'photo_gd\cropImage()'],['../classphoto__imagick.html#a2f33a03a89497a2b2768e29736d4a8a4',1,'photo_imagick\cropImage()']]], + ['crypto_5fencapsulate',['crypto_encapsulate',['../crypto_8php.html#a32fc08d57a5694f94d8543ecbb03323c',1,'crypto.php']]], + ['crypto_5funencapsulate',['crypto_unencapsulate',['../crypto_8php.html#a0781202b0a43b82426929cc87c2fa2b5',1,'crypto.php']]], ['curpageurl',['curPageURL',['../boot_8php.html#aa4221641e5c21db69fa52c426b9017f5',1,'boot.php']]], ['current_5ftheme',['current_theme',['../boot_8php.html#ad206598b909e8eb67eb0e0bb5ef69c13',1,'boot.php']]], ['current_5ftheme_5furl',['current_theme_url',['../boot_8php.html#a926cad0b3d8b9d9ee5da1898fc063ba3',1,'boot.php']]] diff --git a/doc/html/search/functions_6d.js b/doc/html/search/functions_6d.js index 61dd6cb2e..c43f6598b 100644 --- a/doc/html/search/functions_6d.js +++ b/doc/html/search/functions_6d.js @@ -28,7 +28,7 @@ var searchData= ['message_5fpost',['message_post',['../mod_2message_8php.html#a0db7030362a7e9ed9549b341d7b35718',1,'message.php']]], ['micropro',['micropro',['../text_8php.html#a2a902f5fdba8646333e997898ac45ea3',1,'text.php']]], ['mimetype_5fselect',['mimetype_select',['../text_8php.html#a1633412120f52bdce5f43e0a127d9293',1,'text.php']]], - ['mini_5fgroup_5fselect',['mini_group_select',['../include_2group_8php.html#ab4d9e5b59f48787cb01baae5dc6c381f',1,'group.php']]], + ['mini_5fgroup_5fselect',['mini_group_select',['../include_2group_8php.html#ab0e422a0f31c0c64fd9084ca03d85f32',1,'group.php']]], ['mitem_5fcontent',['mitem_content',['../mitem_8php.html#a7a31b702ecad18eeb6a38b243ff0037e',1,'mitem.php']]], ['mitem_5finit',['mitem_init',['../mitem_8php.html#a9627cd857cafdf04e4fc0ae48c8e8518',1,'mitem.php']]], ['mitem_5fpost',['mitem_post',['../mitem_8php.html#a6ee694cca4b551a20d7c7a94b5243ec1',1,'mitem.php']]], diff --git a/doc/html/search/functions_70.js b/doc/html/search/functions_70.js index 54a0df5d4..26db791a3 100644 --- a/doc/html/search/functions_70.js +++ b/doc/html/search/functions_70.js @@ -41,9 +41,23 @@ var searchData= ['post_5factivity_5fitem',['post_activity_item',['../items_8php.html#a410f9c743877c125ca06312373346903',1,'items.php']]], ['post_5finit',['post_init',['../post_8php.html#af4b48181ce773ef0cdfc972441445c34',1,'post.php']]], ['post_5fpost',['post_post',['../post_8php.html#af59e6a1dc22d19d9257b01cd7ccedb75',1,'post.php']]], + ['post_5fto_5fred_5fadmin',['post_to_red_admin',['../post__to__red_8php.html#aeec4125719184e7b097b3b9fba3101b5',1,'post_to_red.php']]], + ['post_5fto_5fred_5fdeactivate',['post_to_red_deactivate',['../post__to__red_8php.html#a49fd35f7b1cdddfe6e26ddfcf8d3c4ec',1,'post_to_red.php']]], + ['post_5fto_5fred_5fdisplay_5fadmin_5fpage',['post_to_red_display_admin_page',['../post__to__red_8php.html#a8ec8f8809e3c5d1b2c9598c8185d63aa',1,'post_to_red.php']]], + ['post_5fto_5fred_5fdisplayadmincontent',['post_to_red_displayAdminContent',['../post__to__red_8php.html#a75db5d87226a0287a0ac0fa315f2bcfd',1,'post_to_red.php']]], + ['post_5fto_5fred_5fget_5facct_5fname',['post_to_red_get_acct_name',['../post__to__red_8php.html#ae6f3a2c0561cbeacda5be565b06de8a7',1,'post_to_red.php']]], + ['post_5fto_5fred_5fget_5fpassword',['post_to_red_get_password',['../post__to__red_8php.html#a4d90ac085c14f53ff4d8ab4c23477ea6',1,'post_to_red.php']]], + ['post_5fto_5fred_5fget_5fseed_5flocation',['post_to_red_get_seed_location',['../post__to__red_8php.html#a96d0ccecb96600ef1bfd50ab3f77315f',1,'post_to_red.php']]], + ['post_5fto_5fred_5fget_5fuser_5fname',['post_to_red_get_user_name',['../post__to__red_8php.html#a9497cd6a80c6897dbbf9aabde62b53e7',1,'post_to_red.php']]], + ['post_5fto_5fred_5fpost',['post_to_red_post',['../post__to__red_8php.html#af5fd50e2c42ede85f8a9e8d9ee3cf540',1,'post_to_red.php']]], + ['post_5fto_5fred_5fpost_5fcheckbox',['post_to_red_post_checkbox',['../post__to__red_8php.html#a0f139dea77a94c98f26007963eea639c',1,'post_to_red.php']]], + ['post_5fto_5fred_5fpost_5ffield_5fdata',['post_to_red_post_field_data',['../post__to__red_8php.html#a7e68a8d9c83cb28d032aad3ea85ce0a6',1,'post_to_red.php']]], + ['post_5fto_5fred_5fpost_5fmeta_5fcontent',['post_to_red_post_meta_content',['../post__to__red_8php.html#aa97aeda12ef080665f16311a4e1eb901',1,'post_to_red.php']]], + ['post_5fto_5fred_5fsettings_5flink',['post_to_red_settings_link',['../post__to__red_8php.html#a906be8f72cf1aa2e199c0683ea6a4017',1,'post_to_red.php']]], ['post_5furl',['post_url',['../include_2network_8php.html#aa44d9e33a579d930e9e79c4ebb3d6b5e',1,'network.php']]], ['posted_5fdate_5fwidget',['posted_date_widget',['../items_8php.html#abe695dd89e1e10ed042c26b80114f0ed',1,'items.php']]], ['posted_5fdates',['posted_dates',['../items_8php.html#ad2abb4644ff1f20fefbc80326fe01cf0',1,'items.php']]], + ['preg_5fcallback_5fhelp_5finclude',['preg_callback_help_include',['../help_8php.html#a06b2a51aaabed99e53a9b639047c4ce4',1,'help.php']]], ['preg_5fheart',['preg_heart',['../text_8php.html#ac19d2b33a58372a357a43d51eed19162',1,'text.php']]], ['prepare_5fbody',['prepare_body',['../text_8php.html#ae4df74296fbe55051ed3c035e55205e5',1,'text.php']]], ['prepare_5fpage',['prepare_page',['../conversation_8php.html#a4b0888b0f26e1c284a4341fe5fd04f0c',1,'conversation.php']]], diff --git a/doc/html/search/functions_78.js b/doc/html/search/functions_78.js index 0f98f99b9..038aa6810 100644 --- a/doc/html/search/functions_78.js +++ b/doc/html/search/functions_78.js @@ -7,5 +7,6 @@ var searchData= ['xml2array',['xml2array',['../include_2network_8php.html#a99353baabbc3e0584b85eb79ee802cff',1,'network.php']]], ['xml_5fstatus',['xml_status',['../include_2network_8php.html#a9e9da2aafb806c98ecdc318604e60dc6',1,'network.php']]], ['xmlify',['xmlify',['../text_8php.html#aaed4413ed8918838b517e3b2fafaea0d',1,'text.php']]], + ['xpost_5fto_5fhtml2bbcode',['xpost_to_html2bbcode',['../post__to__red_8php.html#af2713018a2dc97e88f121fc6215beb66',1,'post_to_red.php']]], ['xrd_5finit',['xrd_init',['../xrd_8php.html#aee3cf087968e4a0ff3a87de16eb23270',1,'xrd.php']]] ]; diff --git a/doc/html/search/variables_24.js b/doc/html/search/variables_24.js index cca20bbe5..0947880f2 100644 --- a/doc/html/search/variables_24.js +++ b/doc/html/search/variables_24.js @@ -15,17 +15,19 @@ var searchData= ['_24banner_5fcolour',['$banner_colour',['../redbasic_2php_2style_8php.html#ae587aa6949ab6e4aa77a591e60f67ee0',1,'style.php']]], ['_24baseurl',['$baseurl',['../classApp.html#ad5175536561021548ae8188e24c7b80c',1,'App']]], ['_24bgcolour',['$bgcolour',['../redbasic_2php_2style_8php.html#a0bdce350cf14bac44976e786d1be6574',1,'style.php']]], + ['_24body_5ffont_5fsize',['$body_font_size',['../redbasic_2php_2style_8php.html#ad78cb8a1793834626d73aca22a1501f8',1,'style.php']]], ['_24cached_5fprofile_5fimage',['$cached_profile_image',['../classApp.html#abe0e4fa91097f7a6588e1213a834121c',1,'App']]], ['_24cached_5fprofile_5fpicdate',['$cached_profile_picdate',['../classApp.html#aab4a685d15a363bb1d7edbbc20bfb94e',1,'App']]], ['_24called_5fapi',['$called_api',['../include_2api_8php.html#aa62b15a6bbb280e86b98132eb214013d',1,'api.php']]], ['_24category',['$category',['../classApp.html#a5cfc098c061b7d765add58fd2ca97445',1,'App']]], - ['_24channel',['$channel',['../classApp.html#a050b0696118da47e8b30859ad1a2c149',1,'App\$channel()'],['../classItem.html#acc32426c0f465391be8a99ad810c7b8e',1,'Item\$channel()']]], + ['_24channel',['$channel',['../classApp.html#a050b0696118da47e8b30859ad1a2c149',1,'App\$channel()'],['../classItem.html#acc32426c0f465391be8a99ad810c7b8e',1,'Item\$channel()'],['../theme__init_8php.html#a54f32c086fe209c99769a4c4047dd864',1,'$channel(): theme_init.php']]], ['_24channel_5fid',['$channel_id',['../classRedDirectory.html#ae624dcaa4d73a517f4b1616d33df690d',1,'RedDirectory']]], ['_24children',['$children',['../classItem.html#a80dcd0fb7673776c0967839d429c2a0f',1,'Item']]], ['_24cid',['$cid',['../classApp.html#ad1c8eb91a6fd470b94f34b7fdad3a2d0',1,'App']]], ['_24cipher',['$cipher',['../classConversation.html#aa95c1a62af38bdfba7add9549bec083b',1,'Conversation']]], ['_24cmd',['$cmd',['../classApp.html#a495ec082c2719314e536070ca1ce073d',1,'App']]], ['_24comment_5fbox_5ftemplate',['$comment_box_template',['../classItem.html#a90743c8348b13213275c223bb9333aa0',1,'Item']]], + ['_24comment_5findent',['$comment_indent',['../redbasic_2php_2style_8php.html#a5bff5012c56e34da6b3b2ed475726b27',1,'style.php']]], ['_24commentable',['$commentable',['../classConversation.html#afd4965d22a6e4bfea2f35e931b3273c6',1,'Conversation\$commentable()'],['../classItem.html#aa2c221231ad0fc3720ccc1f00f0c6304',1,'Item\$commentable()']]], ['_24config',['$config',['../classApp.html#ac73dc90e4764497e2f1b7e6612c8fb88',1,'App']]], ['_24connected',['$connected',['../classdba__driver.html#a205f6535e399700b6fca2492f96f2229',1,'dba_driver']]], @@ -97,7 +99,11 @@ var searchData= ['_24perms',['$perms',['../classApp.html#ab47de68fa39806d1fb0976407e188b77',1,'App']]], ['_24phpath',['$phpath',['../typo_8php.html#a3ecd17ac846be1b35f3662f5c12ab6bd',1,'typo.php']]], ['_24phpfile',['$phpfile',['../php2po_8php.html#abbb0e5fd8fbc1f13a9bf68f86eb3d2a4',1,'php2po.php']]], + ['_24plugin',['$plugin',['../post__to__red_8php.html#ada8a7130088351710bb02ed622d6bf65',1,'post_to_red.php']]], + ['_24plugin_5fdir',['$plugin_dir',['../post__to__red_8php.html#a99811555b30bde504a863e44015f2f19',1,'post_to_red.php']]], ['_24plugins',['$plugins',['../classApp.html#ae9f96338f32187d308b67b980eea0008',1,'App']]], + ['_24pmenu_5freply',['$pmenu_reply',['../redbasic_2php_2style_8php.html#a9b489f1c595b867212d30eca0c85b38c',1,'style.php']]], + ['_24pmenu_5ftop',['$pmenu_top',['../redbasic_2php_2style_8php.html#ac98bd8264411bd207a5740d08e81a158',1,'style.php']]], ['_24pofile',['$pofile',['../php2po_8php.html#a401d84ce156e49e8168bd0c4781e1be1',1,'php2po.php']]], ['_24prepared_5fitem',['$prepared_item',['../classConversation.html#a5b6adbb2fe24f0f53d6c22660dff91b2',1,'Conversation']]], ['_24preview',['$preview',['../classConversation.html#ae9937f9e0f3d927acc2bed46cc72e9ae',1,'Conversation']]], @@ -111,6 +117,7 @@ var searchData= ['_24red_5fpath',['$red_path',['../classRedDirectory.html#acb32b8df27538c57772824a745e751d7',1,'RedDirectory']]], ['_24redirect_5furl',['$redirect_url',['../classItem.html#a5b561415861f5b89b0733aacfe0428d1',1,'Item']]], ['_24replace',['$replace',['../classTemplate.html#a4e86b566c3f728e95ce5db1b33665c10',1,'Template']]], + ['_24reply_5fphoto',['$reply_photo',['../redbasic_2php_2style_8php.html#a0b070f2c9140a7a12a0b1f88601a29e4',1,'style.php']]], ['_24res',['$res',['../docblox__errorchecker_8php.html#a49a8a4009b02e49717caa88b128affc5',1,'docblox_errorchecker.php']]], ['_24s',['$s',['../extract_8php.html#a50b05cf2e02ef0b67fcad97106dd7634',1,'extract.php']]], ['_24schema',['$schema',['../redbasic_2php_2style_8php.html#a83022b1d70799d2bde3d64dca9cb40ee',1,'style.php']]], @@ -137,6 +144,7 @@ var searchData= ['_24timezone',['$timezone',['../classApp.html#ab35b01a366a2ea95725e97af278f87ab',1,'App']]], ['_24toolicon_5factivecolour',['$toolicon_activecolour',['../redbasic_2php_2style_8php.html#acfd00ec469ca3c5e8bfac787573093f3',1,'style.php']]], ['_24toolicon_5fcolour',['$toolicon_colour',['../redbasic_2php_2style_8php.html#a4161f6b8aa923f67e53f54dfb6554cdb',1,'style.php']]], + ['_24top_5fphoto',['$top_photo',['../redbasic_2php_2style_8php.html#a810142b4bdd35a1d377ab279b02b47eb',1,'style.php']]], ['_24toplevel',['$toplevel',['../classItem.html#a5cfa6cf964f433a917a81cab079ff9d8',1,'Item']]], ['_24type',['$type',['../classphoto__driver.html#a4920ed7cbb1ac735ac84153067537f03',1,'photo_driver']]], ['_24types',['$types',['../classphoto__driver.html#a00cb166c00b7502dbc456c94330e5b03',1,'photo_driver']]], @@ -151,5 +159,6 @@ var searchData= ['_24widgets',['$widgets',['../classApp.html#aa5a87c46ab3fee21362c466bf78042ef',1,'App']]], ['_24width',['$width',['../classphoto__driver.html#a3e4215890f4a4894bf3799a7d2e0c0b1',1,'photo_driver\$width()'],['../minimalisticdarkness_8php.html#a5795120b4b324bc4ca83f1e6fdce7d57',1,'$width(): minimalisticdarkness.php']]], ['_24writable',['$writable',['../classConversation.html#ae81221251307e315f566a11f921ce0a9',1,'Conversation']]], + ['_24wwtop',['$wwtop',['../redbasic_2php_2style_8php.html#a61891d0d3e6894f52410d507b04e565d',1,'style.php']]], ['_24zones',['$zones',['../extract_8php.html#a0cbe524ffc9a496114fd7ba9f423ef44',1,'extract.php']]] ]; diff --git a/doc/html/search/variables_70.js b/doc/html/search/variables_70.js index 13097a52d..333736820 100644 --- a/doc/html/search/variables_70.js +++ b/doc/html/search/variables_70.js @@ -41,5 +41,8 @@ var searchData= ['poll_5fmultiple_5fchoice',['POLL_MULTIPLE_CHOICE',['../boot_8php.html#abbf5ac24eb8aeedb862f618ee0d21e86',1,'boot.php']]], ['poll_5foverwrite',['POLL_OVERWRITE',['../boot_8php.html#a2b525996e4426bdddbcec277778bde08',1,'boot.php']]], ['poll_5fsimple_5frating',['POLL_SIMPLE_RATING',['../boot_8php.html#ad88a70ec62e08d590123d3697dfe64d5',1,'boot.php']]], - ['poll_5ftenscale',['POLL_TENSCALE',['../boot_8php.html#a1ba00027b718db732f30fc0e2c3e0abc',1,'boot.php']]] + ['poll_5ftenscale',['POLL_TENSCALE',['../boot_8php.html#a1ba00027b718db732f30fc0e2c3e0abc',1,'boot.php']]], + ['post_5fto_5fred_5facct_5fname',['post_to_red_acct_name',['../post__to__red_8php.html#a588cea66afe0b32f27f2713d44940119',1,'post_to_red.php']]], + ['post_5fto_5fred_5fpath',['post_to_red_path',['../post__to__red_8php.html#a6210f39392a5f0fa0255cc7d3760493a',1,'post_to_red.php']]], + ['post_5fto_5fred_5fversion',['post_to_red_version',['../post__to__red_8php.html#af3e7ebd361d4ed7cb6d43209970cd94a',1,'post_to_red.php']]] ]; diff --git a/doc/html/text_8php.html b/doc/html/text_8php.html index 264044b48..052071915 100644 --- a/doc/html/text_8php.html +++ b/doc/html/text_8php.html @@ -1287,7 +1287,7 @@ Variables
    -

    Referenced by account_remove(), account_verify_password(), Item\add_child(), Conversation\add_thread(), advanced_profile(), aes_encapsulate(), allowed_public_recips(), api_call(), api_channel_stream(), api_export_basic(), api_favorites(), api_get_user(), api_login(), api_oauth_request_token(), api_statuses_destroy(), api_statuses_mediap(), api_statuses_repeat(), api_statuses_show(), api_statuses_update(), api_statuses_user_timeline(), attach_mkdir(), authenticate_success(), avatar_img(), base64url_decode(), build_sync_packet(), chanman_remove_everything_from_network(), channel_remove(), chanview_content(), check_config(), check_form_security_token_ForbiddenOnErr(), check_form_security_token_redirectOnErr(), consume_feed(), conversation(), create_account(), create_identity(), crepair_post(), cronhooks_run(), datetime_convert(), delete_imported_item(), deliver_run(), detect_language(), dfrn_deliver(), directory_content(), directory_run(), email_send(), encode_item(), expire_run(), feed_init(), fetch_lrdd_template(), fetch_xrd_links(), filer_content(), filerm_content(), fix_private_photos(), fix_system_urls(), get_atom_elements(), get_item_elements(), Conversation\get_template_data(), group_content(), guess_image_type(), head_set_icon(), http_status_exit(), import_author_xchan(), import_channel_photo(), import_directory_profile(), import_post(), import_profile_photo(), import_site(), import_xchan(), install_plugin(), item_expire(), item_post(), item_store(), item_store_update(), like_content(), limit_body_size(), load_plugin(), localize_item(), FKOAuth1\loginUser(), FKOAuthDataStore\lookup_consumer(), FKOAuthDataStore\lookup_token(), lrdd(), magic_init(), mail_store(), menu_edit(), message_post(), mini_group_select(), mood_init(), network_content(), FKOAuthDataStore\new_access_token(), new_contact(), new_keypair(), FKOAuthDataStore\new_request_token(), notification(), notifier_run(), onedirsync_run(), onepoll_run(), parse_url_content(), parse_xml_string(), photo_init(), photo_upload(), photos_post(), ping_init(), poco_init(), poco_load(), poke_init(), poller_run(), post_activity_item(), post_init(), post_post(), private_messages_list(), process_channel_sync_delivery(), process_delivery(), process_mail_delivery(), process_profile_delivery(), profile_load(), public_recips(), dba_mysql\q(), dba_mysqli\q(), q(), queue_run(), redir_init(), register_content(), reload_plugins(), Item\remove_child(), remove_community_tag(), remove_queue_item(), scale_external_images(), search_ac_init(), enotify\send(), send_reg_approval_email(), Conversation\set_mode(), stream_perms_api_uids(), stream_perms_xchans(), subthread_content(), sync_directories(), syncdirs(), tag_deliver(), tagger_content(), tgroup_check(), uninstall_plugin(), unload_plugin(), update_directory_entry(), update_imported_item(), update_queue_time(), RedBasicAuth\validateUserPass(), webfinger(), webfinger_dfrn(), xml2array(), xml_status(), z_fetch_url(), z_post_url(), zfinger_init(), zid_init(), zot_build_packet(), zot_fetch(), zot_finger(), zot_gethub(), zot_import(), zot_process_response(), zot_refresh(), and zot_register_hub().

    +

    Referenced by account_remove(), account_verify_password(), Item\add_child(), Conversation\add_thread(), advanced_profile(), aes_encapsulate(), allowed_public_recips(), api_call(), api_channel_stream(), api_export_basic(), api_favorites(), api_get_user(), api_login(), api_oauth_request_token(), api_statuses_destroy(), api_statuses_mediap(), api_statuses_repeat(), api_statuses_show(), api_statuses_update(), api_statuses_user_timeline(), attach_mkdir(), authenticate_success(), avatar_img(), base64url_decode(), build_sync_packet(), chanman_remove_everything_from_network(), channel_remove(), chanview_content(), check_config(), check_form_security_token_ForbiddenOnErr(), check_form_security_token_redirectOnErr(), consume_feed(), conversation(), create_account(), create_identity(), crepair_post(), cronhooks_run(), datetime_convert(), delete_imported_item(), deliver_run(), detect_language(), dfrn_deliver(), directory_content(), directory_run(), email_send(), encode_item(), expire_run(), feed_init(), fetch_lrdd_template(), fetch_xrd_links(), filer_content(), filerm_content(), fix_private_photos(), fix_system_urls(), get_atom_elements(), get_item_elements(), Conversation\get_template_data(), group_content(), guess_image_type(), head_set_icon(), http_status_exit(), import_author_xchan(), import_channel_photo(), import_directory_profile(), import_post(), import_profile_photo(), import_site(), import_xchan(), install_plugin(), item_expire(), item_post(), item_store(), item_store_update(), like_content(), limit_body_size(), load_plugin(), localize_item(), FKOAuth1\loginUser(), FKOAuthDataStore\lookup_consumer(), FKOAuthDataStore\lookup_token(), lrdd(), magic_init(), mail_store(), menu_edit(), message_post(), mini_group_select(), mood_init(), FKOAuthDataStore\new_access_token(), new_contact(), new_keypair(), FKOAuthDataStore\new_request_token(), notification(), notifier_run(), onedirsync_run(), onepoll_run(), parse_url_content(), parse_xml_string(), photo_init(), photo_upload(), photos_post(), ping_init(), poco_init(), poco_load(), poke_init(), poller_run(), post_activity_item(), post_init(), post_post(), private_messages_list(), process_channel_sync_delivery(), process_delivery(), process_mail_delivery(), process_profile_delivery(), profile_load(), public_recips(), dba_mysql\q(), dba_mysqli\q(), q(), queue_run(), redir_init(), register_content(), reload_plugins(), Item\remove_child(), remove_community_tag(), remove_queue_item(), scale_external_images(), search_ac_init(), enotify\send(), send_reg_approval_email(), Conversation\set_mode(), stream_perms_api_uids(), stream_perms_xchans(), subthread_content(), sync_directories(), syncdirs(), tag_deliver(), tagger_content(), tgroup_check(), uninstall_plugin(), unload_plugin(), update_directory_entry(), update_imported_item(), update_queue_time(), RedBasicAuth\validateUserPass(), webfinger(), webfinger_dfrn(), xml2array(), xml_status(), z_fetch_url(), z_post_url(), zfinger_init(), zid_init(), zot_build_packet(), zot_feed(), zot_fetch(), zot_finger(), zot_gethub(), zot_import(), zot_process_response(), zot_refresh(), zot_register_hub(), and zotfeed_init().

    @@ -1565,7 +1565,7 @@ Variables @@ -1772,7 +1772,7 @@ Variables
    Returns
    string substituted string
    -

    Referenced by admin_content(), admin_page_dbsync(), admin_page_hubloc(), admin_page_logs(), admin_page_plugins(), admin_page_site(), admin_page_summary(), admin_page_themes(), admin_page_users(), advanced_profile(), allfriends_content(), alt_pager(), api_apply_template(), api_content(), apps_content(), apw_form(), blocks_content(), App\build_pagehead(), categories_widget(), channel_content(), chanview_content(), check_config(), check_php(), common_content(), common_friends_visitor_widget(), connect_content(), connections_content(), construct_page(), contact_block(), conversation(), crepair_content(), delegate_content(), design_tools(), dir_safe_mode(), dir_sort_links(), directory_content(), display_content(), editblock_content(), editlayout_content(), editpost_content(), editwebpage_content(), events_content(), fbrowser_content(), field_timezone(), fileas_widget(), filer_content(), filestorage_content(), findpeople_widget(), follow_widget(), format_categories(), format_filer(), get_birthdays(), Item\get_comment_box(), get_events(), get_feed_for(), group_content(), group_side(), help_content(), hostxrd_init(), import_content(), intro_content(), invite_content(), lang_selector(), lastpost_content(), layouts_content(), login(), lostpass_content(), lostpass_post(), manage_content(), match_content(), menu_content(), menu_render(), message_aside(), message_content(), micropro(), mini_group_select(), mitem_content(), mood_content(), nav(), network_content(), new_channel_content(), nogroup_content(), notification(), notifications_content(), notify_content(), oembed_format_object(), oexchange_init(), opensearch_init(), pagelist_widget(), photos_album_widget(), photos_content(), poco_init(), poke_content(), populate_acl(), posted_date_widget(), profile_sidebar(), profile_tabs(), profiles_content(), redbasic_form(), register_content(), removeme_content(), rmagic_content(), rpost_content(), saved_searches(), search_content(), send_reg_approval_email(), send_verification_email(), settings_aside(), setup_content(), setup_post(), siteinfo_content(), sources_content(), suggest_content(), theme_attachments(), thing_content(), user_allow(), vcard_from_xchan(), viewconnections_content(), vote_content(), webpages_content(), writepages_widget(), and xrd_init().

    +

    Referenced by admin_content(), admin_page_dbsync(), admin_page_hubloc(), admin_page_logs(), admin_page_plugins(), admin_page_site(), admin_page_summary(), admin_page_themes(), admin_page_users(), advanced_profile(), allfriends_content(), alt_pager(), api_apply_template(), api_content(), apps_content(), apw_form(), blocks_content(), App\build_pagehead(), categories_widget(), channel_content(), chanview_content(), check_config(), check_php(), common_content(), common_friends_visitor_widget(), connect_content(), connections_content(), construct_page(), contact_block(), conversation(), crepair_content(), delegate_content(), design_tools(), dir_safe_mode(), dir_sort_links(), directory_content(), display_content(), editblock_content(), editlayout_content(), editpost_content(), editwebpage_content(), events_content(), fbrowser_content(), field_timezone(), fileas_widget(), filer_content(), filestorage_content(), findpeople_widget(), follow_widget(), format_categories(), format_filer(), get_birthdays(), Item\get_comment_box(), get_events(), get_feed_for(), group_content(), group_side(), help_content(), hostxrd_init(), import_content(), intro_content(), invite_content(), lang_selector(), lastpost_content(), layouts_content(), login(), lostpass_content(), lostpass_post(), manage_content(), match_content(), menu_content(), menu_render(), message_aside(), message_content(), micropro(), mini_group_select(), mitem_content(), mood_content(), nav(), network_content(), new_channel_content(), nogroup_content(), notification(), notifications_content(), notify_content(), oembed_format_object(), oexchange_init(), opensearch_init(), pagelist_widget(), photos_album_widget(), photos_content(), poco_init(), poke_content(), populate_acl(), posted_date_widget(), profile_sidebar(), profile_tabs(), profiles_content(), redbasic_form(), register_content(), removeme_content(), rmagic_content(), rpost_content(), saved_searches(), search_content(), send_reg_approval_email(), send_verification_email(), settings_aside(), setup_content(), setup_post(), siteinfo_content(), sources_content(), suggest_content(), theme_attachments(), thing_content(), user_allow(), vcard_from_xchan(), viewconnections_content(), vote_content(), webpages_content(), writepages_widget(), and xrd_init().

    diff --git a/doc/html/theme__init_8php.html b/doc/html/theme__init_8php.html index dc0daa242..262bf0941 100644 --- a/doc/html/theme__init_8php.html +++ b/doc/html/theme__init_8php.html @@ -103,10 +103,34 @@ $(document).ready(function(){initNavTree('theme__init_8php.html','');});
    +
    theme_init.php File Reference
    + + + + +

    +Variables

     $channel = get_app()->get_channel()
     
    +

    Variable Documentation

    + +
    +
    + + + + +
    $channel = get_app()->get_channel()
    +
    +

    Those who require this feature will know what to do with it. Those who don't, won't. Eventually this functionality needs to be provided by a module such that permissions can be enforced. At the moment it's more of a proof of concept; but sufficient for our immediate needs.

    + +

    Referenced by api_call(), api_user(), attach_mkdir(), attach_store(), blocks_content(), build_sync_packet(), channel_content(), channel_init(), channel_remove(), connections_content(), connections_init(), connections_post(), conversation(), design_tools(), directory_run(), display_content(), editblock_content(), editlayout_content(), editpost_content(), editwebpage_content(), events_content(), events_post(), feed_init(), fix_attached_file_permissions(), fix_system_urls(), get_feed_for(), get_public_feed(), import_post(), invite_content(), item_photo_menu(), item_post(), item_store(), item_store_update(), items_fetch(), lastpost_content(), lastpost_init(), layouts_content(), magic_init(), message_content(), message_post(), mitem_post(), mood_init(), nav(), network_content(), network_init(), new_contact(), notifier_run(), photo_upload(), photos_albums_list(), photos_create_item(), photos_list_photos(), ping_init(), poke_init(), post_activity_item(), probe_content(), process_channel_sync_delivery(), process_delivery(), process_mail_delivery(), profile_init(), profile_photo_init(), profile_photo_post(), profile_tabs(), profiles_post(), rpost_content(), send_message(), settings_aside(), settings_post(), sources_post(), tagger_content(), thing_init(), uexport_init(), wall_attach_post(), wall_upload_post(), webpages_content(), wfinger_init(), zot_build_packet(), zot_finger(), and zot_refresh().

    + +
    +
    diff --git a/doc/html/theme__init_8php.js b/doc/html/theme__init_8php.js new file mode 100644 index 000000000..5500e5a4f --- /dev/null +++ b/doc/html/theme__init_8php.js @@ -0,0 +1,4 @@ +var theme__init_8php = +[ + [ "$channel", "theme__init_8php.html#a54f32c086fe209c99769a4c4047dd864", null ] +]; \ No newline at end of file From 34f8b215114f1041094784c9f931d185b78b0ec2 Mon Sep 17 00:00:00 2001 From: friendica Date: Fri, 22 Nov 2013 11:52:38 -0800 Subject: [PATCH 059/271] init_groups_visitor() was still using old array of id output (not the newer array of hash which we need for permission queries) --- include/security.php | 4 +- util/messages.po | 796 ++++++++++++++++++++-------------------- version.inc | 2 +- view/php/theme_init.php | 3 + 4 files changed, 402 insertions(+), 403 deletions(-) diff --git a/include/security.php b/include/security.php index 1181e6bf2..296fa450f 100644 --- a/include/security.php +++ b/include/security.php @@ -386,12 +386,12 @@ function check_form_security_token_ForbiddenOnErr($typename = '', $formname = 'f if(! function_exists('init_groups_visitor')) { function init_groups_visitor($contact_id) { $groups = array(); - $r = q("SELECT gid FROM group_member WHERE xchan = '%s' ", + $r = q("SELECT hash FROM `group` left join group_member on group.id = group_member.gid WHERE xchan = '%s' ", dbesc($contact_id) ); if(count($r)) { foreach($r as $rr) - $groups[] = $rr['gid']; + $groups[] = $rr['hash']; } return $groups; }} diff --git a/util/messages.po b/util/messages.po index d53d35f3a..958d9e046 100644 --- a/util/messages.po +++ b/util/messages.po @@ -6,9 +6,9 @@ #, fuzzy msgid "" msgstr "" -"Project-Id-Version: 2013-11-15.498\n" +"Project-Id-Version: 2013-11-22.505\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2013-11-15 00:03-0800\n" +"POT-Creation-Date: 2013-11-22 00:02-0800\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: FULL NAME \n" "Language-Team: LANGUAGE \n" @@ -61,6 +61,10 @@ msgstr "" msgid "Red Matrix Notification" msgstr "" +#: ../../include/enotify.php:37 +msgid "redmatrix" +msgstr "" + #: ../../include/enotify.php:39 msgid "Thank You," msgstr "" @@ -82,7 +86,7 @@ msgstr "" #: ../../include/enotify.php:82 #, php-format -msgid "%1$s sent you a new private message at %2$s." +msgid "%1$s, %2$s sent you a new private message at %3$s." msgstr "" #: ../../include/enotify.php:83 @@ -153,7 +157,7 @@ msgstr "" #: ../../include/enotify.php:201 #, php-format -msgid "%1$s tagged you at %2$s" +msgid "%1$s, %2$s tagged you at %3$s" msgstr "" #: ../../include/enotify.php:202 @@ -168,7 +172,7 @@ msgstr "" #: ../../include/enotify.php:215 #, php-format -msgid "%1$s poked you at %2$s" +msgid "%1$s, %2$s poked you at %3$s" msgstr "" #: ../../include/enotify.php:216 @@ -247,7 +251,7 @@ msgid "Private Message" msgstr "" #: ../../include/ItemObject.php:95 ../../include/page_widgets.php:8 -#: ../../mod/webpages.php:101 ../../mod/settings.php:712 ../../mod/menu.php:55 +#: ../../mod/webpages.php:101 ../../mod/settings.php:713 ../../mod/menu.php:55 #: ../../mod/layouts.php:102 ../../mod/editlayout.php:100 #: ../../mod/editwebpage.php:119 ../../mod/blocks.php:93 #: ../../mod/editpost.php:97 ../../mod/editblock.php:114 @@ -255,8 +259,8 @@ msgid "Edit" msgstr "" #: ../../include/ItemObject.php:107 ../../include/conversation.php:628 -#: ../../mod/settings.php:713 ../../mod/admin.php:677 ../../mod/group.php:182 -#: ../../mod/photos.php:1130 ../../mod/connections.php:354 +#: ../../mod/settings.php:714 ../../mod/admin.php:686 ../../mod/group.php:182 +#: ../../mod/photos.php:1130 ../../mod/connections.php:374 #: ../../mod/filestorage.php:82 msgid "Delete" msgstr "" @@ -380,20 +384,20 @@ msgstr "" #: ../../include/ItemObject.php:530 ../../mod/events.php:458 #: ../../mod/thing.php:190 ../../mod/invite.php:154 ../../mod/setup.php:302 -#: ../../mod/setup.php:345 ../../mod/settings.php:650 -#: ../../mod/settings.php:762 ../../mod/settings.php:790 -#: ../../mod/settings.php:814 ../../mod/settings.php:885 -#: ../../mod/settings.php:1053 ../../mod/connect.php:96 +#: ../../mod/setup.php:345 ../../mod/settings.php:651 +#: ../../mod/settings.php:763 ../../mod/settings.php:791 +#: ../../mod/settings.php:815 ../../mod/settings.php:886 +#: ../../mod/settings.php:1054 ../../mod/connect.php:96 #: ../../mod/sources.php:83 ../../mod/sources.php:110 ../../mod/admin.php:418 -#: ../../mod/admin.php:670 ../../mod/admin.php:810 ../../mod/admin.php:1009 -#: ../../mod/admin.php:1096 ../../mod/group.php:87 ../../mod/photos.php:685 +#: ../../mod/admin.php:679 ../../mod/admin.php:819 ../../mod/admin.php:1018 +#: ../../mod/admin.php:1105 ../../mod/group.php:87 ../../mod/photos.php:685 #: ../../mod/photos.php:779 ../../mod/photos.php:1040 #: ../../mod/photos.php:1080 ../../mod/photos.php:1167 #: ../../mod/message.php:333 ../../mod/message.php:515 -#: ../../mod/connections.php:432 ../../mod/profiles.php:529 +#: ../../mod/connections.php:452 ../../mod/profiles.php:529 #: ../../mod/import.php:385 ../../mod/crepair.php:166 ../../mod/poke.php:166 #: ../../mod/fsuggest.php:108 ../../mod/mood.php:137 -#: ../../view/theme/redbasic/php/config.php:79 +#: ../../view/theme/redbasic/php/config.php:85 #: ../../view/theme/apw/php/config.php:231 msgid "Submit" msgstr "" @@ -445,7 +449,7 @@ msgstr "" #: ../../include/Contact.php:87 ../../include/contact_widgets.php:23 #: ../../mod/match.php:58 ../../mod/suggest.php:56 ../../mod/directory.php:198 -#: ../../boot.php:1745 +#: ../../boot.php:1741 msgid "Connect" msgstr "" @@ -466,8 +470,8 @@ msgid "View Status" msgstr "" #: ../../include/Contact.php:526 ../../include/nav.php:76 -#: ../../include/conversation.php:925 ../../mod/connections.php:307 -#: ../../mod/connections.php:421 +#: ../../include/conversation.php:925 ../../mod/connections.php:327 +#: ../../mod/connections.php:441 msgid "View Profile" msgstr "" @@ -547,8 +551,8 @@ msgstr "" msgid "RSS/Atom" msgstr "" -#: ../../include/contact_selectors.php:77 ../../mod/admin.php:673 -#: ../../mod/admin.php:682 ../../boot.php:1465 +#: ../../include/contact_selectors.php:77 ../../mod/admin.php:682 +#: ../../mod/admin.php:691 ../../boot.php:1461 msgid "Email" msgstr "" @@ -667,7 +671,7 @@ msgid "Finishes:" msgstr "" #: ../../include/event.php:40 ../../include/bb2diaspora.php:455 -#: ../../mod/events.php:450 ../../mod/directory.php:173 ../../boot.php:1795 +#: ../../mod/events.php:450 ../../mod/directory.php:173 ../../boot.php:1791 msgid "Location:" msgstr "" @@ -827,14 +831,6 @@ msgstr "" msgid "Post/Comment Tools" msgstr "" -#: ../../include/features.php:56 -msgid "Multiple Deletion" -msgstr "" - -#: ../../include/features.php:56 -msgid "Select and delete multiple posts/comments at once" -msgstr "" - #: ../../include/features.php:57 msgid "Edit Sent Posts" msgstr "" @@ -1059,12 +1055,12 @@ msgstr "" msgid "Profile" msgstr "" -#: ../../include/profile_advanced.php:15 ../../mod/settings.php:1061 +#: ../../include/profile_advanced.php:15 ../../mod/settings.php:1062 msgid "Full Name:" msgstr "" #: ../../include/profile_advanced.php:17 ../../mod/directory.php:175 -#: ../../boot.php:1797 +#: ../../boot.php:1793 msgid "Gender:" msgstr "" @@ -1085,7 +1081,7 @@ msgid "Age:" msgstr "" #: ../../include/profile_advanced.php:37 ../../mod/directory.php:177 -#: ../../boot.php:1798 +#: ../../boot.php:1794 msgid "Status:" msgstr "" @@ -1099,7 +1095,7 @@ msgid "Sexual Preference:" msgstr "" #: ../../include/profile_advanced.php:48 ../../mod/directory.php:179 -#: ../../boot.php:1799 +#: ../../boot.php:1795 msgid "Homepage:" msgstr "" @@ -1503,7 +1499,7 @@ msgstr "" msgid "Pages" msgstr "" -#: ../../include/identity.php:14 ../../mod/item.php:1131 +#: ../../include/identity.php:14 ../../mod/item.php:1123 msgid "Unable to obtain identity information from database" msgstr "" @@ -1537,7 +1533,7 @@ msgid "Default Profile" msgstr "" #: ../../include/identity.php:245 ../../include/profile_selectors.php:42 -#: ../../mod/network.php:387 ../../mod/connections.php:387 +#: ../../mod/network.php:387 ../../mod/connections.php:407 msgid "Friends" msgstr "" @@ -1585,17 +1581,17 @@ msgstr "" #: ../../include/attach.php:204 ../../include/attach.php:237 #: ../../include/attach.php:251 ../../include/attach.php:272 #: ../../include/attach.php:464 ../../include/attach.php:539 -#: ../../include/items.php:3572 ../../mod/common.php:43 +#: ../../include/items.php:3582 ../../mod/common.php:43 #: ../../mod/events.php:134 ../../mod/invite.php:13 ../../mod/invite.php:102 #: ../../mod/allfriends.php:10 ../../mod/webpages.php:40 ../../mod/api.php:26 #: ../../mod/api.php:31 ../../mod/lastpost.php:93 ../../mod/page.php:30 -#: ../../mod/page.php:80 ../../mod/setup.php:200 ../../mod/settings.php:627 +#: ../../mod/page.php:80 ../../mod/setup.php:200 ../../mod/settings.php:628 #: ../../mod/viewconnections.php:33 ../../mod/viewconnections.php:38 #: ../../mod/delegate.php:6 ../../mod/sources.php:48 ../../mod/mitem.php:92 #: ../../mod/group.php:15 ../../mod/photos.php:74 ../../mod/photos.php:654 #: ../../mod/viewsrc.php:12 ../../mod/menu.php:40 ../../mod/message.php:208 #: ../../mod/layouts.php:27 ../../mod/layouts.php:42 ../../mod/network.php:7 -#: ../../mod/intro.php:50 ../../mod/connections.php:177 +#: ../../mod/intro.php:50 ../../mod/connections.php:197 #: ../../mod/profiles.php:163 ../../mod/profiles.php:476 #: ../../mod/new_channel.php:66 ../../mod/new_channel.php:97 #: ../../mod/filestorage.php:26 ../../mod/manage.php:6 @@ -1606,7 +1602,7 @@ msgstr "" #: ../../mod/blocks.php:29 ../../mod/blocks.php:44 ../../mod/editpost.php:13 #: ../../mod/poke.php:128 ../../mod/channel.php:123 ../../mod/fsuggest.php:78 #: ../../mod/editblock.php:48 ../../mod/item.php:173 ../../mod/item.php:181 -#: ../../mod/suggest.php:32 ../../mod/register.php:60 ../../mod/regmod.php:18 +#: ../../mod/suggest.php:32 ../../mod/register.php:68 ../../mod/regmod.php:18 #: ../../mod/mood.php:114 ../../index.php:178 ../../index.php:340 msgid "Permission denied." msgstr "" @@ -1628,7 +1624,7 @@ msgstr "" msgid "Photo storage failed." msgstr "" -#: ../../include/photos.php:288 ../../boot.php:2246 +#: ../../include/photos.php:288 ../../boot.php:2242 msgid "Photo Albums" msgstr "" @@ -1923,20 +1919,20 @@ msgstr "" msgid "database storage failed." msgstr "" -#: ../../include/zot.php:426 +#: ../../include/zot.php:438 msgid "Invalid data packet" msgstr "" -#: ../../include/zot.php:436 +#: ../../include/zot.php:448 msgid "Unable to verify channel signature" msgstr "" -#: ../../include/zot.php:582 +#: ../../include/zot.php:594 #, php-format msgid "Unable to verify site signature for %s" msgstr "" -#: ../../include/nav.php:72 ../../include/nav.php:87 ../../boot.php:1462 +#: ../../include/nav.php:72 ../../include/nav.php:87 ../../boot.php:1458 msgid "Logout" msgstr "" @@ -1964,7 +1960,7 @@ msgstr "" msgid "Manage/Edit Profiles" msgstr "" -#: ../../include/nav.php:79 ../../mod/fbrowser.php:25 ../../boot.php:2243 +#: ../../include/nav.php:79 ../../mod/fbrowser.php:25 ../../boot.php:2239 msgid "Photos" msgstr "" @@ -1972,7 +1968,7 @@ msgstr "" msgid "Your photos" msgstr "" -#: ../../include/nav.php:85 ../../boot.php:1463 +#: ../../include/nav.php:85 ../../boot.php:1459 msgid "Login" msgstr "" @@ -1993,7 +1989,7 @@ msgstr "" msgid "Home Page" msgstr "" -#: ../../include/nav.php:125 ../../mod/register.php:187 ../../boot.php:1439 +#: ../../include/nav.php:125 ../../mod/register.php:195 ../../boot.php:1435 msgid "Register" msgstr "" @@ -2001,7 +1997,7 @@ msgstr "" msgid "Create an account" msgstr "" -#: ../../include/nav.php:130 ../../mod/help.php:34 +#: ../../include/nav.php:130 ../../mod/help.php:45 ../../mod/help.php:49 msgid "Help" msgstr "" @@ -2065,7 +2061,7 @@ msgstr "" msgid "Intros" msgstr "" -#: ../../include/nav.php:158 ../../mod/connections.php:565 +#: ../../include/nav.php:158 ../../mod/connections.php:585 msgid "New Connections" msgstr "" @@ -2117,7 +2113,7 @@ msgstr "" msgid "New Message" msgstr "" -#: ../../include/nav.php:174 ../../mod/events.php:348 ../../boot.php:2254 +#: ../../include/nav.php:174 ../../mod/events.php:348 ../../boot.php:2250 msgid "Events" msgstr "" @@ -2142,7 +2138,7 @@ msgid "Manage Your Channels" msgstr "" #: ../../include/nav.php:180 ../../mod/settings.php:131 -#: ../../mod/admin.php:769 ../../mod/admin.php:974 +#: ../../mod/admin.php:778 ../../mod/admin.php:983 msgid "Settings" msgstr "" @@ -2150,7 +2146,7 @@ msgstr "" msgid "Account/Channel Settings" msgstr "" -#: ../../include/nav.php:182 ../../mod/connections.php:671 +#: ../../include/nav.php:182 ../../mod/connections.php:691 msgid "Connections" msgstr "" @@ -2282,7 +2278,7 @@ msgstr "" msgid "Examples: Robert Morgenstein, Fishing" msgstr "" -#: ../../include/contact_widgets.php:48 ../../mod/connections.php:677 +#: ../../include/contact_widgets.php:48 ../../mod/connections.php:697 #: ../../mod/directory.php:221 ../../mod/directory.php:226 msgid "Find" msgstr "" @@ -2474,7 +2470,7 @@ msgstr "" msgid "This action is not available under your subscription plan." msgstr "" -#: ../../include/comanche.php:35 ../../view/theme/redbasic/php/config.php:56 +#: ../../include/comanche.php:35 ../../view/theme/redbasic/php/config.php:62 #: ../../view/theme/apw/php/config.php:176 msgid "Default" msgstr "" @@ -2763,25 +2759,25 @@ msgstr "" msgid "Permission denied" msgstr "" -#: ../../include/items.php:3521 ../../mod/admin.php:150 -#: ../../mod/admin.php:714 ../../mod/admin.php:917 ../../mod/viewsrc.php:18 +#: ../../include/items.php:3531 ../../mod/admin.php:150 +#: ../../mod/admin.php:723 ../../mod/admin.php:926 ../../mod/viewsrc.php:18 #: ../../mod/home.php:64 ../../mod/display.php:32 msgid "Item not found." msgstr "" -#: ../../include/items.php:3693 +#: ../../include/items.php:3703 msgid "Archives" msgstr "" -#: ../../include/items.php:3854 ../../mod/group.php:44 ../../mod/group.php:146 +#: ../../include/items.php:3869 ../../mod/group.php:44 ../../mod/group.php:146 msgid "Collection not found." msgstr "" -#: ../../include/items.php:3870 ../../mod/network.php:469 +#: ../../include/items.php:3885 ../../mod/network.php:469 msgid "Group is empty" msgstr "" -#: ../../include/items.php:3886 +#: ../../include/items.php:3901 msgid "Connection not found." msgstr "" @@ -3024,7 +3020,7 @@ msgstr "" #: ../../mod/webpages.php:8 ../../mod/connect.php:13 ../../mod/layouts.php:8 #: ../../mod/filestorage.php:8 ../../mod/blocks.php:10 ../../mod/profile.php:8 -#: ../../boot.php:1644 +#: ../../boot.php:1640 msgid "Requested profile is not available." msgstr "" @@ -3051,17 +3047,17 @@ msgid "" "and/or create new posts for you?" msgstr "" -#: ../../mod/api.php:105 ../../mod/settings.php:1008 -#: ../../mod/settings.php:1013 ../../mod/settings.php:1036 -#: ../../mod/settings.php:1038 ../../mod/settings.php:1039 -#: ../../mod/settings.php:1040 ../../mod/profiles.php:506 +#: ../../mod/api.php:105 ../../mod/settings.php:1009 +#: ../../mod/settings.php:1014 ../../mod/settings.php:1037 +#: ../../mod/settings.php:1039 ../../mod/settings.php:1040 +#: ../../mod/settings.php:1041 ../../mod/profiles.php:506 msgid "Yes" msgstr "" -#: ../../mod/api.php:106 ../../mod/settings.php:1008 -#: ../../mod/settings.php:1013 ../../mod/settings.php:1036 -#: ../../mod/settings.php:1038 ../../mod/settings.php:1039 -#: ../../mod/settings.php:1040 ../../mod/profiles.php:507 +#: ../../mod/api.php:106 ../../mod/settings.php:1009 +#: ../../mod/settings.php:1014 ../../mod/settings.php:1037 +#: ../../mod/settings.php:1039 ../../mod/settings.php:1040 +#: ../../mod/settings.php:1041 ../../mod/profiles.php:507 msgid "No" msgstr "" @@ -3082,11 +3078,11 @@ msgid "Invalid item." msgstr "" #: ../../mod/page.php:47 ../../mod/chanview.php:78 ../../mod/home.php:51 -#: ../../mod/magic.php:77 ../../mod/wall_upload.php:35 +#: ../../mod/magic.php:95 ../../mod/wall_upload.php:35 msgid "Channel not found." msgstr "" -#: ../../mod/page.php:83 ../../mod/help.php:41 ../../mod/display.php:92 +#: ../../mod/page.php:83 ../../mod/help.php:56 ../../mod/display.php:92 #: ../../index.php:229 msgid "Page not found." msgstr "" @@ -3429,7 +3425,7 @@ msgid "" "IMPORTANT: You will need to [manually] setup a scheduled task for the poller." msgstr "" -#: ../../mod/rpost.php:83 ../../mod/editpost.php:42 +#: ../../mod/rpost.php:84 ../../mod/editpost.php:42 msgid "Edit post" msgstr "" @@ -3497,7 +3493,7 @@ msgstr "" msgid "Key and Secret are required" msgstr "" -#: ../../mod/settings.php:179 ../../mod/settings.php:676 +#: ../../mod/settings.php:179 ../../mod/settings.php:677 msgid "Update" msgstr "" @@ -3529,380 +3525,380 @@ msgstr "" msgid "System failure storing new email. Please try again." msgstr "" -#: ../../mod/settings.php:578 +#: ../../mod/settings.php:579 msgid "Settings updated." msgstr "" -#: ../../mod/settings.php:649 ../../mod/settings.php:675 -#: ../../mod/settings.php:711 +#: ../../mod/settings.php:650 ../../mod/settings.php:676 +#: ../../mod/settings.php:712 msgid "Add application" msgstr "" -#: ../../mod/settings.php:651 ../../mod/settings.php:677 +#: ../../mod/settings.php:652 ../../mod/settings.php:678 #: ../../mod/tagrm.php:11 ../../mod/tagrm.php:94 ../../mod/fbrowser.php:82 #: ../../mod/fbrowser.php:117 msgid "Cancel" msgstr "" -#: ../../mod/settings.php:652 ../../mod/settings.php:678 -#: ../../mod/admin.php:673 ../../mod/crepair.php:148 +#: ../../mod/settings.php:653 ../../mod/settings.php:679 +#: ../../mod/admin.php:682 ../../mod/crepair.php:148 msgid "Name" msgstr "" -#: ../../mod/settings.php:652 +#: ../../mod/settings.php:653 msgid "Name of application" msgstr "" -#: ../../mod/settings.php:653 ../../mod/settings.php:679 +#: ../../mod/settings.php:654 ../../mod/settings.php:680 msgid "Consumer Key" msgstr "" -#: ../../mod/settings.php:653 ../../mod/settings.php:654 +#: ../../mod/settings.php:654 ../../mod/settings.php:655 msgid "Automatically generated - change if desired. Max length 20" msgstr "" -#: ../../mod/settings.php:654 ../../mod/settings.php:680 +#: ../../mod/settings.php:655 ../../mod/settings.php:681 msgid "Consumer Secret" msgstr "" -#: ../../mod/settings.php:655 ../../mod/settings.php:681 +#: ../../mod/settings.php:656 ../../mod/settings.php:682 msgid "Redirect" msgstr "" -#: ../../mod/settings.php:655 +#: ../../mod/settings.php:656 msgid "" "Redirect URI - leave blank unless your application specifically requires this" msgstr "" -#: ../../mod/settings.php:656 ../../mod/settings.php:682 +#: ../../mod/settings.php:657 ../../mod/settings.php:683 msgid "Icon url" msgstr "" -#: ../../mod/settings.php:656 +#: ../../mod/settings.php:657 msgid "Optional" msgstr "" -#: ../../mod/settings.php:667 +#: ../../mod/settings.php:668 msgid "You can't edit this application." msgstr "" -#: ../../mod/settings.php:710 +#: ../../mod/settings.php:711 msgid "Connected Apps" msgstr "" -#: ../../mod/settings.php:714 +#: ../../mod/settings.php:715 msgid "Client key starts with" msgstr "" -#: ../../mod/settings.php:715 +#: ../../mod/settings.php:716 msgid "No name" msgstr "" -#: ../../mod/settings.php:716 +#: ../../mod/settings.php:717 msgid "Remove authorization" msgstr "" -#: ../../mod/settings.php:727 +#: ../../mod/settings.php:728 msgid "No feature settings configured" msgstr "" -#: ../../mod/settings.php:735 +#: ../../mod/settings.php:736 msgid "Feature Settings" msgstr "" -#: ../../mod/settings.php:758 +#: ../../mod/settings.php:759 msgid "Account Settings" msgstr "" -#: ../../mod/settings.php:759 +#: ../../mod/settings.php:760 msgid "Password Settings" msgstr "" -#: ../../mod/settings.php:760 +#: ../../mod/settings.php:761 msgid "New Password:" msgstr "" -#: ../../mod/settings.php:761 +#: ../../mod/settings.php:762 msgid "Confirm:" msgstr "" -#: ../../mod/settings.php:761 +#: ../../mod/settings.php:762 msgid "Leave password fields blank unless changing" msgstr "" -#: ../../mod/settings.php:763 ../../mod/settings.php:1062 +#: ../../mod/settings.php:764 ../../mod/settings.php:1063 msgid "Email Address:" msgstr "" -#: ../../mod/settings.php:764 +#: ../../mod/settings.php:765 msgid "Remove Account" msgstr "" -#: ../../mod/settings.php:765 +#: ../../mod/settings.php:766 msgid "Warning: This action is permanent and cannot be reversed." msgstr "" -#: ../../mod/settings.php:781 +#: ../../mod/settings.php:782 msgid "Off" msgstr "" -#: ../../mod/settings.php:781 +#: ../../mod/settings.php:782 msgid "On" msgstr "" -#: ../../mod/settings.php:788 +#: ../../mod/settings.php:789 msgid "Additional Features" msgstr "" -#: ../../mod/settings.php:813 +#: ../../mod/settings.php:814 msgid "Connector Settings" msgstr "" -#: ../../mod/settings.php:843 ../../mod/admin.php:369 +#: ../../mod/settings.php:844 ../../mod/admin.php:369 msgid "No special theme for mobile devices" msgstr "" -#: ../../mod/settings.php:883 +#: ../../mod/settings.php:884 msgid "Display Settings" msgstr "" -#: ../../mod/settings.php:889 +#: ../../mod/settings.php:890 msgid "Display Theme:" msgstr "" -#: ../../mod/settings.php:890 +#: ../../mod/settings.php:891 msgid "Mobile Theme:" msgstr "" -#: ../../mod/settings.php:891 +#: ../../mod/settings.php:892 msgid "Update browser every xx seconds" msgstr "" -#: ../../mod/settings.php:891 +#: ../../mod/settings.php:892 msgid "Minimum of 10 seconds, no maximum" msgstr "" -#: ../../mod/settings.php:892 +#: ../../mod/settings.php:893 msgid "Maximum number of conversations to load at any time:" msgstr "" -#: ../../mod/settings.php:892 +#: ../../mod/settings.php:893 msgid "Maximum of 100 items" msgstr "" -#: ../../mod/settings.php:893 +#: ../../mod/settings.php:894 msgid "Don't show emoticons" msgstr "" -#: ../../mod/settings.php:929 +#: ../../mod/settings.php:930 msgid "Nobody except yourself" msgstr "" -#: ../../mod/settings.php:930 +#: ../../mod/settings.php:931 msgid "Only those you specifically allow" msgstr "" -#: ../../mod/settings.php:931 +#: ../../mod/settings.php:932 msgid "Anybody in your address book" msgstr "" -#: ../../mod/settings.php:932 +#: ../../mod/settings.php:933 msgid "Anybody on this website" msgstr "" -#: ../../mod/settings.php:933 +#: ../../mod/settings.php:934 msgid "Anybody in this network" msgstr "" -#: ../../mod/settings.php:934 +#: ../../mod/settings.php:935 msgid "Anybody on the internet" msgstr "" -#: ../../mod/settings.php:1008 +#: ../../mod/settings.php:1009 msgid "Publish your default profile in the network directory" msgstr "" -#: ../../mod/settings.php:1013 +#: ../../mod/settings.php:1014 msgid "Allow us to suggest you as a potential friend to new members?" msgstr "" -#: ../../mod/settings.php:1017 ../../mod/profile_photo.php:298 +#: ../../mod/settings.php:1018 ../../mod/profile_photo.php:298 msgid "or" msgstr "" -#: ../../mod/settings.php:1022 +#: ../../mod/settings.php:1023 msgid "Your channel address is" msgstr "" -#: ../../mod/settings.php:1033 +#: ../../mod/settings.php:1034 msgid "Automatically expire posts after this many days:" msgstr "" -#: ../../mod/settings.php:1033 +#: ../../mod/settings.php:1034 msgid "If empty, posts will not expire. Expired posts will be deleted" msgstr "" -#: ../../mod/settings.php:1034 +#: ../../mod/settings.php:1035 msgid "Advanced expiration settings" msgstr "" -#: ../../mod/settings.php:1035 +#: ../../mod/settings.php:1036 msgid "Advanced Expiration" msgstr "" -#: ../../mod/settings.php:1036 +#: ../../mod/settings.php:1037 msgid "Expire posts:" msgstr "" -#: ../../mod/settings.php:1038 +#: ../../mod/settings.php:1039 msgid "Expire starred posts:" msgstr "" -#: ../../mod/settings.php:1039 +#: ../../mod/settings.php:1040 msgid "Expire photos:" msgstr "" -#: ../../mod/settings.php:1040 +#: ../../mod/settings.php:1041 msgid "Only expire posts by others:" msgstr "" -#: ../../mod/settings.php:1051 +#: ../../mod/settings.php:1052 msgid "Channel Settings" msgstr "" -#: ../../mod/settings.php:1060 +#: ../../mod/settings.php:1061 msgid "Basic Settings" msgstr "" -#: ../../mod/settings.php:1063 +#: ../../mod/settings.php:1064 msgid "Your Timezone:" msgstr "" -#: ../../mod/settings.php:1064 +#: ../../mod/settings.php:1065 msgid "Default Post Location:" msgstr "" -#: ../../mod/settings.php:1065 +#: ../../mod/settings.php:1066 msgid "Use Browser Location:" msgstr "" -#: ../../mod/settings.php:1067 +#: ../../mod/settings.php:1068 msgid "Adult Content" msgstr "" -#: ../../mod/settings.php:1067 +#: ../../mod/settings.php:1068 msgid "This channel publishes adult content." msgstr "" -#: ../../mod/settings.php:1069 +#: ../../mod/settings.php:1070 msgid "Security and Privacy Settings" msgstr "" -#: ../../mod/settings.php:1071 +#: ../../mod/settings.php:1072 msgid "Quick Privacy Settings:" msgstr "" -#: ../../mod/settings.php:1072 +#: ../../mod/settings.php:1073 msgid "Very Public - extremely permissive" msgstr "" -#: ../../mod/settings.php:1073 +#: ../../mod/settings.php:1074 msgid "Typical - default public, privacy when desired" msgstr "" -#: ../../mod/settings.php:1074 +#: ../../mod/settings.php:1075 msgid "Private - default private, rarely open or public" msgstr "" -#: ../../mod/settings.php:1075 +#: ../../mod/settings.php:1076 msgid "Blocked - default blocked to/from everybody" msgstr "" -#: ../../mod/settings.php:1078 +#: ../../mod/settings.php:1079 msgid "Maximum Friend Requests/Day:" msgstr "" -#: ../../mod/settings.php:1078 +#: ../../mod/settings.php:1079 msgid "May reduce spam activity" msgstr "" -#: ../../mod/settings.php:1079 +#: ../../mod/settings.php:1080 msgid "Default Post Permissions" msgstr "" -#: ../../mod/settings.php:1080 +#: ../../mod/settings.php:1081 msgid "(click to open/close)" msgstr "" -#: ../../mod/settings.php:1093 +#: ../../mod/settings.php:1094 msgid "Maximum private messages per day from unknown people:" msgstr "" -#: ../../mod/settings.php:1093 +#: ../../mod/settings.php:1094 msgid "Useful to reduce spamming" msgstr "" -#: ../../mod/settings.php:1096 +#: ../../mod/settings.php:1097 msgid "Notification Settings" msgstr "" -#: ../../mod/settings.php:1097 +#: ../../mod/settings.php:1098 msgid "By default post a status message when:" msgstr "" -#: ../../mod/settings.php:1098 +#: ../../mod/settings.php:1099 msgid "accepting a friend request" msgstr "" -#: ../../mod/settings.php:1099 +#: ../../mod/settings.php:1100 msgid "joining a forum/community" msgstr "" -#: ../../mod/settings.php:1100 +#: ../../mod/settings.php:1101 msgid "making an interesting profile change" msgstr "" -#: ../../mod/settings.php:1101 +#: ../../mod/settings.php:1102 msgid "Send a notification email when:" msgstr "" -#: ../../mod/settings.php:1102 +#: ../../mod/settings.php:1103 msgid "You receive an introduction" msgstr "" -#: ../../mod/settings.php:1103 +#: ../../mod/settings.php:1104 msgid "Your introductions are confirmed" msgstr "" -#: ../../mod/settings.php:1104 +#: ../../mod/settings.php:1105 msgid "Someone writes on your profile wall" msgstr "" -#: ../../mod/settings.php:1105 +#: ../../mod/settings.php:1106 msgid "Someone writes a followup comment" msgstr "" -#: ../../mod/settings.php:1106 +#: ../../mod/settings.php:1107 msgid "You receive a private message" msgstr "" -#: ../../mod/settings.php:1107 +#: ../../mod/settings.php:1108 msgid "You receive a friend suggestion" msgstr "" -#: ../../mod/settings.php:1108 +#: ../../mod/settings.php:1109 msgid "You are tagged in a post" msgstr "" -#: ../../mod/settings.php:1109 +#: ../../mod/settings.php:1110 msgid "You are poked/prodded/etc. in a post" msgstr "" -#: ../../mod/settings.php:1112 +#: ../../mod/settings.php:1113 msgid "Advanced Account/Page Type Settings" msgstr "" -#: ../../mod/settings.php:1113 +#: ../../mod/settings.php:1114 msgid "Change the behaviour of this account for special situations" msgstr "" @@ -4082,15 +4078,15 @@ msgstr "" msgid "Site" msgstr "" -#: ../../mod/admin.php:88 ../../mod/admin.php:669 ../../mod/admin.php:681 +#: ../../mod/admin.php:88 ../../mod/admin.php:678 ../../mod/admin.php:690 msgid "Users" msgstr "" -#: ../../mod/admin.php:89 ../../mod/admin.php:767 ../../mod/admin.php:809 +#: ../../mod/admin.php:89 ../../mod/admin.php:776 ../../mod/admin.php:818 msgid "Plugins" msgstr "" -#: ../../mod/admin.php:90 ../../mod/admin.php:972 ../../mod/admin.php:1008 +#: ../../mod/admin.php:90 ../../mod/admin.php:981 ../../mod/admin.php:1017 msgid "Themes" msgstr "" @@ -4102,7 +4098,7 @@ msgstr "" msgid "DB updates" msgstr "" -#: ../../mod/admin.php:106 ../../mod/admin.php:113 ../../mod/admin.php:1095 +#: ../../mod/admin.php:106 ../../mod/admin.php:113 ../../mod/admin.php:1104 msgid "Logs" msgstr "" @@ -4119,8 +4115,8 @@ msgid "Message queues" msgstr "" #: ../../mod/admin.php:193 ../../mod/admin.php:416 ../../mod/admin.php:474 -#: ../../mod/admin.php:668 ../../mod/admin.php:766 ../../mod/admin.php:808 -#: ../../mod/admin.php:971 ../../mod/admin.php:1007 ../../mod/admin.php:1094 +#: ../../mod/admin.php:677 ../../mod/admin.php:775 ../../mod/admin.php:817 +#: ../../mod/admin.php:980 ../../mod/admin.php:1016 ../../mod/admin.php:1103 msgid "Administration" msgstr "" @@ -4180,7 +4176,7 @@ msgstr "" msgid "Tiered Access" msgstr "" -#: ../../mod/admin.php:419 ../../mod/register.php:172 +#: ../../mod/admin.php:419 ../../mod/register.php:180 msgid "Registration" msgstr "" @@ -4458,149 +4454,137 @@ msgstr "" msgid "User '%s' blocked" msgstr "" -#: ../../mod/admin.php:650 -msgid "Normal Account" -msgstr "" - -#: ../../mod/admin.php:651 -msgid "Soapbox Account" -msgstr "" - -#: ../../mod/admin.php:652 -msgid "Community/Celebrity Account" -msgstr "" - -#: ../../mod/admin.php:653 -msgid "Automatic Friend Account" -msgstr "" - -#: ../../mod/admin.php:671 +#: ../../mod/admin.php:680 msgid "select all" msgstr "" -#: ../../mod/admin.php:672 +#: ../../mod/admin.php:681 msgid "User registrations waiting for confirm" msgstr "" -#: ../../mod/admin.php:673 +#: ../../mod/admin.php:682 msgid "Request date" msgstr "" -#: ../../mod/admin.php:674 +#: ../../mod/admin.php:683 msgid "No registrations." msgstr "" -#: ../../mod/admin.php:675 ../../mod/intro.php:11 ../../mod/intro.php:98 +#: ../../mod/admin.php:684 ../../mod/intro.php:11 ../../mod/intro.php:98 #: ../../mod/notifications.php:159 ../../mod/notifications.php:206 msgid "Approve" msgstr "" -#: ../../mod/admin.php:676 +#: ../../mod/admin.php:685 msgid "Deny" msgstr "" -#: ../../mod/admin.php:678 ../../mod/intro.php:14 ../../mod/intro.php:99 -#: ../../mod/connections.php:328 ../../mod/connections.php:470 +#: ../../mod/admin.php:687 ../../mod/intro.php:14 ../../mod/intro.php:99 +#: ../../mod/connections.php:348 ../../mod/connections.php:490 msgid "Block" msgstr "" -#: ../../mod/admin.php:679 ../../mod/connections.php:328 -#: ../../mod/connections.php:470 +#: ../../mod/admin.php:688 ../../mod/connections.php:348 +#: ../../mod/connections.php:490 msgid "Unblock" msgstr "" -#: ../../mod/admin.php:682 +#: ../../mod/admin.php:691 msgid "Register date" msgstr "" -#: ../../mod/admin.php:682 +#: ../../mod/admin.php:691 msgid "Last login" msgstr "" -#: ../../mod/admin.php:682 +#: ../../mod/admin.php:691 +msgid "Expires" +msgstr "" + +#: ../../mod/admin.php:691 msgid "Service Class" msgstr "" -#: ../../mod/admin.php:684 +#: ../../mod/admin.php:693 msgid "" "Selected users will be deleted!\\n\\nEverything these users had posted on " "this site will be permanently deleted!\\n\\nAre you sure?" msgstr "" -#: ../../mod/admin.php:685 +#: ../../mod/admin.php:694 msgid "" "The user {0} will be deleted!\\n\\nEverything this user has posted on this " "site will be permanently deleted!\\n\\nAre you sure?" msgstr "" -#: ../../mod/admin.php:726 +#: ../../mod/admin.php:735 #, php-format msgid "Plugin %s disabled." msgstr "" -#: ../../mod/admin.php:730 +#: ../../mod/admin.php:739 #, php-format msgid "Plugin %s enabled." msgstr "" -#: ../../mod/admin.php:740 ../../mod/admin.php:942 +#: ../../mod/admin.php:749 ../../mod/admin.php:951 msgid "Disable" msgstr "" -#: ../../mod/admin.php:742 ../../mod/admin.php:944 +#: ../../mod/admin.php:751 ../../mod/admin.php:953 msgid "Enable" msgstr "" -#: ../../mod/admin.php:768 ../../mod/admin.php:973 +#: ../../mod/admin.php:777 ../../mod/admin.php:982 msgid "Toggle" msgstr "" -#: ../../mod/admin.php:776 ../../mod/admin.php:983 +#: ../../mod/admin.php:785 ../../mod/admin.php:992 msgid "Author: " msgstr "" -#: ../../mod/admin.php:777 ../../mod/admin.php:984 +#: ../../mod/admin.php:786 ../../mod/admin.php:993 msgid "Maintainer: " msgstr "" -#: ../../mod/admin.php:906 +#: ../../mod/admin.php:915 msgid "No themes found." msgstr "" -#: ../../mod/admin.php:965 +#: ../../mod/admin.php:974 msgid "Screenshot" msgstr "" -#: ../../mod/admin.php:1013 +#: ../../mod/admin.php:1022 msgid "[Experimental]" msgstr "" -#: ../../mod/admin.php:1014 +#: ../../mod/admin.php:1023 msgid "[Unsupported]" msgstr "" -#: ../../mod/admin.php:1041 +#: ../../mod/admin.php:1050 msgid "Log settings updated." msgstr "" -#: ../../mod/admin.php:1097 +#: ../../mod/admin.php:1106 msgid "Clear" msgstr "" -#: ../../mod/admin.php:1103 +#: ../../mod/admin.php:1112 msgid "Debugging" msgstr "" -#: ../../mod/admin.php:1104 +#: ../../mod/admin.php:1113 msgid "Log file" msgstr "" -#: ../../mod/admin.php:1104 +#: ../../mod/admin.php:1113 msgid "" "Must be writable by web server. Relative to your Red top-level directory." msgstr "" -#: ../../mod/admin.php:1105 +#: ../../mod/admin.php:1114 msgid "Log level" msgstr "" @@ -4908,11 +4892,11 @@ msgstr "" msgid "added your channel" msgstr "" -#: ../../mod/ping.php:230 ../../boot.php:1862 ../../boot.php:1942 +#: ../../mod/ping.php:230 ../../boot.php:1858 ../../boot.php:1938 msgid "g A l F d" msgstr "" -#: ../../mod/ping.php:252 ../../boot.php:1908 ../../boot.php:1983 +#: ../../mod/ping.php:252 ../../boot.php:1904 ../../boot.php:1979 msgid "[today]" msgstr "" @@ -4949,7 +4933,7 @@ msgid "Drop" msgstr "" #: ../../mod/menu.php:57 ../../mod/network.php:321 -#: ../../mod/connections.php:532 +#: ../../mod/connections.php:552 msgid "New" msgstr "" @@ -5116,11 +5100,11 @@ msgstr "" msgid "Layout Name" msgstr "" -#: ../../mod/help.php:30 +#: ../../mod/help.php:41 msgid "Help:" msgstr "" -#: ../../mod/help.php:38 ../../index.php:226 +#: ../../mod/help.php:53 ../../index.php:226 msgid "Not Found" msgstr "" @@ -5188,11 +5172,11 @@ msgstr "" msgid "Refresh" msgstr "" -#: ../../mod/network.php:385 ../../mod/connections.php:384 +#: ../../mod/network.php:385 ../../mod/connections.php:404 msgid "Me" msgstr "" -#: ../../mod/network.php:386 ../../mod/connections.php:386 +#: ../../mod/network.php:386 ../../mod/connections.php:406 msgid "Best Friends" msgstr "" @@ -5200,11 +5184,11 @@ msgstr "" msgid "Co-workers" msgstr "" -#: ../../mod/network.php:389 ../../mod/connections.php:388 +#: ../../mod/network.php:389 ../../mod/connections.php:408 msgid "Former Friends" msgstr "" -#: ../../mod/network.php:390 ../../mod/connections.php:389 +#: ../../mod/network.php:390 ../../mod/connections.php:409 msgid "Acquaintances" msgstr "" @@ -5229,7 +5213,7 @@ msgid "Invalid connection." msgstr "" #: ../../mod/intro.php:17 ../../mod/intro.php:100 -#: ../../mod/connections.php:335 ../../mod/connections.php:471 +#: ../../mod/connections.php:355 ../../mod/connections.php:491 #: ../../mod/notifications.php:51 ../../mod/notifications.php:162 #: ../../mod/notifications.php:208 msgid "Ignore" @@ -5255,7 +5239,7 @@ msgstr "" msgid "System error. Please try again later." msgstr "" -#: ../../mod/intro.php:95 ../../mod/connections.php:476 +#: ../../mod/intro.php:95 ../../mod/connections.php:496 #: ../../mod/notifications.php:155 ../../mod/notifications.php:202 msgid "Hide this contact from others" msgstr "" @@ -5287,373 +5271,373 @@ msgstr "" msgid "Failed to update connection record." msgstr "" -#: ../../mod/connections.php:199 +#: ../../mod/connections.php:219 msgid "Could not access address book record." msgstr "" -#: ../../mod/connections.php:213 +#: ../../mod/connections.php:233 msgid "Refresh failed - channel is currently unavailable." msgstr "" -#: ../../mod/connections.php:220 +#: ../../mod/connections.php:240 msgid "Channel has been unblocked" msgstr "" -#: ../../mod/connections.php:221 +#: ../../mod/connections.php:241 msgid "Channel has been blocked" msgstr "" -#: ../../mod/connections.php:225 ../../mod/connections.php:237 -#: ../../mod/connections.php:249 ../../mod/connections.php:261 -#: ../../mod/connections.php:276 +#: ../../mod/connections.php:245 ../../mod/connections.php:257 +#: ../../mod/connections.php:269 ../../mod/connections.php:281 +#: ../../mod/connections.php:296 msgid "Unable to set address book parameters." msgstr "" -#: ../../mod/connections.php:232 +#: ../../mod/connections.php:252 msgid "Channel has been unignored" msgstr "" -#: ../../mod/connections.php:233 +#: ../../mod/connections.php:253 msgid "Channel has been ignored" msgstr "" -#: ../../mod/connections.php:244 +#: ../../mod/connections.php:264 msgid "Channel has been unarchived" msgstr "" -#: ../../mod/connections.php:245 +#: ../../mod/connections.php:265 msgid "Channel has been archived" msgstr "" -#: ../../mod/connections.php:256 +#: ../../mod/connections.php:276 msgid "Channel has been unhidden" msgstr "" -#: ../../mod/connections.php:257 +#: ../../mod/connections.php:277 msgid "Channel has been hidden" msgstr "" -#: ../../mod/connections.php:271 +#: ../../mod/connections.php:291 msgid "Channel has been approved" msgstr "" -#: ../../mod/connections.php:272 +#: ../../mod/connections.php:292 msgid "Channel has been unapproved" msgstr "" -#: ../../mod/connections.php:290 +#: ../../mod/connections.php:310 msgid "Contact has been removed." msgstr "" -#: ../../mod/connections.php:310 +#: ../../mod/connections.php:330 #, php-format msgid "View %s's profile" msgstr "" -#: ../../mod/connections.php:314 +#: ../../mod/connections.php:334 msgid "Refresh Permissions" msgstr "" -#: ../../mod/connections.php:317 +#: ../../mod/connections.php:337 msgid "Fetch updated permissions" msgstr "" -#: ../../mod/connections.php:321 +#: ../../mod/connections.php:341 msgid "Recent Activity" msgstr "" -#: ../../mod/connections.php:324 +#: ../../mod/connections.php:344 msgid "View recent posts and comments" msgstr "" -#: ../../mod/connections.php:331 +#: ../../mod/connections.php:351 msgid "Block or Unblock this connection" msgstr "" -#: ../../mod/connections.php:335 ../../mod/connections.php:471 +#: ../../mod/connections.php:355 ../../mod/connections.php:491 msgid "Unignore" msgstr "" -#: ../../mod/connections.php:338 +#: ../../mod/connections.php:358 msgid "Ignore or Unignore this connection" msgstr "" -#: ../../mod/connections.php:341 +#: ../../mod/connections.php:361 msgid "Unarchive" msgstr "" -#: ../../mod/connections.php:341 +#: ../../mod/connections.php:361 msgid "Archive" msgstr "" -#: ../../mod/connections.php:344 +#: ../../mod/connections.php:364 msgid "Archive or Unarchive this connection" msgstr "" -#: ../../mod/connections.php:347 +#: ../../mod/connections.php:367 msgid "Unhide" msgstr "" -#: ../../mod/connections.php:347 +#: ../../mod/connections.php:367 msgid "Hide" msgstr "" -#: ../../mod/connections.php:350 +#: ../../mod/connections.php:370 msgid "Hide or Unhide this connection" msgstr "" -#: ../../mod/connections.php:357 +#: ../../mod/connections.php:377 msgid "Delete this connection" msgstr "" -#: ../../mod/connections.php:390 +#: ../../mod/connections.php:410 msgid "Unknown" msgstr "" -#: ../../mod/connections.php:400 ../../mod/connections.php:429 +#: ../../mod/connections.php:420 ../../mod/connections.php:449 msgid "Approve this connection" msgstr "" -#: ../../mod/connections.php:400 +#: ../../mod/connections.php:420 msgid "Accept connection to allow communication" msgstr "" -#: ../../mod/connections.php:416 +#: ../../mod/connections.php:436 msgid "Automatic Permissions Settings" msgstr "" -#: ../../mod/connections.php:416 +#: ../../mod/connections.php:436 #, php-format msgid "Connections: settings for %s" msgstr "" -#: ../../mod/connections.php:420 +#: ../../mod/connections.php:440 msgid "" "When receiving a channel introduction, any permissions provided here will be " "applied to the new connection automatically and the introduction approved. " "Leave this page if you do not wish to use this feature." msgstr "" -#: ../../mod/connections.php:422 +#: ../../mod/connections.php:442 msgid "Slide to adjust your degree of friendship" msgstr "" -#: ../../mod/connections.php:428 +#: ../../mod/connections.php:448 msgid "inherited" msgstr "" -#: ../../mod/connections.php:430 +#: ../../mod/connections.php:450 msgid "Connection has no individual permissions!" msgstr "" -#: ../../mod/connections.php:431 +#: ../../mod/connections.php:451 msgid "" "This may be appropriate based on your privacy settings, though you may wish to review the \"Advanced Permissions\"." msgstr "" -#: ../../mod/connections.php:433 +#: ../../mod/connections.php:453 msgid "Profile Visibility" msgstr "" -#: ../../mod/connections.php:434 +#: ../../mod/connections.php:454 #, php-format msgid "" "Please choose the profile you would like to display to %s when viewing your " "profile securely." msgstr "" -#: ../../mod/connections.php:435 +#: ../../mod/connections.php:455 msgid "Contact Information / Notes" msgstr "" -#: ../../mod/connections.php:436 +#: ../../mod/connections.php:456 msgid "Edit contact notes" msgstr "" -#: ../../mod/connections.php:438 +#: ../../mod/connections.php:458 msgid "Their Settings" msgstr "" -#: ../../mod/connections.php:439 +#: ../../mod/connections.php:459 msgid "My Settings" msgstr "" -#: ../../mod/connections.php:441 +#: ../../mod/connections.php:461 msgid "Forum Members" msgstr "" -#: ../../mod/connections.php:442 +#: ../../mod/connections.php:462 msgid "Soapbox" msgstr "" -#: ../../mod/connections.php:443 +#: ../../mod/connections.php:463 msgid "Full Sharing" msgstr "" -#: ../../mod/connections.php:444 +#: ../../mod/connections.php:464 msgid "Cautious Sharing" msgstr "" -#: ../../mod/connections.php:445 +#: ../../mod/connections.php:465 msgid "Follow Only" msgstr "" -#: ../../mod/connections.php:446 +#: ../../mod/connections.php:466 msgid "Individual Permissions" msgstr "" -#: ../../mod/connections.php:447 +#: ../../mod/connections.php:467 msgid "" "Some permissions may be inherited from your privacy " "settings, which have higher priority. Changing those on this page will " "have no effect." msgstr "" -#: ../../mod/connections.php:448 +#: ../../mod/connections.php:468 msgid "Advanced Permissions" msgstr "" -#: ../../mod/connections.php:449 +#: ../../mod/connections.php:469 msgid "Quick Links" msgstr "" -#: ../../mod/connections.php:453 +#: ../../mod/connections.php:473 #, php-format msgid "Visit %s's profile - %s" msgstr "" -#: ../../mod/connections.php:454 +#: ../../mod/connections.php:474 msgid "Block/Unblock contact" msgstr "" -#: ../../mod/connections.php:455 +#: ../../mod/connections.php:475 msgid "Ignore contact" msgstr "" -#: ../../mod/connections.php:456 +#: ../../mod/connections.php:476 msgid "Repair URL settings" msgstr "" -#: ../../mod/connections.php:457 +#: ../../mod/connections.php:477 msgid "View conversations" msgstr "" -#: ../../mod/connections.php:459 +#: ../../mod/connections.php:479 msgid "Delete contact" msgstr "" -#: ../../mod/connections.php:462 +#: ../../mod/connections.php:482 msgid "Last update:" msgstr "" -#: ../../mod/connections.php:464 +#: ../../mod/connections.php:484 msgid "Update public posts" msgstr "" -#: ../../mod/connections.php:466 +#: ../../mod/connections.php:486 msgid "Update now" msgstr "" -#: ../../mod/connections.php:472 +#: ../../mod/connections.php:492 msgid "Currently blocked" msgstr "" -#: ../../mod/connections.php:473 +#: ../../mod/connections.php:493 msgid "Currently ignored" msgstr "" -#: ../../mod/connections.php:474 +#: ../../mod/connections.php:494 msgid "Currently archived" msgstr "" -#: ../../mod/connections.php:475 +#: ../../mod/connections.php:495 msgid "Currently pending" msgstr "" -#: ../../mod/connections.php:476 +#: ../../mod/connections.php:496 msgid "" "Replies/likes to your public posts may still be visible" msgstr "" -#: ../../mod/connections.php:512 ../../mod/connections.php:584 +#: ../../mod/connections.php:532 ../../mod/connections.php:604 msgid "Blocked" msgstr "" -#: ../../mod/connections.php:517 ../../mod/connections.php:591 +#: ../../mod/connections.php:537 ../../mod/connections.php:611 msgid "Ignored" msgstr "" -#: ../../mod/connections.php:522 ../../mod/connections.php:605 +#: ../../mod/connections.php:542 ../../mod/connections.php:625 msgid "Hidden" msgstr "" -#: ../../mod/connections.php:527 ../../mod/connections.php:598 +#: ../../mod/connections.php:547 ../../mod/connections.php:618 msgid "Archived" msgstr "" -#: ../../mod/connections.php:538 +#: ../../mod/connections.php:558 msgid "All" msgstr "" -#: ../../mod/connections.php:559 +#: ../../mod/connections.php:579 msgid "Suggestions" msgstr "" -#: ../../mod/connections.php:562 +#: ../../mod/connections.php:582 msgid "Suggest new connections" msgstr "" -#: ../../mod/connections.php:568 +#: ../../mod/connections.php:588 msgid "Show pending (new) connections" msgstr "" -#: ../../mod/connections.php:571 +#: ../../mod/connections.php:591 msgid "All Connections" msgstr "" -#: ../../mod/connections.php:574 +#: ../../mod/connections.php:594 msgid "Show all connections" msgstr "" -#: ../../mod/connections.php:577 +#: ../../mod/connections.php:597 msgid "Unblocked" msgstr "" -#: ../../mod/connections.php:580 +#: ../../mod/connections.php:600 msgid "Only show unblocked connections" msgstr "" -#: ../../mod/connections.php:587 +#: ../../mod/connections.php:607 msgid "Only show blocked connections" msgstr "" -#: ../../mod/connections.php:594 +#: ../../mod/connections.php:614 msgid "Only show ignored connections" msgstr "" -#: ../../mod/connections.php:601 +#: ../../mod/connections.php:621 msgid "Only show archived connections" msgstr "" -#: ../../mod/connections.php:608 +#: ../../mod/connections.php:628 msgid "Only show hidden connections" msgstr "" -#: ../../mod/connections.php:650 +#: ../../mod/connections.php:670 #, php-format msgid "%1$s [%2$s]" msgstr "" -#: ../../mod/connections.php:651 ../../mod/nogroup.php:41 +#: ../../mod/connections.php:671 ../../mod/nogroup.php:41 msgid "Edit contact" msgstr "" -#: ../../mod/connections.php:675 +#: ../../mod/connections.php:695 msgid "Search your connections" msgstr "" -#: ../../mod/connections.php:676 +#: ../../mod/connections.php:696 msgid "Finding: " msgstr "" @@ -5913,23 +5897,23 @@ msgstr "" msgid "Edit/Manage Profiles" msgstr "" -#: ../../mod/profiles.php:624 ../../boot.php:1759 +#: ../../mod/profiles.php:624 ../../boot.php:1755 msgid "Change profile photo" msgstr "" -#: ../../mod/profiles.php:625 ../../boot.php:1766 +#: ../../mod/profiles.php:625 ../../boot.php:1762 msgid "Create New Profile" msgstr "" -#: ../../mod/profiles.php:636 ../../boot.php:1780 +#: ../../mod/profiles.php:636 ../../boot.php:1776 msgid "Profile Image" msgstr "" -#: ../../mod/profiles.php:639 ../../boot.php:1783 +#: ../../mod/profiles.php:639 ../../boot.php:1779 msgid "visible to everybody" msgstr "" -#: ../../mod/profiles.php:640 ../../boot.php:1784 +#: ../../mod/profiles.php:640 ../../boot.php:1780 msgid "Edit visibility" msgstr "" @@ -6010,7 +5994,7 @@ msgid "" "Password reset failed." msgstr "" -#: ../../mod/lostpass.php:85 ../../boot.php:1473 +#: ../../mod/lostpass.php:85 ../../boot.php:1469 msgid "Password Reset" msgstr "" @@ -6552,7 +6536,7 @@ msgstr "" msgid "Make this post private" msgstr "" -#: ../../mod/wall_upload.php:41 ../../mod/item.php:1057 +#: ../../mod/wall_upload.php:41 ../../mod/item.php:1049 msgid "Wall Photos" msgstr "" @@ -6633,12 +6617,12 @@ msgstr "" msgid "System error. Post not saved." msgstr "" -#: ../../mod/item.php:1136 +#: ../../mod/item.php:1128 #, php-format msgid "You have reached your limit of %1$.0f top level posts." msgstr "" -#: ../../mod/item.php:1142 +#: ../../mod/item.php:1134 #, php-format msgid "You have reached your limit of %1$.0f webpages." msgstr "" @@ -6721,69 +6705,69 @@ msgstr "" msgid "Registration Policy" msgstr "" -#: ../../mod/register.php:35 +#: ../../mod/register.php:43 msgid "Maximum daily site registrations exceeded. Please try again tomorrow." msgstr "" -#: ../../mod/register.php:41 +#: ../../mod/register.php:49 msgid "" "Please indicate acceptance of the Terms of Service. Registration failed." msgstr "" -#: ../../mod/register.php:69 +#: ../../mod/register.php:77 msgid "Passwords do not match." msgstr "" -#: ../../mod/register.php:97 +#: ../../mod/register.php:105 msgid "" "Registration successful. Please check your email for validation instructions." msgstr "" -#: ../../mod/register.php:103 +#: ../../mod/register.php:111 msgid "Your registration is pending approval by the site owner." msgstr "" -#: ../../mod/register.php:106 +#: ../../mod/register.php:114 msgid "Your registration can not be processed." msgstr "" -#: ../../mod/register.php:141 +#: ../../mod/register.php:149 msgid "" "This site has exceeded the number of allowed daily account registrations. " "Please try again tomorrow." msgstr "" -#: ../../mod/register.php:152 +#: ../../mod/register.php:160 msgid "Terms of Service" msgstr "" -#: ../../mod/register.php:158 +#: ../../mod/register.php:166 #, php-format msgid "I accept the %s for this website" msgstr "" -#: ../../mod/register.php:160 +#: ../../mod/register.php:168 #, php-format msgid "I am over 13 years of age and accept the %s for this website" msgstr "" -#: ../../mod/register.php:175 +#: ../../mod/register.php:183 msgid "Membership on this site is by invitation only." msgstr "" -#: ../../mod/register.php:176 +#: ../../mod/register.php:184 msgid "Please enter your invitation code" msgstr "" -#: ../../mod/register.php:179 +#: ../../mod/register.php:187 msgid "Your email address" msgstr "" -#: ../../mod/register.php:180 +#: ../../mod/register.php:188 msgid "Choose a password" msgstr "" -#: ../../mod/register.php:181 +#: ../../mod/register.php:189 msgid "Please re-enter your password" msgstr "" @@ -6791,13 +6775,13 @@ msgstr "" msgid "Please login." msgstr "" -#: ../../mod/post.php:114 +#: ../../mod/post.php:119 msgid "" "Remote authentication blocked. You are logged into this site locally. Please " "logout and retry." msgstr "" -#: ../../mod/post.php:127 +#: ../../mod/post.php:132 #, php-format msgid "Welcome %s. Remote authentication successful." msgstr "" @@ -6858,94 +6842,106 @@ msgstr "" msgid "Set your current mood and tell your friends" msgstr "" -#: ../../view/theme/redbasic/php/config.php:68 +#: ../../view/theme/redbasic/php/config.php:74 msgid "Scheme Default" msgstr "" -#: ../../view/theme/redbasic/php/config.php:69 +#: ../../view/theme/redbasic/php/config.php:75 msgid "red" msgstr "" -#: ../../view/theme/redbasic/php/config.php:70 +#: ../../view/theme/redbasic/php/config.php:76 msgid "black" msgstr "" -#: ../../view/theme/redbasic/php/config.php:71 +#: ../../view/theme/redbasic/php/config.php:77 msgid "silver" msgstr "" -#: ../../view/theme/redbasic/php/config.php:82 +#: ../../view/theme/redbasic/php/config.php:88 #: ../../view/theme/apw/php/config.php:234 msgid "Theme settings" msgstr "" -#: ../../view/theme/redbasic/php/config.php:83 +#: ../../view/theme/redbasic/php/config.php:89 #: ../../view/theme/apw/php/config.php:235 msgid "Set scheme" msgstr "" -#: ../../view/theme/redbasic/php/config.php:84 +#: ../../view/theme/redbasic/php/config.php:90 msgid "Navigation bar colour" msgstr "" -#: ../../view/theme/redbasic/php/config.php:85 +#: ../../view/theme/redbasic/php/config.php:91 msgid "Set font-colour for banner" msgstr "" -#: ../../view/theme/redbasic/php/config.php:86 +#: ../../view/theme/redbasic/php/config.php:92 msgid "Set the background colour" msgstr "" -#: ../../view/theme/redbasic/php/config.php:87 +#: ../../view/theme/redbasic/php/config.php:93 msgid "Set the background image" msgstr "" -#: ../../view/theme/redbasic/php/config.php:88 +#: ../../view/theme/redbasic/php/config.php:94 msgid "Set the background colour of items" msgstr "" -#: ../../view/theme/redbasic/php/config.php:89 +#: ../../view/theme/redbasic/php/config.php:95 msgid "Set the opacity of items" msgstr "" -#: ../../view/theme/redbasic/php/config.php:90 +#: ../../view/theme/redbasic/php/config.php:96 msgid "Set the basic colour for item icons" msgstr "" -#: ../../view/theme/redbasic/php/config.php:91 +#: ../../view/theme/redbasic/php/config.php:97 msgid "Set the hover colour for item icons" msgstr "" -#: ../../view/theme/redbasic/php/config.php:92 +#: ../../view/theme/redbasic/php/config.php:98 +msgid "Set font-size for the entire application" +msgstr "" + +#: ../../view/theme/redbasic/php/config.php:99 #: ../../view/theme/apw/php/config.php:236 msgid "Set font-size for posts and comments" msgstr "" -#: ../../view/theme/redbasic/php/config.php:93 +#: ../../view/theme/redbasic/php/config.php:100 msgid "Set font-colour for posts and comments" msgstr "" -#: ../../view/theme/redbasic/php/config.php:94 +#: ../../view/theme/redbasic/php/config.php:101 msgid "Set radius of corners" msgstr "" -#: ../../view/theme/redbasic/php/config.php:95 +#: ../../view/theme/redbasic/php/config.php:102 msgid "Set shadow depth of photos" msgstr "" -#: ../../view/theme/redbasic/php/config.php:96 +#: ../../view/theme/redbasic/php/config.php:103 msgid "Set maximum width of conversation regions" msgstr "" -#: ../../view/theme/redbasic/php/config.php:97 +#: ../../view/theme/redbasic/php/config.php:104 msgid "Set minimum opacity of nav bar - to hide it" msgstr "" -#: ../../view/theme/redbasic/php/config.php:98 +#: ../../view/theme/redbasic/php/config.php:105 +msgid "Set size of conversation author photo" +msgstr "" + +#: ../../view/theme/redbasic/php/config.php:106 +msgid "Set size of followup author photos" +msgstr "" + +#: ../../view/theme/redbasic/php/config.php:107 msgid "Sloppy photo albums" msgstr "" -#: ../../view/theme/redbasic/php/config.php:98 +#: ../../view/theme/redbasic/php/config.php:107 msgid "Are you a clean desk or a messy desk person?" msgstr "" @@ -7074,113 +7070,113 @@ msgstr "" msgid "Right offset of the aside element" msgstr "" -#: ../../boot.php:1278 +#: ../../boot.php:1274 #, php-format msgid "Update %s failed. See error logs." msgstr "" -#: ../../boot.php:1281 +#: ../../boot.php:1277 #, php-format msgid "Update Error at %s" msgstr "" -#: ../../boot.php:1438 +#: ../../boot.php:1434 msgid "" "Create an account to access services and applications within the Red Matrix" msgstr "" -#: ../../boot.php:1466 +#: ../../boot.php:1462 msgid "Password" msgstr "" -#: ../../boot.php:1467 +#: ../../boot.php:1463 msgid "Remember me" msgstr "" -#: ../../boot.php:1472 +#: ../../boot.php:1468 msgid "Forgot your password?" msgstr "" -#: ../../boot.php:1537 +#: ../../boot.php:1533 msgid "permission denied" msgstr "" -#: ../../boot.php:1538 +#: ../../boot.php:1534 msgid "Got Zot?" msgstr "" -#: ../../boot.php:1597 +#: ../../boot.php:1593 msgid "Requested channel is not available." msgstr "" -#: ../../boot.php:1609 +#: ../../boot.php:1605 msgid " Sorry, you don't have the permission to view this profile. " msgstr "" -#: ../../boot.php:1765 +#: ../../boot.php:1761 msgid "Profiles" msgstr "" -#: ../../boot.php:1765 +#: ../../boot.php:1761 msgid "Manage/edit profiles" msgstr "" -#: ../../boot.php:1769 +#: ../../boot.php:1765 msgid "Edit Profile" msgstr "" -#: ../../boot.php:1863 ../../boot.php:1943 +#: ../../boot.php:1859 ../../boot.php:1939 msgid "F d" msgstr "" -#: ../../boot.php:1920 +#: ../../boot.php:1916 msgid "Birthday Reminders" msgstr "" -#: ../../boot.php:1921 +#: ../../boot.php:1917 msgid "Birthdays this week:" msgstr "" -#: ../../boot.php:1976 +#: ../../boot.php:1972 msgid "[No description]" msgstr "" -#: ../../boot.php:1994 +#: ../../boot.php:1990 msgid "Event Reminders" msgstr "" -#: ../../boot.php:1995 +#: ../../boot.php:1991 msgid "Events this week:" msgstr "" -#: ../../boot.php:2229 +#: ../../boot.php:2225 msgid "Channel" msgstr "" -#: ../../boot.php:2232 +#: ../../boot.php:2228 msgid "Status Messages and Posts" msgstr "" -#: ../../boot.php:2236 +#: ../../boot.php:2232 msgid "About" msgstr "" -#: ../../boot.php:2239 +#: ../../boot.php:2235 msgid "Profile Details" msgstr "" -#: ../../boot.php:2257 +#: ../../boot.php:2253 msgid "Events and Calendar" msgstr "" -#: ../../boot.php:2262 +#: ../../boot.php:2258 msgid "Webpages" msgstr "" -#: ../../boot.php:2265 +#: ../../boot.php:2261 msgid "Manage Webpages" msgstr "" -#: ../../boot.php:2547 +#: ../../boot.php:2545 msgid "toggle mobile" msgstr "" diff --git a/version.inc b/version.inc index 3e026cef2..9c9570aa4 100644 --- a/version.inc +++ b/version.inc @@ -1 +1 @@ -2013-11-21.504 +2013-11-22.505 diff --git a/view/php/theme_init.php b/view/php/theme_init.php index 1fefa110e..69d99893a 100644 --- a/view/php/theme_init.php +++ b/view/php/theme_init.php @@ -42,6 +42,9 @@ head_add_js('library/colorbox/jquery.colorbox-min.js'); /** * Those who require this feature will know what to do with it. * Those who don't, won't. + * Eventually this functionality needs to be provided by a module + * such that permissions can be enforced. At the moment it's + * more of a proof of concept; but sufficient for our immediate needs. */ $channel = get_app()->get_channel(); From 72e0bd6b28fbb2e13a02573a053430493f97c14b Mon Sep 17 00:00:00 2001 From: marijus Date: Fri, 22 Nov 2013 21:19:41 +0100 Subject: [PATCH 060/271] missing input type and use same font for password and text input --- view/theme/redbasic/css/style.css | 7 ++++--- view/tpl/field_input.tpl | 2 +- 2 files changed, 5 insertions(+), 4 deletions(-) diff --git a/view/theme/redbasic/css/style.css b/view/theme/redbasic/css/style.css index f5e99bdf7..72413f283 100644 --- a/view/theme/redbasic/css/style.css +++ b/view/theme/redbasic/css/style.css @@ -51,7 +51,8 @@ a:hover, .fakelink:hover { color: #44AAFF; text-decoration: underline; } } -input[type=text] { +input[type=text], +input[type=password] { font-family: arial,freesans,sans-serif; } @@ -458,9 +459,9 @@ footer { clear: both; } -#register-link, #lost-password-link { +#register-link, +#lost-password-link { float: left; - font-size: 90%; margin-left: 100px; } diff --git a/view/tpl/field_input.tpl b/view/tpl/field_input.tpl index d5b3d6b4e..a584f95e7 100755 --- a/view/tpl/field_input.tpl +++ b/view/tpl/field_input.tpl @@ -1,6 +1,6 @@
    - {{if $field.4}} {{$field.4}} {{/if}} + {{if $field.4}} {{$field.4}} {{/if}} {{$field.3}}
    From 45c10d6d0a4a971446390137676fe8c00712372b Mon Sep 17 00:00:00 2001 From: marijus Date: Fri, 22 Nov 2013 22:23:25 +0100 Subject: [PATCH 061/271] use same font for textarea aswell and some simplification --- view/theme/redbasic/css/style.css | 13 ++++++++----- 1 file changed, 8 insertions(+), 5 deletions(-) diff --git a/view/theme/redbasic/css/style.css b/view/theme/redbasic/css/style.css index 72413f283..bdf1fb5fd 100644 --- a/view/theme/redbasic/css/style.css +++ b/view/theme/redbasic/css/style.css @@ -51,9 +51,12 @@ a:hover, .fakelink:hover { color: #44AAFF; text-decoration: underline; } } -input[type=text], -input[type=password] { +input[type="text"], +input[type="password"], +input[type="submit"], +textarea { font-family: arial,freesans,sans-serif; + font-size: $body_font_size; } input { @@ -61,14 +64,13 @@ input { -moz-border-radius: $radiuspx; border-radius: $radiuspx; padding: 3px; - font-size: $body_font_size; } input[type="submit"] { background-color: #F0F0F0; font-weight: bold; color: #0080FF; - text-decoration: none; + text-decoration: none; } code { @@ -1456,10 +1458,11 @@ tr.mceLast { border: 1px solid #cccccc; padding: 8px; margin-right: 0px; - width: 90%; + width: 90%; -moz-border-radius: $radiuspx; border-radius: $radiuspx; } + #profile-jot-text:hover { color: #000000; } From 8619fc368d24fa903c543561428709452b08c5a7 Mon Sep 17 00:00:00 2001 From: tuscanhobbit Date: Fri, 22 Nov 2013 22:45:16 +0100 Subject: [PATCH 062/271] updated logo in readme and r# shorthand --- images/rm-16.png | Bin 0 -> 949 bytes images/rm300.png | Bin 7389 -> 6426 bytes include/text.php | 4 ++-- 3 files changed, 2 insertions(+), 2 deletions(-) create mode 100644 images/rm-16.png diff --git a/images/rm-16.png b/images/rm-16.png new file mode 100644 index 0000000000000000000000000000000000000000..62e45c2ddeb6536ea224e3c1da4c819f8373dd08 GIT binary patch literal 949 zcmV;m14{gfP)IkF^!w}o9@87p^<`-NAf0$s-n1@EDrs_SoN;9!F^&>HdPOPD>T>448bC~oy5omfao`a&fTb%@a@VHOD}&ezixie}fQ_@Z zhVn;uq6PdUPMsw)cpi5+gzD7E{4j)G6~yt3r|t+q<-P~G?cn2>@p;Ud6eZg?VW$>A z3W#Nsy*NtX{ub7J@fLvxS}@~D5+~2X^+WH-Ak8xI@+lD!8GEW*F10)I$D%Cr}kL=7K1fV&~Y%m?RKx;%~;Ca5X^s>g-u_u}@2P~A@QQ#1S% z)$2w@Q3xG*79$pC>h+INi+m`miWyHb_1cG6$u#vnoj80RCc1k5YXT5_Xgeiann|AN zBRf2X*fz;eza`!G3sw6gRJ8A=uBQ`gF3t3trxD9uR@(&>5fKD3KMryEzUL9UfL!+rx z16Q~j+Ibu+wLsD4b+;1S!kCCNvZaIEWDKo1fTuCM{6x#fRa=Ft zz6N7F#{72!1b1x1x1nj-VE$Y`sW1D<{B!{$8b?eMMb|0a*+Rt=yKt`#;VAZ@uPEow zhYz9!OR#2BtU7%Z?LxyIjMxlf+IZJD;H(O=6q^Jyk7r#2!AR@hmD>dh*&N~bx)|R2 zG=;2zrZ{zOf8zzpBCS}d1x8x;6Wp;4|2=EDapDZV<~5W>+5pIoT*b30gjN=yEYe1@ z_ZzgkhCf45RZtXi*Qc@O(v(HosO;E-nM^bJ(n(yQD*T)8BtMzJxpH}tiuPTM?mf(3 XVk4IO58^9600000NkvXXu0mjf>0iGe literal 0 HcmV?d00001 diff --git a/images/rm300.png b/images/rm300.png index 52c234dc2881db5b4184ca89e1411f5dac3ed441..bc26003489e601d434df538c7ceae7419a6ec442 100644 GIT binary patch literal 6426 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 literal 7389 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 P00000NkvXXu0mjf3uREM diff --git a/include/text.php b/include/text.php index 780992f4a..54626a772 100755 --- a/include/text.php +++ b/include/text.php @@ -916,8 +916,8 @@ function smilies($s, $sample = false) { ':facepalm', ':like', ':dislike', - 'red# the Red Matrix', - 'r# the Red Matrix', + 'redred#matrix', + 'redr#matrix', '~friendica ~friendica' ); From 35e8536c7ccb773152edbfaffef0ed5fb1410cf1 Mon Sep 17 00:00:00 2001 From: tuscanhobbit Date: Fri, 22 Nov 2013 23:08:29 +0100 Subject: [PATCH 063/271] Italian translation updated --- view/it/messages.po | 6 +++--- view/it/strings.php | 4 ++-- 2 files changed, 5 insertions(+), 5 deletions(-) diff --git a/view/it/messages.po b/view/it/messages.po index 7a77586bc..0143952d4 100644 --- a/view/it/messages.po +++ b/view/it/messages.po @@ -14,7 +14,7 @@ msgstr "" "Project-Id-Version: Red Matrix\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2013-11-15 00:03-0800\n" -"PO-Revision-Date: 2013-11-15 11:55+0000\n" +"PO-Revision-Date: 2013-11-22 22:02+0000\n" "Last-Translator: tuscanhobbit Pa \n" "Language-Team: Italian (http://www.transifex.com/projects/p/red-matrix/language/it/)\n" "MIME-Version: 1.0\n" @@ -6951,11 +6951,11 @@ msgstr "Imposta l'opacità minima della barra di navigazione per nasconderla" #: ../../view/theme/redbasic/php/config.php:98 msgid "Sloppy photo albums" -msgstr "Photo album semplificati" +msgstr "Album fotografici semplificati" #: ../../view/theme/redbasic/php/config.php:98 msgid "Are you a clean desk or a messy desk person?" -msgstr "Hai una scrivania ordinata o sei una persona che lascia confusione?" +msgstr "La tua scrivania è sempre a posto? Sei una persona disordinata?" #: ../../view/theme/apw/php/config.php:193 #: ../../view/theme/apw/php/config.php:211 diff --git a/view/it/strings.php b/view/it/strings.php index 62936964f..5c71824db 100644 --- a/view/it/strings.php +++ b/view/it/strings.php @@ -1635,8 +1635,8 @@ $a->strings["Set radius of corners"] = "Raggio degli angoli stondati"; $a->strings["Set shadow depth of photos"] = "Profondità dell'ombra delle foto"; $a->strings["Set maximum width of conversation regions"] = "Larghezza massima delle aree delle conversazioni"; $a->strings["Set minimum opacity of nav bar - to hide it"] = "Imposta l'opacità minima della barra di navigazione per nasconderla"; -$a->strings["Sloppy photo albums"] = "Photo album semplificati"; -$a->strings["Are you a clean desk or a messy desk person?"] = "Hai una scrivania ordinata o sei una persona che lascia confusione?"; +$a->strings["Sloppy photo albums"] = "Album fotografici semplificati"; +$a->strings["Are you a clean desk or a messy desk person?"] = "La tua scrivania è sempre a posto? Sei una persona disordinata?"; $a->strings["Schema Default"] = "Schema predefinito"; $a->strings["Sans-Serif"] = "Sans-Serif"; $a->strings["Monospace"] = "Monospace"; From adad1b75cd1fb6ef96e06d32ee5c2d89cd9e759b Mon Sep 17 00:00:00 2001 From: marijus Date: Sat, 23 Nov 2013 01:10:54 +0100 Subject: [PATCH 064/271] use placeholder for profile-jot-text and some minor alignment --- view/theme/redbasic/css/style.css | 7 ++++--- view/tpl/jot.tpl | 2 +- 2 files changed, 5 insertions(+), 4 deletions(-) diff --git a/view/theme/redbasic/css/style.css b/view/theme/redbasic/css/style.css index bdf1fb5fd..97f24c8df 100644 --- a/view/theme/redbasic/css/style.css +++ b/view/theme/redbasic/css/style.css @@ -54,6 +54,7 @@ a:hover, .fakelink:hover { color: #44AAFF; text-decoration: underline; } input[type="text"], input[type="password"], input[type="submit"], +select, textarea { font-family: arial,freesans,sans-serif; font-size: $body_font_size; @@ -1464,7 +1465,7 @@ tr.mceLast { } #profile-jot-text:hover { - color: #000000; + color: #000000; } #profile-jot-text-loading { @@ -2545,7 +2546,7 @@ brain is weird like that */ .field label { float: left; - width: 200px; + width: 350px; } .field input, @@ -2555,7 +2556,7 @@ brain is weird like that */ .field textarea { height: 100px; } .field_help { display: block; - margin-left: 200px; + margin-left: 350px; color: #666666; } diff --git a/view/tpl/jot.tpl b/view/tpl/jot.tpl index ef91f45be..b9238f0c0 100755 --- a/view/tpl/jot.tpl +++ b/view/tpl/jot.tpl @@ -24,7 +24,7 @@
    {{/if}}
    - +
    From 7f6f4d2e9e5ff0486382c41c76f6eac87af37ef2 Mon Sep 17 00:00:00 2001 From: marijus Date: Sat, 23 Nov 2013 01:12:30 +0100 Subject: [PATCH 065/271] typo --- view/theme/redbasic/css/style.css | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/view/theme/redbasic/css/style.css b/view/theme/redbasic/css/style.css index 97f24c8df..8c9266f62 100644 --- a/view/theme/redbasic/css/style.css +++ b/view/theme/redbasic/css/style.css @@ -1465,7 +1465,7 @@ tr.mceLast { } #profile-jot-text:hover { - color: #000000; + color: #000000; } #profile-jot-text-loading { From ccba7d8d07a3d78693f764f0d5997782ac52bbda Mon Sep 17 00:00:00 2001 From: marijus Date: Sat, 23 Nov 2013 09:19:37 +0100 Subject: [PATCH 066/271] make profile-jot-text placeholder more prominent --- view/theme/redbasic/css/style.css | 16 ++++++++++++++-- 1 file changed, 14 insertions(+), 2 deletions(-) diff --git a/view/theme/redbasic/css/style.css b/view/theme/redbasic/css/style.css index 8c9266f62..e7ac112f6 100644 --- a/view/theme/redbasic/css/style.css +++ b/view/theme/redbasic/css/style.css @@ -1464,8 +1464,20 @@ tr.mceLast { border-radius: $radiuspx; } -#profile-jot-text:hover { - color: #000000; +#profile-jot-text::-moz-placeholder { + font-size:1.5em; +} + +#profile-jot-text:focus::-moz-placeholder { + color: transparent; +} + +#profile-jot-text::-webkit-input-placeholder { + font-size:1.5em; +} + +#profile-jot-text:focus::-webkit-input-placeholder { + color: transparent; } #profile-jot-text-loading { From a98685df760d40439fbcd61022dec7d2b9b58b5f Mon Sep 17 00:00:00 2001 From: marijus Date: Sat, 23 Nov 2013 09:49:12 +0100 Subject: [PATCH 067/271] make profile-jot-text and -title height scalable --- view/theme/redbasic/css/style.css | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/view/theme/redbasic/css/style.css b/view/theme/redbasic/css/style.css index e7ac112f6..660651a7f 100644 --- a/view/theme/redbasic/css/style.css +++ b/view/theme/redbasic/css/style.css @@ -358,7 +358,7 @@ footer { border: 0px; margin: 0px; padding: 8px; - height: 20px; + height: 1.8em; width: 530px; margin-bottom: 5px; font-weight: bold; @@ -1454,7 +1454,7 @@ tr.mceLast { /* Not MCE */ #profile-jot-text { - height: 20px; + height: 1.8em; color:#000; border: 1px solid #cccccc; padding: 8px; From d27ed7f6e5b595aaf20154a30995601fd6b11644 Mon Sep 17 00:00:00 2001 From: friendica Date: Sat, 23 Nov 2013 01:01:23 -0800 Subject: [PATCH 068/271] rev update --- version.inc | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/version.inc b/version.inc index 9c9570aa4..ec2cb12cd 100644 --- a/version.inc +++ b/version.inc @@ -1 +1 @@ -2013-11-22.505 +2013-11-23.506 From 2e4177796364ca4edb3a29e7646545649d57c56a Mon Sep 17 00:00:00 2001 From: tuscanhobbit Date: Sat, 23 Nov 2013 19:46:07 +0100 Subject: [PATCH 069/271] a reference to account_id was missing in user admin table --- mod/admin.php | 5 +++-- view/tpl/admin_users.tpl | 14 ++++++++------ 2 files changed, 11 insertions(+), 8 deletions(-) diff --git a/mod/admin.php b/mod/admin.php index 1615412b5..5a3ec48f7 100644 --- a/mod/admin.php +++ b/mod/admin.php @@ -649,7 +649,8 @@ function admin_page_users(&$a){ if($_REQUEST['order'] === 'expires') $order = " order by account_expires desc "; - $users =q("SELECT `account_id` , `account_email`, `account_lastlog`, `account_created`, `account_expires`, `account_service_class` FROM `account` where true $serviceclass $order limit %d , %d ", + $users =q("SELECT `account_id` , `account_email`, `account_lastlog`, `account_created`, `account_expires`, `account_service_class`, ( account_flags & %d ) > 0 as `blocked` FROM `account` where true $serviceclass $order limit %d , %d ", + intval(ACCOUNT_BLOCKED), intval($a->pager['start']), intval($a->pager['itemspage']) ); @@ -686,7 +687,7 @@ function admin_page_users(&$a){ '$delete' => t('Delete'), '$block' => t('Block'), '$unblock' => t('Unblock'), - + '$h_users' => t('Users'), '$th_users' => array( t('Email'), t('Register date'), t('Last login'), t('Expires'), t('Service Class')), diff --git a/view/tpl/admin_users.tpl b/view/tpl/admin_users.tpl index cedd55216..609289013 100755 --- a/view/tpl/admin_users.tpl +++ b/view/tpl/admin_users.tpl @@ -55,7 +55,6 @@ - {{foreach $th_users as $th}}{{/foreach}} @@ -64,16 +63,19 @@ {{foreach $users as $u}} - - + - + {{/foreach}} From 2c6e1b7aee2928c077bc090b1c4fe65c599d5d12 Mon Sep 17 00:00:00 2001 From: tuscanhobbit Date: Sat, 23 Nov 2013 20:01:11 +0100 Subject: [PATCH 070/271] replaced rhash icon --- boot.php | 2 +- images/rm-32.png | Bin 0 -> 2451 bytes images/rm-64.png | Bin 0 -> 5236 bytes include/api.php | 4 ++-- util/Doxyfile | 2 +- view/tpl/email_notify_html.tpl | 2 +- view/tpl/opensearch.tpl | 6 +++--- 7 files changed, 8 insertions(+), 8 deletions(-) create mode 100644 images/rm-32.png create mode 100644 images/rm-64.png diff --git a/boot.php b/boot.php index 3fabff55a..53d756e93 100755 --- a/boot.php +++ b/boot.php @@ -773,7 +773,7 @@ class App { $this->is_mobile = $mobile_detect->isMobile(); $this->is_tablet = $mobile_detect->isTablet(); - $this->head_set_icon('/images/rhash-32.png'); + $this->head_set_icon('/images/rm-32.png'); BaseObject::set_app($this); diff --git a/images/rm-32.png b/images/rm-32.png new file mode 100644 index 0000000000000000000000000000000000000000..c9c942dee15346c530360ccd53a55540e3eef822 GIT binary patch literal 2451 zcmV;E32gR>P)5H8(f=9z$p#ERl$WXcZMo)mCeD)QZ(%rpy$_ZL}4&Qb(y{ zOWUa(Kv7^Am%4&Gs7R!;C}2^7P-BD;LKZ^ygqz&``@Xk-+?x^!zNs-!##=?kz$G8xRO=Op5OP4SJ^k z>``q=wB;ntOIFbP<~AfU@gc`O>8Ce%9Gxhaz;Ye}~pbp20lTk3a=QLre1^b~8f?)Wk_4P+SgVG={Y7BvgWFvNnK3 zXc|*KdE_Do}kM^qdT0C%Ui#gWo|Qp@|g=Vuk{M zg~UQ09ac*L>;y@iC^(T=xX#I=WW{}?&Z|0|X;=Y}*u;=n$y%$UpvG6hRZ)ijr`5<% z6gv_{nijFnUIN>{7*S6WM`8g2XI=rGSyM@!UrkE&biA{tomKz@3I-B0(SWKG)#t_> z7y@aJkVqs;oK`(9yj9c4TyRD5s+zPsxQf8XUnI+9;+DSI3tpEsJ!&6a4%A88v6+c4tdFXk03w@hE0o%qViX$TjG=*qq2Lgd&xXHig zW^(UZK-cq|XnSlOwiO3#QmW5m!ipuh&n+X|&_cNG7(<`e5!kVxz?TP*n21j(mkI^~ z4aI4Yv-o;SRxTOQrSs|6Ilg2CX807T7gmvf->s-=K04RFN%zM05U2>DPjZ8{sW%#r<{2uqcOsD#|ZAPr)NVATH)P`=-;xN@X==MNR&`rBbXLwi5{>* z5o9ce#3W_Td8GZ~5`>}SDlfrzaV4$G)?)UZVqoWID5wZjyww$yuKgqK8I#6zj^Z%z z%q+(NDwM)M-A3+RH(?V&A_>(s();d?(~N^*Y%2yxjGPRlOjOLs&m#BEUs3$$ zyO5YD=t#iG&!*s^MdN~hJDd{>QM5E4nKxg7BP|zzct=A$m7{MC-#(C&`}$0ikPTFS-VYKL>zldpkWFY7$?qX@HWP5sauY@cyTCzxaM~ zaw=plxSZ*qy+Hcqmtk6ibgp}wlPh06I|2YkUKWLqF2*Jds06m}r+@P<6pt%uMj&Kz zUQ3(fzk32Z8c%q8VKx)jJ&c~6&V(l)#9uv|c(|XFPrSsy2fNRXfNFtp z(Vh-^U*Cq=A3#mylDo=Fz_bYLI6$!W2q{(5aF!J%yk#g%w6Tq@ z^>2@!1<6^RlTPlvzb3G=mRNT;n92I1Gq~p{i90i!4fI})X1_3Ly!{}w{%2r0+j6&Z`u{=|zkFI|N|Ib#rsWYtu^kC}~| z(9(V1zyEFBOVb_82_I|5ci~Ki_I-tI#qmrlBlFg)#wq|H44urIuOzUumcFgKMpm(5 z!?B4`{J_EyaBDD#**}OC2qu1mLF`b3cvnBxKmf(#0wAz=KcJxb{iI(v5AUog<0~-2 zzUDKIEqkz2uzEq0;dN+0`O87|gSOVetCWiLc6RvL}xWAs@fx{@@J|-o> zufIn3Ws+WX8Sbg2xTZ|ND9A?7%f!gbM9V}cigK8aBAB= zhW_&vMUUN%6^_!r{8>(}dX3UGOA&^ScKqIdFu3;+k;b+pXrkxk@S=%=5IUUEDK?IC z@<_XS&JTKh=uiXL67K~Scq%8;^U??Oyz(JMkKc)rpNZ13dLx7Tz9in;hr~t_L-VDP zb;DIm_{)Q&UQ&&eaS#HVFg7s+8hvkXr+?F~?*)%{^%1IT#9cWFqaX_{-AC&D*;vsK zy>Dy-TcX%zauZf`vKL%K`70|pxAtWwu73pol|KfVcmr56MBxLsk$K$}AQa5OK^kv+ zoJd2L{ryzz`xlDSF_u8j0P)UVoTZnc`cnW% znR6aSQ7%JY))W5bILeH=jpY6Q796Dos41QiaDd3sRw5nkNNiH)&BiFmMi@GiHvWy& zOJ^l&T-Qj$O%IK$fZ2Nr>(mgA;=D8RrvLI%1S&lnYEV?K8=;T213MBW($t=O2blOS zu0+d7P56M*pnS`dq*PacZPWkZ9-8l8InJXr3W_q~gu{_}<9rmClb)Bi@ISaK-PKEy RJmLTV002ovPDHLkV1i;9h`#^; literal 0 HcmV?d00001 diff --git a/images/rm-64.png b/images/rm-64.png new file mode 100644 index 0000000000000000000000000000000000000000..30341bfa48558ec0f2c892fd45a4048868fb5138 GIT binary patch literal 5236 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 api_date(null), 'atom_updated' => datetime_convert('UTC','UTC','now',ATOM_TIME), 'language' => $user_info['language'], - 'logo' => $a->get_baseurl()."/images/rhash-64.png", + 'logo' => $a->get_baseurl()."/images/rm-64.png", ); return $arr; @@ -1581,7 +1581,7 @@ require_once('include/photos.php'); $name = get_config('system','sitename'); $server = $a->get_hostname(); - $logo = $a->get_baseurl() . '/images/rhash-64.png'; + $logo = $a->get_baseurl() . '/images/rm-64.png'; $email = get_config('system','admin_email'); $closed = ((get_config('system','register_policy') == REGISTER_CLOSED) ? 'true' : 'false'); $private = ((get_config('system','block_public')) ? 'true' : 'false'); diff --git a/util/Doxyfile b/util/Doxyfile index edb8a8464..fce6c1359 100644 --- a/util/Doxyfile +++ b/util/Doxyfile @@ -1,7 +1,7 @@ INPUT = boot.php mod include setup util view RECURSIVE = YES PROJECT_NAME = "The Red Matrix" -PROJECT_LOGO = images/rhash-64.png +PROJECT_LOGO = images/rm-64.png EXCLUDE = .htconfig.php library doc .git EXCLUDE_PATTERNS = *smarty3* *strings.php *.out *test* OUTPUT_DIRECTORY = doc diff --git a/view/tpl/email_notify_html.tpl b/view/tpl/email_notify_html.tpl index 85939ac22..41bbe16a9 100755 --- a/view/tpl/email_notify_html.tpl +++ b/view/tpl/email_notify_html.tpl @@ -7,7 +7,7 @@

    {{$th}}
    {{$u.nickname}} {{$u.account_created}} {{$u.account_service_class}} - - + +
    - + diff --git a/view/tpl/opensearch.tpl b/view/tpl/opensearch.tpl index 26fb5a799..ea260c6ae 100755 --- a/view/tpl/opensearch.tpl +++ b/view/tpl/opensearch.tpl @@ -3,11 +3,11 @@ Red Matrix@{{$nodename}}Search in The Red Matrix@{{$nodename}}http://github.com/friendica/red/ - {{$baseurl}}/images/rhash-16.png - {{$baseurl}}/images/rhash-64.png + {{$baseurl}}/images/rm-16.png + {{$baseurl}}/images/rm-64.png - \ No newline at end of file + From d126c2bcaae4c25eda03b99b4422398ad781c582 Mon Sep 17 00:00:00 2001 From: tuscanhobbit Date: Sat, 23 Nov 2013 20:04:09 +0100 Subject: [PATCH 071/271] redbasic nav bar gradient is now similar to the red shade in the logo --- view/theme/redbasic/php/style.php | 14 ++++++-------- 1 file changed, 6 insertions(+), 8 deletions(-) diff --git a/view/theme/redbasic/php/style.php b/view/theme/redbasic/php/style.php index 1eb5abfbb..9956ccd31 100644 --- a/view/theme/redbasic/php/style.php +++ b/view/theme/redbasic/php/style.php @@ -114,22 +114,20 @@ // Nav colours have nested values, so we have to define the actual variables // used in the CSS from the higher level "red", "black", etc here if ($nav_colour == "red") { - $nav_bg_1 = "#f88"; - $nav_bg_2 = "#b00"; - $nav_bg_3 = "#f00"; - $nav_bg_4 = "#b00"; - $search_background = '#FFDDDD'; + $nav_bg_1 = $nav_bg_3 = "#ba002f"; + $nav_bg_2 = $nav_bg_4 = "#ad002c"; + $search_background = "#EEEEEE"; $active_colour = '#444444'; } if ($nav_colour == "black") { - $nav_bg_1 = $nav_bg_3 = "#000"; - $nav_bg_2 = $nav_bg_4 = "#222"; + $nav_bg_1 = $nav_bg_3 = "#000"; + $nav_bg_2 = $nav_bg_4 = "#222"; $search_background = '#EEEEEE'; $active_colour = '#AAAAAA'; } if ($nav_colour == "silver") { - $nav_bg_1 = $nav_bg_2 = $nav_bg_3 = $nav_bg_4 = "silver"; + $nav_bg_1 = $nav_bg_2 = $nav_bg_3 = $nav_bg_4 = "silver"; $search_background = '#EEEEEE'; } From 421cacfc8d968f981e6c3420017910c3a8d047ab Mon Sep 17 00:00:00 2001 From: tuscanhobbit Date: Sun, 24 Nov 2013 23:06:03 +0100 Subject: [PATCH 072/271] admin user table now shows the channel list, minor changes to summary --- mod/admin.php | 9 ++++++--- view/tpl/admin_summary.tpl | 20 ++++++++------------ view/tpl/admin_users.tpl | 2 ++ 3 files changed, 16 insertions(+), 15 deletions(-) diff --git a/mod/admin.php b/mod/admin.php index 5a3ec48f7..031fe7852 100644 --- a/mod/admin.php +++ b/mod/admin.php @@ -474,7 +474,7 @@ function admin_page_hubloc(&$a) { '$title' => t('Administration'), '$page' => t('Server'), '$queues' => $queues, - '$accounts' => $accounts, + //'$accounts' => $accounts, /*$accounts is empty here*/ '$pending' => Array( t('Pending registrations'), $pending), '$plugins' => Array( t('Active plugins'), $a->plugins ) )); @@ -649,7 +649,10 @@ function admin_page_users(&$a){ if($_REQUEST['order'] === 'expires') $order = " order by account_expires desc "; - $users =q("SELECT `account_id` , `account_email`, `account_lastlog`, `account_created`, `account_expires`, `account_service_class`, ( account_flags & %d ) > 0 as `blocked` FROM `account` where true $serviceclass $order limit %d , %d ", + $users =q("SELECT `account_id` , `account_email`, `account_lastlog`, `account_created`, `account_expires`, " . "`account_service_class`, ( account_flags & %d ) > 0 as `blocked`, " . + "(SELECT GROUP_CONCAT( ch.channel_address SEPARATOR ' ') FROM channel as ch " . + "WHERE ch.channel_account_id = ac.account_id) as `channels` " . + "FROM account as ac where true $serviceclass $order limit %d , %d ", intval(ACCOUNT_BLOCKED), intval($a->pager['start']), intval($a->pager['itemspage']) @@ -689,7 +692,7 @@ function admin_page_users(&$a){ '$unblock' => t('Unblock'), '$h_users' => t('Users'), - '$th_users' => array( t('Email'), t('Register date'), t('Last login'), t('Expires'), t('Service Class')), + '$th_users' => array( t('ID'), t('Email'), t('All Channels'), t('Register date'), t('Last login'), t('Expires'), t('Service Class')), '$confirm_delete_multi' => t('Selected users will be deleted!\n\nEverything these users had posted on this site will be permanently deleted!\n\nAre you sure?'), '$confirm_delete' => t('The user {0} will be deleted!\n\nEverything this user has posted on this site will be permanently deleted!\n\nAre you sure?'), diff --git a/view/tpl/admin_summary.tpl b/view/tpl/admin_summary.tpl index d3665626f..24cdd57cc 100755 --- a/view/tpl/admin_summary.tpl +++ b/view/tpl/admin_summary.tpl @@ -14,27 +14,23 @@
    {{$users.0}}
    {{$users.1}}
    - {{foreach $accounts as $p}} +
    {{$plugins.0}}
    - - {{foreach $plugins.1 as $p}} -
    {{$p}}
    - {{/foreach}} - +
    + {{foreach $plugins.1 as $p}} {{$p}} {{/foreach}} +   +
    -
    {{$version.0}}
    -
    {{$version.1}} - {{$build}} +
    {{$version.1}} - {{$build}}
    - diff --git a/view/tpl/admin_users.tpl b/view/tpl/admin_users.tpl index 609289013..3549dc5c2 100755 --- a/view/tpl/admin_users.tpl +++ b/view/tpl/admin_users.tpl @@ -63,11 +63,13 @@
    {{foreach $users as $u}} + + From a82a1d7c0548eccc10ce9ad71c2514cd70e03b3d Mon Sep 17 00:00:00 2001 From: friendica Date: Sun, 24 Nov 2013 14:39:29 -0800 Subject: [PATCH 073/271] add recipient name to the rest of the notification emails --- include/enotify.php | 84 +++++++++++++++++++++++++-------------------- version.inc | 2 +- 2 files changed, 48 insertions(+), 38 deletions(-) diff --git a/include/enotify.php b/include/enotify.php index cfa8c25ae..808efef51 100644 --- a/include/enotify.php +++ b/include/enotify.php @@ -132,25 +132,28 @@ function notification($params) { //$possess_desc = str_replace('',$possess_desc); // "a post" - $dest_str = sprintf(t('%1$s commented on [zrl=%2$s]a %3$s[/zrl]'), - '[zrl=' . $sender['xchan_url'] . ']' . $sender['xchan_name'] . '[/zrl]', - $itemlink, - $item_post_type); + $dest_str = sprintf(t('%1$s, %2$s commented on [zrl=%3$s]a %4$s[/zrl]'), + $recip['channel_name'], + '[zrl=' . $sender['xchan_url'] . ']' . $sender['xchan_name'] . '[/zrl]', + $itemlink, + $item_post_type); // "George Bull's post" if($p) - $dest_str = sprintf(t('%1$s commented on [zrl=%2$s]%3$s\'s %4$s[/zrl]'), - '[zrl=' . $sender['xchan_url'] . ']' . $sender['xchan_name'] . '[/zrl]', - $itemlink, - $p[0]['author']['xchan_name'], - $item_post_type); + $dest_str = sprintf(t('%1$s, %2$s commented on [zrl=%3$s]%4$s\'s %5$s[/zrl]'), + $recip['channel_name'], + '[zrl=' . $sender['xchan_url'] . ']' . $sender['xchan_name'] . '[/zrl]', + $itemlink, + $p[0]['author']['xchan_name'], + $item_post_type); // "your post" if($p[0]['owner']['xchan_name'] == $p[0]['author']['xchan_name'] && ($p[0]['item_flags'] & ITEM_WALL)) - $dest_str = sprintf(t('%1$s commented on [zrl=%2$s]your %3$s[/zrl]'), - '[zrl=' . $sender['xchan_url'] . ']' . $sender['xchan_name'] . '[/zrl]', - $itemlink, - $item_post_type); + $dest_str = sprintf(t('%1$s, %2$s commented on [zrl=%3$s]your %4$s[/zrl]'), + $recip['channel_name'], + '[zrl=' . $sender['xchan_url'] . ']' . $sender['xchan_name'] . '[/zrl]', + $itemlink, + $item_post_type); // Some mail softwares relies on subject field for threading. // So, we cannot have different subjects for notifications of the same thread. @@ -158,7 +161,7 @@ function notification($params) { // differents subjects for messages on the same thread. $subject = sprintf( t('[Red:Notify] Comment to conversation #%1$d by %2$s'), $parent_id, $sender['xchan_name']); - $preamble = sprintf( t('%s commented on an item/conversation you have been following.'), $sender['xchan_name']); + $preamble = sprintf( t('%1$s, %2$s commented on an item/conversation you have been following.'), $recip['channel_name'], $sender['xchan_name']); $epreamble = $dest_str; $sitelink = t('Please visit %s to view and/or reply to the conversation.'); @@ -170,11 +173,13 @@ function notification($params) { if($params['type'] == NOTIFY_WALL) { $subject = sprintf( t('[Red:Notify] %s posted to your profile wall') , $sender['xchan_name']); - $preamble = sprintf( t('%1$s posted to your profile wall at %2$s') , $sender['xchan_name'], $sitename); + $preamble = sprintf( t('%1$s, %2$s posted to your profile wall at %3$s') , $recip['channel_name'], $sender['xchan_name'], $sitename); - $epreamble = sprintf( t('%1$s posted to [zrl=%2$s]your wall[/zrl]') , - '[zrl=' . $sender['xchan_url'] . ']' . $sender['xchan_name'] . '[/zrl]', - $params['link']); + $epreamble = sprintf( t('%1$s, %2$s posted to [zrl=%3$s]your wall[/zrl]') , + $recip['channel_name'], + '[zrl=' . $sender['xchan_url'] . ']' . $sender['xchan_name'] . '[/zrl]', + $params['link']); + // FIXME - check the item privacy $private = false; @@ -199,9 +204,10 @@ function notification($params) { $subject = sprintf( t('[Red:Notify] %s tagged you') , $sender['xchan_name']); $preamble = sprintf( t('%1$s, %2$s tagged you at %3$s') , $recip['channel_name'], $sender['xchan_name'], $sitename); - $epreamble = sprintf( t('%1$s [zrl=%2$s]tagged you[/zrl].') , - '[zrl=' . $sender['xchan_url'] . ']' . $sender['xchan_name'] . '[/zrl]', - $params['link']); + $epreamble = sprintf( t('%1$s, %2$s [zrl=%3$s]tagged you[/zrl].') , + $recip['channel_name'], + '[zrl=' . $sender['xchan_url'] . ']' . $sender['xchan_name'] . '[/zrl]', + $params['link']); $sitelink = t('Please visit %s to view and/or reply to the conversation.'); $tsitelink = sprintf( $sitelink, $siteurl ); @@ -213,9 +219,10 @@ function notification($params) { $subject = sprintf( t('[Red:Notify] %1$s poked you') , $sender['xchan_name']); $preamble = sprintf( t('%1$s, %2$s poked you at %3$s') , $recip['channel_name'], $sender['xchan_name'], $sitename); - $epreamble = sprintf( t('%1$s [zrl=%2$s]poked you[/zrl].') , - '[zrl=' . $sender['xchan_url'] . ']' . $sender['xchan_name'] . '[/zrl]', - $params['link']); + $epreamble = sprintf( t('%1$s, %2$s [zrl=%2$s]poked you[/zrl].') , + $recip['channel_name'], + '[zrl=' . $sender['xchan_url'] . ']' . $sender['xchan_name'] . '[/zrl]', + $params['link']); $subject = str_replace('poked', t($params['activity']), $subject); $preamble = str_replace('poked', t($params['activity']), $preamble); @@ -229,10 +236,11 @@ function notification($params) { if($params['type'] == NOTIFY_TAGSHARE) { $subject = sprintf( t('[Red:Notify] %s tagged your post') , $sender['xchan_name']); - $preamble = sprintf( t('%1$s tagged your post at %2$s') , $sender['xchan_name'], $sitename); - $epreamble = sprintf( t('%1$s tagged [zrl=%2$s]your post[/zrl]') , - '[zrl=' . $sender['xchan_url'] . ']' . $sender['xchan_name'] . '[/zrl]', - $itemlink); + $preamble = sprintf( t('%1$s, %2$s tagged your post at %3$s') , $recip['channel_name'],$sender['xchan_name'], $sitename); + $epreamble = sprintf( t('%1$s, %2$s tagged [zrl=%3$s]your post[/zrl]') , + $recip['channel_name'], + '[zrl=' . $sender['xchan_url'] . ']' . $sender['xchan_name'] . '[/zrl]', + $itemlink); $sitelink = t('Please visit %s to view and/or reply to the conversation.'); $tsitelink = sprintf( $sitelink, $siteurl ); @@ -242,10 +250,11 @@ function notification($params) { if($params['type'] == NOTIFY_INTRO) { $subject = sprintf( t('[Red:Notify] Introduction received')); - $preamble = sprintf( t('You\'ve received an introduction from \'%1$s\' at %2$s'), $sender['xchan_name'], $sitename); - $epreamble = sprintf( t('You\'ve received [zrl=%1$s]an introduction[/zrl] from %2$s.'), - $itemlink, - '[zrl=' . $sender['xchan_url'] . ']' . $sender['xchan_name'] . '[/zrl]'); + $preamble = sprintf( t('%1$s, you\'ve received an introduction from \'%2$s\' at %3$s'), $recip['channel_name'], $sender['xchan_name'], $sitename); + $epreamble = sprintf( t('%1$s, you\'ve received [zrl=%2$s]an introduction[/zrl] from %3$s.'), + $recip['channel_name'], + $itemlink, + '[zrl=' . $sender['xchan_url'] . ']' . $sender['xchan_name'] . '[/zrl]'); $body = sprintf( t('You may visit their profile at %s'),$sender['xchan_url']); $sitelink = t('Please visit %s to approve or reject the introduction.'); @@ -256,11 +265,12 @@ function notification($params) { if($params['type'] == NOTIFY_SUGGEST) { $subject = sprintf( t('[Red:Notify] Friend suggestion received')); - $preamble = sprintf( t('You\'ve received a friend suggestion from \'%1$s\' at %2$s'), $sender['xchan_name'], $sitename); - $epreamble = sprintf( t('You\'ve received [zrl=%1$s]a friend suggestion[/zrl] for %2$s from %3$s.'), - $itemlink, - '[zrl=' . $params['item']['url'] . ']' . $params['item']['name'] . '[/zrl]', - '[zrl=' . $sender['xchan_url'] . ']' . $sender['xchan_name'] . '[/zrl]'); + $preamble = sprintf( t('%1$s, you\'ve received a friend suggestion from \'%2$s\' at %3$s'), $recip['channel_name'], $sender['xchan_name'], $sitename); + $epreamble = sprintf( t('%1$s, you\'ve received [zrl=%2$s]a friend suggestion[/zrl] for %3$s from %4$s.'), + $recip['channel_name'], + $itemlink, + '[zrl=' . $params['item']['url'] . ']' . $params['item']['name'] . '[/zrl]', + '[zrl=' . $sender['xchan_url'] . ']' . $sender['xchan_name'] . '[/zrl]'); $body = t('Name:') . ' ' . $params['item']['name'] . "\n"; $body .= t('Photo:') . ' ' . $params['item']['photo'] . "\n"; diff --git a/version.inc b/version.inc index ec2cb12cd..2e1d6ddf2 100644 --- a/version.inc +++ b/version.inc @@ -1 +1 @@ -2013-11-23.506 +2013-11-24.507 From ac3ae83a1646404bcd096891bf5da7b47314cfb3 Mon Sep 17 00:00:00 2001 From: friendica Date: Sun, 24 Nov 2013 18:03:12 -0800 Subject: [PATCH 074/271] wordpress-to-red cross-posting tool ported from Friendica --- util/wp/post_to_red/post_to_red.php | 286 ++++++++++++++++++++++++++++ util/wp/post_to_red/readme.txt | 39 ++++ 2 files changed, 325 insertions(+) create mode 100644 util/wp/post_to_red/post_to_red.php create mode 100644 util/wp/post_to_red/readme.txt diff --git a/util/wp/post_to_red/post_to_red.php b/util/wp/post_to_red/post_to_red.php new file mode 100644 index 000000000..8e62a1a56 --- /dev/null +++ b/util/wp/post_to_red/post_to_red.php @@ -0,0 +1,286 @@ +/Uis', '', $post->post_content); + + // get any tags and make them hashtags + $post_tags = get_the_tags($post_id); + if ($post_tags) { + foreach($post_tags as $tag) { + $tag_string .= "#" . $tag->name . " "; + } + } + + $message = $post->post_title . "

    " . $message; + + $message .= "

    permalink: " . $post->guid; + + if (isset($tag_string)) { + $message .= "
    $tag_string"; + } + + $bbcode = xpost_to_html2bbcode($message); + + $url = $seed_location . '/api/statuses/update'; + + + + $headers = array('Authorization' => 'Basic '.base64_encode("$user_name:$password")); + $body = array('status' => $bbcode,'source' => 'WordPress'); + if($channel) + $body['channel'] = $channel; + + // post: + $request = new WP_Http; + $result = $request->request($url , array( 'method' => 'POST', 'body' => $body, 'headers' => $headers)); + + } + + } +} + +function post_to_red_displayAdminContent() { + + $seed_url = post_to_red_get_seed_location(); + $password = post_to_red_get_password(); + $user_acct = post_to_red_get_acct_name(); + $channel = post_to_red_get_channel_name(); + + // debug... + // echo "seed location: $seed_url
    "; + // echo "password: $password
    "; + // echo "user_acct: $user_acct
    "; + + echo << +

    CrossPost to Red Matrix

    +

    This plugin allows you to cross post to your Red Matrix channel.

    + + +
    +

    Configuration

    +
    + Enter the login details of your Red Matrix account

    +   + Password:   + Red Matrix URL:   + Optional channel nickname:   + + +

    +
    +EOF; + + if(isset($_POST['submit'])) { + echo "
    Settings Saved!
    "; + } +} + +function post_to_red_post_checkbox() { + add_meta_box( + 'post_to_red_meta_box_id', + 'Cross Post to Red Matrix', + 'post_to_red_post_meta_content', + 'post', + 'normal', + 'default' + ); +} + +function post_to_red_post_meta_content($post_id) { + wp_nonce_field(plugin_basename( __FILE__ ), 'post_to_red_nonce'); + echo ' Cross post?'; +} + +function post_to_red_post_field_data($post_id) { + + // check if this isn't an auto save + if (defined('DOING_AUTOSAVE') && DOING_AUTOSAVE) + return; + + // security check +// if (!wp_verify_nonce( $_POST['post_to_red_nonce'], plugin_basename( __FILE__ ))) +// return; + + // now store data in custom fields based on checkboxes selected + if (isset($_POST['post_to_red'])) { + update_post_meta($post_id, 'post_to_red', 1); + } else { + update_post_meta($post_id, 'post_to_red', 0); + } +} + +function post_to_red_display_admin_page() { + + if ((isset($_REQUEST["post_to_red_acct_name"])) && (isset($_REQUEST["post_to_red_password"]))) { + + $password = $_REQUEST["post_to_red_password"]; + $red_url = $_REQUEST["post_to_red_url"]; + + update_option('post_to_red_acct_name', $_REQUEST["post_to_red_acct_name"]); + update_option('post_to_red_channel_name', $channelname); + update_option('post_to_red_seed_location', $red_url); + update_option('post_to_red_password', $password); + + } + + post_to_red_displayAdminContent(); +} + +function post_to_red_settings_link($links) { + $settings_link = 'Settings'; + array_unshift($links, $settings_link); + return $links; +} + +function post_to_red_admin() { + add_options_page("Crosspost to redmatrix", "Crosspost to redmatrix", "manage_options", "xpost-to-redmatrix", "post_to_red_display_admin_page"); +} + +register_deactivation_hook( __FILE__, 'post_to_red_deactivate' ); + +add_filter("plugin_action_links_$plugin", "post_to_red_settings_link"); + +add_action("admin_menu", "post_to_red_admin"); +add_action('publish_post', 'post_to_red_post'); +add_action('add_meta_boxes', 'post_to_red_post_checkbox'); +add_action('save_post', 'post_to_red_post_field_data'); + +// from: +// http://www.docgate.com/tutorial/php/how-to-convert-html-to-bbcode-with-php-script.html +function xpost_to_html2bbcode($text) { + $htmltags = array( + '/\(.*?)\<\/b\>/is', + '/\(.*?)\<\/i\>/is', + '/\(.*?)\<\/u\>/is', + '/\(.*?)\<\/ul\>/is', + '/\(.*?)\<\/li\>/is', + '/\/is', // some smiley + '/\/is', + '/\/is', // some smiley + '/\
    (.*?)\<\/div\>/is', + '/\
    (.*?)\<\/div\>/is', + '/\
    (.*?)\<\/div\>/is', + '/\
    (.*?)\<\/div\>/is', + '/\(.*?)\<\/cite\>/is', + '/\(.*?)\<\/blockquote\>/is', + '/\(.*?)\<\/div\>/is', + '/\(.*?)\<\/code\>/is', + '/\/is', + '/\(.*?)\<\/strong\>/is', + '/\(.*?)\<\/em\>/is', + '/\(.*?)\<\/a\>/is', + '/\http:\/\/(.*?)\<\/a\>/is', + '/\(.*?)\<\/a\>/is' + ); + + $bbtags = array( + '[b]$1[/b]', + '[i]$1[/i]', + '[u]$1[/u]', + '[list]$1[/list]', + '[*]$1', + '$3', + '[img]http://$2[/img]' . "\n", + ':$3', + '\[quote\]$1\[/quote\]', + '\[code\]$1\[/code\]', + '', + '', + '', + '\[quote\]$1\[/quote\]', + '$1', + '\[code\]$1\[/code\]', + "\n", + '[b]$1[/b]', + '[i]$1[/i]', + '[email=$1]$3[/email]', + '[url]$1[/url]', + '[url=$1]$3[/url]' + ); + + $text = str_replace ("\n", ' ', $text); + $ntext = preg_replace ($htmltags, $bbtags, $text); + $ntext = preg_replace ($htmltags, $bbtags, $ntext); + + // for too large text and cannot handle by str_replace + if (!$ntext) { + $ntext = str_replace(array('
    ', '
    '), "\n", $text); + $ntext = str_replace(array('', ''), array('[b]', '[/b]'), $ntext); + $ntext = str_replace(array('', ''), array('[i]', '[/i]'), $ntext); + } + + $ntext = strip_tags($ntext); + + $ntext = trim(html_entity_decode($ntext,ENT_QUOTES,'UTF-8')); + return $ntext; +} + + diff --git a/util/wp/post_to_red/readme.txt b/util/wp/post_to_red/readme.txt new file mode 100644 index 000000000..e27c46236 --- /dev/null +++ b/util/wp/post_to_red/readme.txt @@ -0,0 +1,39 @@ +=== CrossPost to redmatrix === +Contributors: duthied, macgirvin +Donate link: TBD +Tags: redmatrix, crosspost +Requires at least: 3.2 +Tested up to: 3.2 +Stable tag: 1.2 + +CrossPost to Red Matrix for WordPress + +== Description == +This plugin allows you to cross post to your Red Matrix account. + +**Note, this plugin converts the html from wordpress into bbcode. +The bbcode conversion doesn't handle height and width of an image, so be warned that if you post a very large +image that is resized via height and with attributes, those attributes won't be honored in the resulatant post. + +== Changelog == += 1.2 = +* ensured no function name collision + += 1.1 = +* Added feedback to settings form post. + += 1.0 = +* Initial release. + +== Installation == + +1. Install the plugin from your Wordpress admin panel. + +OR + +1. Upload the plugin folder to the `/wp-content/plugins/` directory. +2. Activate the plugin through the 'Plugins' menu in WordPress. +3. On the settings page enter your account name and password and the nickname of the channel to post to - then click the submit button +4. To cross-post ensure the check box in the 'Cross Post To redmatrix' is checked before publishing. + +== Frequently Asked Questions == From c63a18a2506778fff37c3e82881e90e24ce545a8 Mon Sep 17 00:00:00 2001 From: friendica Date: Sun, 24 Nov 2013 20:28:51 -0800 Subject: [PATCH 075/271] Add some message_id meta information for wordpress posts so we'll know where to send comments --- mod/item.php | 10 ++++++++++ util/wp/post_to_red/post_to_red.php | 6 +++++- 2 files changed, 15 insertions(+), 1 deletion(-) diff --git a/mod/item.php b/mod/item.php index 7eebbe287..dba9f01b6 100644 --- a/mod/item.php +++ b/mod/item.php @@ -58,6 +58,12 @@ function item_post(&$a) { // If you are unsure, it is prudent (and important) to leave it unset. $origin = (($api_source && array_key_exists('origin',$_REQUEST)) ? intval($_REQUEST['origin']) : 1); + + // To represent message-ids on other networks - this will create an item_id record + + $namespace = (($api_source && array_key_exists('namespace',$_REQUEST)) ? strip_tags($_REQUEST['namespace']) : ''); + $remote_id = (($api_source && array_key_exists('remote_id',$_REQUEST)) ? strip_tags($_REQUEST['remote_id']) : ''); + $owner_hash = null; $message_id = ((x($_REQUEST,'message_id') && $api_source) ? strip_tags($_REQUEST['message_id']) : ''); @@ -782,6 +788,10 @@ function item_post(&$a) { $page_type = 'BUILDBLOCK'; elseif($webpage & ITEM_PDL) $page_type = 'PDL'; + elseif($namespace && $remote_id) { + $page_type = $namespace; + $pagetitle = $remote_id; + } if($page_type) { diff --git a/util/wp/post_to_red/post_to_red.php b/util/wp/post_to_red/post_to_red.php index 8e62a1a56..095884007 100644 --- a/util/wp/post_to_red/post_to_red.php +++ b/util/wp/post_to_red/post_to_red.php @@ -78,6 +78,10 @@ function post_to_red_post($post_id) { } } + $message_namespace = 'wordpress'; + + $message_id = $site_url() . '/' . $post_id; + $message = $post->post_title . "

    " . $message; $message .= "

    permalink: " . $post->guid; @@ -93,7 +97,7 @@ function post_to_red_post($post_id) { $headers = array('Authorization' => 'Basic '.base64_encode("$user_name:$password")); - $body = array('status' => $bbcode,'source' => 'WordPress'); + $body = array('status' => $bbcode,'source' => 'WordPress', 'namespace' => $message_namespace, 'remote_id' => $message_id); if($channel) $body['channel'] = $channel; From 2b47d36a11cd7203c26c50c6cd504726c2cd9b39 Mon Sep 17 00:00:00 2001 From: friendica Date: Sun, 24 Nov 2013 23:15:07 -0800 Subject: [PATCH 076/271] wordpress publish hook was called before the meta storage hook so the plugin would only work on edited posts. This may be a wordpress version issue because you'd think somebody would've noticed it before. --- util/wp/post_to_red/post_to_red.php | 19 ++++++++++++++----- 1 file changed, 14 insertions(+), 5 deletions(-) diff --git a/util/wp/post_to_red/post_to_red.php b/util/wp/post_to_red/post_to_red.php index 095884007..47af7789b 100644 --- a/util/wp/post_to_red/post_to_red.php +++ b/util/wp/post_to_red/post_to_red.php @@ -55,12 +55,19 @@ function post_to_red_get_password() { } function post_to_red_post($post_id) { - + $post = get_post($post_id); + if (isset($_POST['post_to_red'])) { + update_post_meta($post_id, 'post_to_red', 1); + } else { + update_post_meta($post_id, 'post_to_red', 0); + } + + // if meta has been set if (get_post_meta($post_id, "post_to_red", true) == 1) { - + $user_name = post_to_red_get_acct_name(); $password = post_to_red_get_password(); $seed_location = post_to_red_get_seed_location(); @@ -80,7 +87,7 @@ function post_to_red_post($post_id) { $message_namespace = 'wordpress'; - $message_id = $site_url() . '/' . $post_id; + $message_id = site_url() . '/' . $post_id; $message = $post->post_title . "

    " . $message; @@ -148,6 +155,7 @@ EOF; } function post_to_red_post_checkbox() { + add_meta_box( 'post_to_red_meta_box_id', 'Cross Post to Red Matrix', @@ -170,8 +178,9 @@ function post_to_red_post_field_data($post_id) { return; // security check -// if (!wp_verify_nonce( $_POST['post_to_red_nonce'], plugin_basename( __FILE__ ))) -// return; + if((! array_key_exists('post_to_red_nonce', $_POST)) + || (!wp_verify_nonce( $_POST['post_to_red_nonce'], plugin_basename( __FILE__ )))) + return; // now store data in custom fields based on checkboxes selected if (isset($_POST['post_to_red'])) { From c0f2bc436c3fc53b48a588edbe766312fbcdc278 Mon Sep 17 00:00:00 2001 From: friendica Date: Mon, 25 Nov 2013 00:07:00 -0800 Subject: [PATCH 077/271] force HTML notification mails to use predefined colours. --- version.inc | 2 +- view/tpl/email_notify_html.tpl | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/version.inc b/version.inc index 2e1d6ddf2..65cc36208 100644 --- a/version.inc +++ b/version.inc @@ -1 +1 @@ -2013-11-24.507 +2013-11-25.508 diff --git a/view/tpl/email_notify_html.tpl b/view/tpl/email_notify_html.tpl index 41bbe16a9..cf149341e 100755 --- a/view/tpl/email_notify_html.tpl +++ b/view/tpl/email_notify_html.tpl @@ -5,7 +5,7 @@ -
    {{$product}}
    {{$product}}
    {{$preamble}}
    {{$u.channels}} {{$u.account_created}}
    +
    From 24acf29009149968a43dba8399346806fba25bea Mon Sep 17 00:00:00 2001 From: marijus Date: Mon, 25 Nov 2013 13:51:35 +0100 Subject: [PATCH 078/271] polish up share button a little --- view/theme/redbasic/css/style.css | 54 ++++++++++++++----------------- 1 file changed, 24 insertions(+), 30 deletions(-) diff --git a/view/theme/redbasic/css/style.css b/view/theme/redbasic/css/style.css index 660651a7f..3c3851a65 100644 --- a/view/theme/redbasic/css/style.css +++ b/view/theme/redbasic/css/style.css @@ -1195,21 +1195,11 @@ footer { #profile-jot-perms { float: right; - margin-left: 100px; - font-weight: bold; - font-size: 1.2em; - height: auto; - width: auto; - background-color: #0080FF; - border-radius: $radiuspx; - border: 2px outset; - box-shadow: 5px 5px 5px #666; - margin-right: 8px; - padding: 4px; -} - -#profile-jot-perms:active { - box-shadow: 0 0 0 0; + background-color: $toolicon_colour; + border: 1px solid #666; + border-right: none; + border-radius: $radiuspx 0px 0px $radiuspx; + padding: 6px; } #profile-jot-perms-end { @@ -1537,23 +1527,27 @@ tr.mceLast { } #profile-jot-submit { - height: auto; - background-color: #0080FF; - color: #eeeeec; - font-weight: bold; - -webkit-border-radius: $radiuspx; - -moz-border-radius: $radiuspx; - border-radius: $radiuspx; - border: 2px outset #222420 !important; - margin: 0; - float: right; - text-shadow: 1px 1px #111; - width: auto; - box-shadow: 5px 5px 5px #444; + height: 30px; + width: 70px; + background: linear-gradient(top, #0080ff 0%, #0080aa); + background: -webkit-linear-gradient(top, #0080ff 0%, #0080aa); + background: -moz-linear-gradient(top, #0080ff 0%, #0080aa); + background: -o-linear-gradient(top, #0080ff 0%, #0080aa); + background: -ms-linear-gradient(top, #0080ff 0%, #0080aa); + color: #fff; + font-weight: bold; + border-radius: 0px $radiuspx $radiuspx 0px; + float: right; + text-shadow: 1px 1px #111; + cursor: pointer; } -#profile-jot-submit:active { - box-shadow: 0 0 0 0; +#profile-jot-submit:hover { + background: linear-gradient(top, #0080aa 0%, #0080ff); + background: -webkit-linear-gradient(top, #0080aa 0%, #0080ff); + background: -moz-linear-gradient(top, #0080aa 0%, #0080ff); + background: -o-linear-gradient(top, #0080aa 0%, #0080ff); + background: -ms-linear-gradient(top, #0080aa 0%, #0080ff); } #sidebar-page-list .label { From ba6d6876d62759156e9da12e5e1aede14c5c66e1 Mon Sep 17 00:00:00 2001 From: 23n Date: Mon, 25 Nov 2013 22:18:34 +0100 Subject: [PATCH 079/271] no underlined drop icon --- view/theme/redbasic/css/style.css | 1 + 1 file changed, 1 insertion(+) diff --git a/view/theme/redbasic/css/style.css b/view/theme/redbasic/css/style.css index 3c3851a65..ae3758c2e 100644 --- a/view/theme/redbasic/css/style.css +++ b/view/theme/redbasic/css/style.css @@ -3528,6 +3528,7 @@ margin-right: 50px; a .drop-icons { color: #777; font-size: 1.2em; + text-decoration: none; } .drop-icons:hover { From cbe096dd90292613e21725c8468eaf77f934d079 Mon Sep 17 00:00:00 2001 From: friendica Date: Mon, 25 Nov 2013 14:20:57 -0800 Subject: [PATCH 080/271] wp-to-red: now supports editing, titles, and native permalinks --- mod/item.php | 13 +++++++++++++ util/wp/post_to_red/post_to_red.php | 11 ++++++++--- 2 files changed, 21 insertions(+), 3 deletions(-) diff --git a/mod/item.php b/mod/item.php index dba9f01b6..1893bb684 100644 --- a/mod/item.php +++ b/mod/item.php @@ -77,6 +77,8 @@ function item_post(&$a) { $webpage = ((x($_REQUEST,'webpage')) ? intval($_REQUEST['webpage']) : 0); $pagetitle = ((x($_REQUEST,'pagetitle')) ? escape_tags($_REQUEST['pagetitle']) : ''); $layout_mid = ((x($_REQUEST,'layout_mid')) ? escape_tags($_REQUEST['layout_mid']): ''); + $plink = ((x($_REQUEST,'permalink')) ? escape_tags($_REQUEST['permalink']) : ''); + /* Check service class limits */ @@ -196,6 +198,16 @@ function item_post(&$a) { $orig_post = null; + if($namespace && $remote_id) { + // It wasn't an internally generated post - see if we've got an item matching this remote service id + $i = q("select iid from item_id where service = '%s' and sid = '%s' limit 1", + dbesc($namespace), + dbesc($remote_id) + ); + if($i) + $post_id = $i[0]['iid']; + } + if($post_id) { $i = q("SELECT * FROM `item` WHERE `uid` = %d AND `id` = %d LIMIT 1", intval($profile_uid), @@ -616,6 +628,7 @@ function item_post(&$a) { $datarray['layout_mid'] = $layout_mid; $datarray['comment_policy'] = map_scope($channel['channel_w_comment']); $datarray['term'] = $post_tags; + $datarray['plink'] = $plink; // preview mode - prepare the body for display and send it via json diff --git a/util/wp/post_to_red/post_to_red.php b/util/wp/post_to_red/post_to_red.php index 47af7789b..00c9b6b73 100644 --- a/util/wp/post_to_red/post_to_red.php +++ b/util/wp/post_to_red/post_to_red.php @@ -91,8 +91,6 @@ function post_to_red_post($post_id) { $message = $post->post_title . "

    " . $message; - $message .= "

    permalink: " . $post->guid; - if (isset($tag_string)) { $message .= "
    $tag_string"; } @@ -104,7 +102,14 @@ function post_to_red_post($post_id) { $headers = array('Authorization' => 'Basic '.base64_encode("$user_name:$password")); - $body = array('status' => $bbcode,'source' => 'WordPress', 'namespace' => $message_namespace, 'remote_id' => $message_id); + $body = array( + 'title' => xpost_to_html2bbcode($post->post_title), + 'status' => $bbcode, + 'source' => 'WordPress', + 'namespace' => 'wordpress', + 'remote_id' => $message_id, + 'permalink' => $post->guid; + ); if($channel) $body['channel'] = $channel; From fe9162395ae703adf91f7ac32833211ca60ac216 Mon Sep 17 00:00:00 2001 From: friendica Date: Mon, 25 Nov 2013 14:54:14 -0800 Subject: [PATCH 081/271] sort out the preview icons --- mod/item.php | 2 +- view/theme/redbasic/css/style.css | 8 ++++++-- view/tpl/comment_item.tpl | 2 +- view/tpl/jot.tpl | 2 +- 4 files changed, 9 insertions(+), 5 deletions(-) diff --git a/mod/item.php b/mod/item.php index 1893bb684..f5df854ee 100644 --- a/mod/item.php +++ b/mod/item.php @@ -823,7 +823,7 @@ function item_post(&$a) { } $datarray['id'] = $post_id; - $datarray['plink'] = $a->get_baseurl() . '/display/' . $channel['channel_address'] . '/' . $post_id; + $datarray['llink'] = $a->get_baseurl() . '/display/' . $channel['channel_address'] . '/' . $post_id; call_hooks('post_local_end', $datarray); diff --git a/view/theme/redbasic/css/style.css b/view/theme/redbasic/css/style.css index 3c3851a65..6b670126a 100644 --- a/view/theme/redbasic/css/style.css +++ b/view/theme/redbasic/css/style.css @@ -1133,8 +1133,8 @@ footer { #profile-jot-plugin-wrapper, #profile-jot-submit-wrapper { - margin-top: 15px; - width:90%; + margin-top: 10px; + width:92%; } #profile-upload-wrapper { @@ -3515,6 +3515,10 @@ margin-right: 50px; color: $toolicon_colour; } +.comment-preview-icon { + margin-left: 15px; +} + .comment-icon:hover, .jot-icons:hover { color: $toolicon_activecolour; diff --git a/view/tpl/comment_item.tpl b/view/tpl/comment_item.tpl index b8e2b4730..1ea619774 100755 --- a/view/tpl/comment_item.tpl +++ b/view/tpl/comment_item.tpl @@ -61,7 +61,7 @@ diff --git a/view/tpl/jot.tpl b/view/tpl/jot.tpl index b9238f0c0..666fae9cd 100755 --- a/view/tpl/jot.tpl +++ b/view/tpl/jot.tpl @@ -71,7 +71,7 @@ {{/if}} - {{if $preview}}{{$preview}}{{/if}} + {{if $preview}}{{/if}}
    From 95824642a643ccee269f7bf1a5ac570bc966a2e2 Mon Sep 17 00:00:00 2001 From: friendica Date: Mon, 25 Nov 2013 19:07:58 -0800 Subject: [PATCH 082/271] make font-asewome optional. Also include jquery.browser in js/main.js so we can turn off the migration toolkit. --- js/main.js | 39 ++++++++++++++++++++++++++ view/php/theme_init.php | 7 ++--- view/theme/redbasic/php/theme_init.php | 5 ++++ 3 files changed, 46 insertions(+), 5 deletions(-) create mode 100644 view/theme/redbasic/php/theme_init.php diff --git a/js/main.js b/js/main.js index f9dc95daa..e1769f77a 100644 --- a/js/main.js +++ b/js/main.js @@ -1203,3 +1203,42 @@ function zid(s) { s = s + achar + 'f=&zid=' + zid; return s; } + +// provide jquery.browser so we can get rid of the migration toolkit + +jQuery.uaMatch = function( ua ) { + ua = ua.toLowerCase(); + + var match = /(chrome)[ \/]([\w.]+)/.exec( ua ) || + /(webkit)[ \/]([\w.]+)/.exec( ua ) || + /(opera)(?:.*version|)[ \/]([\w.]+)/.exec( ua ) || + /(msie) ([\w.]+)/.exec( ua ) || + ua.indexOf("compatible") < 0 && /(mozilla)(?:.*? rv:([\w.]+)|)/.exec( ua ) || + []; + + return { + browser: match[ 1 ] || "", + version: match[ 2 ] || "0" + }; +}; + + +// Don't clobber any existing jQuery.browser in case it's different +if ( !jQuery.browser ) { + matched = jQuery.uaMatch( navigator.userAgent ); + browser = {}; + + if ( matched.browser ) { + browser[ matched.browser ] = true; + browser.version = matched.version; + } + + // Chrome is Webkit, but Webkit is also Safari. + if ( browser.chrome ) { + browser.webkit = true; + } else if ( browser.webkit ) { + browser.safari = true; + } + + jQuery.browser = browser; +} diff --git a/view/php/theme_init.php b/view/php/theme_init.php index 69d99893a..c33187797 100644 --- a/view/php/theme_init.php +++ b/view/php/theme_init.php @@ -1,20 +1,17 @@ Date: Tue, 26 Nov 2013 00:06:56 -0800 Subject: [PATCH 083/271] will be doing some stuff for which handcrafting xmlrpc requests is too bloody painful. xmlrpc is long dead, but it's the language of wordpress - which is far from dead. --- library/IXR_Library.php | 1371 +++++++++++++++++++++++++++++++++++++++ 1 file changed, 1371 insertions(+) create mode 100644 library/IXR_Library.php diff --git a/library/IXR_Library.php b/library/IXR_Library.php new file mode 100644 index 000000000..9e2537701 --- /dev/null +++ b/library/IXR_Library.php @@ -0,0 +1,1371 @@ +data = $data; + if (!$type) { + $type = $this->calculateType(); + } + $this->type = $type; + if ($type == 'struct') { + // Turn all the values in the array in to new IXR_Value objects + foreach ($this->data as $key => $value) { + $this->data[$key] = new IXR_Value($value); + } + } + if ($type == 'array') { + for ($i = 0, $j = count($this->data); $i < $j; $i++) { + $this->data[$i] = new IXR_Value($this->data[$i]); + } + } + } + + function calculateType() + { + if ($this->data === true || $this->data === false) { + return 'boolean'; + } + if (is_integer($this->data)) { + return 'int'; + } + if (is_double($this->data)) { + return 'double'; + } + + // Deal with IXR object types base64 and date + if (is_object($this->data) && is_a($this->data, 'IXR_Date')) { + return 'date'; + } + if (is_object($this->data) && is_a($this->data, 'IXR_Base64')) { + return 'base64'; + } + + // If it is a normal PHP object convert it in to a struct + if (is_object($this->data)) { + $this->data = get_object_vars($this->data); + return 'struct'; + } + if (!is_array($this->data)) { + return 'string'; + } + + // We have an array - is it an array or a struct? + if ($this->isStruct($this->data)) { + return 'struct'; + } else { + return 'array'; + } + } + + function getXml() + { + // Return XML for this value + switch ($this->type) { + case 'boolean': + return ''.(($this->data) ? '1' : '0').''; + break; + case 'int': + return ''.$this->data.''; + break; + case 'double': + return ''.$this->data.''; + break; + case 'string': + return ''.htmlspecialchars($this->data).''; + break; + case 'array': + $return = ''."\n"; + foreach ($this->data as $item) { + $return .= ' '.$item->getXml()."\n"; + } + $return .= ''; + return $return; + break; + case 'struct': + $return = ''."\n"; + foreach ($this->data as $name => $value) { + $return .= " $name"; + $return .= $value->getXml()."\n"; + } + $return .= ''; + return $return; + break; + case 'date': + case 'base64': + return $this->data->getXml(); + break; + } + return false; + } + + /** + * Checks whether or not the supplied array is a struct or not + * + * @param unknown_type $array + * @return boolean + */ + function isStruct($array) + { + $expected = 0; + foreach ($array as $key => $value) { + if ((string)$key != (string)$expected) { + return true; + } + $expected++; + } + return false; + } +} + +/** + * IXR_MESSAGE + * + * @package IXR + * @since 1.5 + * + */ +class IXR_Message +{ + var $message; + var $messageType; // methodCall / methodResponse / fault + var $faultCode; + var $faultString; + var $methodName; + var $params; + + // Current variable stacks + var $_arraystructs = array(); // The stack used to keep track of the current array/struct + var $_arraystructstypes = array(); // Stack keeping track of if things are structs or array + var $_currentStructName = array(); // A stack as well + var $_param; + var $_value; + var $_currentTag; + var $_currentTagContents; + // The XML parser + var $_parser; + + function IXR_Message($message) + { + $this->message =& $message; + } + + function parse() + { + // first remove the XML declaration + // merged from WP #10698 - this method avoids the RAM usage of preg_replace on very large messages + $header = preg_replace( '/<\?xml.*?\?'.'>/', '', substr($this->message, 0, 100), 1); + $this->message = substr_replace($this->message, $header, 0, 100); + if (trim($this->message) == '') { + return false; + } + $this->_parser = xml_parser_create(); + // Set XML parser to take the case of tags in to account + xml_parser_set_option($this->_parser, XML_OPTION_CASE_FOLDING, false); + // Set XML parser callback functions + xml_set_object($this->_parser, $this); + xml_set_element_handler($this->_parser, 'tag_open', 'tag_close'); + xml_set_character_data_handler($this->_parser, 'cdata'); + $chunk_size = 262144; // 256Kb, parse in chunks to avoid the RAM usage on very large messages + do { + if (strlen($this->message) <= $chunk_size) { + $final = true; + } + $part = substr($this->message, 0, $chunk_size); + $this->message = substr($this->message, $chunk_size); + if (!xml_parse($this->_parser, $part, $final)) { + return false; + } + if ($final) { + break; + } + } while (true); + xml_parser_free($this->_parser); + + // Grab the error messages, if any + if ($this->messageType == 'fault') { + $this->faultCode = $this->params[0]['faultCode']; + $this->faultString = $this->params[0]['faultString']; + } + return true; + } + + function tag_open($parser, $tag, $attr) + { + $this->_currentTagContents = ''; + $this->currentTag = $tag; + switch($tag) { + case 'methodCall': + case 'methodResponse': + case 'fault': + $this->messageType = $tag; + break; + /* Deal with stacks of arrays and structs */ + case 'data': // data is to all intents and puposes more interesting than array + $this->_arraystructstypes[] = 'array'; + $this->_arraystructs[] = array(); + break; + case 'struct': + $this->_arraystructstypes[] = 'struct'; + $this->_arraystructs[] = array(); + break; + } + } + + function cdata($parser, $cdata) + { + $this->_currentTagContents .= $cdata; + } + + function tag_close($parser, $tag) + { + $valueFlag = false; + switch($tag) { + case 'int': + case 'i4': + $value = (int)trim($this->_currentTagContents); + $valueFlag = true; + break; + case 'double': + $value = (double)trim($this->_currentTagContents); + $valueFlag = true; + break; + case 'string': + $value = (string)trim($this->_currentTagContents); + $valueFlag = true; + break; + case 'dateTime.iso8601': + $value = new IXR_Date(trim($this->_currentTagContents)); + $valueFlag = true; + break; + case 'value': + // "If no type is indicated, the type is string." + if (trim($this->_currentTagContents) != '') { + $value = (string)$this->_currentTagContents; + $valueFlag = true; + } + break; + case 'boolean': + $value = (boolean)trim($this->_currentTagContents); + $valueFlag = true; + break; + case 'base64': + $value = base64_decode($this->_currentTagContents); + $valueFlag = true; + break; + /* Deal with stacks of arrays and structs */ + case 'data': + case 'struct': + $value = array_pop($this->_arraystructs); + array_pop($this->_arraystructstypes); + $valueFlag = true; + break; + case 'member': + array_pop($this->_currentStructName); + break; + case 'name': + $this->_currentStructName[] = trim($this->_currentTagContents); + break; + case 'methodName': + $this->methodName = trim($this->_currentTagContents); + break; + } + + if ($valueFlag) { + if (count($this->_arraystructs) > 0) { + // Add value to struct or array + if ($this->_arraystructstypes[count($this->_arraystructstypes)-1] == 'struct') { + // Add to struct + $this->_arraystructs[count($this->_arraystructs)-1][$this->_currentStructName[count($this->_currentStructName)-1]] = $value; + } else { + // Add to array + $this->_arraystructs[count($this->_arraystructs)-1][] = $value; + } + } else { + // Just add as a paramater + $this->params[] = $value; + } + } + $this->_currentTagContents = ''; + } +} + +/** + * IXR_Server + * + * @package IXR + * @since 1.5 + */ +class IXR_Server +{ + var $data; + var $callbacks = array(); + var $message; + var $capabilities; + + function IXR_Server($callbacks = false, $data = false, $wait = false) + { + $this->setCapabilities(); + if ($callbacks) { + $this->callbacks = $callbacks; + } + $this->setCallbacks(); + if (!$wait) { + $this->serve($data); + } + } + + function serve($data = false) + { + if (!$data) { + if (isset($_SERVER['REQUEST_METHOD']) && $_SERVER['REQUEST_METHOD'] !== 'POST') { + header('Content-Type: text/plain'); // merged from WP #9093 + die('XML-RPC server accepts POST requests only.'); + } + + global $HTTP_RAW_POST_DATA; + if (empty($HTTP_RAW_POST_DATA)) { + // workaround for a bug in PHP 5.2.2 - http://bugs.php.net/bug.php?id=41293 + $data = file_get_contents('php://input'); + } else { + $data =& $HTTP_RAW_POST_DATA; + } + } + $this->message = new IXR_Message($data); + if (!$this->message->parse()) { + $this->error(-32700, 'parse error. not well formed'); + } + if ($this->message->messageType != 'methodCall') { + $this->error(-32600, 'server error. invalid xml-rpc. not conforming to spec. Request must be a methodCall'); + } + $result = $this->call($this->message->methodName, $this->message->params); + + // Is the result an error? + if (is_a($result, 'IXR_Error')) { + $this->error($result); + } + + // Encode the result + $r = new IXR_Value($result); + $resultxml = $r->getXml(); + + // Create the XML + $xml = << + + + + $resultxml + + + + + +EOD; + // Send it + $this->output($xml); + } + + function call($methodname, $args) + { + if (!$this->hasMethod($methodname)) { + return new IXR_Error(-32601, 'server error. requested method '.$methodname.' does not exist.'); + } + $method = $this->callbacks[$methodname]; + + // Perform the callback and send the response + if (count($args) == 1) { + // If only one paramater just send that instead of the whole array + $args = $args[0]; + } + + // Are we dealing with a function or a method? + if (is_string($method) && substr($method, 0, 5) == 'this:') { + // It's a class method - check it exists + $method = substr($method, 5); + if (!method_exists($this, $method)) { + return new IXR_Error(-32601, 'server error. requested class method "'.$method.'" does not exist.'); + } + + //Call the method + $result = $this->$method($args); + } else { + // It's a function - does it exist? + if (is_array($method)) { + if (!method_exists($method[0], $method[1])) { + return new IXR_Error(-32601, 'server error. requested object method "'.$method[1].'" does not exist.'); + } + } else if (!function_exists($method)) { + return new IXR_Error(-32601, 'server error. requested function "'.$method.'" does not exist.'); + } + + // Call the function + $result = call_user_func($method, $args); + } + return $result; + } + + function error($error, $message = false) + { + // Accepts either an error object or an error code and message + if ($message && !is_object($error)) { + $error = new IXR_Error($error, $message); + } + $this->output($error->getXml()); + } + + function output($xml) + { + $xml = ''."\n".$xml; + $length = strlen($xml); + header('Connection: close'); + header('Content-Length: '.$length); + header('Content-Type: text/xml'); + header('Date: '.date('r')); + echo $xml; + exit; + } + + function hasMethod($method) + { + return in_array($method, array_keys($this->callbacks)); + } + + function setCapabilities() + { + // Initialises capabilities array + $this->capabilities = array( + 'xmlrpc' => array( + 'specUrl' => 'http://www.xmlrpc.com/spec', + 'specVersion' => 1 + ), + 'faults_interop' => array( + 'specUrl' => 'http://xmlrpc-epi.sourceforge.net/specs/rfc.fault_codes.php', + 'specVersion' => 20010516 + ), + 'system.multicall' => array( + 'specUrl' => 'http://www.xmlrpc.com/discuss/msgReader$1208', + 'specVersion' => 1 + ), + ); + } + + function getCapabilities($args) + { + return $this->capabilities; + } + + function setCallbacks() + { + $this->callbacks['system.getCapabilities'] = 'this:getCapabilities'; + $this->callbacks['system.listMethods'] = 'this:listMethods'; + $this->callbacks['system.multicall'] = 'this:multiCall'; + } + + function listMethods($args) + { + // Returns a list of methods - uses array_reverse to ensure user defined + // methods are listed before server defined methods + return array_reverse(array_keys($this->callbacks)); + } + + function multiCall($methodcalls) + { + // See http://www.xmlrpc.com/discuss/msgReader$1208 + $return = array(); + foreach ($methodcalls as $call) { + $method = $call['methodName']; + $params = $call['params']; + if ($method == 'system.multicall') { + $result = new IXR_Error(-32600, 'Recursive calls to system.multicall are forbidden'); + } else { + $result = $this->call($method, $params); + } + if (is_a($result, 'IXR_Error')) { + $return[] = array( + 'faultCode' => $result->code, + 'faultString' => $result->message + ); + } else { + $return[] = array($result); + } + } + return $return; + } +} + +/** + * IXR_Request + * + * @package IXR + * @since 1.5 + */ +class IXR_Request +{ + var $method; + var $args; + var $xml; + + function IXR_Request($method, $args) + { + $this->method = $method; + $this->args = $args; + $this->xml = << + +{$this->method} + + +EOD; + foreach ($this->args as $arg) { + $this->xml .= ''; + $v = new IXR_Value($arg); + $this->xml .= $v->getXml(); + $this->xml .= "\n"; + } + $this->xml .= ''; + } + + function getLength() + { + return strlen($this->xml); + } + + function getXml() + { + return $this->xml; + } +} + +/** + * IXR_Client + * + * @package IXR + * @since 1.5 + * + */ +class IXR_Client +{ + var $server; + var $port; + var $path; + var $useragent; + var $response; + var $message = false; + var $debug = false; + var $timeout; + + // Storage place for an error message + var $error = false; + + function IXR_Client($server, $path = false, $port = 80, $timeout = 15) + { + if (!$path) { + // Assume we have been given a URL instead + $bits = parse_url($server); + $this->server = $bits['host']; + $this->port = isset($bits['port']) ? $bits['port'] : 80; + $this->path = isset($bits['path']) ? $bits['path'] : '/'; + + // Make absolutely sure we have a path + if (!$this->path) { + $this->path = '/'; + } + } else { + $this->server = $server; + $this->path = $path; + $this->port = $port; + } + $this->useragent = 'The Incutio XML-RPC PHP Library'; + $this->timeout = $timeout; + } + + function query() + { + $args = func_get_args(); + $method = array_shift($args); + $request = new IXR_Request($method, $args); + $length = $request->getLength(); + $xml = $request->getXml(); + $r = "\r\n"; + $request = "POST {$this->path} HTTP/1.0$r"; + + // Merged from WP #8145 - allow custom headers + $this->headers['Host'] = $this->server; + $this->headers['Content-Type'] = 'text/xml'; + $this->headers['User-Agent'] = $this->useragent; + $this->headers['Content-Length']= $length; + + foreach( $this->headers as $header => $value ) { + $request .= "{$header}: {$value}{$r}"; + } + $request .= $r; + + $request .= $xml; + + // Now send the request + if ($this->debug) { + echo '
    '.htmlspecialchars($request)."\n
    \n\n"; + } + + if ($this->timeout) { + $fp = @fsockopen($this->server, $this->port, $errno, $errstr, $this->timeout); + } else { + $fp = @fsockopen($this->server, $this->port, $errno, $errstr); + } + if (!$fp) { + $this->error = new IXR_Error(-32300, 'transport error - could not open socket'); + return false; + } + fputs($fp, $request); + $contents = ''; + $debugContents = ''; + $gotFirstLine = false; + $gettingHeaders = true; + while (!feof($fp)) { + $line = fgets($fp, 4096); + if (!$gotFirstLine) { + // Check line for '200' + if (strstr($line, '200') === false) { + $this->error = new IXR_Error(-32300, 'transport error - HTTP status code was not 200'); + return false; + } + $gotFirstLine = true; + } + if (trim($line) == '') { + $gettingHeaders = false; + } + if (!$gettingHeaders) { + // merged from WP #12559 - remove trim + $contents .= $line; + } + if ($this->debug) { + $debugContents .= $line; + } + } + if ($this->debug) { + echo '
    '.htmlspecialchars($debugContents)."\n
    \n\n"; + } + + // Now parse what we've got back + $this->message = new IXR_Message($contents); + if (!$this->message->parse()) { + // XML error + $this->error = new IXR_Error(-32700, 'parse error. not well formed'); + return false; + } + + // Is the message a fault? + if ($this->message->messageType == 'fault') { + $this->error = new IXR_Error($this->message->faultCode, $this->message->faultString); + return false; + } + + // Message must be OK + return true; + } + + function getResponse() + { + // methodResponses can only have one param - return that + return $this->message->params[0]; + } + + function isError() + { + return (is_object($this->error)); + } + + function getErrorCode() + { + return $this->error->code; + } + + function getErrorMessage() + { + return $this->error->message; + } +} + + +/** + * IXR_Error + * + * @package IXR + * @since 1.5 + */ +class IXR_Error +{ + var $code; + var $message; + + function IXR_Error($code, $message) + { + $this->code = $code; + $this->message = htmlspecialchars($message); + } + + function getXml() + { + $xml = << + + + + + faultCode + {$this->code} + + + faultString + {$this->message} + + + + + + +EOD; + return $xml; + } +} + +/** + * IXR_Date + * + * @package IXR + * @since 1.5 + */ +class IXR_Date { + var $year; + var $month; + var $day; + var $hour; + var $minute; + var $second; + var $timezone; + + function IXR_Date($time) + { + // $time can be a PHP timestamp or an ISO one + if (is_numeric($time)) { + $this->parseTimestamp($time); + } else { + $this->parseIso($time); + } + } + + function parseTimestamp($timestamp) + { + $this->year = date('Y', $timestamp); + $this->month = date('m', $timestamp); + $this->day = date('d', $timestamp); + $this->hour = date('H', $timestamp); + $this->minute = date('i', $timestamp); + $this->second = date('s', $timestamp); + $this->timezone = ''; + } + + function parseIso($iso) + { + $this->year = substr($iso, 0, 4); + $this->month = substr($iso, 4, 2); + $this->day = substr($iso, 6, 2); + $this->hour = substr($iso, 9, 2); + $this->minute = substr($iso, 12, 2); + $this->second = substr($iso, 15, 2); + $this->timezone = substr($iso, 17); + } + + function getIso() + { + return $this->year.$this->month.$this->day.'T'.$this->hour.':'.$this->minute.':'.$this->second.$this->timezone; + } + + function getXml() + { + return ''.$this->getIso().''; + } + + function getTimestamp() + { + return mktime($this->hour, $this->minute, $this->second, $this->month, $this->day, $this->year); + } +} + +/** + * IXR_Base64 + * + * @package IXR + * @since 1.5 + */ +class IXR_Base64 +{ + var $data; + + function IXR_Base64($data) + { + $this->data = $data; + } + + function getXml() + { + return ''.base64_encode($this->data).''; + } +} + +/** + * IXR_IntrospectionServer + * + * @package IXR + * @since 1.5 + */ +class IXR_IntrospectionServer extends IXR_Server +{ + var $signatures; + var $help; + + function IXR_IntrospectionServer() + { + $this->setCallbacks(); + $this->setCapabilities(); + $this->capabilities['introspection'] = array( + 'specUrl' => 'http://xmlrpc.usefulinc.com/doc/reserved.html', + 'specVersion' => 1 + ); + $this->addCallback( + 'system.methodSignature', + 'this:methodSignature', + array('array', 'string'), + 'Returns an array describing the return type and required parameters of a method' + ); + $this->addCallback( + 'system.getCapabilities', + 'this:getCapabilities', + array('struct'), + 'Returns a struct describing the XML-RPC specifications supported by this server' + ); + $this->addCallback( + 'system.listMethods', + 'this:listMethods', + array('array'), + 'Returns an array of available methods on this server' + ); + $this->addCallback( + 'system.methodHelp', + 'this:methodHelp', + array('string', 'string'), + 'Returns a documentation string for the specified method' + ); + } + + function addCallback($method, $callback, $args, $help) + { + $this->callbacks[$method] = $callback; + $this->signatures[$method] = $args; + $this->help[$method] = $help; + } + + function call($methodname, $args) + { + // Make sure it's in an array + if ($args && !is_array($args)) { + $args = array($args); + } + + // Over-rides default call method, adds signature check + if (!$this->hasMethod($methodname)) { + return new IXR_Error(-32601, 'server error. requested method "'.$this->message->methodName.'" not specified.'); + } + $method = $this->callbacks[$methodname]; + $signature = $this->signatures[$methodname]; + $returnType = array_shift($signature); + + // Check the number of arguments + if (count($args) != count($signature)) { + return new IXR_Error(-32602, 'server error. wrong number of method parameters'); + } + + // Check the argument types + $ok = true; + $argsbackup = $args; + for ($i = 0, $j = count($args); $i < $j; $i++) { + $arg = array_shift($args); + $type = array_shift($signature); + switch ($type) { + case 'int': + case 'i4': + if (is_array($arg) || !is_int($arg)) { + $ok = false; + } + break; + case 'base64': + case 'string': + if (!is_string($arg)) { + $ok = false; + } + break; + case 'boolean': + if ($arg !== false && $arg !== true) { + $ok = false; + } + break; + case 'float': + case 'double': + if (!is_float($arg)) { + $ok = false; + } + break; + case 'date': + case 'dateTime.iso8601': + if (!is_a($arg, 'IXR_Date')) { + $ok = false; + } + break; + } + if (!$ok) { + return new IXR_Error(-32602, 'server error. invalid method parameters'); + } + } + // It passed the test - run the "real" method call + return parent::call($methodname, $argsbackup); + } + + function methodSignature($method) + { + if (!$this->hasMethod($method)) { + return new IXR_Error(-32601, 'server error. requested method "'.$method.'" not specified.'); + } + // We should be returning an array of types + $types = $this->signatures[$method]; + $return = array(); + foreach ($types as $type) { + switch ($type) { + case 'string': + $return[] = 'string'; + break; + case 'int': + case 'i4': + $return[] = 42; + break; + case 'double': + $return[] = 3.1415; + break; + case 'dateTime.iso8601': + $return[] = new IXR_Date(time()); + break; + case 'boolean': + $return[] = true; + break; + case 'base64': + $return[] = new IXR_Base64('base64'); + break; + case 'array': + $return[] = array('array'); + break; + case 'struct': + $return[] = array('struct' => 'struct'); + break; + } + } + return $return; + } + + function methodHelp($method) + { + return $this->help[$method]; + } +} + +/** + * IXR_ClientMulticall + * + * @package IXR + * @since 1.5 + */ +class IXR_ClientMulticall extends IXR_Client +{ + var $calls = array(); + + function IXR_ClientMulticall($server, $path = false, $port = 80) + { + parent::IXR_Client($server, $path, $port); + $this->useragent = 'The Incutio XML-RPC PHP Library (multicall client)'; + } + + function addCall() + { + $args = func_get_args(); + $methodName = array_shift($args); + $struct = array( + 'methodName' => $methodName, + 'params' => $args + ); + $this->calls[] = $struct; + } + + function query() + { + // Prepare multicall, then call the parent::query() method + return parent::query('system.multicall', $this->calls); + } +} + +/** + * Client for communicating with a XML-RPC Server over HTTPS. + * + * @author Jason Stirk (@link http://blog.griffin.homelinux.org/projects/xmlrpc/) + * @version 0.2.0 26May2005 08:34 +0800 + * @copyright (c) 2004-2005 Jason Stirk + * @package IXR + */ +class IXR_ClientSSL extends IXR_Client +{ + /** + * Filename of the SSL Client Certificate + * @access private + * @since 0.1.0 + * @var string + */ + var $_certFile; + + /** + * Filename of the SSL CA Certificate + * @access private + * @since 0.1.0 + * @var string + */ + var $_caFile; + + /** + * Filename of the SSL Client Private Key + * @access private + * @since 0.1.0 + * @var string + */ + var $_keyFile; + + /** + * Passphrase to unlock the private key + * @access private + * @since 0.1.0 + * @var string + */ + var $_passphrase; + + /** + * Constructor + * @param string $server URL of the Server to connect to + * @since 0.1.0 + */ + function IXR_ClientSSL($server, $path = false, $port = 443, $timeout = false) + { + parent::IXR_Client($server, $path, $port, $timeout); + $this->useragent = 'The Incutio XML-RPC PHP Library for SSL'; + + // Set class fields + $this->_certFile=false; + $this->_caFile=false; + $this->_keyFile=false; + $this->_passphrase=''; + } + + /** + * Set the client side certificates to communicate with the server. + * + * @since 0.1.0 + * @param string $certificateFile Filename of the client side certificate to use + * @param string $keyFile Filename of the client side certificate's private key + * @param string $keyPhrase Passphrase to unlock the private key + */ + function setCertificate($certificateFile, $keyFile, $keyPhrase='') + { + // Check the files all exist + if (is_file($certificateFile)) { + $this->_certFile = $certificateFile; + } else { + die('Could not open certificate: ' . $certificateFile); + } + + if (is_file($keyFile)) { + $this->_keyFile = $keyFile; + } else { + die('Could not open private key: ' . $keyFile); + } + + $this->_passphrase=(string)$keyPhrase; + } + + function setCACertificate($caFile) + { + if (is_file($caFile)) { + $this->_caFile = $caFile; + } else { + die('Could not open CA certificate: ' . $caFile); + } + } + + /** + * Sets the connection timeout (in seconds) + * @param int $newTimeOut Timeout in seconds + * @returns void + * @since 0.1.2 + */ + function setTimeOut($newTimeOut) + { + $this->timeout = (int)$newTimeOut; + } + + /** + * Returns the connection timeout (in seconds) + * @returns int + * @since 0.1.2 + */ + function getTimeOut() + { + return $this->timeout; + } + + /** + * Set the query to send to the XML-RPC Server + * @since 0.1.0 + */ + function query() + { + $args = func_get_args(); + $method = array_shift($args); + $request = new IXR_Request($method, $args); + $length = $request->getLength(); + $xml = $request->getXml(); + + if ($this->debug) { + echo '
    '.htmlspecialchars($xml)."\n
    \n\n"; + } + + //This is where we deviate from the normal query() + //Rather than open a normal sock, we will actually use the cURL + //extensions to make the calls, and handle the SSL stuff. + + //Since 04Aug2004 (0.1.3) - Need to include the port (duh...) + //Since 06Oct2004 (0.1.4) - Need to include the colon!!! + // (I swear I've fixed this before... ESP in live... But anyhu...) + $curl=curl_init('https://' . $this->server . ':' . $this->port . $this->path); + curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1); + + //Since 23Jun2004 (0.1.2) - Made timeout a class field + curl_setopt($curl, CURLOPT_TIMEOUT, $this->timeout); + + if ($this->debug) { + curl_setopt($curl, CURLOPT_VERBOSE, 1); + } + + curl_setopt($curl, CURLOPT_HEADER, 1); + curl_setopt($curl, CURLOPT_POST, 1); + curl_setopt($curl, CURLOPT_POSTFIELDS, $xml); + curl_setopt($curl, CURLOPT_PORT, $this->port); + curl_setopt($curl, CURLOPT_HTTPHEADER, array( + "Content-Type: text/xml", + "Content-length: {$length}")); + + // Process the SSL certificates, etc. to use + if (!($this->_certFile === false)) { + // We have a certificate file set, so add these to the cURL handler + curl_setopt($curl, CURLOPT_SSLCERT, $this->_certFile); + curl_setopt($curl, CURLOPT_SSLKEY, $this->_keyFile); + + if ($this->debug) { + echo "SSL Cert at : " . $this->_certFile . "\n"; + echo "SSL Key at : " . $this->_keyFile . "\n"; + } + + // See if we need to give a passphrase + if (!($this->_passphrase === '')) { + curl_setopt($curl, CURLOPT_SSLCERTPASSWD, $this->_passphrase); + } + + if ($this->_caFile === false) { + // Don't verify their certificate, as we don't have a CA to verify against + curl_setopt($curl, CURLOPT_SSL_VERIFYHOST, 0); + } else { + // Verify against a CA + curl_setopt($curl, CURLOPT_CAINFO, $this->_caFile); + } + } + + // Call cURL to do it's stuff and return us the content + $contents = curl_exec($curl); + curl_close($curl); + + // Check for 200 Code in $contents + if (!strstr($contents, '200 OK')) { + //There was no "200 OK" returned - we failed + $this->error = new IXR_Error(-32300, 'transport error - HTTP status code was not 200'); + return false; + } + + if ($this->debug) { + echo '
    '.htmlspecialchars($contents)."\n
    \n\n"; + } + // Now parse what we've got back + // Since 20Jun2004 (0.1.1) - We need to remove the headers first + // Why I have only just found this, I will never know... + // So, remove everything before the first < + $contents = substr($contents,strpos($contents, '<')); + + $this->message = new IXR_Message($contents); + if (!$this->message->parse()) { + // XML error + $this->error = new IXR_Error(-32700, 'parse error. not well formed'); + return false; + } + // Is the message a fault? + if ($this->message->messageType == 'fault') { + $this->error = new IXR_Error($this->message->faultCode, $this->message->faultString); + return false; + } + + // Message must be OK + return true; + } +} + +/** + * Extension of the {@link IXR_Server} class to easily wrap objects. + * + * Class is designed to extend the existing XML-RPC server to allow the + * presentation of methods from a variety of different objects via an + * XML-RPC server. + * It is intended to assist in organization of your XML-RPC methods by allowing + * you to "write once" in your existing model classes and present them. + * + * @author Jason Stirk + * @version 1.0.1 19Apr2005 17:40 +0800 + * @copyright Copyright (c) 2005 Jason Stirk + * @package IXR + */ +class IXR_ClassServer extends IXR_Server +{ + var $_objects; + var $_delim; + + function IXR_ClassServer($delim = '.', $wait = false) + { + $this->IXR_Server(array(), false, $wait); + $this->_delimiter = $delim; + $this->_objects = array(); + } + + function addMethod($rpcName, $functionName) + { + $this->callbacks[$rpcName] = $functionName; + } + + function registerObject($object, $methods, $prefix=null) + { + if (is_null($prefix)) + { + $prefix = get_class($object); + } + $this->_objects[$prefix] = $object; + + // Add to our callbacks array + foreach($methods as $method) + { + if (is_array($method)) + { + $targetMethod = $method[0]; + $method = $method[1]; + } + else + { + $targetMethod = $method; + } + $this->callbacks[$prefix . $this->_delimiter . $method]=array($prefix, $targetMethod); + } + } + + function call($methodname, $args) + { + if (!$this->hasMethod($methodname)) { + return new IXR_Error(-32601, 'server error. requested method '.$methodname.' does not exist.'); + } + $method = $this->callbacks[$methodname]; + + // Perform the callback and send the response + if (count($args) == 1) { + // If only one paramater just send that instead of the whole array + $args = $args[0]; + } + + // See if this method comes from one of our objects or maybe self + if (is_array($method) || (substr($method, 0, 5) == 'this:')) { + if (is_array($method)) { + $object=$this->_objects[$method[0]]; + $method=$method[1]; + } else { + $object=$this; + $method = substr($method, 5); + } + + // It's a class method - check it exists + if (!method_exists($object, $method)) { + return new IXR_Error(-32601, 'server error. requested class method "'.$method.'" does not exist.'); + } + + // Call the method + $result = $object->$method($args); + } else { + // It's a function - does it exist? + if (!function_exists($method)) { + return new IXR_Error(-32601, 'server error. requested function "'.$method.'" does not exist.'); + } + + // Call the function + $result = $method($args); + } + return $result; + } +} From ed71567e5ce3cc5c9dd30acc0c2bc527960fa3da Mon Sep 17 00:00:00 2001 From: friendica Date: Tue, 26 Nov 2013 13:24:36 -0800 Subject: [PATCH 084/271] create jquery-compat to hold deprecated jquery functions, load it before all the dependent js scripts --- js/jquery-compat.js | 71 +++++++++++++++++++++++++++++++ js/main.js | 39 ----------------- version.inc | 2 +- view/php/theme_init.php | 3 +- view/theme/redbasic/css/style.css | 6 +-- 5 files changed, 77 insertions(+), 44 deletions(-) create mode 100644 js/jquery-compat.js diff --git a/js/jquery-compat.js b/js/jquery-compat.js new file mode 100644 index 000000000..7bf912542 --- /dev/null +++ b/js/jquery-compat.js @@ -0,0 +1,71 @@ + +// provide jquery.browser so we can get rid of the migration toolkit + +jQuery.uaMatch = function( ua ) { + ua = ua.toLowerCase(); + + var match = /(chrome)[ \/]([\w.]+)/.exec( ua ) || + /(webkit)[ \/]([\w.]+)/.exec( ua ) || + /(opera)(?:.*version|)[ \/]([\w.]+)/.exec( ua ) || + /(msie) ([\w.]+)/.exec( ua ) || + ua.indexOf("compatible") < 0 && /(mozilla)(?:.*? rv:([\w.]+)|)/.exec( ua ) || + []; + + return { + browser: match[ 1 ] || "", + version: match[ 2 ] || "0" + }; +}; + + +// Don't clobber any existing jQuery.browser in case it's different +if ( !jQuery.browser ) { + matched = jQuery.uaMatch( navigator.userAgent ); + browser = {}; + + if ( matched.browser ) { + browser[ matched.browser ] = true; + browser.version = matched.version; + } + + // Chrome is Webkit, but Webkit is also Safari. + if ( browser.chrome ) { + browser.webkit = true; + } else if ( browser.webkit ) { + browser.safari = true; + } + + jQuery.browser = browser; +} + +jQuery.fn.toggle = function( fn, fn2 ) { + + // Don't mess with animation or css toggles + if ( !jQuery.isFunction( fn ) || !jQuery.isFunction( fn2 ) ) { + return oldToggle.apply( this, arguments ); + } + + // Save reference to arguments for access in closure + var args = arguments, + guid = fn.guid || jQuery.guid++, + i = 0, + toggler = function( event ) { + // Figure out which function to execute + var lastToggle = ( jQuery._data( this, "lastToggle" + fn.guid ) || 0 ) % i; + jQuery._data( this, "lastToggle" + fn.guid, lastToggle + 1 ); + + // Make sure that clicks stop + event.preventDefault(); + + // and execute the function + return args[ lastToggle ].apply( this, arguments ) || false; + }; + + // link all the functions, so any of them can unbind this click handler + toggler.guid = guid; + while ( i < args.length ) { + args[ i++ ].guid = guid; + } + + return this.click( toggler ); +}; diff --git a/js/main.js b/js/main.js index e1769f77a..f9dc95daa 100644 --- a/js/main.js +++ b/js/main.js @@ -1203,42 +1203,3 @@ function zid(s) { s = s + achar + 'f=&zid=' + zid; return s; } - -// provide jquery.browser so we can get rid of the migration toolkit - -jQuery.uaMatch = function( ua ) { - ua = ua.toLowerCase(); - - var match = /(chrome)[ \/]([\w.]+)/.exec( ua ) || - /(webkit)[ \/]([\w.]+)/.exec( ua ) || - /(opera)(?:.*version|)[ \/]([\w.]+)/.exec( ua ) || - /(msie) ([\w.]+)/.exec( ua ) || - ua.indexOf("compatible") < 0 && /(mozilla)(?:.*? rv:([\w.]+)|)/.exec( ua ) || - []; - - return { - browser: match[ 1 ] || "", - version: match[ 2 ] || "0" - }; -}; - - -// Don't clobber any existing jQuery.browser in case it's different -if ( !jQuery.browser ) { - matched = jQuery.uaMatch( navigator.userAgent ); - browser = {}; - - if ( matched.browser ) { - browser[ matched.browser ] = true; - browser.version = matched.version; - } - - // Chrome is Webkit, but Webkit is also Safari. - if ( browser.chrome ) { - browser.webkit = true; - } else if ( browser.webkit ) { - browser.safari = true; - } - - jQuery.browser = browser; -} diff --git a/version.inc b/version.inc index 65cc36208..761c49939 100644 --- a/version.inc +++ b/version.inc @@ -1 +1 @@ -2013-11-25.508 +2013-11-26.509 diff --git a/view/php/theme_init.php b/view/php/theme_init.php index c33187797..1ba8d18a4 100644 --- a/view/php/theme_init.php +++ b/view/php/theme_init.php @@ -11,7 +11,8 @@ head_add_css('library/colorbox/colorbox.css'); // head_add_css('library/font_awesome/css/font-awesome.min.css'); head_add_js('js/jquery.js'); -// head_add_js('js/jquery-migrate-1.1.1.js'); +//head_add_js('js/jquery-migrate-1.1.1.js'); +head_add_js('js/jquery-compat.js'); head_add_js('js/spin.js'); head_add_js('js/jquery.spin.js'); head_add_js('js/jquery.textinputs.js'); diff --git a/view/theme/redbasic/css/style.css b/view/theme/redbasic/css/style.css index ce3bfaee9..4b7925ba9 100644 --- a/view/theme/redbasic/css/style.css +++ b/view/theme/redbasic/css/style.css @@ -1978,7 +1978,7 @@ a.mail-list-link { display: block; color: #FFFFFF; margin-top: 15px; - background-color: #F80000; + background-color: $nav_bg_2; -webkit-border-radius: $radiuspx ; -moz-border-radius: $radiuspx; border-radius: $radiuspx; @@ -3002,7 +3002,7 @@ div.jGrowl div.info { width: 90%; } - +a.rconnect, nav a, nav a:active, nav a:visited, @@ -3012,7 +3012,7 @@ nav a:link { outline: none; } -nav a:hover { +a.rconnect:hover, nav a:hover { color: #0080FF; } nav .fakelink { From dde3e28ceb150b2ddc6f60ea6c0c25aa45176921 Mon Sep 17 00:00:00 2001 From: friendica Date: Tue, 26 Nov 2013 15:26:11 -0800 Subject: [PATCH 085/271] add drop_item hook --- include/items.php | 3 +++ 1 file changed, 3 insertions(+) diff --git a/include/items.php b/include/items.php index 9fbd3fd8a..6968781f7 100755 --- a/include/items.php +++ b/include/items.php @@ -3551,6 +3551,9 @@ function drop_item($id,$interactive = true) { if($ok_to_delete) { + $arr = array('item' => $item); + call_hooks('drop_item', $arr ); + $notify_id = intval($item['id']); $items = q("select * from item where parent = %d and uid = %d", From 7aa7f0f4eb201627b89c0587185ad72efc7e6606 Mon Sep 17 00:00:00 2001 From: friendica Date: Tue, 26 Nov 2013 15:50:30 -0800 Subject: [PATCH 086/271] allow editing posts on connectors that support edits --- mod/item.php | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/mod/item.php b/mod/item.php index f5df854ee..6781eba2d 100644 --- a/mod/item.php +++ b/mod/item.php @@ -273,6 +273,7 @@ function item_post(&$a) { $private = $orig_post['item_private']; $item_flags = $orig_post['item_flags']; $item_restrict = $orig_post['item_restrict']; + $postopts = $orig_post['postopts']; } else { @@ -305,6 +306,7 @@ function item_post(&$a) { $verb = notags(trim($_REQUEST['verb'])); $title = escape_tags(trim($_REQUEST['title'])); $body = $_REQUEST['body']; + $postopts = ''; $private = ( ( strlen($str_group_allow) @@ -622,7 +624,7 @@ function item_post(&$a) { $datarray['item_private'] = $private; $datarray['attach'] = $attachments; $datarray['thr_parent'] = $thr_parent; - $datarray['postopts'] = ''; + $datarray['postopts'] = $postopts; $datarray['item_restrict'] = $item_restrict; $datarray['item_flags'] = $item_flags; $datarray['layout_mid'] = $layout_mid; From 6f6fcddfc3fc9bb2e63dd615f29116ced49838d5 Mon Sep 17 00:00:00 2001 From: friendica Date: Tue, 26 Nov 2013 16:38:48 -0800 Subject: [PATCH 087/271] api fixes --- include/api.php | 16 ++++++++++++---- util/wp/post_to_red/post_to_red.php | 11 ++++++++++- 2 files changed, 22 insertions(+), 5 deletions(-) diff --git a/include/api.php b/include/api.php index 8f7be37c7..717f1572a 100644 --- a/include/api.php +++ b/include/api.php @@ -739,7 +739,7 @@ require_once('include/photos.php'); 'created_at' => api_date($lastwall['created']), 'in_reply_to_status_id' => $in_reply_to_status_id, 'source' => (($lastwall['app']) ? $lastwall['app'] : 'web'), - 'id' => (($w) ? $w[0]['abook_id'] : $user_info['id']), + 'id' => ($lastwall['id']), 'in_reply_to_user_id' => $in_reply_to_user_id, 'in_reply_to_screen_name' => $in_reply_to_screen_name, 'geo' => '', @@ -1081,10 +1081,18 @@ require_once('include/photos.php'); // params $id = intval(argv(3)); - logger('API: api_statuses_destroy: '.$id); + // first prove that we own the item - require_once('include/items.php'); - drop_item($id, false); + $r = q("select * from item where id = %d and uid = %d limit 1", + intval($id), + intval($user_info['uid']) + ); + + if($r) { + logger('API: api_statuses_destroy: '.$id); + require_once('include/items.php'); + drop_item($id, false); + } if ($type == 'xml') $ok = "true"; diff --git a/util/wp/post_to_red/post_to_red.php b/util/wp/post_to_red/post_to_red.php index 00c9b6b73..4c353468c 100644 --- a/util/wp/post_to_red/post_to_red.php +++ b/util/wp/post_to_red/post_to_red.php @@ -108,7 +108,7 @@ function post_to_red_post($post_id) { 'source' => 'WordPress', 'namespace' => 'wordpress', 'remote_id' => $message_id, - 'permalink' => $post->guid; + 'permalink' => $post->guid ); if($channel) $body['channel'] = $channel; @@ -117,6 +117,15 @@ function post_to_red_post($post_id) { $request = new WP_Http; $result = $request->request($url , array( 'method' => 'POST', 'body' => $body, 'headers' => $headers)); +// if($result['response']['code'] == 200) { +// $j = json_decode($result['body'],true); +// if($j && $j['id']) { +// // store the red id in case we need to delete it in the future. +// +// } +// } +// logger('post_to_red returns: ' . print_r($result,true)); + } } From ef53c72a708ed2b1ba4cc1ffc6a926a33ba6a2f2 Mon Sep 17 00:00:00 2001 From: friendica Date: Tue, 26 Nov 2013 17:02:49 -0800 Subject: [PATCH 088/271] delete from the wp side as well as from the red side --- include/api.php | 40 +++++++++++++++------- util/wp/post_to_red/post_to_red.php | 52 +++++++++++++++++++++-------- 2 files changed, 66 insertions(+), 26 deletions(-) diff --git a/include/api.php b/include/api.php index 717f1572a..ca5592d08 100644 --- a/include/api.php +++ b/include/api.php @@ -1080,19 +1080,35 @@ require_once('include/photos.php'); // params $id = intval(argv(3)); + if($id) { + // first prove that we own the item - // first prove that we own the item - - $r = q("select * from item where id = %d and uid = %d limit 1", - intval($id), - intval($user_info['uid']) - ); - - if($r) { - logger('API: api_statuses_destroy: '.$id); - require_once('include/items.php'); - drop_item($id, false); + $r = q("select * from item where id = %d and uid = %d limit 1", + intval($id), + intval($user_info['uid']) + ); + if(! $r) + return false; } + else { + if($_REQUEST['namespace'] && $_REQUEST['remote_id']) { + $r = q("select * from item_id where service = '%s' and sid = '%s' and uid = %d limit 1", + dbesc($_REQUEST['namespace']), + dbesc($_REQUEST['remote_id']), + intval($user_info['uid']) + ); + if(! $r) + return false; + $id = $r[0]['iid']; + } + } + if(! $id) + return false; + + logger('API: api_statuses_destroy: '.$id); + require_once('include/items.php'); + drop_item($id, false); + if ($type == 'xml') $ok = "true"; @@ -1114,7 +1130,7 @@ require_once('include/photos.php'); if (api_user()===false) return false; $user_info = api_get_user($a); - // get last newtork messages + // get last network messages // params diff --git a/util/wp/post_to_red/post_to_red.php b/util/wp/post_to_red/post_to_red.php index 4c353468c..d89ab91be 100644 --- a/util/wp/post_to_red/post_to_red.php +++ b/util/wp/post_to_red/post_to_red.php @@ -85,12 +85,8 @@ function post_to_red_post($post_id) { } } - $message_namespace = 'wordpress'; - $message_id = site_url() . '/' . $post_id; - $message = $post->post_title . "

    " . $message; - if (isset($tag_string)) { $message .= "
    $tag_string"; } @@ -98,8 +94,6 @@ function post_to_red_post($post_id) { $bbcode = xpost_to_html2bbcode($message); $url = $seed_location . '/api/statuses/update'; - - $headers = array('Authorization' => 'Basic '.base64_encode("$user_name:$password")); $body = array( @@ -117,20 +111,49 @@ function post_to_red_post($post_id) { $request = new WP_Http; $result = $request->request($url , array( 'method' => 'POST', 'body' => $body, 'headers' => $headers)); -// if($result['response']['code'] == 200) { -// $j = json_decode($result['body'],true); -// if($j && $j['id']) { -// // store the red id in case we need to delete it in the future. -// -// } -// } -// logger('post_to_red returns: ' . print_r($result,true)); + } + + } +} + + +function post_to_red_delete_post($post_id) { + + $post = get_post($post_id); + + // if meta has been set + if (get_post_meta($post_id, "post_to_red", true) == 1) { + + $user_name = post_to_red_get_acct_name(); + $password = post_to_red_get_password(); + $seed_location = post_to_red_get_seed_location(); + $channel = post_to_red_get_channel_name(); + + if ((isset($user_name)) && (isset($password)) && (isset($seed_location))) { + + $message_id = site_url() . '/' . $post_id; + $url = $seed_location . '/api/statuses/destroy'; + + $headers = array('Authorization' => 'Basic '.base64_encode("$user_name:$password")); + $body = array( + 'namespace' => 'wordpress', + 'remote_id' => $message_id, + ); + if($channel) + $body['channel'] = $channel; + + // post: + $request = new WP_Http; + $result = $request->request($url , array( 'method' => 'POST', 'body' => $body, 'headers' => $headers)); } } } + + + function post_to_red_displayAdminContent() { $seed_url = post_to_red_get_seed_location(); @@ -239,6 +262,7 @@ add_action("admin_menu", "post_to_red_admin"); add_action('publish_post', 'post_to_red_post'); add_action('add_meta_boxes', 'post_to_red_post_checkbox'); add_action('save_post', 'post_to_red_post_field_data'); +add_action('before_delete_post', 'post_to_red_delete_post'); // from: // http://www.docgate.com/tutorial/php/how-to-convert-html-to-bbcode-with-php-script.html From 64b71a231b9f8e01490b78316205923c77c68c48 Mon Sep 17 00:00:00 2001 From: friendica Date: Tue, 26 Nov 2013 18:33:49 -0800 Subject: [PATCH 089/271] link the plugins at both ends so that each can discover a post that was imported/exported to/from the other and keep track of updates accordingly --- util/wp/post_to_red/post_to_red.php | 17 ++++++----------- 1 file changed, 6 insertions(+), 11 deletions(-) diff --git a/util/wp/post_to_red/post_to_red.php b/util/wp/post_to_red/post_to_red.php index d89ab91be..55177238d 100644 --- a/util/wp/post_to_red/post_to_red.php +++ b/util/wp/post_to_red/post_to_red.php @@ -59,14 +59,11 @@ function post_to_red_post($post_id) { $post = get_post($post_id); if (isset($_POST['post_to_red'])) { - update_post_meta($post_id, 'post_to_red', 1); - } else { - update_post_meta($post_id, 'post_to_red', 0); - } - + update_post_meta($post_id, 'post_to_red', '1'); + } // if meta has been set - if (get_post_meta($post_id, "post_to_red", true) == 1) { + if (get_post_meta($post_id, "post_to_red", true) === '1') { $user_name = post_to_red_get_acct_name(); $password = post_to_red_get_password(); @@ -122,7 +119,7 @@ function post_to_red_delete_post($post_id) { $post = get_post($post_id); // if meta has been set - if (get_post_meta($post_id, "post_to_red", true) == 1) { + if (get_post_meta($post_id, "post_to_red", true) == '1') { $user_name = post_to_red_get_acct_name(); $password = post_to_red_get_password(); @@ -221,10 +218,8 @@ function post_to_red_post_field_data($post_id) { // now store data in custom fields based on checkboxes selected if (isset($_POST['post_to_red'])) { - update_post_meta($post_id, 'post_to_red', 1); - } else { - update_post_meta($post_id, 'post_to_red', 0); - } + update_post_meta($post_id, 'post_to_red', '1'); + } } function post_to_red_display_admin_page() { From fd57b63c1d8e840db6902c7f8e04f69de2c58a3b Mon Sep 17 00:00:00 2001 From: friendica Date: Tue, 26 Nov 2013 21:21:40 -0800 Subject: [PATCH 090/271] add terms and categories, fix a delivery loop (stops at one cycle but we don't need a post coming back that we just sent out). --- util/wp/post_to_red/post_to_red.php | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/util/wp/post_to_red/post_to_red.php b/util/wp/post_to_red/post_to_red.php index 55177238d..427e0f5e2 100644 --- a/util/wp/post_to_red/post_to_red.php +++ b/util/wp/post_to_red/post_to_red.php @@ -119,7 +119,7 @@ function post_to_red_delete_post($post_id) { $post = get_post($post_id); // if meta has been set - if (get_post_meta($post_id, "post_to_red", true) == '1') { + if ((get_post_meta($post_id, "post_to_red", true) == '1') || (get_post_meta($post_id, "post_from_red", true) == '1')) { $user_name = post_to_red_get_acct_name(); $password = post_to_red_get_password(); From ff635f0133532b82efc1e1fb531a1e3943cfe337 Mon Sep 17 00:00:00 2001 From: friendica Date: Tue, 26 Nov 2013 23:00:32 -0800 Subject: [PATCH 091/271] ensure that drop_item doesn't recurse --- include/items.php | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/include/items.php b/include/items.php index 6968781f7..02f733d92 100755 --- a/include/items.php +++ b/include/items.php @@ -3525,7 +3525,7 @@ function drop_item($id,$interactive = true) { intval($id) ); - if(! $r) { + if((! $r) || ($r[0]['item_restrict'] & ITEM_DELETED)) { if(! $interactive) return 0; notice( t('Item not found.') . EOL); From da29ce6dac0667de2883101e34c9dd64258719ce Mon Sep 17 00:00:00 2001 From: friendica Date: Tue, 26 Nov 2013 23:10:10 -0800 Subject: [PATCH 092/271] more loop prevention --- include/items.php | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/include/items.php b/include/items.php index 02f733d92..45c5f5ac9 100755 --- a/include/items.php +++ b/include/items.php @@ -3551,6 +3551,14 @@ function drop_item($id,$interactive = true) { if($ok_to_delete) { + // set the deleted flag immediately on this item just in case the + // hook calls a remote process which loops. We'll delete it properly in a second. + + $r = q("UPDATE item SET item_restrict = ( item_restrict | %d ) WHERE id = %d LIMIT 1", + intval(ITEM_DELETED), + intval($item['id']) + ); + $arr = array('item' => $item); call_hooks('drop_item', $arr ); From e3f5c4458bc637ca304b807d2125f332965e4126 Mon Sep 17 00:00:00 2001 From: friendica Date: Wed, 27 Nov 2013 00:48:17 -0800 Subject: [PATCH 093/271] re-enable jquery migration tool until we sort out all the issues --- version.inc | 2 +- view/php/theme_init.php | 4 ++-- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/version.inc b/version.inc index 761c49939..099c10c8d 100644 --- a/version.inc +++ b/version.inc @@ -1 +1 @@ -2013-11-26.509 +2013-11-27.510 diff --git a/view/php/theme_init.php b/view/php/theme_init.php index 1ba8d18a4..f49b9c043 100644 --- a/view/php/theme_init.php +++ b/view/php/theme_init.php @@ -11,8 +11,8 @@ head_add_css('library/colorbox/colorbox.css'); // head_add_css('library/font_awesome/css/font-awesome.min.css'); head_add_js('js/jquery.js'); -//head_add_js('js/jquery-migrate-1.1.1.js'); -head_add_js('js/jquery-compat.js'); +head_add_js('js/jquery-migrate-1.1.1.js'); +//head_add_js('js/jquery-compat.js'); head_add_js('js/spin.js'); head_add_js('js/jquery.spin.js'); head_add_js('js/jquery.textinputs.js'); From 64b467ea98fd4cf3cb6215be9ff8e5a9d13ba1a8 Mon Sep 17 00:00:00 2001 From: friendica Date: Wed, 27 Nov 2013 02:51:16 -0800 Subject: [PATCH 094/271] reduce the likelihood that a given channel will have 30-40 valid hublocs with the same hubloc_url. --- include/zot.php | 31 +++++++++---------------------- mod/zfinger.php | 2 +- 2 files changed, 10 insertions(+), 23 deletions(-) diff --git a/include/zot.php b/include/zot.php index 65f3b606f..0e92b0bff 100644 --- a/include/zot.php +++ b/include/zot.php @@ -18,33 +18,20 @@ function zot_new_uid($channel_nick) { /** - * - * Given an array of zot hashes, return all distinct hubs - * If primary is true, return only primary hubs - * Result is ordered by url to assist in batching. - * Return only the first primary hub as there should only be one. + * @function zot_get_hublocs($hash) + * Given a zot hash, return all distinct hubs + * @param string $hash - xchan_hash + * @retuns array * */ -function zot_get_hubloc($arr,$primary = false) { +function zot_get_hublocs($hash) { - $tmp = ''; - - if(is_array($arr)) { - foreach($arr as $e) { - if(strlen($tmp)) - $tmp .= ','; - $tmp .= "'" . dbesc($e) . "'" ; - } - } - - if(! strlen($tmp)) - return array(); - - $sql_extra = (($primary) ? " and hubloc_flags & " . intval(HUBLOC_FLAGS_PRIMARY) : "" ); - $limit = (($primary) ? " limit 1 " : ""); - return q("select * from hubloc where hubloc_hash in ( $tmp ) $sql_extra order by hubloc_url $limit"); + $ret = q("select * from hubloc where hubloc_hash = '%s' group by hubloc_url ", + dbesc($hash) + ); + return $ret; } /* diff --git a/mod/zfinger.php b/mod/zfinger.php index 59cef5549..2eb6adc75 100644 --- a/mod/zfinger.php +++ b/mod/zfinger.php @@ -164,7 +164,7 @@ function zfinger_init(&$a) { $ret['locations'] = array(); - $x = zot_get_hubloc(array($e['channel_hash'])); + $x = zot_get_hublocs($e['channel_hash']); if($x && count($x)) { foreach($x as $hub) { if(! ($hub['hubloc_flags'] & HUBLOC_FLAGS_UNVERIFIED)) { From 11983c12429021565f2400f893d85b5d4c6f9779 Mon Sep 17 00:00:00 2001 From: Olivier Migeot Date: Wed, 27 Nov 2013 12:30:01 +0100 Subject: [PATCH 095/271] Quick hack to allow themes/modules to use different CSS classes for the ACL selector's icon (e.g. icon-lock/icon-unlock instead of lock/unlock). Unless a theme supports it, they'll stay at their former values. Dunno if it's the best way to achieve this, though. --- js/acl.js | 16 ++++++++++++++-- 1 file changed, 14 insertions(+), 2 deletions(-) diff --git a/js/acl.js b/js/acl.js index 591c9c467..906b28354 100644 --- a/js/acl.js +++ b/js/acl.js @@ -152,11 +152,23 @@ ACL.prototype.set_deny = function(itemid){ } ACL.prototype.update_view = function(){ + var jotpermslock; + var jotpermsunlock; + if (document.jotpermslock == null) { + jotpermslock = 'lock'; + } else { + jotpermslock = document.jotpermslock; + } + if (document.jotpermsunlock == null) { + jotpermsunlock = 'unlock'; + } else { + jotpermsunlock = document.jotpermsunlock; + } if (that.allow_gid.length==0 && that.allow_cid.length==0 && that.deny_gid.length==0 && that.deny_cid.length==0){ that.showall.addClass("selected"); /* jot acl */ - $('#jot-perms-icon').removeClass('lock').addClass('unlock'); + $('#jot-perms-icon').removeClass(jotpermslock).addClass(jotpermsunlock); $('#jot-public').show(); $('.profile-jot-net input').attr('disabled', false); if(typeof editor != 'undefined' && editor != false) { @@ -166,7 +178,7 @@ ACL.prototype.update_view = function(){ } else { that.showall.removeClass("selected"); /* jot acl */ - $('#jot-perms-icon').removeClass('unlock').addClass('lock'); + $('#jot-perms-icon').removeClass(jotpermsunlock).addClass(jotpermslock); $('#jot-public').hide(); $('.profile-jot-net input').attr('disabled', 'disabled'); $('#profile-jot-desc').html(' '); From f8d49ef560945390d4c7de86756541f4b5d72ff8 Mon Sep 17 00:00:00 2001 From: "p.tacconi" Date: Wed, 27 Nov 2013 13:56:30 +0100 Subject: [PATCH 096/271] italian translation --- view/it/messages.po | 814 ++++++++++++++++++++++---------------------- view/it/strings.php | 27 +- 2 files changed, 418 insertions(+), 423 deletions(-) diff --git a/view/it/messages.po b/view/it/messages.po index 0143952d4..901b19efc 100644 --- a/view/it/messages.po +++ b/view/it/messages.po @@ -13,8 +13,8 @@ msgid "" msgstr "" "Project-Id-Version: Red Matrix\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2013-11-15 00:03-0800\n" -"PO-Revision-Date: 2013-11-22 22:02+0000\n" +"POT-Creation-Date: 2013-11-22 00:02-0800\n" +"PO-Revision-Date: 2013-11-27 11:34+0000\n" "Last-Translator: tuscanhobbit Pa \n" "Language-Team: Italian (http://www.transifex.com/projects/p/red-matrix/language/it/)\n" "MIME-Version: 1.0\n" @@ -66,6 +66,10 @@ msgstr "Diario pubblico" msgid "Red Matrix Notification" msgstr "Notifica di Red Matrix" +#: ../../include/enotify.php:37 +msgid "redmatrix" +msgstr "redmatrix" + #: ../../include/enotify.php:39 msgid "Thank You," msgstr "Grazie," @@ -87,8 +91,8 @@ msgstr "[Red:Notifica] Nuovo messaggio ricevuto alle %s" #: ../../include/enotify.php:82 #, php-format -msgid "%1$s sent you a new private message at %2$s." -msgstr "%1$s ti ha mandato un messaggio privato alle %2$s." +msgid "%1$s, %2$s sent you a new private message at %3$s." +msgstr "%1$s, %2$s ti ha mandato un messaggio privato alle %3$s." #: ../../include/enotify.php:83 #, php-format @@ -158,8 +162,8 @@ msgstr "[Red:Notifica] %s ti ha taggato" #: ../../include/enotify.php:201 #, php-format -msgid "%1$s tagged you at %2$s" -msgstr "%1$s ti ha taggato alle %2$s" +msgid "%1$s, %2$s tagged you at %3$s" +msgstr "%1$s, %2$s ti ha taggato alle %3$s" #: ../../include/enotify.php:202 #, php-format @@ -173,8 +177,8 @@ msgstr "[Red:Notifica] %1$s ti ha mandato un poke" #: ../../include/enotify.php:215 #, php-format -msgid "%1$s poked you at %2$s" -msgstr "%1$s ti ha mandato un poke alle %2$s" +msgid "%1$s, %2$s poked you at %3$s" +msgstr "%1$s, %2$s ti ha mandato un poke alle %3$s" #: ../../include/enotify.php:216 #, php-format @@ -253,7 +257,7 @@ msgid "Private Message" msgstr "Messaggio privato" #: ../../include/ItemObject.php:95 ../../include/page_widgets.php:8 -#: ../../mod/webpages.php:101 ../../mod/settings.php:712 ../../mod/menu.php:55 +#: ../../mod/webpages.php:101 ../../mod/settings.php:713 ../../mod/menu.php:55 #: ../../mod/layouts.php:102 ../../mod/editlayout.php:100 #: ../../mod/editwebpage.php:119 ../../mod/blocks.php:93 #: ../../mod/editpost.php:97 ../../mod/editblock.php:114 @@ -261,8 +265,8 @@ msgid "Edit" msgstr "Modifica" #: ../../include/ItemObject.php:107 ../../include/conversation.php:628 -#: ../../mod/settings.php:713 ../../mod/admin.php:677 ../../mod/group.php:182 -#: ../../mod/photos.php:1130 ../../mod/connections.php:354 +#: ../../mod/settings.php:714 ../../mod/admin.php:686 ../../mod/group.php:182 +#: ../../mod/photos.php:1130 ../../mod/connections.php:374 #: ../../mod/filestorage.php:82 msgid "Delete" msgstr "Elimina" @@ -386,20 +390,20 @@ msgstr "Commento" #: ../../include/ItemObject.php:530 ../../mod/events.php:458 #: ../../mod/thing.php:190 ../../mod/invite.php:154 ../../mod/setup.php:302 -#: ../../mod/setup.php:345 ../../mod/settings.php:650 -#: ../../mod/settings.php:762 ../../mod/settings.php:790 -#: ../../mod/settings.php:814 ../../mod/settings.php:885 -#: ../../mod/settings.php:1053 ../../mod/connect.php:96 +#: ../../mod/setup.php:345 ../../mod/settings.php:651 +#: ../../mod/settings.php:763 ../../mod/settings.php:791 +#: ../../mod/settings.php:815 ../../mod/settings.php:886 +#: ../../mod/settings.php:1054 ../../mod/connect.php:96 #: ../../mod/sources.php:83 ../../mod/sources.php:110 ../../mod/admin.php:418 -#: ../../mod/admin.php:670 ../../mod/admin.php:810 ../../mod/admin.php:1009 -#: ../../mod/admin.php:1096 ../../mod/group.php:87 ../../mod/photos.php:685 +#: ../../mod/admin.php:679 ../../mod/admin.php:819 ../../mod/admin.php:1018 +#: ../../mod/admin.php:1105 ../../mod/group.php:87 ../../mod/photos.php:685 #: ../../mod/photos.php:779 ../../mod/photos.php:1040 #: ../../mod/photos.php:1080 ../../mod/photos.php:1167 #: ../../mod/message.php:333 ../../mod/message.php:515 -#: ../../mod/connections.php:432 ../../mod/profiles.php:529 +#: ../../mod/connections.php:452 ../../mod/profiles.php:529 #: ../../mod/import.php:385 ../../mod/crepair.php:166 ../../mod/poke.php:166 #: ../../mod/fsuggest.php:108 ../../mod/mood.php:137 -#: ../../view/theme/redbasic/php/config.php:79 +#: ../../view/theme/redbasic/php/config.php:85 #: ../../view/theme/apw/php/config.php:231 msgid "Submit" msgstr "Salva" @@ -451,7 +455,7 @@ msgstr "Crittografia del testo" #: ../../include/Contact.php:87 ../../include/contact_widgets.php:23 #: ../../mod/match.php:58 ../../mod/suggest.php:56 ../../mod/directory.php:198 -#: ../../boot.php:1745 +#: ../../boot.php:1741 msgid "Connect" msgstr "Connetti" @@ -472,8 +476,8 @@ msgid "View Status" msgstr "Guarda il messaggio di stato" #: ../../include/Contact.php:526 ../../include/nav.php:76 -#: ../../include/conversation.php:925 ../../mod/connections.php:307 -#: ../../mod/connections.php:421 +#: ../../include/conversation.php:925 ../../mod/connections.php:327 +#: ../../mod/connections.php:441 msgid "View Profile" msgstr "Profilo" @@ -553,8 +557,8 @@ msgstr "OStatus" msgid "RSS/Atom" msgstr "RSS/Atom" -#: ../../include/contact_selectors.php:77 ../../mod/admin.php:673 -#: ../../mod/admin.php:682 ../../boot.php:1465 +#: ../../include/contact_selectors.php:77 ../../mod/admin.php:682 +#: ../../mod/admin.php:691 ../../boot.php:1461 msgid "Email" msgstr "Email" @@ -673,7 +677,7 @@ msgid "Finishes:" msgstr "Fine:" #: ../../include/event.php:40 ../../include/bb2diaspora.php:455 -#: ../../mod/events.php:450 ../../mod/directory.php:173 ../../boot.php:1795 +#: ../../mod/events.php:450 ../../mod/directory.php:173 ../../boot.php:1791 msgid "Location:" msgstr "Luogo:" @@ -833,14 +837,6 @@ msgstr "Permette di selezionare i contenuti in base al livello di amicizia" msgid "Post/Comment Tools" msgstr "Gestione articoli e commenti" -#: ../../include/features.php:56 -msgid "Multiple Deletion" -msgstr "Eliminazione multipla" - -#: ../../include/features.php:56 -msgid "Select and delete multiple posts/comments at once" -msgstr "Rendi possibile l'eliminazione di molti articoli o commenti con un solo comando" - #: ../../include/features.php:57 msgid "Edit Sent Posts" msgstr "Modifica gli articoli già inviati" @@ -1065,12 +1061,12 @@ msgstr "Foto del profilo" msgid "Profile" msgstr "Profilo" -#: ../../include/profile_advanced.php:15 ../../mod/settings.php:1061 +#: ../../include/profile_advanced.php:15 ../../mod/settings.php:1062 msgid "Full Name:" msgstr "Nome completo:" #: ../../include/profile_advanced.php:17 ../../mod/directory.php:175 -#: ../../boot.php:1797 +#: ../../boot.php:1793 msgid "Gender:" msgstr "Sesso:" @@ -1091,7 +1087,7 @@ msgid "Age:" msgstr "Età:" #: ../../include/profile_advanced.php:37 ../../mod/directory.php:177 -#: ../../boot.php:1798 +#: ../../boot.php:1794 msgid "Status:" msgstr "Stato:" @@ -1105,7 +1101,7 @@ msgid "Sexual Preference:" msgstr "Preferenze sessuali:" #: ../../include/profile_advanced.php:48 ../../mod/directory.php:179 -#: ../../boot.php:1799 +#: ../../boot.php:1795 msgid "Homepage:" msgstr "Home page:" @@ -1509,7 +1505,7 @@ msgstr "Layout" msgid "Pages" msgstr "Pagine" -#: ../../include/identity.php:14 ../../mod/item.php:1131 +#: ../../include/identity.php:14 ../../mod/item.php:1123 msgid "Unable to obtain identity information from database" msgstr "Impossibile ottenere le informazioni di identificazione dal database" @@ -1543,7 +1539,7 @@ msgid "Default Profile" msgstr "Profilo predefinito" #: ../../include/identity.php:245 ../../include/profile_selectors.php:42 -#: ../../mod/network.php:387 ../../mod/connections.php:387 +#: ../../mod/network.php:387 ../../mod/connections.php:407 msgid "Friends" msgstr "Amici" @@ -1591,17 +1587,17 @@ msgstr "ha commentato l'articolo di %s" #: ../../include/attach.php:204 ../../include/attach.php:237 #: ../../include/attach.php:251 ../../include/attach.php:272 #: ../../include/attach.php:464 ../../include/attach.php:539 -#: ../../include/items.php:3572 ../../mod/common.php:43 +#: ../../include/items.php:3582 ../../mod/common.php:43 #: ../../mod/events.php:134 ../../mod/invite.php:13 ../../mod/invite.php:102 #: ../../mod/allfriends.php:10 ../../mod/webpages.php:40 ../../mod/api.php:26 #: ../../mod/api.php:31 ../../mod/lastpost.php:93 ../../mod/page.php:30 -#: ../../mod/page.php:80 ../../mod/setup.php:200 ../../mod/settings.php:627 +#: ../../mod/page.php:80 ../../mod/setup.php:200 ../../mod/settings.php:628 #: ../../mod/viewconnections.php:33 ../../mod/viewconnections.php:38 #: ../../mod/delegate.php:6 ../../mod/sources.php:48 ../../mod/mitem.php:92 #: ../../mod/group.php:15 ../../mod/photos.php:74 ../../mod/photos.php:654 #: ../../mod/viewsrc.php:12 ../../mod/menu.php:40 ../../mod/message.php:208 #: ../../mod/layouts.php:27 ../../mod/layouts.php:42 ../../mod/network.php:7 -#: ../../mod/intro.php:50 ../../mod/connections.php:177 +#: ../../mod/intro.php:50 ../../mod/connections.php:197 #: ../../mod/profiles.php:163 ../../mod/profiles.php:476 #: ../../mod/new_channel.php:66 ../../mod/new_channel.php:97 #: ../../mod/filestorage.php:26 ../../mod/manage.php:6 @@ -1612,7 +1608,7 @@ msgstr "ha commentato l'articolo di %s" #: ../../mod/blocks.php:29 ../../mod/blocks.php:44 ../../mod/editpost.php:13 #: ../../mod/poke.php:128 ../../mod/channel.php:123 ../../mod/fsuggest.php:78 #: ../../mod/editblock.php:48 ../../mod/item.php:173 ../../mod/item.php:181 -#: ../../mod/suggest.php:32 ../../mod/register.php:60 ../../mod/regmod.php:18 +#: ../../mod/suggest.php:32 ../../mod/register.php:68 ../../mod/regmod.php:18 #: ../../mod/mood.php:114 ../../index.php:178 ../../index.php:340 msgid "Permission denied." msgstr "Permesso negato." @@ -1634,7 +1630,7 @@ msgstr "Impossibile elaborare l'immagine" msgid "Photo storage failed." msgstr "Impossibile caricare la foto." -#: ../../include/photos.php:288 ../../boot.php:2246 +#: ../../include/photos.php:288 ../../boot.php:2242 msgid "Photo Albums" msgstr "Album foto" @@ -1929,20 +1925,20 @@ msgstr "mkdir fallito." msgid "database storage failed." msgstr "scrittura su database fallita." -#: ../../include/zot.php:426 +#: ../../include/zot.php:438 msgid "Invalid data packet" msgstr "Dati non validi" -#: ../../include/zot.php:436 +#: ../../include/zot.php:448 msgid "Unable to verify channel signature" msgstr "Impossibile verificare la firma elettronica del canale" -#: ../../include/zot.php:582 +#: ../../include/zot.php:594 #, php-format msgid "Unable to verify site signature for %s" msgstr "Impossibile verificare la firma elettronica del sito %s" -#: ../../include/nav.php:72 ../../include/nav.php:87 ../../boot.php:1462 +#: ../../include/nav.php:72 ../../include/nav.php:87 ../../boot.php:1458 msgid "Logout" msgstr "Esci" @@ -1970,7 +1966,7 @@ msgstr "Modifica i profili" msgid "Manage/Edit Profiles" msgstr "Gestisci e modifica i profili" -#: ../../include/nav.php:79 ../../mod/fbrowser.php:25 ../../boot.php:2243 +#: ../../include/nav.php:79 ../../mod/fbrowser.php:25 ../../boot.php:2239 msgid "Photos" msgstr "Foto" @@ -1978,7 +1974,7 @@ msgstr "Foto" msgid "Your photos" msgstr "Le tue foto" -#: ../../include/nav.php:85 ../../boot.php:1463 +#: ../../include/nav.php:85 ../../boot.php:1459 msgid "Login" msgstr "Accedi" @@ -1999,7 +1995,7 @@ msgstr "Clicca per autenticarti sul tuo server principale" msgid "Home Page" msgstr "Bacheca" -#: ../../include/nav.php:125 ../../mod/register.php:187 ../../boot.php:1439 +#: ../../include/nav.php:125 ../../mod/register.php:195 ../../boot.php:1435 msgid "Register" msgstr "Iscriviti" @@ -2007,7 +2003,7 @@ msgstr "Iscriviti" msgid "Create an account" msgstr "Crea un account" -#: ../../include/nav.php:130 ../../mod/help.php:34 +#: ../../include/nav.php:130 ../../mod/help.php:45 ../../mod/help.php:49 msgid "Help" msgstr "Guida" @@ -2071,7 +2067,7 @@ msgstr "Segna come lette le notifiche dei canali" msgid "Intros" msgstr "Richieste" -#: ../../include/nav.php:158 ../../mod/connections.php:565 +#: ../../include/nav.php:158 ../../mod/connections.php:585 msgid "New Connections" msgstr "Nuovi contatti" @@ -2123,7 +2119,7 @@ msgstr "Inviati" msgid "New Message" msgstr "Nuovo messaggio" -#: ../../include/nav.php:174 ../../mod/events.php:348 ../../boot.php:2254 +#: ../../include/nav.php:174 ../../mod/events.php:348 ../../boot.php:2250 msgid "Events" msgstr "Eventi" @@ -2148,7 +2144,7 @@ msgid "Manage Your Channels" msgstr "Gestisci i contatti dei tuoi canali" #: ../../include/nav.php:180 ../../mod/settings.php:131 -#: ../../mod/admin.php:769 ../../mod/admin.php:974 +#: ../../mod/admin.php:778 ../../mod/admin.php:983 msgid "Settings" msgstr "Impostazioni" @@ -2156,7 +2152,7 @@ msgstr "Impostazioni" msgid "Account/Channel Settings" msgstr "Impostazioni account e canali" -#: ../../include/nav.php:182 ../../mod/connections.php:671 +#: ../../include/nav.php:182 ../../mod/connections.php:691 msgid "Connections" msgstr "Contatti" @@ -2288,7 +2284,7 @@ msgstr "Segui" msgid "Examples: Robert Morgenstein, Fishing" msgstr "Per esempio: Mario Rossi, Pesca" -#: ../../include/contact_widgets.php:48 ../../mod/connections.php:677 +#: ../../include/contact_widgets.php:48 ../../mod/connections.php:697 #: ../../mod/directory.php:221 ../../mod/directory.php:226 msgid "Find" msgstr "Cerca" @@ -2481,7 +2477,7 @@ msgstr "Questa operazione esce dai termini del tuo abbonamento." msgid "This action is not available under your subscription plan." msgstr "Questa operazione non è prevista dal tuo abbonamento." -#: ../../include/comanche.php:35 ../../view/theme/redbasic/php/config.php:56 +#: ../../include/comanche.php:35 ../../view/theme/redbasic/php/config.php:62 #: ../../view/theme/apw/php/config.php:176 msgid "Default" msgstr "Predefinito" @@ -2770,25 +2766,25 @@ msgstr "L'identificativo di sicurezza del modulo che hai riempito non è corrett msgid "Permission denied" msgstr "Permesso negato" -#: ../../include/items.php:3521 ../../mod/admin.php:150 -#: ../../mod/admin.php:714 ../../mod/admin.php:917 ../../mod/viewsrc.php:18 +#: ../../include/items.php:3531 ../../mod/admin.php:150 +#: ../../mod/admin.php:723 ../../mod/admin.php:926 ../../mod/viewsrc.php:18 #: ../../mod/home.php:64 ../../mod/display.php:32 msgid "Item not found." msgstr "Elemento non trovato." -#: ../../include/items.php:3693 +#: ../../include/items.php:3703 msgid "Archives" msgstr "Archivi" -#: ../../include/items.php:3854 ../../mod/group.php:44 ../../mod/group.php:146 +#: ../../include/items.php:3869 ../../mod/group.php:44 ../../mod/group.php:146 msgid "Collection not found." msgstr "Insieme non trovato." -#: ../../include/items.php:3870 ../../mod/network.php:469 +#: ../../include/items.php:3885 ../../mod/network.php:469 msgid "Group is empty" msgstr "L'insieme è vuoto" -#: ../../include/items.php:3886 +#: ../../include/items.php:3901 msgid "Connection not found." msgstr "Gruppo non trovato." @@ -3031,7 +3027,7 @@ msgstr "Nessun amico da visualizzare." #: ../../mod/webpages.php:8 ../../mod/connect.php:13 ../../mod/layouts.php:8 #: ../../mod/filestorage.php:8 ../../mod/blocks.php:10 ../../mod/profile.php:8 -#: ../../boot.php:1644 +#: ../../boot.php:1640 msgid "Requested profile is not available." msgstr "Il profilo richiesto non è disponibile." @@ -3058,17 +3054,17 @@ msgid "" " and/or create new posts for you?" msgstr "Vuoi autorizzare questa app ad accedere ai messaggi e ai contatti o creare nuovi messaggi per te?" -#: ../../mod/api.php:105 ../../mod/settings.php:1008 -#: ../../mod/settings.php:1013 ../../mod/settings.php:1036 -#: ../../mod/settings.php:1038 ../../mod/settings.php:1039 -#: ../../mod/settings.php:1040 ../../mod/profiles.php:506 +#: ../../mod/api.php:105 ../../mod/settings.php:1009 +#: ../../mod/settings.php:1014 ../../mod/settings.php:1037 +#: ../../mod/settings.php:1039 ../../mod/settings.php:1040 +#: ../../mod/settings.php:1041 ../../mod/profiles.php:506 msgid "Yes" msgstr "Si" -#: ../../mod/api.php:106 ../../mod/settings.php:1008 -#: ../../mod/settings.php:1013 ../../mod/settings.php:1036 -#: ../../mod/settings.php:1038 ../../mod/settings.php:1039 -#: ../../mod/settings.php:1040 ../../mod/profiles.php:507 +#: ../../mod/api.php:106 ../../mod/settings.php:1009 +#: ../../mod/settings.php:1014 ../../mod/settings.php:1037 +#: ../../mod/settings.php:1039 ../../mod/settings.php:1040 +#: ../../mod/settings.php:1041 ../../mod/profiles.php:507 msgid "No" msgstr "No" @@ -3089,11 +3085,11 @@ msgid "Invalid item." msgstr "Elemento non valido." #: ../../mod/page.php:47 ../../mod/chanview.php:78 ../../mod/home.php:51 -#: ../../mod/magic.php:77 ../../mod/wall_upload.php:35 +#: ../../mod/magic.php:95 ../../mod/wall_upload.php:35 msgid "Channel not found." msgstr "Canale non trovato." -#: ../../mod/page.php:83 ../../mod/help.php:41 ../../mod/display.php:92 +#: ../../mod/page.php:83 ../../mod/help.php:56 ../../mod/display.php:92 #: ../../index.php:229 msgid "Page not found." msgstr "Pagina non trovata." @@ -3437,7 +3433,7 @@ msgid "" "poller." msgstr "IMPORTANTE: Devi creare [manualmente] la pianificazione del polling." -#: ../../mod/rpost.php:83 ../../mod/editpost.php:42 +#: ../../mod/rpost.php:84 ../../mod/editpost.php:42 msgid "Edit post" msgstr "Modifica articolo" @@ -3505,7 +3501,7 @@ msgstr "Il nome è obbligatorio" msgid "Key and Secret are required" msgstr "Chiave e Segreto sono richiesti" -#: ../../mod/settings.php:179 ../../mod/settings.php:676 +#: ../../mod/settings.php:179 ../../mod/settings.php:677 msgid "Update" msgstr "Aggiorna" @@ -3537,381 +3533,381 @@ msgstr "È un indirizzo email riservato. Non puoi sceglierlo." msgid "System failure storing new email. Please try again." msgstr "Errore di sistema. Non è stato possibile memorizzare il tuo messaggio, riprova per favore." -#: ../../mod/settings.php:578 +#: ../../mod/settings.php:579 msgid "Settings updated." msgstr "Impostazioni aggiornate." -#: ../../mod/settings.php:649 ../../mod/settings.php:675 -#: ../../mod/settings.php:711 +#: ../../mod/settings.php:650 ../../mod/settings.php:676 +#: ../../mod/settings.php:712 msgid "Add application" msgstr "Aggiungi una app" -#: ../../mod/settings.php:651 ../../mod/settings.php:677 +#: ../../mod/settings.php:652 ../../mod/settings.php:678 #: ../../mod/tagrm.php:11 ../../mod/tagrm.php:94 ../../mod/fbrowser.php:82 #: ../../mod/fbrowser.php:117 msgid "Cancel" msgstr "Annulla" -#: ../../mod/settings.php:652 ../../mod/settings.php:678 -#: ../../mod/admin.php:673 ../../mod/crepair.php:148 +#: ../../mod/settings.php:653 ../../mod/settings.php:679 +#: ../../mod/admin.php:682 ../../mod/crepair.php:148 msgid "Name" msgstr "Nome" -#: ../../mod/settings.php:652 +#: ../../mod/settings.php:653 msgid "Name of application" msgstr "Nome dell'applicazione" -#: ../../mod/settings.php:653 ../../mod/settings.php:679 +#: ../../mod/settings.php:654 ../../mod/settings.php:680 msgid "Consumer Key" msgstr "Consumer Key" -#: ../../mod/settings.php:653 ../../mod/settings.php:654 +#: ../../mod/settings.php:654 ../../mod/settings.php:655 msgid "Automatically generated - change if desired. Max length 20" msgstr "Generato automaticamente - è possibile cambiarlo. Lunghezza massima 20" -#: ../../mod/settings.php:654 ../../mod/settings.php:680 +#: ../../mod/settings.php:655 ../../mod/settings.php:681 msgid "Consumer Secret" msgstr "Consumer Secret" -#: ../../mod/settings.php:655 ../../mod/settings.php:681 +#: ../../mod/settings.php:656 ../../mod/settings.php:682 msgid "Redirect" msgstr "Redirect" -#: ../../mod/settings.php:655 +#: ../../mod/settings.php:656 msgid "" "Redirect URI - leave blank unless your application specifically requires " "this" msgstr "URI ridirezionato - lasciare bianco se non richiesto specificamente dall'applicazione." -#: ../../mod/settings.php:656 ../../mod/settings.php:682 +#: ../../mod/settings.php:657 ../../mod/settings.php:683 msgid "Icon url" msgstr "Url icona" -#: ../../mod/settings.php:656 +#: ../../mod/settings.php:657 msgid "Optional" msgstr "Opzionale" -#: ../../mod/settings.php:667 +#: ../../mod/settings.php:668 msgid "You can't edit this application." msgstr "Non puoi modificare questa applicazione." -#: ../../mod/settings.php:710 +#: ../../mod/settings.php:711 msgid "Connected Apps" msgstr "App connesse" -#: ../../mod/settings.php:714 +#: ../../mod/settings.php:715 msgid "Client key starts with" msgstr "La client key inizia con" -#: ../../mod/settings.php:715 +#: ../../mod/settings.php:716 msgid "No name" msgstr "Nessun nome" -#: ../../mod/settings.php:716 +#: ../../mod/settings.php:717 msgid "Remove authorization" msgstr "Revoca l'autorizzazione" -#: ../../mod/settings.php:727 +#: ../../mod/settings.php:728 msgid "No feature settings configured" msgstr "Non ci sono funzionalità aggiuntive personalizzabili" -#: ../../mod/settings.php:735 +#: ../../mod/settings.php:736 msgid "Feature Settings" msgstr "Impostazioni aggiuntive" -#: ../../mod/settings.php:758 +#: ../../mod/settings.php:759 msgid "Account Settings" msgstr "Impostazioni account" -#: ../../mod/settings.php:759 +#: ../../mod/settings.php:760 msgid "Password Settings" msgstr "Impostazioni password" -#: ../../mod/settings.php:760 +#: ../../mod/settings.php:761 msgid "New Password:" msgstr "Nuova password:" -#: ../../mod/settings.php:761 +#: ../../mod/settings.php:762 msgid "Confirm:" msgstr "Conferma:" -#: ../../mod/settings.php:761 +#: ../../mod/settings.php:762 msgid "Leave password fields blank unless changing" msgstr "Lascia questi campi in bianco per non cambiare la password" -#: ../../mod/settings.php:763 ../../mod/settings.php:1062 +#: ../../mod/settings.php:764 ../../mod/settings.php:1063 msgid "Email Address:" msgstr "Indirizzo email:" -#: ../../mod/settings.php:764 +#: ../../mod/settings.php:765 msgid "Remove Account" msgstr "Elimina l'account" -#: ../../mod/settings.php:765 +#: ../../mod/settings.php:766 msgid "Warning: This action is permanent and cannot be reversed." msgstr "Attenzione: questa azione è permanente e non potrà più essere annullata." -#: ../../mod/settings.php:781 +#: ../../mod/settings.php:782 msgid "Off" msgstr "Off" -#: ../../mod/settings.php:781 +#: ../../mod/settings.php:782 msgid "On" msgstr "On" -#: ../../mod/settings.php:788 +#: ../../mod/settings.php:789 msgid "Additional Features" msgstr "Funzionalità aggiuntive" -#: ../../mod/settings.php:813 +#: ../../mod/settings.php:814 msgid "Connector Settings" msgstr "Impostazioni del connettore" -#: ../../mod/settings.php:843 ../../mod/admin.php:369 +#: ../../mod/settings.php:844 ../../mod/admin.php:369 msgid "No special theme for mobile devices" msgstr "Nessun tema per dispositivi mobili" -#: ../../mod/settings.php:883 +#: ../../mod/settings.php:884 msgid "Display Settings" msgstr "Impostazioni grafiche" -#: ../../mod/settings.php:889 +#: ../../mod/settings.php:890 msgid "Display Theme:" msgstr "Tema per monitor:" -#: ../../mod/settings.php:890 +#: ../../mod/settings.php:891 msgid "Mobile Theme:" msgstr "Tema per dispositivi mobili:" -#: ../../mod/settings.php:891 +#: ../../mod/settings.php:892 msgid "Update browser every xx seconds" msgstr "Aggiorna il browser ogni x secondi" -#: ../../mod/settings.php:891 +#: ../../mod/settings.php:892 msgid "Minimum of 10 seconds, no maximum" msgstr "Minimo 10 secondi, nessun limite massimo" -#: ../../mod/settings.php:892 +#: ../../mod/settings.php:893 msgid "Maximum number of conversations to load at any time:" msgstr "Massimo numero di conversazioni da mostrare ogni volta:" -#: ../../mod/settings.php:892 +#: ../../mod/settings.php:893 msgid "Maximum of 100 items" msgstr "Massimo 100" -#: ../../mod/settings.php:893 +#: ../../mod/settings.php:894 msgid "Don't show emoticons" msgstr "Non mostrare le emoticons" -#: ../../mod/settings.php:929 +#: ../../mod/settings.php:930 msgid "Nobody except yourself" msgstr "Nessuno tranne te" -#: ../../mod/settings.php:930 +#: ../../mod/settings.php:931 msgid "Only those you specifically allow" msgstr "Solo chi riceve il mio permesso" -#: ../../mod/settings.php:931 +#: ../../mod/settings.php:932 msgid "Anybody in your address book" msgstr "Chiunque tra i miei contatti" -#: ../../mod/settings.php:932 +#: ../../mod/settings.php:933 msgid "Anybody on this website" msgstr "Chiunque su questo sito" -#: ../../mod/settings.php:933 +#: ../../mod/settings.php:934 msgid "Anybody in this network" msgstr "Chiunque su Red" -#: ../../mod/settings.php:934 +#: ../../mod/settings.php:935 msgid "Anybody on the internet" msgstr "Chiunque su internet" -#: ../../mod/settings.php:1008 +#: ../../mod/settings.php:1009 msgid "Publish your default profile in the network directory" msgstr "Pubblica il mio profilo predefinito sull'elenco pubblico dei canali" -#: ../../mod/settings.php:1013 +#: ../../mod/settings.php:1014 msgid "Allow us to suggest you as a potential friend to new members?" msgstr "Vuoi essere suggerito come potenziale amico ai nuovi membri?" -#: ../../mod/settings.php:1017 ../../mod/profile_photo.php:298 +#: ../../mod/settings.php:1018 ../../mod/profile_photo.php:298 msgid "or" msgstr "o" -#: ../../mod/settings.php:1022 +#: ../../mod/settings.php:1023 msgid "Your channel address is" msgstr "L'indirizzo del tuo canale è" -#: ../../mod/settings.php:1033 +#: ../../mod/settings.php:1034 msgid "Automatically expire posts after this many days:" msgstr "Gli articoli scadono automaticamente dopo questo numero di giorni:" -#: ../../mod/settings.php:1033 +#: ../../mod/settings.php:1034 msgid "If empty, posts will not expire. Expired posts will be deleted" msgstr "Se lasci vuoto, i messaggi non scadranno mai. I messaggi scaduti saranno eliminati." -#: ../../mod/settings.php:1034 +#: ../../mod/settings.php:1035 msgid "Advanced expiration settings" msgstr "Impostazioni avanzate di scandenza" -#: ../../mod/settings.php:1035 +#: ../../mod/settings.php:1036 msgid "Advanced Expiration" msgstr "Scadenza" -#: ../../mod/settings.php:1036 +#: ../../mod/settings.php:1037 msgid "Expire posts:" msgstr "Fai scadere gli articoli:" -#: ../../mod/settings.php:1038 +#: ../../mod/settings.php:1039 msgid "Expire starred posts:" msgstr "Fai scadere gli articoli preferiti:" -#: ../../mod/settings.php:1039 +#: ../../mod/settings.php:1040 msgid "Expire photos:" msgstr "Fai scadere le foto:" -#: ../../mod/settings.php:1040 +#: ../../mod/settings.php:1041 msgid "Only expire posts by others:" msgstr "Fai scadere solo gli articoli scritti da altri:" -#: ../../mod/settings.php:1051 +#: ../../mod/settings.php:1052 msgid "Channel Settings" msgstr "Impostazioni del canale" -#: ../../mod/settings.php:1060 +#: ../../mod/settings.php:1061 msgid "Basic Settings" msgstr "Impostazioni di base" -#: ../../mod/settings.php:1063 +#: ../../mod/settings.php:1064 msgid "Your Timezone:" msgstr "Il tuo fuso orario:" -#: ../../mod/settings.php:1064 +#: ../../mod/settings.php:1065 msgid "Default Post Location:" msgstr "Località predefinita:" -#: ../../mod/settings.php:1065 +#: ../../mod/settings.php:1066 msgid "Use Browser Location:" msgstr "Usa la località rilevata dal browser:" -#: ../../mod/settings.php:1067 +#: ../../mod/settings.php:1068 msgid "Adult Content" msgstr "Contenuto per adulti" -#: ../../mod/settings.php:1067 +#: ../../mod/settings.php:1068 msgid "This channel publishes adult content." msgstr "Questo canale pubblica contenuto per adulti." -#: ../../mod/settings.php:1069 +#: ../../mod/settings.php:1070 msgid "Security and Privacy Settings" msgstr "Impostazioni di sicurezza e privacy" -#: ../../mod/settings.php:1071 +#: ../../mod/settings.php:1072 msgid "Quick Privacy Settings:" msgstr "Impostazioni veloci della privacy:" -#: ../../mod/settings.php:1072 +#: ../../mod/settings.php:1073 msgid "Very Public - extremely permissive" msgstr "Tutto pubblico - molto permissivo" -#: ../../mod/settings.php:1073 +#: ../../mod/settings.php:1074 msgid "Typical - default public, privacy when desired" msgstr "Normale - tutto sarà pubblico tranne quel che vorrai tu" -#: ../../mod/settings.php:1074 +#: ../../mod/settings.php:1075 msgid "Private - default private, rarely open or public" msgstr "Privato - i contenuti saranno privati ma, se vorrai, alcuni potrai renderli pubblici" -#: ../../mod/settings.php:1075 +#: ../../mod/settings.php:1076 msgid "Blocked - default blocked to/from everybody" msgstr "Bloccato - non ci saranno interazioni con altri a meno che tu non voglia" -#: ../../mod/settings.php:1078 +#: ../../mod/settings.php:1079 msgid "Maximum Friend Requests/Day:" msgstr "Numero massimo giornaliero di richieste di amicizia:" -#: ../../mod/settings.php:1078 +#: ../../mod/settings.php:1079 msgid "May reduce spam activity" msgstr "Serve e ridurre lo spam" -#: ../../mod/settings.php:1079 +#: ../../mod/settings.php:1080 msgid "Default Post Permissions" msgstr "Permessi predefiniti per gli articoli" -#: ../../mod/settings.php:1080 +#: ../../mod/settings.php:1081 msgid "(click to open/close)" msgstr "(clicca per aprire/chiudere)" -#: ../../mod/settings.php:1093 +#: ../../mod/settings.php:1094 msgid "Maximum private messages per day from unknown people:" msgstr "Numero massimo giornaliero di messaggi privati da utenti sconosciuti:" -#: ../../mod/settings.php:1093 +#: ../../mod/settings.php:1094 msgid "Useful to reduce spamming" msgstr "Serve e ridurre lo spam" -#: ../../mod/settings.php:1096 +#: ../../mod/settings.php:1097 msgid "Notification Settings" msgstr "Impostazioni di notifica" -#: ../../mod/settings.php:1097 +#: ../../mod/settings.php:1098 msgid "By default post a status message when:" msgstr "Pubblica un messaggio di stato quando:" -#: ../../mod/settings.php:1098 +#: ../../mod/settings.php:1099 msgid "accepting a friend request" msgstr "accetto una nuova amicizia" -#: ../../mod/settings.php:1099 +#: ../../mod/settings.php:1100 msgid "joining a forum/community" msgstr "entro a far parte di un forum" -#: ../../mod/settings.php:1100 +#: ../../mod/settings.php:1101 msgid "making an interesting profile change" msgstr "faccio un cambiamento interessante al mio profilo" -#: ../../mod/settings.php:1101 +#: ../../mod/settings.php:1102 msgid "Send a notification email when:" msgstr "Invia una email di notifica quando:" -#: ../../mod/settings.php:1102 +#: ../../mod/settings.php:1103 msgid "You receive an introduction" msgstr "Ricevi una richiesta di amicizia" -#: ../../mod/settings.php:1103 +#: ../../mod/settings.php:1104 msgid "Your introductions are confirmed" msgstr "Le tue richieste di amicizia sono state accettate" -#: ../../mod/settings.php:1104 +#: ../../mod/settings.php:1105 msgid "Someone writes on your profile wall" msgstr "Qualcuno scrive sulla tua bacheca" -#: ../../mod/settings.php:1105 +#: ../../mod/settings.php:1106 msgid "Someone writes a followup comment" msgstr "Qualcuno scrive un commento a un tuo articolo" -#: ../../mod/settings.php:1106 +#: ../../mod/settings.php:1107 msgid "You receive a private message" msgstr "Ricevi un messaggio privato" -#: ../../mod/settings.php:1107 +#: ../../mod/settings.php:1108 msgid "You receive a friend suggestion" msgstr "Ti viene suggerito un amico" -#: ../../mod/settings.php:1108 +#: ../../mod/settings.php:1109 msgid "You are tagged in a post" msgstr "Sei taggato in un articolo" -#: ../../mod/settings.php:1109 +#: ../../mod/settings.php:1110 msgid "You are poked/prodded/etc. in a post" msgstr "Ricevi un poke in un articolo" -#: ../../mod/settings.php:1112 +#: ../../mod/settings.php:1113 msgid "Advanced Account/Page Type Settings" msgstr "Impostazioni avanzate" -#: ../../mod/settings.php:1113 +#: ../../mod/settings.php:1114 msgid "Change the behaviour of this account for special situations" msgstr "Cambia il funzionamento di questo account in situazioni particolari" @@ -4091,15 +4087,15 @@ msgstr "Le impostazioni del tema sono state aggiornate." msgid "Site" msgstr "Sito" -#: ../../mod/admin.php:88 ../../mod/admin.php:669 ../../mod/admin.php:681 +#: ../../mod/admin.php:88 ../../mod/admin.php:678 ../../mod/admin.php:690 msgid "Users" msgstr "Utenti" -#: ../../mod/admin.php:89 ../../mod/admin.php:767 ../../mod/admin.php:809 +#: ../../mod/admin.php:89 ../../mod/admin.php:776 ../../mod/admin.php:818 msgid "Plugins" msgstr "Plugin" -#: ../../mod/admin.php:90 ../../mod/admin.php:972 ../../mod/admin.php:1008 +#: ../../mod/admin.php:90 ../../mod/admin.php:981 ../../mod/admin.php:1017 msgid "Themes" msgstr "Temi" @@ -4111,7 +4107,7 @@ msgstr "Server" msgid "DB updates" msgstr "Aggiornamenti al DB" -#: ../../mod/admin.php:106 ../../mod/admin.php:113 ../../mod/admin.php:1095 +#: ../../mod/admin.php:106 ../../mod/admin.php:113 ../../mod/admin.php:1104 msgid "Logs" msgstr "Log" @@ -4121,15 +4117,15 @@ msgstr "Funzionalità dei componenti aggiuntivi" #: ../../mod/admin.php:114 msgid "User registrations waiting for confirmation" -msgstr "Utenti registrati in attesa di conferma" +msgstr "Registrazioni in attesa" #: ../../mod/admin.php:188 msgid "Message queues" -msgstr "Coda dei messaggi" +msgstr "Messaggi in attesa di recapito" #: ../../mod/admin.php:193 ../../mod/admin.php:416 ../../mod/admin.php:474 -#: ../../mod/admin.php:668 ../../mod/admin.php:766 ../../mod/admin.php:808 -#: ../../mod/admin.php:971 ../../mod/admin.php:1007 ../../mod/admin.php:1094 +#: ../../mod/admin.php:677 ../../mod/admin.php:775 ../../mod/admin.php:817 +#: ../../mod/admin.php:980 ../../mod/admin.php:1016 ../../mod/admin.php:1103 msgid "Administration" msgstr "Amministrazione" @@ -4143,7 +4139,7 @@ msgstr "Utenti registrati" #: ../../mod/admin.php:198 ../../mod/admin.php:478 msgid "Pending registrations" -msgstr "Registrazioni in attesa" +msgstr "Registrazioni da approvare" #: ../../mod/admin.php:199 msgid "Version" @@ -4189,7 +4185,7 @@ msgstr "Servizio gratuito" msgid "Tiered Access" msgstr "Accesso multilivello" -#: ../../mod/admin.php:419 ../../mod/register.php:172 +#: ../../mod/admin.php:419 ../../mod/register.php:180 msgid "Registration" msgstr "Registrazione" @@ -4279,7 +4275,7 @@ msgstr "Sarà mostrato ben visibile nella pagina di registrazione." #: ../../mod/admin.php:438 msgid "Accounts abandoned after x days" -msgstr "Account abbandonati dopo x giorni" +msgstr "Account abbandonati dopo X giorni" #: ../../mod/admin.php:438 msgid "" @@ -4467,149 +4463,137 @@ msgstr "Utente '%s' sbloccato" msgid "User '%s' blocked" msgstr "Utente '%s' bloccato" -#: ../../mod/admin.php:650 -msgid "Normal Account" -msgstr "Account normale" - -#: ../../mod/admin.php:651 -msgid "Soapbox Account" -msgstr "Account per comunicati e annunci" - -#: ../../mod/admin.php:652 -msgid "Community/Celebrity Account" -msgstr "Account per celebrità o per comunità" - -#: ../../mod/admin.php:653 -msgid "Automatic Friend Account" -msgstr "Account per amicizia automatizzato" - -#: ../../mod/admin.php:671 +#: ../../mod/admin.php:680 msgid "select all" msgstr "seleziona tutti" -#: ../../mod/admin.php:672 +#: ../../mod/admin.php:681 msgid "User registrations waiting for confirm" msgstr "Richieste di registrazione in attesa di conferma" -#: ../../mod/admin.php:673 +#: ../../mod/admin.php:682 msgid "Request date" msgstr "Data richiesta" -#: ../../mod/admin.php:674 +#: ../../mod/admin.php:683 msgid "No registrations." msgstr "Nessuna registrazione." -#: ../../mod/admin.php:675 ../../mod/intro.php:11 ../../mod/intro.php:98 +#: ../../mod/admin.php:684 ../../mod/intro.php:11 ../../mod/intro.php:98 #: ../../mod/notifications.php:159 ../../mod/notifications.php:206 msgid "Approve" msgstr "Approva" -#: ../../mod/admin.php:676 +#: ../../mod/admin.php:685 msgid "Deny" msgstr "Nega" -#: ../../mod/admin.php:678 ../../mod/intro.php:14 ../../mod/intro.php:99 -#: ../../mod/connections.php:328 ../../mod/connections.php:470 +#: ../../mod/admin.php:687 ../../mod/intro.php:14 ../../mod/intro.php:99 +#: ../../mod/connections.php:348 ../../mod/connections.php:490 msgid "Block" msgstr "Blocca" -#: ../../mod/admin.php:679 ../../mod/connections.php:328 -#: ../../mod/connections.php:470 +#: ../../mod/admin.php:688 ../../mod/connections.php:348 +#: ../../mod/connections.php:490 msgid "Unblock" msgstr "Sblocca" -#: ../../mod/admin.php:682 +#: ../../mod/admin.php:691 msgid "Register date" msgstr "Data registrazione" -#: ../../mod/admin.php:682 +#: ../../mod/admin.php:691 msgid "Last login" msgstr "Ultimo accesso" -#: ../../mod/admin.php:682 +#: ../../mod/admin.php:691 +msgid "Expires" +msgstr "Scadenza" + +#: ../../mod/admin.php:691 msgid "Service Class" msgstr "Service Class" -#: ../../mod/admin.php:684 +#: ../../mod/admin.php:693 msgid "" "Selected users will be deleted!\\n\\nEverything these users had posted on " "this site will be permanently deleted!\\n\\nAre you sure?" msgstr "Gli utenti selezionati saranno eliminati!\\n\\nTutto quello che gli utenti hanno pubblicato su questo sito sarà permanentemente eliminato!\\n\\nConfermi?" -#: ../../mod/admin.php:685 +#: ../../mod/admin.php:694 msgid "" "The user {0} will be deleted!\\n\\nEverything this user has posted on this " "site will be permanently deleted!\\n\\nAre you sure?" msgstr "L'utente {0} sarà eliminato!\\n\\nTutto quello che ha pubblicato su questo sito sarà permanentemente eliminato!\\n\\nConfermi?" -#: ../../mod/admin.php:726 +#: ../../mod/admin.php:735 #, php-format msgid "Plugin %s disabled." msgstr "Plugin %s non attivo." -#: ../../mod/admin.php:730 +#: ../../mod/admin.php:739 #, php-format msgid "Plugin %s enabled." msgstr "Plugin %s attivo." -#: ../../mod/admin.php:740 ../../mod/admin.php:942 +#: ../../mod/admin.php:749 ../../mod/admin.php:951 msgid "Disable" msgstr "Disattiva" -#: ../../mod/admin.php:742 ../../mod/admin.php:944 +#: ../../mod/admin.php:751 ../../mod/admin.php:953 msgid "Enable" msgstr "Attiva" -#: ../../mod/admin.php:768 ../../mod/admin.php:973 +#: ../../mod/admin.php:777 ../../mod/admin.php:982 msgid "Toggle" msgstr "Attiva/disattiva" -#: ../../mod/admin.php:776 ../../mod/admin.php:983 +#: ../../mod/admin.php:785 ../../mod/admin.php:992 msgid "Author: " msgstr "Autore:" -#: ../../mod/admin.php:777 ../../mod/admin.php:984 +#: ../../mod/admin.php:786 ../../mod/admin.php:993 msgid "Maintainer: " msgstr "Gestore:" -#: ../../mod/admin.php:906 +#: ../../mod/admin.php:915 msgid "No themes found." msgstr "Nessun tema trovato." -#: ../../mod/admin.php:965 +#: ../../mod/admin.php:974 msgid "Screenshot" msgstr "Istantanea dello schermo" -#: ../../mod/admin.php:1013 +#: ../../mod/admin.php:1022 msgid "[Experimental]" msgstr "[Sperimentale]" -#: ../../mod/admin.php:1014 +#: ../../mod/admin.php:1023 msgid "[Unsupported]" msgstr "[Non supportato]" -#: ../../mod/admin.php:1041 +#: ../../mod/admin.php:1050 msgid "Log settings updated." msgstr "Impostazioni di log aggiornate." -#: ../../mod/admin.php:1097 +#: ../../mod/admin.php:1106 msgid "Clear" msgstr "Pulisci" -#: ../../mod/admin.php:1103 +#: ../../mod/admin.php:1112 msgid "Debugging" msgstr "Debugging" -#: ../../mod/admin.php:1104 +#: ../../mod/admin.php:1113 msgid "Log file" msgstr "File di log" -#: ../../mod/admin.php:1104 +#: ../../mod/admin.php:1113 msgid "" "Must be writable by web server. Relative to your Red top-level directory." msgstr "Deve essere scrivibile dal web server. È relativa alla cartella dove è installato Red." -#: ../../mod/admin.php:1105 +#: ../../mod/admin.php:1114 msgid "Log level" msgstr "Livello di log" @@ -4918,11 +4902,11 @@ msgstr "ti ha inviato un messaggio privato" msgid "added your channel" msgstr "ha aggiunto il tuo canale" -#: ../../mod/ping.php:230 ../../boot.php:1862 ../../boot.php:1942 +#: ../../mod/ping.php:230 ../../boot.php:1858 ../../boot.php:1938 msgid "g A l F d" msgstr "g A l d F" -#: ../../mod/ping.php:252 ../../boot.php:1908 ../../boot.php:1983 +#: ../../mod/ping.php:252 ../../boot.php:1904 ../../boot.php:1979 msgid "[today]" msgstr "[oggi]" @@ -4959,7 +4943,7 @@ msgid "Drop" msgstr "Elimina" #: ../../mod/menu.php:57 ../../mod/network.php:321 -#: ../../mod/connections.php:532 +#: ../../mod/connections.php:552 msgid "New" msgstr "Novità" @@ -5126,11 +5110,11 @@ msgstr "La guida per questa funzionalità" msgid "Layout Name" msgstr "Nome layout" -#: ../../mod/help.php:30 +#: ../../mod/help.php:41 msgid "Help:" msgstr "Guida:" -#: ../../mod/help.php:38 ../../index.php:226 +#: ../../mod/help.php:53 ../../index.php:226 msgid "Not Found" msgstr "Non disponibile" @@ -5198,11 +5182,11 @@ msgstr "Articoli marcati come spam" msgid "Refresh" msgstr "Aggiorna" -#: ../../mod/network.php:385 ../../mod/connections.php:384 +#: ../../mod/network.php:385 ../../mod/connections.php:404 msgid "Me" msgstr "Io" -#: ../../mod/network.php:386 ../../mod/connections.php:386 +#: ../../mod/network.php:386 ../../mod/connections.php:406 msgid "Best Friends" msgstr "Buoni amici" @@ -5210,11 +5194,11 @@ msgstr "Buoni amici" msgid "Co-workers" msgstr "Colleghi" -#: ../../mod/network.php:389 ../../mod/connections.php:388 +#: ../../mod/network.php:389 ../../mod/connections.php:408 msgid "Former Friends" msgstr "Ex amici" -#: ../../mod/network.php:390 ../../mod/connections.php:389 +#: ../../mod/network.php:390 ../../mod/connections.php:409 msgid "Acquaintances" msgstr "Conoscenti" @@ -5239,7 +5223,7 @@ msgid "Invalid connection." msgstr "Connessione non valida." #: ../../mod/intro.php:17 ../../mod/intro.php:100 -#: ../../mod/connections.php:335 ../../mod/connections.php:471 +#: ../../mod/connections.php:355 ../../mod/connections.php:491 #: ../../mod/notifications.php:51 ../../mod/notifications.php:162 #: ../../mod/notifications.php:208 msgid "Ignore" @@ -5265,7 +5249,7 @@ msgstr "Nessuna richiesta in attesa." msgid "System error. Please try again later." msgstr "Errore di sistema. Riprovare più tardi." -#: ../../mod/intro.php:95 ../../mod/connections.php:476 +#: ../../mod/intro.php:95 ../../mod/connections.php:496 #: ../../mod/notifications.php:155 ../../mod/notifications.php:202 msgid "Hide this contact from others" msgstr "Nascondi questo contatto agli altri" @@ -5297,373 +5281,373 @@ msgstr "Non riesco a trovare il profilo selezionato." msgid "Failed to update connection record." msgstr "Impossibile aggiornare le informazioni di contatto." -#: ../../mod/connections.php:199 +#: ../../mod/connections.php:219 msgid "Could not access address book record." msgstr "Impossibile accedere alle informazioni della rubrica." -#: ../../mod/connections.php:213 +#: ../../mod/connections.php:233 msgid "Refresh failed - channel is currently unavailable." msgstr "Il canale non è disponibile - impossibile aggiornare." -#: ../../mod/connections.php:220 +#: ../../mod/connections.php:240 msgid "Channel has been unblocked" msgstr "Il canale è stato sbloccato" -#: ../../mod/connections.php:221 +#: ../../mod/connections.php:241 msgid "Channel has been blocked" msgstr "Il canale è stato bloccato" -#: ../../mod/connections.php:225 ../../mod/connections.php:237 -#: ../../mod/connections.php:249 ../../mod/connections.php:261 -#: ../../mod/connections.php:276 +#: ../../mod/connections.php:245 ../../mod/connections.php:257 +#: ../../mod/connections.php:269 ../../mod/connections.php:281 +#: ../../mod/connections.php:296 msgid "Unable to set address book parameters." msgstr "Impossibile impostare i parametri della rubrica." -#: ../../mod/connections.php:232 +#: ../../mod/connections.php:252 msgid "Channel has been unignored" msgstr "Il canale non sarà più ignorato" -#: ../../mod/connections.php:233 +#: ../../mod/connections.php:253 msgid "Channel has been ignored" msgstr "Il canale sarà ignorato" -#: ../../mod/connections.php:244 +#: ../../mod/connections.php:264 msgid "Channel has been unarchived" msgstr "Il canale non è più archiviato" -#: ../../mod/connections.php:245 +#: ../../mod/connections.php:265 msgid "Channel has been archived" msgstr "Il canale è stato archiviato" -#: ../../mod/connections.php:256 +#: ../../mod/connections.php:276 msgid "Channel has been unhidden" msgstr "Il canale non è più nascosto" -#: ../../mod/connections.php:257 +#: ../../mod/connections.php:277 msgid "Channel has been hidden" msgstr "Il canale è stato nascosto" -#: ../../mod/connections.php:271 +#: ../../mod/connections.php:291 msgid "Channel has been approved" msgstr "Il canale è stato approvato" -#: ../../mod/connections.php:272 +#: ../../mod/connections.php:292 msgid "Channel has been unapproved" msgstr "Il canale non è più approvato" -#: ../../mod/connections.php:290 +#: ../../mod/connections.php:310 msgid "Contact has been removed." msgstr "Il contatto è stato rimosso." -#: ../../mod/connections.php:310 +#: ../../mod/connections.php:330 #, php-format msgid "View %s's profile" msgstr "Guarda il profilo di %s" -#: ../../mod/connections.php:314 +#: ../../mod/connections.php:334 msgid "Refresh Permissions" msgstr "Aggiorna i permessi" -#: ../../mod/connections.php:317 +#: ../../mod/connections.php:337 msgid "Fetch updated permissions" msgstr "Scarica i permessi aggiornati" -#: ../../mod/connections.php:321 +#: ../../mod/connections.php:341 msgid "Recent Activity" msgstr "Attività recenti" -#: ../../mod/connections.php:324 +#: ../../mod/connections.php:344 msgid "View recent posts and comments" msgstr "Leggi i post recenti e i commenti" -#: ../../mod/connections.php:331 +#: ../../mod/connections.php:351 msgid "Block or Unblock this connection" msgstr "Per bloccare o meno questo contatto" -#: ../../mod/connections.php:335 ../../mod/connections.php:471 +#: ../../mod/connections.php:355 ../../mod/connections.php:491 msgid "Unignore" msgstr "Non ignorare" -#: ../../mod/connections.php:338 +#: ../../mod/connections.php:358 msgid "Ignore or Unignore this connection" msgstr "Per ignorare o meno questo contatto" -#: ../../mod/connections.php:341 +#: ../../mod/connections.php:361 msgid "Unarchive" msgstr "Non archiviare" -#: ../../mod/connections.php:341 +#: ../../mod/connections.php:361 msgid "Archive" msgstr "Archivia" -#: ../../mod/connections.php:344 +#: ../../mod/connections.php:364 msgid "Archive or Unarchive this connection" msgstr "Per archiviare o meno questo contatto" -#: ../../mod/connections.php:347 +#: ../../mod/connections.php:367 msgid "Unhide" msgstr "Non nascondere" -#: ../../mod/connections.php:347 +#: ../../mod/connections.php:367 msgid "Hide" msgstr "Nascondi" -#: ../../mod/connections.php:350 +#: ../../mod/connections.php:370 msgid "Hide or Unhide this connection" msgstr "Per nascondere o meno questo contatto" -#: ../../mod/connections.php:357 +#: ../../mod/connections.php:377 msgid "Delete this connection" msgstr "Elimina questo contatto" -#: ../../mod/connections.php:390 +#: ../../mod/connections.php:410 msgid "Unknown" msgstr "Sconosciuto" -#: ../../mod/connections.php:400 ../../mod/connections.php:429 +#: ../../mod/connections.php:420 ../../mod/connections.php:449 msgid "Approve this connection" msgstr "Approva questo contatto" -#: ../../mod/connections.php:400 +#: ../../mod/connections.php:420 msgid "Accept connection to allow communication" msgstr "Accetta il contatto per poter comunicare" -#: ../../mod/connections.php:416 +#: ../../mod/connections.php:436 msgid "Automatic Permissions Settings" msgstr "Permessi predefiniti" -#: ../../mod/connections.php:416 +#: ../../mod/connections.php:436 #, php-format msgid "Connections: settings for %s" msgstr "Contatti: impostazioni per %s" -#: ../../mod/connections.php:420 +#: ../../mod/connections.php:440 msgid "" "When receiving a channel introduction, any permissions provided here will be" " applied to the new connection automatically and the introduction approved. " "Leave this page if you do not wish to use this feature." msgstr "Quando ricevi una richiesta di amicizia da un canale, i permessi mostrati in questa pagina saranno applicati al nuovo contatto con l'approvazione della richiesta. Lascia questa pagina se non vuoi proseguire." -#: ../../mod/connections.php:422 +#: ../../mod/connections.php:442 msgid "Slide to adjust your degree of friendship" msgstr "Trascina per restringere il grado di amicizia da mostrare" -#: ../../mod/connections.php:428 +#: ../../mod/connections.php:448 msgid "inherited" msgstr "derivato" -#: ../../mod/connections.php:430 +#: ../../mod/connections.php:450 msgid "Connection has no individual permissions!" msgstr "Non hai assegnato permessi individuali a questo contatto!" -#: ../../mod/connections.php:431 +#: ../../mod/connections.php:451 msgid "" "This may be appropriate based on your
    privacy " "settings, though you may wish to review the \"Advanced Permissions\"." msgstr "Questo corrisponde alle tue impostazioni di privacy, ma puoi anche dare un'occhiata ai 'Permessi avanzati' per opzioni più dettagliate." -#: ../../mod/connections.php:433 +#: ../../mod/connections.php:453 msgid "Profile Visibility" msgstr "Visibilità del profilo" -#: ../../mod/connections.php:434 +#: ../../mod/connections.php:454 #, php-format msgid "" "Please choose the profile you would like to display to %s when viewing your " "profile securely." msgstr "Seleziona il profilo che vuoi mostrare a %s quando visita il tuo profilo in modo sicuro." -#: ../../mod/connections.php:435 +#: ../../mod/connections.php:455 msgid "Contact Information / Notes" msgstr "Informazioni e annotazioni sul contatto" -#: ../../mod/connections.php:436 +#: ../../mod/connections.php:456 msgid "Edit contact notes" msgstr "Modifica le informazioni sul contatto" -#: ../../mod/connections.php:438 +#: ../../mod/connections.php:458 msgid "Their Settings" msgstr "Permessi concessi a te" -#: ../../mod/connections.php:439 +#: ../../mod/connections.php:459 msgid "My Settings" msgstr "I permessi che concedo" -#: ../../mod/connections.php:441 +#: ../../mod/connections.php:461 msgid "Forum Members" msgstr "Membro di un forum" -#: ../../mod/connections.php:442 +#: ../../mod/connections.php:462 msgid "Soapbox" msgstr "Comunicati e annunci" -#: ../../mod/connections.php:443 +#: ../../mod/connections.php:463 msgid "Full Sharing" msgstr "Condivisione totale" -#: ../../mod/connections.php:444 +#: ../../mod/connections.php:464 msgid "Cautious Sharing" msgstr "Condivisione prudente" -#: ../../mod/connections.php:445 +#: ../../mod/connections.php:465 msgid "Follow Only" msgstr "Follower" -#: ../../mod/connections.php:446 +#: ../../mod/connections.php:466 msgid "Individual Permissions" msgstr "Permessi individuali" -#: ../../mod/connections.php:447 +#: ../../mod/connections.php:467 msgid "" "Some permissions may be inherited from your privacy " "settings, which have higher priority. Changing those on this page will " "have no effect." msgstr "Alcuni permessi possono derivano dalle impostazioni di privacy, che hanno una priorità maggiore. Cambiarli in questa pagina non avrà alcun effetto." -#: ../../mod/connections.php:448 +#: ../../mod/connections.php:468 msgid "Advanced Permissions" msgstr "Permessi avanzati" -#: ../../mod/connections.php:449 +#: ../../mod/connections.php:469 msgid "Quick Links" msgstr "Impostazioni veloci" -#: ../../mod/connections.php:453 +#: ../../mod/connections.php:473 #, php-format msgid "Visit %s's profile - %s" msgstr "Guarda il profilo di %s - %s" -#: ../../mod/connections.php:454 +#: ../../mod/connections.php:474 msgid "Block/Unblock contact" msgstr "Blocca/sblocca contatto" -#: ../../mod/connections.php:455 +#: ../../mod/connections.php:475 msgid "Ignore contact" msgstr "Ignora il contatto" -#: ../../mod/connections.php:456 +#: ../../mod/connections.php:476 msgid "Repair URL settings" msgstr "Ripara le impostazioni URL" -#: ../../mod/connections.php:457 +#: ../../mod/connections.php:477 msgid "View conversations" msgstr "Leggi le conversazioni" -#: ../../mod/connections.php:459 +#: ../../mod/connections.php:479 msgid "Delete contact" msgstr "Elimina contatto" -#: ../../mod/connections.php:462 +#: ../../mod/connections.php:482 msgid "Last update:" msgstr "Ultimo aggiornamento:" -#: ../../mod/connections.php:464 +#: ../../mod/connections.php:484 msgid "Update public posts" msgstr "Aggiorna gli articoli pubblici" -#: ../../mod/connections.php:466 +#: ../../mod/connections.php:486 msgid "Update now" msgstr "Aggiorna adesso" -#: ../../mod/connections.php:472 +#: ../../mod/connections.php:492 msgid "Currently blocked" msgstr "Attualmente bloccato" -#: ../../mod/connections.php:473 +#: ../../mod/connections.php:493 msgid "Currently ignored" msgstr "Attualmente ignorato" -#: ../../mod/connections.php:474 +#: ../../mod/connections.php:494 msgid "Currently archived" msgstr "Attualmente archiviato" -#: ../../mod/connections.php:475 +#: ../../mod/connections.php:495 msgid "Currently pending" msgstr "Attualmente da approvare" -#: ../../mod/connections.php:476 +#: ../../mod/connections.php:496 msgid "" "Replies/likes to your public posts may still be visible" msgstr "Le risposte ai tuoi articoli pubblici potrebbero restare comunque visibili" -#: ../../mod/connections.php:512 ../../mod/connections.php:584 +#: ../../mod/connections.php:532 ../../mod/connections.php:604 msgid "Blocked" msgstr "Bloccati" -#: ../../mod/connections.php:517 ../../mod/connections.php:591 +#: ../../mod/connections.php:537 ../../mod/connections.php:611 msgid "Ignored" msgstr "Ignorati" -#: ../../mod/connections.php:522 ../../mod/connections.php:605 +#: ../../mod/connections.php:542 ../../mod/connections.php:625 msgid "Hidden" msgstr "Nascosti" -#: ../../mod/connections.php:527 ../../mod/connections.php:598 +#: ../../mod/connections.php:547 ../../mod/connections.php:618 msgid "Archived" msgstr "Archiviati" -#: ../../mod/connections.php:538 +#: ../../mod/connections.php:558 msgid "All" msgstr "Tutti" -#: ../../mod/connections.php:559 +#: ../../mod/connections.php:579 msgid "Suggestions" msgstr "Suggerimenti" -#: ../../mod/connections.php:562 +#: ../../mod/connections.php:582 msgid "Suggest new connections" msgstr "Suggerisci nuovi contatti" -#: ../../mod/connections.php:568 +#: ../../mod/connections.php:588 msgid "Show pending (new) connections" msgstr "Richieste di amicizia in attesa" -#: ../../mod/connections.php:571 +#: ../../mod/connections.php:591 msgid "All Connections" msgstr "Tutti i contatti" -#: ../../mod/connections.php:574 +#: ../../mod/connections.php:594 msgid "Show all connections" msgstr "Mostra tutti i contatti" -#: ../../mod/connections.php:577 +#: ../../mod/connections.php:597 msgid "Unblocked" msgstr "Non bloccati" -#: ../../mod/connections.php:580 +#: ../../mod/connections.php:600 msgid "Only show unblocked connections" msgstr "Mostra solo i contatti non bloccati" -#: ../../mod/connections.php:587 +#: ../../mod/connections.php:607 msgid "Only show blocked connections" msgstr "Mostra solo i contatti bloccati" -#: ../../mod/connections.php:594 +#: ../../mod/connections.php:614 msgid "Only show ignored connections" msgstr "Mostra solo i contatti ignorati" -#: ../../mod/connections.php:601 +#: ../../mod/connections.php:621 msgid "Only show archived connections" msgstr "Mostra solo i contatti archiviati" -#: ../../mod/connections.php:608 +#: ../../mod/connections.php:628 msgid "Only show hidden connections" msgstr "Mostra solo i contatti nascosti" -#: ../../mod/connections.php:650 +#: ../../mod/connections.php:670 #, php-format msgid "%1$s [%2$s]" msgstr "%1$s [%2$s]" -#: ../../mod/connections.php:651 ../../mod/nogroup.php:41 +#: ../../mod/connections.php:671 ../../mod/nogroup.php:41 msgid "Edit contact" msgstr "Modifica il contatto" -#: ../../mod/connections.php:675 +#: ../../mod/connections.php:695 msgid "Search your connections" msgstr "Cerca tra i contatti" -#: ../../mod/connections.php:676 +#: ../../mod/connections.php:696 msgid "Finding: " msgstr "Ricerca: " @@ -5923,23 +5907,23 @@ msgstr "Età:" msgid "Edit/Manage Profiles" msgstr "Modifica/gestisci i profili" -#: ../../mod/profiles.php:624 ../../boot.php:1759 +#: ../../mod/profiles.php:624 ../../boot.php:1755 msgid "Change profile photo" msgstr "Cambia la foto del profilo" -#: ../../mod/profiles.php:625 ../../boot.php:1766 +#: ../../mod/profiles.php:625 ../../boot.php:1762 msgid "Create New Profile" msgstr "Crea un nuovo profilo" -#: ../../mod/profiles.php:636 ../../boot.php:1780 +#: ../../mod/profiles.php:636 ../../boot.php:1776 msgid "Profile Image" msgstr "Immagine del profilo" -#: ../../mod/profiles.php:639 ../../boot.php:1783 +#: ../../mod/profiles.php:639 ../../boot.php:1779 msgid "visible to everybody" msgstr "visibile a tutti" -#: ../../mod/profiles.php:640 ../../boot.php:1784 +#: ../../mod/profiles.php:640 ../../boot.php:1780 msgid "Edit visibility" msgstr "Cambia la visibilità" @@ -6017,7 +6001,7 @@ msgid "" "Password reset failed." msgstr "La richiesta non può essere verificata (potresti averla già usata precedentemente). La password non può essere reimpostata." -#: ../../mod/lostpass.php:85 ../../boot.php:1473 +#: ../../mod/lostpass.php:85 ../../boot.php:1469 msgid "Password Reset" msgstr "Reimposta la password" @@ -6559,7 +6543,7 @@ msgstr "Scegli cosa vuoi inviare al destinatario" msgid "Make this post private" msgstr "Rendi privato questo articolo" -#: ../../mod/wall_upload.php:41 ../../mod/item.php:1057 +#: ../../mod/wall_upload.php:41 ../../mod/item.php:1049 msgid "Wall Photos" msgstr "Foto della bacheca" @@ -6640,12 +6624,12 @@ msgstr "I contenuti eseguibili non sono permessi su questo canale." msgid "System error. Post not saved." msgstr "Errore di sistema. Articolo non salvato." -#: ../../mod/item.php:1136 +#: ../../mod/item.php:1128 #, php-format msgid "You have reached your limit of %1$.0f top level posts." msgstr "Hai raggiunto il limite massimo di %1$.0f articoli sulla pagina principale." -#: ../../mod/item.php:1142 +#: ../../mod/item.php:1134 #, php-format msgid "You have reached your limit of %1$.0f webpages." msgstr "Hai raggiunto il limite massimo di %1$.0f pagine web." @@ -6728,70 +6712,70 @@ msgstr "Tipo di accesso" msgid "Registration Policy" msgstr "Politica di registrazione" -#: ../../mod/register.php:35 +#: ../../mod/register.php:43 msgid "Maximum daily site registrations exceeded. Please try again tomorrow." msgstr "È stato superato il numero massimo giornaliero di registrazioni a questo sito. Riprova domani!" -#: ../../mod/register.php:41 +#: ../../mod/register.php:49 msgid "" "Please indicate acceptance of the Terms of Service. Registration failed." msgstr "Impossibile proseguire. Devi prima accettare le Condizioni d'Uso del servizio." -#: ../../mod/register.php:69 +#: ../../mod/register.php:77 msgid "Passwords do not match." msgstr "Le password non corrispondono." -#: ../../mod/register.php:97 +#: ../../mod/register.php:105 msgid "" "Registration successful. Please check your email for validation " "instructions." msgstr "La registrazione è terminata correttamente. Per continuare controlla l'email che ti è stata inviata." -#: ../../mod/register.php:103 +#: ../../mod/register.php:111 msgid "Your registration is pending approval by the site owner." msgstr "La tua richiesta è in attesa di approvazione da parte dell'amministratore del sito." -#: ../../mod/register.php:106 +#: ../../mod/register.php:114 msgid "Your registration can not be processed." msgstr "La tua registrazione non puo' essere acquisita." -#: ../../mod/register.php:141 +#: ../../mod/register.php:149 msgid "" "This site has exceeded the number of allowed daily account registrations. " "Please try again tomorrow." msgstr "Questo sito ha superato il numero di registrazioni giornaliere consentite. Prova di nuovo domani." -#: ../../mod/register.php:152 +#: ../../mod/register.php:160 msgid "Terms of Service" msgstr "Condizioni d'Uso" -#: ../../mod/register.php:158 +#: ../../mod/register.php:166 #, php-format msgid "I accept the %s for this website" msgstr "Accetto le %s di questo sito" -#: ../../mod/register.php:160 +#: ../../mod/register.php:168 #, php-format msgid "I am over 13 years of age and accept the %s for this website" msgstr "Ho più di 13 anni e accetto le %s di questo sito" -#: ../../mod/register.php:175 +#: ../../mod/register.php:183 msgid "Membership on this site is by invitation only." msgstr "Per registrarsi su questo sito è necessario un invito." -#: ../../mod/register.php:176 +#: ../../mod/register.php:184 msgid "Please enter your invitation code" msgstr "Inserisci il codice dell'invito" -#: ../../mod/register.php:179 +#: ../../mod/register.php:187 msgid "Your email address" msgstr "Il tuo indirizzo email" -#: ../../mod/register.php:180 +#: ../../mod/register.php:188 msgid "Choose a password" msgstr "Scegli una password" -#: ../../mod/register.php:181 +#: ../../mod/register.php:189 msgid "Please re-enter your password" msgstr "Ripeti la password per verifica" @@ -6799,13 +6783,13 @@ msgstr "Ripeti la password per verifica" msgid "Please login." msgstr "Accedi." -#: ../../mod/post.php:114 +#: ../../mod/post.php:119 msgid "" "Remote authentication blocked. You are logged into this site locally. Please" " logout and retry." msgstr "L'autenticazione remota non è disponibile. Hai accesso solamente a questo sito. Puoi provare ad uscire per tentare di nuovo." -#: ../../mod/post.php:127 +#: ../../mod/post.php:132 #, php-format msgid "Welcome %s. Remote authentication successful." msgstr "Ciao %s. La tua autenticazione da remoto è avvenuta con successo." @@ -6866,94 +6850,106 @@ msgstr "Umore" msgid "Set your current mood and tell your friends" msgstr "Scegli il tuo umore attuale per mostrarlo agli amici" -#: ../../view/theme/redbasic/php/config.php:68 +#: ../../view/theme/redbasic/php/config.php:74 msgid "Scheme Default" msgstr "Schema predefinito" -#: ../../view/theme/redbasic/php/config.php:69 +#: ../../view/theme/redbasic/php/config.php:75 msgid "red" msgstr "rosso" -#: ../../view/theme/redbasic/php/config.php:70 +#: ../../view/theme/redbasic/php/config.php:76 msgid "black" msgstr "nero" -#: ../../view/theme/redbasic/php/config.php:71 +#: ../../view/theme/redbasic/php/config.php:77 msgid "silver" msgstr "argento" -#: ../../view/theme/redbasic/php/config.php:82 +#: ../../view/theme/redbasic/php/config.php:88 #: ../../view/theme/apw/php/config.php:234 msgid "Theme settings" msgstr "Impostazioni del tema" -#: ../../view/theme/redbasic/php/config.php:83 +#: ../../view/theme/redbasic/php/config.php:89 #: ../../view/theme/apw/php/config.php:235 msgid "Set scheme" msgstr "Schema" -#: ../../view/theme/redbasic/php/config.php:84 +#: ../../view/theme/redbasic/php/config.php:90 msgid "Navigation bar colour" msgstr "Colore della barra di navigazione" -#: ../../view/theme/redbasic/php/config.php:85 +#: ../../view/theme/redbasic/php/config.php:91 msgid "Set font-colour for banner" msgstr "Colore del font del banner" -#: ../../view/theme/redbasic/php/config.php:86 +#: ../../view/theme/redbasic/php/config.php:92 msgid "Set the background colour" msgstr "Colore di sfondo" -#: ../../view/theme/redbasic/php/config.php:87 +#: ../../view/theme/redbasic/php/config.php:93 msgid "Set the background image" msgstr "Immagine di sfondo" -#: ../../view/theme/redbasic/php/config.php:88 +#: ../../view/theme/redbasic/php/config.php:94 msgid "Set the background colour of items" msgstr "Colore di sfondo degli elementi della pagina" -#: ../../view/theme/redbasic/php/config.php:89 +#: ../../view/theme/redbasic/php/config.php:95 msgid "Set the opacity of items" msgstr "Opacità degli oggetti" -#: ../../view/theme/redbasic/php/config.php:90 +#: ../../view/theme/redbasic/php/config.php:96 msgid "Set the basic colour for item icons" msgstr "Colore di base per le icone" -#: ../../view/theme/redbasic/php/config.php:91 +#: ../../view/theme/redbasic/php/config.php:97 msgid "Set the hover colour for item icons" msgstr "Colore per le icone in evidenza" -#: ../../view/theme/redbasic/php/config.php:92 +#: ../../view/theme/redbasic/php/config.php:98 +msgid "Set font-size for the entire application" +msgstr "Dimensione font per tutto il sito" + +#: ../../view/theme/redbasic/php/config.php:99 #: ../../view/theme/apw/php/config.php:236 msgid "Set font-size for posts and comments" msgstr "Dimensioni del carattere per articoli e commenti" -#: ../../view/theme/redbasic/php/config.php:93 +#: ../../view/theme/redbasic/php/config.php:100 msgid "Set font-colour for posts and comments" msgstr "Colore del carattere per articoli e commenti" -#: ../../view/theme/redbasic/php/config.php:94 +#: ../../view/theme/redbasic/php/config.php:101 msgid "Set radius of corners" msgstr "Raggio degli angoli stondati" -#: ../../view/theme/redbasic/php/config.php:95 +#: ../../view/theme/redbasic/php/config.php:102 msgid "Set shadow depth of photos" msgstr "Profondità dell'ombra delle foto" -#: ../../view/theme/redbasic/php/config.php:96 +#: ../../view/theme/redbasic/php/config.php:103 msgid "Set maximum width of conversation regions" msgstr "Larghezza massima delle aree delle conversazioni" -#: ../../view/theme/redbasic/php/config.php:97 +#: ../../view/theme/redbasic/php/config.php:104 msgid "Set minimum opacity of nav bar - to hide it" msgstr "Imposta l'opacità minima della barra di navigazione per nasconderla" -#: ../../view/theme/redbasic/php/config.php:98 -msgid "Sloppy photo albums" -msgstr "Album fotografici semplificati" +#: ../../view/theme/redbasic/php/config.php:105 +msgid "Set size of conversation author photo" +msgstr "Dimensione foto dell'autore della conversazione" -#: ../../view/theme/redbasic/php/config.php:98 +#: ../../view/theme/redbasic/php/config.php:106 +msgid "Set size of followup author photos" +msgstr "Dimensione foto dei partecipanti alla conversazione" + +#: ../../view/theme/redbasic/php/config.php:107 +msgid "Sloppy photo albums" +msgstr "Album con foto storte" + +#: ../../view/theme/redbasic/php/config.php:107 msgid "Are you a clean desk or a messy desk person?" msgstr "La tua scrivania è sempre a posto? Sei una persona disordinata?" @@ -7082,113 +7078,113 @@ msgstr "Spazio a sinistra del aside" msgid "Right offset of the aside element" msgstr "Spazio a destra del aside" -#: ../../boot.php:1278 +#: ../../boot.php:1274 #, php-format msgid "Update %s failed. See error logs." msgstr "%s: aggiornamento fallito. Controlla i log di errore." -#: ../../boot.php:1281 +#: ../../boot.php:1277 #, php-format msgid "Update Error at %s" msgstr "Errore di aggiornamento su %s" -#: ../../boot.php:1438 +#: ../../boot.php:1434 msgid "" "Create an account to access services and applications within the Red Matrix" msgstr "Registrati per accedere ai servizi e alle applicazioni di Red Matrix" -#: ../../boot.php:1466 +#: ../../boot.php:1462 msgid "Password" msgstr "Password" -#: ../../boot.php:1467 +#: ../../boot.php:1463 msgid "Remember me" msgstr "Resta connesso" -#: ../../boot.php:1472 +#: ../../boot.php:1468 msgid "Forgot your password?" msgstr "Hai dimenticato la password?" -#: ../../boot.php:1537 +#: ../../boot.php:1533 msgid "permission denied" msgstr "permesso negato" -#: ../../boot.php:1538 +#: ../../boot.php:1534 msgid "Got Zot?" msgstr "Hai Zot?" -#: ../../boot.php:1597 +#: ../../boot.php:1593 msgid "Requested channel is not available." msgstr "Il canale che cerchi non è disponibile." -#: ../../boot.php:1609 +#: ../../boot.php:1605 msgid " Sorry, you don't have the permission to view this profile. " msgstr "Purtroppo non hai il permesso di vedere questo profilo." -#: ../../boot.php:1765 +#: ../../boot.php:1761 msgid "Profiles" msgstr "Profili" -#: ../../boot.php:1765 +#: ../../boot.php:1761 msgid "Manage/edit profiles" msgstr "Gestisci/modifica i profili" -#: ../../boot.php:1769 +#: ../../boot.php:1765 msgid "Edit Profile" msgstr "Modifica il profilo" -#: ../../boot.php:1863 ../../boot.php:1943 +#: ../../boot.php:1859 ../../boot.php:1939 msgid "F d" msgstr "d F" -#: ../../boot.php:1920 +#: ../../boot.php:1916 msgid "Birthday Reminders" msgstr "Promemoria compleanni" -#: ../../boot.php:1921 +#: ../../boot.php:1917 msgid "Birthdays this week:" msgstr "Compleanni questa settimana:" -#: ../../boot.php:1976 +#: ../../boot.php:1972 msgid "[No description]" msgstr "[Nessuna descrizione]" -#: ../../boot.php:1994 +#: ../../boot.php:1990 msgid "Event Reminders" msgstr "Promemoria" -#: ../../boot.php:1995 +#: ../../boot.php:1991 msgid "Events this week:" msgstr "Eventi di questa settimana:" -#: ../../boot.php:2229 +#: ../../boot.php:2225 msgid "Channel" msgstr "Canale" -#: ../../boot.php:2232 +#: ../../boot.php:2228 msgid "Status Messages and Posts" msgstr "Articoli e messaggi di stato" -#: ../../boot.php:2236 +#: ../../boot.php:2232 msgid "About" msgstr "Informazioni" -#: ../../boot.php:2239 +#: ../../boot.php:2235 msgid "Profile Details" msgstr "Dettagli del profilo" -#: ../../boot.php:2257 +#: ../../boot.php:2253 msgid "Events and Calendar" msgstr "Calendario eventi" -#: ../../boot.php:2262 +#: ../../boot.php:2258 msgid "Webpages" msgstr "Pagine web" -#: ../../boot.php:2265 +#: ../../boot.php:2261 msgid "Manage Webpages" msgstr "Gestisci le pagine web" -#: ../../boot.php:2547 +#: ../../boot.php:2545 msgid "toggle mobile" msgstr "attiva/disattiva versione mobile" diff --git a/view/it/strings.php b/view/it/strings.php index 5c71824db..58778798a 100644 --- a/view/it/strings.php +++ b/view/it/strings.php @@ -14,11 +14,12 @@ $a->strings["Visit %1\$s's %2\$s"] = "Guarda %2\$s di %1\$s "; $a->strings["%1\$s has an updated %2\$s, changing %3\$s."] = "%1\$s ha aggiornato %2\$s cambiando %3\$s."; $a->strings["Public Timeline"] = "Diario pubblico"; $a->strings["Red Matrix Notification"] = "Notifica di Red Matrix"; +$a->strings["redmatrix"] = "redmatrix"; $a->strings["Thank You,"] = "Grazie,"; $a->strings["%s Administrator"] = "Amministratore %s"; $a->strings["%s "] = "%s "; $a->strings["[Red:Notify] New mail received at %s"] = "[Red:Notifica] Nuovo messaggio ricevuto alle %s"; -$a->strings["%1\$s sent you a new private message at %2\$s."] = "%1\$s ti ha mandato un messaggio privato alle %2\$s."; +$a->strings["%1\$s, %2\$s sent you a new private message at %3\$s."] = "%1\$s, %2\$s ti ha mandato un messaggio privato alle %3\$s."; $a->strings["%1\$s sent you %2\$s."] = "%1\$s ti ha mandato %2\$s."; $a->strings["a private message"] = "un messaggio privato"; $a->strings["Please visit %s to view and/or reply to your private messages."] = "Visita %s per leggere i tuoi messaggi privati e rispondere."; @@ -32,10 +33,10 @@ $a->strings["[Red:Notify] %s posted to your profile wall"] = "[Red:Notifica] %s $a->strings["%1\$s posted to your profile wall at %2\$s"] = "%1\$s ha scritto sulla tua bacheca alle %2\$s"; $a->strings["%1\$s posted to [zrl=%2\$s]your wall[/zrl]"] = "%1\$s ha scritto sulla [zrl=%2\$s]tua bacheca[/zrl]"; $a->strings["[Red:Notify] %s tagged you"] = "[Red:Notifica] %s ti ha taggato"; -$a->strings["%1\$s tagged you at %2\$s"] = "%1\$s ti ha taggato alle %2\$s"; +$a->strings["%1\$s, %2\$s tagged you at %3\$s"] = "%1\$s, %2\$s ti ha taggato alle %3\$s"; $a->strings["%1\$s [zrl=%2\$s]tagged you[/zrl]."] = "%1\$s [zrl=%2\$s]ti ha taggato[/zrl]."; $a->strings["[Red:Notify] %1\$s poked you"] = "[Red:Notifica] %1\$s ti ha mandato un poke"; -$a->strings["%1\$s poked you at %2\$s"] = "%1\$s ti ha mandato un poke alle %2\$s"; +$a->strings["%1\$s, %2\$s poked you at %3\$s"] = "%1\$s, %2\$s ti ha mandato un poke alle %3\$s"; $a->strings["%1\$s [zrl=%2\$s]poked you[/zrl]."] = "%1\$s [zrl=%2\$s]ti ha mandato un poke[/zrl]."; $a->strings["[Red:Notify] %s tagged your post"] = "[Red:Notifica] %s ha taggato il tuo articolo"; $a->strings["%1\$s tagged your post at %2\$s"] = "%1\$s ha taggato il tuo articolo alle %2\$s"; @@ -187,8 +188,6 @@ $a->strings["Enable tab to display all new Network activity"] = "Abilita il link $a->strings["Affinity Tool"] = "Filtro per affinità"; $a->strings["Filter stream activity by depth of relationships"] = "Permette di selezionare i contenuti in base al livello di amicizia"; $a->strings["Post/Comment Tools"] = "Gestione articoli e commenti"; -$a->strings["Multiple Deletion"] = "Eliminazione multipla"; -$a->strings["Select and delete multiple posts/comments at once"] = "Rendi possibile l'eliminazione di molti articoli o commenti con un solo comando"; $a->strings["Edit Sent Posts"] = "Modifica gli articoli già inviati"; $a->strings["Edit and correct posts and comments after sending"] = "Modifica e correggi gli articoli o i commenti anche dopo l'invio"; $a->strings["Tagging"] = "Tag"; @@ -963,12 +962,12 @@ $a->strings["Server"] = "Server"; $a->strings["DB updates"] = "Aggiornamenti al DB"; $a->strings["Logs"] = "Log"; $a->strings["Plugin Features"] = "Funzionalità dei componenti aggiuntivi"; -$a->strings["User registrations waiting for confirmation"] = "Utenti registrati in attesa di conferma"; -$a->strings["Message queues"] = "Coda dei messaggi"; +$a->strings["User registrations waiting for confirmation"] = "Registrazioni in attesa"; +$a->strings["Message queues"] = "Messaggi in attesa di recapito"; $a->strings["Administration"] = "Amministrazione"; $a->strings["Summary"] = "Riepilogo"; $a->strings["Registered users"] = "Utenti registrati"; -$a->strings["Pending registrations"] = "Registrazioni in attesa"; +$a->strings["Pending registrations"] = "Registrazioni da approvare"; $a->strings["Version"] = "Versione"; $a->strings["Active plugins"] = "Plugin attivi"; $a->strings["Site settings updated."] = "Impostazioni del sito aggiornate."; @@ -1001,7 +1000,7 @@ $a->strings["Register policy"] = "Politica di registrazione"; $a->strings["Access policy"] = "Tipo di accesso"; $a->strings["Register text"] = "Testo diregistrazione"; $a->strings["Will be displayed prominently on the registration page."] = "Sarà mostrato ben visibile nella pagina di registrazione."; -$a->strings["Accounts abandoned after x days"] = "Account abbandonati dopo x giorni"; +$a->strings["Accounts abandoned after x days"] = "Account abbandonati dopo X giorni"; $a->strings["Will not waste system resources polling external sites for abandonded accounts. Enter 0 for no time limit."] = "Eviterà di sprecare risorse di sistema controllando se i siti esterni hanno account abbandonati. Immettere 0 per non imporre nessun limite di tempo."; $a->strings["Allowed friend domains"] = "Domini fidati e consentiti"; $a->strings["Comma separated list of domains which are allowed to establish friendships with this site. Wildcards are accepted. Empty to allow any domains"] = "Elenco separato da virglola dei domini che possono stabilire amicizie con questo sito. Sono accettati caratteri jolly. Lascia vuoto per accettare connessioni da qualsiasi dominio."; @@ -1047,10 +1046,6 @@ $a->strings["Account not found"] = "Account non trovato"; $a->strings["User '%s' deleted"] = "Utente '%s' eliminato"; $a->strings["User '%s' unblocked"] = "Utente '%s' sbloccato"; $a->strings["User '%s' blocked"] = "Utente '%s' bloccato"; -$a->strings["Normal Account"] = "Account normale"; -$a->strings["Soapbox Account"] = "Account per comunicati e annunci"; -$a->strings["Community/Celebrity Account"] = "Account per celebrità o per comunità"; -$a->strings["Automatic Friend Account"] = "Account per amicizia automatizzato"; $a->strings["select all"] = "seleziona tutti"; $a->strings["User registrations waiting for confirm"] = "Richieste di registrazione in attesa di conferma"; $a->strings["Request date"] = "Data richiesta"; @@ -1061,6 +1056,7 @@ $a->strings["Block"] = "Blocca"; $a->strings["Unblock"] = "Sblocca"; $a->strings["Register date"] = "Data registrazione"; $a->strings["Last login"] = "Ultimo accesso"; +$a->strings["Expires"] = "Scadenza"; $a->strings["Service Class"] = "Service Class"; $a->strings["Selected users will be deleted!\\n\\nEverything these users had posted on this site will be permanently deleted!\\n\\nAre you sure?"] = "Gli utenti selezionati saranno eliminati!\\n\\nTutto quello che gli utenti hanno pubblicato su questo sito sarà permanentemente eliminato!\\n\\nConfermi?"; $a->strings["The user {0} will be deleted!\\n\\nEverything this user has posted on this site will be permanently deleted!\\n\\nAre you sure?"] = "L'utente {0} sarà eliminato!\\n\\nTutto quello che ha pubblicato su questo sito sarà permanentemente eliminato!\\n\\nConfermi?"; @@ -1629,13 +1625,16 @@ $a->strings["Set the background colour of items"] = "Colore di sfondo degli elem $a->strings["Set the opacity of items"] = "Opacità degli oggetti"; $a->strings["Set the basic colour for item icons"] = "Colore di base per le icone"; $a->strings["Set the hover colour for item icons"] = "Colore per le icone in evidenza"; +$a->strings["Set font-size for the entire application"] = "Dimensione font per tutto il sito"; $a->strings["Set font-size for posts and comments"] = "Dimensioni del carattere per articoli e commenti"; $a->strings["Set font-colour for posts and comments"] = "Colore del carattere per articoli e commenti"; $a->strings["Set radius of corners"] = "Raggio degli angoli stondati"; $a->strings["Set shadow depth of photos"] = "Profondità dell'ombra delle foto"; $a->strings["Set maximum width of conversation regions"] = "Larghezza massima delle aree delle conversazioni"; $a->strings["Set minimum opacity of nav bar - to hide it"] = "Imposta l'opacità minima della barra di navigazione per nasconderla"; -$a->strings["Sloppy photo albums"] = "Album fotografici semplificati"; +$a->strings["Set size of conversation author photo"] = "Dimensione foto dell'autore della conversazione"; +$a->strings["Set size of followup author photos"] = "Dimensione foto dei partecipanti alla conversazione"; +$a->strings["Sloppy photo albums"] = "Album con foto storte"; $a->strings["Are you a clean desk or a messy desk person?"] = "La tua scrivania è sempre a posto? Sei una persona disordinata?"; $a->strings["Schema Default"] = "Schema predefinito"; $a->strings["Sans-Serif"] = "Sans-Serif"; From b67347d9a03f92738eaa6b6de3f2b526f35d99d0 Mon Sep 17 00:00:00 2001 From: friendica Date: Wed, 27 Nov 2013 16:32:17 -0800 Subject: [PATCH 097/271] add xmlrpc method for importing red comments --- util/wp/post_to_red/post_to_red.php | 81 +++++++++++++++++++++++++++++ 1 file changed, 81 insertions(+) diff --git a/util/wp/post_to_red/post_to_red.php b/util/wp/post_to_red/post_to_red.php index 427e0f5e2..7fbf1eb76 100644 --- a/util/wp/post_to_red/post_to_red.php +++ b/util/wp/post_to_red/post_to_red.php @@ -259,6 +259,87 @@ add_action('add_meta_boxes', 'post_to_red_post_checkbox'); add_action('save_post', 'post_to_red_post_field_data'); add_action('before_delete_post', 'post_to_red_delete_post'); +add_filter('xmlrpc_methods', 'red_xmlrpc_methods'); + + +function red_xmlrpc_methods($methods) { + $methods['red.Comment'] = 'red_comment'; + return $methods; +} + +function red_comment($args) { + global $wp_xmlrpc_server; + $wp_xmlrpc_server->escape( $args ); + + $blog_id = $args[0]; + $username = $args[1]; + $password = $args[2]; + $post = $args[3]; + $content_struct = $args[4]; + + if ( ! $user = $wp_xmlrpc_server->login( $username, $password ) ) + return $wp_xmlrpc_server->error; + + if ( is_numeric($post) ) + $post_id = absint($post); + else + $post_id = url_to_postid($post); + + if ( ! $post_id ) + return new IXR_Error( 404, __( 'Invalid post ID.' ) ); + if ( ! get_post($post_id) ) + return new IXR_Error( 404, __( 'Invalid post ID.' ) ); + + $comment['comment_post_ID'] = $post_id; + + $comment['comment_author'] = ''; + if ( isset($content_struct['author']) ) + $comment['comment_author'] = $content_struct['author']; + + $comment['comment_author_email'] = ''; + if ( isset($content_struct['author_email']) ) + $comment['comment_author_email'] = $content_struct['author_email']; + + $comment['comment_author_url'] = ''; + if ( isset($content_struct['author_url']) ) + $comment['comment_author_url'] = $content_struct['author_url']; + + $comment['user_ID'] = 0; + + if ( get_option('require_name_email') ) { + if ( 6 > strlen($comment['comment_author_email']) || '' == $comment['comment_author'] ) + return new IXR_Error( 403, __( 'Comment author name and email are required' ) ); + elseif ( !is_email($comment['comment_author_email']) ) + return new IXR_Error( 403, __( 'A valid email address is required' ) ); + } + + if(isset($content_struct['comment_id'])) { + $comment['comment_ID'] = intval($content_struct['comment_id']); + $edit = true; + } + $comment['comment_post_ID'] = $post_id; + $comment['comment_parent'] = isset($content_struct['comment_parent']) ? absint($content_struct['comment_parent']) : 0; + $comment['comment_content'] = isset($content_struct['content']) ? $content_struct['content'] : null; + + do_action('xmlrpc_call', 'red.Comment'); + + if($edit) { + $result = wp_update_comment($comment); + $comment_ID = $comment['comment_ID']; + } + else { + $comment_ID = wp_new_comment( $comment ); + if($comment_ID) + wp_set_comment_status($comment_ID,'approve'); + } + + do_action( 'xmlrpc_call_success_red_Comment', $comment_ID, $args ); + + return $comment_ID; +} + + + // from: // http://www.docgate.com/tutorial/php/how-to-convert-html-to-bbcode-with-php-script.html function xpost_to_html2bbcode($text) { From 21e465e48ae918b75d011d0fc5de1864bb474edc Mon Sep 17 00:00:00 2001 From: friendica Date: Wed, 27 Nov 2013 20:56:08 -0800 Subject: [PATCH 098/271] add photos to red-to-wordpress comments --- util/wp/post_to_red/post_to_red.php | 20 ++++++++++++++++++++ 1 file changed, 20 insertions(+) diff --git a/util/wp/post_to_red/post_to_red.php b/util/wp/post_to_red/post_to_red.php index 7fbf1eb76..71ae88aa8 100644 --- a/util/wp/post_to_red/post_to_red.php +++ b/util/wp/post_to_red/post_to_red.php @@ -261,6 +261,8 @@ add_action('before_delete_post', 'post_to_red_delete_post'); add_filter('xmlrpc_methods', 'red_xmlrpc_methods'); +add_filter('get_avatar', 'post_to_red_get_avatar',10,5); + function red_xmlrpc_methods($methods) { $methods['red.Comment'] = 'red_comment'; @@ -333,11 +335,29 @@ function red_comment($args) { wp_set_comment_status($comment_ID,'approve'); } + if(isset($content_struct['red_avatar'])) + add_comment_meta($comment_ID,'red_avatar',$content_struct['red_avatar'],true); + do_action( 'xmlrpc_call_success_red_Comment', $comment_ID, $args ); return $comment_ID; } +function post_to_red_get_avatar($avatar,$id_or_email,$size,$default,$alt) { + + if(! is_object($id_or_email)) + return $avatar; + if((! array_key_exists('comment_author_email',$id_or_email)) || (empty($id_or_email->comment_author_email))) + return $avatar; + if((! array_key_exists('comment_ID', $id_or_email)) || (! intval($id_or_email->comment_ID))) + return $avatar; + $l = get_comment_meta($id_or_email->comment_ID,'red_avatar',true); + if($l) { + $safe_alt = esc_attr($alt); + $avatar = "{$safe_alt}"; + } + return $avatar; +} // from: From aab9b30d03e2cad7be2207fa22dcd6ddad224369 Mon Sep 17 00:00:00 2001 From: friendica Date: Thu, 28 Nov 2013 00:16:13 -0800 Subject: [PATCH 099/271] synchronise deletion of comments between red and wp --- include/api.php | 10 +++++++++ util/wp/post_to_red/post_to_red.php | 33 +++++++++++++++++++++++++++++ version.inc | 2 +- 3 files changed, 44 insertions(+), 1 deletion(-) diff --git a/include/api.php b/include/api.php index ca5592d08..093839875 100644 --- a/include/api.php +++ b/include/api.php @@ -1101,6 +1101,16 @@ require_once('include/photos.php'); return false; $id = $r[0]['iid']; } + if($_REQUEST['namespace'] && $_REQUEST['comment_id']) { + $r = q("select * from item_id left join item on item.id = item_id.iid where service = '%s' and sid = '%s' and uid = %d and item.id != item.parent limit 1", + dbesc($_REQUEST['namespace']), + dbesc($_REQUEST['comment_id']), + intval($user_info['uid']) + ); + if(! $r) + return false; + $id = $r[0]['iid']; + } } if(! $id) return false; diff --git a/util/wp/post_to_red/post_to_red.php b/util/wp/post_to_red/post_to_red.php index 71ae88aa8..7eb8697ad 100644 --- a/util/wp/post_to_red/post_to_red.php +++ b/util/wp/post_to_red/post_to_red.php @@ -148,6 +148,37 @@ function post_to_red_delete_post($post_id) { } } +function post_to_red_delete_comment($post_id) { + + // The comment may already be destroyed so we can't query it or the parent post. That means + // we have to make a network call for any deleted comment to see if it's registered on Red. + // We really need a "before_delete_comment" action in WP to make + // this more efficient. + + $user_name = post_to_red_get_acct_name(); + $password = post_to_red_get_password(); + $seed_location = post_to_red_get_seed_location(); + $channel = post_to_red_get_channel_name(); + + if ((isset($user_name)) && (isset($password)) && (isset($seed_location))) { + + $message_id = site_url() . '/' . $post_id; + $url = $seed_location . '/api/statuses/destroy'; + + $headers = array('Authorization' => 'Basic '.base64_encode("$user_name:$password")); + $body = array( + 'namespace' => 'wordpress', + 'comment_id' => $message_id, + ); + if($channel) + $body['channel'] = $channel; + + // post: + $request = new WP_Http; + $result = $request->request($url , array( 'method' => 'POST', 'body' => $body, 'headers' => $headers)); + } +} + @@ -259,6 +290,8 @@ add_action('add_meta_boxes', 'post_to_red_post_checkbox'); add_action('save_post', 'post_to_red_post_field_data'); add_action('before_delete_post', 'post_to_red_delete_post'); +add_action('delete_comment', 'post_to_red_delete_comment'); + add_filter('xmlrpc_methods', 'red_xmlrpc_methods'); add_filter('get_avatar', 'post_to_red_get_avatar',10,5); diff --git a/version.inc b/version.inc index 099c10c8d..5a612c8d2 100644 --- a/version.inc +++ b/version.inc @@ -1 +1 @@ -2013-11-27.510 +2013-11-28.511 From 2239d472e56c49c314af57af2090c1206500446c Mon Sep 17 00:00:00 2001 From: Olivier Migeot Date: Thu, 28 Nov 2013 12:24:37 +0100 Subject: [PATCH 100/271] Plurals for conversation.php --- include/conversation.php | 6 +- util/messages.po | 9989 +++++++++++++++++++------------------- 2 files changed, 4994 insertions(+), 5001 deletions(-) diff --git a/include/conversation.php b/include/conversation.php index a2eeda25b..e20fef9f6 100644 --- a/include/conversation.php +++ b/include/conversation.php @@ -993,9 +993,9 @@ function format_like($cnt,$arr,$type,$id) { else { $spanatts = 'class="fakelink" onclick="openClose(\'' . $type . 'list-' . $id . '\');"'; $o .= (($type === 'like') ? - sprintf( t('%2$d people like this.'), $spanatts, $cnt) + sprintf( tt('%2$d people like this.','%2$d people like this.',$cnt), $spanatts, $cnt) : - sprintf( t('%2$d people don\'t like this.'), $spanatts, $cnt) ); + sprintf( tt('%2$d people don\'t like this.','%2$d people don\'t like this.',$cnt), $spanatts, $cnt) ); $o .= EOL ; $total = count($arr); if($total >= MAX_LIKERS) @@ -1004,7 +1004,7 @@ function format_like($cnt,$arr,$type,$id) { $arr[count($arr)-1] = t('and') . ' ' . $arr[count($arr)-1]; $str = implode(', ', $arr); if($total >= MAX_LIKERS) - $str .= sprintf( t(', and %d other people'), $total - MAX_LIKERS ); + $str .= sprintf( tt(', and %d other people',', and %d other people',$total - MAX_LIKERS), $total - MAX_LIKERS ); $str = (($type === 'like') ? sprintf( t('%s like this.'), $str) : sprintf( t('%s don\'t like this.'), $str)); $o .= "\t" . ''; } diff --git a/util/messages.po b/util/messages.po index 958d9e046..2156e2ef9 100644 --- a/util/messages.po +++ b/util/messages.po @@ -6,9 +6,9 @@ #, fuzzy msgid "" msgstr "" -"Project-Id-Version: 2013-11-22.505\n" +"Project-Id-Version: 2013-11-27.510\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2013-11-22 00:02-0800\n" +"POT-Creation-Date: 2013-11-28 09:40+0100\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: FULL NAME \n" "Language-Team: LANGUAGE \n" @@ -18,566 +18,665 @@ msgstr "" "Content-Transfer-Encoding: 8bit\n" #"Plural-Forms: nplurals=INTEGER; plural=EXPRESSION;\n" -#: ../../include/acl_selectors.php:235 -msgid "Visible to everybody" -msgstr "" - -#: ../../include/acl_selectors.php:236 -msgid "show" -msgstr "" - -#: ../../include/acl_selectors.php:237 -msgid "don't show" -msgstr "" - -#: ../../include/activities.php:37 -msgid " and " -msgstr "" - -#: ../../include/activities.php:45 -msgid "public profile" -msgstr "" - -#: ../../include/activities.php:50 -#, php-format -msgid "%1$s changed %2$s to “%3$s”" -msgstr "" - -#: ../../include/activities.php:51 -#, php-format -msgid "Visit %1$s's %2$s" -msgstr "" - -#: ../../include/activities.php:54 -#, php-format -msgid "%1$s has an updated %2$s, changing %3$s." -msgstr "" - -#: ../../include/api.php:972 -msgid "Public Timeline" -msgstr "" - -#: ../../include/enotify.php:36 -msgid "Red Matrix Notification" -msgstr "" - -#: ../../include/enotify.php:37 -msgid "redmatrix" -msgstr "" - -#: ../../include/enotify.php:39 -msgid "Thank You," -msgstr "" - -#: ../../include/enotify.php:41 -#, php-format -msgid "%s Administrator" -msgstr "" - -#: ../../include/enotify.php:76 -#, php-format -msgid "%s " -msgstr "" - -#: ../../include/enotify.php:80 -#, php-format -msgid "[Red:Notify] New mail received at %s" -msgstr "" - -#: ../../include/enotify.php:82 -#, php-format -msgid "%1$s, %2$s sent you a new private message at %3$s." -msgstr "" - -#: ../../include/enotify.php:83 -#, php-format -msgid "%1$s sent you %2$s." -msgstr "" - -#: ../../include/enotify.php:83 -msgid "a private message" -msgstr "" - -#: ../../include/enotify.php:84 -#, php-format -msgid "Please visit %s to view and/or reply to your private messages." -msgstr "" - -#: ../../include/enotify.php:135 -#, php-format -msgid "%1$s commented on [zrl=%2$s]a %3$s[/zrl]" -msgstr "" - -#: ../../include/enotify.php:142 -#, php-format -msgid "%1$s commented on [zrl=%2$s]%3$s's %4$s[/zrl]" -msgstr "" - -#: ../../include/enotify.php:150 -#, php-format -msgid "%1$s commented on [zrl=%2$s]your %3$s[/zrl]" -msgstr "" - -#: ../../include/enotify.php:160 -#, php-format -msgid "[Red:Notify] Comment to conversation #%1$d by %2$s" -msgstr "" - -#: ../../include/enotify.php:161 -#, php-format -msgid "%s commented on an item/conversation you have been following." -msgstr "" - -#: ../../include/enotify.php:164 ../../include/enotify.php:181 -#: ../../include/enotify.php:206 ../../include/enotify.php:224 -#: ../../include/enotify.php:237 -#, php-format -msgid "Please visit %s to view and/or reply to the conversation." -msgstr "" - -#: ../../include/enotify.php:171 -#, php-format -msgid "[Red:Notify] %s posted to your profile wall" -msgstr "" - -#: ../../include/enotify.php:173 -#, php-format -msgid "%1$s posted to your profile wall at %2$s" -msgstr "" - -#: ../../include/enotify.php:175 -#, php-format -msgid "%1$s posted to [zrl=%2$s]your wall[/zrl]" -msgstr "" - -#: ../../include/enotify.php:200 -#, php-format -msgid "[Red:Notify] %s tagged you" -msgstr "" - -#: ../../include/enotify.php:201 -#, php-format -msgid "%1$s, %2$s tagged you at %3$s" -msgstr "" - -#: ../../include/enotify.php:202 -#, php-format -msgid "%1$s [zrl=%2$s]tagged you[/zrl]." -msgstr "" - -#: ../../include/enotify.php:214 -#, php-format -msgid "[Red:Notify] %1$s poked you" -msgstr "" - -#: ../../include/enotify.php:215 -#, php-format -msgid "%1$s, %2$s poked you at %3$s" -msgstr "" - -#: ../../include/enotify.php:216 -#, php-format -msgid "%1$s [zrl=%2$s]poked you[/zrl]." -msgstr "" - -#: ../../include/enotify.php:231 -#, php-format -msgid "[Red:Notify] %s tagged your post" -msgstr "" - -#: ../../include/enotify.php:232 -#, php-format -msgid "%1$s tagged your post at %2$s" -msgstr "" - -#: ../../include/enotify.php:233 -#, php-format -msgid "%1$s tagged [zrl=%2$s]your post[/zrl]" -msgstr "" - -#: ../../include/enotify.php:244 -msgid "[Red:Notify] Introduction received" -msgstr "" - -#: ../../include/enotify.php:245 -#, php-format -msgid "You've received an introduction from '%1$s' at %2$s" -msgstr "" - -#: ../../include/enotify.php:246 -#, php-format -msgid "You've received [zrl=%1$s]an introduction[/zrl] from %2$s." -msgstr "" - -#: ../../include/enotify.php:249 ../../include/enotify.php:267 -#, php-format -msgid "You may visit their profile at %s" -msgstr "" - -#: ../../include/enotify.php:251 -#, php-format -msgid "Please visit %s to approve or reject the introduction." -msgstr "" - -#: ../../include/enotify.php:258 -msgid "[Red:Notify] Friend suggestion received" -msgstr "" - -#: ../../include/enotify.php:259 -#, php-format -msgid "You've received a friend suggestion from '%1$s' at %2$s" -msgstr "" - -#: ../../include/enotify.php:260 -#, php-format -msgid "You've received [zrl=%1$s]a friend suggestion[/zrl] for %2$s from %3$s." -msgstr "" - -#: ../../include/enotify.php:265 -msgid "Name:" -msgstr "" - -#: ../../include/enotify.php:266 -msgid "Photo:" -msgstr "" - -#: ../../include/enotify.php:269 -#, php-format -msgid "Please visit %s to approve or reject the suggestion." -msgstr "" - -#: ../../include/ItemObject.php:88 ../../mod/photos.php:952 -msgid "Private Message" -msgstr "" - -#: ../../include/ItemObject.php:95 ../../include/page_widgets.php:8 -#: ../../mod/webpages.php:101 ../../mod/settings.php:713 ../../mod/menu.php:55 -#: ../../mod/layouts.php:102 ../../mod/editlayout.php:100 -#: ../../mod/editwebpage.php:119 ../../mod/blocks.php:93 -#: ../../mod/editpost.php:97 ../../mod/editblock.php:114 -msgid "Edit" -msgstr "" - -#: ../../include/ItemObject.php:107 ../../include/conversation.php:628 -#: ../../mod/settings.php:714 ../../mod/admin.php:686 ../../mod/group.php:182 -#: ../../mod/photos.php:1130 ../../mod/connections.php:374 -#: ../../mod/filestorage.php:82 -msgid "Delete" -msgstr "" - -#: ../../include/ItemObject.php:113 ../../include/conversation.php:627 -msgid "Select" -msgstr "" - -#: ../../include/ItemObject.php:117 -msgid "save to folder" -msgstr "" - -#: ../../include/ItemObject.php:145 -msgid "add star" -msgstr "" - -#: ../../include/ItemObject.php:146 -msgid "remove star" -msgstr "" - -#: ../../include/ItemObject.php:147 -msgid "toggle star status" -msgstr "" - -#: ../../include/ItemObject.php:151 -msgid "starred" -msgstr "" - -#: ../../include/ItemObject.php:160 ../../include/conversation.php:638 -msgid "Message is verified" -msgstr "" - -#: ../../include/ItemObject.php:168 -msgid "add tag" -msgstr "" - -#: ../../include/ItemObject.php:174 ../../mod/photos.php:1058 -msgid "I like this (toggle)" -msgstr "" - -#: ../../include/ItemObject.php:174 ../../include/taxonomy.php:251 -msgid "like" -msgstr "" - -#: ../../include/ItemObject.php:175 ../../mod/photos.php:1059 -msgid "I don't like this (toggle)" -msgstr "" - -#: ../../include/ItemObject.php:175 ../../include/taxonomy.php:252 -msgid "dislike" -msgstr "" - -#: ../../include/ItemObject.php:177 -msgid "Share this" -msgstr "" - -#: ../../include/ItemObject.php:177 -msgid "share" -msgstr "" - -#: ../../include/ItemObject.php:201 ../../include/ItemObject.php:202 -#, php-format -msgid "View %s's profile - %s" -msgstr "" - -#: ../../include/ItemObject.php:203 -msgid "to" -msgstr "" - -#: ../../include/ItemObject.php:204 -msgid "via" -msgstr "" - -#: ../../include/ItemObject.php:205 -msgid "Wall-to-Wall" -msgstr "" - -#: ../../include/ItemObject.php:206 -msgid "via Wall-To-Wall:" -msgstr "" - -#: ../../include/ItemObject.php:216 ../../include/conversation.php:682 -#, php-format -msgid " from %s" -msgstr "" - -#: ../../include/ItemObject.php:219 ../../include/conversation.php:685 -#, php-format -msgid "last edited: %s" -msgstr "" - -#: ../../include/ItemObject.php:246 ../../include/conversation.php:702 -#: ../../include/conversation.php:1112 ../../mod/photos.php:1061 -#: ../../mod/message.php:332 ../../mod/message.php:516 -#: ../../mod/editlayout.php:109 ../../mod/editwebpage.php:128 -#: ../../mod/editpost.php:106 ../../mod/editblock.php:123 -msgid "Please wait" -msgstr "" - -#: ../../include/ItemObject.php:267 -#, php-format -msgid "%d comment" -msgid_plural "%d comments" -msgstr[0] "" -msgstr[1] "" - -#: ../../include/ItemObject.php:268 ../../include/js_strings.php:7 -#: ../../include/contact_widgets.php:148 -msgid "show more" -msgstr "" - -#: ../../include/ItemObject.php:527 ../../mod/photos.php:1077 -#: ../../mod/photos.php:1164 -msgid "This is you" -msgstr "" - -#: ../../include/ItemObject.php:529 ../../include/js_strings.php:6 -#: ../../mod/photos.php:1079 ../../mod/photos.php:1166 -msgid "Comment" -msgstr "" - -#: ../../include/ItemObject.php:530 ../../mod/events.php:458 -#: ../../mod/thing.php:190 ../../mod/invite.php:154 ../../mod/setup.php:302 -#: ../../mod/setup.php:345 ../../mod/settings.php:651 +#: ../../view/theme/red-theme-bootstrap/php/config.php:90 +#: ../../view/theme/redstrap/php/config.php:131 +#: ../../view/theme/redstrap3/php/config.php:51 +#: ../../view/theme/redbasic/php/config.php:85 +#: ../../view/theme/redstrap-multiengine/php/config.php:131 +#: ../../view/theme/redmatrixthemes/blogbasic/php/config.php:91 +#: ../../view/theme/redmatrixthemes/blogbasic/php/config.php:111 +#: ../../view/theme/redmatrixthemes/newsportal/php/config.php:63 +#: ../../view/theme/redmatrixthemes/newsportal/php/config.php:74 +#: ../../view/theme/redmatrixthemes/bookbasic/php/config.php:63 +#: ../../view/theme/redmatrixthemes/bookbasic/php/config.php:74 +#: ../../include/ItemObject.php:530 ../../mod/message.php:333 +#: ../../mod/message.php:515 ../../mod/poke.php:166 ../../mod/fsuggest.php:108 +#: ../../mod/mood.php:137 ../../mod/crepair.php:166 ../../mod/connect.php:96 +#: ../../mod/admin.php:418 ../../mod/admin.php:683 ../../mod/admin.php:823 +#: ../../mod/admin.php:1022 ../../mod/admin.php:1109 +#: ../../mod/connections.php:452 ../../mod/import.php:385 +#: ../../mod/invite.php:154 ../../mod/group.php:87 ../../mod/photos.php:685 +#: ../../mod/photos.php:779 ../../mod/photos.php:1040 +#: ../../mod/photos.php:1080 ../../mod/photos.php:1167 ../../mod/thing.php:190 +#: ../../mod/setup.php:302 ../../mod/setup.php:345 ../../mod/sources.php:83 +#: ../../mod/sources.php:110 ../../mod/settings.php:651 #: ../../mod/settings.php:763 ../../mod/settings.php:791 #: ../../mod/settings.php:815 ../../mod/settings.php:886 -#: ../../mod/settings.php:1054 ../../mod/connect.php:96 -#: ../../mod/sources.php:83 ../../mod/sources.php:110 ../../mod/admin.php:418 -#: ../../mod/admin.php:679 ../../mod/admin.php:819 ../../mod/admin.php:1018 -#: ../../mod/admin.php:1105 ../../mod/group.php:87 ../../mod/photos.php:685 -#: ../../mod/photos.php:779 ../../mod/photos.php:1040 -#: ../../mod/photos.php:1080 ../../mod/photos.php:1167 -#: ../../mod/message.php:333 ../../mod/message.php:515 -#: ../../mod/connections.php:452 ../../mod/profiles.php:529 -#: ../../mod/import.php:385 ../../mod/crepair.php:166 ../../mod/poke.php:166 -#: ../../mod/fsuggest.php:108 ../../mod/mood.php:137 -#: ../../view/theme/redbasic/php/config.php:85 -#: ../../view/theme/apw/php/config.php:231 +#: ../../mod/settings.php:1054 ../../mod/profiles.php:529 +#: ../../mod/events.php:458 msgid "Submit" msgstr "" -#: ../../include/ItemObject.php:531 -msgid "Bold" +#: ../../view/theme/red-theme-bootstrap/php/config.php:92 +#: ../../view/theme/redstrap/php/config.php:133 +#: ../../view/theme/redstrap3/php/config.php:54 +#: ../../view/theme/redbasic/php/config.php:88 +#: ../../view/theme/redstrap-multiengine/php/config.php:133 +#: ../../view/theme/redmatrixthemes/blogbasic/php/config.php:93 +#: ../../view/theme/redmatrixthemes/blogbasic/php/config.php:113 +#: ../../view/theme/redmatrixthemes/newsportal/php/config.php:65 +#: ../../view/theme/redmatrixthemes/newsportal/php/config.php:76 +#: ../../view/theme/redmatrixthemes/bookbasic/php/config.php:65 +#: ../../view/theme/redmatrixthemes/bookbasic/php/config.php:76 +msgid "Theme settings" msgstr "" -#: ../../include/ItemObject.php:532 -msgid "Italic" +#: ../../view/theme/red-theme-bootstrap/php/config.php:93 +#: ../../view/theme/redstrap/php/config.php:134 +#: ../../view/theme/redbasic/php/config.php:99 +#: ../../view/theme/redstrap-multiengine/php/config.php:134 +#: ../../view/theme/redmatrixthemes/blogbasic/php/config.php:94 +#: ../../view/theme/redmatrixthemes/blogbasic/php/config.php:114 +#: ../../view/theme/redmatrixthemes/newsportal/php/config.php:66 +#: ../../view/theme/redmatrixthemes/newsportal/php/config.php:77 +#: ../../view/theme/redmatrixthemes/bookbasic/php/config.php:66 +#: ../../view/theme/redmatrixthemes/bookbasic/php/config.php:77 +msgid "Set font-size for posts and comments" msgstr "" -#: ../../include/ItemObject.php:533 -msgid "Underline" +#: ../../view/theme/red-theme-bootstrap/php/config.php:94 +#: ../../view/theme/redstrap/php/config.php:135 +#: ../../view/theme/redstrap-multiengine/php/config.php:135 +#: ../../view/theme/redmatrixthemes/blogbasic/php/config.php:96 +#: ../../view/theme/redmatrixthemes/blogbasic/php/config.php:116 +#: ../../view/theme/redmatrixthemes/newsportal/php/config.php:67 +#: ../../view/theme/redmatrixthemes/newsportal/php/config.php:79 +#: ../../view/theme/redmatrixthemes/bookbasic/php/config.php:67 +#: ../../view/theme/redmatrixthemes/bookbasic/php/config.php:79 +msgid "Set line-height for posts and comments" msgstr "" -#: ../../include/ItemObject.php:534 -msgid "Quote" +#: ../../view/theme/red-theme-bootstrap/php/config.php:95 +#: ../../view/theme/redstrap/php/config.php:140 +#: ../../view/theme/redstrap-multiengine/php/config.php:140 +#: ../../view/theme/redmatrixthemes/blogbasic/php/config.php:98 +msgid "Display colour of links - hex value, do not include the #" msgstr "" -#: ../../include/ItemObject.php:535 -msgid "Code" +#: ../../view/theme/redstrap/php/config.php:136 +#: ../../view/theme/redstrap-multiengine/php/config.php:136 +msgid "Set colour scheme" msgstr "" -#: ../../include/ItemObject.php:536 -msgid "Image" +#: ../../view/theme/redstrap/php/config.php:137 +#: ../../view/theme/redstrap-multiengine/php/config.php:137 +#: ../../view/theme/redmatrixthemes/blogbasic/php/config.php:104 +#: ../../view/theme/redmatrixthemes/blogbasic/php/config.php:120 +msgid "Draw shadows" msgstr "" -#: ../../include/ItemObject.php:537 -msgid "Link" +#: ../../view/theme/redstrap/php/config.php:138 +#: ../../view/theme/redstrap3/php/config.php:56 +#: ../../view/theme/redbasic/php/config.php:90 +#: ../../view/theme/redstrap-multiengine/php/config.php:138 +#: ../../view/theme/redmatrixthemes/blogbasic/php/config.php:97 +#: ../../view/theme/redmatrixthemes/newsportal/php/config.php:68 +#: ../../view/theme/redmatrixthemes/bookbasic/php/config.php:68 +msgid "Navigation bar colour" msgstr "" -#: ../../include/ItemObject.php:538 -msgid "Video" +#: ../../view/theme/redstrap/php/config.php:139 +#: ../../view/theme/redstrap-multiengine/php/config.php:139 +msgid "Display style" msgstr "" -#: ../../include/ItemObject.php:539 ../../include/conversation.php:1075 -#: ../../mod/webpages.php:105 ../../mod/photos.php:1081 -#: ../../mod/editlayout.php:129 ../../mod/editwebpage.php:150 -#: ../../mod/editpost.php:126 ../../mod/editblock.php:144 -msgid "Preview" +#: ../../view/theme/redstrap/php/config.php:141 +#: ../../view/theme/redstrap-multiengine/php/config.php:141 +#: ../../view/theme/redmatrixthemes/blogbasic/php/config.php:99 +msgid "Icons" msgstr "" -#: ../../include/ItemObject.php:542 ../../include/conversation.php:1139 -#: ../../mod/message.php:338 ../../mod/message.php:521 -#: ../../mod/editpost.php:134 -msgid "Encrypt text" +#: ../../view/theme/redstrap/php/config.php:142 +#: ../../view/theme/redstrap-multiengine/php/config.php:142 +msgid "Shiny style" msgstr "" -#: ../../include/Contact.php:87 ../../include/contact_widgets.php:23 -#: ../../mod/match.php:58 ../../mod/suggest.php:56 ../../mod/directory.php:198 -#: ../../boot.php:1741 -msgid "Connect" +#: ../../view/theme/redstrap3/php/config.php:28 +#: ../../view/theme/redbasic/php/config.php:62 ../../include/comanche.php:35 +msgid "Default" msgstr "" -#: ../../include/Contact.php:103 -msgid "New window" +#: ../../view/theme/redstrap3/php/config.php:40 +#: ../../view/theme/redbasic/php/config.php:74 +msgid "Scheme Default" msgstr "" -#: ../../include/Contact.php:104 -msgid "Open the selected location in a different window or browser tab" +#: ../../view/theme/redstrap3/php/config.php:41 +#: ../../view/theme/redbasic/php/config.php:75 +msgid "red" msgstr "" -#: ../../include/Contact.php:524 ../../include/conversation.php:930 -msgid "Poke" +#: ../../view/theme/redstrap3/php/config.php:42 +#: ../../view/theme/redbasic/php/config.php:76 +msgid "black" msgstr "" -#: ../../include/Contact.php:525 ../../include/conversation.php:924 -msgid "View Status" +#: ../../view/theme/redstrap3/php/config.php:43 +#: ../../view/theme/redbasic/php/config.php:77 +msgid "silver" msgstr "" -#: ../../include/Contact.php:526 ../../include/nav.php:76 -#: ../../include/conversation.php:925 ../../mod/connections.php:327 -#: ../../mod/connections.php:441 -msgid "View Profile" +#: ../../view/theme/redstrap3/php/config.php:55 +#: ../../view/theme/redbasic/php/config.php:89 +msgid "Set scheme" msgstr "" -#: ../../include/Contact.php:527 ../../include/conversation.php:926 -msgid "View Photos" +#: ../../view/theme/redbasic/php/config.php:91 +msgid "Set font-colour for banner" msgstr "" -#: ../../include/Contact.php:528 -msgid "Network Posts" +#: ../../view/theme/redbasic/php/config.php:92 +msgid "Set the background colour" msgstr "" -#: ../../include/Contact.php:529 ../../include/conversation.php:928 -msgid "Edit Contact" +#: ../../view/theme/redbasic/php/config.php:93 +msgid "Set the background image" msgstr "" -#: ../../include/Contact.php:530 ../../include/conversation.php:929 -msgid "Send PM" +#: ../../view/theme/redbasic/php/config.php:94 +msgid "Set the background colour of items" msgstr "" -#: ../../include/contact_selectors.php:30 -msgid "Unknown | Not categorised" +#: ../../view/theme/redbasic/php/config.php:95 +msgid "Set the opacity of items" msgstr "" -#: ../../include/contact_selectors.php:31 -msgid "Block immediately" +#: ../../view/theme/redbasic/php/config.php:96 +msgid "Set the basic colour for item icons" msgstr "" -#: ../../include/contact_selectors.php:32 -msgid "Shady, spammer, self-marketer" +#: ../../view/theme/redbasic/php/config.php:97 +msgid "Set the hover colour for item icons" msgstr "" -#: ../../include/contact_selectors.php:33 -msgid "Known to me, but no opinion" +#: ../../view/theme/redbasic/php/config.php:98 +msgid "Set font-size for the entire application" msgstr "" -#: ../../include/contact_selectors.php:34 -msgid "OK, probably harmless" +#: ../../view/theme/redbasic/php/config.php:100 +msgid "Set font-colour for posts and comments" msgstr "" -#: ../../include/contact_selectors.php:35 -msgid "Reputable, has my trust" +#: ../../view/theme/redbasic/php/config.php:101 +msgid "Set radius of corners" msgstr "" -#: ../../include/contact_selectors.php:54 -msgid "Frequently" +#: ../../view/theme/redbasic/php/config.php:102 +msgid "Set shadow depth of photos" msgstr "" -#: ../../include/contact_selectors.php:55 -msgid "Hourly" +#: ../../view/theme/redbasic/php/config.php:103 +msgid "Set maximum width of conversation regions" msgstr "" -#: ../../include/contact_selectors.php:56 -msgid "Twice daily" +#: ../../view/theme/redbasic/php/config.php:104 +msgid "Set minimum opacity of nav bar - to hide it" msgstr "" -#: ../../include/contact_selectors.php:57 -msgid "Daily" +#: ../../view/theme/redbasic/php/config.php:105 +msgid "Set size of conversation author photo" msgstr "" -#: ../../include/contact_selectors.php:58 -msgid "Weekly" +#: ../../view/theme/redbasic/php/config.php:106 +msgid "Set size of followup author photos" msgstr "" -#: ../../include/contact_selectors.php:59 -msgid "Monthly" +#: ../../view/theme/redbasic/php/config.php:107 +msgid "Sloppy photo albums" msgstr "" -#: ../../include/contact_selectors.php:74 -msgid "Friendica" +#: ../../view/theme/redbasic/php/config.php:107 +msgid "Are you a clean desk or a messy desk person?" msgstr "" -#: ../../include/contact_selectors.php:75 -msgid "OStatus" +#: ../../view/theme/redmatrixthemes/blogbasic/php/config.php:95 +#: ../../view/theme/redmatrixthemes/blogbasic/php/config.php:115 +msgid "Set background image" msgstr "" -#: ../../include/contact_selectors.php:76 -msgid "RSS/Atom" +#: ../../view/theme/redmatrixthemes/blogbasic/php/config.php:100 +msgid "Corner radius" msgstr "" -#: ../../include/contact_selectors.php:77 ../../mod/admin.php:682 -#: ../../mod/admin.php:691 ../../boot.php:1461 +#: ../../view/theme/redmatrixthemes/blogbasic/php/config.php:100 +msgid "0-99 default: 5" +msgstr "" + +#: ../../view/theme/redmatrixthemes/blogbasic/php/config.php:101 +msgid "Section and Aside BG color (hex without #)" +msgstr "" + +#: ../../view/theme/redmatrixthemes/blogbasic/php/config.php:102 +#: ../../view/theme/redmatrixthemes/blogbasic/php/config.php:118 +msgid "Section and Aside BG opacity (float: 0.80 - 1.00)" +msgstr "" + +#: ../../view/theme/redmatrixthemes/blogbasic/php/config.php:103 +#: ../../view/theme/redmatrixthemes/blogbasic/php/config.php:119 +msgid "Text color in Aside and Section (hex without #)" +msgstr "" + +#: ../../view/theme/redmatrixthemes/blogbasic/php/config.php:117 +#: ../../view/theme/redmatrixthemes/newsportal/php/config.php:78 +#: ../../view/theme/redmatrixthemes/bookbasic/php/config.php:78 +msgid "Colour of the navigation bar" +msgstr "" + +#: ../../boot.php:1274 +#, php-format +msgid "Update %s failed. See error logs." +msgstr "" + +#: ../../boot.php:1277 +#, php-format +msgid "Update Error at %s" +msgstr "" + +#: ../../boot.php:1434 +msgid "" +"Create an account to access services and applications within the Red Matrix" +msgstr "" + +#: ../../boot.php:1435 ../../include/nav.php:125 ../../mod/register.php:195 +msgid "Register" +msgstr "" + +#: ../../boot.php:1458 ../../include/nav.php:72 ../../include/nav.php:87 +msgid "Logout" +msgstr "" + +#: ../../boot.php:1459 ../../include/nav.php:85 +msgid "Login" +msgstr "" + +#: ../../boot.php:1461 ../../include/contact_selectors.php:77 +#: ../../mod/admin.php:686 ../../mod/admin.php:695 msgid "Email" msgstr "" -#: ../../include/contact_selectors.php:78 -msgid "Diaspora" +#: ../../boot.php:1462 +msgid "Password" msgstr "" -#: ../../include/contact_selectors.php:79 -msgid "Facebook" +#: ../../boot.php:1463 +msgid "Remember me" msgstr "" -#: ../../include/contact_selectors.php:80 -msgid "Zot!" +#: ../../boot.php:1468 +msgid "Forgot your password?" msgstr "" -#: ../../include/contact_selectors.php:81 -msgid "LinkedIn" +#: ../../boot.php:1469 ../../mod/lostpass.php:85 +msgid "Password Reset" msgstr "" -#: ../../include/contact_selectors.php:82 -msgid "XMPP/IM" +#: ../../boot.php:1533 +msgid "permission denied" msgstr "" -#: ../../include/contact_selectors.php:83 -msgid "MySpace" +#: ../../boot.php:1534 +msgid "Got Zot?" +msgstr "" + +#: ../../boot.php:1593 +msgid "Requested channel is not available." +msgstr "" + +#: ../../boot.php:1605 +msgid " Sorry, you don't have the permission to view this profile. " +msgstr "" + +#: ../../boot.php:1640 ../../mod/connect.php:13 ../../mod/blocks.php:10 +#: ../../mod/profile.php:8 ../../mod/webpages.php:8 +#: ../../mod/filestorage.php:8 ../../mod/layouts.php:8 +msgid "Requested profile is not available." +msgstr "" + +#: ../../boot.php:1741 ../../include/contact_widgets.php:23 +#: ../../include/Contact.php:87 ../../mod/directory.php:198 +#: ../../mod/suggest.php:56 ../../mod/match.php:58 +msgid "Connect" +msgstr "" + +#: ../../boot.php:1755 ../../mod/profiles.php:624 +msgid "Change profile photo" +msgstr "" + +#: ../../boot.php:1761 +msgid "Profiles" +msgstr "" + +#: ../../boot.php:1761 +msgid "Manage/edit profiles" +msgstr "" + +#: ../../boot.php:1762 ../../mod/profiles.php:625 +msgid "Create New Profile" +msgstr "" + +#: ../../boot.php:1765 +msgid "Edit Profile" +msgstr "" + +#: ../../boot.php:1776 ../../mod/profiles.php:636 +msgid "Profile Image" +msgstr "" + +#: ../../boot.php:1779 ../../mod/profiles.php:639 +msgid "visible to everybody" +msgstr "" + +#: ../../boot.php:1780 ../../mod/profiles.php:640 +msgid "Edit visibility" +msgstr "" + +#: ../../boot.php:1791 ../../include/event.php:40 +#: ../../include/bb2diaspora.php:455 ../../mod/directory.php:173 +#: ../../mod/events.php:450 +msgid "Location:" +msgstr "" + +#: ../../boot.php:1793 ../../include/profile_advanced.php:17 +#: ../../mod/directory.php:175 +msgid "Gender:" +msgstr "" + +#: ../../boot.php:1794 ../../include/profile_advanced.php:37 +#: ../../mod/directory.php:177 +msgid "Status:" +msgstr "" + +#: ../../boot.php:1795 ../../include/profile_advanced.php:48 +#: ../../mod/directory.php:179 +msgid "Homepage:" +msgstr "" + +#: ../../boot.php:1858 ../../boot.php:1938 ../../mod/ping.php:230 +msgid "g A l F d" +msgstr "" + +#: ../../boot.php:1859 ../../boot.php:1939 +msgid "F d" +msgstr "" + +#: ../../boot.php:1904 ../../boot.php:1979 ../../mod/ping.php:252 +msgid "[today]" +msgstr "" + +#: ../../boot.php:1916 +msgid "Birthday Reminders" +msgstr "" + +#: ../../boot.php:1917 +msgid "Birthdays this week:" +msgstr "" + +#: ../../boot.php:1972 +msgid "[No description]" +msgstr "" + +#: ../../boot.php:1990 +msgid "Event Reminders" +msgstr "" + +#: ../../boot.php:1991 +msgid "Events this week:" +msgstr "" + +#: ../../boot.php:2225 +msgid "Channel" +msgstr "" + +#: ../../boot.php:2228 +msgid "Status Messages and Posts" +msgstr "" + +#: ../../boot.php:2232 +msgid "About" +msgstr "" + +#: ../../boot.php:2235 +msgid "Profile Details" +msgstr "" + +#: ../../boot.php:2239 ../../include/nav.php:79 ../../mod/fbrowser.php:25 +msgid "Photos" +msgstr "" + +#: ../../boot.php:2242 ../../include/photos.php:288 +msgid "Photo Albums" +msgstr "" + +#: ../../boot.php:2250 ../../include/nav.php:174 ../../mod/events.php:348 +msgid "Events" +msgstr "" + +#: ../../boot.php:2253 +msgid "Events and Calendar" +msgstr "" + +#: ../../boot.php:2258 +msgid "Webpages" +msgstr "" + +#: ../../boot.php:2261 +msgid "Manage Webpages" +msgstr "" + +#: ../../boot.php:2545 +msgid "toggle mobile" +msgstr "" + +#: ../../index.php:178 ../../index.php:340 ../../include/items.php:3593 +#: ../../include/photos.php:15 ../../include/attach.php:102 +#: ../../include/attach.php:133 ../../include/attach.php:189 +#: ../../include/attach.php:204 ../../include/attach.php:237 +#: ../../include/attach.php:251 ../../include/attach.php:272 +#: ../../include/attach.php:464 ../../include/attach.php:539 +#: ../../mod/message.php:208 ../../mod/poke.php:128 ../../mod/viewsrc.php:12 +#: ../../mod/fsuggest.php:78 ../../mod/mood.php:114 +#: ../../mod/profile_photo.php:197 ../../mod/profile_photo.php:210 +#: ../../mod/crepair.php:115 ../../mod/blocks.php:29 ../../mod/blocks.php:44 +#: ../../mod/intro.php:50 ../../mod/new_channel.php:66 +#: ../../mod/new_channel.php:97 ../../mod/mitem.php:92 +#: ../../mod/editwebpage.php:42 ../../mod/editwebpage.php:64 +#: ../../mod/connections.php:197 ../../mod/network.php:7 +#: ../../mod/webpages.php:40 ../../mod/filestorage.php:26 +#: ../../mod/page.php:30 ../../mod/page.php:80 ../../mod/api.php:26 +#: ../../mod/api.php:31 ../../mod/delegate.php:6 ../../mod/register.php:68 +#: ../../mod/editpost.php:13 ../../mod/invite.php:13 ../../mod/invite.php:102 +#: ../../mod/group.php:15 ../../mod/regmod.php:18 ../../mod/photos.php:74 +#: ../../mod/photos.php:654 ../../mod/editlayout.php:48 +#: ../../mod/common.php:43 ../../mod/layouts.php:27 ../../mod/layouts.php:42 +#: ../../mod/viewconnections.php:33 ../../mod/viewconnections.php:38 +#: ../../mod/suggest.php:32 ../../mod/menu.php:40 +#: ../../mod/notifications.php:66 ../../mod/editblock.php:48 +#: ../../mod/setup.php:200 ../../mod/sources.php:48 ../../mod/settings.php:628 +#: ../../mod/item.php:181 ../../mod/item.php:189 ../../mod/manage.php:6 +#: ../../mod/allfriends.php:10 ../../mod/nogroup.php:25 +#: ../../mod/channel.php:123 ../../mod/profiles.php:163 +#: ../../mod/profiles.php:476 ../../mod/events.php:134 +msgid "Permission denied." +msgstr "" + +#: ../../index.php:226 ../../mod/help.php:53 +msgid "Not Found" +msgstr "" + +#: ../../index.php:229 ../../mod/display.php:92 ../../mod/page.php:83 +#: ../../mod/help.php:56 +msgid "Page not found." +msgstr "" + +#: ../../index.php:339 ../../include/items.php:201 ../../mod/profperm.php:28 +#: ../../mod/group.php:74 ../../mod/like.php:55 +msgid "Permission denied" +msgstr "" + +#: ../../include/message.php:18 +msgid "No recipient provided." +msgstr "" + +#: ../../include/message.php:23 +msgid "[no subject]" +msgstr "" + +#: ../../include/message.php:42 +msgid "Unable to determine sender." +msgstr "" + +#: ../../include/message.php:143 +msgid "Stored post could not be verified." +msgstr "" + +#: ../../include/bbcode.php:94 ../../include/bbcode.php:494 +#: ../../include/bbcode.php:497 +msgid "Image/photo" +msgstr "" + +#: ../../include/bbcode.php:126 ../../include/bbcode.php:502 +msgid "Encrypted content" +msgstr "" + +#: ../../include/bbcode.php:173 +#, php-format +msgid "%1$s wrote the following %2$s %3$s" +msgstr "" + +#: ../../include/bbcode.php:175 +msgid "post" +msgstr "" + +#: ../../include/bbcode.php:454 ../../include/bbcode.php:474 +msgid "$1 wrote:" +msgstr "" + +#: ../../include/dir_fns.php:15 +msgid "Sort Options" +msgstr "" + +#: ../../include/dir_fns.php:16 +msgid "Alphabetic" +msgstr "" + +#: ../../include/dir_fns.php:17 +msgid "Reverse Alphabetic" +msgstr "" + +#: ../../include/dir_fns.php:18 +msgid "Newest to Oldest" +msgstr "" + +#: ../../include/dir_fns.php:29 +msgid "Enable Safe Search" +msgstr "" + +#: ../../include/dir_fns.php:31 +msgid "Disable Safe Search" +msgstr "" + +#: ../../include/dir_fns.php:33 +msgid "Safe Mode" +msgstr "" + +#: ../../include/widgets.php:26 ../../include/contact_widgets.php:110 +msgid "Categories" +msgstr "" + +#: ../../include/account.php:23 +msgid "Not a valid email address" +msgstr "" + +#: ../../include/account.php:25 +msgid "Your email domain is not among those allowed on this site" +msgstr "" + +#: ../../include/account.php:31 +msgid "Your email address is already registered at this site." +msgstr "" + +#: ../../include/account.php:64 +msgid "An invitation is required." +msgstr "" + +#: ../../include/account.php:68 +msgid "Invitation could not be verified." +msgstr "" + +#: ../../include/account.php:118 +msgid "Please enter the required information." +msgstr "" + +#: ../../include/account.php:186 +msgid "Failed to store account information." +msgstr "" + +#: ../../include/account.php:272 +#, php-format +msgid "Registration request at %s" +msgstr "" + +#: ../../include/account.php:274 ../../include/account.php:301 +#: ../../include/account.php:358 +msgid "Administrator" +msgstr "" + +#: ../../include/account.php:296 +msgid "your registration password" +msgstr "" + +#: ../../include/account.php:299 ../../include/account.php:356 +#, php-format +msgid "Registration details for %s" +msgstr "" + +#: ../../include/account.php:365 +msgid "Account approved." +msgstr "" + +#: ../../include/account.php:399 +#, php-format +msgid "Registration revoked for %s" +msgstr "" + +#: ../../include/taxonomy.php:210 +msgid "Tags" +msgstr "" + +#: ../../include/taxonomy.php:224 +msgid "Keywords" +msgstr "" + +#: ../../include/taxonomy.php:249 +msgid "have" +msgstr "" + +#: ../../include/taxonomy.php:249 +msgid "has" +msgstr "" + +#: ../../include/taxonomy.php:250 +msgid "want" +msgstr "" + +#: ../../include/taxonomy.php:250 +msgid "wants" +msgstr "" + +#: ../../include/taxonomy.php:251 ../../include/ItemObject.php:174 +msgid "like" +msgstr "" + +#: ../../include/taxonomy.php:251 +msgid "likes" +msgstr "" + +#: ../../include/taxonomy.php:252 ../../include/ItemObject.php:175 +msgid "dislike" +msgstr "" + +#: ../../include/taxonomy.php:252 +msgid "dislikes" msgstr "" #: ../../include/datetime.php:43 ../../include/datetime.php:45 @@ -653,516 +752,6 @@ msgstr "" msgid "%1$d %2$s ago" msgstr "" -#: ../../include/dba/dba_driver.php:50 -#, php-format -msgid "Cannot locate DNS info for database server '%s'" -msgstr "" - -#: ../../include/event.php:11 ../../include/bb2diaspora.php:433 -msgid "l F d, Y \\@ g:i A" -msgstr "" - -#: ../../include/event.php:20 ../../include/bb2diaspora.php:439 -msgid "Starts:" -msgstr "" - -#: ../../include/event.php:30 ../../include/bb2diaspora.php:447 -msgid "Finishes:" -msgstr "" - -#: ../../include/event.php:40 ../../include/bb2diaspora.php:455 -#: ../../mod/events.php:450 ../../mod/directory.php:173 ../../boot.php:1791 -msgid "Location:" -msgstr "" - -#: ../../include/features.php:21 -msgid "General Features" -msgstr "" - -#: ../../include/features.php:23 -msgid "Content Expiration" -msgstr "" - -#: ../../include/features.php:23 -msgid "Remove posts/comments and/or private messages at a future time" -msgstr "" - -#: ../../include/features.php:24 -msgid "Multiple Profiles" -msgstr "" - -#: ../../include/features.php:24 -msgid "Ability to create multiple profiles" -msgstr "" - -#: ../../include/features.php:25 -msgid "Web Pages" -msgstr "" - -#: ../../include/features.php:25 -msgid "Provide managed web pages on your channel" -msgstr "" - -#: ../../include/features.php:26 -msgid "Enhanced Photo Albums" -msgstr "" - -#: ../../include/features.php:26 -msgid "Enable photo album with enhanced features" -msgstr "" - -#: ../../include/features.php:28 -msgid "Extended Identity Sharing" -msgstr "" - -#: ../../include/features.php:28 ../../include/js_strings.php:30 -msgid " " -msgstr "" - -#: ../../include/features.php:29 -msgid "Expert Mode" -msgstr "" - -#: ../../include/features.php:29 -msgid "Enable Expert Mode to provide advanced configuration options" -msgstr "" - -#: ../../include/features.php:30 -msgid "Premium Channel" -msgstr "" - -#: ../../include/features.php:30 -msgid "" -"Allows you to set restrictions and terms on those that connect with your " -"channel" -msgstr "" - -#: ../../include/features.php:35 -msgid "Post Composition Features" -msgstr "" - -#: ../../include/features.php:36 -msgid "Richtext Editor" -msgstr "" - -#: ../../include/features.php:36 -msgid "Enable richtext editor" -msgstr "" - -#: ../../include/features.php:37 -msgid "Post Preview" -msgstr "" - -#: ../../include/features.php:37 -msgid "Allow previewing posts and comments before publishing them" -msgstr "" - -#: ../../include/features.php:38 ../../mod/settings.php:120 -#: ../../mod/sources.php:67 -msgid "Channel Sources" -msgstr "" - -#: ../../include/features.php:38 -msgid "Automatically import channel content from other channels or feeds" -msgstr "" - -#: ../../include/features.php:39 -msgid "Even More Encryption" -msgstr "" - -#: ../../include/features.php:39 -msgid "Allow encryption of content end-to-end with a shared secret key" -msgstr "" - -#: ../../include/features.php:44 -msgid "Network and Stream Filtering" -msgstr "" - -#: ../../include/features.php:45 -msgid "Search by Date" -msgstr "" - -#: ../../include/features.php:45 -msgid "Ability to select posts by date ranges" -msgstr "" - -#: ../../include/features.php:46 -msgid "Collections Filter" -msgstr "" - -#: ../../include/features.php:46 -msgid "Enable widget to display Network posts only from selected collections" -msgstr "" - -#: ../../include/features.php:47 ../../mod/network.php:173 -#: ../../mod/search.php:17 -msgid "Saved Searches" -msgstr "" - -#: ../../include/features.php:47 -msgid "Save search terms for re-use" -msgstr "" - -#: ../../include/features.php:48 -msgid "Network Personal Tab" -msgstr "" - -#: ../../include/features.php:48 -msgid "Enable tab to display only Network posts that you've interacted on" -msgstr "" - -#: ../../include/features.php:49 -msgid "Network New Tab" -msgstr "" - -#: ../../include/features.php:49 -msgid "Enable tab to display all new Network activity" -msgstr "" - -#: ../../include/features.php:50 -msgid "Affinity Tool" -msgstr "" - -#: ../../include/features.php:50 -msgid "Filter stream activity by depth of relationships" -msgstr "" - -#: ../../include/features.php:55 -msgid "Post/Comment Tools" -msgstr "" - -#: ../../include/features.php:57 -msgid "Edit Sent Posts" -msgstr "" - -#: ../../include/features.php:57 -msgid "Edit and correct posts and comments after sending" -msgstr "" - -#: ../../include/features.php:58 -msgid "Tagging" -msgstr "" - -#: ../../include/features.php:58 -msgid "Ability to tag existing posts" -msgstr "" - -#: ../../include/features.php:59 -msgid "Post Categories" -msgstr "" - -#: ../../include/features.php:59 -msgid "Add categories to your posts" -msgstr "" - -#: ../../include/features.php:60 ../../include/contact_widgets.php:76 -msgid "Saved Folders" -msgstr "" - -#: ../../include/features.php:60 -msgid "Ability to file posts under folders" -msgstr "" - -#: ../../include/features.php:61 -msgid "Dislike Posts" -msgstr "" - -#: ../../include/features.php:61 -msgid "Ability to dislike posts/comments" -msgstr "" - -#: ../../include/features.php:62 -msgid "Star Posts" -msgstr "" - -#: ../../include/features.php:62 -msgid "Ability to mark special posts with a star indicator" -msgstr "" - -#: ../../include/features.php:63 -msgid "Tag Cloud" -msgstr "" - -#: ../../include/features.php:63 -msgid "Provide a personal tag cloud on your channel page" -msgstr "" - -#: ../../include/group.php:25 -msgid "" -"A deleted group with this name was revived. Existing item permissions " -"may apply to this group and any future members. If this is " -"not what you intended, please create another group with a different name." -msgstr "" - -#: ../../include/group.php:223 -msgid "Default privacy group for new contacts" -msgstr "" - -#: ../../include/group.php:242 -msgid "All Channels" -msgstr "" - -#: ../../include/group.php:264 -msgid "edit" -msgstr "" - -#: ../../include/group.php:285 -msgid "Collections" -msgstr "" - -#: ../../include/group.php:286 -msgid "Edit collection" -msgstr "" - -#: ../../include/group.php:287 -msgid "Create a new collection" -msgstr "" - -#: ../../include/group.php:288 -msgid "Channels not in any collection" -msgstr "" - -#: ../../include/group.php:290 ../../mod/network.php:174 -msgid "add" -msgstr "" - -#: ../../include/js_strings.php:5 -msgid "Delete this item?" -msgstr "" - -#: ../../include/js_strings.php:8 -msgid "show fewer" -msgstr "" - -#: ../../include/js_strings.php:9 -msgid "Password too short" -msgstr "" - -#: ../../include/js_strings.php:10 -msgid "Passwords do not match" -msgstr "" - -#: ../../include/js_strings.php:11 ../../mod/photos.php:45 -msgid "everybody" -msgstr "" - -#: ../../include/js_strings.php:12 -msgid "Secret Passphrase" -msgstr "" - -#: ../../include/js_strings.php:13 -msgid "Passphrase hint" -msgstr "" - -#: ../../include/js_strings.php:15 -msgid "timeago.prefixAgo" -msgstr "" - -#: ../../include/js_strings.php:16 -msgid "timeago.suffixAgo" -msgstr "" - -#: ../../include/js_strings.php:17 -msgid "ago" -msgstr "" - -#: ../../include/js_strings.php:18 -msgid "from now" -msgstr "" - -#: ../../include/js_strings.php:19 -msgid "less than a minute" -msgstr "" - -#: ../../include/js_strings.php:20 -msgid "about a minute" -msgstr "" - -#: ../../include/js_strings.php:21 -#, php-format -msgid "%d minutes" -msgstr "" - -#: ../../include/js_strings.php:22 -msgid "about an hour" -msgstr "" - -#: ../../include/js_strings.php:23 -#, php-format -msgid "about %d hours" -msgstr "" - -#: ../../include/js_strings.php:24 -msgid "a day" -msgstr "" - -#: ../../include/js_strings.php:25 -#, php-format -msgid "%d days" -msgstr "" - -#: ../../include/js_strings.php:26 -msgid "about a month" -msgstr "" - -#: ../../include/js_strings.php:27 -#, php-format -msgid "%d months" -msgstr "" - -#: ../../include/js_strings.php:28 -msgid "about a year" -msgstr "" - -#: ../../include/js_strings.php:29 -#, php-format -msgid "%d years" -msgstr "" - -#: ../../include/js_strings.php:31 -msgid "timeago.numbers" -msgstr "" - -#: ../../include/message.php:18 -msgid "No recipient provided." -msgstr "" - -#: ../../include/message.php:23 -msgid "[no subject]" -msgstr "" - -#: ../../include/message.php:42 -msgid "Unable to determine sender." -msgstr "" - -#: ../../include/message.php:143 -msgid "Stored post could not be verified." -msgstr "" - -#: ../../include/network.php:1113 -msgid "view full size" -msgstr "" - -#: ../../include/photo/photo_driver.php:609 ../../include/photos.php:51 -#: ../../mod/photos.php:97 ../../mod/photos.php:764 ../../mod/photos.php:786 -#: ../../mod/profile_photo.php:88 ../../mod/profile_photo.php:235 -#: ../../mod/profile_photo.php:346 -msgid "Profile Photos" -msgstr "" - -#: ../../include/profile_advanced.php:7 ../../include/profile_advanced.php:118 -#: ../../mod/profperm.php:112 -msgid "Profile" -msgstr "" - -#: ../../include/profile_advanced.php:15 ../../mod/settings.php:1062 -msgid "Full Name:" -msgstr "" - -#: ../../include/profile_advanced.php:17 ../../mod/directory.php:175 -#: ../../boot.php:1793 -msgid "Gender:" -msgstr "" - -#: ../../include/profile_advanced.php:22 -msgid "j F, Y" -msgstr "" - -#: ../../include/profile_advanced.php:23 -msgid "j F" -msgstr "" - -#: ../../include/profile_advanced.php:30 -msgid "Birthday:" -msgstr "" - -#: ../../include/profile_advanced.php:34 -msgid "Age:" -msgstr "" - -#: ../../include/profile_advanced.php:37 ../../mod/directory.php:177 -#: ../../boot.php:1794 -msgid "Status:" -msgstr "" - -#: ../../include/profile_advanced.php:43 -#, php-format -msgid "for %1$d %2$s" -msgstr "" - -#: ../../include/profile_advanced.php:46 ../../mod/profiles.php:549 -msgid "Sexual Preference:" -msgstr "" - -#: ../../include/profile_advanced.php:48 ../../mod/directory.php:179 -#: ../../boot.php:1795 -msgid "Homepage:" -msgstr "" - -#: ../../include/profile_advanced.php:50 ../../mod/profiles.php:551 -msgid "Hometown:" -msgstr "" - -#: ../../include/profile_advanced.php:52 -msgid "Tags:" -msgstr "" - -#: ../../include/profile_advanced.php:54 ../../mod/profiles.php:552 -msgid "Political Views:" -msgstr "" - -#: ../../include/profile_advanced.php:56 -msgid "Religion:" -msgstr "" - -#: ../../include/profile_advanced.php:58 ../../mod/directory.php:181 -msgid "About:" -msgstr "" - -#: ../../include/profile_advanced.php:60 -msgid "Hobbies/Interests:" -msgstr "" - -#: ../../include/profile_advanced.php:62 ../../mod/profiles.php:555 -msgid "Likes:" -msgstr "" - -#: ../../include/profile_advanced.php:64 ../../mod/profiles.php:556 -msgid "Dislikes:" -msgstr "" - -#: ../../include/profile_advanced.php:67 -msgid "Contact information and Social Networks:" -msgstr "" - -#: ../../include/profile_advanced.php:69 -msgid "Musical interests:" -msgstr "" - -#: ../../include/profile_advanced.php:71 -msgid "Books, literature:" -msgstr "" - -#: ../../include/profile_advanced.php:73 -msgid "Television:" -msgstr "" - -#: ../../include/profile_advanced.php:75 -msgid "Film/dance/culture/entertainment:" -msgstr "" - -#: ../../include/profile_advanced.php:77 -msgid "Love/Romance:" -msgstr "" - -#: ../../include/profile_advanced.php:79 -msgid "Work/employment:" -msgstr "" - -#: ../../include/profile_advanced.php:81 -msgid "School/education:" -msgstr "" - #: ../../include/text.php:309 msgid "prev" msgstr "" @@ -1456,7 +1045,7 @@ msgid "Select an alternate language" msgstr "" #: ../../include/text.php:1603 ../../include/conversation.php:117 -#: ../../mod/like.php:103 ../../mod/subthread.php:89 ../../mod/tagger.php:45 +#: ../../mod/subthread.php:89 ../../mod/tagger.php:45 ../../mod/like.php:103 msgid "photo" msgstr "" @@ -1466,7 +1055,7 @@ msgid "event" msgstr "" #: ../../include/text.php:1609 ../../include/conversation.php:145 -#: ../../mod/like.php:103 ../../mod/subthread.php:89 ../../mod/tagger.php:53 +#: ../../mod/subthread.php:89 ../../mod/tagger.php:53 ../../mod/like.php:103 msgid "status" msgstr "" @@ -1499,7 +1088,908 @@ msgstr "" msgid "Pages" msgstr "" -#: ../../include/identity.php:14 ../../mod/item.php:1123 +#: ../../include/dba/dba_driver.php:50 +#, php-format +msgid "Cannot locate DNS info for database server '%s'" +msgstr "" + +#: ../../include/activities.php:37 +msgid " and " +msgstr "" + +#: ../../include/activities.php:45 +msgid "public profile" +msgstr "" + +#: ../../include/activities.php:50 +#, php-format +msgid "%1$s changed %2$s to “%3$s”" +msgstr "" + +#: ../../include/activities.php:51 +#, php-format +msgid "Visit %1$s's %2$s" +msgstr "" + +#: ../../include/activities.php:54 +#, php-format +msgid "%1$s has an updated %2$s, changing %3$s." +msgstr "" + +#: ../../include/event.php:11 ../../include/bb2diaspora.php:433 +msgid "l F d, Y \\@ g:i A" +msgstr "" + +#: ../../include/event.php:20 ../../include/bb2diaspora.php:439 +msgid "Starts:" +msgstr "" + +#: ../../include/event.php:30 ../../include/bb2diaspora.php:447 +msgid "Finishes:" +msgstr "" + +#: ../../include/acl_selectors.php:235 +msgid "Visible to everybody" +msgstr "" + +#: ../../include/acl_selectors.php:236 +msgid "show" +msgstr "" + +#: ../../include/acl_selectors.php:237 +msgid "don't show" +msgstr "" + +#: ../../include/js_strings.php:5 +msgid "Delete this item?" +msgstr "" + +#: ../../include/js_strings.php:6 ../../include/ItemObject.php:529 +#: ../../mod/photos.php:1079 ../../mod/photos.php:1166 +msgid "Comment" +msgstr "" + +#: ../../include/js_strings.php:7 ../../include/ItemObject.php:268 +#: ../../include/contact_widgets.php:148 +msgid "show more" +msgstr "" + +#: ../../include/js_strings.php:8 +msgid "show fewer" +msgstr "" + +#: ../../include/js_strings.php:9 +msgid "Password too short" +msgstr "" + +#: ../../include/js_strings.php:10 +msgid "Passwords do not match" +msgstr "" + +#: ../../include/js_strings.php:11 ../../mod/photos.php:45 +msgid "everybody" +msgstr "" + +#: ../../include/js_strings.php:12 +msgid "Secret Passphrase" +msgstr "" + +#: ../../include/js_strings.php:13 +msgid "Passphrase hint" +msgstr "" + +#: ../../include/js_strings.php:15 +msgid "timeago.prefixAgo" +msgstr "" + +#: ../../include/js_strings.php:16 +msgid "timeago.suffixAgo" +msgstr "" + +#: ../../include/js_strings.php:17 +msgid "ago" +msgstr "" + +#: ../../include/js_strings.php:18 +msgid "from now" +msgstr "" + +#: ../../include/js_strings.php:19 +msgid "less than a minute" +msgstr "" + +#: ../../include/js_strings.php:20 +msgid "about a minute" +msgstr "" + +#: ../../include/js_strings.php:21 +#, php-format +msgid "%d minutes" +msgstr "" + +#: ../../include/js_strings.php:22 +msgid "about an hour" +msgstr "" + +#: ../../include/js_strings.php:23 +#, php-format +msgid "about %d hours" +msgstr "" + +#: ../../include/js_strings.php:24 +msgid "a day" +msgstr "" + +#: ../../include/js_strings.php:25 +#, php-format +msgid "%d days" +msgstr "" + +#: ../../include/js_strings.php:26 +msgid "about a month" +msgstr "" + +#: ../../include/js_strings.php:27 +#, php-format +msgid "%d months" +msgstr "" + +#: ../../include/js_strings.php:28 +msgid "about a year" +msgstr "" + +#: ../../include/js_strings.php:29 +#, php-format +msgid "%d years" +msgstr "" + +#: ../../include/js_strings.php:30 ../../include/features.php:28 +msgid " " +msgstr "" + +#: ../../include/js_strings.php:31 +msgid "timeago.numbers" +msgstr "" + +#: ../../include/permissions.php:13 +msgid "Can view my \"public\" stream and posts" +msgstr "" + +#: ../../include/permissions.php:14 +msgid "Can view my \"public\" channel profile" +msgstr "" + +#: ../../include/permissions.php:15 +msgid "Can view my \"public\" photo albums" +msgstr "" + +#: ../../include/permissions.php:16 +msgid "Can view my \"public\" address book" +msgstr "" + +#: ../../include/permissions.php:17 +msgid "Can view my \"public\" file storage" +msgstr "" + +#: ../../include/permissions.php:18 +msgid "Can view my \"public\" pages" +msgstr "" + +#: ../../include/permissions.php:21 +msgid "Can send me their channel stream and posts" +msgstr "" + +#: ../../include/permissions.php:22 +msgid "Can post on my channel page (\"wall\")" +msgstr "" + +#: ../../include/permissions.php:23 +msgid "Can comment on my posts" +msgstr "" + +#: ../../include/permissions.php:24 +msgid "Can send me private mail messages" +msgstr "" + +#: ../../include/permissions.php:25 +msgid "Can post photos to my photo albums" +msgstr "" + +#: ../../include/permissions.php:26 +msgid "Can forward to all my channel contacts via post @mentions" +msgstr "" + +#: ../../include/permissions.php:26 +msgid "Advanced - useful for creating group forum channels" +msgstr "" + +#: ../../include/permissions.php:27 +msgid "Can chat with me (when available)" +msgstr "" + +#: ../../include/permissions.php:27 +msgid "Requires compatible chat plugin" +msgstr "" + +#: ../../include/permissions.php:28 +msgid "Can write to my \"public\" file storage" +msgstr "" + +#: ../../include/permissions.php:29 +msgid "Can edit my \"public\" pages" +msgstr "" + +#: ../../include/permissions.php:31 +msgid "Can source my \"public\" posts in derived channels" +msgstr "" + +#: ../../include/permissions.php:31 +msgid "Somewhat advanced - very useful in open communities" +msgstr "" + +#: ../../include/permissions.php:32 +msgid "Can administer my channel resources" +msgstr "" + +#: ../../include/permissions.php:32 +msgid "Extremely advanced. Leave this alone unless you know what you are doing" +msgstr "" + +#: ../../include/items.php:3531 ../../mod/viewsrc.php:18 +#: ../../mod/display.php:32 ../../mod/admin.php:150 ../../mod/admin.php:727 +#: ../../mod/admin.php:930 ../../mod/home.php:64 +msgid "Item not found." +msgstr "" + +#: ../../include/items.php:3714 +msgid "Archives" +msgstr "" + +#: ../../include/items.php:3880 ../../mod/group.php:44 ../../mod/group.php:146 +msgid "Collection not found." +msgstr "" + +#: ../../include/items.php:3896 ../../mod/network.php:469 +msgid "Group is empty" +msgstr "" + +#: ../../include/items.php:3912 +msgid "Connection not found." +msgstr "" + +#: ../../include/oembed.php:149 +msgid "Embedded content" +msgstr "" + +#: ../../include/oembed.php:158 +msgid "Embedding disabled" +msgstr "" + +#: ../../include/follow.php:21 +msgid "Channel is blocked on this site." +msgstr "" + +#: ../../include/follow.php:26 +msgid "Channel location missing." +msgstr "" + +#: ../../include/follow.php:43 +msgid "Channel discovery failed. Website may be down or misconfigured." +msgstr "" + +#: ../../include/follow.php:51 +msgid "Response from remote channel was not understood." +msgstr "" + +#: ../../include/follow.php:58 +msgid "Response from remote channel was incomplete." +msgstr "" + +#: ../../include/follow.php:129 +msgid "local account not found." +msgstr "" + +#: ../../include/follow.php:138 +msgid "Cannot connect to yourself." +msgstr "" + +#: ../../include/network.php:1113 +msgid "view full size" +msgstr "" + +#: ../../include/ItemObject.php:88 ../../mod/photos.php:952 +msgid "Private Message" +msgstr "" + +#: ../../include/ItemObject.php:95 ../../include/page_widgets.php:8 +#: ../../mod/blocks.php:93 ../../mod/editwebpage.php:119 +#: ../../mod/webpages.php:101 ../../mod/editpost.php:97 +#: ../../mod/editlayout.php:100 ../../mod/layouts.php:102 +#: ../../mod/menu.php:55 ../../mod/editblock.php:114 +#: ../../mod/settings.php:713 +msgid "Edit" +msgstr "" + +#: ../../include/ItemObject.php:107 ../../include/conversation.php:628 +#: ../../mod/admin.php:690 ../../mod/connections.php:374 +#: ../../mod/filestorage.php:82 ../../mod/group.php:182 +#: ../../mod/photos.php:1130 ../../mod/settings.php:714 +msgid "Delete" +msgstr "" + +#: ../../include/ItemObject.php:113 ../../include/conversation.php:627 +msgid "Select" +msgstr "" + +#: ../../include/ItemObject.php:117 +msgid "save to folder" +msgstr "" + +#: ../../include/ItemObject.php:145 +msgid "add star" +msgstr "" + +#: ../../include/ItemObject.php:146 +msgid "remove star" +msgstr "" + +#: ../../include/ItemObject.php:147 +msgid "toggle star status" +msgstr "" + +#: ../../include/ItemObject.php:151 +msgid "starred" +msgstr "" + +#: ../../include/ItemObject.php:160 ../../include/conversation.php:638 +msgid "Message is verified" +msgstr "" + +#: ../../include/ItemObject.php:168 +msgid "add tag" +msgstr "" + +#: ../../include/ItemObject.php:174 ../../mod/photos.php:1058 +msgid "I like this (toggle)" +msgstr "" + +#: ../../include/ItemObject.php:175 ../../mod/photos.php:1059 +msgid "I don't like this (toggle)" +msgstr "" + +#: ../../include/ItemObject.php:177 +msgid "Share this" +msgstr "" + +#: ../../include/ItemObject.php:177 +msgid "share" +msgstr "" + +#: ../../include/ItemObject.php:201 ../../include/ItemObject.php:202 +#, php-format +msgid "View %s's profile - %s" +msgstr "" + +#: ../../include/ItemObject.php:203 +msgid "to" +msgstr "" + +#: ../../include/ItemObject.php:204 +msgid "via" +msgstr "" + +#: ../../include/ItemObject.php:205 +msgid "Wall-to-Wall" +msgstr "" + +#: ../../include/ItemObject.php:206 +msgid "via Wall-To-Wall:" +msgstr "" + +#: ../../include/ItemObject.php:216 ../../include/conversation.php:682 +#, php-format +msgid " from %s" +msgstr "" + +#: ../../include/ItemObject.php:219 ../../include/conversation.php:685 +#, php-format +msgid "last edited: %s" +msgstr "" + +#: ../../include/ItemObject.php:246 ../../include/conversation.php:702 +#: ../../include/conversation.php:1112 ../../mod/message.php:332 +#: ../../mod/message.php:516 ../../mod/editwebpage.php:128 +#: ../../mod/editpost.php:106 ../../mod/photos.php:1061 +#: ../../mod/editlayout.php:109 ../../mod/editblock.php:123 +msgid "Please wait" +msgstr "" + +#: ../../include/ItemObject.php:267 +#, php-format +msgid "%d comment" +msgid_plural "%d comments" +msgstr[0] "" +msgstr[1] "" + +#: ../../include/ItemObject.php:527 ../../mod/photos.php:1077 +#: ../../mod/photos.php:1164 +msgid "This is you" +msgstr "" + +#: ../../include/ItemObject.php:531 +msgid "Bold" +msgstr "" + +#: ../../include/ItemObject.php:532 +msgid "Italic" +msgstr "" + +#: ../../include/ItemObject.php:533 +msgid "Underline" +msgstr "" + +#: ../../include/ItemObject.php:534 +msgid "Quote" +msgstr "" + +#: ../../include/ItemObject.php:535 +msgid "Code" +msgstr "" + +#: ../../include/ItemObject.php:536 +msgid "Image" +msgstr "" + +#: ../../include/ItemObject.php:537 +msgid "Link" +msgstr "" + +#: ../../include/ItemObject.php:538 +msgid "Video" +msgstr "" + +#: ../../include/ItemObject.php:539 ../../include/conversation.php:1075 +#: ../../mod/editwebpage.php:150 ../../mod/webpages.php:105 +#: ../../mod/editpost.php:126 ../../mod/photos.php:1081 +#: ../../mod/editlayout.php:129 ../../mod/editblock.php:144 +msgid "Preview" +msgstr "" + +#: ../../include/ItemObject.php:542 ../../include/conversation.php:1139 +#: ../../mod/message.php:338 ../../mod/message.php:521 +#: ../../mod/editpost.php:134 +msgid "Encrypt text" +msgstr "" + +#: ../../include/notify.php:23 +msgid "created a new post" +msgstr "" + +#: ../../include/notify.php:24 +#, php-format +msgid "commented on %s's post" +msgstr "" + +#: ../../include/contact_widgets.php:14 +#, php-format +msgid "You have %1$.0f of %2$.0f allowed connections." +msgstr "" + +#: ../../include/contact_widgets.php:20 +msgid "Add New Connection" +msgstr "" + +#: ../../include/contact_widgets.php:21 +msgid "Enter the channel address" +msgstr "" + +#: ../../include/contact_widgets.php:22 +msgid "Example: bob@example.com, http://example.com/barbara" +msgstr "" + +#: ../../include/contact_widgets.php:38 +#, php-format +msgid "%d invitation available" +msgid_plural "%d invitations available" +msgstr[0] "" +msgstr[1] "" + +#: ../../include/contact_widgets.php:44 +msgid "Find Channels" +msgstr "" + +#: ../../include/contact_widgets.php:45 +msgid "Enter name or interest" +msgstr "" + +#: ../../include/contact_widgets.php:46 +msgid "Connect/Follow" +msgstr "" + +#: ../../include/contact_widgets.php:47 +msgid "Examples: Robert Morgenstein, Fishing" +msgstr "" + +#: ../../include/contact_widgets.php:48 ../../mod/connections.php:697 +#: ../../mod/directory.php:221 ../../mod/directory.php:226 +msgid "Find" +msgstr "" + +#: ../../include/contact_widgets.php:49 ../../mod/suggest.php:64 +msgid "Channel Suggestions" +msgstr "" + +#: ../../include/contact_widgets.php:51 +msgid "Random Profile" +msgstr "" + +#: ../../include/contact_widgets.php:52 +msgid "Invite Friends" +msgstr "" + +#: ../../include/contact_widgets.php:76 ../../include/features.php:60 +msgid "Saved Folders" +msgstr "" + +#: ../../include/contact_widgets.php:79 ../../include/contact_widgets.php:113 +msgid "Everything" +msgstr "" + +#: ../../include/contact_widgets.php:143 +#, php-format +msgid "%d connection in common" +msgid_plural "%d connections in common" +msgstr[0] "" +msgstr[1] "" + +#: ../../include/page_widgets.php:6 +msgid "New Page" +msgstr "" + +#: ../../include/api.php:972 +msgid "Public Timeline" +msgstr "" + +#: ../../include/conversation.php:123 +msgid "channel" +msgstr "" + +#: ../../include/conversation.php:161 ../../mod/like.php:134 +#, php-format +msgid "%1$s likes %2$s's %3$s" +msgstr "" + +#: ../../include/conversation.php:164 ../../mod/like.php:136 +#, php-format +msgid "%1$s doesn't like %2$s's %3$s" +msgstr "" + +#: ../../include/conversation.php:201 +#, php-format +msgid "%1$s is now connected with %2$s" +msgstr "" + +#: ../../include/conversation.php:232 +#, php-format +msgid "%1$s poked %2$s" +msgstr "" + +#: ../../include/conversation.php:254 ../../mod/mood.php:63 +#, php-format +msgid "%1$s is currently %2$s" +msgstr "" + +#: ../../include/conversation.php:658 +#, php-format +msgid "View %s's profile @ %s" +msgstr "" + +#: ../../include/conversation.php:672 +msgid "Categories:" +msgstr "" + +#: ../../include/conversation.php:673 +msgid "Filed under:" +msgstr "" + +#: ../../include/conversation.php:700 +msgid "View in context" +msgstr "" + +#: ../../include/conversation.php:826 +msgid "remove" +msgstr "" + +#: ../../include/conversation.php:830 +msgid "Loading..." +msgstr "" + +#: ../../include/conversation.php:831 +msgid "Delete Selected Items" +msgstr "" + +#: ../../include/conversation.php:922 +msgid "View Source" +msgstr "" + +#: ../../include/conversation.php:923 +msgid "Follow Thread" +msgstr "" + +#: ../../include/conversation.php:924 ../../include/Contact.php:525 +msgid "View Status" +msgstr "" + +#: ../../include/conversation.php:925 ../../include/nav.php:76 +#: ../../include/Contact.php:526 ../../mod/connections.php:327 +#: ../../mod/connections.php:441 +msgid "View Profile" +msgstr "" + +#: ../../include/conversation.php:926 ../../include/Contact.php:527 +msgid "View Photos" +msgstr "" + +#: ../../include/conversation.php:927 +msgid "Matrix Activity" +msgstr "" + +#: ../../include/conversation.php:928 ../../include/Contact.php:529 +msgid "Edit Contact" +msgstr "" + +#: ../../include/conversation.php:929 ../../include/Contact.php:530 +msgid "Send PM" +msgstr "" + +#: ../../include/conversation.php:930 ../../include/Contact.php:524 +msgid "Poke" +msgstr "" + +#: ../../include/conversation.php:992 +#, php-format +msgid "%s likes this." +msgstr "" + +#: ../../include/conversation.php:992 +#, php-format +msgid "%s doesn't like this." +msgstr "" + +#: ../../include/conversation.php:996 +#, php-format +msgid "%2$d people like this." +msgid_plural "%2$d people like this." +msgstr[0] "" +msgstr[1] "" + +#: ../../include/conversation.php:998 +#, php-format +msgid "%2$d people don't like this." +msgid_plural "%2$d people don't like this." +msgstr[0] "" +msgstr[1] "" + +#: ../../include/conversation.php:1004 +msgid "and" +msgstr "" + +#: ../../include/conversation.php:1007 +#, php-format +msgid ", and %d other people" +msgid_plural ", and %d other people" +msgstr[0] "" +msgstr[1] "" + +#: ../../include/conversation.php:1008 +#, php-format +msgid "%s like this." +msgstr "" + +#: ../../include/conversation.php:1008 +#, php-format +msgid "%s don't like this." +msgstr "" + +#: ../../include/conversation.php:1058 +msgid "Visible to everybody" +msgstr "" + +#: ../../include/conversation.php:1059 ../../mod/message.php:281 +#: ../../mod/message.php:417 +msgid "Please enter a link URL:" +msgstr "" + +#: ../../include/conversation.php:1060 +msgid "Please enter a video link/URL:" +msgstr "" + +#: ../../include/conversation.php:1061 +msgid "Please enter an audio link/URL:" +msgstr "" + +#: ../../include/conversation.php:1062 +msgid "Tag term:" +msgstr "" + +#: ../../include/conversation.php:1063 ../../mod/filer.php:35 +msgid "Save to Folder:" +msgstr "" + +#: ../../include/conversation.php:1064 +msgid "Where are you right now?" +msgstr "" + +#: ../../include/conversation.php:1065 ../../mod/message.php:282 +#: ../../mod/message.php:418 ../../mod/editpost.php:52 +msgid "Expires YYYY-MM-DD HH:MM" +msgstr "" + +#: ../../include/conversation.php:1089 ../../mod/photos.php:1060 +msgid "Share" +msgstr "" + +#: ../../include/conversation.php:1091 +msgid "Page link title" +msgstr "" + +#: ../../include/conversation.php:1093 ../../mod/message.php:329 +#: ../../mod/message.php:512 ../../mod/editwebpage.php:120 +#: ../../mod/editpost.php:98 ../../mod/editlayout.php:101 +#: ../../mod/editblock.php:115 +msgid "Upload photo" +msgstr "" + +#: ../../include/conversation.php:1094 +msgid "upload photo" +msgstr "" + +#: ../../include/conversation.php:1095 ../../mod/message.php:330 +#: ../../mod/message.php:513 ../../mod/editwebpage.php:121 +#: ../../mod/editpost.php:99 ../../mod/editlayout.php:102 +#: ../../mod/editblock.php:116 +msgid "Attach file" +msgstr "" + +#: ../../include/conversation.php:1096 +msgid "attach file" +msgstr "" + +#: ../../include/conversation.php:1097 ../../mod/message.php:331 +#: ../../mod/message.php:514 ../../mod/editwebpage.php:122 +#: ../../mod/editpost.php:100 ../../mod/editlayout.php:103 +#: ../../mod/editblock.php:117 +msgid "Insert web link" +msgstr "" + +#: ../../include/conversation.php:1098 +msgid "web link" +msgstr "" + +#: ../../include/conversation.php:1099 +msgid "Insert video link" +msgstr "" + +#: ../../include/conversation.php:1100 +msgid "video link" +msgstr "" + +#: ../../include/conversation.php:1101 +msgid "Insert audio link" +msgstr "" + +#: ../../include/conversation.php:1102 +msgid "audio link" +msgstr "" + +#: ../../include/conversation.php:1103 ../../mod/editwebpage.php:126 +#: ../../mod/editpost.php:104 ../../mod/editlayout.php:107 +#: ../../mod/editblock.php:121 +msgid "Set your location" +msgstr "" + +#: ../../include/conversation.php:1104 +msgid "set location" +msgstr "" + +#: ../../include/conversation.php:1105 ../../mod/editwebpage.php:127 +#: ../../mod/editpost.php:105 ../../mod/editlayout.php:108 +#: ../../mod/editblock.php:122 +msgid "Clear browser location" +msgstr "" + +#: ../../include/conversation.php:1106 +msgid "clear location" +msgstr "" + +#: ../../include/conversation.php:1108 ../../mod/editwebpage.php:142 +#: ../../mod/editpost.php:118 ../../mod/editlayout.php:121 +#: ../../mod/editblock.php:136 +msgid "Set title" +msgstr "" + +#: ../../include/conversation.php:1111 ../../mod/editwebpage.php:144 +#: ../../mod/editpost.php:120 ../../mod/editlayout.php:123 +#: ../../mod/editblock.php:138 +msgid "Categories (comma-separated list)" +msgstr "" + +#: ../../include/conversation.php:1113 ../../mod/editwebpage.php:129 +#: ../../mod/editpost.php:107 ../../mod/editlayout.php:110 +#: ../../mod/editblock.php:124 +msgid "Permission settings" +msgstr "" + +#: ../../include/conversation.php:1114 +msgid "permissions" +msgstr "" + +#: ../../include/conversation.php:1122 ../../mod/editwebpage.php:137 +#: ../../mod/editpost.php:115 ../../mod/editlayout.php:118 +#: ../../mod/editblock.php:133 +msgid "Public post" +msgstr "" + +#: ../../include/conversation.php:1124 ../../mod/editwebpage.php:145 +#: ../../mod/editpost.php:121 ../../mod/editlayout.php:124 +#: ../../mod/editblock.php:139 +msgid "Example: bob@example.com, mary@example.com" +msgstr "" + +#: ../../include/conversation.php:1137 ../../mod/message.php:336 +#: ../../mod/message.php:519 ../../mod/editwebpage.php:155 +#: ../../mod/editpost.php:132 ../../mod/editlayout.php:134 +#: ../../mod/editblock.php:149 +msgid "Set expiration date" +msgstr "" + +#: ../../include/photo/photo_driver.php:609 ../../include/photos.php:51 +#: ../../mod/profile_photo.php:88 ../../mod/profile_photo.php:235 +#: ../../mod/profile_photo.php:346 ../../mod/photos.php:97 +#: ../../mod/photos.php:764 ../../mod/photos.php:786 +msgid "Profile Photos" +msgstr "" + +#: ../../include/group.php:25 +msgid "" +"A deleted group with this name was revived. Existing item permissions " +"may apply to this group and any future members. If this is " +"not what you intended, please create another group with a different name." +msgstr "" + +#: ../../include/group.php:223 +msgid "Default privacy group for new contacts" +msgstr "" + +#: ../../include/group.php:242 ../../mod/admin.php:695 +msgid "All Channels" +msgstr "" + +#: ../../include/group.php:264 +msgid "edit" +msgstr "" + +#: ../../include/group.php:285 +msgid "Collections" +msgstr "" + +#: ../../include/group.php:286 +msgid "Edit collection" +msgstr "" + +#: ../../include/group.php:287 +msgid "Create a new collection" +msgstr "" + +#: ../../include/group.php:288 +msgid "Channels not in any collection" +msgstr "" + +#: ../../include/group.php:290 ../../mod/network.php:174 +msgid "add" +msgstr "" + +#: ../../include/identity.php:14 ../../mod/item.php:1148 msgid "Unable to obtain identity information from database" msgstr "" @@ -1533,80 +2023,10 @@ msgid "Default Profile" msgstr "" #: ../../include/identity.php:245 ../../include/profile_selectors.php:42 -#: ../../mod/network.php:387 ../../mod/connections.php:407 +#: ../../mod/connections.php:407 ../../mod/network.php:387 msgid "Friends" msgstr "" -#: ../../include/bbcode.php:94 ../../include/bbcode.php:494 -#: ../../include/bbcode.php:497 -msgid "Image/photo" -msgstr "" - -#: ../../include/bbcode.php:126 ../../include/bbcode.php:502 -msgid "Encrypted content" -msgstr "" - -#: ../../include/bbcode.php:173 -#, php-format -msgid "%1$s wrote the following %2$s %3$s" -msgstr "" - -#: ../../include/bbcode.php:175 -msgid "post" -msgstr "" - -#: ../../include/bbcode.php:454 ../../include/bbcode.php:474 -msgid "$1 wrote:" -msgstr "" - -#: ../../include/oembed.php:149 -msgid "Embedded content" -msgstr "" - -#: ../../include/oembed.php:158 -msgid "Embedding disabled" -msgstr "" - -#: ../../include/notify.php:23 -msgid "created a new post" -msgstr "" - -#: ../../include/notify.php:24 -#, php-format -msgid "commented on %s's post" -msgstr "" - -#: ../../include/photos.php:15 ../../include/attach.php:102 -#: ../../include/attach.php:133 ../../include/attach.php:189 -#: ../../include/attach.php:204 ../../include/attach.php:237 -#: ../../include/attach.php:251 ../../include/attach.php:272 -#: ../../include/attach.php:464 ../../include/attach.php:539 -#: ../../include/items.php:3582 ../../mod/common.php:43 -#: ../../mod/events.php:134 ../../mod/invite.php:13 ../../mod/invite.php:102 -#: ../../mod/allfriends.php:10 ../../mod/webpages.php:40 ../../mod/api.php:26 -#: ../../mod/api.php:31 ../../mod/lastpost.php:93 ../../mod/page.php:30 -#: ../../mod/page.php:80 ../../mod/setup.php:200 ../../mod/settings.php:628 -#: ../../mod/viewconnections.php:33 ../../mod/viewconnections.php:38 -#: ../../mod/delegate.php:6 ../../mod/sources.php:48 ../../mod/mitem.php:92 -#: ../../mod/group.php:15 ../../mod/photos.php:74 ../../mod/photos.php:654 -#: ../../mod/viewsrc.php:12 ../../mod/menu.php:40 ../../mod/message.php:208 -#: ../../mod/layouts.php:27 ../../mod/layouts.php:42 ../../mod/network.php:7 -#: ../../mod/intro.php:50 ../../mod/connections.php:197 -#: ../../mod/profiles.php:163 ../../mod/profiles.php:476 -#: ../../mod/new_channel.php:66 ../../mod/new_channel.php:97 -#: ../../mod/filestorage.php:26 ../../mod/manage.php:6 -#: ../../mod/crepair.php:115 ../../mod/editlayout.php:48 -#: ../../mod/nogroup.php:25 ../../mod/profile_photo.php:197 -#: ../../mod/profile_photo.php:210 ../../mod/editwebpage.php:42 -#: ../../mod/editwebpage.php:64 ../../mod/notifications.php:66 -#: ../../mod/blocks.php:29 ../../mod/blocks.php:44 ../../mod/editpost.php:13 -#: ../../mod/poke.php:128 ../../mod/channel.php:123 ../../mod/fsuggest.php:78 -#: ../../mod/editblock.php:48 ../../mod/item.php:173 ../../mod/item.php:181 -#: ../../mod/suggest.php:32 ../../mod/register.php:68 ../../mod/regmod.php:18 -#: ../../mod/mood.php:114 ../../index.php:178 ../../index.php:340 -msgid "Permission denied." -msgstr "" - #: ../../include/photos.php:88 #, php-format msgid "Image exceeds website size limit of %lu bytes" @@ -1624,15 +2044,382 @@ msgstr "" msgid "Photo storage failed." msgstr "" -#: ../../include/photos.php:288 ../../boot.php:2242 -msgid "Photo Albums" -msgstr "" - #: ../../include/photos.php:292 ../../mod/photos.php:802 #: ../../mod/photos.php:1276 msgid "Upload New Photos" msgstr "" +#: ../../include/security.php:49 +msgid "Welcome " +msgstr "" + +#: ../../include/security.php:50 +msgid "Please upload a profile photo." +msgstr "" + +#: ../../include/security.php:53 +msgid "Welcome back " +msgstr "" + +#: ../../include/security.php:360 +msgid "" +"The form security token was not correct. This probably happened because the " +"form has been opened for too long (>3 hours) before submitting it." +msgstr "" + +#: ../../include/plugin.php:440 ../../include/plugin.php:442 +msgid "Click here to upgrade." +msgstr "" + +#: ../../include/plugin.php:448 +msgid "This action exceeds the limits set by your subscription plan." +msgstr "" + +#: ../../include/plugin.php:453 +msgid "This action is not available under your subscription plan." +msgstr "" + +#: ../../include/nav.php:72 ../../include/nav.php:87 +msgid "End this session" +msgstr "" + +#: ../../include/nav.php:75 ../../include/nav.php:121 +msgid "Home" +msgstr "" + +#: ../../include/nav.php:75 +msgid "Your posts and conversations" +msgstr "" + +#: ../../include/nav.php:76 +msgid "Your profile page" +msgstr "" + +#: ../../include/nav.php:78 +msgid "Edit Profiles" +msgstr "" + +#: ../../include/nav.php:78 +msgid "Manage/Edit Profiles" +msgstr "" + +#: ../../include/nav.php:79 +msgid "Your photos" +msgstr "" + +#: ../../include/nav.php:85 +msgid "Sign in" +msgstr "" + +#: ../../include/nav.php:102 +#, php-format +msgid "%s - click to logout" +msgstr "" + +#: ../../include/nav.php:107 +msgid "Click to authenticate to your home hub" +msgstr "" + +#: ../../include/nav.php:121 +msgid "Home Page" +msgstr "" + +#: ../../include/nav.php:125 +msgid "Create an account" +msgstr "" + +#: ../../include/nav.php:130 ../../mod/help.php:45 ../../mod/help.php:49 +msgid "Help" +msgstr "" + +#: ../../include/nav.php:130 +msgid "Help and documentation" +msgstr "" + +#: ../../include/nav.php:133 +msgid "Apps" +msgstr "" + +#: ../../include/nav.php:133 +msgid "Addon applications, utilities, games" +msgstr "" + +#: ../../include/nav.php:135 +msgid "Search site content" +msgstr "" + +#: ../../include/nav.php:138 ../../mod/directory.php:225 +msgid "Directory" +msgstr "" + +#: ../../include/nav.php:138 +msgid "Channel Locator" +msgstr "" + +#: ../../include/nav.php:149 +msgid "Matrix" +msgstr "" + +#: ../../include/nav.php:149 +msgid "Your matrix" +msgstr "" + +#: ../../include/nav.php:150 +msgid "See all matrix notifications" +msgstr "" + +#: ../../include/nav.php:151 +msgid "Mark all matrix notifications seen" +msgstr "" + +#: ../../include/nav.php:153 +msgid "Channel Home" +msgstr "" + +#: ../../include/nav.php:153 +msgid "Channel home" +msgstr "" + +#: ../../include/nav.php:154 +msgid "See all channel notifications" +msgstr "" + +#: ../../include/nav.php:155 +msgid "Mark all channel notifications seen" +msgstr "" + +#: ../../include/nav.php:158 +msgid "Intros" +msgstr "" + +#: ../../include/nav.php:158 ../../mod/connections.php:585 +msgid "New Connections" +msgstr "" + +#: ../../include/nav.php:159 +msgid "See all channel introductions" +msgstr "" + +#: ../../include/nav.php:162 +msgid "Notices" +msgstr "" + +#: ../../include/nav.php:162 ../../mod/notifications.php:218 +msgid "Notifications" +msgstr "" + +#: ../../include/nav.php:163 +msgid "See all notifications" +msgstr "" + +#: ../../include/nav.php:164 +msgid "Mark all system notifications seen" +msgstr "" + +#: ../../include/nav.php:166 +msgid "Mail" +msgstr "" + +#: ../../include/nav.php:166 +msgid "Private mail" +msgstr "" + +#: ../../include/nav.php:167 +msgid "See all private messages" +msgstr "" + +#: ../../include/nav.php:168 +msgid "Mark all private messages seen" +msgstr "" + +#: ../../include/nav.php:169 +msgid "Inbox" +msgstr "" + +#: ../../include/nav.php:170 +msgid "Outbox" +msgstr "" + +#: ../../include/nav.php:171 ../../mod/message.php:24 +msgid "New Message" +msgstr "" + +#: ../../include/nav.php:174 +msgid "Event Calendar" +msgstr "" + +#: ../../include/nav.php:175 +msgid "See all events" +msgstr "" + +#: ../../include/nav.php:176 +msgid "Mark all events seen" +msgstr "" + +#: ../../include/nav.php:178 +msgid "Channel Select" +msgstr "" + +#: ../../include/nav.php:178 +msgid "Manage Your Channels" +msgstr "" + +#: ../../include/nav.php:180 ../../mod/admin.php:782 ../../mod/admin.php:987 +#: ../../mod/settings.php:131 +msgid "Settings" +msgstr "" + +#: ../../include/nav.php:180 +msgid "Account/Channel Settings" +msgstr "" + +#: ../../include/nav.php:182 ../../mod/connections.php:691 +msgid "Connections" +msgstr "" + +#: ../../include/nav.php:182 +msgid "Manage/Edit Friends and Connections" +msgstr "" + +#: ../../include/nav.php:189 ../../mod/admin.php:111 +msgid "Admin" +msgstr "" + +#: ../../include/nav.php:189 +msgid "Site Setup and Configuration" +msgstr "" + +#: ../../include/nav.php:212 +msgid "Nothing new here" +msgstr "" + +#: ../../include/nav.php:217 +msgid "Please wait..." +msgstr "" + +#: ../../include/profile_advanced.php:7 ../../include/profile_advanced.php:118 +#: ../../mod/profperm.php:112 +msgid "Profile" +msgstr "" + +#: ../../include/profile_advanced.php:15 ../../mod/settings.php:1062 +msgid "Full Name:" +msgstr "" + +#: ../../include/profile_advanced.php:22 +msgid "j F, Y" +msgstr "" + +#: ../../include/profile_advanced.php:23 +msgid "j F" +msgstr "" + +#: ../../include/profile_advanced.php:30 +msgid "Birthday:" +msgstr "" + +#: ../../include/profile_advanced.php:34 +msgid "Age:" +msgstr "" + +#: ../../include/profile_advanced.php:43 +#, php-format +msgid "for %1$d %2$s" +msgstr "" + +#: ../../include/profile_advanced.php:46 ../../mod/profiles.php:549 +msgid "Sexual Preference:" +msgstr "" + +#: ../../include/profile_advanced.php:50 ../../mod/profiles.php:551 +msgid "Hometown:" +msgstr "" + +#: ../../include/profile_advanced.php:52 +msgid "Tags:" +msgstr "" + +#: ../../include/profile_advanced.php:54 ../../mod/profiles.php:552 +msgid "Political Views:" +msgstr "" + +#: ../../include/profile_advanced.php:56 +msgid "Religion:" +msgstr "" + +#: ../../include/profile_advanced.php:58 ../../mod/directory.php:181 +msgid "About:" +msgstr "" + +#: ../../include/profile_advanced.php:60 +msgid "Hobbies/Interests:" +msgstr "" + +#: ../../include/profile_advanced.php:62 ../../mod/profiles.php:555 +msgid "Likes:" +msgstr "" + +#: ../../include/profile_advanced.php:64 ../../mod/profiles.php:556 +msgid "Dislikes:" +msgstr "" + +#: ../../include/profile_advanced.php:67 +msgid "Contact information and Social Networks:" +msgstr "" + +#: ../../include/profile_advanced.php:69 +msgid "Musical interests:" +msgstr "" + +#: ../../include/profile_advanced.php:71 +msgid "Books, literature:" +msgstr "" + +#: ../../include/profile_advanced.php:73 +msgid "Television:" +msgstr "" + +#: ../../include/profile_advanced.php:75 +msgid "Film/dance/culture/entertainment:" +msgstr "" + +#: ../../include/profile_advanced.php:77 +msgid "Love/Romance:" +msgstr "" + +#: ../../include/profile_advanced.php:79 +msgid "Work/employment:" +msgstr "" + +#: ../../include/profile_advanced.php:81 +msgid "School/education:" +msgstr "" + +#: ../../include/zot.php:425 +msgid "Invalid data packet" +msgstr "" + +#: ../../include/zot.php:435 +msgid "Unable to verify channel signature" +msgstr "" + +#: ../../include/zot.php:581 +#, php-format +msgid "Unable to verify site signature for %s" +msgstr "" + +#: ../../include/Contact.php:103 +msgid "New window" +msgstr "" + +#: ../../include/Contact.php:104 +msgid "Open the selected location in a different window or browser tab" +msgstr "" + +#: ../../include/Contact.php:528 +msgid "Network Posts" +msgstr "" + #: ../../include/profile_selectors.php:6 msgid "Male" msgstr "" @@ -1861,6 +2648,210 @@ msgstr "" msgid "Ask me" msgstr "" +#: ../../include/features.php:21 +msgid "General Features" +msgstr "" + +#: ../../include/features.php:23 +msgid "Content Expiration" +msgstr "" + +#: ../../include/features.php:23 +msgid "Remove posts/comments and/or private messages at a future time" +msgstr "" + +#: ../../include/features.php:24 +msgid "Multiple Profiles" +msgstr "" + +#: ../../include/features.php:24 +msgid "Ability to create multiple profiles" +msgstr "" + +#: ../../include/features.php:25 +msgid "Web Pages" +msgstr "" + +#: ../../include/features.php:25 +msgid "Provide managed web pages on your channel" +msgstr "" + +#: ../../include/features.php:26 +msgid "Enhanced Photo Albums" +msgstr "" + +#: ../../include/features.php:26 +msgid "Enable photo album with enhanced features" +msgstr "" + +#: ../../include/features.php:28 +msgid "Extended Identity Sharing" +msgstr "" + +#: ../../include/features.php:29 +msgid "Expert Mode" +msgstr "" + +#: ../../include/features.php:29 +msgid "Enable Expert Mode to provide advanced configuration options" +msgstr "" + +#: ../../include/features.php:30 +msgid "Premium Channel" +msgstr "" + +#: ../../include/features.php:30 +msgid "" +"Allows you to set restrictions and terms on those that connect with your " +"channel" +msgstr "" + +#: ../../include/features.php:35 +msgid "Post Composition Features" +msgstr "" + +#: ../../include/features.php:36 +msgid "Richtext Editor" +msgstr "" + +#: ../../include/features.php:36 +msgid "Enable richtext editor" +msgstr "" + +#: ../../include/features.php:37 +msgid "Post Preview" +msgstr "" + +#: ../../include/features.php:37 +msgid "Allow previewing posts and comments before publishing them" +msgstr "" + +#: ../../include/features.php:38 ../../mod/sources.php:67 +#: ../../mod/settings.php:120 +msgid "Channel Sources" +msgstr "" + +#: ../../include/features.php:38 +msgid "Automatically import channel content from other channels or feeds" +msgstr "" + +#: ../../include/features.php:39 +msgid "Even More Encryption" +msgstr "" + +#: ../../include/features.php:39 +msgid "Allow encryption of content end-to-end with a shared secret key" +msgstr "" + +#: ../../include/features.php:44 +msgid "Network and Stream Filtering" +msgstr "" + +#: ../../include/features.php:45 +msgid "Search by Date" +msgstr "" + +#: ../../include/features.php:45 +msgid "Ability to select posts by date ranges" +msgstr "" + +#: ../../include/features.php:46 +msgid "Collections Filter" +msgstr "" + +#: ../../include/features.php:46 +msgid "Enable widget to display Network posts only from selected collections" +msgstr "" + +#: ../../include/features.php:47 ../../mod/search.php:17 +#: ../../mod/network.php:173 +msgid "Saved Searches" +msgstr "" + +#: ../../include/features.php:47 +msgid "Save search terms for re-use" +msgstr "" + +#: ../../include/features.php:48 +msgid "Network Personal Tab" +msgstr "" + +#: ../../include/features.php:48 +msgid "Enable tab to display only Network posts that you've interacted on" +msgstr "" + +#: ../../include/features.php:49 +msgid "Network New Tab" +msgstr "" + +#: ../../include/features.php:49 +msgid "Enable tab to display all new Network activity" +msgstr "" + +#: ../../include/features.php:50 +msgid "Affinity Tool" +msgstr "" + +#: ../../include/features.php:50 +msgid "Filter stream activity by depth of relationships" +msgstr "" + +#: ../../include/features.php:55 +msgid "Post/Comment Tools" +msgstr "" + +#: ../../include/features.php:57 +msgid "Edit Sent Posts" +msgstr "" + +#: ../../include/features.php:57 +msgid "Edit and correct posts and comments after sending" +msgstr "" + +#: ../../include/features.php:58 +msgid "Tagging" +msgstr "" + +#: ../../include/features.php:58 +msgid "Ability to tag existing posts" +msgstr "" + +#: ../../include/features.php:59 +msgid "Post Categories" +msgstr "" + +#: ../../include/features.php:59 +msgid "Add categories to your posts" +msgstr "" + +#: ../../include/features.php:60 +msgid "Ability to file posts under folders" +msgstr "" + +#: ../../include/features.php:61 +msgid "Dislike Posts" +msgstr "" + +#: ../../include/features.php:61 +msgid "Ability to dislike posts/comments" +msgstr "" + +#: ../../include/features.php:62 +msgid "Star Posts" +msgstr "" + +#: ../../include/features.php:62 +msgid "Ability to mark special posts with a star indicator" +msgstr "" + +#: ../../include/features.php:63 +msgid "Tag Cloud" +msgstr "" + +#: ../../include/features.php:63 +msgid "Provide a personal tag cloud on your channel page" +msgstr "" + #: ../../include/attach.php:184 ../../include/attach.php:232 msgid "Item was not found." msgstr "" @@ -1919,313 +2910,6 @@ msgstr "" msgid "database storage failed." msgstr "" -#: ../../include/zot.php:438 -msgid "Invalid data packet" -msgstr "" - -#: ../../include/zot.php:448 -msgid "Unable to verify channel signature" -msgstr "" - -#: ../../include/zot.php:594 -#, php-format -msgid "Unable to verify site signature for %s" -msgstr "" - -#: ../../include/nav.php:72 ../../include/nav.php:87 ../../boot.php:1458 -msgid "Logout" -msgstr "" - -#: ../../include/nav.php:72 ../../include/nav.php:87 -msgid "End this session" -msgstr "" - -#: ../../include/nav.php:75 ../../include/nav.php:121 -msgid "Home" -msgstr "" - -#: ../../include/nav.php:75 -msgid "Your posts and conversations" -msgstr "" - -#: ../../include/nav.php:76 -msgid "Your profile page" -msgstr "" - -#: ../../include/nav.php:78 -msgid "Edit Profiles" -msgstr "" - -#: ../../include/nav.php:78 -msgid "Manage/Edit Profiles" -msgstr "" - -#: ../../include/nav.php:79 ../../mod/fbrowser.php:25 ../../boot.php:2239 -msgid "Photos" -msgstr "" - -#: ../../include/nav.php:79 -msgid "Your photos" -msgstr "" - -#: ../../include/nav.php:85 ../../boot.php:1459 -msgid "Login" -msgstr "" - -#: ../../include/nav.php:85 -msgid "Sign in" -msgstr "" - -#: ../../include/nav.php:102 -#, php-format -msgid "%s - click to logout" -msgstr "" - -#: ../../include/nav.php:107 -msgid "Click to authenticate to your home hub" -msgstr "" - -#: ../../include/nav.php:121 -msgid "Home Page" -msgstr "" - -#: ../../include/nav.php:125 ../../mod/register.php:195 ../../boot.php:1435 -msgid "Register" -msgstr "" - -#: ../../include/nav.php:125 -msgid "Create an account" -msgstr "" - -#: ../../include/nav.php:130 ../../mod/help.php:45 ../../mod/help.php:49 -msgid "Help" -msgstr "" - -#: ../../include/nav.php:130 -msgid "Help and documentation" -msgstr "" - -#: ../../include/nav.php:133 -msgid "Apps" -msgstr "" - -#: ../../include/nav.php:133 -msgid "Addon applications, utilities, games" -msgstr "" - -#: ../../include/nav.php:135 -msgid "Search site content" -msgstr "" - -#: ../../include/nav.php:138 ../../mod/directory.php:225 -msgid "Directory" -msgstr "" - -#: ../../include/nav.php:138 -msgid "Channel Locator" -msgstr "" - -#: ../../include/nav.php:149 -msgid "Matrix" -msgstr "" - -#: ../../include/nav.php:149 -msgid "Your matrix" -msgstr "" - -#: ../../include/nav.php:150 -msgid "See all matrix notifications" -msgstr "" - -#: ../../include/nav.php:151 -msgid "Mark all matrix notifications seen" -msgstr "" - -#: ../../include/nav.php:153 -msgid "Channel Home" -msgstr "" - -#: ../../include/nav.php:153 -msgid "Channel home" -msgstr "" - -#: ../../include/nav.php:154 -msgid "See all channel notifications" -msgstr "" - -#: ../../include/nav.php:155 -msgid "Mark all channel notifications seen" -msgstr "" - -#: ../../include/nav.php:158 -msgid "Intros" -msgstr "" - -#: ../../include/nav.php:158 ../../mod/connections.php:585 -msgid "New Connections" -msgstr "" - -#: ../../include/nav.php:159 -msgid "See all channel introductions" -msgstr "" - -#: ../../include/nav.php:162 -msgid "Notices" -msgstr "" - -#: ../../include/nav.php:162 ../../mod/notifications.php:218 -msgid "Notifications" -msgstr "" - -#: ../../include/nav.php:163 -msgid "See all notifications" -msgstr "" - -#: ../../include/nav.php:164 -msgid "Mark all system notifications seen" -msgstr "" - -#: ../../include/nav.php:166 -msgid "Mail" -msgstr "" - -#: ../../include/nav.php:166 -msgid "Private mail" -msgstr "" - -#: ../../include/nav.php:167 -msgid "See all private messages" -msgstr "" - -#: ../../include/nav.php:168 -msgid "Mark all private messages seen" -msgstr "" - -#: ../../include/nav.php:169 -msgid "Inbox" -msgstr "" - -#: ../../include/nav.php:170 -msgid "Outbox" -msgstr "" - -#: ../../include/nav.php:171 ../../mod/message.php:24 -msgid "New Message" -msgstr "" - -#: ../../include/nav.php:174 ../../mod/events.php:348 ../../boot.php:2250 -msgid "Events" -msgstr "" - -#: ../../include/nav.php:174 -msgid "Event Calendar" -msgstr "" - -#: ../../include/nav.php:175 -msgid "See all events" -msgstr "" - -#: ../../include/nav.php:176 -msgid "Mark all events seen" -msgstr "" - -#: ../../include/nav.php:178 -msgid "Channel Select" -msgstr "" - -#: ../../include/nav.php:178 -msgid "Manage Your Channels" -msgstr "" - -#: ../../include/nav.php:180 ../../mod/settings.php:131 -#: ../../mod/admin.php:778 ../../mod/admin.php:983 -msgid "Settings" -msgstr "" - -#: ../../include/nav.php:180 -msgid "Account/Channel Settings" -msgstr "" - -#: ../../include/nav.php:182 ../../mod/connections.php:691 -msgid "Connections" -msgstr "" - -#: ../../include/nav.php:182 -msgid "Manage/Edit Friends and Connections" -msgstr "" - -#: ../../include/nav.php:189 ../../mod/admin.php:111 -msgid "Admin" -msgstr "" - -#: ../../include/nav.php:189 -msgid "Site Setup and Configuration" -msgstr "" - -#: ../../include/nav.php:212 -msgid "Nothing new here" -msgstr "" - -#: ../../include/nav.php:217 -msgid "Please wait..." -msgstr "" - -#: ../../include/account.php:23 -msgid "Not a valid email address" -msgstr "" - -#: ../../include/account.php:25 -msgid "Your email domain is not among those allowed on this site" -msgstr "" - -#: ../../include/account.php:31 -msgid "Your email address is already registered at this site." -msgstr "" - -#: ../../include/account.php:64 -msgid "An invitation is required." -msgstr "" - -#: ../../include/account.php:68 -msgid "Invitation could not be verified." -msgstr "" - -#: ../../include/account.php:118 -msgid "Please enter the required information." -msgstr "" - -#: ../../include/account.php:186 -msgid "Failed to store account information." -msgstr "" - -#: ../../include/account.php:272 -#, php-format -msgid "Registration request at %s" -msgstr "" - -#: ../../include/account.php:274 ../../include/account.php:301 -#: ../../include/account.php:358 -msgid "Administrator" -msgstr "" - -#: ../../include/account.php:296 -msgid "your registration password" -msgstr "" - -#: ../../include/account.php:299 ../../include/account.php:356 -#, php-format -msgid "Registration details for %s" -msgstr "" - -#: ../../include/account.php:365 -msgid "Account approved." -msgstr "" - -#: ../../include/account.php:399 -#, php-format -msgid "Registration revoked for %s" -msgstr "" - #: ../../include/auth.php:67 msgid "Logged out." msgstr "" @@ -2238,697 +2922,2386 @@ msgstr "" msgid "Login failed." msgstr "" -#: ../../include/contact_widgets.php:14 +#: ../../include/enotify.php:36 +msgid "Red Matrix Notification" +msgstr "" + +#: ../../include/enotify.php:37 +msgid "redmatrix" +msgstr "" + +#: ../../include/enotify.php:39 +msgid "Thank You," +msgstr "" + +#: ../../include/enotify.php:41 #, php-format -msgid "You have %1$.0f of %2$.0f allowed connections." +msgid "%s Administrator" msgstr "" -#: ../../include/contact_widgets.php:20 -msgid "Add New Connection" -msgstr "" - -#: ../../include/contact_widgets.php:21 -msgid "Enter the channel address" -msgstr "" - -#: ../../include/contact_widgets.php:22 -msgid "Example: bob@example.com, http://example.com/barbara" -msgstr "" - -#: ../../include/contact_widgets.php:38 +#: ../../include/enotify.php:76 #, php-format -msgid "%d invitation available" -msgid_plural "%d invitations available" -msgstr[0] "" -msgstr[1] "" - -#: ../../include/contact_widgets.php:44 -msgid "Find Channels" +msgid "%s " msgstr "" -#: ../../include/contact_widgets.php:45 -msgid "Enter name or interest" -msgstr "" - -#: ../../include/contact_widgets.php:46 -msgid "Connect/Follow" -msgstr "" - -#: ../../include/contact_widgets.php:47 -msgid "Examples: Robert Morgenstein, Fishing" -msgstr "" - -#: ../../include/contact_widgets.php:48 ../../mod/connections.php:697 -#: ../../mod/directory.php:221 ../../mod/directory.php:226 -msgid "Find" -msgstr "" - -#: ../../include/contact_widgets.php:49 ../../mod/suggest.php:64 -msgid "Channel Suggestions" -msgstr "" - -#: ../../include/contact_widgets.php:51 -msgid "Random Profile" -msgstr "" - -#: ../../include/contact_widgets.php:52 -msgid "Invite Friends" -msgstr "" - -#: ../../include/contact_widgets.php:79 ../../include/contact_widgets.php:113 -msgid "Everything" -msgstr "" - -#: ../../include/contact_widgets.php:110 ../../include/widgets.php:26 -msgid "Categories" -msgstr "" - -#: ../../include/contact_widgets.php:143 +#: ../../include/enotify.php:80 #, php-format -msgid "%d connection in common" -msgid_plural "%d connections in common" -msgstr[0] "" -msgstr[1] "" - -#: ../../include/page_widgets.php:6 -msgid "New Page" +msgid "[Red:Notify] New mail received at %s" msgstr "" -#: ../../include/follow.php:21 -msgid "Channel is blocked on this site." -msgstr "" - -#: ../../include/follow.php:26 -msgid "Channel location missing." -msgstr "" - -#: ../../include/follow.php:43 -msgid "Channel discovery failed. Website may be down or misconfigured." -msgstr "" - -#: ../../include/follow.php:51 -msgid "Response from remote channel was not understood." -msgstr "" - -#: ../../include/follow.php:58 -msgid "Response from remote channel was incomplete." -msgstr "" - -#: ../../include/follow.php:129 -msgid "local account not found." -msgstr "" - -#: ../../include/follow.php:138 -msgid "Cannot connect to yourself." -msgstr "" - -#: ../../include/permissions.php:13 -msgid "Can view my \"public\" stream and posts" -msgstr "" - -#: ../../include/permissions.php:14 -msgid "Can view my \"public\" channel profile" -msgstr "" - -#: ../../include/permissions.php:15 -msgid "Can view my \"public\" photo albums" -msgstr "" - -#: ../../include/permissions.php:16 -msgid "Can view my \"public\" address book" -msgstr "" - -#: ../../include/permissions.php:17 -msgid "Can view my \"public\" file storage" -msgstr "" - -#: ../../include/permissions.php:18 -msgid "Can view my \"public\" pages" -msgstr "" - -#: ../../include/permissions.php:21 -msgid "Can send me their channel stream and posts" -msgstr "" - -#: ../../include/permissions.php:22 -msgid "Can post on my channel page (\"wall\")" -msgstr "" - -#: ../../include/permissions.php:23 -msgid "Can comment on my posts" -msgstr "" - -#: ../../include/permissions.php:24 -msgid "Can send me private mail messages" -msgstr "" - -#: ../../include/permissions.php:25 -msgid "Can post photos to my photo albums" -msgstr "" - -#: ../../include/permissions.php:26 -msgid "Can forward to all my channel contacts via post @mentions" -msgstr "" - -#: ../../include/permissions.php:26 -msgid "Advanced - useful for creating group forum channels" -msgstr "" - -#: ../../include/permissions.php:27 -msgid "Can chat with me (when available)" -msgstr "" - -#: ../../include/permissions.php:27 -msgid "Requires compatible chat plugin" -msgstr "" - -#: ../../include/permissions.php:28 -msgid "Can write to my \"public\" file storage" -msgstr "" - -#: ../../include/permissions.php:29 -msgid "Can edit my \"public\" pages" -msgstr "" - -#: ../../include/permissions.php:31 -msgid "Can source my \"public\" posts in derived channels" -msgstr "" - -#: ../../include/permissions.php:31 -msgid "Somewhat advanced - very useful in open communities" -msgstr "" - -#: ../../include/permissions.php:32 -msgid "Can administer my channel resources" -msgstr "" - -#: ../../include/permissions.php:32 -msgid "Extremely advanced. Leave this alone unless you know what you are doing" -msgstr "" - -#: ../../include/taxonomy.php:210 -msgid "Tags" -msgstr "" - -#: ../../include/taxonomy.php:224 -msgid "Keywords" -msgstr "" - -#: ../../include/taxonomy.php:249 -msgid "have" -msgstr "" - -#: ../../include/taxonomy.php:249 -msgid "has" -msgstr "" - -#: ../../include/taxonomy.php:250 -msgid "want" -msgstr "" - -#: ../../include/taxonomy.php:250 -msgid "wants" -msgstr "" - -#: ../../include/taxonomy.php:251 -msgid "likes" -msgstr "" - -#: ../../include/taxonomy.php:252 -msgid "dislikes" -msgstr "" - -#: ../../include/plugin.php:440 ../../include/plugin.php:442 -msgid "Click here to upgrade." -msgstr "" - -#: ../../include/plugin.php:448 -msgid "This action exceeds the limits set by your subscription plan." -msgstr "" - -#: ../../include/plugin.php:453 -msgid "This action is not available under your subscription plan." -msgstr "" - -#: ../../include/comanche.php:35 ../../view/theme/redbasic/php/config.php:62 -#: ../../view/theme/apw/php/config.php:176 -msgid "Default" -msgstr "" - -#: ../../include/conversation.php:123 -msgid "channel" -msgstr "" - -#: ../../include/conversation.php:161 ../../mod/like.php:134 +#: ../../include/enotify.php:82 #, php-format -msgid "%1$s likes %2$s's %3$s" +msgid "%1$s, %2$s sent you a new private message at %3$s." msgstr "" -#: ../../include/conversation.php:164 ../../mod/like.php:136 +#: ../../include/enotify.php:83 #, php-format -msgid "%1$s doesn't like %2$s's %3$s" +msgid "%1$s sent you %2$s." msgstr "" -#: ../../include/conversation.php:201 +#: ../../include/enotify.php:83 +msgid "a private message" +msgstr "" + +#: ../../include/enotify.php:84 #, php-format -msgid "%1$s is now connected with %2$s" +msgid "Please visit %s to view and/or reply to your private messages." msgstr "" -#: ../../include/conversation.php:232 +#: ../../include/enotify.php:135 #, php-format -msgid "%1$s poked %2$s" +msgid "%1$s, %2$s commented on [zrl=%3$s]a %4$s[/zrl]" msgstr "" -#: ../../include/conversation.php:254 ../../mod/mood.php:63 +#: ../../include/enotify.php:143 #, php-format -msgid "%1$s is currently %2$s" +msgid "%1$s, %2$s commented on [zrl=%3$s]%4$s's %5$s[/zrl]" msgstr "" -#: ../../include/conversation.php:658 +#: ../../include/enotify.php:152 #, php-format -msgid "View %s's profile @ %s" +msgid "%1$s, %2$s commented on [zrl=%3$s]your %4$s[/zrl]" msgstr "" -#: ../../include/conversation.php:672 -msgid "Categories:" -msgstr "" - -#: ../../include/conversation.php:673 -msgid "Filed under:" -msgstr "" - -#: ../../include/conversation.php:700 -msgid "View in context" -msgstr "" - -#: ../../include/conversation.php:826 -msgid "remove" -msgstr "" - -#: ../../include/conversation.php:830 -msgid "Loading..." -msgstr "" - -#: ../../include/conversation.php:831 -msgid "Delete Selected Items" -msgstr "" - -#: ../../include/conversation.php:922 -msgid "View Source" -msgstr "" - -#: ../../include/conversation.php:923 -msgid "Follow Thread" -msgstr "" - -#: ../../include/conversation.php:927 -msgid "Matrix Activity" -msgstr "" - -#: ../../include/conversation.php:992 +#: ../../include/enotify.php:163 #, php-format -msgid "%s likes this." +msgid "[Red:Notify] Comment to conversation #%1$d by %2$s" msgstr "" -#: ../../include/conversation.php:992 +#: ../../include/enotify.php:164 #, php-format -msgid "%s doesn't like this." +msgid "%1$s, %2$s commented on an item/conversation you have been following." msgstr "" -#: ../../include/conversation.php:996 +#: ../../include/enotify.php:167 ../../include/enotify.php:186 +#: ../../include/enotify.php:212 ../../include/enotify.php:231 +#: ../../include/enotify.php:245 #, php-format -msgid "%2$d people like this." +msgid "Please visit %s to view and/or reply to the conversation." msgstr "" -#: ../../include/conversation.php:998 +#: ../../include/enotify.php:174 #, php-format -msgid "%2$d people don't like this." +msgid "[Red:Notify] %s posted to your profile wall" msgstr "" -#: ../../include/conversation.php:1004 -msgid "and" -msgstr "" - -#: ../../include/conversation.php:1007 +#: ../../include/enotify.php:176 #, php-format -msgid ", and %d other people" +msgid "%1$s, %2$s posted to your profile wall at %3$s" msgstr "" -#: ../../include/conversation.php:1008 +#: ../../include/enotify.php:178 #, php-format -msgid "%s like this." +msgid "%1$s, %2$s posted to [zrl=%3$s]your wall[/zrl]" msgstr "" -#: ../../include/conversation.php:1008 +#: ../../include/enotify.php:205 #, php-format -msgid "%s don't like this." +msgid "[Red:Notify] %s tagged you" msgstr "" -#: ../../include/conversation.php:1058 -msgid "Visible to everybody" +#: ../../include/enotify.php:206 +#, php-format +msgid "%1$s, %2$s tagged you at %3$s" msgstr "" -#: ../../include/conversation.php:1059 ../../mod/message.php:281 -#: ../../mod/message.php:417 -msgid "Please enter a link URL:" +#: ../../include/enotify.php:207 +#, php-format +msgid "%1$s, %2$s [zrl=%3$s]tagged you[/zrl]." msgstr "" -#: ../../include/conversation.php:1060 -msgid "Please enter a video link/URL:" +#: ../../include/enotify.php:220 +#, php-format +msgid "[Red:Notify] %1$s poked you" msgstr "" -#: ../../include/conversation.php:1061 -msgid "Please enter an audio link/URL:" +#: ../../include/enotify.php:221 +#, php-format +msgid "%1$s, %2$s poked you at %3$s" msgstr "" -#: ../../include/conversation.php:1062 -msgid "Tag term:" +#: ../../include/enotify.php:222 +#, php-format +msgid "%1$s, %2$s [zrl=%2$s]poked you[/zrl]." msgstr "" -#: ../../include/conversation.php:1063 ../../mod/filer.php:35 -msgid "Save to Folder:" +#: ../../include/enotify.php:238 +#, php-format +msgid "[Red:Notify] %s tagged your post" msgstr "" -#: ../../include/conversation.php:1064 -msgid "Where are you right now?" +#: ../../include/enotify.php:239 +#, php-format +msgid "%1$s, %2$s tagged your post at %3$s" msgstr "" -#: ../../include/conversation.php:1065 ../../mod/message.php:282 -#: ../../mod/message.php:418 ../../mod/editpost.php:52 -msgid "Expires YYYY-MM-DD HH:MM" +#: ../../include/enotify.php:240 +#, php-format +msgid "%1$s, %2$s tagged [zrl=%3$s]your post[/zrl]" msgstr "" -#: ../../include/conversation.php:1089 ../../mod/photos.php:1060 -msgid "Share" +#: ../../include/enotify.php:252 +msgid "[Red:Notify] Introduction received" msgstr "" -#: ../../include/conversation.php:1091 -msgid "Page link title" +#: ../../include/enotify.php:253 +#, php-format +msgid "%1$s, you've received an introduction from '%2$s' at %3$s" msgstr "" -#: ../../include/conversation.php:1093 ../../mod/message.php:329 -#: ../../mod/message.php:512 ../../mod/editlayout.php:101 -#: ../../mod/editwebpage.php:120 ../../mod/editpost.php:98 -#: ../../mod/editblock.php:115 -msgid "Upload photo" +#: ../../include/enotify.php:254 +#, php-format +msgid "%1$s, you've received [zrl=%2$s]an introduction[/zrl] from %3$s." msgstr "" -#: ../../include/conversation.php:1094 -msgid "upload photo" +#: ../../include/enotify.php:258 ../../include/enotify.php:277 +#, php-format +msgid "You may visit their profile at %s" msgstr "" -#: ../../include/conversation.php:1095 ../../mod/message.php:330 -#: ../../mod/message.php:513 ../../mod/editlayout.php:102 -#: ../../mod/editwebpage.php:121 ../../mod/editpost.php:99 -#: ../../mod/editblock.php:116 -msgid "Attach file" +#: ../../include/enotify.php:260 +#, php-format +msgid "Please visit %s to approve or reject the introduction." msgstr "" -#: ../../include/conversation.php:1096 -msgid "attach file" +#: ../../include/enotify.php:267 +msgid "[Red:Notify] Friend suggestion received" msgstr "" -#: ../../include/conversation.php:1097 ../../mod/message.php:331 -#: ../../mod/message.php:514 ../../mod/editlayout.php:103 -#: ../../mod/editwebpage.php:122 ../../mod/editpost.php:100 -#: ../../mod/editblock.php:117 -msgid "Insert web link" +#: ../../include/enotify.php:268 +#, php-format +msgid "%1$s, you've received a friend suggestion from '%2$s' at %3$s" msgstr "" -#: ../../include/conversation.php:1098 -msgid "web link" -msgstr "" - -#: ../../include/conversation.php:1099 -msgid "Insert video link" -msgstr "" - -#: ../../include/conversation.php:1100 -msgid "video link" -msgstr "" - -#: ../../include/conversation.php:1101 -msgid "Insert audio link" -msgstr "" - -#: ../../include/conversation.php:1102 -msgid "audio link" -msgstr "" - -#: ../../include/conversation.php:1103 ../../mod/editlayout.php:107 -#: ../../mod/editwebpage.php:126 ../../mod/editpost.php:104 -#: ../../mod/editblock.php:121 -msgid "Set your location" -msgstr "" - -#: ../../include/conversation.php:1104 -msgid "set location" -msgstr "" - -#: ../../include/conversation.php:1105 ../../mod/editlayout.php:108 -#: ../../mod/editwebpage.php:127 ../../mod/editpost.php:105 -#: ../../mod/editblock.php:122 -msgid "Clear browser location" -msgstr "" - -#: ../../include/conversation.php:1106 -msgid "clear location" -msgstr "" - -#: ../../include/conversation.php:1108 ../../mod/editlayout.php:121 -#: ../../mod/editwebpage.php:142 ../../mod/editpost.php:118 -#: ../../mod/editblock.php:136 -msgid "Set title" -msgstr "" - -#: ../../include/conversation.php:1111 ../../mod/editlayout.php:123 -#: ../../mod/editwebpage.php:144 ../../mod/editpost.php:120 -#: ../../mod/editblock.php:138 -msgid "Categories (comma-separated list)" -msgstr "" - -#: ../../include/conversation.php:1113 ../../mod/editlayout.php:110 -#: ../../mod/editwebpage.php:129 ../../mod/editpost.php:107 -#: ../../mod/editblock.php:124 -msgid "Permission settings" -msgstr "" - -#: ../../include/conversation.php:1114 -msgid "permissions" -msgstr "" - -#: ../../include/conversation.php:1122 ../../mod/editlayout.php:118 -#: ../../mod/editwebpage.php:137 ../../mod/editpost.php:115 -#: ../../mod/editblock.php:133 -msgid "Public post" -msgstr "" - -#: ../../include/conversation.php:1124 ../../mod/editlayout.php:124 -#: ../../mod/editwebpage.php:145 ../../mod/editpost.php:121 -#: ../../mod/editblock.php:139 -msgid "Example: bob@example.com, mary@example.com" -msgstr "" - -#: ../../include/conversation.php:1137 ../../mod/message.php:336 -#: ../../mod/message.php:519 ../../mod/editlayout.php:134 -#: ../../mod/editwebpage.php:155 ../../mod/editpost.php:132 -#: ../../mod/editblock.php:149 -msgid "Set expiration date" -msgstr "" - -#: ../../include/security.php:49 -msgid "Welcome " -msgstr "" - -#: ../../include/security.php:50 -msgid "Please upload a profile photo." -msgstr "" - -#: ../../include/security.php:53 -msgid "Welcome back " -msgstr "" - -#: ../../include/security.php:360 +#: ../../include/enotify.php:269 +#, php-format msgid "" -"The form security token was not correct. This probably happened because the " -"form has been opened for too long (>3 hours) before submitting it." +"%1$s, you've received [zrl=%2$s]a friend suggestion[/zrl] for %3$s from %4$s." msgstr "" -#: ../../include/items.php:201 ../../mod/like.php:55 ../../mod/group.php:74 -#: ../../mod/profperm.php:28 ../../index.php:339 -msgid "Permission denied" +#: ../../include/enotify.php:275 +msgid "Name:" msgstr "" -#: ../../include/items.php:3531 ../../mod/admin.php:150 -#: ../../mod/admin.php:723 ../../mod/admin.php:926 ../../mod/viewsrc.php:18 -#: ../../mod/home.php:64 ../../mod/display.php:32 -msgid "Item not found." +#: ../../include/enotify.php:276 +msgid "Photo:" msgstr "" -#: ../../include/items.php:3703 -msgid "Archives" -msgstr "" - -#: ../../include/items.php:3869 ../../mod/group.php:44 ../../mod/group.php:146 -msgid "Collection not found." -msgstr "" - -#: ../../include/items.php:3885 ../../mod/network.php:469 -msgid "Group is empty" -msgstr "" - -#: ../../include/items.php:3901 -msgid "Connection not found." -msgstr "" - -#: ../../include/dir_fns.php:15 -msgid "Sort Options" -msgstr "" - -#: ../../include/dir_fns.php:16 -msgid "Alphabetic" -msgstr "" - -#: ../../include/dir_fns.php:17 -msgid "Reverse Alphabetic" -msgstr "" - -#: ../../include/dir_fns.php:18 -msgid "Newest to Oldest" -msgstr "" - -#: ../../include/dir_fns.php:29 -msgid "Enable Safe Search" -msgstr "" - -#: ../../include/dir_fns.php:31 -msgid "Disable Safe Search" -msgstr "" - -#: ../../include/dir_fns.php:33 -msgid "Safe Mode" -msgstr "" - -#: ../../mod/common.php:10 -msgid "No channel." -msgstr "" - -#: ../../mod/common.php:47 -msgid "Common connections" -msgstr "" - -#: ../../mod/common.php:52 -msgid "No connections in common." -msgstr "" - -#: ../../mod/events.php:66 -msgid "Event title and start time are required." -msgstr "" - -#: ../../mod/events.php:281 -msgid "l, F j" -msgstr "" - -#: ../../mod/events.php:303 -msgid "Edit event" -msgstr "" - -#: ../../mod/events.php:349 -msgid "Create New Event" -msgstr "" - -#: ../../mod/events.php:350 -msgid "Previous" -msgstr "" - -#: ../../mod/events.php:351 ../../mod/setup.php:256 -msgid "Next" -msgstr "" - -#: ../../mod/events.php:425 -msgid "hour:minute" -msgstr "" - -#: ../../mod/events.php:435 -msgid "Event details" -msgstr "" - -#: ../../mod/events.php:436 +#: ../../include/enotify.php:279 #, php-format -msgid "Format is %s %s. Starting date and Title are required." +msgid "Please visit %s to approve or reject the suggestion." msgstr "" -#: ../../mod/events.php:438 -msgid "Event Starts:" +#: ../../include/contact_selectors.php:30 +msgid "Unknown | Not categorised" msgstr "" -#: ../../mod/events.php:438 ../../mod/events.php:452 -msgid "Required" +#: ../../include/contact_selectors.php:31 +msgid "Block immediately" msgstr "" -#: ../../mod/events.php:441 -msgid "Finish date/time is not known or not relevant" +#: ../../include/contact_selectors.php:32 +msgid "Shady, spammer, self-marketer" msgstr "" -#: ../../mod/events.php:443 -msgid "Event Finishes:" +#: ../../include/contact_selectors.php:33 +msgid "Known to me, but no opinion" msgstr "" -#: ../../mod/events.php:446 -msgid "Adjust for viewer timezone" +#: ../../include/contact_selectors.php:34 +msgid "OK, probably harmless" msgstr "" -#: ../../mod/events.php:448 -msgid "Description:" +#: ../../include/contact_selectors.php:35 +msgid "Reputable, has my trust" msgstr "" -#: ../../mod/events.php:452 -msgid "Title:" +#: ../../include/contact_selectors.php:54 +msgid "Frequently" msgstr "" -#: ../../mod/events.php:454 -msgid "Share this event" +#: ../../include/contact_selectors.php:55 +msgid "Hourly" msgstr "" -#: ../../mod/thing.php:109 -msgid "Object store: failed" +#: ../../include/contact_selectors.php:56 +msgid "Twice daily" msgstr "" -#: ../../mod/thing.php:113 -msgid "thing/stuff added" +#: ../../include/contact_selectors.php:57 +msgid "Daily" msgstr "" -#: ../../mod/thing.php:129 +#: ../../include/contact_selectors.php:58 +msgid "Weekly" +msgstr "" + +#: ../../include/contact_selectors.php:59 +msgid "Monthly" +msgstr "" + +#: ../../include/contact_selectors.php:74 +msgid "Friendica" +msgstr "" + +#: ../../include/contact_selectors.php:75 +msgid "OStatus" +msgstr "" + +#: ../../include/contact_selectors.php:76 +msgid "RSS/Atom" +msgstr "" + +#: ../../include/contact_selectors.php:78 +msgid "Diaspora" +msgstr "" + +#: ../../include/contact_selectors.php:79 +msgid "Facebook" +msgstr "" + +#: ../../include/contact_selectors.php:80 +msgid "Zot!" +msgstr "" + +#: ../../include/contact_selectors.php:81 +msgid "LinkedIn" +msgstr "" + +#: ../../include/contact_selectors.php:82 +msgid "XMPP/IM" +msgstr "" + +#: ../../include/contact_selectors.php:83 +msgid "MySpace" +msgstr "" + +#: ../../mod/ping.php:160 +msgid "sent you a private message" +msgstr "" + +#: ../../mod/ping.php:218 +msgid "added your channel" +msgstr "" + +#: ../../mod/ping.php:262 +msgid "posted an event" +msgstr "" + +#: ../../mod/update_search.php:46 ../../mod/update_display.php:25 +#: ../../mod/update_community.php:18 ../../mod/update_network.php:23 +#: ../../mod/update_channel.php:43 +msgid "[Embedded content - reload page to view]" +msgstr "" + +#: ../../mod/message.php:19 +msgid "Check Mail" +msgstr "" + +#: ../../mod/message.php:56 +msgid "Unable to lookup recipient." +msgstr "" + +#: ../../mod/message.php:64 +msgid "Unable to communicate with requested channel." +msgstr "" + +#: ../../mod/message.php:71 +msgid "Cannot verify requested channel." +msgstr "" + +#: ../../mod/message.php:97 +msgid "Selected channel has private message restrictions. Send failed." +msgstr "" + +#: ../../mod/message.php:223 ../../mod/notifications.php:101 +msgid "Messages" +msgstr "" + +#: ../../mod/message.php:234 +msgid "Message deleted." +msgstr "" + +#: ../../mod/message.php:241 +msgid "Conversation removed." +msgstr "" + +#: ../../mod/message.php:258 +msgid "Message recalled." +msgstr "" + +#: ../../mod/message.php:316 +msgid "Send Private Message" +msgstr "" + +#: ../../mod/message.php:317 ../../mod/message.php:503 +msgid "To:" +msgstr "" + +#: ../../mod/message.php:322 ../../mod/message.php:505 +msgid "Subject:" +msgstr "" + +#: ../../mod/message.php:326 ../../mod/message.php:508 +#: ../../mod/invite.php:141 +msgid "Your message:" +msgstr "" + +#: ../../mod/message.php:359 +msgid "No messages." +msgstr "" + +#: ../../mod/message.php:375 ../../mod/message.php:472 +msgid "Delete message" +msgstr "" + +#: ../../mod/message.php:377 +msgid "D, d M Y - g:i A" +msgstr "" + +#: ../../mod/message.php:396 +msgid "Message not found." +msgstr "" + +#: ../../mod/message.php:473 +msgid "Recall message" +msgstr "" + +#: ../../mod/message.php:475 +msgid "Message has been recalled." +msgstr "" + +#: ../../mod/message.php:492 +msgid "Private Conversation" +msgstr "" + +#: ../../mod/message.php:496 +msgid "Delete conversation" +msgstr "" + +#: ../../mod/message.php:498 +msgid "" +"No secure communications available. You may be able to " +"respond from the sender's profile page." +msgstr "" + +#: ../../mod/message.php:502 +msgid "Send Reply" +msgstr "" + +#: ../../mod/chanview.php:78 ../../mod/wall_upload.php:35 +#: ../../mod/magic.php:95 ../../mod/page.php:47 ../../mod/home.php:51 +msgid "Channel not found." +msgstr "" + +#: ../../mod/chanview.php:98 +msgid "toggle full screen mode" +msgstr "" + +#: ../../mod/xchan.php:25 ../../mod/mitem.php:97 ../../mod/menu.php:113 +msgid "Not found." +msgstr "" + +#: ../../mod/poke.php:159 +msgid "Poke/Prod" +msgstr "" + +#: ../../mod/poke.php:160 +msgid "poke, prod or do other things to somebody" +msgstr "" + +#: ../../mod/poke.php:161 +msgid "Recipient" +msgstr "" + +#: ../../mod/poke.php:162 +msgid "Choose what you wish to do to recipient" +msgstr "" + +#: ../../mod/poke.php:165 +msgid "Make this post private" +msgstr "" + +#: ../../mod/rpost.php:84 ../../mod/editpost.php:42 +msgid "Edit post" +msgstr "" + +#: ../../mod/fsuggest.php:20 ../../mod/fsuggest.php:92 +#: ../../mod/crepair.php:129 +msgid "Contact not found." +msgstr "" + +#: ../../mod/fsuggest.php:63 +msgid "Friend suggestion sent." +msgstr "" + +#: ../../mod/fsuggest.php:97 +msgid "Suggest Friends" +msgstr "" + +#: ../../mod/fsuggest.php:99 #, php-format -msgid "OBJ: %1$s %2$s %3$s" +msgid "Suggest a friend for %s" msgstr "" -#: ../../mod/thing.php:175 -msgid "not yet implemented." +#: ../../mod/pubsites.php:22 +msgid "Public Sites" msgstr "" -#: ../../mod/thing.php:181 -msgid "Add Stuff to your Profile" +#: ../../mod/pubsites.php:25 +msgid "" +"The listed sites allow public registration into the Red Matrix. All sites in " +"the matrix are interlinked so membership on any of them conveys membership " +"in the matrix as a whole. Some sites may require subscription or provide " +"tiered service plans. The provider links may provide " +"additional details." msgstr "" -#: ../../mod/thing.php:183 -msgid "Select a profile" +#: ../../mod/pubsites.php:31 +msgid "Site URL" msgstr "" -#: ../../mod/thing.php:185 -msgid "Select a category of stuff. e.g. I ______ something" +#: ../../mod/pubsites.php:31 +msgid "Access Type" msgstr "" -#: ../../mod/thing.php:187 -msgid "Name of thing or stuff e.g. something" +#: ../../mod/pubsites.php:31 +msgid "Registration Policy" msgstr "" -#: ../../mod/thing.php:188 -msgid "URL of thing or stuff (optional)" +#: ../../mod/pubsites.php:31 ../../mod/profiles.php:367 +msgid "Location" msgstr "" -#: ../../mod/thing.php:189 -msgid "URL for photo of thing or stuff (optional)" +#: ../../mod/fbrowser.php:82 ../../mod/fbrowser.php:117 ../../mod/tagrm.php:11 +#: ../../mod/tagrm.php:94 ../../mod/settings.php:652 +#: ../../mod/settings.php:678 +msgid "Cancel" +msgstr "" + +#: ../../mod/fbrowser.php:114 +msgid "Files" +msgstr "" + +#: ../../mod/mood.php:133 +msgid "Mood" +msgstr "" + +#: ../../mod/mood.php:134 +msgid "Set your current mood and tell your friends" +msgstr "" + +#: ../../mod/profile_photo.php:54 +msgid "Image uploaded but image cropping failed." +msgstr "" + +#: ../../mod/profile_photo.php:107 +msgid "Image resize failed." +msgstr "" + +#: ../../mod/profile_photo.php:151 +msgid "" +"Shift-reload the page or clear browser cache if the new photo does not " +"display immediately." +msgstr "" + +#: ../../mod/profile_photo.php:173 +#, php-format +msgid "Image exceeds size limit of %d" +msgstr "" + +#: ../../mod/profile_photo.php:182 +msgid "Unable to process image." +msgstr "" + +#: ../../mod/profile_photo.php:224 ../../mod/profile_photo.php:272 +msgid "Photo not available." +msgstr "" + +#: ../../mod/profile_photo.php:291 +msgid "Upload File:" +msgstr "" + +#: ../../mod/profile_photo.php:292 +msgid "Select a profile:" +msgstr "" + +#: ../../mod/profile_photo.php:293 +msgid "Upload Profile Photo" +msgstr "" + +#: ../../mod/profile_photo.php:294 +msgid "Upload" +msgstr "" + +#: ../../mod/profile_photo.php:298 ../../mod/settings.php:1018 +msgid "or" +msgstr "" + +#: ../../mod/profile_photo.php:298 +msgid "skip this step" +msgstr "" + +#: ../../mod/profile_photo.php:298 +msgid "select a photo from your photo albums" +msgstr "" + +#: ../../mod/profile_photo.php:312 +msgid "Crop Image" +msgstr "" + +#: ../../mod/profile_photo.php:313 +msgid "Please adjust the image cropping for optimum viewing." +msgstr "" + +#: ../../mod/profile_photo.php:315 +msgid "Done Editing" +msgstr "" + +#: ../../mod/profile_photo.php:350 +msgid "Image uploaded successfully." +msgstr "" + +#: ../../mod/profile_photo.php:352 +msgid "Image upload failed." +msgstr "" + +#: ../../mod/profile_photo.php:361 +#, php-format +msgid "Image size reduction [%s] failed." +msgstr "" + +#: ../../mod/wall_upload.php:41 ../../mod/item.php:1074 +msgid "Wall Photos" +msgstr "" + +#: ../../mod/crepair.php:102 +msgid "Contact settings applied." +msgstr "" + +#: ../../mod/crepair.php:104 +msgid "Contact update failed." +msgstr "" + +#: ../../mod/crepair.php:135 +msgid "Repair Contact Settings" +msgstr "" + +#: ../../mod/crepair.php:137 +msgid "" +"WARNING: This is highly advanced and if you enter incorrect " +"information your communications with this contact may stop working." +msgstr "" + +#: ../../mod/crepair.php:138 +msgid "" +"Please use your browser 'Back' button now if you are " +"uncertain what to do on this page." +msgstr "" + +#: ../../mod/crepair.php:144 +msgid "Return to contact editor" +msgstr "" + +#: ../../mod/crepair.php:148 ../../mod/admin.php:686 +#: ../../mod/settings.php:653 ../../mod/settings.php:679 +msgid "Name" +msgstr "" + +#: ../../mod/crepair.php:149 +msgid "Account Nickname" +msgstr "" + +#: ../../mod/crepair.php:150 +msgid "@Tagname - overrides Name/Nickname" +msgstr "" + +#: ../../mod/crepair.php:151 +msgid "Account URL" +msgstr "" + +#: ../../mod/crepair.php:152 +msgid "Friend Request URL" +msgstr "" + +#: ../../mod/crepair.php:153 +msgid "Friend Confirm URL" +msgstr "" + +#: ../../mod/crepair.php:154 +msgid "Notification Endpoint URL" +msgstr "" + +#: ../../mod/crepair.php:155 +msgid "Poll/Feed URL" +msgstr "" + +#: ../../mod/crepair.php:156 +msgid "New photo from this URL" +msgstr "" + +#: ../../mod/connect.php:59 ../../mod/connect.php:107 +msgid "Continue" +msgstr "" + +#: ../../mod/connect.php:88 +msgid "Premium Channel Setup" +msgstr "" + +#: ../../mod/connect.php:90 +msgid "Enable premium channel connection restrictions" +msgstr "" + +#: ../../mod/connect.php:91 +msgid "" +"Please enter your restrictions or conditions, such as paypal receipt, usage " +"guidelines, etc." +msgstr "" + +#: ../../mod/connect.php:93 ../../mod/connect.php:113 +msgid "" +"This channel may require additional steps or acknowledgement of the " +"following conditions prior to connecting:" +msgstr "" + +#: ../../mod/connect.php:94 +msgid "" +"Potential connections will then see the following text before proceeding:" +msgstr "" + +#: ../../mod/connect.php:95 ../../mod/connect.php:116 +msgid "" +"By continuing, I certify that I have complied with any instructions provided " +"on this page." +msgstr "" + +#: ../../mod/connect.php:104 +msgid "(No specific instructions have been provided by the channel owner.)" +msgstr "" + +#: ../../mod/connect.php:112 +msgid "Restricted or Premium Channel" +msgstr "" + +#: ../../mod/lockview.php:34 +msgid "Remote privacy information not available." +msgstr "" + +#: ../../mod/lockview.php:43 +msgid "Visible to:" +msgstr "" + +#: ../../mod/blocks.php:65 +msgid "Block Name" +msgstr "" + +#: ../../mod/blocks.php:96 ../../mod/webpages.php:104 +#: ../../mod/layouts.php:105 +msgid "View" +msgstr "" + +#: ../../mod/intro.php:11 ../../mod/intro.php:98 ../../mod/admin.php:688 +#: ../../mod/notifications.php:159 ../../mod/notifications.php:206 +msgid "Approve" +msgstr "" + +#: ../../mod/intro.php:14 ../../mod/intro.php:99 ../../mod/admin.php:691 +#: ../../mod/connections.php:348 ../../mod/connections.php:490 +msgid "Block" +msgstr "" + +#: ../../mod/intro.php:17 ../../mod/intro.php:100 +#: ../../mod/connections.php:355 ../../mod/connections.php:491 +#: ../../mod/notifications.php:51 ../../mod/notifications.php:162 +#: ../../mod/notifications.php:208 +msgid "Ignore" +msgstr "" + +#: ../../mod/intro.php:29 ../../mod/connections.php:122 +msgid "Connection updated." +msgstr "" + +#: ../../mod/intro.php:31 +msgid "Connection update failed." +msgstr "" + +#: ../../mod/intro.php:56 +msgid "Introductions and Connection Requests" +msgstr "" + +#: ../../mod/intro.php:67 +msgid "No pending introductions." +msgstr "" + +#: ../../mod/intro.php:72 +msgid "System error. Please try again later." +msgstr "" + +#: ../../mod/intro.php:95 ../../mod/connections.php:496 +#: ../../mod/notifications.php:155 ../../mod/notifications.php:202 +msgid "Hide this contact from others" +msgstr "" + +#: ../../mod/intro.php:96 ../../mod/notifications.php:156 +#: ../../mod/notifications.php:203 +msgid "Post a new friend activity" +msgstr "" + +#: ../../mod/intro.php:96 ../../mod/notifications.php:156 +#: ../../mod/notifications.php:203 +msgid "if applicable" +msgstr "" + +#: ../../mod/intro.php:101 ../../mod/notifications.php:35 +#: ../../mod/notifications.php:163 ../../mod/notifications.php:209 +msgid "Discard" +msgstr "" + +#: ../../mod/community.php:18 ../../mod/search.php:80 ../../mod/display.php:9 +#: ../../mod/directory.php:32 ../../mod/photos.php:576 +#: ../../mod/viewconnections.php:28 +msgid "Public access denied." +msgstr "" + +#: ../../mod/community.php:23 +msgid "Not available." +msgstr "" + +#: ../../mod/community.php:32 +msgid "Community" +msgstr "" + +#: ../../mod/community.php:63 ../../mod/community.php:88 +msgid "No results." +msgstr "" + +#: ../../mod/oexchange.php:23 +msgid "Unable to find your hub." +msgstr "" + +#: ../../mod/oexchange.php:37 +msgid "Post successful." +msgstr "" + +#: ../../mod/search.php:20 ../../mod/network.php:164 +msgid "Remove term" +msgstr "" + +#: ../../mod/profperm.php:34 ../../mod/profperm.php:64 +msgid "Invalid profile identifier." +msgstr "" + +#: ../../mod/profperm.php:110 +msgid "Profile Visibility Editor" +msgstr "" + +#: ../../mod/profperm.php:114 +msgid "Click on a contact to add or remove." +msgstr "" + +#: ../../mod/profperm.php:123 +msgid "Visible To" +msgstr "" + +#: ../../mod/profperm.php:139 +msgid "All Contacts (with secure profile access)" +msgstr "" + +#: ../../mod/new_channel.php:107 +msgid "Add a Channel" +msgstr "" + +#: ../../mod/new_channel.php:108 +msgid "" +"A channel is your own collection of related web pages. A channel can be used " +"to hold social network profiles, blogs, conversation groups and forums, " +"celebrity pages, and much more. You may create as many channels as your " +"service provider allows." +msgstr "" + +#: ../../mod/new_channel.php:110 ../../mod/sources.php:82 +#: ../../mod/sources.php:109 +msgid "Channel Name" +msgstr "" + +#: ../../mod/new_channel.php:111 +msgid "" +"Examples: \"Bob Jameson\", \"Lisa and her Horses\", \"Soccer\", \"Aviation " +"Group\" " +msgstr "" + +#: ../../mod/new_channel.php:112 +msgid "Choose a short nickname" +msgstr "" + +#: ../../mod/new_channel.php:113 +msgid "" +"Your nickname will be used to create an easily remembered channel address " +"(like an email address) which you can share with others." +msgstr "" + +#: ../../mod/new_channel.php:114 +msgid "" +"Or import an existing channel from another location" +msgstr "" + +#: ../../mod/new_channel.php:117 ../../mod/mitem.php:149 ../../mod/menu.php:79 +msgid "Create" +msgstr "" + +#: ../../mod/mitem.php:13 ../../mod/menu.php:87 +msgid "Menu not found." +msgstr "" + +#: ../../mod/mitem.php:66 +msgid "Menu element updated." +msgstr "" + +#: ../../mod/mitem.php:70 +msgid "Unable to update menu element." +msgstr "" + +#: ../../mod/mitem.php:76 +msgid "Menu element added." +msgstr "" + +#: ../../mod/mitem.php:80 +msgid "Unable to add menu element." +msgstr "" + +#: ../../mod/mitem.php:116 +msgid "Manage Menu Elements" +msgstr "" + +#: ../../mod/mitem.php:119 +msgid "Edit menu" +msgstr "" + +#: ../../mod/mitem.php:122 +msgid "Edit element" +msgstr "" + +#: ../../mod/mitem.php:123 +msgid "Drop element" +msgstr "" + +#: ../../mod/mitem.php:124 +msgid "New element" +msgstr "" + +#: ../../mod/mitem.php:125 +msgid "Edit this menu container" +msgstr "" + +#: ../../mod/mitem.php:126 +msgid "Add menu element" +msgstr "" + +#: ../../mod/mitem.php:127 +msgid "Delete this menu item" +msgstr "" + +#: ../../mod/mitem.php:128 +msgid "Edit this menu item" +msgstr "" + +#: ../../mod/mitem.php:141 +msgid "New Menu Element" +msgstr "" + +#: ../../mod/mitem.php:143 ../../mod/mitem.php:184 +msgid "Link text" +msgstr "" + +#: ../../mod/mitem.php:144 ../../mod/mitem.php:185 +msgid "URL of link" +msgstr "" + +#: ../../mod/mitem.php:145 ../../mod/mitem.php:186 +msgid "Use Red magic-auth if available" +msgstr "" + +#: ../../mod/mitem.php:146 ../../mod/mitem.php:187 +msgid "Open link in new window" +msgstr "" + +#: ../../mod/mitem.php:148 ../../mod/mitem.php:189 +msgid "Order in list" +msgstr "" + +#: ../../mod/mitem.php:148 ../../mod/mitem.php:189 +msgid "Higher numbers will sink to bottom of listing" +msgstr "" + +#: ../../mod/mitem.php:161 +msgid "Menu item not found." +msgstr "" + +#: ../../mod/mitem.php:170 +msgid "Menu item deleted." +msgstr "" + +#: ../../mod/mitem.php:172 +msgid "Menu item could not be deleted." +msgstr "" + +#: ../../mod/mitem.php:181 +msgid "Edit Menu Element" +msgstr "" + +#: ../../mod/mitem.php:190 ../../mod/menu.php:107 +msgid "Modify" +msgstr "" + +#: ../../mod/editwebpage.php:30 ../../mod/editpost.php:20 +#: ../../mod/editlayout.php:36 ../../mod/editblock.php:36 +msgid "Item not found" +msgstr "" + +#: ../../mod/editwebpage.php:87 +msgid "Edit Webpage" +msgstr "" + +#: ../../mod/editwebpage.php:123 ../../mod/editpost.php:101 +#: ../../mod/editlayout.php:104 ../../mod/editblock.php:118 +msgid "Insert YouTube video" +msgstr "" + +#: ../../mod/editwebpage.php:124 ../../mod/editpost.php:102 +#: ../../mod/editlayout.php:105 ../../mod/editblock.php:119 +msgid "Insert Vorbis [.ogg] video" +msgstr "" + +#: ../../mod/editwebpage.php:125 ../../mod/editpost.php:103 +#: ../../mod/editlayout.php:106 ../../mod/editblock.php:120 +msgid "Insert Vorbis [.ogg] audio" +msgstr "" + +#: ../../mod/editwebpage.php:162 +msgid "Delete Webpage" +msgstr "" + +#: ../../mod/profile.php:111 +msgid "Access to this profile has been restricted." +msgstr "" + +#: ../../mod/removeme.php:49 +msgid "Remove This Channel" +msgstr "" + +#: ../../mod/removeme.php:50 +msgid "" +"This will completely remove this channel from the network. Once this has " +"been done it is not recoverable." +msgstr "" + +#: ../../mod/removeme.php:51 +msgid "Please enter your password for verification:" +msgstr "" + +#: ../../mod/removeme.php:52 +msgid "Remove this channel and all its clones from the network" +msgstr "" + +#: ../../mod/removeme.php:52 +msgid "" +"By default only the instance of the channel located on this hub will be " +"removed from the network" +msgstr "" + +#: ../../mod/removeme.php:53 +msgid "Remove My Account" +msgstr "" + +#: ../../mod/tagrm.php:41 +msgid "Tag removed" +msgstr "" + +#: ../../mod/tagrm.php:79 +msgid "Remove Item Tag" +msgstr "" + +#: ../../mod/tagrm.php:81 +msgid "Select a tag to remove: " +msgstr "" + +#: ../../mod/tagrm.php:93 ../../mod/delegate.php:130 +msgid "Remove" +msgstr "" + +#: ../../mod/rmagic.php:56 +msgid "Remote Authentication" +msgstr "" + +#: ../../mod/rmagic.php:57 +msgid "Enter your channel address (e.g. channel@example.com)" +msgstr "" + +#: ../../mod/rmagic.php:58 +msgid "Authenticate" +msgstr "" + +#: ../../mod/lostpass.php:15 +msgid "No valid account found." +msgstr "" + +#: ../../mod/lostpass.php:29 +msgid "Password reset request issued. Check your email." +msgstr "" + +#: ../../mod/lostpass.php:35 ../../mod/lostpass.php:102 +#, php-format +msgid "Site Member (%s)" +msgstr "" + +#: ../../mod/lostpass.php:40 +#, php-format +msgid "Password reset requested at %s" +msgstr "" + +#: ../../mod/lostpass.php:63 +msgid "" +"Request could not be verified. (You may have previously submitted it.) " +"Password reset failed." +msgstr "" + +#: ../../mod/lostpass.php:86 +msgid "Your password has been reset as requested." +msgstr "" + +#: ../../mod/lostpass.php:87 +msgid "Your new password is" +msgstr "" + +#: ../../mod/lostpass.php:88 +msgid "Save or copy your new password - and then" +msgstr "" + +#: ../../mod/lostpass.php:89 +msgid "click here to login" +msgstr "" + +#: ../../mod/lostpass.php:90 +msgid "" +"Your password may be changed from the Settings page after " +"successful login." +msgstr "" + +#: ../../mod/lostpass.php:107 +#, php-format +msgid "Your password has changed at %s" +msgstr "" + +#: ../../mod/lostpass.php:122 +msgid "Forgot your Password?" +msgstr "" + +#: ../../mod/lostpass.php:123 +msgid "" +"Enter your email address and submit to have your password reset. Then check " +"your email for further instructions." +msgstr "" + +#: ../../mod/lostpass.php:124 +msgid "Email Address" +msgstr "" + +#: ../../mod/lostpass.php:125 +msgid "Reset" +msgstr "" + +#: ../../mod/admin.php:48 +msgid "Theme settings updated." +msgstr "" + +#: ../../mod/admin.php:87 ../../mod/admin.php:417 +msgid "Site" +msgstr "" + +#: ../../mod/admin.php:88 ../../mod/admin.php:682 ../../mod/admin.php:694 +msgid "Users" +msgstr "" + +#: ../../mod/admin.php:89 ../../mod/admin.php:780 ../../mod/admin.php:822 +msgid "Plugins" +msgstr "" + +#: ../../mod/admin.php:90 ../../mod/admin.php:985 ../../mod/admin.php:1021 +msgid "Themes" +msgstr "" + +#: ../../mod/admin.php:91 ../../mod/admin.php:475 +msgid "Server" +msgstr "" + +#: ../../mod/admin.php:92 +msgid "DB updates" +msgstr "" + +#: ../../mod/admin.php:106 ../../mod/admin.php:113 ../../mod/admin.php:1108 +msgid "Logs" +msgstr "" + +#: ../../mod/admin.php:112 +msgid "Plugin Features" +msgstr "" + +#: ../../mod/admin.php:114 +msgid "User registrations waiting for confirmation" +msgstr "" + +#: ../../mod/admin.php:188 +msgid "Message queues" +msgstr "" + +#: ../../mod/admin.php:193 ../../mod/admin.php:416 ../../mod/admin.php:474 +#: ../../mod/admin.php:681 ../../mod/admin.php:779 ../../mod/admin.php:821 +#: ../../mod/admin.php:984 ../../mod/admin.php:1020 ../../mod/admin.php:1107 +msgid "Administration" +msgstr "" + +#: ../../mod/admin.php:194 +msgid "Summary" +msgstr "" + +#: ../../mod/admin.php:196 +msgid "Registered users" +msgstr "" + +#: ../../mod/admin.php:198 ../../mod/admin.php:478 +msgid "Pending registrations" +msgstr "" + +#: ../../mod/admin.php:199 +msgid "Version" +msgstr "" + +#: ../../mod/admin.php:201 ../../mod/admin.php:479 +msgid "Active plugins" +msgstr "" + +#: ../../mod/admin.php:340 +msgid "Site settings updated." +msgstr "" + +#: ../../mod/admin.php:369 ../../mod/settings.php:844 +msgid "No special theme for mobile devices" +msgstr "" + +#: ../../mod/admin.php:371 +msgid "No special theme for accessibility" +msgstr "" + +#: ../../mod/admin.php:396 +msgid "Closed" +msgstr "" + +#: ../../mod/admin.php:397 +msgid "Requires approval" +msgstr "" + +#: ../../mod/admin.php:398 +msgid "Open" +msgstr "" + +#: ../../mod/admin.php:403 +msgid "Private" +msgstr "" + +#: ../../mod/admin.php:404 +msgid "Paid Access" +msgstr "" + +#: ../../mod/admin.php:405 +msgid "Free Access" +msgstr "" + +#: ../../mod/admin.php:406 +msgid "Tiered Access" +msgstr "" + +#: ../../mod/admin.php:419 ../../mod/register.php:180 +msgid "Registration" +msgstr "" + +#: ../../mod/admin.php:420 +msgid "File upload" +msgstr "" + +#: ../../mod/admin.php:421 +msgid "Policies" +msgstr "" + +#: ../../mod/admin.php:422 +msgid "Advanced" +msgstr "" + +#: ../../mod/admin.php:426 +msgid "Site name" +msgstr "" + +#: ../../mod/admin.php:427 +msgid "Banner/Logo" +msgstr "" + +#: ../../mod/admin.php:428 +msgid "System language" +msgstr "" + +#: ../../mod/admin.php:429 +msgid "System theme" +msgstr "" + +#: ../../mod/admin.php:429 +msgid "" +"Default system theme - may be over-ridden by user profiles - change theme settings" +msgstr "" + +#: ../../mod/admin.php:430 +msgid "Mobile system theme" +msgstr "" + +#: ../../mod/admin.php:430 +msgid "Theme for mobile devices" +msgstr "" + +#: ../../mod/admin.php:431 +msgid "Accessibility system theme" +msgstr "" + +#: ../../mod/admin.php:431 +msgid "Accessibility theme" +msgstr "" + +#: ../../mod/admin.php:432 +msgid "Channel to use for this website's static pages" +msgstr "" + +#: ../../mod/admin.php:432 +msgid "Site Channel" +msgstr "" + +#: ../../mod/admin.php:434 +msgid "Maximum image size" +msgstr "" + +#: ../../mod/admin.php:434 +msgid "" +"Maximum size in bytes of uploaded images. Default is 0, which means no " +"limits." +msgstr "" + +#: ../../mod/admin.php:435 +msgid "Register policy" +msgstr "" + +#: ../../mod/admin.php:436 +msgid "Access policy" +msgstr "" + +#: ../../mod/admin.php:437 +msgid "Register text" +msgstr "" + +#: ../../mod/admin.php:437 +msgid "Will be displayed prominently on the registration page." +msgstr "" + +#: ../../mod/admin.php:438 +msgid "Accounts abandoned after x days" +msgstr "" + +#: ../../mod/admin.php:438 +msgid "" +"Will not waste system resources polling external sites for abandonded " +"accounts. Enter 0 for no time limit." +msgstr "" + +#: ../../mod/admin.php:439 +msgid "Allowed friend domains" +msgstr "" + +#: ../../mod/admin.php:439 +msgid "" +"Comma separated list of domains which are allowed to establish friendships " +"with this site. Wildcards are accepted. Empty to allow any domains" +msgstr "" + +#: ../../mod/admin.php:440 +msgid "Allowed email domains" +msgstr "" + +#: ../../mod/admin.php:440 +msgid "" +"Comma separated list of domains which are allowed in email addresses for " +"registrations to this site. Wildcards are accepted. Empty to allow any " +"domains" +msgstr "" + +#: ../../mod/admin.php:441 +msgid "Block public" +msgstr "" + +#: ../../mod/admin.php:441 +msgid "" +"Check to block public access to all otherwise public personal pages on this " +"site unless you are currently logged in." +msgstr "" + +#: ../../mod/admin.php:442 +msgid "Force publish" +msgstr "" + +#: ../../mod/admin.php:442 +msgid "" +"Check to force all profiles on this site to be listed in the site directory." +msgstr "" + +#: ../../mod/admin.php:444 +msgid "Proxy user" +msgstr "" + +#: ../../mod/admin.php:445 +msgid "Proxy URL" +msgstr "" + +#: ../../mod/admin.php:446 +msgid "Network timeout" +msgstr "" + +#: ../../mod/admin.php:446 +msgid "Value is in seconds. Set to 0 for unlimited (not recommended)." +msgstr "" + +#: ../../mod/admin.php:447 +msgid "Delivery interval" +msgstr "" + +#: ../../mod/admin.php:447 +msgid "" +"Delay background delivery processes by this many seconds to reduce system " +"load. Recommend: 4-5 for shared hosts, 2-3 for virtual private servers. 0-1 " +"for large dedicated servers." +msgstr "" + +#: ../../mod/admin.php:448 +msgid "Poll interval" +msgstr "" + +#: ../../mod/admin.php:448 +msgid "" +"Delay background polling processes by this many seconds to reduce system " +"load. If 0, use delivery interval." +msgstr "" + +#: ../../mod/admin.php:449 +msgid "Maximum Load Average" +msgstr "" + +#: ../../mod/admin.php:449 +msgid "" +"Maximum system load before delivery and poll processes are deferred - " +"default 50." +msgstr "" + +#: ../../mod/admin.php:466 +msgid "No server found" +msgstr "" + +#: ../../mod/admin.php:473 ../../mod/admin.php:695 +msgid "ID" +msgstr "" + +#: ../../mod/admin.php:473 +msgid "for channel" +msgstr "" + +#: ../../mod/admin.php:473 +msgid "on server" +msgstr "" + +#: ../../mod/admin.php:473 +msgid "Status" +msgstr "" + +#: ../../mod/admin.php:493 +msgid "Update has been marked successful" +msgstr "" + +#: ../../mod/admin.php:503 +#, php-format +msgid "Executing %s failed. Check system logs." +msgstr "" + +#: ../../mod/admin.php:506 +#, php-format +msgid "Update %s was successfully applied." +msgstr "" + +#: ../../mod/admin.php:510 +#, php-format +msgid "Update %s did not return a status. Unknown if it succeeded." +msgstr "" + +#: ../../mod/admin.php:513 +#, php-format +msgid "Update function %s could not be found." +msgstr "" + +#: ../../mod/admin.php:528 +msgid "No failed updates." +msgstr "" + +#: ../../mod/admin.php:532 +msgid "Failed Updates" +msgstr "" + +#: ../../mod/admin.php:534 +msgid "Mark success (if update was manually applied)" +msgstr "" + +#: ../../mod/admin.php:535 +msgid "Attempt to execute this update step automatically" +msgstr "" + +#: ../../mod/admin.php:561 +#, php-format +msgid "%s user blocked/unblocked" +msgid_plural "%s users blocked/unblocked" +msgstr[0] "" +msgstr[1] "" + +#: ../../mod/admin.php:568 +#, php-format +msgid "%s user deleted" +msgid_plural "%s users deleted" +msgstr[0] "" +msgstr[1] "" + +#: ../../mod/admin.php:599 +msgid "Account not found" +msgstr "" + +#: ../../mod/admin.php:610 +#, php-format +msgid "User '%s' deleted" +msgstr "" + +#: ../../mod/admin.php:619 +#, php-format +msgid "User '%s' unblocked" +msgstr "" + +#: ../../mod/admin.php:619 +#, php-format +msgid "User '%s' blocked" +msgstr "" + +#: ../../mod/admin.php:684 +msgid "select all" +msgstr "" + +#: ../../mod/admin.php:685 +msgid "User registrations waiting for confirm" +msgstr "" + +#: ../../mod/admin.php:686 +msgid "Request date" +msgstr "" + +#: ../../mod/admin.php:687 +msgid "No registrations." +msgstr "" + +#: ../../mod/admin.php:689 +msgid "Deny" +msgstr "" + +#: ../../mod/admin.php:692 ../../mod/connections.php:348 +#: ../../mod/connections.php:490 +msgid "Unblock" +msgstr "" + +#: ../../mod/admin.php:695 +msgid "Register date" +msgstr "" + +#: ../../mod/admin.php:695 +msgid "Last login" +msgstr "" + +#: ../../mod/admin.php:695 +msgid "Expires" +msgstr "" + +#: ../../mod/admin.php:695 +msgid "Service Class" +msgstr "" + +#: ../../mod/admin.php:697 +msgid "" +"Selected users will be deleted!\\n\\nEverything these users had posted on " +"this site will be permanently deleted!\\n\\nAre you sure?" +msgstr "" + +#: ../../mod/admin.php:698 +msgid "" +"The user {0} will be deleted!\\n\\nEverything this user has posted on this " +"site will be permanently deleted!\\n\\nAre you sure?" +msgstr "" + +#: ../../mod/admin.php:739 +#, php-format +msgid "Plugin %s disabled." +msgstr "" + +#: ../../mod/admin.php:743 +#, php-format +msgid "Plugin %s enabled." +msgstr "" + +#: ../../mod/admin.php:753 ../../mod/admin.php:955 +msgid "Disable" +msgstr "" + +#: ../../mod/admin.php:755 ../../mod/admin.php:957 +msgid "Enable" +msgstr "" + +#: ../../mod/admin.php:781 ../../mod/admin.php:986 +msgid "Toggle" +msgstr "" + +#: ../../mod/admin.php:789 ../../mod/admin.php:996 +msgid "Author: " +msgstr "" + +#: ../../mod/admin.php:790 ../../mod/admin.php:997 +msgid "Maintainer: " +msgstr "" + +#: ../../mod/admin.php:919 +msgid "No themes found." +msgstr "" + +#: ../../mod/admin.php:978 +msgid "Screenshot" +msgstr "" + +#: ../../mod/admin.php:1026 +msgid "[Experimental]" +msgstr "" + +#: ../../mod/admin.php:1027 +msgid "[Unsupported]" +msgstr "" + +#: ../../mod/admin.php:1054 +msgid "Log settings updated." +msgstr "" + +#: ../../mod/admin.php:1110 +msgid "Clear" +msgstr "" + +#: ../../mod/admin.php:1116 +msgid "Debugging" +msgstr "" + +#: ../../mod/admin.php:1117 +msgid "Log file" +msgstr "" + +#: ../../mod/admin.php:1117 +msgid "" +"Must be writable by web server. Relative to your Red top-level directory." +msgstr "" + +#: ../../mod/admin.php:1118 +msgid "Log level" +msgstr "" + +#: ../../mod/follow.php:25 +msgid "Channel added." +msgstr "" + +#: ../../mod/zfinger.php:23 +msgid "invalid target signature" +msgstr "" + +#: ../../mod/connections.php:67 +msgid "Could not access contact record." +msgstr "" + +#: ../../mod/connections.php:81 +msgid "Could not locate selected profile." +msgstr "" + +#: ../../mod/connections.php:124 +msgid "Failed to update connection record." +msgstr "" + +#: ../../mod/connections.php:219 +msgid "Could not access address book record." +msgstr "" + +#: ../../mod/connections.php:233 +msgid "Refresh failed - channel is currently unavailable." +msgstr "" + +#: ../../mod/connections.php:240 +msgid "Channel has been unblocked" +msgstr "" + +#: ../../mod/connections.php:241 +msgid "Channel has been blocked" +msgstr "" + +#: ../../mod/connections.php:245 ../../mod/connections.php:257 +#: ../../mod/connections.php:269 ../../mod/connections.php:281 +#: ../../mod/connections.php:296 +msgid "Unable to set address book parameters." +msgstr "" + +#: ../../mod/connections.php:252 +msgid "Channel has been unignored" +msgstr "" + +#: ../../mod/connections.php:253 +msgid "Channel has been ignored" +msgstr "" + +#: ../../mod/connections.php:264 +msgid "Channel has been unarchived" +msgstr "" + +#: ../../mod/connections.php:265 +msgid "Channel has been archived" +msgstr "" + +#: ../../mod/connections.php:276 +msgid "Channel has been unhidden" +msgstr "" + +#: ../../mod/connections.php:277 +msgid "Channel has been hidden" +msgstr "" + +#: ../../mod/connections.php:291 +msgid "Channel has been approved" +msgstr "" + +#: ../../mod/connections.php:292 +msgid "Channel has been unapproved" +msgstr "" + +#: ../../mod/connections.php:310 +msgid "Contact has been removed." +msgstr "" + +#: ../../mod/connections.php:330 +#, php-format +msgid "View %s's profile" +msgstr "" + +#: ../../mod/connections.php:334 +msgid "Refresh Permissions" +msgstr "" + +#: ../../mod/connections.php:337 +msgid "Fetch updated permissions" +msgstr "" + +#: ../../mod/connections.php:341 +msgid "Recent Activity" +msgstr "" + +#: ../../mod/connections.php:344 +msgid "View recent posts and comments" +msgstr "" + +#: ../../mod/connections.php:351 +msgid "Block or Unblock this connection" +msgstr "" + +#: ../../mod/connections.php:355 ../../mod/connections.php:491 +msgid "Unignore" +msgstr "" + +#: ../../mod/connections.php:358 +msgid "Ignore or Unignore this connection" +msgstr "" + +#: ../../mod/connections.php:361 +msgid "Unarchive" +msgstr "" + +#: ../../mod/connections.php:361 +msgid "Archive" +msgstr "" + +#: ../../mod/connections.php:364 +msgid "Archive or Unarchive this connection" +msgstr "" + +#: ../../mod/connections.php:367 +msgid "Unhide" +msgstr "" + +#: ../../mod/connections.php:367 +msgid "Hide" +msgstr "" + +#: ../../mod/connections.php:370 +msgid "Hide or Unhide this connection" +msgstr "" + +#: ../../mod/connections.php:377 +msgid "Delete this connection" +msgstr "" + +#: ../../mod/connections.php:404 ../../mod/network.php:385 +msgid "Me" +msgstr "" + +#: ../../mod/connections.php:406 ../../mod/network.php:386 +msgid "Best Friends" +msgstr "" + +#: ../../mod/connections.php:408 ../../mod/network.php:389 +msgid "Former Friends" +msgstr "" + +#: ../../mod/connections.php:409 ../../mod/network.php:390 +msgid "Acquaintances" +msgstr "" + +#: ../../mod/connections.php:410 +msgid "Unknown" +msgstr "" + +#: ../../mod/connections.php:420 ../../mod/connections.php:449 +msgid "Approve this connection" +msgstr "" + +#: ../../mod/connections.php:420 +msgid "Accept connection to allow communication" +msgstr "" + +#: ../../mod/connections.php:436 +msgid "Automatic Permissions Settings" +msgstr "" + +#: ../../mod/connections.php:436 +#, php-format +msgid "Connections: settings for %s" +msgstr "" + +#: ../../mod/connections.php:440 +msgid "" +"When receiving a channel introduction, any permissions provided here will be " +"applied to the new connection automatically and the introduction approved. " +"Leave this page if you do not wish to use this feature." +msgstr "" + +#: ../../mod/connections.php:442 +msgid "Slide to adjust your degree of friendship" +msgstr "" + +#: ../../mod/connections.php:448 +msgid "inherited" +msgstr "" + +#: ../../mod/connections.php:450 +msgid "Connection has no individual permissions!" +msgstr "" + +#: ../../mod/connections.php:451 +msgid "" +"This may be appropriate based on your privacy settings, though you may wish to review the \"Advanced Permissions\"." +msgstr "" + +#: ../../mod/connections.php:453 +msgid "Profile Visibility" +msgstr "" + +#: ../../mod/connections.php:454 +#, php-format +msgid "" +"Please choose the profile you would like to display to %s when viewing your " +"profile securely." +msgstr "" + +#: ../../mod/connections.php:455 +msgid "Contact Information / Notes" +msgstr "" + +#: ../../mod/connections.php:456 +msgid "Edit contact notes" +msgstr "" + +#: ../../mod/connections.php:458 +msgid "Their Settings" +msgstr "" + +#: ../../mod/connections.php:459 +msgid "My Settings" +msgstr "" + +#: ../../mod/connections.php:461 +msgid "Forum Members" +msgstr "" + +#: ../../mod/connections.php:462 +msgid "Soapbox" +msgstr "" + +#: ../../mod/connections.php:463 +msgid "Full Sharing" +msgstr "" + +#: ../../mod/connections.php:464 +msgid "Cautious Sharing" +msgstr "" + +#: ../../mod/connections.php:465 +msgid "Follow Only" +msgstr "" + +#: ../../mod/connections.php:466 +msgid "Individual Permissions" +msgstr "" + +#: ../../mod/connections.php:467 +msgid "" +"Some permissions may be inherited from your privacy " +"settings, which have higher priority. Changing those on this page will " +"have no effect." +msgstr "" + +#: ../../mod/connections.php:468 +msgid "Advanced Permissions" +msgstr "" + +#: ../../mod/connections.php:469 +msgid "Quick Links" +msgstr "" + +#: ../../mod/connections.php:473 +#, php-format +msgid "Visit %s's profile - %s" +msgstr "" + +#: ../../mod/connections.php:474 +msgid "Block/Unblock contact" +msgstr "" + +#: ../../mod/connections.php:475 +msgid "Ignore contact" +msgstr "" + +#: ../../mod/connections.php:476 +msgid "Repair URL settings" +msgstr "" + +#: ../../mod/connections.php:477 +msgid "View conversations" +msgstr "" + +#: ../../mod/connections.php:479 +msgid "Delete contact" +msgstr "" + +#: ../../mod/connections.php:482 +msgid "Last update:" +msgstr "" + +#: ../../mod/connections.php:484 +msgid "Update public posts" +msgstr "" + +#: ../../mod/connections.php:486 +msgid "Update now" +msgstr "" + +#: ../../mod/connections.php:492 +msgid "Currently blocked" +msgstr "" + +#: ../../mod/connections.php:493 +msgid "Currently ignored" +msgstr "" + +#: ../../mod/connections.php:494 +msgid "Currently archived" +msgstr "" + +#: ../../mod/connections.php:495 +msgid "Currently pending" +msgstr "" + +#: ../../mod/connections.php:496 +msgid "" +"Replies/likes to your public posts may still be visible" +msgstr "" + +#: ../../mod/connections.php:532 ../../mod/connections.php:604 +msgid "Blocked" +msgstr "" + +#: ../../mod/connections.php:537 ../../mod/connections.php:611 +msgid "Ignored" +msgstr "" + +#: ../../mod/connections.php:542 ../../mod/connections.php:625 +msgid "Hidden" +msgstr "" + +#: ../../mod/connections.php:547 ../../mod/connections.php:618 +msgid "Archived" +msgstr "" + +#: ../../mod/connections.php:552 ../../mod/network.php:321 +#: ../../mod/menu.php:57 +msgid "New" +msgstr "" + +#: ../../mod/connections.php:558 +msgid "All" +msgstr "" + +#: ../../mod/connections.php:579 +msgid "Suggestions" +msgstr "" + +#: ../../mod/connections.php:582 +msgid "Suggest new connections" +msgstr "" + +#: ../../mod/connections.php:588 +msgid "Show pending (new) connections" +msgstr "" + +#: ../../mod/connections.php:591 +msgid "All Connections" +msgstr "" + +#: ../../mod/connections.php:594 +msgid "Show all connections" +msgstr "" + +#: ../../mod/connections.php:597 +msgid "Unblocked" +msgstr "" + +#: ../../mod/connections.php:600 +msgid "Only show unblocked connections" +msgstr "" + +#: ../../mod/connections.php:607 +msgid "Only show blocked connections" +msgstr "" + +#: ../../mod/connections.php:614 +msgid "Only show ignored connections" +msgstr "" + +#: ../../mod/connections.php:621 +msgid "Only show archived connections" +msgstr "" + +#: ../../mod/connections.php:628 +msgid "Only show hidden connections" +msgstr "" + +#: ../../mod/connections.php:670 +#, php-format +msgid "%1$s [%2$s]" +msgstr "" + +#: ../../mod/connections.php:671 ../../mod/nogroup.php:41 +msgid "Edit contact" +msgstr "" + +#: ../../mod/connections.php:695 +msgid "Search your connections" +msgstr "" + +#: ../../mod/connections.php:696 +msgid "Finding: " +msgstr "" + +#: ../../mod/network.php:302 +msgid "Commented Order" +msgstr "" + +#: ../../mod/network.php:305 +msgid "Sort by Comment Date" +msgstr "" + +#: ../../mod/network.php:308 +msgid "Posted Order" +msgstr "" + +#: ../../mod/network.php:311 +msgid "Sort by Post Date" +msgstr "" + +#: ../../mod/network.php:315 ../../mod/notifications.php:86 +msgid "Personal" +msgstr "" + +#: ../../mod/network.php:318 +msgid "Posts that mention or involve you" +msgstr "" + +#: ../../mod/network.php:324 +msgid "Activity Stream - by date" +msgstr "" + +#: ../../mod/network.php:331 +msgid "Starred" +msgstr "" + +#: ../../mod/network.php:334 +msgid "Favourite Posts" +msgstr "" + +#: ../../mod/network.php:341 +msgid "Spam" +msgstr "" + +#: ../../mod/network.php:344 +msgid "Posts flagged as SPAM" +msgstr "" + +#: ../../mod/network.php:384 +msgid "Refresh" +msgstr "" + +#: ../../mod/network.php:388 +msgid "Co-workers" +msgstr "" + +#: ../../mod/network.php:391 +msgid "Everybody" +msgstr "" + +#: ../../mod/network.php:408 +msgid "Search Results For:" +msgstr "" + +#: ../../mod/network.php:453 +msgid "No such group" +msgstr "" + +#: ../../mod/network.php:484 +msgid "Connection: " +msgstr "" + +#: ../../mod/network.php:487 +msgid "Invalid connection." +msgstr "" + +#: ../../mod/filestorage.php:35 +msgid "Permission Denied." +msgstr "" + +#: ../../mod/filestorage.php:42 +msgid "Permission denied. VS." +msgstr "" + +#: ../../mod/filestorage.php:79 +msgid "Download" +msgstr "" + +#: ../../mod/filestorage.php:84 +msgid "Used: " +msgstr "" + +#: ../../mod/filestorage.php:86 +msgid "Limit: " +msgstr "" + +#: ../../mod/page.php:35 +msgid "Invalid item." +msgstr "" + +#: ../../mod/import.php:36 +msgid "Nothing to import." +msgstr "" + +#: ../../mod/import.php:58 +msgid "Unable to download data from old server" +msgstr "" + +#: ../../mod/import.php:64 +msgid "Imported file is empty." +msgstr "" + +#: ../../mod/import.php:88 +msgid "" +"Cannot create a duplicate channel identifier on this system. Import failed." +msgstr "" + +#: ../../mod/import.php:106 +msgid "Channel clone failed. Import failed." +msgstr "" + +#: ../../mod/import.php:116 +msgid "Cloned channel not found. Import failed." +msgstr "" + +#: ../../mod/import.php:356 +msgid "Import completed." +msgstr "" + +#: ../../mod/import.php:369 +msgid "You must be logged in to use this feature." +msgstr "" + +#: ../../mod/import.php:374 +msgid "Import Channel" +msgstr "" + +#: ../../mod/import.php:375 +msgid "" +"Use this form to import an existing channel from a different server/hub. You " +"may retrieve the channel identity from the old server/hub via the network or " +"provide an export file. Only identity and connections/relationships will be " +"imported. Importation of content is not yet available." +msgstr "" + +#: ../../mod/import.php:376 +msgid "File to Upload" +msgstr "" + +#: ../../mod/import.php:377 +msgid "Or provide the old server/hub details" +msgstr "" + +#: ../../mod/import.php:378 +msgid "Your old identity address (xyz@example.com)" +msgstr "" + +#: ../../mod/import.php:379 +msgid "Your old login email address" +msgstr "" + +#: ../../mod/import.php:380 +msgid "Your old login password" +msgstr "" + +#: ../../mod/import.php:381 +msgid "" +"For either option, please choose whether to make this hub your new primary " +"address, or whether your old location should continue this role. You will be " +"able to post from either location, but only one can be marked as the primary " +"location for files, photos, and media." +msgstr "" + +#: ../../mod/import.php:382 +msgid "Make this hub my primary location" +msgstr "" + +#: ../../mod/notify.php:54 ../../mod/notifications.php:332 +msgid "No more system notifications." +msgstr "" + +#: ../../mod/notify.php:58 ../../mod/notifications.php:336 +msgid "System Notifications" +msgstr "" + +#: ../../mod/api.php:76 ../../mod/api.php:102 +msgid "Authorize application connection" +msgstr "" + +#: ../../mod/api.php:77 +msgid "Return to your app and insert this Securty Code:" +msgstr "" + +#: ../../mod/api.php:89 +msgid "Please login to continue." +msgstr "" + +#: ../../mod/api.php:104 +msgid "" +"Do you want to authorize this application to access your posts and contacts, " +"and/or create new posts for you?" +msgstr "" + +#: ../../mod/api.php:105 ../../mod/settings.php:1009 +#: ../../mod/settings.php:1014 ../../mod/settings.php:1037 +#: ../../mod/settings.php:1039 ../../mod/settings.php:1040 +#: ../../mod/settings.php:1041 ../../mod/profiles.php:506 +msgid "Yes" +msgstr "" + +#: ../../mod/api.php:106 ../../mod/settings.php:1009 +#: ../../mod/settings.php:1014 ../../mod/settings.php:1037 +#: ../../mod/settings.php:1039 ../../mod/settings.php:1040 +#: ../../mod/settings.php:1041 ../../mod/profiles.php:507 +msgid "No" +msgstr "" + +#: ../../mod/directory.php:160 ../../mod/profiles.php:584 +msgid "Age: " +msgstr "" + +#: ../../mod/directory.php:163 +msgid "Gender: " +msgstr "" + +#: ../../mod/directory.php:222 +msgid "Finding:" +msgstr "" + +#: ../../mod/directory.php:230 +msgid "next page" +msgstr "" + +#: ../../mod/directory.php:230 +msgid "previous page" +msgstr "" + +#: ../../mod/directory.php:237 +msgid "No entries (some entries may be hidden)." +msgstr "" + +#: ../../mod/home.php:76 +#, php-format +msgid "Welcome to %s" +msgstr "" + +#: ../../mod/delegate.php:95 +msgid "No potential page delegates located." +msgstr "" + +#: ../../mod/delegate.php:121 +msgid "Delegate Page Management" +msgstr "" + +#: ../../mod/delegate.php:123 +msgid "" +"Delegates are able to manage all aspects of this account/page except for " +"basic account settings. Please do not delegate your personal account to " +"anybody that you do not trust completely." +msgstr "" + +#: ../../mod/delegate.php:124 +msgid "Existing Page Managers" +msgstr "" + +#: ../../mod/delegate.php:126 +msgid "Existing Page Delegates" +msgstr "" + +#: ../../mod/delegate.php:128 +msgid "Potential Delegates" +msgstr "" + +#: ../../mod/delegate.php:131 +msgid "Add" +msgstr "" + +#: ../../mod/delegate.php:132 +msgid "No entries." +msgstr "" + +#: ../../mod/register.php:43 +msgid "Maximum daily site registrations exceeded. Please try again tomorrow." +msgstr "" + +#: ../../mod/register.php:49 +msgid "" +"Please indicate acceptance of the Terms of Service. Registration failed." +msgstr "" + +#: ../../mod/register.php:77 +msgid "Passwords do not match." +msgstr "" + +#: ../../mod/register.php:105 +msgid "" +"Registration successful. Please check your email for validation instructions." +msgstr "" + +#: ../../mod/register.php:111 +msgid "Your registration is pending approval by the site owner." +msgstr "" + +#: ../../mod/register.php:114 +msgid "Your registration can not be processed." +msgstr "" + +#: ../../mod/register.php:149 +msgid "" +"This site has exceeded the number of allowed daily account registrations. " +"Please try again tomorrow." +msgstr "" + +#: ../../mod/register.php:160 +msgid "Terms of Service" +msgstr "" + +#: ../../mod/register.php:166 +#, php-format +msgid "I accept the %s for this website" +msgstr "" + +#: ../../mod/register.php:168 +#, php-format +msgid "I am over 13 years of age and accept the %s for this website" +msgstr "" + +#: ../../mod/register.php:183 +msgid "Membership on this site is by invitation only." +msgstr "" + +#: ../../mod/register.php:184 +msgid "Please enter your invitation code" +msgstr "" + +#: ../../mod/register.php:187 +msgid "Your email address" +msgstr "" + +#: ../../mod/register.php:188 +msgid "Choose a password" +msgstr "" + +#: ../../mod/register.php:189 +msgid "Please re-enter your password" +msgstr "" + +#: ../../mod/hcard.php:10 +msgid "No profile" +msgstr "" + +#: ../../mod/editpost.php:31 +msgid "Item is not editable" msgstr "" #: ../../mod/invite.php:25 @@ -2972,11 +5345,6 @@ msgstr "" msgid "Enter email addresses, one per line:" msgstr "" -#: ../../mod/invite.php:141 ../../mod/message.php:326 -#: ../../mod/message.php:508 -msgid "Your message:" -msgstr "" - #: ../../mod/invite.php:142 msgid "" "You are cordially invited to join me and some other close friends on the Red " @@ -3009,60 +5377,246 @@ msgid "" "com" msgstr "" -#: ../../mod/allfriends.php:35 +#: ../../mod/group.php:26 +msgid "Collection created." +msgstr "" + +#: ../../mod/group.php:32 +msgid "Could not create collection." +msgstr "" + +#: ../../mod/group.php:60 +msgid "Collection name changed." +msgstr "" + +#: ../../mod/group.php:92 +msgid "Create a collection of channels." +msgstr "" + +#: ../../mod/group.php:93 ../../mod/group.php:189 +msgid "Collection Name: " +msgstr "" + +#: ../../mod/group.php:95 ../../mod/group.php:192 +msgid "Members are visible to other channels" +msgstr "" + +#: ../../mod/group.php:113 +msgid "Collection removed." +msgstr "" + +#: ../../mod/group.php:115 +msgid "Unable to remove collection." +msgstr "" + +#: ../../mod/group.php:188 +msgid "Collection Editor" +msgstr "" + +#: ../../mod/group.php:202 +msgid "Members" +msgstr "" + +#: ../../mod/group.php:204 +msgid "All Connected Channels" +msgstr "" + +#: ../../mod/group.php:237 +msgid "Click on a channel to add or remove." +msgstr "" + +#: ../../mod/regmod.php:12 +msgid "Please login." +msgstr "" + +#: ../../mod/photos.php:83 +msgid "Page owner information could not be retrieved." +msgstr "" + +#: ../../mod/photos.php:103 +msgid "Album not found." +msgstr "" + +#: ../../mod/photos.php:125 ../../mod/photos.php:780 +msgid "Delete Album" +msgstr "" + +#: ../../mod/photos.php:165 ../../mod/photos.php:1041 +msgid "Delete Photo" +msgstr "" + +#: ../../mod/photos.php:510 #, php-format -msgid "Friends of %s" +msgid "%1$s was tagged in %2$s by %3$s" msgstr "" -#: ../../mod/allfriends.php:41 -msgid "No friends to display." +#: ../../mod/photos.php:510 +msgid "a photo" msgstr "" -#: ../../mod/webpages.php:8 ../../mod/connect.php:13 ../../mod/layouts.php:8 -#: ../../mod/filestorage.php:8 ../../mod/blocks.php:10 ../../mod/profile.php:8 -#: ../../boot.php:1640 -msgid "Requested profile is not available." +#: ../../mod/photos.php:586 +msgid "No photos selected" msgstr "" -#: ../../mod/webpages.php:104 ../../mod/layouts.php:105 -#: ../../mod/blocks.php:96 -msgid "View" +#: ../../mod/photos.php:631 +msgid "Access to this item is restricted." msgstr "" -#: ../../mod/api.php:76 ../../mod/api.php:102 -msgid "Authorize application connection" +#: ../../mod/photos.php:696 +#, php-format +msgid "You have used %1$.2f Mbytes of %2$.2f Mbytes photo storage." msgstr "" -#: ../../mod/api.php:77 -msgid "Return to your app and insert this Securty Code:" +#: ../../mod/photos.php:699 +#, php-format +msgid "You have used %1$.2f Mbytes of photo storage." msgstr "" -#: ../../mod/api.php:89 -msgid "Please login to continue." +#: ../../mod/photos.php:707 +msgid "Upload Photos" msgstr "" -#: ../../mod/api.php:104 -msgid "" -"Do you want to authorize this application to access your posts and contacts, " -"and/or create new posts for you?" +#: ../../mod/photos.php:711 ../../mod/photos.php:775 +msgid "New album name: " msgstr "" -#: ../../mod/api.php:105 ../../mod/settings.php:1009 -#: ../../mod/settings.php:1014 ../../mod/settings.php:1037 -#: ../../mod/settings.php:1039 ../../mod/settings.php:1040 -#: ../../mod/settings.php:1041 ../../mod/profiles.php:506 -msgid "Yes" +#: ../../mod/photos.php:712 +msgid "or existing album name: " msgstr "" -#: ../../mod/api.php:106 ../../mod/settings.php:1009 -#: ../../mod/settings.php:1014 ../../mod/settings.php:1037 -#: ../../mod/settings.php:1039 ../../mod/settings.php:1040 -#: ../../mod/settings.php:1041 ../../mod/profiles.php:507 -msgid "No" +#: ../../mod/photos.php:713 +msgid "Do not show a status post for this upload" msgstr "" -#: ../../mod/lastpost.php:16 ../../mod/channel.php:16 -msgid "You must be logged in to see this page." +#: ../../mod/photos.php:715 ../../mod/photos.php:1036 +msgid "Permissions" +msgstr "" + +#: ../../mod/photos.php:764 ../../mod/photos.php:786 ../../mod/photos.php:1212 +#: ../../mod/photos.php:1227 +msgid "Contact Photos" +msgstr "" + +#: ../../mod/photos.php:790 +msgid "Edit Album" +msgstr "" + +#: ../../mod/photos.php:796 +msgid "Show Newest First" +msgstr "" + +#: ../../mod/photos.php:798 +msgid "Show Oldest First" +msgstr "" + +#: ../../mod/photos.php:842 ../../mod/photos.php:1259 +msgid "View Photo" +msgstr "" + +#: ../../mod/photos.php:886 +msgid "Permission denied. Access to this item may be restricted." +msgstr "" + +#: ../../mod/photos.php:888 +msgid "Photo not available" +msgstr "" + +#: ../../mod/photos.php:946 +msgid "Use as profile photo" +msgstr "" + +#: ../../mod/photos.php:970 +msgid "View Full Size" +msgstr "" + +#: ../../mod/photos.php:1024 +msgid "Edit photo" +msgstr "" + +#: ../../mod/photos.php:1026 +msgid "Rotate CW (right)" +msgstr "" + +#: ../../mod/photos.php:1027 +msgid "Rotate CCW (left)" +msgstr "" + +#: ../../mod/photos.php:1029 +msgid "New album name" +msgstr "" + +#: ../../mod/photos.php:1032 +msgid "Caption" +msgstr "" + +#: ../../mod/photos.php:1034 +msgid "Add a Tag" +msgstr "" + +#: ../../mod/photos.php:1038 +msgid "Example: @bob, @Barbara_Jensen, @jim@example.com, #California, #camping" +msgstr "" + +#: ../../mod/photos.php:1265 +msgid "View Album" +msgstr "" + +#: ../../mod/photos.php:1274 +msgid "Recent Photos" +msgstr "" + +#: ../../mod/editlayout.php:68 +msgid "Edit Layout" +msgstr "" + +#: ../../mod/editlayout.php:140 +msgid "Delete Layout" +msgstr "" + +#: ../../mod/common.php:10 +msgid "No channel." +msgstr "" + +#: ../../mod/common.php:47 +msgid "Common connections" +msgstr "" + +#: ../../mod/common.php:52 +msgid "No connections in common." +msgstr "" + +#: ../../mod/layouts.php:52 +msgid "Layout Help" +msgstr "" + +#: ../../mod/layouts.php:55 +msgid "Help with this feature" +msgstr "" + +#: ../../mod/layouts.php:74 +msgid "Layout Name" +msgstr "" + +#: ../../mod/filer.php:35 +msgid "- select -" +msgstr "" + +#: ../../mod/viewconnections.php:57 +msgid "No connections." +msgstr "" + +#: ../../mod/viewconnections.php:69 ../../mod/nogroup.php:40 +#, php-format +msgid "Visit %s's profile [%s]" +msgstr "" + +#: ../../mod/viewconnections.php:84 +msgid "View Connnections" +msgstr "" + +#: ../../mod/subthread.php:105 +#, php-format +msgid "%1$s is following %2$s's %3$s" msgstr "" #: ../../mod/apps.php:8 @@ -3073,22 +5627,337 @@ msgstr "" msgid "Applications" msgstr "" -#: ../../mod/page.php:35 -msgid "Invalid item." +#: ../../mod/suggest.php:41 +msgid "" +"No suggestions available. If this is a new site, please try again in 24 " +"hours." msgstr "" -#: ../../mod/page.php:47 ../../mod/chanview.php:78 ../../mod/home.php:51 -#: ../../mod/magic.php:95 ../../mod/wall_upload.php:35 -msgid "Channel not found." +#: ../../mod/suggest.php:58 +msgid "Ignore/Hide" msgstr "" -#: ../../mod/page.php:83 ../../mod/help.php:56 ../../mod/display.php:92 -#: ../../index.php:229 -msgid "Page not found." +#: ../../mod/match.php:12 +msgid "Profile Match" msgstr "" -#: ../../mod/attach.php:9 -msgid "Item not available." +#: ../../mod/match.php:20 +msgid "No keywords to match. Please add keywords to your default profile." +msgstr "" + +#: ../../mod/match.php:57 +msgid "is interested in:" +msgstr "" + +#: ../../mod/match.php:65 +msgid "No matches" +msgstr "" + +#: ../../mod/dirsearch.php:21 +msgid "This site is not a directory server" +msgstr "" + +#: ../../mod/siteinfo.php:51 +#, php-format +msgid "Version %s" +msgstr "" + +#: ../../mod/siteinfo.php:65 +msgid "Installed plugins/addons/apps:" +msgstr "" + +#: ../../mod/siteinfo.php:78 +msgid "No installed plugins/addons/apps" +msgstr "" + +#: ../../mod/siteinfo.php:81 +msgid "Red" +msgstr "" + +#: ../../mod/siteinfo.php:82 +msgid "" +"This is a hub of the Red Matrix - a global cooperative network of " +"decentralised privacy enhanced websites." +msgstr "" + +#: ../../mod/siteinfo.php:84 +msgid "Running at web location" +msgstr "" + +#: ../../mod/siteinfo.php:85 +msgid "" +"Please visit GetZot.com to learn more " +"about the Red Matrix." +msgstr "" + +#: ../../mod/siteinfo.php:86 +msgid "Bug reports and issues: please visit" +msgstr "" + +#: ../../mod/siteinfo.php:89 +msgid "" +"Suggestions, praise, donations, etc. - please email \"redmatrix\" at " +"librelist - dot com" +msgstr "" + +#: ../../mod/menu.php:17 +msgid "Menu updated." +msgstr "" + +#: ../../mod/menu.php:21 +msgid "Unable to update menu." +msgstr "" + +#: ../../mod/menu.php:26 +msgid "Menu created." +msgstr "" + +#: ../../mod/menu.php:30 +msgid "Unable to create menu." +msgstr "" + +#: ../../mod/menu.php:53 +msgid "Manage Menus" +msgstr "" + +#: ../../mod/menu.php:56 +msgid "Drop" +msgstr "" + +#: ../../mod/menu.php:58 +msgid "Create a new menu" +msgstr "" + +#: ../../mod/menu.php:59 +msgid "Delete this menu" +msgstr "" + +#: ../../mod/menu.php:60 ../../mod/menu.php:104 +msgid "Edit menu contents" +msgstr "" + +#: ../../mod/menu.php:61 +msgid "Edit this menu" +msgstr "" + +#: ../../mod/menu.php:76 +msgid "New Menu" +msgstr "" + +#: ../../mod/menu.php:77 ../../mod/menu.php:105 +msgid "Menu name" +msgstr "" + +#: ../../mod/menu.php:77 ../../mod/menu.php:105 +msgid "Must be unique, only seen by you" +msgstr "" + +#: ../../mod/menu.php:78 ../../mod/menu.php:106 +msgid "Menu title" +msgstr "" + +#: ../../mod/menu.php:78 ../../mod/menu.php:106 +msgid "Menu title as seen by others" +msgstr "" + +#: ../../mod/menu.php:93 +msgid "Menu deleted." +msgstr "" + +#: ../../mod/menu.php:95 +msgid "Menu could not be deleted." +msgstr "" + +#: ../../mod/menu.php:101 +msgid "Edit Menu" +msgstr "" + +#: ../../mod/menu.php:103 +msgid "Add or remove entries to this menu" +msgstr "" + +#: ../../mod/thing.php:109 +msgid "Object store: failed" +msgstr "" + +#: ../../mod/thing.php:113 +msgid "thing/stuff added" +msgstr "" + +#: ../../mod/thing.php:129 +#, php-format +msgid "OBJ: %1$s %2$s %3$s" +msgstr "" + +#: ../../mod/thing.php:175 +msgid "not yet implemented." +msgstr "" + +#: ../../mod/thing.php:181 +msgid "Add Stuff to your Profile" +msgstr "" + +#: ../../mod/thing.php:183 +msgid "Select a profile" +msgstr "" + +#: ../../mod/thing.php:185 +msgid "Select a category of stuff. e.g. I ______ something" +msgstr "" + +#: ../../mod/thing.php:187 +msgid "Name of thing or stuff e.g. something" +msgstr "" + +#: ../../mod/thing.php:188 +msgid "URL of thing or stuff (optional)" +msgstr "" + +#: ../../mod/thing.php:189 +msgid "URL for photo of thing or stuff (optional)" +msgstr "" + +#: ../../mod/notifications.php:26 +msgid "Invalid request identifier." +msgstr "" + +#: ../../mod/notifications.php:76 +msgid "System" +msgstr "" + +#: ../../mod/notifications.php:96 +msgid "Introductions" +msgstr "" + +#: ../../mod/notifications.php:121 +msgid "Show Ignored Requests" +msgstr "" + +#: ../../mod/notifications.php:121 +msgid "Hide Ignored Requests" +msgstr "" + +#: ../../mod/notifications.php:147 ../../mod/notifications.php:193 +msgid "Notification type: " +msgstr "" + +#: ../../mod/notifications.php:148 +msgid "Friend Suggestion" +msgstr "" + +#: ../../mod/notifications.php:150 +#, php-format +msgid "suggested by %s" +msgstr "" + +#: ../../mod/notifications.php:179 +msgid "Claims to be known to you: " +msgstr "" + +#: ../../mod/notifications.php:179 +msgid "yes" +msgstr "" + +#: ../../mod/notifications.php:179 +msgid "no" +msgstr "" + +#: ../../mod/notifications.php:186 +msgid "Approve as: " +msgstr "" + +#: ../../mod/notifications.php:187 +msgid "Friend" +msgstr "" + +#: ../../mod/notifications.php:188 +msgid "Sharer" +msgstr "" + +#: ../../mod/notifications.php:188 +msgid "Fan/Admirer" +msgstr "" + +#: ../../mod/notifications.php:194 +msgid "Friend/Connect Request" +msgstr "" + +#: ../../mod/notifications.php:194 +msgid "New Follower" +msgstr "" + +#: ../../mod/notifications.php:215 +msgid "No introductions." +msgstr "" + +#: ../../mod/notifications.php:257 ../../mod/notifications.php:382 +#: ../../mod/notifications.php:465 +#, php-format +msgid "%s liked %s's post" +msgstr "" + +#: ../../mod/notifications.php:266 ../../mod/notifications.php:391 +#: ../../mod/notifications.php:474 +#, php-format +msgid "%s disliked %s's post" +msgstr "" + +#: ../../mod/notifications.php:280 ../../mod/notifications.php:405 +#: ../../mod/notifications.php:488 +#, php-format +msgid "%s is now friends with %s" +msgstr "" + +#: ../../mod/notifications.php:287 ../../mod/notifications.php:412 +#, php-format +msgid "%s created a new post" +msgstr "" + +#: ../../mod/notifications.php:288 ../../mod/notifications.php:413 +#: ../../mod/notifications.php:497 +#, php-format +msgid "%s commented on %s's post" +msgstr "" + +#: ../../mod/notifications.php:302 +msgid "No more network notifications." +msgstr "" + +#: ../../mod/notifications.php:306 +msgid "Network Notifications" +msgstr "" + +#: ../../mod/notifications.php:427 +msgid "No more personal notifications." +msgstr "" + +#: ../../mod/notifications.php:431 +msgid "Personal Notifications" +msgstr "" + +#: ../../mod/notifications.php:504 +msgid "No more home notifications." +msgstr "" + +#: ../../mod/notifications.php:508 +msgid "Home Notifications" +msgstr "" + +#: ../../mod/editblock.php:82 +msgid "Edit Block" +msgstr "" + +#: ../../mod/editblock.php:156 +msgid "Delete Block" +msgstr "" + +#: ../../mod/tagger.php:98 +#, php-format +msgid "%1$s tagged %2$s's %3$s with %4$s" +msgstr "" + +#: ../../mod/help.php:41 +msgid "Help:" msgstr "" #: ../../mod/setup.php:161 @@ -3127,6 +5996,10 @@ msgstr "" msgid "System check" msgstr "" +#: ../../mod/setup.php:256 ../../mod/events.php:351 +msgid "Next" +msgstr "" + #: ../../mod/setup.php:257 msgid "Check again" msgstr "" @@ -3425,28 +6298,54 @@ msgid "" "IMPORTANT: You will need to [manually] setup a scheduled task for the poller." msgstr "" -#: ../../mod/rpost.php:84 ../../mod/editpost.php:42 -msgid "Edit post" +#: ../../mod/sources.php:27 +msgid "Source created." msgstr "" -#: ../../mod/subthread.php:105 -#, php-format -msgid "%1$s is following %2$s's %3$s" +#: ../../mod/sources.php:39 +msgid "Source updated." msgstr "" -#: ../../mod/update_network.php:23 ../../mod/update_channel.php:43 -#: ../../mod/update_search.php:46 ../../mod/update_display.php:25 -#: ../../mod/update_community.php:18 -msgid "[Embedded content - reload page to view]" +#: ../../mod/sources.php:68 +msgid "Manage remote sources of content for your channel." msgstr "" -#: ../../mod/chanview.php:98 -msgid "toggle full screen mode" +#: ../../mod/sources.php:69 ../../mod/sources.php:79 +msgid "New Source" msgstr "" -#: ../../mod/tagger.php:98 -#, php-format -msgid "%1$s tagged %2$s's %3$s with %4$s" +#: ../../mod/sources.php:80 ../../mod/sources.php:106 +msgid "" +"Import all or selected content from the following channel into this channel " +"and distribute it according to your channel settings." +msgstr "" + +#: ../../mod/sources.php:81 ../../mod/sources.php:107 +msgid "Only import content with these words (one per line)" +msgstr "" + +#: ../../mod/sources.php:81 ../../mod/sources.php:107 +msgid "Leave blank to import all public content" +msgstr "" + +#: ../../mod/sources.php:96 ../../mod/sources.php:122 +msgid "Source not found." +msgstr "" + +#: ../../mod/sources.php:103 +msgid "Edit Source" +msgstr "" + +#: ../../mod/sources.php:104 +msgid "Delete Source" +msgstr "" + +#: ../../mod/sources.php:130 +msgid "Source removed" +msgstr "" + +#: ../../mod/sources.php:132 +msgid "Unable to remove source." msgstr "" #: ../../mod/settings.php:53 @@ -3534,17 +6433,6 @@ msgstr "" msgid "Add application" msgstr "" -#: ../../mod/settings.php:652 ../../mod/settings.php:678 -#: ../../mod/tagrm.php:11 ../../mod/tagrm.php:94 ../../mod/fbrowser.php:82 -#: ../../mod/fbrowser.php:117 -msgid "Cancel" -msgstr "" - -#: ../../mod/settings.php:653 ../../mod/settings.php:679 -#: ../../mod/admin.php:682 ../../mod/crepair.php:148 -msgid "Name" -msgstr "" - #: ../../mod/settings.php:653 msgid "Name of application" msgstr "" @@ -3654,10 +6542,6 @@ msgstr "" msgid "Connector Settings" msgstr "" -#: ../../mod/settings.php:844 ../../mod/admin.php:369 -msgid "No special theme for mobile devices" -msgstr "" - #: ../../mod/settings.php:884 msgid "Display Settings" msgstr "" @@ -3722,10 +6606,6 @@ msgstr "" msgid "Allow us to suggest you as a potential friend to new members?" msgstr "" -#: ../../mod/settings.php:1018 ../../mod/profile_photo.php:298 -msgid "or" -msgstr "" - #: ../../mod/settings.php:1023 msgid "Your channel address is" msgstr "" @@ -3902,1755 +6782,95 @@ msgstr "" msgid "Change the behaviour of this account for special situations" msgstr "" -#: ../../mod/viewconnections.php:28 ../../mod/photos.php:576 -#: ../../mod/display.php:9 ../../mod/search.php:80 ../../mod/community.php:18 -#: ../../mod/directory.php:32 -msgid "Public access denied." +#: ../../mod/item.php:144 +msgid "Unable to locate original post." msgstr "" -#: ../../mod/viewconnections.php:57 -msgid "No connections." +#: ../../mod/item.php:341 +msgid "Empty post discarded." msgstr "" -#: ../../mod/viewconnections.php:69 ../../mod/nogroup.php:40 +#: ../../mod/item.php:383 +msgid "Executable content type not permitted to this channel." +msgstr "" + +#: ../../mod/item.php:793 +msgid "System error. Post not saved." +msgstr "" + +#: ../../mod/item.php:1153 #, php-format -msgid "Visit %s's profile [%s]" +msgid "You have reached your limit of %1$.0f top level posts." msgstr "" -#: ../../mod/viewconnections.php:84 -msgid "View Connnections" -msgstr "" - -#: ../../mod/tagrm.php:41 -msgid "Tag removed" -msgstr "" - -#: ../../mod/tagrm.php:79 -msgid "Remove Item Tag" -msgstr "" - -#: ../../mod/tagrm.php:81 -msgid "Select a tag to remove: " -msgstr "" - -#: ../../mod/tagrm.php:93 ../../mod/delegate.php:130 -msgid "Remove" -msgstr "" - -#: ../../mod/connect.php:59 ../../mod/connect.php:107 -msgid "Continue" -msgstr "" - -#: ../../mod/connect.php:88 -msgid "Premium Channel Setup" -msgstr "" - -#: ../../mod/connect.php:90 -msgid "Enable premium channel connection restrictions" -msgstr "" - -#: ../../mod/connect.php:91 -msgid "" -"Please enter your restrictions or conditions, such as paypal receipt, usage " -"guidelines, etc." -msgstr "" - -#: ../../mod/connect.php:93 ../../mod/connect.php:113 -msgid "" -"This channel may require additional steps or acknowledgement of the " -"following conditions prior to connecting:" -msgstr "" - -#: ../../mod/connect.php:94 -msgid "" -"Potential connections will then see the following text before proceeding:" -msgstr "" - -#: ../../mod/connect.php:95 ../../mod/connect.php:116 -msgid "" -"By continuing, I certify that I have complied with any instructions provided " -"on this page." -msgstr "" - -#: ../../mod/connect.php:104 -msgid "(No specific instructions have been provided by the channel owner.)" -msgstr "" - -#: ../../mod/connect.php:112 -msgid "Restricted or Premium Channel" -msgstr "" - -#: ../../mod/delegate.php:95 -msgid "No potential page delegates located." -msgstr "" - -#: ../../mod/delegate.php:121 -msgid "Delegate Page Management" -msgstr "" - -#: ../../mod/delegate.php:123 -msgid "" -"Delegates are able to manage all aspects of this account/page except for " -"basic account settings. Please do not delegate your personal account to " -"anybody that you do not trust completely." -msgstr "" - -#: ../../mod/delegate.php:124 -msgid "Existing Page Managers" -msgstr "" - -#: ../../mod/delegate.php:126 -msgid "Existing Page Delegates" -msgstr "" - -#: ../../mod/delegate.php:128 -msgid "Potential Delegates" -msgstr "" - -#: ../../mod/delegate.php:131 -msgid "Add" -msgstr "" - -#: ../../mod/delegate.php:132 -msgid "No entries." -msgstr "" - -#: ../../mod/sources.php:27 -msgid "Source created." -msgstr "" - -#: ../../mod/sources.php:39 -msgid "Source updated." -msgstr "" - -#: ../../mod/sources.php:68 -msgid "Manage remote sources of content for your channel." -msgstr "" - -#: ../../mod/sources.php:69 ../../mod/sources.php:79 -msgid "New Source" -msgstr "" - -#: ../../mod/sources.php:80 ../../mod/sources.php:106 -msgid "" -"Import all or selected content from the following channel into this channel " -"and distribute it according to your channel settings." -msgstr "" - -#: ../../mod/sources.php:81 ../../mod/sources.php:107 -msgid "Only import content with these words (one per line)" -msgstr "" - -#: ../../mod/sources.php:81 ../../mod/sources.php:107 -msgid "Leave blank to import all public content" -msgstr "" - -#: ../../mod/sources.php:82 ../../mod/sources.php:109 -#: ../../mod/new_channel.php:110 -msgid "Channel Name" -msgstr "" - -#: ../../mod/sources.php:96 ../../mod/sources.php:122 -msgid "Source not found." -msgstr "" - -#: ../../mod/sources.php:103 -msgid "Edit Source" -msgstr "" - -#: ../../mod/sources.php:104 -msgid "Delete Source" -msgstr "" - -#: ../../mod/sources.php:130 -msgid "Source removed" -msgstr "" - -#: ../../mod/sources.php:132 -msgid "Unable to remove source." -msgstr "" - -#: ../../mod/admin.php:48 -msgid "Theme settings updated." -msgstr "" - -#: ../../mod/admin.php:87 ../../mod/admin.php:417 -msgid "Site" -msgstr "" - -#: ../../mod/admin.php:88 ../../mod/admin.php:678 ../../mod/admin.php:690 -msgid "Users" -msgstr "" - -#: ../../mod/admin.php:89 ../../mod/admin.php:776 ../../mod/admin.php:818 -msgid "Plugins" -msgstr "" - -#: ../../mod/admin.php:90 ../../mod/admin.php:981 ../../mod/admin.php:1017 -msgid "Themes" -msgstr "" - -#: ../../mod/admin.php:91 ../../mod/admin.php:475 -msgid "Server" -msgstr "" - -#: ../../mod/admin.php:92 -msgid "DB updates" -msgstr "" - -#: ../../mod/admin.php:106 ../../mod/admin.php:113 ../../mod/admin.php:1104 -msgid "Logs" -msgstr "" - -#: ../../mod/admin.php:112 -msgid "Plugin Features" -msgstr "" - -#: ../../mod/admin.php:114 -msgid "User registrations waiting for confirmation" -msgstr "" - -#: ../../mod/admin.php:188 -msgid "Message queues" -msgstr "" - -#: ../../mod/admin.php:193 ../../mod/admin.php:416 ../../mod/admin.php:474 -#: ../../mod/admin.php:677 ../../mod/admin.php:775 ../../mod/admin.php:817 -#: ../../mod/admin.php:980 ../../mod/admin.php:1016 ../../mod/admin.php:1103 -msgid "Administration" -msgstr "" - -#: ../../mod/admin.php:194 -msgid "Summary" -msgstr "" - -#: ../../mod/admin.php:196 -msgid "Registered users" -msgstr "" - -#: ../../mod/admin.php:198 ../../mod/admin.php:478 -msgid "Pending registrations" -msgstr "" - -#: ../../mod/admin.php:199 -msgid "Version" -msgstr "" - -#: ../../mod/admin.php:201 ../../mod/admin.php:479 -msgid "Active plugins" -msgstr "" - -#: ../../mod/admin.php:340 -msgid "Site settings updated." -msgstr "" - -#: ../../mod/admin.php:371 -msgid "No special theme for accessibility" -msgstr "" - -#: ../../mod/admin.php:396 -msgid "Closed" -msgstr "" - -#: ../../mod/admin.php:397 -msgid "Requires approval" -msgstr "" - -#: ../../mod/admin.php:398 -msgid "Open" -msgstr "" - -#: ../../mod/admin.php:403 -msgid "Private" -msgstr "" - -#: ../../mod/admin.php:404 -msgid "Paid Access" -msgstr "" - -#: ../../mod/admin.php:405 -msgid "Free Access" -msgstr "" - -#: ../../mod/admin.php:406 -msgid "Tiered Access" -msgstr "" - -#: ../../mod/admin.php:419 ../../mod/register.php:180 -msgid "Registration" -msgstr "" - -#: ../../mod/admin.php:420 -msgid "File upload" -msgstr "" - -#: ../../mod/admin.php:421 -msgid "Policies" -msgstr "" - -#: ../../mod/admin.php:422 -msgid "Advanced" -msgstr "" - -#: ../../mod/admin.php:426 -msgid "Site name" -msgstr "" - -#: ../../mod/admin.php:427 -msgid "Banner/Logo" -msgstr "" - -#: ../../mod/admin.php:428 -msgid "System language" -msgstr "" - -#: ../../mod/admin.php:429 -msgid "System theme" -msgstr "" - -#: ../../mod/admin.php:429 -msgid "" -"Default system theme - may be over-ridden by user profiles - change theme settings" -msgstr "" - -#: ../../mod/admin.php:430 -msgid "Mobile system theme" -msgstr "" - -#: ../../mod/admin.php:430 -msgid "Theme for mobile devices" -msgstr "" - -#: ../../mod/admin.php:431 -msgid "Accessibility system theme" -msgstr "" - -#: ../../mod/admin.php:431 -msgid "Accessibility theme" -msgstr "" - -#: ../../mod/admin.php:432 -msgid "Channel to use for this website's static pages" -msgstr "" - -#: ../../mod/admin.php:432 -msgid "Site Channel" -msgstr "" - -#: ../../mod/admin.php:434 -msgid "Maximum image size" -msgstr "" - -#: ../../mod/admin.php:434 -msgid "" -"Maximum size in bytes of uploaded images. Default is 0, which means no " -"limits." -msgstr "" - -#: ../../mod/admin.php:435 -msgid "Register policy" -msgstr "" - -#: ../../mod/admin.php:436 -msgid "Access policy" -msgstr "" - -#: ../../mod/admin.php:437 -msgid "Register text" -msgstr "" - -#: ../../mod/admin.php:437 -msgid "Will be displayed prominently on the registration page." -msgstr "" - -#: ../../mod/admin.php:438 -msgid "Accounts abandoned after x days" -msgstr "" - -#: ../../mod/admin.php:438 -msgid "" -"Will not waste system resources polling external sites for abandonded " -"accounts. Enter 0 for no time limit." -msgstr "" - -#: ../../mod/admin.php:439 -msgid "Allowed friend domains" -msgstr "" - -#: ../../mod/admin.php:439 -msgid "" -"Comma separated list of domains which are allowed to establish friendships " -"with this site. Wildcards are accepted. Empty to allow any domains" -msgstr "" - -#: ../../mod/admin.php:440 -msgid "Allowed email domains" -msgstr "" - -#: ../../mod/admin.php:440 -msgid "" -"Comma separated list of domains which are allowed in email addresses for " -"registrations to this site. Wildcards are accepted. Empty to allow any " -"domains" -msgstr "" - -#: ../../mod/admin.php:441 -msgid "Block public" -msgstr "" - -#: ../../mod/admin.php:441 -msgid "" -"Check to block public access to all otherwise public personal pages on this " -"site unless you are currently logged in." -msgstr "" - -#: ../../mod/admin.php:442 -msgid "Force publish" -msgstr "" - -#: ../../mod/admin.php:442 -msgid "" -"Check to force all profiles on this site to be listed in the site directory." -msgstr "" - -#: ../../mod/admin.php:444 -msgid "Proxy user" -msgstr "" - -#: ../../mod/admin.php:445 -msgid "Proxy URL" -msgstr "" - -#: ../../mod/admin.php:446 -msgid "Network timeout" -msgstr "" - -#: ../../mod/admin.php:446 -msgid "Value is in seconds. Set to 0 for unlimited (not recommended)." -msgstr "" - -#: ../../mod/admin.php:447 -msgid "Delivery interval" -msgstr "" - -#: ../../mod/admin.php:447 -msgid "" -"Delay background delivery processes by this many seconds to reduce system " -"load. Recommend: 4-5 for shared hosts, 2-3 for virtual private servers. 0-1 " -"for large dedicated servers." -msgstr "" - -#: ../../mod/admin.php:448 -msgid "Poll interval" -msgstr "" - -#: ../../mod/admin.php:448 -msgid "" -"Delay background polling processes by this many seconds to reduce system " -"load. If 0, use delivery interval." -msgstr "" - -#: ../../mod/admin.php:449 -msgid "Maximum Load Average" -msgstr "" - -#: ../../mod/admin.php:449 -msgid "" -"Maximum system load before delivery and poll processes are deferred - " -"default 50." -msgstr "" - -#: ../../mod/admin.php:466 -msgid "No server found" -msgstr "" - -#: ../../mod/admin.php:473 -msgid "ID" -msgstr "" - -#: ../../mod/admin.php:473 -msgid "for channel" -msgstr "" - -#: ../../mod/admin.php:473 -msgid "on server" -msgstr "" - -#: ../../mod/admin.php:473 -msgid "Status" -msgstr "" - -#: ../../mod/admin.php:493 -msgid "Update has been marked successful" -msgstr "" - -#: ../../mod/admin.php:503 +#: ../../mod/item.php:1159 #, php-format -msgid "Executing %s failed. Check system logs." +msgid "You have reached your limit of %1$.0f webpages." msgstr "" -#: ../../mod/admin.php:506 +#: ../../mod/attach.php:9 +msgid "Item not available." +msgstr "" + +#: ../../mod/manage.php:63 #, php-format -msgid "Update %s was successfully applied." +msgid "You have created %1$.0f of %2$.0f allowed channels." msgstr "" -#: ../../mod/admin.php:510 +#: ../../mod/manage.php:71 +msgid "Create a new channel" +msgstr "" + +#: ../../mod/manage.php:76 +msgid "Channel Manager" +msgstr "" + +#: ../../mod/manage.php:77 +msgid "Current Channel" +msgstr "" + +#: ../../mod/manage.php:79 +msgid "Attach to one of your channels by selecting it." +msgstr "" + +#: ../../mod/manage.php:80 +msgid "Default Channel" +msgstr "" + +#: ../../mod/manage.php:81 +msgid "Make Default" +msgstr "" + +#: ../../mod/allfriends.php:35 #, php-format -msgid "Update %s did not return a status. Unknown if it succeeded." +msgid "Friends of %s" msgstr "" -#: ../../mod/admin.php:513 -#, php-format -msgid "Update function %s could not be found." +#: ../../mod/allfriends.php:41 +msgid "No friends to display." msgstr "" -#: ../../mod/admin.php:528 -msgid "No failed updates." +#: ../../mod/nogroup.php:58 +msgid "Contacts who are not members of a group" msgstr "" -#: ../../mod/admin.php:532 -msgid "Failed Updates" +#: ../../mod/channel.php:16 +msgid "You must be logged in to see this page." msgstr "" -#: ../../mod/admin.php:534 -msgid "Mark success (if update was manually applied)" +#: ../../mod/channel.php:120 +msgid "Insufficient permissions. Request redirected to profile page." msgstr "" -#: ../../mod/admin.php:535 -msgid "Attempt to execute this update step automatically" -msgstr "" - -#: ../../mod/admin.php:561 -#, php-format -msgid "%s user blocked/unblocked" -msgid_plural "%s users blocked/unblocked" -msgstr[0] "" -msgstr[1] "" - -#: ../../mod/admin.php:568 -#, php-format -msgid "%s user deleted" -msgid_plural "%s users deleted" -msgstr[0] "" -msgstr[1] "" - -#: ../../mod/admin.php:599 -msgid "Account not found" -msgstr "" - -#: ../../mod/admin.php:610 -#, php-format -msgid "User '%s' deleted" -msgstr "" - -#: ../../mod/admin.php:619 -#, php-format -msgid "User '%s' unblocked" -msgstr "" - -#: ../../mod/admin.php:619 -#, php-format -msgid "User '%s' blocked" -msgstr "" - -#: ../../mod/admin.php:680 -msgid "select all" -msgstr "" - -#: ../../mod/admin.php:681 -msgid "User registrations waiting for confirm" -msgstr "" - -#: ../../mod/admin.php:682 -msgid "Request date" -msgstr "" - -#: ../../mod/admin.php:683 -msgid "No registrations." -msgstr "" - -#: ../../mod/admin.php:684 ../../mod/intro.php:11 ../../mod/intro.php:98 -#: ../../mod/notifications.php:159 ../../mod/notifications.php:206 -msgid "Approve" -msgstr "" - -#: ../../mod/admin.php:685 -msgid "Deny" -msgstr "" - -#: ../../mod/admin.php:687 ../../mod/intro.php:14 ../../mod/intro.php:99 -#: ../../mod/connections.php:348 ../../mod/connections.php:490 -msgid "Block" -msgstr "" - -#: ../../mod/admin.php:688 ../../mod/connections.php:348 -#: ../../mod/connections.php:490 -msgid "Unblock" -msgstr "" - -#: ../../mod/admin.php:691 -msgid "Register date" -msgstr "" - -#: ../../mod/admin.php:691 -msgid "Last login" -msgstr "" - -#: ../../mod/admin.php:691 -msgid "Expires" -msgstr "" - -#: ../../mod/admin.php:691 -msgid "Service Class" -msgstr "" - -#: ../../mod/admin.php:693 +#: ../../mod/post.php:119 msgid "" -"Selected users will be deleted!\\n\\nEverything these users had posted on " -"this site will be permanently deleted!\\n\\nAre you sure?" +"Remote authentication blocked. You are logged into this site locally. Please " +"logout and retry." msgstr "" -#: ../../mod/admin.php:694 -msgid "" -"The user {0} will be deleted!\\n\\nEverything this user has posted on this " -"site will be permanently deleted!\\n\\nAre you sure?" -msgstr "" - -#: ../../mod/admin.php:735 +#: ../../mod/post.php:132 #, php-format -msgid "Plugin %s disabled." -msgstr "" - -#: ../../mod/admin.php:739 -#, php-format -msgid "Plugin %s enabled." -msgstr "" - -#: ../../mod/admin.php:749 ../../mod/admin.php:951 -msgid "Disable" -msgstr "" - -#: ../../mod/admin.php:751 ../../mod/admin.php:953 -msgid "Enable" -msgstr "" - -#: ../../mod/admin.php:777 ../../mod/admin.php:982 -msgid "Toggle" -msgstr "" - -#: ../../mod/admin.php:785 ../../mod/admin.php:992 -msgid "Author: " -msgstr "" - -#: ../../mod/admin.php:786 ../../mod/admin.php:993 -msgid "Maintainer: " -msgstr "" - -#: ../../mod/admin.php:915 -msgid "No themes found." -msgstr "" - -#: ../../mod/admin.php:974 -msgid "Screenshot" -msgstr "" - -#: ../../mod/admin.php:1022 -msgid "[Experimental]" -msgstr "" - -#: ../../mod/admin.php:1023 -msgid "[Unsupported]" -msgstr "" - -#: ../../mod/admin.php:1050 -msgid "Log settings updated." -msgstr "" - -#: ../../mod/admin.php:1106 -msgid "Clear" -msgstr "" - -#: ../../mod/admin.php:1112 -msgid "Debugging" -msgstr "" - -#: ../../mod/admin.php:1113 -msgid "Log file" -msgstr "" - -#: ../../mod/admin.php:1113 -msgid "" -"Must be writable by web server. Relative to your Red top-level directory." -msgstr "" - -#: ../../mod/admin.php:1114 -msgid "Log level" -msgstr "" - -#: ../../mod/mitem.php:13 ../../mod/menu.php:87 -msgid "Menu not found." -msgstr "" - -#: ../../mod/mitem.php:66 -msgid "Menu element updated." -msgstr "" - -#: ../../mod/mitem.php:70 -msgid "Unable to update menu element." -msgstr "" - -#: ../../mod/mitem.php:76 -msgid "Menu element added." -msgstr "" - -#: ../../mod/mitem.php:80 -msgid "Unable to add menu element." -msgstr "" - -#: ../../mod/mitem.php:97 ../../mod/xchan.php:25 ../../mod/menu.php:113 -msgid "Not found." -msgstr "" - -#: ../../mod/mitem.php:116 -msgid "Manage Menu Elements" -msgstr "" - -#: ../../mod/mitem.php:119 -msgid "Edit menu" -msgstr "" - -#: ../../mod/mitem.php:122 -msgid "Edit element" -msgstr "" - -#: ../../mod/mitem.php:123 -msgid "Drop element" -msgstr "" - -#: ../../mod/mitem.php:124 -msgid "New element" -msgstr "" - -#: ../../mod/mitem.php:125 -msgid "Edit this menu container" -msgstr "" - -#: ../../mod/mitem.php:126 -msgid "Add menu element" -msgstr "" - -#: ../../mod/mitem.php:127 -msgid "Delete this menu item" -msgstr "" - -#: ../../mod/mitem.php:128 -msgid "Edit this menu item" -msgstr "" - -#: ../../mod/mitem.php:141 -msgid "New Menu Element" -msgstr "" - -#: ../../mod/mitem.php:143 ../../mod/mitem.php:184 -msgid "Link text" -msgstr "" - -#: ../../mod/mitem.php:144 ../../mod/mitem.php:185 -msgid "URL of link" -msgstr "" - -#: ../../mod/mitem.php:145 ../../mod/mitem.php:186 -msgid "Use Red magic-auth if available" -msgstr "" - -#: ../../mod/mitem.php:146 ../../mod/mitem.php:187 -msgid "Open link in new window" -msgstr "" - -#: ../../mod/mitem.php:148 ../../mod/mitem.php:189 -msgid "Order in list" -msgstr "" - -#: ../../mod/mitem.php:148 ../../mod/mitem.php:189 -msgid "Higher numbers will sink to bottom of listing" -msgstr "" - -#: ../../mod/mitem.php:149 ../../mod/menu.php:79 ../../mod/new_channel.php:117 -msgid "Create" -msgstr "" - -#: ../../mod/mitem.php:161 -msgid "Menu item not found." -msgstr "" - -#: ../../mod/mitem.php:170 -msgid "Menu item deleted." -msgstr "" - -#: ../../mod/mitem.php:172 -msgid "Menu item could not be deleted." -msgstr "" - -#: ../../mod/mitem.php:181 -msgid "Edit Menu Element" -msgstr "" - -#: ../../mod/mitem.php:190 ../../mod/menu.php:107 -msgid "Modify" -msgstr "" - -#: ../../mod/group.php:26 -msgid "Collection created." -msgstr "" - -#: ../../mod/group.php:32 -msgid "Could not create collection." -msgstr "" - -#: ../../mod/group.php:60 -msgid "Collection name changed." -msgstr "" - -#: ../../mod/group.php:92 -msgid "Create a collection of channels." -msgstr "" - -#: ../../mod/group.php:93 ../../mod/group.php:189 -msgid "Collection Name: " -msgstr "" - -#: ../../mod/group.php:95 ../../mod/group.php:192 -msgid "Members are visible to other channels" -msgstr "" - -#: ../../mod/group.php:113 -msgid "Collection removed." -msgstr "" - -#: ../../mod/group.php:115 -msgid "Unable to remove collection." -msgstr "" - -#: ../../mod/group.php:188 -msgid "Collection Editor" -msgstr "" - -#: ../../mod/group.php:202 -msgid "Members" -msgstr "" - -#: ../../mod/group.php:204 -msgid "All Connected Channels" -msgstr "" - -#: ../../mod/group.php:237 -msgid "Click on a channel to add or remove." -msgstr "" - -#: ../../mod/photos.php:83 -msgid "Page owner information could not be retrieved." -msgstr "" - -#: ../../mod/photos.php:103 -msgid "Album not found." -msgstr "" - -#: ../../mod/photos.php:125 ../../mod/photos.php:780 -msgid "Delete Album" -msgstr "" - -#: ../../mod/photos.php:165 ../../mod/photos.php:1041 -msgid "Delete Photo" -msgstr "" - -#: ../../mod/photos.php:510 -#, php-format -msgid "%1$s was tagged in %2$s by %3$s" -msgstr "" - -#: ../../mod/photos.php:510 -msgid "a photo" -msgstr "" - -#: ../../mod/photos.php:586 -msgid "No photos selected" -msgstr "" - -#: ../../mod/photos.php:631 -msgid "Access to this item is restricted." -msgstr "" - -#: ../../mod/photos.php:696 -#, php-format -msgid "You have used %1$.2f Mbytes of %2$.2f Mbytes photo storage." -msgstr "" - -#: ../../mod/photos.php:699 -#, php-format -msgid "You have used %1$.2f Mbytes of photo storage." -msgstr "" - -#: ../../mod/photos.php:707 -msgid "Upload Photos" -msgstr "" - -#: ../../mod/photos.php:711 ../../mod/photos.php:775 -msgid "New album name: " -msgstr "" - -#: ../../mod/photos.php:712 -msgid "or existing album name: " -msgstr "" - -#: ../../mod/photos.php:713 -msgid "Do not show a status post for this upload" -msgstr "" - -#: ../../mod/photos.php:715 ../../mod/photos.php:1036 -msgid "Permissions" -msgstr "" - -#: ../../mod/photos.php:764 ../../mod/photos.php:786 ../../mod/photos.php:1212 -#: ../../mod/photos.php:1227 -msgid "Contact Photos" -msgstr "" - -#: ../../mod/photos.php:790 -msgid "Edit Album" -msgstr "" - -#: ../../mod/photos.php:796 -msgid "Show Newest First" -msgstr "" - -#: ../../mod/photos.php:798 -msgid "Show Oldest First" -msgstr "" - -#: ../../mod/photos.php:842 ../../mod/photos.php:1259 -msgid "View Photo" -msgstr "" - -#: ../../mod/photos.php:886 -msgid "Permission denied. Access to this item may be restricted." -msgstr "" - -#: ../../mod/photos.php:888 -msgid "Photo not available" -msgstr "" - -#: ../../mod/photos.php:946 -msgid "Use as profile photo" -msgstr "" - -#: ../../mod/photos.php:970 -msgid "View Full Size" -msgstr "" - -#: ../../mod/photos.php:1024 -msgid "Edit photo" -msgstr "" - -#: ../../mod/photos.php:1026 -msgid "Rotate CW (right)" -msgstr "" - -#: ../../mod/photos.php:1027 -msgid "Rotate CCW (left)" -msgstr "" - -#: ../../mod/photos.php:1029 -msgid "New album name" -msgstr "" - -#: ../../mod/photos.php:1032 -msgid "Caption" -msgstr "" - -#: ../../mod/photos.php:1034 -msgid "Add a Tag" -msgstr "" - -#: ../../mod/photos.php:1038 -msgid "Example: @bob, @Barbara_Jensen, @jim@example.com, #California, #camping" -msgstr "" - -#: ../../mod/photos.php:1265 -msgid "View Album" -msgstr "" - -#: ../../mod/photos.php:1274 -msgid "Recent Photos" -msgstr "" - -#: ../../mod/ping.php:160 -msgid "sent you a private message" -msgstr "" - -#: ../../mod/ping.php:218 -msgid "added your channel" -msgstr "" - -#: ../../mod/ping.php:230 ../../boot.php:1858 ../../boot.php:1938 -msgid "g A l F d" -msgstr "" - -#: ../../mod/ping.php:252 ../../boot.php:1904 ../../boot.php:1979 -msgid "[today]" -msgstr "" - -#: ../../mod/ping.php:262 -msgid "posted an event" -msgstr "" - -#: ../../mod/filer.php:35 -msgid "- select -" -msgstr "" - -#: ../../mod/menu.php:17 -msgid "Menu updated." -msgstr "" - -#: ../../mod/menu.php:21 -msgid "Unable to update menu." -msgstr "" - -#: ../../mod/menu.php:26 -msgid "Menu created." -msgstr "" - -#: ../../mod/menu.php:30 -msgid "Unable to create menu." -msgstr "" - -#: ../../mod/menu.php:53 -msgid "Manage Menus" -msgstr "" - -#: ../../mod/menu.php:56 -msgid "Drop" -msgstr "" - -#: ../../mod/menu.php:57 ../../mod/network.php:321 -#: ../../mod/connections.php:552 -msgid "New" -msgstr "" - -#: ../../mod/menu.php:58 -msgid "Create a new menu" -msgstr "" - -#: ../../mod/menu.php:59 -msgid "Delete this menu" -msgstr "" - -#: ../../mod/menu.php:60 ../../mod/menu.php:104 -msgid "Edit menu contents" -msgstr "" - -#: ../../mod/menu.php:61 -msgid "Edit this menu" -msgstr "" - -#: ../../mod/menu.php:76 -msgid "New Menu" -msgstr "" - -#: ../../mod/menu.php:77 ../../mod/menu.php:105 -msgid "Menu name" -msgstr "" - -#: ../../mod/menu.php:77 ../../mod/menu.php:105 -msgid "Must be unique, only seen by you" -msgstr "" - -#: ../../mod/menu.php:78 ../../mod/menu.php:106 -msgid "Menu title" -msgstr "" - -#: ../../mod/menu.php:78 ../../mod/menu.php:106 -msgid "Menu title as seen by others" -msgstr "" - -#: ../../mod/menu.php:93 -msgid "Menu deleted." -msgstr "" - -#: ../../mod/menu.php:95 -msgid "Menu could not be deleted." -msgstr "" - -#: ../../mod/menu.php:101 -msgid "Edit Menu" -msgstr "" - -#: ../../mod/menu.php:103 -msgid "Add or remove entries to this menu" -msgstr "" - -#: ../../mod/home.php:76 -#, php-format -msgid "Welcome to %s" -msgstr "" - -#: ../../mod/message.php:19 -msgid "Check Mail" -msgstr "" - -#: ../../mod/message.php:56 -msgid "Unable to lookup recipient." -msgstr "" - -#: ../../mod/message.php:64 -msgid "Unable to communicate with requested channel." -msgstr "" - -#: ../../mod/message.php:71 -msgid "Cannot verify requested channel." -msgstr "" - -#: ../../mod/message.php:97 -msgid "Selected channel has private message restrictions. Send failed." -msgstr "" - -#: ../../mod/message.php:223 ../../mod/notifications.php:101 -msgid "Messages" -msgstr "" - -#: ../../mod/message.php:234 -msgid "Message deleted." -msgstr "" - -#: ../../mod/message.php:241 -msgid "Conversation removed." -msgstr "" - -#: ../../mod/message.php:258 -msgid "Message recalled." -msgstr "" - -#: ../../mod/message.php:316 -msgid "Send Private Message" -msgstr "" - -#: ../../mod/message.php:317 ../../mod/message.php:503 -msgid "To:" -msgstr "" - -#: ../../mod/message.php:322 ../../mod/message.php:505 -msgid "Subject:" -msgstr "" - -#: ../../mod/message.php:359 -msgid "No messages." -msgstr "" - -#: ../../mod/message.php:375 ../../mod/message.php:472 -msgid "Delete message" -msgstr "" - -#: ../../mod/message.php:377 -msgid "D, d M Y - g:i A" -msgstr "" - -#: ../../mod/message.php:396 -msgid "Message not found." -msgstr "" - -#: ../../mod/message.php:473 -msgid "Recall message" -msgstr "" - -#: ../../mod/message.php:475 -msgid "Message has been recalled." -msgstr "" - -#: ../../mod/message.php:492 -msgid "Private Conversation" -msgstr "" - -#: ../../mod/message.php:496 -msgid "Delete conversation" -msgstr "" - -#: ../../mod/message.php:498 -msgid "" -"No secure communications available. You may be able to " -"respond from the sender's profile page." -msgstr "" - -#: ../../mod/message.php:502 -msgid "Send Reply" -msgstr "" - -#: ../../mod/hcard.php:10 -msgid "No profile" -msgstr "" - -#: ../../mod/layouts.php:52 -msgid "Layout Help" -msgstr "" - -#: ../../mod/layouts.php:55 -msgid "Help with this feature" -msgstr "" - -#: ../../mod/layouts.php:74 -msgid "Layout Name" -msgstr "" - -#: ../../mod/help.php:41 -msgid "Help:" -msgstr "" - -#: ../../mod/help.php:53 ../../index.php:226 -msgid "Not Found" -msgstr "" - -#: ../../mod/rmagic.php:56 -msgid "Remote Authentication" -msgstr "" - -#: ../../mod/rmagic.php:57 -msgid "Enter your channel address (e.g. channel@example.com)" -msgstr "" - -#: ../../mod/rmagic.php:58 -msgid "Authenticate" -msgstr "" - -#: ../../mod/network.php:164 ../../mod/search.php:20 -msgid "Remove term" -msgstr "" - -#: ../../mod/network.php:302 -msgid "Commented Order" -msgstr "" - -#: ../../mod/network.php:305 -msgid "Sort by Comment Date" -msgstr "" - -#: ../../mod/network.php:308 -msgid "Posted Order" -msgstr "" - -#: ../../mod/network.php:311 -msgid "Sort by Post Date" -msgstr "" - -#: ../../mod/network.php:315 ../../mod/notifications.php:86 -msgid "Personal" -msgstr "" - -#: ../../mod/network.php:318 -msgid "Posts that mention or involve you" -msgstr "" - -#: ../../mod/network.php:324 -msgid "Activity Stream - by date" -msgstr "" - -#: ../../mod/network.php:331 -msgid "Starred" -msgstr "" - -#: ../../mod/network.php:334 -msgid "Favourite Posts" -msgstr "" - -#: ../../mod/network.php:341 -msgid "Spam" -msgstr "" - -#: ../../mod/network.php:344 -msgid "Posts flagged as SPAM" -msgstr "" - -#: ../../mod/network.php:384 -msgid "Refresh" -msgstr "" - -#: ../../mod/network.php:385 ../../mod/connections.php:404 -msgid "Me" -msgstr "" - -#: ../../mod/network.php:386 ../../mod/connections.php:406 -msgid "Best Friends" -msgstr "" - -#: ../../mod/network.php:388 -msgid "Co-workers" -msgstr "" - -#: ../../mod/network.php:389 ../../mod/connections.php:408 -msgid "Former Friends" -msgstr "" - -#: ../../mod/network.php:390 ../../mod/connections.php:409 -msgid "Acquaintances" -msgstr "" - -#: ../../mod/network.php:391 -msgid "Everybody" -msgstr "" - -#: ../../mod/network.php:408 -msgid "Search Results For:" -msgstr "" - -#: ../../mod/network.php:453 -msgid "No such group" -msgstr "" - -#: ../../mod/network.php:484 -msgid "Connection: " -msgstr "" - -#: ../../mod/network.php:487 -msgid "Invalid connection." -msgstr "" - -#: ../../mod/intro.php:17 ../../mod/intro.php:100 -#: ../../mod/connections.php:355 ../../mod/connections.php:491 -#: ../../mod/notifications.php:51 ../../mod/notifications.php:162 -#: ../../mod/notifications.php:208 -msgid "Ignore" -msgstr "" - -#: ../../mod/intro.php:29 ../../mod/connections.php:122 -msgid "Connection updated." -msgstr "" - -#: ../../mod/intro.php:31 -msgid "Connection update failed." -msgstr "" - -#: ../../mod/intro.php:56 -msgid "Introductions and Connection Requests" -msgstr "" - -#: ../../mod/intro.php:67 -msgid "No pending introductions." -msgstr "" - -#: ../../mod/intro.php:72 -msgid "System error. Please try again later." -msgstr "" - -#: ../../mod/intro.php:95 ../../mod/connections.php:496 -#: ../../mod/notifications.php:155 ../../mod/notifications.php:202 -msgid "Hide this contact from others" -msgstr "" - -#: ../../mod/intro.php:96 ../../mod/notifications.php:156 -#: ../../mod/notifications.php:203 -msgid "Post a new friend activity" -msgstr "" - -#: ../../mod/intro.php:96 ../../mod/notifications.php:156 -#: ../../mod/notifications.php:203 -msgid "if applicable" -msgstr "" - -#: ../../mod/intro.php:101 ../../mod/notifications.php:35 -#: ../../mod/notifications.php:163 ../../mod/notifications.php:209 -msgid "Discard" -msgstr "" - -#: ../../mod/connections.php:67 -msgid "Could not access contact record." -msgstr "" - -#: ../../mod/connections.php:81 -msgid "Could not locate selected profile." -msgstr "" - -#: ../../mod/connections.php:124 -msgid "Failed to update connection record." -msgstr "" - -#: ../../mod/connections.php:219 -msgid "Could not access address book record." -msgstr "" - -#: ../../mod/connections.php:233 -msgid "Refresh failed - channel is currently unavailable." -msgstr "" - -#: ../../mod/connections.php:240 -msgid "Channel has been unblocked" -msgstr "" - -#: ../../mod/connections.php:241 -msgid "Channel has been blocked" -msgstr "" - -#: ../../mod/connections.php:245 ../../mod/connections.php:257 -#: ../../mod/connections.php:269 ../../mod/connections.php:281 -#: ../../mod/connections.php:296 -msgid "Unable to set address book parameters." -msgstr "" - -#: ../../mod/connections.php:252 -msgid "Channel has been unignored" -msgstr "" - -#: ../../mod/connections.php:253 -msgid "Channel has been ignored" -msgstr "" - -#: ../../mod/connections.php:264 -msgid "Channel has been unarchived" -msgstr "" - -#: ../../mod/connections.php:265 -msgid "Channel has been archived" -msgstr "" - -#: ../../mod/connections.php:276 -msgid "Channel has been unhidden" -msgstr "" - -#: ../../mod/connections.php:277 -msgid "Channel has been hidden" -msgstr "" - -#: ../../mod/connections.php:291 -msgid "Channel has been approved" -msgstr "" - -#: ../../mod/connections.php:292 -msgid "Channel has been unapproved" -msgstr "" - -#: ../../mod/connections.php:310 -msgid "Contact has been removed." -msgstr "" - -#: ../../mod/connections.php:330 -#, php-format -msgid "View %s's profile" -msgstr "" - -#: ../../mod/connections.php:334 -msgid "Refresh Permissions" -msgstr "" - -#: ../../mod/connections.php:337 -msgid "Fetch updated permissions" -msgstr "" - -#: ../../mod/connections.php:341 -msgid "Recent Activity" -msgstr "" - -#: ../../mod/connections.php:344 -msgid "View recent posts and comments" -msgstr "" - -#: ../../mod/connections.php:351 -msgid "Block or Unblock this connection" -msgstr "" - -#: ../../mod/connections.php:355 ../../mod/connections.php:491 -msgid "Unignore" -msgstr "" - -#: ../../mod/connections.php:358 -msgid "Ignore or Unignore this connection" -msgstr "" - -#: ../../mod/connections.php:361 -msgid "Unarchive" -msgstr "" - -#: ../../mod/connections.php:361 -msgid "Archive" -msgstr "" - -#: ../../mod/connections.php:364 -msgid "Archive or Unarchive this connection" -msgstr "" - -#: ../../mod/connections.php:367 -msgid "Unhide" -msgstr "" - -#: ../../mod/connections.php:367 -msgid "Hide" -msgstr "" - -#: ../../mod/connections.php:370 -msgid "Hide or Unhide this connection" -msgstr "" - -#: ../../mod/connections.php:377 -msgid "Delete this connection" -msgstr "" - -#: ../../mod/connections.php:410 -msgid "Unknown" -msgstr "" - -#: ../../mod/connections.php:420 ../../mod/connections.php:449 -msgid "Approve this connection" -msgstr "" - -#: ../../mod/connections.php:420 -msgid "Accept connection to allow communication" -msgstr "" - -#: ../../mod/connections.php:436 -msgid "Automatic Permissions Settings" -msgstr "" - -#: ../../mod/connections.php:436 -#, php-format -msgid "Connections: settings for %s" -msgstr "" - -#: ../../mod/connections.php:440 -msgid "" -"When receiving a channel introduction, any permissions provided here will be " -"applied to the new connection automatically and the introduction approved. " -"Leave this page if you do not wish to use this feature." -msgstr "" - -#: ../../mod/connections.php:442 -msgid "Slide to adjust your degree of friendship" -msgstr "" - -#: ../../mod/connections.php:448 -msgid "inherited" -msgstr "" - -#: ../../mod/connections.php:450 -msgid "Connection has no individual permissions!" -msgstr "" - -#: ../../mod/connections.php:451 -msgid "" -"This may be appropriate based on your privacy settings, though you may wish to review the \"Advanced Permissions\"." -msgstr "" - -#: ../../mod/connections.php:453 -msgid "Profile Visibility" -msgstr "" - -#: ../../mod/connections.php:454 -#, php-format -msgid "" -"Please choose the profile you would like to display to %s when viewing your " -"profile securely." -msgstr "" - -#: ../../mod/connections.php:455 -msgid "Contact Information / Notes" -msgstr "" - -#: ../../mod/connections.php:456 -msgid "Edit contact notes" -msgstr "" - -#: ../../mod/connections.php:458 -msgid "Their Settings" -msgstr "" - -#: ../../mod/connections.php:459 -msgid "My Settings" -msgstr "" - -#: ../../mod/connections.php:461 -msgid "Forum Members" -msgstr "" - -#: ../../mod/connections.php:462 -msgid "Soapbox" -msgstr "" - -#: ../../mod/connections.php:463 -msgid "Full Sharing" -msgstr "" - -#: ../../mod/connections.php:464 -msgid "Cautious Sharing" -msgstr "" - -#: ../../mod/connections.php:465 -msgid "Follow Only" -msgstr "" - -#: ../../mod/connections.php:466 -msgid "Individual Permissions" -msgstr "" - -#: ../../mod/connections.php:467 -msgid "" -"Some permissions may be inherited from your privacy " -"settings, which have higher priority. Changing those on this page will " -"have no effect." -msgstr "" - -#: ../../mod/connections.php:468 -msgid "Advanced Permissions" -msgstr "" - -#: ../../mod/connections.php:469 -msgid "Quick Links" -msgstr "" - -#: ../../mod/connections.php:473 -#, php-format -msgid "Visit %s's profile - %s" -msgstr "" - -#: ../../mod/connections.php:474 -msgid "Block/Unblock contact" -msgstr "" - -#: ../../mod/connections.php:475 -msgid "Ignore contact" -msgstr "" - -#: ../../mod/connections.php:476 -msgid "Repair URL settings" -msgstr "" - -#: ../../mod/connections.php:477 -msgid "View conversations" -msgstr "" - -#: ../../mod/connections.php:479 -msgid "Delete contact" -msgstr "" - -#: ../../mod/connections.php:482 -msgid "Last update:" -msgstr "" - -#: ../../mod/connections.php:484 -msgid "Update public posts" -msgstr "" - -#: ../../mod/connections.php:486 -msgid "Update now" -msgstr "" - -#: ../../mod/connections.php:492 -msgid "Currently blocked" -msgstr "" - -#: ../../mod/connections.php:493 -msgid "Currently ignored" -msgstr "" - -#: ../../mod/connections.php:494 -msgid "Currently archived" -msgstr "" - -#: ../../mod/connections.php:495 -msgid "Currently pending" -msgstr "" - -#: ../../mod/connections.php:496 -msgid "" -"Replies/likes to your public posts may still be visible" -msgstr "" - -#: ../../mod/connections.php:532 ../../mod/connections.php:604 -msgid "Blocked" -msgstr "" - -#: ../../mod/connections.php:537 ../../mod/connections.php:611 -msgid "Ignored" -msgstr "" - -#: ../../mod/connections.php:542 ../../mod/connections.php:625 -msgid "Hidden" -msgstr "" - -#: ../../mod/connections.php:547 ../../mod/connections.php:618 -msgid "Archived" -msgstr "" - -#: ../../mod/connections.php:558 -msgid "All" -msgstr "" - -#: ../../mod/connections.php:579 -msgid "Suggestions" -msgstr "" - -#: ../../mod/connections.php:582 -msgid "Suggest new connections" -msgstr "" - -#: ../../mod/connections.php:588 -msgid "Show pending (new) connections" -msgstr "" - -#: ../../mod/connections.php:591 -msgid "All Connections" -msgstr "" - -#: ../../mod/connections.php:594 -msgid "Show all connections" -msgstr "" - -#: ../../mod/connections.php:597 -msgid "Unblocked" -msgstr "" - -#: ../../mod/connections.php:600 -msgid "Only show unblocked connections" -msgstr "" - -#: ../../mod/connections.php:607 -msgid "Only show blocked connections" -msgstr "" - -#: ../../mod/connections.php:614 -msgid "Only show ignored connections" -msgstr "" - -#: ../../mod/connections.php:621 -msgid "Only show archived connections" -msgstr "" - -#: ../../mod/connections.php:628 -msgid "Only show hidden connections" -msgstr "" - -#: ../../mod/connections.php:670 -#, php-format -msgid "%1$s [%2$s]" -msgstr "" - -#: ../../mod/connections.php:671 ../../mod/nogroup.php:41 -msgid "Edit contact" -msgstr "" - -#: ../../mod/connections.php:695 -msgid "Search your connections" -msgstr "" - -#: ../../mod/connections.php:696 -msgid "Finding: " -msgstr "" - -#: ../../mod/dirsearch.php:21 -msgid "This site is not a directory server" -msgstr "" - -#: ../../mod/lockview.php:34 -msgid "Remote privacy information not available." -msgstr "" - -#: ../../mod/lockview.php:43 -msgid "Visible to:" +msgid "Welcome %s. Remote authentication successful." msgstr "" #: ../../mod/profiles.php:18 ../../mod/profiles.php:138 @@ -5726,10 +6946,6 @@ msgstr "" msgid "Address" msgstr "" -#: ../../mod/profiles.php:367 ../../mod/pubsites.php:31 -msgid "Location" -msgstr "" - #: ../../mod/profiles.php:450 msgid "Profile updated." msgstr "" @@ -5889,1294 +7105,71 @@ msgid "" "be visible to anybody using the internet." msgstr "" -#: ../../mod/profiles.php:584 ../../mod/directory.php:160 -msgid "Age: " -msgstr "" - #: ../../mod/profiles.php:623 msgid "Edit/Manage Profiles" msgstr "" -#: ../../mod/profiles.php:624 ../../boot.php:1755 -msgid "Change profile photo" +#: ../../mod/events.php:66 +msgid "Event title and start time are required." msgstr "" -#: ../../mod/profiles.php:625 ../../boot.php:1762 -msgid "Create New Profile" +#: ../../mod/events.php:281 +msgid "l, F j" msgstr "" -#: ../../mod/profiles.php:636 ../../boot.php:1776 -msgid "Profile Image" +#: ../../mod/events.php:303 +msgid "Edit event" msgstr "" -#: ../../mod/profiles.php:639 ../../boot.php:1779 -msgid "visible to everybody" +#: ../../mod/events.php:349 +msgid "Create New Event" msgstr "" -#: ../../mod/profiles.php:640 ../../boot.php:1780 -msgid "Edit visibility" +#: ../../mod/events.php:350 +msgid "Previous" msgstr "" -#: ../../mod/new_channel.php:107 -msgid "Add a Channel" +#: ../../mod/events.php:425 +msgid "hour:minute" msgstr "" -#: ../../mod/new_channel.php:108 -msgid "" -"A channel is your own collection of related web pages. A channel can be used " -"to hold social network profiles, blogs, conversation groups and forums, " -"celebrity pages, and much more. You may create as many channels as your " -"service provider allows." +#: ../../mod/events.php:435 +msgid "Event details" msgstr "" -#: ../../mod/new_channel.php:111 -msgid "" -"Examples: \"Bob Jameson\", \"Lisa and her Horses\", \"Soccer\", \"Aviation " -"Group\" " -msgstr "" - -#: ../../mod/new_channel.php:112 -msgid "Choose a short nickname" -msgstr "" - -#: ../../mod/new_channel.php:113 -msgid "" -"Your nickname will be used to create an easily remembered channel address " -"(like an email address) which you can share with others." -msgstr "" - -#: ../../mod/new_channel.php:114 -msgid "" -"Or import an existing channel from another location" -msgstr "" - -#: ../../mod/filestorage.php:35 -msgid "Permission Denied." -msgstr "" - -#: ../../mod/filestorage.php:42 -msgid "Permission denied. VS." -msgstr "" - -#: ../../mod/filestorage.php:79 -msgid "Download" -msgstr "" - -#: ../../mod/filestorage.php:84 -msgid "Used: " -msgstr "" - -#: ../../mod/filestorage.php:86 -msgid "Limit: " -msgstr "" - -#: ../../mod/lostpass.php:15 -msgid "No valid account found." -msgstr "" - -#: ../../mod/lostpass.php:29 -msgid "Password reset request issued. Check your email." -msgstr "" - -#: ../../mod/lostpass.php:35 ../../mod/lostpass.php:102 +#: ../../mod/events.php:436 #, php-format -msgid "Site Member (%s)" +msgid "Format is %s %s. Starting date and Title are required." msgstr "" -#: ../../mod/lostpass.php:40 -#, php-format -msgid "Password reset requested at %s" +#: ../../mod/events.php:438 +msgid "Event Starts:" msgstr "" -#: ../../mod/lostpass.php:63 -msgid "" -"Request could not be verified. (You may have previously submitted it.) " -"Password reset failed." +#: ../../mod/events.php:438 ../../mod/events.php:452 +msgid "Required" msgstr "" -#: ../../mod/lostpass.php:85 ../../boot.php:1469 -msgid "Password Reset" +#: ../../mod/events.php:441 +msgid "Finish date/time is not known or not relevant" msgstr "" -#: ../../mod/lostpass.php:86 -msgid "Your password has been reset as requested." +#: ../../mod/events.php:443 +msgid "Event Finishes:" msgstr "" -#: ../../mod/lostpass.php:87 -msgid "Your new password is" +#: ../../mod/events.php:446 +msgid "Adjust for viewer timezone" msgstr "" -#: ../../mod/lostpass.php:88 -msgid "Save or copy your new password - and then" +#: ../../mod/events.php:448 +msgid "Description:" msgstr "" -#: ../../mod/lostpass.php:89 -msgid "click here to login" +#: ../../mod/events.php:452 +msgid "Title:" msgstr "" -#: ../../mod/lostpass.php:90 -msgid "" -"Your password may be changed from the Settings page after " -"successful login." -msgstr "" - -#: ../../mod/lostpass.php:107 -#, php-format -msgid "Your password has changed at %s" -msgstr "" - -#: ../../mod/lostpass.php:122 -msgid "Forgot your Password?" -msgstr "" - -#: ../../mod/lostpass.php:123 -msgid "" -"Enter your email address and submit to have your password reset. Then check " -"your email for further instructions." -msgstr "" - -#: ../../mod/lostpass.php:124 -msgid "Email Address" -msgstr "" - -#: ../../mod/lostpass.php:125 -msgid "Reset" -msgstr "" - -#: ../../mod/import.php:36 -msgid "Nothing to import." -msgstr "" - -#: ../../mod/import.php:58 -msgid "Unable to download data from old server" -msgstr "" - -#: ../../mod/import.php:64 -msgid "Imported file is empty." -msgstr "" - -#: ../../mod/import.php:88 -msgid "" -"Cannot create a duplicate channel identifier on this system. Import failed." -msgstr "" - -#: ../../mod/import.php:106 -msgid "Channel clone failed. Import failed." -msgstr "" - -#: ../../mod/import.php:116 -msgid "Cloned channel not found. Import failed." -msgstr "" - -#: ../../mod/import.php:356 -msgid "Import completed." -msgstr "" - -#: ../../mod/import.php:369 -msgid "You must be logged in to use this feature." -msgstr "" - -#: ../../mod/import.php:374 -msgid "Import Channel" -msgstr "" - -#: ../../mod/import.php:375 -msgid "" -"Use this form to import an existing channel from a different server/hub. You " -"may retrieve the channel identity from the old server/hub via the network or " -"provide an export file. Only identity and connections/relationships will be " -"imported. Importation of content is not yet available." -msgstr "" - -#: ../../mod/import.php:376 -msgid "File to Upload" -msgstr "" - -#: ../../mod/import.php:377 -msgid "Or provide the old server/hub details" -msgstr "" - -#: ../../mod/import.php:378 -msgid "Your old identity address (xyz@example.com)" -msgstr "" - -#: ../../mod/import.php:379 -msgid "Your old login email address" -msgstr "" - -#: ../../mod/import.php:380 -msgid "Your old login password" -msgstr "" - -#: ../../mod/import.php:381 -msgid "" -"For either option, please choose whether to make this hub your new primary " -"address, or whether your old location should continue this role. You will be " -"able to post from either location, but only one can be marked as the primary " -"location for files, photos, and media." -msgstr "" - -#: ../../mod/import.php:382 -msgid "Make this hub my primary location" -msgstr "" - -#: ../../mod/manage.php:63 -#, php-format -msgid "You have created %1$.0f of %2$.0f allowed channels." -msgstr "" - -#: ../../mod/manage.php:71 -msgid "Create a new channel" -msgstr "" - -#: ../../mod/manage.php:76 -msgid "Channel Manager" -msgstr "" - -#: ../../mod/manage.php:77 -msgid "Current Channel" -msgstr "" - -#: ../../mod/manage.php:79 -msgid "Attach to one of your channels by selecting it." -msgstr "" - -#: ../../mod/manage.php:80 -msgid "Default Channel" -msgstr "" - -#: ../../mod/manage.php:81 -msgid "Make Default" -msgstr "" - -#: ../../mod/vote.php:97 -msgid "Total votes" -msgstr "" - -#: ../../mod/vote.php:98 -msgid "Average Rating" -msgstr "" - -#: ../../mod/match.php:12 -msgid "Profile Match" -msgstr "" - -#: ../../mod/match.php:20 -msgid "No keywords to match. Please add keywords to your default profile." -msgstr "" - -#: ../../mod/match.php:57 -msgid "is interested in:" -msgstr "" - -#: ../../mod/match.php:65 -msgid "No matches" -msgstr "" - -#: ../../mod/crepair.php:102 -msgid "Contact settings applied." -msgstr "" - -#: ../../mod/crepair.php:104 -msgid "Contact update failed." -msgstr "" - -#: ../../mod/crepair.php:129 ../../mod/fsuggest.php:20 -#: ../../mod/fsuggest.php:92 -msgid "Contact not found." -msgstr "" - -#: ../../mod/crepair.php:135 -msgid "Repair Contact Settings" -msgstr "" - -#: ../../mod/crepair.php:137 -msgid "" -"WARNING: This is highly advanced and if you enter incorrect " -"information your communications with this contact may stop working." -msgstr "" - -#: ../../mod/crepair.php:138 -msgid "" -"Please use your browser 'Back' button now if you are " -"uncertain what to do on this page." -msgstr "" - -#: ../../mod/crepair.php:144 -msgid "Return to contact editor" -msgstr "" - -#: ../../mod/crepair.php:149 -msgid "Account Nickname" -msgstr "" - -#: ../../mod/crepair.php:150 -msgid "@Tagname - overrides Name/Nickname" -msgstr "" - -#: ../../mod/crepair.php:151 -msgid "Account URL" -msgstr "" - -#: ../../mod/crepair.php:152 -msgid "Friend Request URL" -msgstr "" - -#: ../../mod/crepair.php:153 -msgid "Friend Confirm URL" -msgstr "" - -#: ../../mod/crepair.php:154 -msgid "Notification Endpoint URL" -msgstr "" - -#: ../../mod/crepair.php:155 -msgid "Poll/Feed URL" -msgstr "" - -#: ../../mod/crepair.php:156 -msgid "New photo from this URL" -msgstr "" - -#: ../../mod/zfinger.php:23 -msgid "invalid target signature" -msgstr "" - -#: ../../mod/follow.php:25 -msgid "Channel added." -msgstr "" - -#: ../../mod/editlayout.php:36 ../../mod/editwebpage.php:30 -#: ../../mod/editpost.php:20 ../../mod/editblock.php:36 -msgid "Item not found" -msgstr "" - -#: ../../mod/editlayout.php:68 -msgid "Edit Layout" -msgstr "" - -#: ../../mod/editlayout.php:104 ../../mod/editwebpage.php:123 -#: ../../mod/editpost.php:101 ../../mod/editblock.php:118 -msgid "Insert YouTube video" -msgstr "" - -#: ../../mod/editlayout.php:105 ../../mod/editwebpage.php:124 -#: ../../mod/editpost.php:102 ../../mod/editblock.php:119 -msgid "Insert Vorbis [.ogg] video" -msgstr "" - -#: ../../mod/editlayout.php:106 ../../mod/editwebpage.php:125 -#: ../../mod/editpost.php:103 ../../mod/editblock.php:120 -msgid "Insert Vorbis [.ogg] audio" -msgstr "" - -#: ../../mod/editlayout.php:140 -msgid "Delete Layout" -msgstr "" - -#: ../../mod/nogroup.php:58 -msgid "Contacts who are not members of a group" -msgstr "" - -#: ../../mod/profile_photo.php:54 -msgid "Image uploaded but image cropping failed." -msgstr "" - -#: ../../mod/profile_photo.php:107 -msgid "Image resize failed." -msgstr "" - -#: ../../mod/profile_photo.php:151 -msgid "" -"Shift-reload the page or clear browser cache if the new photo does not " -"display immediately." -msgstr "" - -#: ../../mod/profile_photo.php:173 -#, php-format -msgid "Image exceeds size limit of %d" -msgstr "" - -#: ../../mod/profile_photo.php:182 -msgid "Unable to process image." -msgstr "" - -#: ../../mod/profile_photo.php:224 ../../mod/profile_photo.php:272 -msgid "Photo not available." -msgstr "" - -#: ../../mod/profile_photo.php:291 -msgid "Upload File:" -msgstr "" - -#: ../../mod/profile_photo.php:292 -msgid "Select a profile:" -msgstr "" - -#: ../../mod/profile_photo.php:293 -msgid "Upload Profile Photo" -msgstr "" - -#: ../../mod/profile_photo.php:294 -msgid "Upload" -msgstr "" - -#: ../../mod/profile_photo.php:298 -msgid "skip this step" -msgstr "" - -#: ../../mod/profile_photo.php:298 -msgid "select a photo from your photo albums" -msgstr "" - -#: ../../mod/profile_photo.php:312 -msgid "Crop Image" -msgstr "" - -#: ../../mod/profile_photo.php:313 -msgid "Please adjust the image cropping for optimum viewing." -msgstr "" - -#: ../../mod/profile_photo.php:315 -msgid "Done Editing" -msgstr "" - -#: ../../mod/profile_photo.php:350 -msgid "Image uploaded successfully." -msgstr "" - -#: ../../mod/profile_photo.php:352 -msgid "Image upload failed." -msgstr "" - -#: ../../mod/profile_photo.php:361 -#, php-format -msgid "Image size reduction [%s] failed." -msgstr "" - -#: ../../mod/editwebpage.php:87 -msgid "Edit Webpage" -msgstr "" - -#: ../../mod/editwebpage.php:162 -msgid "Delete Webpage" -msgstr "" - -#: ../../mod/notifications.php:26 -msgid "Invalid request identifier." -msgstr "" - -#: ../../mod/notifications.php:76 -msgid "System" -msgstr "" - -#: ../../mod/notifications.php:96 -msgid "Introductions" -msgstr "" - -#: ../../mod/notifications.php:121 -msgid "Show Ignored Requests" -msgstr "" - -#: ../../mod/notifications.php:121 -msgid "Hide Ignored Requests" -msgstr "" - -#: ../../mod/notifications.php:147 ../../mod/notifications.php:193 -msgid "Notification type: " -msgstr "" - -#: ../../mod/notifications.php:148 -msgid "Friend Suggestion" -msgstr "" - -#: ../../mod/notifications.php:150 -#, php-format -msgid "suggested by %s" -msgstr "" - -#: ../../mod/notifications.php:179 -msgid "Claims to be known to you: " -msgstr "" - -#: ../../mod/notifications.php:179 -msgid "yes" -msgstr "" - -#: ../../mod/notifications.php:179 -msgid "no" -msgstr "" - -#: ../../mod/notifications.php:186 -msgid "Approve as: " -msgstr "" - -#: ../../mod/notifications.php:187 -msgid "Friend" -msgstr "" - -#: ../../mod/notifications.php:188 -msgid "Sharer" -msgstr "" - -#: ../../mod/notifications.php:188 -msgid "Fan/Admirer" -msgstr "" - -#: ../../mod/notifications.php:194 -msgid "Friend/Connect Request" -msgstr "" - -#: ../../mod/notifications.php:194 -msgid "New Follower" -msgstr "" - -#: ../../mod/notifications.php:215 -msgid "No introductions." -msgstr "" - -#: ../../mod/notifications.php:257 ../../mod/notifications.php:382 -#: ../../mod/notifications.php:465 -#, php-format -msgid "%s liked %s's post" -msgstr "" - -#: ../../mod/notifications.php:266 ../../mod/notifications.php:391 -#: ../../mod/notifications.php:474 -#, php-format -msgid "%s disliked %s's post" -msgstr "" - -#: ../../mod/notifications.php:280 ../../mod/notifications.php:405 -#: ../../mod/notifications.php:488 -#, php-format -msgid "%s is now friends with %s" -msgstr "" - -#: ../../mod/notifications.php:287 ../../mod/notifications.php:412 -#, php-format -msgid "%s created a new post" -msgstr "" - -#: ../../mod/notifications.php:288 ../../mod/notifications.php:413 -#: ../../mod/notifications.php:497 -#, php-format -msgid "%s commented on %s's post" -msgstr "" - -#: ../../mod/notifications.php:302 -msgid "No more network notifications." -msgstr "" - -#: ../../mod/notifications.php:306 -msgid "Network Notifications" -msgstr "" - -#: ../../mod/notifications.php:332 ../../mod/notify.php:54 -msgid "No more system notifications." -msgstr "" - -#: ../../mod/notifications.php:336 ../../mod/notify.php:58 -msgid "System Notifications" -msgstr "" - -#: ../../mod/notifications.php:427 -msgid "No more personal notifications." -msgstr "" - -#: ../../mod/notifications.php:431 -msgid "Personal Notifications" -msgstr "" - -#: ../../mod/notifications.php:504 -msgid "No more home notifications." -msgstr "" - -#: ../../mod/notifications.php:508 -msgid "Home Notifications" -msgstr "" - -#: ../../mod/blocks.php:65 -msgid "Block Name" -msgstr "" - -#: ../../mod/oexchange.php:23 -msgid "Unable to find your hub." -msgstr "" - -#: ../../mod/oexchange.php:37 -msgid "Post successful." -msgstr "" - -#: ../../mod/editpost.php:31 -msgid "Item is not editable" -msgstr "" - -#: ../../mod/profile.php:111 -msgid "Access to this profile has been restricted." -msgstr "" - -#: ../../mod/poke.php:159 -msgid "Poke/Prod" -msgstr "" - -#: ../../mod/poke.php:160 -msgid "poke, prod or do other things to somebody" -msgstr "" - -#: ../../mod/poke.php:161 -msgid "Recipient" -msgstr "" - -#: ../../mod/poke.php:162 -msgid "Choose what you wish to do to recipient" -msgstr "" - -#: ../../mod/poke.php:165 -msgid "Make this post private" -msgstr "" - -#: ../../mod/wall_upload.php:41 ../../mod/item.php:1049 -msgid "Wall Photos" -msgstr "" - -#: ../../mod/channel.php:120 -msgid "Insufficient permissions. Request redirected to profile page." -msgstr "" - -#: ../../mod/community.php:23 -msgid "Not available." -msgstr "" - -#: ../../mod/community.php:32 -msgid "Community" -msgstr "" - -#: ../../mod/community.php:63 ../../mod/community.php:88 -msgid "No results." -msgstr "" - -#: ../../mod/fbrowser.php:114 -msgid "Files" -msgstr "" - -#: ../../mod/fsuggest.php:63 -msgid "Friend suggestion sent." -msgstr "" - -#: ../../mod/fsuggest.php:97 -msgid "Suggest Friends" -msgstr "" - -#: ../../mod/fsuggest.php:99 -#, php-format -msgid "Suggest a friend for %s" -msgstr "" - -#: ../../mod/editblock.php:82 -msgid "Edit Block" -msgstr "" - -#: ../../mod/editblock.php:156 -msgid "Delete Block" -msgstr "" - -#: ../../mod/profperm.php:34 ../../mod/profperm.php:64 -msgid "Invalid profile identifier." -msgstr "" - -#: ../../mod/profperm.php:110 -msgid "Profile Visibility Editor" -msgstr "" - -#: ../../mod/profperm.php:114 -msgid "Click on a contact to add or remove." -msgstr "" - -#: ../../mod/profperm.php:123 -msgid "Visible To" -msgstr "" - -#: ../../mod/profperm.php:139 -msgid "All Contacts (with secure profile access)" -msgstr "" - -#: ../../mod/item.php:136 -msgid "Unable to locate original post." -msgstr "" - -#: ../../mod/item.php:321 -msgid "Empty post discarded." -msgstr "" - -#: ../../mod/item.php:363 -msgid "Executable content type not permitted to this channel." -msgstr "" - -#: ../../mod/item.php:772 -msgid "System error. Post not saved." -msgstr "" - -#: ../../mod/item.php:1128 -#, php-format -msgid "You have reached your limit of %1$.0f top level posts." -msgstr "" - -#: ../../mod/item.php:1134 -#, php-format -msgid "You have reached your limit of %1$.0f webpages." -msgstr "" - -#: ../../mod/siteinfo.php:51 -#, php-format -msgid "Version %s" -msgstr "" - -#: ../../mod/siteinfo.php:65 -msgid "Installed plugins/addons/apps:" -msgstr "" - -#: ../../mod/siteinfo.php:78 -msgid "No installed plugins/addons/apps" -msgstr "" - -#: ../../mod/siteinfo.php:81 -msgid "Red" -msgstr "" - -#: ../../mod/siteinfo.php:82 -msgid "" -"This is a hub of the Red Matrix - a global cooperative network of " -"decentralised privacy enhanced websites." -msgstr "" - -#: ../../mod/siteinfo.php:84 -msgid "Running at web location" -msgstr "" - -#: ../../mod/siteinfo.php:85 -msgid "" -"Please visit GetZot.com to learn more " -"about the Red Matrix." -msgstr "" - -#: ../../mod/siteinfo.php:86 -msgid "Bug reports and issues: please visit" -msgstr "" - -#: ../../mod/siteinfo.php:89 -msgid "" -"Suggestions, praise, donations, etc. - please email \"redmatrix\" at " -"librelist - dot com" -msgstr "" - -#: ../../mod/suggest.php:41 -msgid "" -"No suggestions available. If this is a new site, please try again in 24 " -"hours." -msgstr "" - -#: ../../mod/suggest.php:58 -msgid "Ignore/Hide" -msgstr "" - -#: ../../mod/pubsites.php:22 -msgid "Public Sites" -msgstr "" - -#: ../../mod/pubsites.php:25 -msgid "" -"The listed sites allow public registration into the Red Matrix. All sites in " -"the matrix are interlinked so membership on any of them conveys membership " -"in the matrix as a whole. Some sites may require subscription or provide " -"tiered service plans. The provider links may provide " -"additional details." -msgstr "" - -#: ../../mod/pubsites.php:31 -msgid "Site URL" -msgstr "" - -#: ../../mod/pubsites.php:31 -msgid "Access Type" -msgstr "" - -#: ../../mod/pubsites.php:31 -msgid "Registration Policy" -msgstr "" - -#: ../../mod/register.php:43 -msgid "Maximum daily site registrations exceeded. Please try again tomorrow." -msgstr "" - -#: ../../mod/register.php:49 -msgid "" -"Please indicate acceptance of the Terms of Service. Registration failed." -msgstr "" - -#: ../../mod/register.php:77 -msgid "Passwords do not match." -msgstr "" - -#: ../../mod/register.php:105 -msgid "" -"Registration successful. Please check your email for validation instructions." -msgstr "" - -#: ../../mod/register.php:111 -msgid "Your registration is pending approval by the site owner." -msgstr "" - -#: ../../mod/register.php:114 -msgid "Your registration can not be processed." -msgstr "" - -#: ../../mod/register.php:149 -msgid "" -"This site has exceeded the number of allowed daily account registrations. " -"Please try again tomorrow." -msgstr "" - -#: ../../mod/register.php:160 -msgid "Terms of Service" -msgstr "" - -#: ../../mod/register.php:166 -#, php-format -msgid "I accept the %s for this website" -msgstr "" - -#: ../../mod/register.php:168 -#, php-format -msgid "I am over 13 years of age and accept the %s for this website" -msgstr "" - -#: ../../mod/register.php:183 -msgid "Membership on this site is by invitation only." -msgstr "" - -#: ../../mod/register.php:184 -msgid "Please enter your invitation code" -msgstr "" - -#: ../../mod/register.php:187 -msgid "Your email address" -msgstr "" - -#: ../../mod/register.php:188 -msgid "Choose a password" -msgstr "" - -#: ../../mod/register.php:189 -msgid "Please re-enter your password" -msgstr "" - -#: ../../mod/regmod.php:12 -msgid "Please login." -msgstr "" - -#: ../../mod/post.php:119 -msgid "" -"Remote authentication blocked. You are logged into this site locally. Please " -"logout and retry." -msgstr "" - -#: ../../mod/post.php:132 -#, php-format -msgid "Welcome %s. Remote authentication successful." -msgstr "" - -#: ../../mod/removeme.php:49 -msgid "Remove This Channel" -msgstr "" - -#: ../../mod/removeme.php:50 -msgid "" -"This will completely remove this channel from the network. Once this has " -"been done it is not recoverable." -msgstr "" - -#: ../../mod/removeme.php:51 -msgid "Please enter your password for verification:" -msgstr "" - -#: ../../mod/removeme.php:52 -msgid "Remove this channel and all its clones from the network" -msgstr "" - -#: ../../mod/removeme.php:52 -msgid "" -"By default only the instance of the channel located on this hub will be " -"removed from the network" -msgstr "" - -#: ../../mod/removeme.php:53 -msgid "Remove My Account" -msgstr "" - -#: ../../mod/directory.php:163 -msgid "Gender: " -msgstr "" - -#: ../../mod/directory.php:222 -msgid "Finding:" -msgstr "" - -#: ../../mod/directory.php:230 -msgid "next page" -msgstr "" - -#: ../../mod/directory.php:230 -msgid "previous page" -msgstr "" - -#: ../../mod/directory.php:237 -msgid "No entries (some entries may be hidden)." -msgstr "" - -#: ../../mod/mood.php:133 -msgid "Mood" -msgstr "" - -#: ../../mod/mood.php:134 -msgid "Set your current mood and tell your friends" -msgstr "" - -#: ../../view/theme/redbasic/php/config.php:74 -msgid "Scheme Default" -msgstr "" - -#: ../../view/theme/redbasic/php/config.php:75 -msgid "red" -msgstr "" - -#: ../../view/theme/redbasic/php/config.php:76 -msgid "black" -msgstr "" - -#: ../../view/theme/redbasic/php/config.php:77 -msgid "silver" -msgstr "" - -#: ../../view/theme/redbasic/php/config.php:88 -#: ../../view/theme/apw/php/config.php:234 -msgid "Theme settings" -msgstr "" - -#: ../../view/theme/redbasic/php/config.php:89 -#: ../../view/theme/apw/php/config.php:235 -msgid "Set scheme" -msgstr "" - -#: ../../view/theme/redbasic/php/config.php:90 -msgid "Navigation bar colour" -msgstr "" - -#: ../../view/theme/redbasic/php/config.php:91 -msgid "Set font-colour for banner" -msgstr "" - -#: ../../view/theme/redbasic/php/config.php:92 -msgid "Set the background colour" -msgstr "" - -#: ../../view/theme/redbasic/php/config.php:93 -msgid "Set the background image" -msgstr "" - -#: ../../view/theme/redbasic/php/config.php:94 -msgid "Set the background colour of items" -msgstr "" - -#: ../../view/theme/redbasic/php/config.php:95 -msgid "Set the opacity of items" -msgstr "" - -#: ../../view/theme/redbasic/php/config.php:96 -msgid "Set the basic colour for item icons" -msgstr "" - -#: ../../view/theme/redbasic/php/config.php:97 -msgid "Set the hover colour for item icons" -msgstr "" - -#: ../../view/theme/redbasic/php/config.php:98 -msgid "Set font-size for the entire application" -msgstr "" - -#: ../../view/theme/redbasic/php/config.php:99 -#: ../../view/theme/apw/php/config.php:236 -msgid "Set font-size for posts and comments" -msgstr "" - -#: ../../view/theme/redbasic/php/config.php:100 -msgid "Set font-colour for posts and comments" -msgstr "" - -#: ../../view/theme/redbasic/php/config.php:101 -msgid "Set radius of corners" -msgstr "" - -#: ../../view/theme/redbasic/php/config.php:102 -msgid "Set shadow depth of photos" -msgstr "" - -#: ../../view/theme/redbasic/php/config.php:103 -msgid "Set maximum width of conversation regions" -msgstr "" - -#: ../../view/theme/redbasic/php/config.php:104 -msgid "Set minimum opacity of nav bar - to hide it" -msgstr "" - -#: ../../view/theme/redbasic/php/config.php:105 -msgid "Set size of conversation author photo" -msgstr "" - -#: ../../view/theme/redbasic/php/config.php:106 -msgid "Set size of followup author photos" -msgstr "" - -#: ../../view/theme/redbasic/php/config.php:107 -msgid "Sloppy photo albums" -msgstr "" - -#: ../../view/theme/redbasic/php/config.php:107 -msgid "Are you a clean desk or a messy desk person?" -msgstr "" - -#: ../../view/theme/apw/php/config.php:193 -#: ../../view/theme/apw/php/config.php:211 -msgid "Schema Default" -msgstr "" - -#: ../../view/theme/apw/php/config.php:194 -msgid "Sans-Serif" -msgstr "" - -#: ../../view/theme/apw/php/config.php:195 -msgid "Monospace" -msgstr "" - -#: ../../view/theme/apw/php/config.php:237 -msgid "Set font face" -msgstr "" - -#: ../../view/theme/apw/php/config.php:238 -msgid "Set iconset" -msgstr "" - -#: ../../view/theme/apw/php/config.php:239 -msgid "Set big shadow size, default 15px 15px 15px" -msgstr "" - -#: ../../view/theme/apw/php/config.php:240 -msgid "Set small shadow size, default 5px 5px 5px" -msgstr "" - -#: ../../view/theme/apw/php/config.php:241 -msgid "Set shadow colour, default #000" -msgstr "" - -#: ../../view/theme/apw/php/config.php:242 -msgid "Set radius size, default 5px" -msgstr "" - -#: ../../view/theme/apw/php/config.php:243 -msgid "Set line-height for posts and comments" -msgstr "" - -#: ../../view/theme/apw/php/config.php:244 -msgid "Set background image" -msgstr "" - -#: ../../view/theme/apw/php/config.php:245 -msgid "Set background colour" -msgstr "" - -#: ../../view/theme/apw/php/config.php:246 -msgid "Set section background image" -msgstr "" - -#: ../../view/theme/apw/php/config.php:247 -msgid "Set section background colour" -msgstr "" - -#: ../../view/theme/apw/php/config.php:248 -msgid "Set colour of items - use hex" -msgstr "" - -#: ../../view/theme/apw/php/config.php:249 -msgid "Set colour of links - use hex" -msgstr "" - -#: ../../view/theme/apw/php/config.php:250 -msgid "Set max-width for items. Default 400px" -msgstr "" - -#: ../../view/theme/apw/php/config.php:251 -msgid "Set min-width for items. Default 240px" -msgstr "" - -#: ../../view/theme/apw/php/config.php:252 -msgid "Set the generic content wrapper width. Default 48%" -msgstr "" - -#: ../../view/theme/apw/php/config.php:253 -msgid "Set colour of fonts - use hex" -msgstr "" - -#: ../../view/theme/apw/php/config.php:254 -msgid "Set background-size element" -msgstr "" - -#: ../../view/theme/apw/php/config.php:255 -msgid "Item opacity" -msgstr "" - -#: ../../view/theme/apw/php/config.php:256 -msgid "Display post previews only" -msgstr "" - -#: ../../view/theme/apw/php/config.php:257 -msgid "Display side bar on channel page" -msgstr "" - -#: ../../view/theme/apw/php/config.php:258 -msgid "Colour of the navigation bar" -msgstr "" - -#: ../../view/theme/apw/php/config.php:259 -msgid "Item float" -msgstr "" - -#: ../../view/theme/apw/php/config.php:260 -msgid "Left offset of the section element" -msgstr "" - -#: ../../view/theme/apw/php/config.php:261 -msgid "Right offset of the section element" -msgstr "" - -#: ../../view/theme/apw/php/config.php:262 -msgid "Section width" -msgstr "" - -#: ../../view/theme/apw/php/config.php:263 -msgid "Left offset of the aside" -msgstr "" - -#: ../../view/theme/apw/php/config.php:264 -msgid "Right offset of the aside element" -msgstr "" - -#: ../../boot.php:1274 -#, php-format -msgid "Update %s failed. See error logs." -msgstr "" - -#: ../../boot.php:1277 -#, php-format -msgid "Update Error at %s" -msgstr "" - -#: ../../boot.php:1434 -msgid "" -"Create an account to access services and applications within the Red Matrix" -msgstr "" - -#: ../../boot.php:1462 -msgid "Password" -msgstr "" - -#: ../../boot.php:1463 -msgid "Remember me" -msgstr "" - -#: ../../boot.php:1468 -msgid "Forgot your password?" -msgstr "" - -#: ../../boot.php:1533 -msgid "permission denied" -msgstr "" - -#: ../../boot.php:1534 -msgid "Got Zot?" -msgstr "" - -#: ../../boot.php:1593 -msgid "Requested channel is not available." -msgstr "" - -#: ../../boot.php:1605 -msgid " Sorry, you don't have the permission to view this profile. " -msgstr "" - -#: ../../boot.php:1761 -msgid "Profiles" -msgstr "" - -#: ../../boot.php:1761 -msgid "Manage/edit profiles" -msgstr "" - -#: ../../boot.php:1765 -msgid "Edit Profile" -msgstr "" - -#: ../../boot.php:1859 ../../boot.php:1939 -msgid "F d" -msgstr "" - -#: ../../boot.php:1916 -msgid "Birthday Reminders" -msgstr "" - -#: ../../boot.php:1917 -msgid "Birthdays this week:" -msgstr "" - -#: ../../boot.php:1972 -msgid "[No description]" -msgstr "" - -#: ../../boot.php:1990 -msgid "Event Reminders" -msgstr "" - -#: ../../boot.php:1991 -msgid "Events this week:" -msgstr "" - -#: ../../boot.php:2225 -msgid "Channel" -msgstr "" - -#: ../../boot.php:2228 -msgid "Status Messages and Posts" -msgstr "" - -#: ../../boot.php:2232 -msgid "About" -msgstr "" - -#: ../../boot.php:2235 -msgid "Profile Details" -msgstr "" - -#: ../../boot.php:2253 -msgid "Events and Calendar" -msgstr "" - -#: ../../boot.php:2258 -msgid "Webpages" -msgstr "" - -#: ../../boot.php:2261 -msgid "Manage Webpages" -msgstr "" - -#: ../../boot.php:2545 -msgid "toggle mobile" +#: ../../mod/events.php:454 +msgid "Share this event" msgstr "" From ff91541cfd753f0318f13835763bd86c5eafac53 Mon Sep 17 00:00:00 2001 From: friendica Date: Thu, 28 Nov 2013 16:13:09 -0800 Subject: [PATCH 101/271] zot doco --- include/zot.php | 113 ++++++++++++++++++++++++++++++++++++++++-------- 1 file changed, 96 insertions(+), 17 deletions(-) diff --git a/include/zot.php b/include/zot.php index 0e92b0bff..6ee7665ee 100644 --- a/include/zot.php +++ b/include/zot.php @@ -353,7 +353,17 @@ function zot_refresh($them,$channel = null) { * @function: zot_gethub * * A guid and a url, both signed by the sender, distinguish a known sender at a known location - * This function looks these up to see if the channel is known. If not, we will need to verify it. + * This function looks these up to see if the channel is known and therefore previously verified. + * If not, we will need to verify it. + * + * @param array $arr + * $arr must contain: + * string $arr['guid'] => guid of conversant + * string $arr['guid_sig'] => guid signed with conversant's private key + * string $arr['url'] => URL of the origination hub of this communication + * string $arr['url_sig'] => URL signed with conversant's private key + * + * * @returns: array => hubloc record */ @@ -380,6 +390,27 @@ function zot_gethub($arr) { return null; } +/** + * @function zot_register_hub($arr) + * + * A communication has been received which has an unknown (to us) sender. + * Perform discovery based on our calculated hash of the sender at the origination address. + * This will fetch the discovery packet of the sender, which contains the public key we + * need to verify our guid and url signatures. + * + * @param array $arr + * $arr must contain: + * string $arr['guid'] => guid of conversant + * string $arr['guid_sig'] => guid signed with conversant's private key + * string $arr['url'] => URL of the origination hub of this communication + * string $arr['url_sig'] => URL signed with conversant's private key + * + * + * @returns array => 'success' (boolean true or false) + * 'message' (optional error string only if success is false) + */ + + function zot_register_hub($arr) { $result = array('success' => false); @@ -398,19 +429,43 @@ function zot_register_hub($arr) { if($x['success']) { $record = json_decode($x['body'],true); - $c = import_xchan($record); - if($c['success']) - $result['success'] = true; + + /* + * We now have a key - only continue registration if our signatures are valid + * AND the guid and guid sig in the returned packet match those provided in + * our current communication. + */ + + if((rsa_verify($arr['guid'],base64url_decode($arr['guid_sig']),$record['key'])) + && (rsa_verify($arr['url'],base64url_decode($arr['url_sig']),$record['key'])) + && ($arr['guid'] === $record['guid']) + && ($arr['guid_sig'] === $record['guid_sig'])) { + + $c = import_xchan($record); + if($c['success']) + $result['success'] = true; + } + else { + logger('zot_register_hub: failure to verify returned packet.'); + } } } return $result; } - -// Takes a json associative array from zot_finger and imports the xchan and hublocs -// If the xchan already exists, update the name and photo if these have changed. -// +/** + * @function import_xchan($arr,$ud_flags = 1) + * Takes an associative array of a fecthed discovery packet and updates + * all internal data structures which need to be updated as a result. + * + * @param array $arr => json_decoded discovery packet + * @param int $ud_flags + * Determines whether to create a directory update record if any changes occur, default 1 or true + * + * @returns array => 'success' (boolean true or false) + * 'message' (optional error string only if success is false) + */ function import_xchan($arr,$ud_flags = 1) { @@ -436,7 +491,6 @@ function import_xchan($arr,$ud_flags = 1) { return $ret; } - logger('import_xchan: ' . $xchan_hash, LOGGER_DEBUG); $r = q("select * from xchan where xchan_hash = '%s' limit 1", @@ -753,6 +807,20 @@ function import_xchan($arr,$ud_flags = 1) { return $ret; } +/** + * @function zot_process_response($hub,$arr,$outq) { + * Called immediately after sending a zot message which is using queue processing + * Updates the queue item according to the response result and logs any information + * returned to aid communications troubleshooting. + * + * @param string $hub - url of site we just contacted + * @param array $arr - output of z_post_url() + * @param array $outq - The queue structure attached to this request + * + * @returns nothing + */ + + function zot_process_response($hub,$arr,$outq) { if(! $arr['success']) { @@ -788,14 +856,16 @@ function zot_process_response($hub,$arr,$outq) { } /** - * @function: zot_fetch + * @function zot_fetch($arr) * - * We received a notification packet (in mod/post.php) that a message is waiting for us, and we've verified the sender. - * Now send back a pickup message, using our message tracking ID ($arr['secret']), which we will sign. - * The entire pickup message is encrypted with the remote site's public key. - * If everything checks out on the remote end, we will receive back a packet containing one or more messages, - * which will be processed before returning. - * + * We received a notification packet (in mod/post.php) that a message is waiting for us, and we've verified the sender. + * Now send back a pickup message, using our message tracking ID ($arr['secret']), which we will sign with our site private key. + * The entire pickup message is encrypted with the remote site's public key. + * If everything checks out on the remote end, we will receive back a packet containing one or more messages, + * which will be processed and delivered before this function ultimately returns. + * + * @param array $arr + * decrypted and json decoded notify packet from remote site */ @@ -833,7 +903,16 @@ function zot_fetch($arr) { * Process an incoming array of messages which were obtained via pickup, and * import, update, delete as directed. * - * The message types handled here are 'activity' (e.g. posts), 'mail' and 'profile' + * @param array $arr => 'pickup' structure returned from remote site + * @param string $sender_url => the url specified by the sender in the initial communication + * we will verify the sender and url in each returned message structure and also verify + * that all the messages returned match the site url that we are currently processing. + * + * The message types handled here are 'activity' (e.g. posts), 'mail' , 'profile', and 'channel_sync' + * + * @returns array => array ( [0] => string $channel_hash, [1] => string $delivery_status, [2] => string $address ) + * suitable for logging remotely, enumerating the processing results of each message/recipient combination. + * */ function zot_import($arr, $sender_url) { From fafba385c1f7bebc61909ab4b9add075c08fcd4e Mon Sep 17 00:00:00 2001 From: friendica Date: Thu, 28 Nov 2013 16:46:47 -0800 Subject: [PATCH 102/271] only list undeleted hublocs in zot_finger --- include/zot.php | 11 +++++++---- 1 file changed, 7 insertions(+), 4 deletions(-) diff --git a/include/zot.php b/include/zot.php index 6ee7665ee..156a26e9c 100644 --- a/include/zot.php +++ b/include/zot.php @@ -19,7 +19,8 @@ function zot_new_uid($channel_nick) { /** * @function zot_get_hublocs($hash) - * Given a zot hash, return all distinct hubs + * Given a zot hash, return all distinct hubs. + * This function is used in building the zot discovery packet * @param string $hash - xchan_hash * @retuns array * @@ -27,10 +28,12 @@ function zot_new_uid($channel_nick) { function zot_get_hublocs($hash) { - $ret = q("select * from hubloc where hubloc_hash = '%s' group by hubloc_url ", - dbesc($hash) - ); + /** Only search for active hublocs - e.g. those that haven't been marked deleted */ + $ret = q("select * from hubloc where hubloc_hash = '%s' and not ( hubloc_flags & %d ) group by hubloc_url ", + dbesc($hash), + intval(HUBLOC_FLAGS_DELETED) + ); return $ret; } From 8e0d3c2d6f2c4e23eacb62203b8a754db20cfb8c Mon Sep 17 00:00:00 2001 From: friendica Date: Thu, 28 Nov 2013 17:47:33 -0800 Subject: [PATCH 103/271] doco --- include/zot.php | 47 +++++++++++++++++++++++++++++++++++++++++------ 1 file changed, 41 insertions(+), 6 deletions(-) diff --git a/include/zot.php b/include/zot.php index 156a26e9c..57c3d3601 100644 --- a/include/zot.php +++ b/include/zot.php @@ -6,7 +6,15 @@ require_once('include/items.php'); /** * * @function zot_new_uid($channel_nick) - * @channel_id = unique nickname of controlling entity + * + * Generates a unique string for use as a zot guid using our DNS-based url, the channel nickname and some entropy. + * The entropy ensures uniqueness against re-installs where the same URL and nickname are chosen. + * NOTE: zot doesn't require this to be unique. Internally we use a whirlpool hash of this guid and the signature + * of this guid signed with the channel private key. This can be verified and should make the probability of + * collision of the verified result negligible within the constraints of our immediate universe. + * + * @param string channel_nickname = unique nickname of controlling entity + * * @returns string * */ @@ -21,8 +29,25 @@ function zot_new_uid($channel_nick) { * @function zot_get_hublocs($hash) * Given a zot hash, return all distinct hubs. * This function is used in building the zot discovery packet + * and therefore should only be used by channels which are defined + * on this hub * @param string $hash - xchan_hash - * @retuns array + * @retuns array of hubloc (hub location structures) + * hubloc_id int + * hubloc_guid char(255) + * hubloc_guid_sig text + * hubloc_hash char(255) + * hubloc_addr char(255) + * hubloc_flags int + * hubloc_status int + * hubloc_url char(255) + * hubloc_url_sig text + * hubloc_host char(255) + * hubloc_callback char(255) + * hubloc_connect char(255) + * hubloc_sitekey text + * hubloc_updated datetime + * hubloc_connected datetime * */ @@ -37,12 +62,22 @@ function zot_get_hublocs($hash) { return $ret; } -/* +/** * - * zot_build_packet builds a notification packet that you can either - * store in the queue with a message array or call zot_zot to immediately - * zot it to the other side + * @function zot_build_packet($channel,$type = 'notify',$recipients = null, $remote_key = null, $secret = null) + * builds a zot notification packet that you can either + * store in the queue with a message array or call zot_zot to immediately + * zot it to the other side * + * @param array $channel => sender channel structure + * @param string $type => one of 'ping', 'pickup', 'purge', 'refresh', 'notify', 'auth_check' + * @param array $recipients => envelope information, array of string $xchan_hash; empty for public posts + * @param string $remote_key => optional public site key of target hub used to encrypt entire packet + * NOTE: remote_key and encrypted packets are required for 'auth_check' packets, optional for all others + * @param string $secret => random string, required for packets which require verification/callback + * e.g. 'pickup', 'purge', 'notify', 'auth_check' --- 'ping' and 'refresh' do not require verification + * + * @returns string json encoded zot packet */ function zot_build_packet($channel,$type = 'notify',$recipients = null, $remote_key = null, $secret = null) { From eae33275840495d27717f95f9647cf96c1c1d6cd Mon Sep 17 00:00:00 2001 From: friendica Date: Thu, 28 Nov 2013 18:10:04 -0800 Subject: [PATCH 104/271] item store hooks --- include/items.php | 15 +++++++++++++++ include/zot.php | 9 +++++++++ 2 files changed, 24 insertions(+) diff --git a/include/items.php b/include/items.php index 45c5f5ac9..e380be488 100755 --- a/include/items.php +++ b/include/items.php @@ -1432,6 +1432,12 @@ function encode_rel_links($links) { function item_store($arr,$allow_exec = false) { + $d = array('item' => $arr, 'allow_exec' => $allow_exec); + call_hooks('item_store', $d ); + $arr = $d['item']; + $allow_exec = $d['allow_exec']; + + $ret = array('result' => false, 'item_id' => 0); if(! $arr['uid']) { @@ -1808,6 +1814,15 @@ function item_store($arr,$allow_exec = false) { function item_store_update($arr,$allow_exec = false) { + + + $d = array('item' => $arr, 'allow_exec' => $allow_exec); + call_hooks('item_store_update', $d ); + $arr = $d['item']; + $allow_exec = $d['allow_exec']; + + + $ret = array('result' => false, 'item_id' => 0); if(! intval($arr['uid'])) { logger('item_store_update: no uid'); diff --git a/include/zot.php b/include/zot.php index 57c3d3601..725dc58e3 100644 --- a/include/zot.php +++ b/include/zot.php @@ -3,6 +3,15 @@ require_once('include/crypto.php'); require_once('include/items.php'); +/** + * Red implementation of zot protocol. + * + * https://github.com/friendica/red/wiki/zot + * https://github.com/friendica/red/wiki/Zot---A-High-Level-Overview + * + */ + + /** * * @function zot_new_uid($channel_nick) From 94c293f2c6c8ff7d7a1a0f45ab9ab2ecfaa16372 Mon Sep 17 00:00:00 2001 From: friendica Date: Thu, 28 Nov 2013 18:46:59 -0800 Subject: [PATCH 105/271] doco --- include/zot.php | 27 +++++++++++++++++++++------ 1 file changed, 21 insertions(+), 6 deletions(-) diff --git a/include/zot.php b/include/zot.php index 725dc58e3..9777f7ae4 100644 --- a/include/zot.php +++ b/include/zot.php @@ -79,8 +79,8 @@ function zot_get_hublocs($hash) { * zot it to the other side * * @param array $channel => sender channel structure - * @param string $type => one of 'ping', 'pickup', 'purge', 'refresh', 'notify', 'auth_check' - * @param array $recipients => envelope information, array of string $xchan_hash; empty for public posts + * @param string $type => packet type: one of 'ping', 'pickup', 'purge', 'refresh', 'notify', 'auth_check' + * @param array $recipients => envelope information, array ( 'guid' => string, 'guid_sig' => string ); empty for public posts * @param string $remote_key => optional public site key of target hub used to encrypt entire packet * NOTE: remote_key and encrypted packets are required for 'auth_check' packets, optional for all others * @param string $secret => random string, required for packets which require verification/callback @@ -228,12 +228,27 @@ function zot_finger($webbie,$channel,$autofallback = true) { } /** - * @function: zot_refresh + * @function: zot_refresh($them, $channel = null) * - * zot_refresh is typically invoked when somebody has changed permissions of a channel and they are notified - * to fetch new permissions via a finger operation. This may result in a new connection (abook entry) being added to a local channel - * and it may result in auto-permissions being granted. + * zot_refresh is typically invoked when somebody has changed permissions of a channel and they are notified + * to fetch new permissions via a finger/discovery operation. This may result in a new connection + * (abook entry) being added to a local channel and it may result in auto-permissions being granted. + * + * Friending in zot is accomplished by sending a refresh packet to a specific channel which indicates a + * permission change has been made by the sender which affects the target channel. The hub controlling + * the target channel does targetted discovery (a zot-finger request requesting permissions for the local + * channel). These are decoded here, and if necessary and abook structure (addressbook) is created to store + * the permissions assigned to this channel. + * + * Initially these abook structures are created with a 'pending' flag, so that no reverse permissions are + * implied until this is approved by the owner channel. A channel can also auto-populate permissions in + * return and send back a refresh packet of its own. This is used by forum and group communication channels + * so that friending and membership in the channel's "club" is automatic. + * + * @param array $them => xchan structure of sender + * @param array $channel => local channel structure of target recipient, required for "friending" operations * + * @returns boolean true if successful, else false */ function zot_refresh($them,$channel = null) { From d1ab865ccf8a9200236e310c93ad56b8a7f93aad Mon Sep 17 00:00:00 2001 From: friendica Date: Thu, 28 Nov 2013 19:17:20 -0800 Subject: [PATCH 106/271] make the template processor (e.g. replace_macros) pluggable --- include/text.php | 5 ++++- mod/connections.php | 2 +- 2 files changed, 5 insertions(+), 2 deletions(-) diff --git a/include/text.php b/include/text.php index 54626a772..3d15a5c6b 100755 --- a/include/text.php +++ b/include/text.php @@ -15,8 +15,11 @@ require_once("include/friendica_smarty.php"); function replace_macros($s,$r) { $a = get_app(); + $arr = array('template' => $s, 'params' => $r); + call_hooks('replace_macros', $arr); + $t = $a->template_engine(); - $output = $t->replace_macros($s,$r); + $output = $t->replace_macros($arr['template'],$arr['params']); return $output; } diff --git a/mod/connections.php b/mod/connections.php index d7adf775b..39bef0209 100644 --- a/mod/connections.php +++ b/mod/connections.php @@ -464,7 +464,7 @@ function connections_content(&$a) { '$cautious' => t('Cautious Sharing'), '$follow' => t('Follow Only'), '$permlbl' => t('Individual Permissions'), - '$permnote' => t('Some permissions may be inherited from your privacy settings, which have higher priority. Changing those on this page will have no effect.'), + '$permnote' => t('Some permissions may be inherited from your channel privacy settings, which have higher priority. Changing those inherited settings on this page will have no effect.'), '$advanced' => t('Advanced Permissions'), '$quick' => t('Quick Links'), '$common_link' => $a->get_baseurl(true) . '/common/loc/' . local_user() . '/' . $contact['id'], From 8cd9a2c3a944e804c72ef461df801116c6b44ac7 Mon Sep 17 00:00:00 2001 From: friendica Date: Thu, 28 Nov 2013 19:37:39 -0800 Subject: [PATCH 107/271] doc updates --- doc/html/BaseObject_8php.html | 2 +- doc/html/Contact_8php.html | 2 +- doc/html/ConversationObject_8php.html | 2 +- doc/html/ITemplateEngine_8php.html | 2 +- doc/html/ItemObject_8php.html | 2 +- doc/html/ProtoDriver_8php.html | 2 +- doc/html/__well__known_8php.html | 2 +- doc/html/account_8php.html | 2 +- doc/html/acl_8php.html | 2 +- doc/html/acl__selectors_8php.html | 2 +- doc/html/activities_8php.html | 2 +- doc/html/admin_8php.html | 2 +- doc/html/allfriends_8php.html | 2 +- doc/html/annotated.html | 2 +- doc/html/apps_8php.html | 2 +- doc/html/apw_2README_8md.html | 112 +++++++++ doc/html/apw_2php_2style_8php.html | 2 +- doc/html/apw_2php_2theme_8php.html | 2 +- doc/html/auth_8php.html | 2 +- doc/html/bb2diaspora_8php.html | 2 +- doc/html/bbcode_8php.html | 2 +- doc/html/blocks_8php.html | 2 +- doc/html/blogga_2php_2README_8md.html | 112 +++++++++ doc/html/blogga_2php_2theme_8php.html | 138 +++++++++++ doc/html/blogga_2php_2theme_8php.js | 4 + ...blogga_2view_2theme_2blog_2theme_8php.html | 220 +++++++++++++++++ .../blogga_2view_2theme_2blog_2theme_8php.js | 8 + doc/html/boot_8php.html | 12 +- doc/html/cache_8php.html | 2 +- doc/html/channel_8php.html | 2 +- doc/html/chanview_8php.html | 2 +- doc/html/classApp-members.html | 2 +- doc/html/classApp.html | 2 +- doc/html/classBaseObject-members.html | 2 +- doc/html/classBaseObject.html | 2 +- doc/html/classCache-members.html | 2 +- doc/html/classCache.html | 2 +- doc/html/classConversation-members.html | 2 +- doc/html/classConversation.html | 2 +- doc/html/classFKOAuth1-members.html | 2 +- doc/html/classFKOAuth1.html | 2 +- doc/html/classFKOAuthDataStore-members.html | 2 +- doc/html/classFKOAuthDataStore.html | 2 +- doc/html/classFriendicaSmarty-members.html | 2 +- doc/html/classFriendicaSmarty.html | 2 +- .../classFriendicaSmartyEngine-members.html | 2 +- doc/html/classFriendicaSmartyEngine.html | 2 +- doc/html/classItem-members.html | 2 +- doc/html/classItem.html | 2 +- doc/html/classProtoDriver-members.html | 2 +- doc/html/classProtoDriver.html | 2 +- doc/html/classRedBasicAuth-members.html | 2 +- doc/html/classRedBasicAuth.html | 2 +- doc/html/classRedDirectory-members.html | 2 +- doc/html/classRedDirectory.html | 2 +- doc/html/classRedFile-members.html | 2 +- doc/html/classRedFile.html | 2 +- doc/html/classRedInode-members.html | 2 +- doc/html/classRedInode.html | 2 +- doc/html/classTemplate-members.html | 2 +- doc/html/classTemplate.html | 2 +- doc/html/classZotDriver-members.html | 2 +- doc/html/classZotDriver.html | 2 +- doc/html/classdba__driver-members.html | 2 +- doc/html/classdba__driver.html | 2 +- doc/html/classdba__mysql-members.html | 2 +- doc/html/classdba__mysql.html | 2 +- doc/html/classdba__mysqli-members.html | 2 +- doc/html/classdba__mysqli.html | 2 +- doc/html/classenotify-members.html | 2 +- doc/html/classenotify.html | 2 +- doc/html/classes.html | 2 +- doc/html/classphoto__driver-members.html | 2 +- doc/html/classphoto__driver.html | 2 +- doc/html/classphoto__gd-members.html | 2 +- doc/html/classphoto__gd.html | 2 +- doc/html/classphoto__imagick-members.html | 2 +- doc/html/classphoto__imagick.html | 2 +- doc/html/cli__startup_8php.html | 2 +- doc/html/cli__suggest_8php.html | 2 +- doc/html/cloud_8php.html | 2 +- doc/html/comanche_8php.html | 2 +- doc/html/common_8php.html | 2 +- doc/html/community_8php.html | 2 +- doc/html/config_8md.html | 2 +- doc/html/connect_8php.html | 2 +- doc/html/connections_8php.html | 2 +- doc/html/contact__selectors_8php.html | 2 +- doc/html/contact__widgets_8php.html | 2 +- doc/html/contactgroup_8php.html | 2 +- doc/html/conversation_8php.html | 2 +- doc/html/crepair_8php.html | 2 +- doc/html/cronhooks_8php.html | 2 +- doc/html/crypto_8php.html | 4 +- doc/html/dark_8php.html | 2 +- doc/html/darkness_8php.html | 2 +- doc/html/darknessleftaside_8php.html | 2 +- doc/html/darknessrightaside_8php.html | 2 +- doc/html/datetime_8php.html | 2 +- doc/html/db__update_8php.html | 2 +- doc/html/dba__driver_8php.html | 6 +- doc/html/dba__mysql_8php.html | 2 +- doc/html/dba__mysqli_8php.html | 2 +- doc/html/delegate_8php.html | 2 +- doc/html/deliver_8php.html | 2 +- .../dir_032dd9e2cfe278a2cfa5eb9547448eb9.html | 4 +- .../dir_032dd9e2cfe278a2cfa5eb9547448eb9.js | 3 +- .../dir_05f4fba29266e8fd7869afcd6cefb5cb.html | 2 +- .../dir_0eaa4a0adae8ba4811e133c6e594aeee.html | 2 +- .../dir_21bc5169ff11430004758be31dcfc6c4.html | 2 +- .../dir_23ec12649285f9fabf3a6b7380226c28.html | 2 +- .../dir_25f74a9991dbbca1b52a94e358ca73c1.html | 112 +++++++++ .../dir_25f74a9991dbbca1b52a94e358ca73c1.js | 4 + .../dir_3d9c9d0c5e9556dd3eba1e072fa6eaeb.html | 2 +- .../dir_55dbaf9b7b53c4fc605c9011743a7353.html | 2 +- .../dir_6cee3bb9ace89cc4e2f065aa2ca7bc5b.html | 112 +++++++++ .../dir_6cee3bb9ace89cc4e2f065aa2ca7bc5b.js | 4 + .../dir_720432dea4a717197ae070dbc42b8f20.html | 8 +- .../dir_720432dea4a717197ae070dbc42b8f20.js | 2 +- .../dir_817f6d302394b98e59575acdb59998bc.html | 6 +- .../dir_817f6d302394b98e59575acdb59998bc.js | 4 +- .../dir_8543001e5d25368a6edede3e63efb554.html | 4 +- .../dir_8543001e5d25368a6edede3e63efb554.js | 1 + .../dir_922c77e958c99a98db92d38a3a349bf2.html | 114 +++++++++ .../dir_922c77e958c99a98db92d38a3a349bf2.js | 5 + .../dir_92d6b429199666aa3765c8a934db5e14.html | 112 +++++++++ .../dir_92d6b429199666aa3765c8a934db5e14.js | 4 + doc/html/dir__fns_8php.html | 2 +- .../dir_a8a0005c2b8590c535262d232c22afab.html | 116 +++++++++ .../dir_a8a0005c2b8590c535262d232c22afab.js | 6 + .../dir_aae29906d7bfc07d076125f669c8352e.html | 2 +- .../dir_b2f003339c516cc00c8cadcafbe82f13.html | 2 +- .../dir_c02447ad39a5307c81c64e880ec9e8d3.html | 118 +++++++++ .../dir_c02447ad39a5307c81c64e880ec9e8d3.js | 7 + .../dir_cb8a8f75dcdd0b3fbfcc82e9eda410c5.html | 2 +- .../dir_d41ce877eb409a4791b288730010abe2.html | 2 +- .../dir_d44c64559bbebec7f509842c48db8b23.html | 2 +- .../dir_d520c5cf583201d9437764f209363c22.html | 2 +- doc/html/dirsearch_8php.html | 2 +- doc/html/display_8php.html | 2 +- doc/html/docblox__errorchecker_8php.html | 2 +- doc/html/editblock_8php.html | 2 +- doc/html/editlayout_8php.html | 2 +- doc/html/editpost_8php.html | 2 +- doc/html/editwebpage_8php.html | 2 +- doc/html/enotify_8php.html | 2 +- doc/html/event_8php.html | 2 +- doc/html/events_8php.html | 2 +- doc/html/expire_8php.html | 2 +- doc/html/extract_8php.html | 4 +- doc/html/fbrowser_8php.html | 2 +- doc/html/features_8php.html | 2 +- doc/html/feed_8php.html | 2 +- doc/html/filer_8php.html | 2 +- doc/html/filerm_8php.html | 2 +- doc/html/files.html | 38 ++- doc/html/filestorage_8php.html | 2 +- doc/html/fpostit_8php.html | 2 +- doc/html/fresh_8md.html | 2 +- doc/html/friendica-to-smarty-tpl_8py.html | 2 +- doc/html/friendica__smarty_8php.html | 2 +- doc/html/fsuggest_8php.html | 2 +- doc/html/full_8php.html | 2 +- doc/html/functions.html | 2 +- doc/html/functions_0x5f.html | 2 +- doc/html/functions_0x61.html | 2 +- doc/html/functions_0x62.html | 2 +- doc/html/functions_0x63.html | 2 +- doc/html/functions_0x64.html | 2 +- doc/html/functions_0x65.html | 2 +- doc/html/functions_0x66.html | 2 +- doc/html/functions_0x67.html | 2 +- doc/html/functions_0x68.html | 2 +- doc/html/functions_0x69.html | 2 +- doc/html/functions_0x6c.html | 2 +- doc/html/functions_0x6e.html | 2 +- doc/html/functions_0x6f.html | 2 +- doc/html/functions_0x70.html | 2 +- doc/html/functions_0x71.html | 2 +- doc/html/functions_0x72.html | 2 +- doc/html/functions_0x73.html | 2 +- doc/html/functions_0x74.html | 2 +- doc/html/functions_0x76.html | 2 +- doc/html/functions_func.html | 2 +- doc/html/functions_func_0x61.html | 2 +- doc/html/functions_func_0x62.html | 2 +- doc/html/functions_func_0x63.html | 2 +- doc/html/functions_func_0x64.html | 2 +- doc/html/functions_func_0x65.html | 2 +- doc/html/functions_func_0x66.html | 2 +- doc/html/functions_func_0x67.html | 2 +- doc/html/functions_func_0x68.html | 2 +- doc/html/functions_func_0x69.html | 2 +- doc/html/functions_func_0x6c.html | 2 +- doc/html/functions_func_0x6e.html | 2 +- doc/html/functions_func_0x6f.html | 2 +- doc/html/functions_func_0x70.html | 2 +- doc/html/functions_func_0x71.html | 2 +- doc/html/functions_func_0x72.html | 2 +- doc/html/functions_func_0x73.html | 2 +- doc/html/functions_func_0x74.html | 2 +- doc/html/functions_func_0x76.html | 2 +- doc/html/functions_vars.html | 2 +- doc/html/globals.html | 15 +- doc/html/globals_0x5f.html | 2 +- doc/html/globals_0x61.html | 2 +- doc/html/globals_0x62.html | 20 +- doc/html/globals_0x63.html | 2 +- doc/html/globals_0x64.html | 2 +- doc/html/globals_0x65.html | 2 +- doc/html/globals_0x66.html | 2 +- doc/html/globals_0x67.html | 2 +- doc/html/globals_0x68.html | 2 +- doc/html/globals_0x69.html | 4 +- doc/html/globals_0x6a.html | 2 +- doc/html/globals_0x6b.html | 2 +- doc/html/globals_0x6c.html | 2 +- doc/html/globals_0x6d.html | 2 +- doc/html/globals_0x6e.html | 2 +- doc/html/globals_0x6f.html | 2 +- doc/html/globals_0x70.html | 17 +- doc/html/globals_0x71.html | 2 +- doc/html/globals_0x72.html | 8 +- doc/html/globals_0x73.html | 2 +- doc/html/globals_0x74.html | 12 +- doc/html/globals_0x75.html | 2 +- doc/html/globals_0x76.html | 2 +- doc/html/globals_0x77.html | 2 +- doc/html/globals_0x78.html | 2 +- doc/html/globals_0x7a.html | 6 +- doc/html/globals_func.html | 2 +- doc/html/globals_func_0x61.html | 2 +- doc/html/globals_func_0x62.html | 20 +- doc/html/globals_func_0x63.html | 2 +- doc/html/globals_func_0x64.html | 2 +- doc/html/globals_func_0x65.html | 2 +- doc/html/globals_func_0x66.html | 2 +- doc/html/globals_func_0x67.html | 2 +- doc/html/globals_func_0x68.html | 2 +- doc/html/globals_func_0x69.html | 2 +- doc/html/globals_func_0x6a.html | 2 +- doc/html/globals_func_0x6b.html | 2 +- doc/html/globals_func_0x6c.html | 2 +- doc/html/globals_func_0x6d.html | 2 +- doc/html/globals_func_0x6e.html | 2 +- doc/html/globals_func_0x6f.html | 2 +- doc/html/globals_func_0x70.html | 17 +- doc/html/globals_func_0x71.html | 2 +- doc/html/globals_func_0x72.html | 8 +- doc/html/globals_func_0x73.html | 2 +- doc/html/globals_func_0x74.html | 12 +- doc/html/globals_func_0x75.html | 2 +- doc/html/globals_func_0x76.html | 2 +- doc/html/globals_func_0x77.html | 2 +- doc/html/globals_func_0x78.html | 2 +- doc/html/globals_func_0x7a.html | 6 +- doc/html/globals_vars.html | 15 +- doc/html/globals_vars_0x61.html | 2 +- doc/html/globals_vars_0x63.html | 2 +- doc/html/globals_vars_0x64.html | 2 +- doc/html/globals_vars_0x65.html | 2 +- doc/html/globals_vars_0x66.html | 2 +- doc/html/globals_vars_0x67.html | 2 +- doc/html/globals_vars_0x68.html | 2 +- doc/html/globals_vars_0x69.html | 4 +- doc/html/globals_vars_0x6a.html | 2 +- doc/html/globals_vars_0x6b.html | 2 +- doc/html/globals_vars_0x6c.html | 2 +- doc/html/globals_vars_0x6d.html | 2 +- doc/html/globals_vars_0x6e.html | 2 +- doc/html/globals_vars_0x70.html | 2 +- doc/html/globals_vars_0x72.html | 2 +- doc/html/globals_vars_0x73.html | 2 +- doc/html/globals_vars_0x74.html | 2 +- doc/html/globals_vars_0x75.html | 2 +- doc/html/globals_vars_0x77.html | 2 +- doc/html/globals_vars_0x78.html | 2 +- doc/html/globals_vars_0x7a.html | 2 +- doc/html/gprobe_8php.html | 2 +- doc/html/greenthumbnails_8php.html | 2 +- doc/html/hcard_8php.html | 2 +- doc/html/help_8php.html | 2 +- doc/html/hierarchy.html | 2 +- doc/html/home_8php.html | 2 +- doc/html/hostxrd_8php.html | 2 +- doc/html/html2bbcode_8php.html | 2 +- doc/html/html2plain_8php.html | 2 +- doc/html/identity_8php.html | 2 +- doc/html/import_8php.html | 2 +- doc/html/include_2api_8php.html | 2 +- doc/html/include_2attach_8php.html | 2 +- doc/html/include_2chanman_8php.html | 2 +- doc/html/include_2config_8php.html | 8 +- doc/html/include_2directory_8php.html | 2 +- doc/html/include_2follow_8php.html | 2 +- doc/html/include_2group_8php.html | 2 +- doc/html/include_2menu_8php.html | 2 +- doc/html/include_2message_8php.html | 2 +- doc/html/include_2network_8php.html | 2 +- doc/html/include_2notify_8php.html | 2 +- doc/html/include_2oembed_8php.html | 2 +- doc/html/include_2photos_8php.html | 2 +- doc/html/index.html | 2 +- .../interfaceITemplateEngine-members.html | 2 +- doc/html/interfaceITemplateEngine.html | 2 +- doc/html/intro_8php.html | 2 +- doc/html/invite_8php.html | 2 +- doc/html/item_8php.html | 2 +- doc/html/items_8php.html | 2 +- doc/html/language_8php.html | 4 +- doc/html/lastpost_8php.html | 2 +- doc/html/layouts_8php.html | 2 +- doc/html/like_8php.html | 2 +- doc/html/lockview_8php.html | 2 +- doc/html/login_8php.html | 2 +- doc/html/lostpass_8php.html | 2 +- doc/html/magic_8php.html | 2 +- doc/html/manage_8php.html | 2 +- doc/html/match_8php.html | 2 +- doc/html/md_README.html | 2 +- doc/html/md_config.html | 2 +- doc/html/md_fresh.html | 2 +- doc/html/minimal_8php.html | 2 +- doc/html/minimalisticdarkness_8php.html | 2 +- doc/html/mitem_8php.html | 2 +- doc/html/mod_2api_8php.html | 2 +- doc/html/mod_2attach_8php.html | 2 +- doc/html/mod_2chanman_8php.html | 2 +- doc/html/mod_2directory_8php.html | 2 +- doc/html/mod_2follow_8php.html | 2 +- doc/html/mod_2group_8php.html | 2 +- doc/html/mod_2menu_8php.html | 2 +- doc/html/mod_2message_8php.html | 2 +- doc/html/mod_2network_8php.html | 2 +- doc/html/mod_2notify_8php.html | 2 +- doc/html/mod_2oembed_8php.html | 2 +- doc/html/mod_2photos_8php.html | 2 +- doc/html/mod__import_8php.html | 2 +- doc/html/mod__new__channel_8php.html | 2 +- doc/html/mod__register_8php.html | 2 +- doc/html/mood_8php.html | 2 +- doc/html/msearch_8php.html | 2 +- doc/html/namespaceFriendica.html | 2 +- doc/html/namespaceacl__selectors.html | 2 +- .../namespacefriendica-to-smarty-tpl.html | 2 +- doc/html/namespacemembers.html | 2 +- doc/html/namespacemembers_func.html | 2 +- doc/html/namespacemembers_vars.html | 2 +- doc/html/namespaces.html | 2 +- doc/html/namespaceupdatetpl.html | 2 +- doc/html/namespaceutil.html | 2 +- doc/html/nav_8php.html | 2 +- doc/html/navtree.js | 15 +- doc/html/navtreeindex0.js | 18 +- doc/html/navtreeindex1.js | 18 +- doc/html/navtreeindex2.js | 18 +- doc/html/navtreeindex3.js | 38 +-- doc/html/navtreeindex4.js | 28 +-- doc/html/navtreeindex5.js | 30 +-- doc/html/navtreeindex6.js | 144 +++++------ doc/html/navtreeindex7.js | 72 ++++-- doc/html/navtreeindex8.js | 20 ++ doc/html/new__channel_8php.html | 2 +- doc/html/nogroup_8php.html | 2 +- doc/html/none_8php.html | 2 +- doc/html/notifications_8php.html | 2 +- doc/html/notifier_8php.html | 2 +- doc/html/oauth_8php.html | 2 +- doc/html/oexchange_8php.html | 2 +- doc/html/olddefault_8php.html | 2 +- doc/html/onedirsync_8php.html | 2 +- doc/html/onepoll_8php.html | 2 +- doc/html/opensearch_8php.html | 2 +- doc/html/page_8php.html | 2 +- doc/html/page__widgets_8php.html | 2 +- doc/html/pages.html | 2 +- doc/html/parse__url_8php.html | 2 +- doc/html/passion_8php.html | 2 +- doc/html/passionwide_8php.html | 2 +- doc/html/permissions_8php.html | 2 +- doc/html/photo_8php.html | 2 +- doc/html/photo__driver_8php.html | 2 +- doc/html/photo__gd_8php.html | 2 +- doc/html/photo__imagick_8php.html | 2 +- doc/html/php2po_8php.html | 4 +- doc/html/php_2default_8php.html | 2 +- doc/html/php_2theme__init_8php.html | 26 +- doc/html/php_2theme__init_8php.js | 4 + doc/html/php_8php.html | 2 +- doc/html/pine_8php.html | 2 +- doc/html/ping_8php.html | 2 +- doc/html/plugin_8php.html | 10 +- doc/html/po2php_8php.html | 2 +- doc/html/poco_8php.html | 2 +- doc/html/poke_8php.html | 2 +- doc/html/poller_8php.html | 2 +- doc/html/post_8php.html | 2 +- doc/html/post__to__red_8php.html | 168 +++++++++++-- doc/html/post__to__red_8php.js | 7 +- doc/html/pretheme_8php.html | 2 +- doc/html/probe_8php.html | 2 +- doc/html/profile_8php.html | 2 +- doc/html/profile__advanced_8php.html | 2 +- doc/html/profile__photo_8php.html | 2 +- doc/html/profile__selectors_8php.html | 2 +- doc/html/profiles_8php.html | 2 +- doc/html/profperm_8php.html | 2 +- doc/html/pubsites_8php.html | 2 +- doc/html/qsearch_8php.html | 2 +- doc/html/queue_8php.html | 2 +- doc/html/queue__fn_8php.html | 2 +- doc/html/randprof_8php.html | 2 +- doc/html/redbasic_2php_2style_8php.html | 2 +- doc/html/redbasic_2php_2theme_8php.html | 2 +- doc/html/redbasic_8php.html | 2 +- doc/html/reddav_8php.html | 2 +- doc/html/redir_8php.html | 2 +- doc/html/register_8php.html | 2 +- doc/html/regmod_8php.html | 2 +- doc/html/removeme_8php.html | 2 +- doc/html/rm-64.png | Bin 0 -> 5236 bytes doc/html/rmagic_8php.html | 2 +- doc/html/rpost_8php.html | 2 +- doc/html/rsd__xml_8php.html | 2 +- doc/html/search/all_24.js | 5 +- doc/html/search/all_62.js | 6 + doc/html/search/all_63.js | 2 + doc/html/search/all_64.js | 4 +- doc/html/search/all_69.js | 2 +- doc/html/search/all_70.js | 5 +- doc/html/search/all_72.js | 5 +- doc/html/search/all_74.js | 12 +- doc/html/search/all_7a.js | 2 +- doc/html/search/files_63.js | 6 +- doc/html/search/files_64.js | 4 +- doc/html/search/files_72.js | 3 +- doc/html/search/files_74.js | 8 +- doc/html/search/functions_62.js | 6 + doc/html/search/functions_70.js | 5 +- doc/html/search/functions_72.js | 2 + doc/html/search/functions_74.js | 6 +- doc/html/search/functions_7a.js | 2 +- doc/html/search/variables_24.js | 5 +- doc/html/search/variables_69.js | 2 +- doc/html/search_8php.html | 2 +- doc/html/search__ac_8php.html | 2 +- doc/html/security_8php.html | 2 +- doc/html/session_8php.html | 2 +- doc/html/settings_8php.html | 2 +- doc/html/setup_8php.html | 2 +- doc/html/share_8php.html | 2 +- doc/html/siteinfo_8php.html | 2 +- doc/html/sitelist_8php.html | 2 +- doc/html/smilies_8php.html | 2 +- doc/html/socgraph_8php.html | 2 +- doc/html/sources_8php.html | 2 +- doc/html/starred_8php.html | 2 +- doc/html/subthread_8php.html | 2 +- doc/html/suggest_8php.html | 2 +- doc/html/system__unavailable_8php.html | 2 +- doc/html/tagger_8php.html | 2 +- doc/html/tagrm_8php.html | 2 +- doc/html/taxonomy_8php.html | 2 +- doc/html/template__processor_8php.html | 2 +- doc/html/text_8php.html | 8 +- .../theme_2blogga_2php_2default_8php.html | 165 +++++++++++++ doc/html/theme_2blogga_2php_2default_8php.js | 6 + .../theme_2blogga_2php_2theme__init_8php.html | 112 +++++++++ ...ogga_2view_2theme_2blog_2default_8php.html | 161 ++++++++++++ ...blogga_2view_2theme_2blog_2default_8php.js | 6 + ...heme_2redbasic_2php_2theme__init_8php.html | 112 +++++++++ doc/html/thing_8php.html | 2 +- doc/html/toggle__mobile_8php.html | 2 +- doc/html/toggle__safesearch_8php.html | 2 +- doc/html/tpldebug_8php.html | 2 +- doc/html/typo_8php.html | 4 +- doc/html/typohelper_8php.html | 2 +- doc/html/uexport_8php.html | 2 +- doc/html/update__channel_8php.html | 2 +- doc/html/update__community_8php.html | 2 +- doc/html/update__display_8php.html | 2 +- doc/html/update__network_8php.html | 2 +- doc/html/update__search_8php.html | 2 +- doc/html/updatetpl_8py.html | 2 +- .../view_2theme_2apw_2php_2config_8php.html | 2 +- ...view_2theme_2blogga_2php_2config_8php.html | 232 ++++++++++++++++++ .../view_2theme_2blogga_2php_2config_8php.js | 8 + ...logga_2view_2theme_2blog_2config_8php.html | 226 +++++++++++++++++ ...2blogga_2view_2theme_2blog_2config_8php.js | 8 + ...ew_2theme_2redbasic_2php_2config_8php.html | 2 +- doc/html/view_8php.html | 2 +- doc/html/viewconnections_8php.html | 2 +- doc/html/viewsrc_8php.html | 2 +- doc/html/vote_8php.html | 2 +- doc/html/wall__attach_8php.html | 2 +- doc/html/wall__upload_8php.html | 2 +- doc/html/webfinger_8php.html | 2 +- doc/html/webpages_8php.html | 2 +- doc/html/wfinger_8php.html | 2 +- doc/html/widedarkness_8php.html | 2 +- doc/html/widgets_8php.html | 2 +- doc/html/xchan_8php.html | 2 +- doc/html/xrd_8php.html | 2 +- doc/html/zfinger_8php.html | 2 +- doc/html/zot_8php.html | 128 ++++++++-- doc/html/zot_8php.js | 2 +- doc/html/zotfeed_8php.html | 2 +- doc/html/zping_8php.html | 2 +- 508 files changed, 3539 insertions(+), 751 deletions(-) create mode 100644 doc/html/apw_2README_8md.html create mode 100644 doc/html/blogga_2php_2README_8md.html create mode 100644 doc/html/blogga_2php_2theme_8php.html create mode 100644 doc/html/blogga_2php_2theme_8php.js create mode 100644 doc/html/blogga_2view_2theme_2blog_2theme_8php.html create mode 100644 doc/html/blogga_2view_2theme_2blog_2theme_8php.js create mode 100644 doc/html/dir_25f74a9991dbbca1b52a94e358ca73c1.html create mode 100644 doc/html/dir_25f74a9991dbbca1b52a94e358ca73c1.js create mode 100644 doc/html/dir_6cee3bb9ace89cc4e2f065aa2ca7bc5b.html create mode 100644 doc/html/dir_6cee3bb9ace89cc4e2f065aa2ca7bc5b.js create mode 100644 doc/html/dir_922c77e958c99a98db92d38a3a349bf2.html create mode 100644 doc/html/dir_922c77e958c99a98db92d38a3a349bf2.js create mode 100644 doc/html/dir_92d6b429199666aa3765c8a934db5e14.html create mode 100644 doc/html/dir_92d6b429199666aa3765c8a934db5e14.js create mode 100644 doc/html/dir_a8a0005c2b8590c535262d232c22afab.html create mode 100644 doc/html/dir_a8a0005c2b8590c535262d232c22afab.js create mode 100644 doc/html/dir_c02447ad39a5307c81c64e880ec9e8d3.html create mode 100644 doc/html/dir_c02447ad39a5307c81c64e880ec9e8d3.js create mode 100644 doc/html/navtreeindex8.js create mode 100644 doc/html/php_2theme__init_8php.js create mode 100644 doc/html/rm-64.png create mode 100644 doc/html/theme_2blogga_2php_2default_8php.html create mode 100644 doc/html/theme_2blogga_2php_2default_8php.js create mode 100644 doc/html/theme_2blogga_2php_2theme__init_8php.html create mode 100644 doc/html/theme_2blogga_2view_2theme_2blog_2default_8php.html create mode 100644 doc/html/theme_2blogga_2view_2theme_2blog_2default_8php.js create mode 100644 doc/html/theme_2redbasic_2php_2theme__init_8php.html create mode 100644 doc/html/view_2theme_2blogga_2php_2config_8php.html create mode 100644 doc/html/view_2theme_2blogga_2php_2config_8php.js create mode 100644 doc/html/view_2theme_2blogga_2view_2theme_2blog_2config_8php.html create mode 100644 doc/html/view_2theme_2blogga_2view_2theme_2blog_2config_8php.js diff --git a/doc/html/BaseObject_8php.html b/doc/html/BaseObject_8php.html index 73fcf06ee..b399ff36f 100644 --- a/doc/html/BaseObject_8php.html +++ b/doc/html/BaseObject_8php.html @@ -28,7 +28,7 @@
    {{$product}}
    - +
    The Red Matrix
    diff --git a/doc/html/Contact_8php.html b/doc/html/Contact_8php.html index 88019706d..c626f3a6b 100644 --- a/doc/html/Contact_8php.html +++ b/doc/html/Contact_8php.html @@ -28,7 +28,7 @@ - +
    The Red Matrix
    diff --git a/doc/html/ConversationObject_8php.html b/doc/html/ConversationObject_8php.html index e89d0e39d..02a09213b 100644 --- a/doc/html/ConversationObject_8php.html +++ b/doc/html/ConversationObject_8php.html @@ -28,7 +28,7 @@ - +
    The Red Matrix
    diff --git a/doc/html/ITemplateEngine_8php.html b/doc/html/ITemplateEngine_8php.html index 34cb6577b..a2e4e9a43 100644 --- a/doc/html/ITemplateEngine_8php.html +++ b/doc/html/ITemplateEngine_8php.html @@ -28,7 +28,7 @@ - +
    The Red Matrix
    diff --git a/doc/html/ItemObject_8php.html b/doc/html/ItemObject_8php.html index 4a72f4ca8..08b61619c 100644 --- a/doc/html/ItemObject_8php.html +++ b/doc/html/ItemObject_8php.html @@ -28,7 +28,7 @@ - +
    The Red Matrix
    diff --git a/doc/html/ProtoDriver_8php.html b/doc/html/ProtoDriver_8php.html index e419d0c4d..6d918344a 100644 --- a/doc/html/ProtoDriver_8php.html +++ b/doc/html/ProtoDriver_8php.html @@ -28,7 +28,7 @@ - +
    The Red Matrix
    diff --git a/doc/html/__well__known_8php.html b/doc/html/__well__known_8php.html index b78d77c12..96032186d 100644 --- a/doc/html/__well__known_8php.html +++ b/doc/html/__well__known_8php.html @@ -28,7 +28,7 @@ - +
    The Red Matrix
    diff --git a/doc/html/account_8php.html b/doc/html/account_8php.html index d8a3c2d6c..547c7016e 100644 --- a/doc/html/account_8php.html +++ b/doc/html/account_8php.html @@ -28,7 +28,7 @@ - +
    The Red Matrix
    diff --git a/doc/html/acl_8php.html b/doc/html/acl_8php.html index 933631019..fa0fe0018 100644 --- a/doc/html/acl_8php.html +++ b/doc/html/acl_8php.html @@ -28,7 +28,7 @@ - +
    The Red Matrix
    diff --git a/doc/html/acl__selectors_8php.html b/doc/html/acl__selectors_8php.html index 67752af0d..d16051349 100644 --- a/doc/html/acl__selectors_8php.html +++ b/doc/html/acl__selectors_8php.html @@ -28,7 +28,7 @@ - +
    The Red Matrix
    diff --git a/doc/html/activities_8php.html b/doc/html/activities_8php.html index 31a786664..86428ecc8 100644 --- a/doc/html/activities_8php.html +++ b/doc/html/activities_8php.html @@ -28,7 +28,7 @@ - +
    The Red Matrix
    diff --git a/doc/html/admin_8php.html b/doc/html/admin_8php.html index 4419c6ef4..ff835ad08 100644 --- a/doc/html/admin_8php.html +++ b/doc/html/admin_8php.html @@ -28,7 +28,7 @@ - +
    The Red Matrix
    diff --git a/doc/html/allfriends_8php.html b/doc/html/allfriends_8php.html index 9d55a584d..eb1568786 100644 --- a/doc/html/allfriends_8php.html +++ b/doc/html/allfriends_8php.html @@ -28,7 +28,7 @@ - +
    The Red Matrix
    diff --git a/doc/html/annotated.html b/doc/html/annotated.html index 1d15b5588..32271b4f4 100644 --- a/doc/html/annotated.html +++ b/doc/html/annotated.html @@ -28,7 +28,7 @@ - +
    The Red Matrix
    diff --git a/doc/html/apps_8php.html b/doc/html/apps_8php.html index 67b133d31..47a49270a 100644 --- a/doc/html/apps_8php.html +++ b/doc/html/apps_8php.html @@ -28,7 +28,7 @@ - +
    The Red Matrix
    diff --git a/doc/html/apw_2README_8md.html b/doc/html/apw_2README_8md.html new file mode 100644 index 000000000..815c86f05 --- /dev/null +++ b/doc/html/apw_2README_8md.html @@ -0,0 +1,112 @@ + + + + + + +The Red Matrix: view/theme/apw/README.md File Reference + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    The Red Matrix +
    +
    +
    + + + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    +
    +
    view/theme/apw/README.md File Reference
    +
    +
    +
    +
    + diff --git a/doc/html/apw_2php_2style_8php.html b/doc/html/apw_2php_2style_8php.html index 610640439..baa2cfdec 100644 --- a/doc/html/apw_2php_2style_8php.html +++ b/doc/html/apw_2php_2style_8php.html @@ -28,7 +28,7 @@ - +
    The Red Matrix
    diff --git a/doc/html/apw_2php_2theme_8php.html b/doc/html/apw_2php_2theme_8php.html index 07016cac2..10f7b089c 100644 --- a/doc/html/apw_2php_2theme_8php.html +++ b/doc/html/apw_2php_2theme_8php.html @@ -28,7 +28,7 @@ - +
    The Red Matrix
    diff --git a/doc/html/auth_8php.html b/doc/html/auth_8php.html index 4a3100253..79e1ce375 100644 --- a/doc/html/auth_8php.html +++ b/doc/html/auth_8php.html @@ -28,7 +28,7 @@ - +
    The Red Matrix
    diff --git a/doc/html/bb2diaspora_8php.html b/doc/html/bb2diaspora_8php.html index d7293a518..a10d17d51 100644 --- a/doc/html/bb2diaspora_8php.html +++ b/doc/html/bb2diaspora_8php.html @@ -28,7 +28,7 @@ - +
    The Red Matrix
    diff --git a/doc/html/bbcode_8php.html b/doc/html/bbcode_8php.html index daff36f2e..77c5e873b 100644 --- a/doc/html/bbcode_8php.html +++ b/doc/html/bbcode_8php.html @@ -28,7 +28,7 @@ - +
    The Red Matrix
    diff --git a/doc/html/blocks_8php.html b/doc/html/blocks_8php.html index b99143aee..8993de9ed 100644 --- a/doc/html/blocks_8php.html +++ b/doc/html/blocks_8php.html @@ -28,7 +28,7 @@ - +
    The Red Matrix
    diff --git a/doc/html/blogga_2php_2README_8md.html b/doc/html/blogga_2php_2README_8md.html new file mode 100644 index 000000000..77e6ad489 --- /dev/null +++ b/doc/html/blogga_2php_2README_8md.html @@ -0,0 +1,112 @@ + + + + + + +The Red Matrix: view/theme/blogga/php/README.md File Reference + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    The Red Matrix +
    +
    +
    + + + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    +
    +
    view/theme/blogga/php/README.md File Reference
    +
    +
    +
    +
    + diff --git a/doc/html/blogga_2php_2theme_8php.html b/doc/html/blogga_2php_2theme_8php.html new file mode 100644 index 000000000..7dec443c3 --- /dev/null +++ b/doc/html/blogga_2php_2theme_8php.html @@ -0,0 +1,138 @@ + + + + + + +The Red Matrix: view/theme/blogga/php/theme.php File Reference + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    The Red Matrix +
    +
    +
    + + + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    theme.php File Reference
    +
    +
    + + + + +

    +Functions

     blog_init (&$a)
     
    +

    Function Documentation

    + +
    +
    + + + + + + + + +
    blog_init ($a)
    +
    +

    Name: Blogga Version: 0.6 Description: Blog theme ported from Twenty Eleven wordpress theme, Licensed under GNU General Public License v2 or later Author: Fabio http://kirgroup.com/profile/fabrixxm Maintainer: Mike <zot:mike@.nosp@m.zoth.nosp@m.ub.co.nosp@m.m>

    + +
    +
    +
    +
    + diff --git a/doc/html/blogga_2php_2theme_8php.js b/doc/html/blogga_2php_2theme_8php.js new file mode 100644 index 000000000..6564e93f7 --- /dev/null +++ b/doc/html/blogga_2php_2theme_8php.js @@ -0,0 +1,4 @@ +var blogga_2php_2theme_8php = +[ + [ "blog_init", "blogga_2php_2theme_8php.html#aa55c1cb1f05087b5002ecb633b550b1b", null ] +]; \ No newline at end of file diff --git a/doc/html/blogga_2view_2theme_2blog_2theme_8php.html b/doc/html/blogga_2view_2theme_2blog_2theme_8php.html new file mode 100644 index 000000000..db3d2371d --- /dev/null +++ b/doc/html/blogga_2view_2theme_2blog_2theme_8php.html @@ -0,0 +1,220 @@ + + + + + + +The Red Matrix: view/theme/blogga/view/theme/blog/theme.php File Reference + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    The Red Matrix +
    +
    +
    + + + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    theme.php File Reference
    +
    +
    + + + + + + + + + + + + +

    +Functions

     blog_init (&$a)
     
     blog_install (&$a)
     
     blog_uninstall (&$a)
     
     blogtheme_imgurl ($headimg)
     
     blogtheme_display_item (&$a, &$data)
     
    +

    Function Documentation

    + +
    +
    + + + + + + + + +
    blog_init ($a)
    +
    +

    Name: Blog Version: 0.6 Description: Blog theme ported from Twenty Eleven wordpress theme, Licensed under GNU General Public License v2 or later Author: Fabio http://kirgroup.com/profile/fabrixxm Maintainer: Fabio http://kirgroup.com/profile/fabrixxm

    + +
    +
    + +
    +
    + + + + + + + + +
    blog_install ($a)
    +
    + +
    +
    + +
    +
    + + + + + + + + +
    blog_uninstall ($a)
    +
    + +
    +
    + +
    +
    + + + + + + + + + + + + + + + + + + +
    blogtheme_display_item ($a,
    $data 
    )
    +
    + +
    +
    + +
    +
    + + + + + + + + +
    blogtheme_imgurl ( $headimg)
    +
    + +
    +
    +
    +
    + diff --git a/doc/html/blogga_2view_2theme_2blog_2theme_8php.js b/doc/html/blogga_2view_2theme_2blog_2theme_8php.js new file mode 100644 index 000000000..2098cac8b --- /dev/null +++ b/doc/html/blogga_2view_2theme_2blog_2theme_8php.js @@ -0,0 +1,8 @@ +var blogga_2view_2theme_2blog_2theme_8php = +[ + [ "blog_init", "blogga_2view_2theme_2blog_2theme_8php.html#aa55c1cb1f05087b5002ecb633b550b1b", null ], + [ "blog_install", "blogga_2view_2theme_2blog_2theme_8php.html#aae58cc837fe56473d9f3370abfe533ae", null ], + [ "blog_uninstall", "blogga_2view_2theme_2blog_2theme_8php.html#a3e77dbe111f330c64a1ff6c741cd515c", null ], + [ "blogtheme_display_item", "blogga_2view_2theme_2blog_2theme_8php.html#a028ae8e9f2824670dfa76a6651d817e5", null ], + [ "blogtheme_imgurl", "blogga_2view_2theme_2blog_2theme_8php.html#af634a3f721c5e238530d0636d33230ec", null ] +]; \ No newline at end of file diff --git a/doc/html/boot_8php.html b/doc/html/boot_8php.html index b0f57fa96..f4d387ae9 100644 --- a/doc/html/boot_8php.html +++ b/doc/html/boot_8php.html @@ -28,7 +28,7 @@ - +
    The Red Matrix
    @@ -962,7 +962,7 @@ Variables
    -

    Referenced by FriendicaSmarty\__construct(), FriendicaSmartyEngine\__construct(), abook_toggle_flag(), allowed_public_recips(), api_apply_template(), api_format_items(), api_get_user(), api_statuses_home_timeline(), api_statuses_repeat(), api_user(), argc(), argv(), atom_entry(), authenticate_success(), avatar_img(), bbcode(), best_link_url(), build_sync_packet(), call_hooks(), can_comment_on_post(), categories_widget(), change_channel(), channel_remove(), check_form_security_token(), check_form_security_token_ForbiddenOnErr(), check_form_security_token_redirectOnErr(), check_htaccess(), cli_suggest_run(), comanche_block(), comanche_menu(), comanche_replace_region(), comanche_widget(), common_friends_visitor_widget(), connections_content(), contact_block(), contact_select(), create_identity(), current_theme(), deliver_run(), design_tools(), dfrn_deliver(), drop_item(), event_store(), fetch_url(), fileas_widget(), findpeople_widget(), fix_attached_photo_permissions(), fix_private_photos(), follow_widget(), format_event_diaspora(), get_account_id(), get_best_language(), get_birthdays(), get_events(), get_feed_for(), get_form_security_token(), FriendicaSmartyEngine\get_intltext_template(), get_intltext_template(), get_markup_template(), get_observer_hash(), get_plink(), get_theme_config_file(), get_theme_screenshot(), gprobe_run(), group_select(), guess_image_type(), head_add_css(), head_add_js(), head_get_css(), head_get_js(), import_channel_photo(), import_directory_profile(), import_post(), import_profile_photo(), import_xchan(), info(), is_site_admin(), item_message_id(), item_photo_menu(), item_redir_and_replace_images(), item_store(), item_store_update(), items_fetch(), load_contact_links(), load_hooks(), login(), FKOAuth1\loginUser(), lrdd(), manage_content(), map_scope(), nav_set_selected(), new_contact(), notice(), notification(), notifier_run(), oembed_fetch_url(), oembed_format_object(), oembed_iframe(), onedirsync_run(), onepoll_run(), page_content(), ping_init(), poco_load(), poller_run(), post_activity_item(), post_url(), preg_heart(), prepare_body(), proc_run(), process_delivery(), profile_activity(), profile_sidebar(), public_permissions_sql(), replace_macros(), rmagic_init(), rpost_callback(), saved_searches(), scale_external_images(), search(), send_message(), send_reg_approval_email(), send_status_notifications(), send_verification_email(), service_class_allows(), service_class_fetch(), smilies(), syncdirs(), tag_deliver(), terminate_friendship(), tgroup_check(), theme_include(), tt(), update_suggestions(), user_allow(), vcard_from_xchan(), what_next(), widget_profile(), widget_tagcloud(), z_fetch_url(), and zot_finger().

    +

    Referenced by FriendicaSmarty\__construct(), FriendicaSmartyEngine\__construct(), abook_toggle_flag(), allowed_public_recips(), api_apply_template(), api_format_items(), api_get_user(), api_statuses_home_timeline(), api_statuses_repeat(), api_user(), argc(), argv(), atom_entry(), authenticate_success(), avatar_img(), bbcode(), best_link_url(), blogtheme_imgurl(), build_sync_packet(), call_hooks(), can_comment_on_post(), categories_widget(), change_channel(), channel_remove(), check_form_security_token(), check_form_security_token_ForbiddenOnErr(), check_form_security_token_redirectOnErr(), check_htaccess(), cli_suggest_run(), comanche_block(), comanche_menu(), comanche_replace_region(), comanche_widget(), common_friends_visitor_widget(), connections_content(), contact_block(), contact_select(), create_identity(), current_theme(), deliver_run(), design_tools(), dfrn_deliver(), drop_item(), event_store(), fetch_url(), fileas_widget(), findpeople_widget(), fix_attached_photo_permissions(), fix_private_photos(), follow_widget(), format_event_diaspora(), get_account_id(), get_best_language(), get_birthdays(), get_events(), get_feed_for(), get_form_security_token(), FriendicaSmartyEngine\get_intltext_template(), get_intltext_template(), get_markup_template(), get_observer_hash(), get_plink(), get_theme_config_file(), get_theme_screenshot(), gprobe_run(), group_select(), guess_image_type(), head_add_css(), head_add_js(), head_get_css(), head_get_js(), import_channel_photo(), import_directory_profile(), import_post(), import_profile_photo(), import_xchan(), info(), is_site_admin(), item_message_id(), item_photo_menu(), item_redir_and_replace_images(), item_store(), item_store_update(), items_fetch(), load_contact_links(), load_hooks(), login(), FKOAuth1\loginUser(), lrdd(), manage_content(), map_scope(), nav_set_selected(), new_contact(), notice(), notification(), notifier_run(), oembed_fetch_url(), oembed_format_object(), oembed_iframe(), onedirsync_run(), onepoll_run(), page_content(), ping_init(), poco_load(), poller_run(), post_activity_item(), post_url(), preg_heart(), prepare_body(), proc_run(), process_delivery(), profile_activity(), profile_sidebar(), public_permissions_sql(), replace_macros(), rmagic_init(), rpost_callback(), saved_searches(), scale_external_images(), search(), send_message(), send_reg_approval_email(), send_status_notifications(), send_verification_email(), service_class_allows(), service_class_fetch(), smilies(), syncdirs(), tag_deliver(), terminate_friendship(), tgroup_check(), theme_include(), tt(), update_suggestions(), user_allow(), vcard_from_xchan(), what_next(), widget_profile(), widget_tagcloud(), z_fetch_url(), and zot_finger().

    @@ -1292,7 +1292,7 @@ Variables
    @@ -2579,7 +2579,7 @@ Variables
    @@ -2593,7 +2593,7 @@ Variables
    @@ -2723,7 +2723,7 @@ Variables
    diff --git a/doc/html/cache_8php.html b/doc/html/cache_8php.html index f88decc38..b7cbd6a1f 100644 --- a/doc/html/cache_8php.html +++ b/doc/html/cache_8php.html @@ -28,7 +28,7 @@ - +
    The Red Matrix
    diff --git a/doc/html/channel_8php.html b/doc/html/channel_8php.html index 76ac3beb6..bea337346 100644 --- a/doc/html/channel_8php.html +++ b/doc/html/channel_8php.html @@ -28,7 +28,7 @@ - +
    The Red Matrix
    diff --git a/doc/html/chanview_8php.html b/doc/html/chanview_8php.html index dafe62257..362affb17 100644 --- a/doc/html/chanview_8php.html +++ b/doc/html/chanview_8php.html @@ -28,7 +28,7 @@ - +
    The Red Matrix
    diff --git a/doc/html/classApp-members.html b/doc/html/classApp-members.html index 495c1683e..577a14559 100644 --- a/doc/html/classApp-members.html +++ b/doc/html/classApp-members.html @@ -28,7 +28,7 @@ - +
    The Red Matrix
    diff --git a/doc/html/classApp.html b/doc/html/classApp.html index 313a7fc85..f5d4a8d21 100644 --- a/doc/html/classApp.html +++ b/doc/html/classApp.html @@ -28,7 +28,7 @@ - +
    The Red Matrix
    diff --git a/doc/html/classBaseObject-members.html b/doc/html/classBaseObject-members.html index 2cc4aed11..6ea953349 100644 --- a/doc/html/classBaseObject-members.html +++ b/doc/html/classBaseObject-members.html @@ -28,7 +28,7 @@ - +
    The Red Matrix
    diff --git a/doc/html/classBaseObject.html b/doc/html/classBaseObject.html index f83c0e393..6aa26d5ba 100644 --- a/doc/html/classBaseObject.html +++ b/doc/html/classBaseObject.html @@ -28,7 +28,7 @@ - +
    The Red Matrix
    diff --git a/doc/html/classCache-members.html b/doc/html/classCache-members.html index f45439a83..3244cad73 100644 --- a/doc/html/classCache-members.html +++ b/doc/html/classCache-members.html @@ -28,7 +28,7 @@ - +
    The Red Matrix
    diff --git a/doc/html/classCache.html b/doc/html/classCache.html index 9eaf93380..f2c1f7991 100644 --- a/doc/html/classCache.html +++ b/doc/html/classCache.html @@ -28,7 +28,7 @@ - +
    The Red Matrix
    diff --git a/doc/html/classConversation-members.html b/doc/html/classConversation-members.html index a68650bd6..b8df9ac33 100644 --- a/doc/html/classConversation-members.html +++ b/doc/html/classConversation-members.html @@ -28,7 +28,7 @@ - +
    The Red Matrix
    diff --git a/doc/html/classConversation.html b/doc/html/classConversation.html index fe9de72eb..cb5760686 100644 --- a/doc/html/classConversation.html +++ b/doc/html/classConversation.html @@ -28,7 +28,7 @@ - +
    The Red Matrix
    diff --git a/doc/html/classFKOAuth1-members.html b/doc/html/classFKOAuth1-members.html index dd4343883..a04cf959f 100644 --- a/doc/html/classFKOAuth1-members.html +++ b/doc/html/classFKOAuth1-members.html @@ -28,7 +28,7 @@ - +
    The Red Matrix
    diff --git a/doc/html/classFKOAuth1.html b/doc/html/classFKOAuth1.html index 7e3fb8590..60db51336 100644 --- a/doc/html/classFKOAuth1.html +++ b/doc/html/classFKOAuth1.html @@ -28,7 +28,7 @@ - +
    The Red Matrix
    diff --git a/doc/html/classFKOAuthDataStore-members.html b/doc/html/classFKOAuthDataStore-members.html index d5cab373b..92f47bd79 100644 --- a/doc/html/classFKOAuthDataStore-members.html +++ b/doc/html/classFKOAuthDataStore-members.html @@ -28,7 +28,7 @@ - +
    The Red Matrix
    diff --git a/doc/html/classFKOAuthDataStore.html b/doc/html/classFKOAuthDataStore.html index 9966c83e1..1abca9ae5 100644 --- a/doc/html/classFKOAuthDataStore.html +++ b/doc/html/classFKOAuthDataStore.html @@ -28,7 +28,7 @@ - +
    The Red Matrix
    diff --git a/doc/html/classFriendicaSmarty-members.html b/doc/html/classFriendicaSmarty-members.html index e160a346c..e4f7ff597 100644 --- a/doc/html/classFriendicaSmarty-members.html +++ b/doc/html/classFriendicaSmarty-members.html @@ -28,7 +28,7 @@ - +
    The Red Matrix
    diff --git a/doc/html/classFriendicaSmarty.html b/doc/html/classFriendicaSmarty.html index 49f77b903..e0edc33b3 100644 --- a/doc/html/classFriendicaSmarty.html +++ b/doc/html/classFriendicaSmarty.html @@ -28,7 +28,7 @@ - +
    The Red Matrix
    diff --git a/doc/html/classFriendicaSmartyEngine-members.html b/doc/html/classFriendicaSmartyEngine-members.html index 772ff8657..b63f0e70a 100644 --- a/doc/html/classFriendicaSmartyEngine-members.html +++ b/doc/html/classFriendicaSmartyEngine-members.html @@ -28,7 +28,7 @@ - +
    The Red Matrix
    diff --git a/doc/html/classFriendicaSmartyEngine.html b/doc/html/classFriendicaSmartyEngine.html index 40f28092f..756258847 100644 --- a/doc/html/classFriendicaSmartyEngine.html +++ b/doc/html/classFriendicaSmartyEngine.html @@ -28,7 +28,7 @@ - +
    The Red Matrix
    diff --git a/doc/html/classItem-members.html b/doc/html/classItem-members.html index bdafb9e14..a4c9c11b1 100644 --- a/doc/html/classItem-members.html +++ b/doc/html/classItem-members.html @@ -28,7 +28,7 @@ - +
    The Red Matrix
    diff --git a/doc/html/classItem.html b/doc/html/classItem.html index d37548bb6..5239498e5 100644 --- a/doc/html/classItem.html +++ b/doc/html/classItem.html @@ -28,7 +28,7 @@ - +
    The Red Matrix
    diff --git a/doc/html/classProtoDriver-members.html b/doc/html/classProtoDriver-members.html index 6eebcbc54..671b893d9 100644 --- a/doc/html/classProtoDriver-members.html +++ b/doc/html/classProtoDriver-members.html @@ -28,7 +28,7 @@ - +
    The Red Matrix
    diff --git a/doc/html/classProtoDriver.html b/doc/html/classProtoDriver.html index cb869b65b..4e95667dd 100644 --- a/doc/html/classProtoDriver.html +++ b/doc/html/classProtoDriver.html @@ -28,7 +28,7 @@ - +
    The Red Matrix
    diff --git a/doc/html/classRedBasicAuth-members.html b/doc/html/classRedBasicAuth-members.html index d12aa9a5e..10817e697 100644 --- a/doc/html/classRedBasicAuth-members.html +++ b/doc/html/classRedBasicAuth-members.html @@ -28,7 +28,7 @@ - +
    The Red Matrix
    diff --git a/doc/html/classRedBasicAuth.html b/doc/html/classRedBasicAuth.html index 0269822c9..8bf5996ca 100644 --- a/doc/html/classRedBasicAuth.html +++ b/doc/html/classRedBasicAuth.html @@ -28,7 +28,7 @@ - +
    The Red Matrix
    diff --git a/doc/html/classRedDirectory-members.html b/doc/html/classRedDirectory-members.html index 0fe498712..a3a9ea6a3 100644 --- a/doc/html/classRedDirectory-members.html +++ b/doc/html/classRedDirectory-members.html @@ -28,7 +28,7 @@ - +
    The Red Matrix
    diff --git a/doc/html/classRedDirectory.html b/doc/html/classRedDirectory.html index 118699a0e..bec72e8f4 100644 --- a/doc/html/classRedDirectory.html +++ b/doc/html/classRedDirectory.html @@ -28,7 +28,7 @@ - +
    The Red Matrix
    diff --git a/doc/html/classRedFile-members.html b/doc/html/classRedFile-members.html index 3f24d0365..31c1eb782 100644 --- a/doc/html/classRedFile-members.html +++ b/doc/html/classRedFile-members.html @@ -28,7 +28,7 @@ - +
    The Red Matrix
    diff --git a/doc/html/classRedFile.html b/doc/html/classRedFile.html index 68d4fc413..1fa5b9e54 100644 --- a/doc/html/classRedFile.html +++ b/doc/html/classRedFile.html @@ -28,7 +28,7 @@ - +
    The Red Matrix
    diff --git a/doc/html/classRedInode-members.html b/doc/html/classRedInode-members.html index 475100a71..3d8504822 100644 --- a/doc/html/classRedInode-members.html +++ b/doc/html/classRedInode-members.html @@ -28,7 +28,7 @@ - +
    The Red Matrix
    diff --git a/doc/html/classRedInode.html b/doc/html/classRedInode.html index 0f5267ba4..3f19069a6 100644 --- a/doc/html/classRedInode.html +++ b/doc/html/classRedInode.html @@ -28,7 +28,7 @@ - +
    The Red Matrix
    diff --git a/doc/html/classTemplate-members.html b/doc/html/classTemplate-members.html index ced57d9fa..c3620c316 100644 --- a/doc/html/classTemplate-members.html +++ b/doc/html/classTemplate-members.html @@ -28,7 +28,7 @@ - +
    The Red Matrix
    diff --git a/doc/html/classTemplate.html b/doc/html/classTemplate.html index 18a4ee771..9ea7d2643 100644 --- a/doc/html/classTemplate.html +++ b/doc/html/classTemplate.html @@ -28,7 +28,7 @@ - +
    The Red Matrix
    diff --git a/doc/html/classZotDriver-members.html b/doc/html/classZotDriver-members.html index 5970e2144..eb4c0a6b2 100644 --- a/doc/html/classZotDriver-members.html +++ b/doc/html/classZotDriver-members.html @@ -28,7 +28,7 @@ - +
    The Red Matrix
    diff --git a/doc/html/classZotDriver.html b/doc/html/classZotDriver.html index 5983ecd39..4e12e318e 100644 --- a/doc/html/classZotDriver.html +++ b/doc/html/classZotDriver.html @@ -28,7 +28,7 @@ - +
    The Red Matrix
    diff --git a/doc/html/classdba__driver-members.html b/doc/html/classdba__driver-members.html index 96b4a6225..cf4075c93 100644 --- a/doc/html/classdba__driver-members.html +++ b/doc/html/classdba__driver-members.html @@ -28,7 +28,7 @@ - +
    The Red Matrix
    diff --git a/doc/html/classdba__driver.html b/doc/html/classdba__driver.html index ffac32e66..e70d8bf1f 100644 --- a/doc/html/classdba__driver.html +++ b/doc/html/classdba__driver.html @@ -28,7 +28,7 @@ - +
    The Red Matrix
    diff --git a/doc/html/classdba__mysql-members.html b/doc/html/classdba__mysql-members.html index dfc7c777b..15a22064f 100644 --- a/doc/html/classdba__mysql-members.html +++ b/doc/html/classdba__mysql-members.html @@ -28,7 +28,7 @@ - +
    The Red Matrix
    diff --git a/doc/html/classdba__mysql.html b/doc/html/classdba__mysql.html index 0604ea688..df61678d5 100644 --- a/doc/html/classdba__mysql.html +++ b/doc/html/classdba__mysql.html @@ -28,7 +28,7 @@ - +
    The Red Matrix
    diff --git a/doc/html/classdba__mysqli-members.html b/doc/html/classdba__mysqli-members.html index e58c0dad1..cdfcb2dc4 100644 --- a/doc/html/classdba__mysqli-members.html +++ b/doc/html/classdba__mysqli-members.html @@ -28,7 +28,7 @@ - +
    The Red Matrix
    diff --git a/doc/html/classdba__mysqli.html b/doc/html/classdba__mysqli.html index 5b1ef74cb..985a7216b 100644 --- a/doc/html/classdba__mysqli.html +++ b/doc/html/classdba__mysqli.html @@ -28,7 +28,7 @@ - +
    The Red Matrix
    diff --git a/doc/html/classenotify-members.html b/doc/html/classenotify-members.html index df4eae18a..65681ca44 100644 --- a/doc/html/classenotify-members.html +++ b/doc/html/classenotify-members.html @@ -28,7 +28,7 @@ - +
    The Red Matrix
    diff --git a/doc/html/classenotify.html b/doc/html/classenotify.html index 99084ccb0..2dc2d8640 100644 --- a/doc/html/classenotify.html +++ b/doc/html/classenotify.html @@ -28,7 +28,7 @@ - +
    The Red Matrix
    diff --git a/doc/html/classes.html b/doc/html/classes.html index a6f23706c..ec9ffc484 100644 --- a/doc/html/classes.html +++ b/doc/html/classes.html @@ -28,7 +28,7 @@ - +
    The Red Matrix
    diff --git a/doc/html/classphoto__driver-members.html b/doc/html/classphoto__driver-members.html index 4a270d6bf..f22362fb4 100644 --- a/doc/html/classphoto__driver-members.html +++ b/doc/html/classphoto__driver-members.html @@ -28,7 +28,7 @@ - +
    The Red Matrix
    diff --git a/doc/html/classphoto__driver.html b/doc/html/classphoto__driver.html index 53f6d1ecc..8a8ed59ff 100644 --- a/doc/html/classphoto__driver.html +++ b/doc/html/classphoto__driver.html @@ -28,7 +28,7 @@ - +
    The Red Matrix
    diff --git a/doc/html/classphoto__gd-members.html b/doc/html/classphoto__gd-members.html index 9fe52168d..cd85d4020 100644 --- a/doc/html/classphoto__gd-members.html +++ b/doc/html/classphoto__gd-members.html @@ -28,7 +28,7 @@ - +
    The Red Matrix
    diff --git a/doc/html/classphoto__gd.html b/doc/html/classphoto__gd.html index b9da47576..f6d76b31c 100644 --- a/doc/html/classphoto__gd.html +++ b/doc/html/classphoto__gd.html @@ -28,7 +28,7 @@ - +
    The Red Matrix
    diff --git a/doc/html/classphoto__imagick-members.html b/doc/html/classphoto__imagick-members.html index 082ce2d75..6e8be9219 100644 --- a/doc/html/classphoto__imagick-members.html +++ b/doc/html/classphoto__imagick-members.html @@ -28,7 +28,7 @@ - +
    The Red Matrix
    diff --git a/doc/html/classphoto__imagick.html b/doc/html/classphoto__imagick.html index 2efee443d..8b6f1c630 100644 --- a/doc/html/classphoto__imagick.html +++ b/doc/html/classphoto__imagick.html @@ -28,7 +28,7 @@ - +
    The Red Matrix
    diff --git a/doc/html/cli__startup_8php.html b/doc/html/cli__startup_8php.html index bb8f5d25c..44e103312 100644 --- a/doc/html/cli__startup_8php.html +++ b/doc/html/cli__startup_8php.html @@ -28,7 +28,7 @@ - +
    The Red Matrix
    diff --git a/doc/html/cli__suggest_8php.html b/doc/html/cli__suggest_8php.html index b8b1f0e96..7a57f4baa 100644 --- a/doc/html/cli__suggest_8php.html +++ b/doc/html/cli__suggest_8php.html @@ -28,7 +28,7 @@ - +
    The Red Matrix
    diff --git a/doc/html/cloud_8php.html b/doc/html/cloud_8php.html index 05196301b..68c42f825 100644 --- a/doc/html/cloud_8php.html +++ b/doc/html/cloud_8php.html @@ -28,7 +28,7 @@ - +
    The Red Matrix
    diff --git a/doc/html/comanche_8php.html b/doc/html/comanche_8php.html index 965723a75..c35379c37 100644 --- a/doc/html/comanche_8php.html +++ b/doc/html/comanche_8php.html @@ -28,7 +28,7 @@ - +
    The Red Matrix
    diff --git a/doc/html/common_8php.html b/doc/html/common_8php.html index 378acf654..4fea80ece 100644 --- a/doc/html/common_8php.html +++ b/doc/html/common_8php.html @@ -28,7 +28,7 @@ - +
    The Red Matrix
    diff --git a/doc/html/community_8php.html b/doc/html/community_8php.html index 00cdb818b..71e1deaa5 100644 --- a/doc/html/community_8php.html +++ b/doc/html/community_8php.html @@ -28,7 +28,7 @@ - +
    The Red Matrix
    diff --git a/doc/html/config_8md.html b/doc/html/config_8md.html index 91c9e736b..03a435c31 100644 --- a/doc/html/config_8md.html +++ b/doc/html/config_8md.html @@ -28,7 +28,7 @@ - +
    The Red Matrix
    diff --git a/doc/html/connect_8php.html b/doc/html/connect_8php.html index f2c267101..feb2c7cb2 100644 --- a/doc/html/connect_8php.html +++ b/doc/html/connect_8php.html @@ -28,7 +28,7 @@ - +
    The Red Matrix
    diff --git a/doc/html/connections_8php.html b/doc/html/connections_8php.html index e9f73801d..28d066222 100644 --- a/doc/html/connections_8php.html +++ b/doc/html/connections_8php.html @@ -28,7 +28,7 @@ - +
    The Red Matrix
    diff --git a/doc/html/contact__selectors_8php.html b/doc/html/contact__selectors_8php.html index 04f992db5..af2061db0 100644 --- a/doc/html/contact__selectors_8php.html +++ b/doc/html/contact__selectors_8php.html @@ -28,7 +28,7 @@ - +
    The Red Matrix
    diff --git a/doc/html/contact__widgets_8php.html b/doc/html/contact__widgets_8php.html index 6ee437953..179eded89 100644 --- a/doc/html/contact__widgets_8php.html +++ b/doc/html/contact__widgets_8php.html @@ -28,7 +28,7 @@ - +
    The Red Matrix
    diff --git a/doc/html/contactgroup_8php.html b/doc/html/contactgroup_8php.html index 58dbbe9a3..140b4ad12 100644 --- a/doc/html/contactgroup_8php.html +++ b/doc/html/contactgroup_8php.html @@ -28,7 +28,7 @@ - +
    The Red Matrix
    diff --git a/doc/html/conversation_8php.html b/doc/html/conversation_8php.html index 2f91c0913..063e41c95 100644 --- a/doc/html/conversation_8php.html +++ b/doc/html/conversation_8php.html @@ -28,7 +28,7 @@ - +
    The Red Matrix
    diff --git a/doc/html/crepair_8php.html b/doc/html/crepair_8php.html index a26c3a1e5..c9e347b75 100644 --- a/doc/html/crepair_8php.html +++ b/doc/html/crepair_8php.html @@ -28,7 +28,7 @@ - +
    The Red Matrix
    diff --git a/doc/html/cronhooks_8php.html b/doc/html/cronhooks_8php.html index dab018017..c8941d1d1 100644 --- a/doc/html/cronhooks_8php.html +++ b/doc/html/cronhooks_8php.html @@ -28,7 +28,7 @@ - +
    The Red Matrix
    diff --git a/doc/html/crypto_8php.html b/doc/html/crypto_8php.html index 2d52b3526..3bf683aef 100644 --- a/doc/html/crypto_8php.html +++ b/doc/html/crypto_8php.html @@ -28,7 +28,7 @@ - +
    The Red Matrix
    @@ -456,7 +456,7 @@ Functions
    diff --git a/doc/html/dark_8php.html b/doc/html/dark_8php.html index 4499c7c2f..df29c3249 100644 --- a/doc/html/dark_8php.html +++ b/doc/html/dark_8php.html @@ -28,7 +28,7 @@ - +
    The Red Matrix
    diff --git a/doc/html/darkness_8php.html b/doc/html/darkness_8php.html index aa085a9a5..d5ea426d6 100644 --- a/doc/html/darkness_8php.html +++ b/doc/html/darkness_8php.html @@ -28,7 +28,7 @@ - +
    The Red Matrix
    diff --git a/doc/html/darknessleftaside_8php.html b/doc/html/darknessleftaside_8php.html index 707a4ac74..033a7ce47 100644 --- a/doc/html/darknessleftaside_8php.html +++ b/doc/html/darknessleftaside_8php.html @@ -28,7 +28,7 @@ - +
    The Red Matrix
    diff --git a/doc/html/darknessrightaside_8php.html b/doc/html/darknessrightaside_8php.html index 8cb981205..9cc59d968 100644 --- a/doc/html/darknessrightaside_8php.html +++ b/doc/html/darknessrightaside_8php.html @@ -28,7 +28,7 @@ - +
    The Red Matrix
    diff --git a/doc/html/datetime_8php.html b/doc/html/datetime_8php.html index 1937b9b6b..3909d9f6d 100644 --- a/doc/html/datetime_8php.html +++ b/doc/html/datetime_8php.html @@ -28,7 +28,7 @@ - +
    The Red Matrix
    diff --git a/doc/html/db__update_8php.html b/doc/html/db__update_8php.html index 63485d5af..070216b38 100644 --- a/doc/html/db__update_8php.html +++ b/doc/html/db__update_8php.html @@ -28,7 +28,7 @@ - +

    This will happen occasionally trying to store the session data after abnormal program termination

    -

    Referenced by abook_connections(), abook_self(), abook_toggle_flag(), account_remove(), account_total(), account_verify_password(), acl_init(), add_fcontact(), admin_content(), admin_page_dbsync(), admin_page_hubloc(), admin_page_summary(), admin_page_users(), admin_page_users_post(), advanced_profile(), all_friends(), allfriends_content(), allowed_public_recips(), api_direct_messages_box(), api_direct_messages_new(), api_favorites(), api_ff_ids(), api_format_items(), api_get_user(), api_status_show(), api_statuses_f(), api_statuses_home_timeline(), api_statuses_mentions(), api_statuses_public_timeline(), api_statuses_repeat(), api_statuses_show(), api_statuses_user_timeline(), api_user(), api_users_show(), attach_by_hash(), attach_by_hash_nodata(), attach_count_files(), attach_list_files(), attach_mkdir(), attach_store(), authenticate_success(), blocks_content(), build_sync_packet(), call_hooks(), categories_widget(), change_channel(), chanman_remove_everything_from_network(), channel_content(), channel_remove(), channel_total(), channelx_by_hash(), channelx_by_n(), channelx_by_nick(), chanview_content(), check_account_email(), check_account_invite(), check_config(), check_item_source(), check_webbie(), RedDirectory\childExists(), Cache\clear(), collect_recipients(), comanche_block(), common_friends(), common_friends_zcid(), common_init(), community_content(), connect_init(), connect_post(), connections_content(), connections_init(), connections_post(), consume_feed(), contact_block(), contact_profile_assign(), contact_remove(), contact_select(), contactgroup_content(), contacts_not_grouped(), count_all_friends(), count_common_friends(), count_common_friends_zcid(), create_account(), create_identity(), crepair_content(), crepair_init(), crepair_post(), current_theme(), del_config(), del_pconfig(), del_xconfig(), delegate_content(), RedInode\delete(), delete_imported_item(), delete_item_lowlevel(), deliver_run(), dfrn_deliver(), dir_tagadelic(), directory_content(), directory_run(), dirsearch_content(), display_content(), drop_item(), editblock_content(), editlayout_content(), editpost_content(), editwebpage_content(), encode_item(), event_store(), events_content(), expand_groups(), expire_run(), fbrowser_content(), feed_init(), fetch_post_tags(), fileas_widget(), filer_content(), filerm_content(), filestorage_content(), first_post_date(), fix_attached_photo_permissions(), fix_contact_ssl_policy(), fix_private_photos(), fix_system_urls(), follow_widget(), fsuggest_content(), fsuggest_post(), generate_user_guid(), Cache\get(), get_all_perms(), get_birthdays(), get_config_from_storage(), get_events(), get_item_elements(), RedDirectory\getChild(), RedDirectory\getChildren(), gprobe_run(), group_add(), group_add_member(), group_byname(), group_content(), group_get_members(), group_post(), group_rec_byhash(), group_rmv(), group_rmv_member(), group_select(), group_side(), groups_containing(), handle_tag(), identity_basic_export(), identity_check_service_class(), import_author_xchan(), import_directory_keywords(), import_directory_profile(), import_post(), import_profile_photo(), import_site(), import_xchan(), install_plugin(), intro_content(), intro_post(), invite_post(), item_check_service_class(), item_expire(), item_message_id(), item_post(), item_store(), item_store_update(), items_fetch(), lastpost_content(), layout_select(), layouts_content(), like_content(), list_public_sites(), load_config(), load_contact_links(), load_hooks(), load_pconfig(), load_plugin(), load_translation_table(), load_xconfig(), lockview_content(), FKOAuth1\loginUser(), FKOAuthDataStore\lookup_consumer(), FKOAuthDataStore\lookup_nonce(), FKOAuthDataStore\lookup_token(), lostpass_content(), lostpass_post(), magic_init(), mail_store(), manage_content(), match_content(), member_of(), menu_add_item(), menu_create(), menu_del_item(), menu_delete(), menu_delete_id(), menu_edit(), menu_edit_item(), menu_fetch(), menu_fetch_id(), menu_list(), message_content(), mimetype_select(), mini_group_select(), mitem_content(), mood_init(), msearch_post(), network_content(), network_init(), FKOAuthDataStore\new_access_token(), new_contact(), new_cookie(), FKOAuthDataStore\new_request_token(), notification(), notifications_content(), notifications_post(), notifier_run(), notify_content(), notify_init(), oauth_get_client(), onedirsync_run(), onepoll_run(), page_content(), pagelist_widget(), pdl_selector(), perm_is_allowed(), photo_init(), photo_new_resource(), photo_upload(), photos_album_exists(), photos_album_get_db_idstr(), photos_album_rename(), photos_albums_list(), photos_content(), photos_list_photos(), photos_post(), ping_init(), poco_init(), poco_load(), poke_content(), poke_init(), poller_run(), post_activity_item(), post_init(), post_post(), private_messages_drop(), private_messages_fetch_conversation(), private_messages_fetch_message(), private_messages_list(), process_channel_sync_delivery(), process_delivery(), process_mail_delivery(), process_profile_delivery(), profile_content(), profile_init(), profile_load(), profile_photo_post(), profile_sidebar(), profiles_content(), profiles_init(), profiles_post(), profperm_content(), public_recips(), qsearch_init(), queue_run(), random_profile(), rconnect_url(), red_zrl_callback(), redir_init(), ref_session_destroy(), ref_session_gc(), ref_session_read(), ref_session_write(), register_content(), register_hook(), register_post(), reload_plugins(), remove_all_xchan_resources(), remove_community_tag(), remove_queue_item(), rmagic_init(), rmagic_post(), photo_driver\save(), saved_searches(), search_ac_init(), search_content(), search_init(), search_saved_searches(), send_message(), send_reg_approval_email(), send_status_notifications(), service_class_allows(), service_class_fetch(), Cache\set(), set_config(), set_default_login_identity(), set_pconfig(), set_xconfig(), RedInode\setName(), settings_aside(), settings_post(), setup_content(), share_init(), siteinfo_content(), siteinfo_init(), sitelist_init(), sources_content(), sources_post(), starred_init(), photo_driver\store(), store_item_tag(), stream_perms_api_uids(), stream_perms_xchans(), subthread_content(), suggest_init(), suggestion_query(), sync_directories(), syncdirs(), tag_deliver(), tagadelic(), tagger_content(), tagrm_content(), tagrm_post(), tgroup_check(), thing_init(), uninstall_plugin(), unregister_hook(), update_directory_entry(), update_modtime(), update_queue_time(), update_suggestions(), user_allow(), user_deny(), RedBasicAuth\validateUserPass(), vcard_from_xchan(), viewconnections_content(), viewsrc_content(), vote_content(), vote_init(), vote_post(), wall_attach_post(), wall_upload_post(), webpages_content(), wfinger_init(), xchan_content(), xchan_mail_query(), xchan_query(), xrd_init(), z_input_filter(), z_readdir(), zfinger_init(), zid_init(), zot_feed(), zot_finger(), zot_get_hubloc(), zot_gethub(), zot_import(), zot_process_response(), zot_refresh(), and zotfeed_init().

    +

    Referenced by abook_connections(), abook_self(), abook_toggle_flag(), account_remove(), account_total(), account_verify_password(), acl_init(), add_fcontact(), admin_content(), admin_page_dbsync(), admin_page_hubloc(), admin_page_summary(), admin_page_users(), admin_page_users_post(), advanced_profile(), all_friends(), allfriends_content(), allowed_public_recips(), api_direct_messages_box(), api_direct_messages_new(), api_favorites(), api_ff_ids(), api_format_items(), api_get_user(), api_status_show(), api_statuses_destroy(), api_statuses_f(), api_statuses_home_timeline(), api_statuses_mentions(), api_statuses_public_timeline(), api_statuses_repeat(), api_statuses_show(), api_statuses_user_timeline(), api_user(), api_users_show(), attach_by_hash(), attach_by_hash_nodata(), attach_count_files(), attach_list_files(), attach_mkdir(), attach_store(), authenticate_success(), blocks_content(), build_sync_packet(), call_hooks(), categories_widget(), change_channel(), chanman_remove_everything_from_network(), channel_content(), channel_remove(), channel_total(), channelx_by_hash(), channelx_by_n(), channelx_by_nick(), chanview_content(), check_account_email(), check_account_invite(), check_config(), check_item_source(), check_webbie(), RedDirectory\childExists(), Cache\clear(), collect_recipients(), comanche_block(), common_friends(), common_friends_zcid(), common_init(), community_content(), connect_init(), connect_post(), connections_content(), connections_init(), connections_post(), consume_feed(), contact_block(), contact_profile_assign(), contact_remove(), contact_select(), contactgroup_content(), contacts_not_grouped(), count_all_friends(), count_common_friends(), count_common_friends_zcid(), create_account(), create_identity(), crepair_content(), crepair_init(), crepair_post(), current_theme(), del_config(), del_pconfig(), del_xconfig(), delegate_content(), RedInode\delete(), delete_imported_item(), delete_item_lowlevel(), deliver_run(), dfrn_deliver(), dir_tagadelic(), directory_content(), directory_run(), dirsearch_content(), display_content(), drop_item(), editblock_content(), editlayout_content(), editpost_content(), editwebpage_content(), encode_item(), event_store(), events_content(), expand_groups(), expire_run(), fbrowser_content(), feed_init(), fetch_post_tags(), fileas_widget(), filer_content(), filerm_content(), filestorage_content(), first_post_date(), fix_attached_photo_permissions(), fix_contact_ssl_policy(), fix_private_photos(), fix_system_urls(), follow_widget(), fsuggest_content(), fsuggest_post(), generate_user_guid(), Cache\get(), get_all_perms(), get_birthdays(), get_config_from_storage(), get_events(), get_item_elements(), RedDirectory\getChild(), RedDirectory\getChildren(), gprobe_run(), group_add(), group_add_member(), group_byname(), group_content(), group_get_members(), group_post(), group_rec_byhash(), group_rmv(), group_rmv_member(), group_select(), group_side(), groups_containing(), handle_tag(), identity_basic_export(), identity_check_service_class(), import_author_xchan(), import_directory_keywords(), import_directory_profile(), import_post(), import_profile_photo(), import_site(), import_xchan(), install_plugin(), intro_content(), intro_post(), invite_post(), item_check_service_class(), item_expire(), item_message_id(), item_post(), item_store(), item_store_update(), items_fetch(), lastpost_content(), layout_select(), layouts_content(), like_content(), list_public_sites(), load_config(), load_contact_links(), load_hooks(), load_pconfig(), load_plugin(), load_translation_table(), load_xconfig(), lockview_content(), FKOAuth1\loginUser(), FKOAuthDataStore\lookup_consumer(), FKOAuthDataStore\lookup_nonce(), FKOAuthDataStore\lookup_token(), lostpass_content(), lostpass_post(), magic_init(), mail_store(), manage_content(), match_content(), member_of(), menu_add_item(), menu_create(), menu_del_item(), menu_delete(), menu_delete_id(), menu_edit(), menu_edit_item(), menu_fetch(), menu_fetch_id(), menu_list(), message_content(), mimetype_select(), mini_group_select(), mitem_content(), mood_init(), msearch_post(), network_content(), network_init(), FKOAuthDataStore\new_access_token(), new_contact(), new_cookie(), FKOAuthDataStore\new_request_token(), notification(), notifications_content(), notifications_post(), notifier_run(), notify_content(), notify_init(), oauth_get_client(), onedirsync_run(), onepoll_run(), page_content(), pagelist_widget(), pdl_selector(), perm_is_allowed(), photo_init(), photo_new_resource(), photo_upload(), photos_album_exists(), photos_album_get_db_idstr(), photos_album_rename(), photos_albums_list(), photos_content(), photos_list_photos(), photos_post(), ping_init(), poco_init(), poco_load(), poke_content(), poke_init(), poller_run(), post_activity_item(), post_init(), post_post(), private_messages_drop(), private_messages_fetch_conversation(), private_messages_fetch_message(), private_messages_list(), process_channel_sync_delivery(), process_delivery(), process_mail_delivery(), process_profile_delivery(), profile_content(), profile_init(), profile_load(), profile_photo_post(), profile_sidebar(), profiles_content(), profiles_init(), profiles_post(), profperm_content(), public_recips(), qsearch_init(), queue_run(), random_profile(), rconnect_url(), red_zrl_callback(), redir_init(), ref_session_destroy(), ref_session_gc(), ref_session_read(), ref_session_write(), register_content(), register_hook(), register_post(), reload_plugins(), remove_all_xchan_resources(), remove_community_tag(), remove_queue_item(), rmagic_init(), rmagic_post(), photo_driver\save(), saved_searches(), search_ac_init(), search_content(), search_init(), search_saved_searches(), send_message(), send_reg_approval_email(), send_status_notifications(), service_class_allows(), service_class_fetch(), Cache\set(), set_config(), set_default_login_identity(), set_pconfig(), set_xconfig(), RedInode\setName(), settings_aside(), settings_post(), setup_content(), share_init(), siteinfo_content(), siteinfo_init(), sitelist_init(), sources_content(), sources_post(), starred_init(), photo_driver\store(), store_item_tag(), stream_perms_api_uids(), stream_perms_xchans(), subthread_content(), suggest_init(), suggestion_query(), sync_directories(), syncdirs(), tag_deliver(), tagadelic(), tagger_content(), tagrm_content(), tagrm_post(), tgroup_check(), thing_init(), uninstall_plugin(), unregister_hook(), update_directory_entry(), update_modtime(), update_queue_time(), update_suggestions(), user_allow(), user_deny(), RedBasicAuth\validateUserPass(), vcard_from_xchan(), viewconnections_content(), viewsrc_content(), vote_content(), vote_init(), vote_post(), wall_attach_post(), wall_upload_post(), webpages_content(), wfinger_init(), xchan_content(), xchan_mail_query(), xchan_query(), xrd_init(), z_input_filter(), z_readdir(), zfinger_init(), zid_init(), zot_feed(), zot_finger(), zot_get_hublocs(), zot_gethub(), zot_import(), zot_process_response(), zot_refresh(), and zotfeed_init().

    diff --git a/doc/html/dba__mysql_8php.html b/doc/html/dba__mysql_8php.html index 561d83101..da4db27d7 100644 --- a/doc/html/dba__mysql_8php.html +++ b/doc/html/dba__mysql_8php.html @@ -28,7 +28,7 @@
    The Red Matrix
    diff --git a/doc/html/dba__driver_8php.html b/doc/html/dba__driver_8php.html index 1f4931492..968aa1722 100644 --- a/doc/html/dba__driver_8php.html +++ b/doc/html/dba__driver_8php.html @@ -28,7 +28,7 @@ - +
    The Red Matrix
    @@ -202,7 +202,7 @@ Functions
    -

    Referenced by account_verify_password(), acl_init(), add_fcontact(), admin_page_users(), advanced_profile(), allowed_public_recips(), api_direct_messages_new(), api_get_user(), api_status_show(), api_statuses_mentions(), api_user(), api_users_show(), attach_by_hash(), attach_by_hash_nodata(), attach_count_files(), attach_list_files(), attach_mkdir(), attach_store(), authenticate_success(), blocks_content(), build_sync_packet(), call_hooks(), categories_widget(), change_channel(), channel_content(), channel_remove(), channelx_by_hash(), channelx_by_n(), channelx_by_nick(), chanview_content(), check_account_email(), check_account_invite(), check_item_source(), check_webbie(), RedDirectory\childExists(), Cache\clear(), comanche_block(), common_friends(), connect_init(), connect_post(), connections_content(), connections_post(), consume_feed(), contact_remove(), contactgroup_content(), count_common_friends(), create_account(), create_identity(), crepair_post(), dbesc_array_cb(), del_config(), del_pconfig(), del_xconfig(), delegate_content(), delete_imported_item(), delete_item_lowlevel(), deliver_run(), directory_run(), dirsearch_content(), display_content(), editblock_content(), editlayout_content(), editpost_content(), editwebpage_content(), event_store(), events_content(), fbrowser_content(), feed_init(), fetch_post_tags(), file_tag_file_query(), filerm_content(), filestorage_content(), fix_attached_photo_permissions(), fix_contact_ssl_policy(), fix_private_photos(), fix_system_urls(), fsuggest_post(), generate_user_guid(), Cache\get(), get_all_perms(), get_birthdays(), get_config_from_storage(), get_events(), get_item_elements(), RedDirectory\getChild(), RedDirectory\getChildren(), gprobe_run(), group_add(), group_add_member(), group_byname(), group_content(), group_post(), group_rec_byhash(), group_rmv(), group_rmv_member(), groups_containing(), handle_tag(), import_author_xchan(), import_directory_keywords(), import_directory_profile(), import_post(), import_profile_photo(), import_site(), import_xchan(), install_plugin(), invite_post(), item_message_id(), item_permissions_sql(), item_post(), item_store(), item_store_update(), items_fetch(), lastpost_content(), layouts_content(), like_content(), load_config(), load_plugin(), load_xconfig(), lockview_content(), FKOAuthDataStore\lookup_consumer(), FKOAuthDataStore\lookup_nonce(), FKOAuthDataStore\lookup_token(), lostpass_content(), lostpass_post(), magic_init(), mail_store(), member_of(), menu_add_item(), menu_create(), menu_delete(), menu_edit(), menu_edit_item(), menu_fetch(), msearch_post(), network_content(), network_init(), FKOAuthDataStore\new_access_token(), new_contact(), new_cookie(), FKOAuthDataStore\new_request_token(), notification(), notifications_content(), notifier_run(), notify_init(), oauth_get_client(), onedirsync_run(), onepoll_run(), page_content(), perm_is_allowed(), permissions_sql(), photo_init(), photo_new_resource(), photo_upload(), photos_album_exists(), photos_album_get_db_idstr(), photos_album_rename(), photos_content(), photos_list_photos(), photos_post(), ping_init(), poco_init(), poco_load(), poller_run(), post_init(), post_post(), private_messages_drop(), private_messages_fetch_conversation(), private_messages_fetch_message(), private_messages_list(), process_channel_sync_delivery(), process_delivery(), process_mail_delivery(), process_profile_delivery(), profile_init(), profile_load(), profile_photo_post(), profiles_init(), profiles_post(), public_permissions_sql(), public_recips(), qsearch_init(), queue_run(), rconnect_url(), red_zrl_callback(), redir_init(), ref_session_destroy(), ref_session_gc(), ref_session_read(), ref_session_write(), register_hook(), register_post(), remove_all_xchan_resources(), remove_community_tag(), remove_queue_item(), rmagic_init(), rmagic_post(), photo_driver\save(), search_ac_init(), search_content(), search_init(), send_message(), send_reg_approval_email(), send_status_notifications(), Cache\set(), set_config(), set_pconfig(), set_xconfig(), RedInode\setName(), settings_post(), siteinfo_init(), sources_post(), photo_driver\store(), store_item_tag(), stream_perms_xchans(), stringify_array_elms(), subthread_content(), suggest_init(), sync_directories(), syncdirs(), tag_deliver(), tagger_content(), tagrm_post(), term_query(), tgroup_check(), thing_init(), uninstall_plugin(), unregister_hook(), update_directory_entry(), update_modtime(), update_queue_time(), user_allow(), user_deny(), RedBasicAuth\validateUserPass(), vcard_from_xchan(), vote_post(), wall_attach_post(), wall_upload_post(), webpages_content(), wfinger_init(), xchan_content(), xchan_mail_query(), xchan_query(), xrd_init(), z_readdir(), zfinger_init(), zid_init(), zot_feed(), zot_finger(), zot_get_hubloc(), zot_gethub(), zot_process_response(), zot_refresh(), and zotfeed_init().

    +

    Referenced by account_verify_password(), acl_init(), add_fcontact(), admin_page_users(), advanced_profile(), allowed_public_recips(), api_direct_messages_new(), api_get_user(), api_status_show(), api_statuses_destroy(), api_statuses_mentions(), api_user(), api_users_show(), attach_by_hash(), attach_by_hash_nodata(), attach_count_files(), attach_list_files(), attach_mkdir(), attach_store(), authenticate_success(), blocks_content(), build_sync_packet(), call_hooks(), categories_widget(), change_channel(), channel_content(), channel_remove(), channelx_by_hash(), channelx_by_n(), channelx_by_nick(), chanview_content(), check_account_email(), check_account_invite(), check_item_source(), check_webbie(), RedDirectory\childExists(), Cache\clear(), comanche_block(), common_friends(), connect_init(), connect_post(), connections_content(), connections_post(), consume_feed(), contact_remove(), contactgroup_content(), count_common_friends(), create_account(), create_identity(), crepair_post(), dbesc_array_cb(), del_config(), del_pconfig(), del_xconfig(), delegate_content(), delete_imported_item(), delete_item_lowlevel(), deliver_run(), directory_run(), dirsearch_content(), display_content(), editblock_content(), editlayout_content(), editpost_content(), editwebpage_content(), event_store(), events_content(), fbrowser_content(), feed_init(), fetch_post_tags(), file_tag_file_query(), filerm_content(), filestorage_content(), fix_attached_photo_permissions(), fix_contact_ssl_policy(), fix_private_photos(), fix_system_urls(), fsuggest_post(), generate_user_guid(), Cache\get(), get_all_perms(), get_birthdays(), get_config_from_storage(), get_events(), get_item_elements(), RedDirectory\getChild(), RedDirectory\getChildren(), gprobe_run(), group_add(), group_add_member(), group_byname(), group_content(), group_post(), group_rec_byhash(), group_rmv(), group_rmv_member(), groups_containing(), handle_tag(), import_author_xchan(), import_directory_keywords(), import_directory_profile(), import_post(), import_profile_photo(), import_site(), import_xchan(), install_plugin(), invite_post(), item_message_id(), item_permissions_sql(), item_post(), item_store(), item_store_update(), items_fetch(), lastpost_content(), layouts_content(), like_content(), load_config(), load_plugin(), load_xconfig(), lockview_content(), FKOAuthDataStore\lookup_consumer(), FKOAuthDataStore\lookup_nonce(), FKOAuthDataStore\lookup_token(), lostpass_content(), lostpass_post(), magic_init(), mail_store(), member_of(), menu_add_item(), menu_create(), menu_delete(), menu_edit(), menu_edit_item(), menu_fetch(), msearch_post(), network_content(), network_init(), FKOAuthDataStore\new_access_token(), new_contact(), new_cookie(), FKOAuthDataStore\new_request_token(), notification(), notifications_content(), notifier_run(), notify_init(), oauth_get_client(), onedirsync_run(), onepoll_run(), page_content(), perm_is_allowed(), permissions_sql(), photo_init(), photo_new_resource(), photo_upload(), photos_album_exists(), photos_album_get_db_idstr(), photos_album_rename(), photos_content(), photos_list_photos(), photos_post(), ping_init(), poco_init(), poco_load(), poller_run(), post_init(), post_post(), private_messages_drop(), private_messages_fetch_conversation(), private_messages_fetch_message(), private_messages_list(), process_channel_sync_delivery(), process_delivery(), process_mail_delivery(), process_profile_delivery(), profile_init(), profile_load(), profile_photo_post(), profiles_init(), profiles_post(), public_permissions_sql(), public_recips(), qsearch_init(), queue_run(), rconnect_url(), red_zrl_callback(), redir_init(), ref_session_destroy(), ref_session_gc(), ref_session_read(), ref_session_write(), register_hook(), register_post(), remove_all_xchan_resources(), remove_community_tag(), remove_queue_item(), rmagic_init(), rmagic_post(), photo_driver\save(), search_ac_init(), search_content(), search_init(), send_message(), send_reg_approval_email(), send_status_notifications(), Cache\set(), set_config(), set_pconfig(), set_xconfig(), RedInode\setName(), settings_post(), siteinfo_init(), sources_post(), photo_driver\store(), store_item_tag(), stream_perms_xchans(), stringify_array_elms(), subthread_content(), suggest_init(), sync_directories(), syncdirs(), tag_deliver(), tagger_content(), tagrm_post(), term_query(), tgroup_check(), thing_init(), uninstall_plugin(), unregister_hook(), update_directory_entry(), update_modtime(), update_queue_time(), user_allow(), user_deny(), RedBasicAuth\validateUserPass(), vcard_from_xchan(), vote_post(), wall_attach_post(), wall_upload_post(), webpages_content(), wfinger_init(), xchan_content(), xchan_mail_query(), xchan_query(), xrd_init(), z_readdir(), zfinger_init(), zid_init(), zot_feed(), zot_finger(), zot_get_hublocs(), zot_gethub(), zot_process_response(), zot_refresh(), and zotfeed_init().

    @@ -320,7 +320,7 @@ Functions
    - +
    The Red Matrix
    diff --git a/doc/html/dba__mysqli_8php.html b/doc/html/dba__mysqli_8php.html index 5af3efc87..9f580d4e9 100644 --- a/doc/html/dba__mysqli_8php.html +++ b/doc/html/dba__mysqli_8php.html @@ -28,7 +28,7 @@ - +
    The Red Matrix
    diff --git a/doc/html/delegate_8php.html b/doc/html/delegate_8php.html index 41ee03f50..3793b633e 100644 --- a/doc/html/delegate_8php.html +++ b/doc/html/delegate_8php.html @@ -28,7 +28,7 @@ - +
    The Red Matrix
    diff --git a/doc/html/deliver_8php.html b/doc/html/deliver_8php.html index ac9e5af77..4d1770429 100644 --- a/doc/html/deliver_8php.html +++ b/doc/html/deliver_8php.html @@ -28,7 +28,7 @@ - +
    The Red Matrix
    diff --git a/doc/html/dir_032dd9e2cfe278a2cfa5eb9547448eb9.html b/doc/html/dir_032dd9e2cfe278a2cfa5eb9547448eb9.html index 6d112b738..be89737ea 100644 --- a/doc/html/dir_032dd9e2cfe278a2cfa5eb9547448eb9.html +++ b/doc/html/dir_032dd9e2cfe278a2cfa5eb9547448eb9.html @@ -28,7 +28,7 @@ - + + +
    The Red Matrix
    @@ -110,6 +110,8 @@ Files
     
    file  theme.php
     
    file  theme_init.php
     
    diff --git a/doc/html/dir_032dd9e2cfe278a2cfa5eb9547448eb9.js b/doc/html/dir_032dd9e2cfe278a2cfa5eb9547448eb9.js index a9e861a3f..7633187b3 100644 --- a/doc/html/dir_032dd9e2cfe278a2cfa5eb9547448eb9.js +++ b/doc/html/dir_032dd9e2cfe278a2cfa5eb9547448eb9.js @@ -2,5 +2,6 @@ var dir_032dd9e2cfe278a2cfa5eb9547448eb9 = [ [ "config.php", "view_2theme_2redbasic_2php_2config_8php.html", "view_2theme_2redbasic_2php_2config_8php" ], [ "style.php", "redbasic_2php_2style_8php.html", "redbasic_2php_2style_8php" ], - [ "theme.php", "redbasic_2php_2theme_8php.html", "redbasic_2php_2theme_8php" ] + [ "theme.php", "redbasic_2php_2theme_8php.html", "redbasic_2php_2theme_8php" ], + [ "theme_init.php", "theme_2redbasic_2php_2theme__init_8php.html", null ] ]; \ No newline at end of file diff --git a/doc/html/dir_05f4fba29266e8fd7869afcd6cefb5cb.html b/doc/html/dir_05f4fba29266e8fd7869afcd6cefb5cb.html index 0a33e4c45..733c56cef 100644 --- a/doc/html/dir_05f4fba29266e8fd7869afcd6cefb5cb.html +++ b/doc/html/dir_05f4fba29266e8fd7869afcd6cefb5cb.html @@ -28,7 +28,7 @@ - +
    The Red Matrix
    diff --git a/doc/html/dir_0eaa4a0adae8ba4811e133c6e594aeee.html b/doc/html/dir_0eaa4a0adae8ba4811e133c6e594aeee.html index f53ed2c0f..7a5f77a99 100644 --- a/doc/html/dir_0eaa4a0adae8ba4811e133c6e594aeee.html +++ b/doc/html/dir_0eaa4a0adae8ba4811e133c6e594aeee.html @@ -28,7 +28,7 @@ - +
    The Red Matrix
    diff --git a/doc/html/dir_21bc5169ff11430004758be31dcfc6c4.html b/doc/html/dir_21bc5169ff11430004758be31dcfc6c4.html index 74f6d82bd..51284f865 100644 --- a/doc/html/dir_21bc5169ff11430004758be31dcfc6c4.html +++ b/doc/html/dir_21bc5169ff11430004758be31dcfc6c4.html @@ -28,7 +28,7 @@ - +
    The Red Matrix
    diff --git a/doc/html/dir_23ec12649285f9fabf3a6b7380226c28.html b/doc/html/dir_23ec12649285f9fabf3a6b7380226c28.html index 0b859ac31..44036cc73 100644 --- a/doc/html/dir_23ec12649285f9fabf3a6b7380226c28.html +++ b/doc/html/dir_23ec12649285f9fabf3a6b7380226c28.html @@ -28,7 +28,7 @@ - +
    The Red Matrix
    diff --git a/doc/html/dir_25f74a9991dbbca1b52a94e358ca73c1.html b/doc/html/dir_25f74a9991dbbca1b52a94e358ca73c1.html new file mode 100644 index 000000000..c5f57ad6f --- /dev/null +++ b/doc/html/dir_25f74a9991dbbca1b52a94e358ca73c1.html @@ -0,0 +1,112 @@ + + + + + + +The Red Matrix: util/wp/post_to_red Directory Reference + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    The Red Matrix +
    +
    +
    + + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    +
    +
    post_to_red Directory Reference
    +
    +
    + + + + +

    +Files

    file  post_to_red.php
     
    +
    +
    + diff --git a/doc/html/dir_25f74a9991dbbca1b52a94e358ca73c1.js b/doc/html/dir_25f74a9991dbbca1b52a94e358ca73c1.js new file mode 100644 index 000000000..e521771ca --- /dev/null +++ b/doc/html/dir_25f74a9991dbbca1b52a94e358ca73c1.js @@ -0,0 +1,4 @@ +var dir_25f74a9991dbbca1b52a94e358ca73c1 = +[ + [ "post_to_red.php", "post__to__red_8php.html", "post__to__red_8php" ] +]; \ No newline at end of file diff --git a/doc/html/dir_3d9c9d0c5e9556dd3eba1e072fa6eaeb.html b/doc/html/dir_3d9c9d0c5e9556dd3eba1e072fa6eaeb.html index 12217cad9..52e50c910 100644 --- a/doc/html/dir_3d9c9d0c5e9556dd3eba1e072fa6eaeb.html +++ b/doc/html/dir_3d9c9d0c5e9556dd3eba1e072fa6eaeb.html @@ -28,7 +28,7 @@ - +
    The Red Matrix
    diff --git a/doc/html/dir_55dbaf9b7b53c4fc605c9011743a7353.html b/doc/html/dir_55dbaf9b7b53c4fc605c9011743a7353.html index 1b2076720..382655c52 100644 --- a/doc/html/dir_55dbaf9b7b53c4fc605c9011743a7353.html +++ b/doc/html/dir_55dbaf9b7b53c4fc605c9011743a7353.html @@ -28,7 +28,7 @@ - +
    The Red Matrix
    diff --git a/doc/html/dir_6cee3bb9ace89cc4e2f065aa2ca7bc5b.html b/doc/html/dir_6cee3bb9ace89cc4e2f065aa2ca7bc5b.html new file mode 100644 index 000000000..60379cb00 --- /dev/null +++ b/doc/html/dir_6cee3bb9ace89cc4e2f065aa2ca7bc5b.html @@ -0,0 +1,112 @@ + + + + + + +The Red Matrix: view/theme/blogga/view/theme Directory Reference + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    The Red Matrix +
    +
    +
    + + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    +
    +
    theme Directory Reference
    +
    +
    + + + + +

    +Directories

    directory  blog
     
    +
    +
    + diff --git a/doc/html/dir_6cee3bb9ace89cc4e2f065aa2ca7bc5b.js b/doc/html/dir_6cee3bb9ace89cc4e2f065aa2ca7bc5b.js new file mode 100644 index 000000000..ae90f9671 --- /dev/null +++ b/doc/html/dir_6cee3bb9ace89cc4e2f065aa2ca7bc5b.js @@ -0,0 +1,4 @@ +var dir_6cee3bb9ace89cc4e2f065aa2ca7bc5b = +[ + [ "blog", "dir_a8a0005c2b8590c535262d232c22afab.html", "dir_a8a0005c2b8590c535262d232c22afab" ] +]; \ No newline at end of file diff --git a/doc/html/dir_720432dea4a717197ae070dbc42b8f20.html b/doc/html/dir_720432dea4a717197ae070dbc42b8f20.html index a61c006b5..1fe66c5e2 100644 --- a/doc/html/dir_720432dea4a717197ae070dbc42b8f20.html +++ b/doc/html/dir_720432dea4a717197ae070dbc42b8f20.html @@ -28,7 +28,7 @@ - +
    The Red Matrix
    @@ -102,9 +102,9 @@ $(document).ready(function(){initNavTree('dir_720432dea4a717197ae070dbc42b8f20.h
    - - + +

    -Files

    file  post_to_red.php

    +Directories

    directory  post_to_red
     
    diff --git a/doc/html/dir_720432dea4a717197ae070dbc42b8f20.js b/doc/html/dir_720432dea4a717197ae070dbc42b8f20.js index 8d76d72be..b394ccd3f 100644 --- a/doc/html/dir_720432dea4a717197ae070dbc42b8f20.js +++ b/doc/html/dir_720432dea4a717197ae070dbc42b8f20.js @@ -1,4 +1,4 @@ var dir_720432dea4a717197ae070dbc42b8f20 = [ - [ "post_to_red.php", "post__to__red_8php.html", "post__to__red_8php" ] + [ "post_to_red", "dir_25f74a9991dbbca1b52a94e358ca73c1.html", "dir_25f74a9991dbbca1b52a94e358ca73c1" ] ]; \ No newline at end of file diff --git a/doc/html/dir_817f6d302394b98e59575acdb59998bc.html b/doc/html/dir_817f6d302394b98e59575acdb59998bc.html index 0140685a8..bd41b7e86 100644 --- a/doc/html/dir_817f6d302394b98e59575acdb59998bc.html +++ b/doc/html/dir_817f6d302394b98e59575acdb59998bc.html @@ -28,7 +28,7 @@ - +
    The Red Matrix
    @@ -104,7 +104,7 @@ $(document).ready(function(){initNavTree('dir_817f6d302394b98e59575acdb59998bc.h - + @@ -118,7 +118,7 @@ Files - +

    Files

    file  default.php
    file  default.php
     
    file  full.php
     
     
    file  none.php
     
    file  theme_init.php
    file  theme_init.php
     
    diff --git a/doc/html/dir_817f6d302394b98e59575acdb59998bc.js b/doc/html/dir_817f6d302394b98e59575acdb59998bc.js index c7289c3d1..cceba4e93 100644 --- a/doc/html/dir_817f6d302394b98e59575acdb59998bc.js +++ b/doc/html/dir_817f6d302394b98e59575acdb59998bc.js @@ -1,11 +1,11 @@ var dir_817f6d302394b98e59575acdb59998bc = [ - [ "default.php", "default_8php.html", "default_8php" ], + [ "default.php", "php_2default_8php.html", "php_2default_8php" ], [ "full.php", "full_8php.html", "full_8php" ], [ "minimal.php", "minimal_8php.html", null ], [ "mod_import.php", "mod__import_8php.html", "mod__import_8php" ], [ "mod_new_channel.php", "mod__new__channel_8php.html", "mod__new__channel_8php" ], [ "mod_register.php", "mod__register_8php.html", "mod__register_8php" ], [ "none.php", "none_8php.html", null ], - [ "theme_init.php", "theme__init_8php.html", "theme__init_8php" ] + [ "theme_init.php", "php_2theme__init_8php.html", "php_2theme__init_8php" ] ]; \ No newline at end of file diff --git a/doc/html/dir_8543001e5d25368a6edede3e63efb554.html b/doc/html/dir_8543001e5d25368a6edede3e63efb554.html index 9d45e2983..c0ee68826 100644 --- a/doc/html/dir_8543001e5d25368a6edede3e63efb554.html +++ b/doc/html/dir_8543001e5d25368a6edede3e63efb554.html @@ -28,7 +28,7 @@ - + + +
    The Red Matrix
    @@ -106,6 +106,8 @@ $(document).ready(function(){initNavTree('dir_8543001e5d25368a6edede3e63efb554.h Directories
    directory  apw
     
    directory  blogga
     
    directory  redbasic
     
    diff --git a/doc/html/dir_8543001e5d25368a6edede3e63efb554.js b/doc/html/dir_8543001e5d25368a6edede3e63efb554.js index 9650af20a..29cbaeeef 100644 --- a/doc/html/dir_8543001e5d25368a6edede3e63efb554.js +++ b/doc/html/dir_8543001e5d25368a6edede3e63efb554.js @@ -1,5 +1,6 @@ var dir_8543001e5d25368a6edede3e63efb554 = [ [ "apw", "dir_d520c5cf583201d9437764f209363c22.html", "dir_d520c5cf583201d9437764f209363c22" ], + [ "blogga", "dir_922c77e958c99a98db92d38a3a349bf2.html", "dir_922c77e958c99a98db92d38a3a349bf2" ], [ "redbasic", "dir_55dbaf9b7b53c4fc605c9011743a7353.html", "dir_55dbaf9b7b53c4fc605c9011743a7353" ] ]; \ No newline at end of file diff --git a/doc/html/dir_922c77e958c99a98db92d38a3a349bf2.html b/doc/html/dir_922c77e958c99a98db92d38a3a349bf2.html new file mode 100644 index 000000000..a8fed5c16 --- /dev/null +++ b/doc/html/dir_922c77e958c99a98db92d38a3a349bf2.html @@ -0,0 +1,114 @@ + + + + + + +The Red Matrix: view/theme/blogga Directory Reference + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    The Red Matrix +
    +
    +
    + + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    +
    +
    blogga Directory Reference
    +
    +
    + + + + + + +

    +Directories

    directory  php
     
    directory  view
     
    +
    +
    + diff --git a/doc/html/dir_922c77e958c99a98db92d38a3a349bf2.js b/doc/html/dir_922c77e958c99a98db92d38a3a349bf2.js new file mode 100644 index 000000000..d5e65e0d6 --- /dev/null +++ b/doc/html/dir_922c77e958c99a98db92d38a3a349bf2.js @@ -0,0 +1,5 @@ +var dir_922c77e958c99a98db92d38a3a349bf2 = +[ + [ "php", "dir_c02447ad39a5307c81c64e880ec9e8d3.html", "dir_c02447ad39a5307c81c64e880ec9e8d3" ], + [ "view", "dir_92d6b429199666aa3765c8a934db5e14.html", "dir_92d6b429199666aa3765c8a934db5e14" ] +]; \ No newline at end of file diff --git a/doc/html/dir_92d6b429199666aa3765c8a934db5e14.html b/doc/html/dir_92d6b429199666aa3765c8a934db5e14.html new file mode 100644 index 000000000..fbd8bf9e8 --- /dev/null +++ b/doc/html/dir_92d6b429199666aa3765c8a934db5e14.html @@ -0,0 +1,112 @@ + + + + + + +The Red Matrix: view/theme/blogga/view Directory Reference + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    The Red Matrix +
    +
    +
    + + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    +
    +
    view Directory Reference
    +
    +
    + + + + +

    +Directories

    directory  theme
     
    +
    +
    + diff --git a/doc/html/dir_92d6b429199666aa3765c8a934db5e14.js b/doc/html/dir_92d6b429199666aa3765c8a934db5e14.js new file mode 100644 index 000000000..2a2dd8dc9 --- /dev/null +++ b/doc/html/dir_92d6b429199666aa3765c8a934db5e14.js @@ -0,0 +1,4 @@ +var dir_92d6b429199666aa3765c8a934db5e14 = +[ + [ "theme", "dir_6cee3bb9ace89cc4e2f065aa2ca7bc5b.html", "dir_6cee3bb9ace89cc4e2f065aa2ca7bc5b" ] +]; \ No newline at end of file diff --git a/doc/html/dir__fns_8php.html b/doc/html/dir__fns_8php.html index 494d32b53..5aeb02ea2 100644 --- a/doc/html/dir__fns_8php.html +++ b/doc/html/dir__fns_8php.html @@ -28,7 +28,7 @@ - +
    The Red Matrix
    diff --git a/doc/html/dir_a8a0005c2b8590c535262d232c22afab.html b/doc/html/dir_a8a0005c2b8590c535262d232c22afab.html new file mode 100644 index 000000000..dc599f8bb --- /dev/null +++ b/doc/html/dir_a8a0005c2b8590c535262d232c22afab.html @@ -0,0 +1,116 @@ + + + + + + +The Red Matrix: view/theme/blogga/view/theme/blog Directory Reference + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    The Red Matrix +
    +
    +
    + + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    +
    +
    blog Directory Reference
    +
    +
    + + + + + + + + +

    +Files

    file  config.php
     
    file  default.php
     
    file  theme.php
     
    +
    +
    + diff --git a/doc/html/dir_a8a0005c2b8590c535262d232c22afab.js b/doc/html/dir_a8a0005c2b8590c535262d232c22afab.js new file mode 100644 index 000000000..9311d8a78 --- /dev/null +++ b/doc/html/dir_a8a0005c2b8590c535262d232c22afab.js @@ -0,0 +1,6 @@ +var dir_a8a0005c2b8590c535262d232c22afab = +[ + [ "config.php", "view_2theme_2blogga_2view_2theme_2blog_2config_8php.html", "view_2theme_2blogga_2view_2theme_2blog_2config_8php" ], + [ "default.php", "theme_2blogga_2view_2theme_2blog_2default_8php.html", "theme_2blogga_2view_2theme_2blog_2default_8php" ], + [ "theme.php", "blogga_2view_2theme_2blog_2theme_8php.html", "blogga_2view_2theme_2blog_2theme_8php" ] +]; \ No newline at end of file diff --git a/doc/html/dir_aae29906d7bfc07d076125f669c8352e.html b/doc/html/dir_aae29906d7bfc07d076125f669c8352e.html index 7fc269799..a12af8c64 100644 --- a/doc/html/dir_aae29906d7bfc07d076125f669c8352e.html +++ b/doc/html/dir_aae29906d7bfc07d076125f669c8352e.html @@ -28,7 +28,7 @@ - +
    The Red Matrix
    diff --git a/doc/html/dir_b2f003339c516cc00c8cadcafbe82f13.html b/doc/html/dir_b2f003339c516cc00c8cadcafbe82f13.html index fe7eec594..4aa042ef0 100644 --- a/doc/html/dir_b2f003339c516cc00c8cadcafbe82f13.html +++ b/doc/html/dir_b2f003339c516cc00c8cadcafbe82f13.html @@ -28,7 +28,7 @@ - +
    The Red Matrix
    diff --git a/doc/html/dir_c02447ad39a5307c81c64e880ec9e8d3.html b/doc/html/dir_c02447ad39a5307c81c64e880ec9e8d3.html new file mode 100644 index 000000000..af53f8b58 --- /dev/null +++ b/doc/html/dir_c02447ad39a5307c81c64e880ec9e8d3.html @@ -0,0 +1,118 @@ + + + + + + +The Red Matrix: view/theme/blogga/php Directory Reference + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    The Red Matrix +
    +
    +
    + + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    +
    +
    php Directory Reference
    +
    +
    + + + + + + + + + + +

    +Files

    file  config.php
     
    file  default.php
     
    file  theme.php
     
    file  theme_init.php
     
    +
    +
    + diff --git a/doc/html/dir_c02447ad39a5307c81c64e880ec9e8d3.js b/doc/html/dir_c02447ad39a5307c81c64e880ec9e8d3.js new file mode 100644 index 000000000..9013b22b6 --- /dev/null +++ b/doc/html/dir_c02447ad39a5307c81c64e880ec9e8d3.js @@ -0,0 +1,7 @@ +var dir_c02447ad39a5307c81c64e880ec9e8d3 = +[ + [ "config.php", "view_2theme_2blogga_2php_2config_8php.html", "view_2theme_2blogga_2php_2config_8php" ], + [ "default.php", "theme_2blogga_2php_2default_8php.html", "theme_2blogga_2php_2default_8php" ], + [ "theme.php", "blogga_2php_2theme_8php.html", "blogga_2php_2theme_8php" ], + [ "theme_init.php", "theme_2blogga_2php_2theme__init_8php.html", null ] +]; \ No newline at end of file diff --git a/doc/html/dir_cb8a8f75dcdd0b3fbfcc82e9eda410c5.html b/doc/html/dir_cb8a8f75dcdd0b3fbfcc82e9eda410c5.html index bdc531993..d5d596a86 100644 --- a/doc/html/dir_cb8a8f75dcdd0b3fbfcc82e9eda410c5.html +++ b/doc/html/dir_cb8a8f75dcdd0b3fbfcc82e9eda410c5.html @@ -28,7 +28,7 @@ - +
    The Red Matrix
    diff --git a/doc/html/dir_d41ce877eb409a4791b288730010abe2.html b/doc/html/dir_d41ce877eb409a4791b288730010abe2.html index 820ec85e2..e4892d91d 100644 --- a/doc/html/dir_d41ce877eb409a4791b288730010abe2.html +++ b/doc/html/dir_d41ce877eb409a4791b288730010abe2.html @@ -28,7 +28,7 @@ - +
    The Red Matrix
    diff --git a/doc/html/dir_d44c64559bbebec7f509842c48db8b23.html b/doc/html/dir_d44c64559bbebec7f509842c48db8b23.html index c5588a75e..7a44f4d12 100644 --- a/doc/html/dir_d44c64559bbebec7f509842c48db8b23.html +++ b/doc/html/dir_d44c64559bbebec7f509842c48db8b23.html @@ -28,7 +28,7 @@ - +
    The Red Matrix
    diff --git a/doc/html/dir_d520c5cf583201d9437764f209363c22.html b/doc/html/dir_d520c5cf583201d9437764f209363c22.html index f96396581..5d99e87f7 100644 --- a/doc/html/dir_d520c5cf583201d9437764f209363c22.html +++ b/doc/html/dir_d520c5cf583201d9437764f209363c22.html @@ -28,7 +28,7 @@ - +
    The Red Matrix
    diff --git a/doc/html/dirsearch_8php.html b/doc/html/dirsearch_8php.html index 37bdcb100..806a32354 100644 --- a/doc/html/dirsearch_8php.html +++ b/doc/html/dirsearch_8php.html @@ -28,7 +28,7 @@ - +
    The Red Matrix
    diff --git a/doc/html/display_8php.html b/doc/html/display_8php.html index e31582288..c2f2d8664 100644 --- a/doc/html/display_8php.html +++ b/doc/html/display_8php.html @@ -28,7 +28,7 @@ - +
    The Red Matrix
    diff --git a/doc/html/docblox__errorchecker_8php.html b/doc/html/docblox__errorchecker_8php.html index 9de8c6867..537f36a2a 100644 --- a/doc/html/docblox__errorchecker_8php.html +++ b/doc/html/docblox__errorchecker_8php.html @@ -28,7 +28,7 @@ - +
    The Red Matrix
    diff --git a/doc/html/editblock_8php.html b/doc/html/editblock_8php.html index 12660853a..f33d0956e 100644 --- a/doc/html/editblock_8php.html +++ b/doc/html/editblock_8php.html @@ -28,7 +28,7 @@ - +
    The Red Matrix
    diff --git a/doc/html/editlayout_8php.html b/doc/html/editlayout_8php.html index c32a6bd5b..e59994c3e 100644 --- a/doc/html/editlayout_8php.html +++ b/doc/html/editlayout_8php.html @@ -28,7 +28,7 @@ - +
    The Red Matrix
    diff --git a/doc/html/editpost_8php.html b/doc/html/editpost_8php.html index 6daa6563e..a86d5d3c6 100644 --- a/doc/html/editpost_8php.html +++ b/doc/html/editpost_8php.html @@ -28,7 +28,7 @@ - +
    The Red Matrix
    diff --git a/doc/html/editwebpage_8php.html b/doc/html/editwebpage_8php.html index a27badd7f..e8f689b67 100644 --- a/doc/html/editwebpage_8php.html +++ b/doc/html/editwebpage_8php.html @@ -28,7 +28,7 @@ - +
    The Red Matrix
    diff --git a/doc/html/enotify_8php.html b/doc/html/enotify_8php.html index 9566f447d..9c468a042 100644 --- a/doc/html/enotify_8php.html +++ b/doc/html/enotify_8php.html @@ -28,7 +28,7 @@ - +
    The Red Matrix
    diff --git a/doc/html/event_8php.html b/doc/html/event_8php.html index e5f82b84d..bef857f32 100644 --- a/doc/html/event_8php.html +++ b/doc/html/event_8php.html @@ -28,7 +28,7 @@ - +
    The Red Matrix
    diff --git a/doc/html/events_8php.html b/doc/html/events_8php.html index 97f2c709d..ecd63f5a1 100644 --- a/doc/html/events_8php.html +++ b/doc/html/events_8php.html @@ -28,7 +28,7 @@ - +
    The Red Matrix
    diff --git a/doc/html/expire_8php.html b/doc/html/expire_8php.html index 43e034032..61e0731b5 100644 --- a/doc/html/expire_8php.html +++ b/doc/html/expire_8php.html @@ -28,7 +28,7 @@ - +
    The Red Matrix
    diff --git a/doc/html/extract_8php.html b/doc/html/extract_8php.html index 0c6a3452b..29b7e390c 100644 --- a/doc/html/extract_8php.html +++ b/doc/html/extract_8php.html @@ -28,7 +28,7 @@ - +
    The Red Matrix
    @@ -132,7 +132,7 @@ Variables
    -

    Referenced by activity_sanitise(), add_fcontact(), api_rss_extra(), array_sanitise(), attach_mkdir(), attach_store(), check_account_admin(), check_account_email(), check_account_invite(), check_account_password(), check_list_permissions(), check_webbie(), connect_content(), connections_content(), connections_post(), construct_page(), contact_block(), contact_select(), conversation(), create_account(), create_identity(), dbesc_array(), directory_content(), event_store(), feature_enabled(), fetch_xrd_links(), find_xchan_in_array(), format_like(), get_all_perms(), get_atom_elements(), get_features(), get_item_elements(), get_mail_elements(), get_mood_verbs(), get_poke_verbs(), get_profile_elements(), Item\get_template_data(), get_terms_oftype(), App\get_widgets(), group_select(), identity_basic_import(), ids_to_querystr(), import_directory_profile(), import_post(), import_site(), import_xchan(), item_getfeedattach(), item_store(), item_store_update(), items_fetch(), like_content(), like_puller(), load_database(), lrdd(), magic_init(), mail_store(), menu_add_item(), menu_create(), menu_edit(), menu_edit_item(), message_content(), mood_init(), network_content(), new_channel_post(), new_contact(), obj_verbs(), parse_url_content(), pdl_selector(), perm_is_allowed(), photo_upload(), photos_album_get_db_idstr(), photos_create_item(), photos_post(), ping_init(), po2php_run(), poke_init(), post_activity_item(), post_init(), post_post(), proc_run(), process_channel_sync_delivery(), process_delivery(), process_mail_delivery(), process_profile_delivery(), profile_activity(), profile_sidebar(), profile_tabs(), profiles_content(), redbasic_form(), register_post(), remove_community_tag(), photo_driver\save(), send_reg_approval_email(), service_class_allows(), service_class_fetch(), App\set_apps(), settings_post(), sort_by_date(), stringify_array_elms(), subthread_content(), suggest_content(), tagger_content(), tagrm_content(), tagrm_post(), theme_attachments(), theme_content(), thing_init(), validate_channelname(), wfinger_init(), xchan_mail_query(), xchan_query(), xml2array(), xrd_init(), zfinger_init(), zid(), zid_init(), zot_fetch(), zot_get_hubloc(), zot_gethub(), zot_import(), zot_process_response(), and zot_register_hub().

    +

    Referenced by activity_sanitise(), add_fcontact(), api_rss_extra(), array_sanitise(), attach_mkdir(), attach_store(), check_account_admin(), check_account_email(), check_account_invite(), check_account_password(), check_list_permissions(), check_webbie(), connect_content(), connections_content(), connections_post(), construct_page(), contact_block(), contact_select(), conversation(), create_account(), create_identity(), dbesc_array(), directory_content(), drop_item(), event_store(), feature_enabled(), fetch_xrd_links(), find_xchan_in_array(), format_like(), get_all_perms(), get_atom_elements(), get_features(), get_item_elements(), get_mail_elements(), get_mood_verbs(), get_poke_verbs(), get_profile_elements(), Item\get_template_data(), get_terms_oftype(), App\get_widgets(), group_select(), identity_basic_import(), ids_to_querystr(), import_directory_profile(), import_post(), import_site(), import_xchan(), item_getfeedattach(), item_store(), item_store_update(), items_fetch(), like_content(), like_puller(), load_database(), lrdd(), magic_init(), mail_store(), menu_add_item(), menu_create(), menu_edit(), menu_edit_item(), message_content(), mood_init(), network_content(), new_channel_post(), new_contact(), obj_verbs(), parse_url_content(), pdl_selector(), perm_is_allowed(), photo_upload(), photos_album_get_db_idstr(), photos_create_item(), photos_post(), ping_init(), po2php_run(), poke_init(), post_activity_item(), post_init(), post_post(), proc_run(), process_channel_sync_delivery(), process_delivery(), process_mail_delivery(), process_profile_delivery(), profile_activity(), profile_sidebar(), profile_tabs(), profiles_content(), redbasic_form(), register_post(), remove_community_tag(), replace_macros(), photo_driver\save(), send_reg_approval_email(), service_class_allows(), service_class_fetch(), App\set_apps(), settings_post(), sort_by_date(), stringify_array_elms(), subthread_content(), suggest_content(), tagger_content(), tagrm_content(), tagrm_post(), theme_attachments(), theme_content(), thing_init(), validate_channelname(), wfinger_init(), xchan_mail_query(), xchan_query(), xml2array(), xrd_init(), zfinger_init(), zid(), zid_init(), zot_fetch(), zot_gethub(), zot_import(), zot_process_response(), and zot_register_hub().

    diff --git a/doc/html/fbrowser_8php.html b/doc/html/fbrowser_8php.html index e62617305..0ccc72963 100644 --- a/doc/html/fbrowser_8php.html +++ b/doc/html/fbrowser_8php.html @@ -28,7 +28,7 @@ - +
    The Red Matrix
    diff --git a/doc/html/features_8php.html b/doc/html/features_8php.html index 47d0a971d..58537417c 100644 --- a/doc/html/features_8php.html +++ b/doc/html/features_8php.html @@ -28,7 +28,7 @@ - +
    The Red Matrix
    diff --git a/doc/html/feed_8php.html b/doc/html/feed_8php.html index eee97f745..8b44eacb2 100644 --- a/doc/html/feed_8php.html +++ b/doc/html/feed_8php.html @@ -28,7 +28,7 @@ - +
    The Red Matrix
    diff --git a/doc/html/filer_8php.html b/doc/html/filer_8php.html index f43782620..1c74122fd 100644 --- a/doc/html/filer_8php.html +++ b/doc/html/filer_8php.html @@ -28,7 +28,7 @@ - +
    The Red Matrix
    diff --git a/doc/html/filerm_8php.html b/doc/html/filerm_8php.html index 95b780624..ce948f3b1 100644 --- a/doc/html/filerm_8php.html +++ b/doc/html/filerm_8php.html @@ -28,7 +28,7 @@ - +
    The Red Matrix
    diff --git a/doc/html/files.html b/doc/html/files.html index 88f5ddabe..5649062c8 100644 --- a/doc/html/files.html +++ b/doc/html/files.html @@ -28,7 +28,7 @@ - +
    The Red Matrix
    @@ -108,7 +108,7 @@ $(document).ready(function(){initNavTree('files.html','');});
    Here is a list of all files with brief descriptions:
    -
    [detail level 12345]
    +
    [detail level 1234567]
    @@ -321,7 +321,8 @@ $(document).ready(function(){initNavTree('files.html','');}); - + + @@ -334,14 +335,14 @@ $(document).ready(function(){initNavTree('files.html','');}); - + - + @@ -360,13 +361,26 @@ $(document).ready(function(){initNavTree('files.html','');}); - - - - - - - + + + + + + + + + + + + + + + + + + + +
    o+include
    o+view
    \*boot.php
    diff --git a/doc/html/filestorage_8php.html b/doc/html/filestorage_8php.html index 9b886f8bc..7b3d146ab 100644 --- a/doc/html/filestorage_8php.html +++ b/doc/html/filestorage_8php.html @@ -28,7 +28,7 @@ - +
    The Red Matrix
    diff --git a/doc/html/fpostit_8php.html b/doc/html/fpostit_8php.html index 38716cd89..c0007a22e 100644 --- a/doc/html/fpostit_8php.html +++ b/doc/html/fpostit_8php.html @@ -28,7 +28,7 @@ - +
    The Red Matrix
    diff --git a/doc/html/fresh_8md.html b/doc/html/fresh_8md.html index 1624daf40..91f73cfed 100644 --- a/doc/html/fresh_8md.html +++ b/doc/html/fresh_8md.html @@ -28,7 +28,7 @@ - +
    The Red Matrix
    diff --git a/doc/html/friendica-to-smarty-tpl_8py.html b/doc/html/friendica-to-smarty-tpl_8py.html index cbf96d98a..dc7ba225d 100644 --- a/doc/html/friendica-to-smarty-tpl_8py.html +++ b/doc/html/friendica-to-smarty-tpl_8py.html @@ -28,7 +28,7 @@ - +
    The Red Matrix
    diff --git a/doc/html/friendica__smarty_8php.html b/doc/html/friendica__smarty_8php.html index c242f3933..eef7ff752 100644 --- a/doc/html/friendica__smarty_8php.html +++ b/doc/html/friendica__smarty_8php.html @@ -28,7 +28,7 @@ - +
    The Red Matrix
    diff --git a/doc/html/fsuggest_8php.html b/doc/html/fsuggest_8php.html index 1bb670262..07d2127ab 100644 --- a/doc/html/fsuggest_8php.html +++ b/doc/html/fsuggest_8php.html @@ -28,7 +28,7 @@ - +
    The Red Matrix
    diff --git a/doc/html/full_8php.html b/doc/html/full_8php.html index 483a31152..2e22f58c7 100644 --- a/doc/html/full_8php.html +++ b/doc/html/full_8php.html @@ -28,7 +28,7 @@ - +
    The Red Matrix
    diff --git a/doc/html/functions.html b/doc/html/functions.html index 63d828fc9..07bf3f97b 100644 --- a/doc/html/functions.html +++ b/doc/html/functions.html @@ -28,7 +28,7 @@ - +
    The Red Matrix
    diff --git a/doc/html/functions_0x5f.html b/doc/html/functions_0x5f.html index aaa4e3619..ed59f06f7 100644 --- a/doc/html/functions_0x5f.html +++ b/doc/html/functions_0x5f.html @@ -28,7 +28,7 @@ - +
    The Red Matrix
    diff --git a/doc/html/functions_0x61.html b/doc/html/functions_0x61.html index 78d8582fe..d5a0d01c9 100644 --- a/doc/html/functions_0x61.html +++ b/doc/html/functions_0x61.html @@ -28,7 +28,7 @@ - +
    The Red Matrix
    diff --git a/doc/html/functions_0x62.html b/doc/html/functions_0x62.html index 2109a048c..a7a7a884c 100644 --- a/doc/html/functions_0x62.html +++ b/doc/html/functions_0x62.html @@ -28,7 +28,7 @@ - +
    The Red Matrix
    diff --git a/doc/html/functions_0x63.html b/doc/html/functions_0x63.html index c5a14375b..94f4ffba9 100644 --- a/doc/html/functions_0x63.html +++ b/doc/html/functions_0x63.html @@ -28,7 +28,7 @@ - +
    The Red Matrix
    diff --git a/doc/html/functions_0x64.html b/doc/html/functions_0x64.html index 50612a4cf..34949c740 100644 --- a/doc/html/functions_0x64.html +++ b/doc/html/functions_0x64.html @@ -28,7 +28,7 @@ - +
    The Red Matrix
    diff --git a/doc/html/functions_0x65.html b/doc/html/functions_0x65.html index d9ce44b5c..74e2892f6 100644 --- a/doc/html/functions_0x65.html +++ b/doc/html/functions_0x65.html @@ -28,7 +28,7 @@ - +
    The Red Matrix
    diff --git a/doc/html/functions_0x66.html b/doc/html/functions_0x66.html index 7172c99a9..377f92696 100644 --- a/doc/html/functions_0x66.html +++ b/doc/html/functions_0x66.html @@ -28,7 +28,7 @@ - +
    The Red Matrix
    diff --git a/doc/html/functions_0x67.html b/doc/html/functions_0x67.html index 7197b42f9..d59047383 100644 --- a/doc/html/functions_0x67.html +++ b/doc/html/functions_0x67.html @@ -28,7 +28,7 @@ - +
    The Red Matrix
    diff --git a/doc/html/functions_0x68.html b/doc/html/functions_0x68.html index 9cd17ba4a..ef9f36a46 100644 --- a/doc/html/functions_0x68.html +++ b/doc/html/functions_0x68.html @@ -28,7 +28,7 @@ - +
    The Red Matrix
    diff --git a/doc/html/functions_0x69.html b/doc/html/functions_0x69.html index 3bd5d0893..d503230a3 100644 --- a/doc/html/functions_0x69.html +++ b/doc/html/functions_0x69.html @@ -28,7 +28,7 @@ - +
    The Red Matrix
    diff --git a/doc/html/functions_0x6c.html b/doc/html/functions_0x6c.html index ec2ce797d..4f3e0deb8 100644 --- a/doc/html/functions_0x6c.html +++ b/doc/html/functions_0x6c.html @@ -28,7 +28,7 @@ - +
    The Red Matrix
    diff --git a/doc/html/functions_0x6e.html b/doc/html/functions_0x6e.html index 1a93d117a..06ee4dee8 100644 --- a/doc/html/functions_0x6e.html +++ b/doc/html/functions_0x6e.html @@ -28,7 +28,7 @@ - +
    The Red Matrix
    diff --git a/doc/html/functions_0x6f.html b/doc/html/functions_0x6f.html index 2d5a3fc61..9d147d3cf 100644 --- a/doc/html/functions_0x6f.html +++ b/doc/html/functions_0x6f.html @@ -28,7 +28,7 @@ - +
    The Red Matrix
    diff --git a/doc/html/functions_0x70.html b/doc/html/functions_0x70.html index 81d3b41ed..d9c25ebde 100644 --- a/doc/html/functions_0x70.html +++ b/doc/html/functions_0x70.html @@ -28,7 +28,7 @@ - +
    The Red Matrix
    diff --git a/doc/html/functions_0x71.html b/doc/html/functions_0x71.html index 3445bb050..50b8df7f7 100644 --- a/doc/html/functions_0x71.html +++ b/doc/html/functions_0x71.html @@ -28,7 +28,7 @@ - +
    The Red Matrix
    diff --git a/doc/html/functions_0x72.html b/doc/html/functions_0x72.html index 11ec483d4..1b6db3f69 100644 --- a/doc/html/functions_0x72.html +++ b/doc/html/functions_0x72.html @@ -28,7 +28,7 @@ - +
    The Red Matrix
    diff --git a/doc/html/functions_0x73.html b/doc/html/functions_0x73.html index 1664702a7..9f77236f3 100644 --- a/doc/html/functions_0x73.html +++ b/doc/html/functions_0x73.html @@ -28,7 +28,7 @@ - +
    The Red Matrix
    diff --git a/doc/html/functions_0x74.html b/doc/html/functions_0x74.html index 1eb41e3fb..a56945cc0 100644 --- a/doc/html/functions_0x74.html +++ b/doc/html/functions_0x74.html @@ -28,7 +28,7 @@ - +
    The Red Matrix
    diff --git a/doc/html/functions_0x76.html b/doc/html/functions_0x76.html index d17bd2049..35645c2c6 100644 --- a/doc/html/functions_0x76.html +++ b/doc/html/functions_0x76.html @@ -28,7 +28,7 @@ - +
    The Red Matrix
    diff --git a/doc/html/functions_func.html b/doc/html/functions_func.html index 636e241ad..d4e774f53 100644 --- a/doc/html/functions_func.html +++ b/doc/html/functions_func.html @@ -28,7 +28,7 @@ - +
    The Red Matrix
    diff --git a/doc/html/functions_func_0x61.html b/doc/html/functions_func_0x61.html index 0fd5f689b..b0646c0f3 100644 --- a/doc/html/functions_func_0x61.html +++ b/doc/html/functions_func_0x61.html @@ -28,7 +28,7 @@ - +
    The Red Matrix
    diff --git a/doc/html/functions_func_0x62.html b/doc/html/functions_func_0x62.html index c8ddf26e4..27bd27bf9 100644 --- a/doc/html/functions_func_0x62.html +++ b/doc/html/functions_func_0x62.html @@ -28,7 +28,7 @@ - +
    The Red Matrix
    diff --git a/doc/html/functions_func_0x63.html b/doc/html/functions_func_0x63.html index 5fafc662b..db2571d28 100644 --- a/doc/html/functions_func_0x63.html +++ b/doc/html/functions_func_0x63.html @@ -28,7 +28,7 @@ - +
    The Red Matrix
    diff --git a/doc/html/functions_func_0x64.html b/doc/html/functions_func_0x64.html index c37b0ea76..0eff5a139 100644 --- a/doc/html/functions_func_0x64.html +++ b/doc/html/functions_func_0x64.html @@ -28,7 +28,7 @@ - +
    The Red Matrix
    diff --git a/doc/html/functions_func_0x65.html b/doc/html/functions_func_0x65.html index 34be3e1d0..26b61b5c1 100644 --- a/doc/html/functions_func_0x65.html +++ b/doc/html/functions_func_0x65.html @@ -28,7 +28,7 @@ - +
    The Red Matrix
    diff --git a/doc/html/functions_func_0x66.html b/doc/html/functions_func_0x66.html index 1c57a8edb..08eb65b1e 100644 --- a/doc/html/functions_func_0x66.html +++ b/doc/html/functions_func_0x66.html @@ -28,7 +28,7 @@ - +
    The Red Matrix
    diff --git a/doc/html/functions_func_0x67.html b/doc/html/functions_func_0x67.html index 6fb756340..95a99abca 100644 --- a/doc/html/functions_func_0x67.html +++ b/doc/html/functions_func_0x67.html @@ -28,7 +28,7 @@ - +
    The Red Matrix
    diff --git a/doc/html/functions_func_0x68.html b/doc/html/functions_func_0x68.html index 93aa721d3..ff61d438c 100644 --- a/doc/html/functions_func_0x68.html +++ b/doc/html/functions_func_0x68.html @@ -28,7 +28,7 @@ - +
    The Red Matrix
    diff --git a/doc/html/functions_func_0x69.html b/doc/html/functions_func_0x69.html index 5952356db..478fdab39 100644 --- a/doc/html/functions_func_0x69.html +++ b/doc/html/functions_func_0x69.html @@ -28,7 +28,7 @@ - +
    The Red Matrix
    diff --git a/doc/html/functions_func_0x6c.html b/doc/html/functions_func_0x6c.html index 3a6959653..7eade1b08 100644 --- a/doc/html/functions_func_0x6c.html +++ b/doc/html/functions_func_0x6c.html @@ -28,7 +28,7 @@ - +
    The Red Matrix
    diff --git a/doc/html/functions_func_0x6e.html b/doc/html/functions_func_0x6e.html index 9a400dd49..99ffb26f6 100644 --- a/doc/html/functions_func_0x6e.html +++ b/doc/html/functions_func_0x6e.html @@ -28,7 +28,7 @@ - +
    The Red Matrix
    diff --git a/doc/html/functions_func_0x6f.html b/doc/html/functions_func_0x6f.html index 39ccbd89c..c0d02523c 100644 --- a/doc/html/functions_func_0x6f.html +++ b/doc/html/functions_func_0x6f.html @@ -28,7 +28,7 @@ - +
    The Red Matrix
    diff --git a/doc/html/functions_func_0x70.html b/doc/html/functions_func_0x70.html index 2fc9536da..b036e941f 100644 --- a/doc/html/functions_func_0x70.html +++ b/doc/html/functions_func_0x70.html @@ -28,7 +28,7 @@ - +
    The Red Matrix
    diff --git a/doc/html/functions_func_0x71.html b/doc/html/functions_func_0x71.html index 3a8b3c931..fb02d6f5e 100644 --- a/doc/html/functions_func_0x71.html +++ b/doc/html/functions_func_0x71.html @@ -28,7 +28,7 @@ - +
    The Red Matrix
    diff --git a/doc/html/functions_func_0x72.html b/doc/html/functions_func_0x72.html index 7253a7d8f..6c9e9ab8e 100644 --- a/doc/html/functions_func_0x72.html +++ b/doc/html/functions_func_0x72.html @@ -28,7 +28,7 @@ - +
    The Red Matrix
    diff --git a/doc/html/functions_func_0x73.html b/doc/html/functions_func_0x73.html index 80016b95c..00ca8ced4 100644 --- a/doc/html/functions_func_0x73.html +++ b/doc/html/functions_func_0x73.html @@ -28,7 +28,7 @@ - +
    The Red Matrix
    diff --git a/doc/html/functions_func_0x74.html b/doc/html/functions_func_0x74.html index dfb6d581f..8b2d47dca 100644 --- a/doc/html/functions_func_0x74.html +++ b/doc/html/functions_func_0x74.html @@ -28,7 +28,7 @@ - +
    The Red Matrix
    diff --git a/doc/html/functions_func_0x76.html b/doc/html/functions_func_0x76.html index e2fb97e1a..be21dc444 100644 --- a/doc/html/functions_func_0x76.html +++ b/doc/html/functions_func_0x76.html @@ -28,7 +28,7 @@ - +
    The Red Matrix
    diff --git a/doc/html/functions_vars.html b/doc/html/functions_vars.html index 0a00599c1..ad6f3d122 100644 --- a/doc/html/functions_vars.html +++ b/doc/html/functions_vars.html @@ -28,7 +28,7 @@ - +
    The Red Matrix
    diff --git a/doc/html/globals.html b/doc/html/globals.html index ec31017c1..85e38e7d5 100644 --- a/doc/html/globals.html +++ b/doc/html/globals.html @@ -28,7 +28,7 @@ - +
    The Red Matrix
    @@ -168,11 +168,14 @@ $(document).ready(function(){initNavTree('globals.html','');});
  • $body_font_size : style.php
  • +
  • $bodyclass +: default.php +
  • $called_api : api.php
  • $channel -: theme_init.php +: theme_init.php
  • $comment_indent : style.php @@ -206,6 +209,12 @@ $(document).ready(function(){initNavTree('globals.html','');});
  • $gc_probability : session.php
  • +
  • $headimg +: default.php +
  • +
  • $headimghome +: default.php +
  • $i : docblox_errorchecker.php
  • @@ -315,7 +324,7 @@ $(document).ready(function(){initNavTree('globals.html','');}); : style.php
  • $uid -: style.php +: style.php
  • $width : minimalisticdarkness.php diff --git a/doc/html/globals_0x5f.html b/doc/html/globals_0x5f.html index 425dac2bc..ab0af6a66 100644 --- a/doc/html/globals_0x5f.html +++ b/doc/html/globals_0x5f.html @@ -28,7 +28,7 @@ - +
    The Red Matrix
    diff --git a/doc/html/globals_0x61.html b/doc/html/globals_0x61.html index 0e079c6b2..580315ad6 100644 --- a/doc/html/globals_0x61.html +++ b/doc/html/globals_0x61.html @@ -28,7 +28,7 @@ - +
    The Red Matrix
    diff --git a/doc/html/globals_0x62.html b/doc/html/globals_0x62.html index e49d6d9eb..c1db54272 100644 --- a/doc/html/globals_0x62.html +++ b/doc/html/globals_0x62.html @@ -28,7 +28,7 @@ - +
    The Red Matrix
    @@ -189,6 +189,24 @@ $(document).ready(function(){initNavTree('globals_0x62.html','');});
  • blocks_content() : blocks.php
  • +
  • blog_init() +: theme.php +
  • +
  • blog_install() +: theme.php +
  • +
  • blog_uninstall() +: theme.php +
  • +
  • blogtheme_display_item() +: theme.php +
  • +
  • blogtheme_form() +: config.php +
  • +
  • blogtheme_imgurl() +: theme.php +
  • breaklines() : html2plain.php
  • diff --git a/doc/html/globals_0x63.html b/doc/html/globals_0x63.html index 8b6dbf253..f1c85c131 100644 --- a/doc/html/globals_0x63.html +++ b/doc/html/globals_0x63.html @@ -28,7 +28,7 @@ - +
    The Red Matrix
    diff --git a/doc/html/globals_0x64.html b/doc/html/globals_0x64.html index 64271db96..80f742451 100644 --- a/doc/html/globals_0x64.html +++ b/doc/html/globals_0x64.html @@ -28,7 +28,7 @@ - +
    The Red Matrix
    diff --git a/doc/html/globals_0x65.html b/doc/html/globals_0x65.html index dc540eaf9..952cadff7 100644 --- a/doc/html/globals_0x65.html +++ b/doc/html/globals_0x65.html @@ -28,7 +28,7 @@ - +
    The Red Matrix
    diff --git a/doc/html/globals_0x66.html b/doc/html/globals_0x66.html index 0cb5d6eb2..16b62535a 100644 --- a/doc/html/globals_0x66.html +++ b/doc/html/globals_0x66.html @@ -28,7 +28,7 @@ - +
    The Red Matrix
    diff --git a/doc/html/globals_0x67.html b/doc/html/globals_0x67.html index 9797611b1..f24792026 100644 --- a/doc/html/globals_0x67.html +++ b/doc/html/globals_0x67.html @@ -28,7 +28,7 @@ - +
    The Red Matrix
    diff --git a/doc/html/globals_0x68.html b/doc/html/globals_0x68.html index 5103e6fe6..fd225fed0 100644 --- a/doc/html/globals_0x68.html +++ b/doc/html/globals_0x68.html @@ -28,7 +28,7 @@ - +
    The Red Matrix
    diff --git a/doc/html/globals_0x69.html b/doc/html/globals_0x69.html index a0f507d21..e2b53d537 100644 --- a/doc/html/globals_0x69.html +++ b/doc/html/globals_0x69.html @@ -28,7 +28,7 @@ - +
    The Red Matrix
    @@ -159,7 +159,7 @@ $(document).ready(function(){initNavTree('globals_0x69.html','');});
  • if : style.php , php2po.php -, default.php +, default.php , full.php
  • import_author_xchan() diff --git a/doc/html/globals_0x6a.html b/doc/html/globals_0x6a.html index bd919192e..6d66a0bd4 100644 --- a/doc/html/globals_0x6a.html +++ b/doc/html/globals_0x6a.html @@ -28,7 +28,7 @@ - +
    The Red Matrix
    diff --git a/doc/html/globals_0x6b.html b/doc/html/globals_0x6b.html index e45270b14..54bff469b 100644 --- a/doc/html/globals_0x6b.html +++ b/doc/html/globals_0x6b.html @@ -28,7 +28,7 @@ - +
    The Red Matrix
    diff --git a/doc/html/globals_0x6c.html b/doc/html/globals_0x6c.html index e10884157..518b831a7 100644 --- a/doc/html/globals_0x6c.html +++ b/doc/html/globals_0x6c.html @@ -28,7 +28,7 @@ - +
    The Red Matrix
    diff --git a/doc/html/globals_0x6d.html b/doc/html/globals_0x6d.html index 7e5d7b9df..c61a2e1e6 100644 --- a/doc/html/globals_0x6d.html +++ b/doc/html/globals_0x6d.html @@ -28,7 +28,7 @@ - +
    The Red Matrix
    diff --git a/doc/html/globals_0x6e.html b/doc/html/globals_0x6e.html index e4ff51d56..1ff7d7e87 100644 --- a/doc/html/globals_0x6e.html +++ b/doc/html/globals_0x6e.html @@ -28,7 +28,7 @@ - +
    The Red Matrix
    diff --git a/doc/html/globals_0x6f.html b/doc/html/globals_0x6f.html index ff112eca9..0d80bf4f8 100644 --- a/doc/html/globals_0x6f.html +++ b/doc/html/globals_0x6f.html @@ -28,7 +28,7 @@ - +
    The Red Matrix
    diff --git a/doc/html/globals_0x70.html b/doc/html/globals_0x70.html index 7f8dd0a80..de1349ac6 100644 --- a/doc/html/globals_0x70.html +++ b/doc/html/globals_0x70.html @@ -28,7 +28,7 @@ - +
    The Red Matrix
    @@ -395,6 +395,12 @@ $(document).ready(function(){initNavTree('globals_0x70.html','');});
  • post_to_red_deactivate() : post_to_red.php
  • +
  • post_to_red_delete_comment() +: post_to_red.php +
  • +
  • post_to_red_delete_post() +: post_to_red.php +
  • post_to_red_display_admin_page() : post_to_red.php
  • @@ -404,15 +410,18 @@ $(document).ready(function(){initNavTree('globals_0x70.html','');});
  • post_to_red_get_acct_name() : post_to_red.php
  • +
  • post_to_red_get_avatar() +: post_to_red.php +
  • +
  • post_to_red_get_channel_name() +: post_to_red.php +
  • post_to_red_get_password() : post_to_red.php
  • post_to_red_get_seed_location() : post_to_red.php
  • -
  • post_to_red_get_user_name() -: post_to_red.php -
  • post_to_red_path : post_to_red.php
  • diff --git a/doc/html/globals_0x71.html b/doc/html/globals_0x71.html index 5ce2ce29b..c495a1b81 100644 --- a/doc/html/globals_0x71.html +++ b/doc/html/globals_0x71.html @@ -28,7 +28,7 @@ - +
    The Red Matrix
    diff --git a/doc/html/globals_0x72.html b/doc/html/globals_0x72.html index fdd45bb5d..2dcfbb68c 100644 --- a/doc/html/globals_0x72.html +++ b/doc/html/globals_0x72.html @@ -28,7 +28,7 @@ - +
    The Red Matrix
    @@ -165,12 +165,18 @@ $(document).ready(function(){initNavTree('globals_0x72.html','');});
  • rebuild_theme_table() : admin.php
  • +
  • red_comment() +: post_to_red.php +
  • RED_PLATFORM : boot.php
  • RED_VERSION : boot.php
  • +
  • red_xmlrpc_methods() +: post_to_red.php +
  • red_zrl_callback() : items.php
  • diff --git a/doc/html/globals_0x73.html b/doc/html/globals_0x73.html index ac6b57d31..bb8384a0e 100644 --- a/doc/html/globals_0x73.html +++ b/doc/html/globals_0x73.html @@ -28,7 +28,7 @@ - +
    The Red Matrix
    diff --git a/doc/html/globals_0x74.html b/doc/html/globals_0x74.html index 23e1139f6..8f69addac 100644 --- a/doc/html/globals_0x74.html +++ b/doc/html/globals_0x74.html @@ -28,7 +28,7 @@ - +
    The Red Matrix
    @@ -228,17 +228,23 @@ $(document).ready(function(){initNavTree('globals_0x74.html','');});
  • tgroup_check() : items.php
  • +
  • theme_admin() +: config.php +
  • +
  • theme_admin_post() +: config.php +
  • theme_attachments() : text.php
  • theme_content() -: config.php +: config.php
  • theme_include() : plugin.php
  • theme_post() -: config.php +: config.php
  • theme_status() : admin.php diff --git a/doc/html/globals_0x75.html b/doc/html/globals_0x75.html index 0c057ceb8..2da566338 100644 --- a/doc/html/globals_0x75.html +++ b/doc/html/globals_0x75.html @@ -28,7 +28,7 @@ - +
    The Red Matrix
    diff --git a/doc/html/globals_0x76.html b/doc/html/globals_0x76.html index 324ca6f9c..b6a1e3208 100644 --- a/doc/html/globals_0x76.html +++ b/doc/html/globals_0x76.html @@ -28,7 +28,7 @@ - +
    The Red Matrix
    diff --git a/doc/html/globals_0x77.html b/doc/html/globals_0x77.html index 0c34d1783..7de93fd83 100644 --- a/doc/html/globals_0x77.html +++ b/doc/html/globals_0x77.html @@ -28,7 +28,7 @@ - +
    The Red Matrix
    diff --git a/doc/html/globals_0x78.html b/doc/html/globals_0x78.html index 434ab8b68..4435d4f57 100644 --- a/doc/html/globals_0x78.html +++ b/doc/html/globals_0x78.html @@ -28,7 +28,7 @@ - +
    The Red Matrix
    diff --git a/doc/html/globals_0x7a.html b/doc/html/globals_0x7a.html index 9aded7ced..8b9ab909d 100644 --- a/doc/html/globals_0x7a.html +++ b/doc/html/globals_0x7a.html @@ -28,7 +28,7 @@ - +
    The Red Matrix
    @@ -201,8 +201,8 @@ $(document).ready(function(){initNavTree('globals_0x7a.html','');});
  • zot_finger() : zot.php
  • -
  • zot_get_hubloc() -: zot.php +
  • zot_get_hublocs() +: zot.php
  • zot_gethub() : zot.php diff --git a/doc/html/globals_func.html b/doc/html/globals_func.html index 3abdac47c..6c305e4c3 100644 --- a/doc/html/globals_func.html +++ b/doc/html/globals_func.html @@ -28,7 +28,7 @@ - +
    The Red Matrix
    diff --git a/doc/html/globals_func_0x61.html b/doc/html/globals_func_0x61.html index 1fa26b2b8..50cd70a18 100644 --- a/doc/html/globals_func_0x61.html +++ b/doc/html/globals_func_0x61.html @@ -28,7 +28,7 @@ - +
    The Red Matrix
    diff --git a/doc/html/globals_func_0x62.html b/doc/html/globals_func_0x62.html index 0736bb974..16b779949 100644 --- a/doc/html/globals_func_0x62.html +++ b/doc/html/globals_func_0x62.html @@ -28,7 +28,7 @@ - +
    The Red Matrix
    @@ -188,6 +188,24 @@ $(document).ready(function(){initNavTree('globals_func_0x62.html','');});
  • blocks_content() : blocks.php
  • +
  • blog_init() +: theme.php +
  • +
  • blog_install() +: theme.php +
  • +
  • blog_uninstall() +: theme.php +
  • +
  • blogtheme_display_item() +: theme.php +
  • +
  • blogtheme_form() +: config.php +
  • +
  • blogtheme_imgurl() +: theme.php +
  • breaklines() : html2plain.php
  • diff --git a/doc/html/globals_func_0x63.html b/doc/html/globals_func_0x63.html index fcf1bc606..0af2f408c 100644 --- a/doc/html/globals_func_0x63.html +++ b/doc/html/globals_func_0x63.html @@ -28,7 +28,7 @@ - +
    The Red Matrix
    diff --git a/doc/html/globals_func_0x64.html b/doc/html/globals_func_0x64.html index 37f9fc64c..ff8424b47 100644 --- a/doc/html/globals_func_0x64.html +++ b/doc/html/globals_func_0x64.html @@ -28,7 +28,7 @@ - +
    The Red Matrix
    diff --git a/doc/html/globals_func_0x65.html b/doc/html/globals_func_0x65.html index 290ea76b4..1ca8149c3 100644 --- a/doc/html/globals_func_0x65.html +++ b/doc/html/globals_func_0x65.html @@ -28,7 +28,7 @@ - +
    The Red Matrix
    diff --git a/doc/html/globals_func_0x66.html b/doc/html/globals_func_0x66.html index e99245f92..90fa2553b 100644 --- a/doc/html/globals_func_0x66.html +++ b/doc/html/globals_func_0x66.html @@ -28,7 +28,7 @@ - +
    The Red Matrix
    diff --git a/doc/html/globals_func_0x67.html b/doc/html/globals_func_0x67.html index 69cba7bab..3673ee05d 100644 --- a/doc/html/globals_func_0x67.html +++ b/doc/html/globals_func_0x67.html @@ -28,7 +28,7 @@ - +
    The Red Matrix
    diff --git a/doc/html/globals_func_0x68.html b/doc/html/globals_func_0x68.html index 9bb63890e..b5382ad9d 100644 --- a/doc/html/globals_func_0x68.html +++ b/doc/html/globals_func_0x68.html @@ -28,7 +28,7 @@ - + - -
    The Red Matrix
    diff --git a/doc/html/globals_func_0x69.html b/doc/html/globals_func_0x69.html index 898c8f3df..774b9e17d 100644 --- a/doc/html/globals_func_0x69.html +++ b/doc/html/globals_func_0x69.html @@ -28,7 +28,7 @@ - +
    The Red Matrix
    diff --git a/doc/html/globals_func_0x6a.html b/doc/html/globals_func_0x6a.html index 1dc0cd6cb..dcc3f4af6 100644 --- a/doc/html/globals_func_0x6a.html +++ b/doc/html/globals_func_0x6a.html @@ -28,7 +28,7 @@ - +
    The Red Matrix
    diff --git a/doc/html/globals_func_0x6b.html b/doc/html/globals_func_0x6b.html index b00fe5da8..b7adf9d4f 100644 --- a/doc/html/globals_func_0x6b.html +++ b/doc/html/globals_func_0x6b.html @@ -28,7 +28,7 @@ - +
    The Red Matrix
    diff --git a/doc/html/globals_func_0x6c.html b/doc/html/globals_func_0x6c.html index 37e7a3b17..0c553dabb 100644 --- a/doc/html/globals_func_0x6c.html +++ b/doc/html/globals_func_0x6c.html @@ -28,7 +28,7 @@ - +
    The Red Matrix
    diff --git a/doc/html/globals_func_0x6d.html b/doc/html/globals_func_0x6d.html index 2e63556bf..fdd3edaab 100644 --- a/doc/html/globals_func_0x6d.html +++ b/doc/html/globals_func_0x6d.html @@ -28,7 +28,7 @@ - +
    Returns
    string substituted string
    -

    Referenced by admin_content(), admin_page_dbsync(), admin_page_hubloc(), admin_page_logs(), admin_page_plugins(), admin_page_site(), admin_page_summary(), admin_page_themes(), admin_page_users(), advanced_profile(), allfriends_content(), alt_pager(), api_apply_template(), api_content(), apps_content(), apw_form(), blocks_content(), blogtheme_form(), App\build_pagehead(), categories_widget(), channel_content(), chanview_content(), check_config(), check_php(), common_content(), common_friends_visitor_widget(), connect_content(), connections_content(), construct_page(), contact_block(), conversation(), crepair_content(), delegate_content(), design_tools(), dir_safe_mode(), dir_sort_links(), directory_content(), display_content(), editblock_content(), editlayout_content(), editpost_content(), editwebpage_content(), events_content(), fbrowser_content(), field_timezone(), fileas_widget(), filer_content(), filestorage_content(), findpeople_widget(), follow_widget(), format_categories(), format_filer(), get_birthdays(), Item\get_comment_box(), get_events(), get_feed_for(), group_content(), group_side(), help_content(), hostxrd_init(), import_content(), intro_content(), invite_content(), lang_selector(), lastpost_content(), layouts_content(), login(), lostpass_content(), lostpass_post(), manage_content(), match_content(), menu_content(), menu_render(), message_aside(), message_content(), micropro(), mini_group_select(), mitem_content(), mood_content(), nav(), network_content(), new_channel_content(), notification(), notifications_content(), notify_content(), oembed_format_object(), oexchange_init(), opensearch_init(), pagelist_widget(), photos_album_widget(), photos_content(), poco_init(), poke_content(), populate_acl(), posted_date_widget(), profile_sidebar(), profiles_content(), redbasic_form(), register_content(), removeme_content(), rmagic_content(), rpost_content(), saved_searches(), search_content(), send_reg_approval_email(), send_verification_email(), settings_aside(), setup_content(), setup_post(), siteinfo_content(), sources_content(), suggest_content(), theme_attachments(), thing_content(), user_allow(), vcard_from_xchan(), viewconnections_content(), vote_content(), webpages_content(), writepages_widget(), and xrd_init().

    +

    Referenced by admin_content(), admin_page_dbsync(), admin_page_hubloc(), admin_page_logs(), admin_page_plugins(), admin_page_site(), admin_page_summary(), admin_page_themes(), admin_page_users(), advanced_profile(), allfriends_content(), alt_pager(), api_apply_template(), api_content(), apps_content(), apw_form(), blocks_content(), blogtheme_form(), App\build_pagehead(), categories_widget(), channel_content(), chanview_content(), check_config(), check_php(), common_content(), common_friends_visitor_widget(), connect_content(), connections_content(), construct_page(), contact_block(), conversation(), delegate_content(), design_tools(), dir_safe_mode(), dir_sort_links(), directory_content(), display_content(), editblock_content(), editlayout_content(), editpost_content(), editwebpage_content(), events_content(), fbrowser_content(), field_timezone(), fileas_widget(), filer_content(), filestorage_content(), findpeople_widget(), format_categories(), format_filer(), get_birthdays(), Item\get_comment_box(), get_events(), get_feed_for(), group_content(), group_side(), help_content(), hostxrd_init(), import_content(), invite_content(), lang_selector(), layouts_content(), login(), lostpass_content(), lostpass_post(), manage_content(), match_content(), menu_content(), menu_render(), message_aside(), message_content(), micropro(), mini_group_select(), mitem_content(), mood_content(), nav(), network_content(), new_channel_content(), notification(), notifications_content(), notify_content(), oembed_format_object(), oexchange_init(), opensearch_init(), pagelist_widget(), photos_album_widget(), photos_content(), poco_init(), poke_content(), populate_acl(), posted_date_widget(), profile_sidebar(), profiles_content(), redbasic_form(), register_content(), removeme_content(), rmagic_content(), rpost_content(), search_content(), send_reg_approval_email(), send_verification_email(), settings_aside(), setup_content(), setup_post(), siteinfo_content(), sources_content(), suggest_content(), theme_attachments(), thing_content(), user_allow(), vcard_from_xchan(), viewconnections_content(), vote_content(), webpages_content(), widget_affinity(), widget_archive(), widget_filer(), widget_follow(), widget_notes(), widget_savedsearch(), widget_suggestions(), writepages_widget(), and xrd_init().

    @@ -1842,7 +1844,47 @@ Variables
    The Red Matrix
    diff --git a/doc/html/globals_func_0x6e.html b/doc/html/globals_func_0x6e.html index 10a7c856b..a82a11757 100644 --- a/doc/html/globals_func_0x6e.html +++ b/doc/html/globals_func_0x6e.html @@ -28,7 +28,7 @@ - +
    The Red Matrix
    diff --git a/doc/html/globals_func_0x6f.html b/doc/html/globals_func_0x6f.html index bfb4f4e4c..2f5e4b314 100644 --- a/doc/html/globals_func_0x6f.html +++ b/doc/html/globals_func_0x6f.html @@ -28,7 +28,7 @@ - +
    The Red Matrix
    diff --git a/doc/html/globals_func_0x70.html b/doc/html/globals_func_0x70.html index 9aab42fcc..124675cca 100644 --- a/doc/html/globals_func_0x70.html +++ b/doc/html/globals_func_0x70.html @@ -28,7 +28,7 @@ - +
    The Red Matrix
    @@ -269,6 +269,12 @@ $(document).ready(function(){initNavTree('globals_func_0x70.html','');});
  • post_to_red_deactivate() : post_to_red.php
  • +
  • post_to_red_delete_comment() +: post_to_red.php +
  • +
  • post_to_red_delete_post() +: post_to_red.php +
  • post_to_red_display_admin_page() : post_to_red.php
  • @@ -278,15 +284,18 @@ $(document).ready(function(){initNavTree('globals_func_0x70.html','');});
  • post_to_red_get_acct_name() : post_to_red.php
  • +
  • post_to_red_get_avatar() +: post_to_red.php +
  • +
  • post_to_red_get_channel_name() +: post_to_red.php +
  • post_to_red_get_password() : post_to_red.php
  • post_to_red_get_seed_location() : post_to_red.php
  • -
  • post_to_red_get_user_name() -: post_to_red.php -
  • post_to_red_post() : post_to_red.php
  • diff --git a/doc/html/globals_func_0x71.html b/doc/html/globals_func_0x71.html index 4a96236c7..d4e6316bf 100644 --- a/doc/html/globals_func_0x71.html +++ b/doc/html/globals_func_0x71.html @@ -28,7 +28,7 @@ - +
    The Red Matrix
    diff --git a/doc/html/globals_func_0x72.html b/doc/html/globals_func_0x72.html index 63b4cd48f..c49e5d97c 100644 --- a/doc/html/globals_func_0x72.html +++ b/doc/html/globals_func_0x72.html @@ -28,7 +28,7 @@ - +
    The Red Matrix
    @@ -158,6 +158,12 @@ $(document).ready(function(){initNavTree('globals_func_0x72.html','');});
  • rebuild_theme_table() : admin.php
  • +
  • red_comment() +: post_to_red.php +
  • +
  • red_xmlrpc_methods() +: post_to_red.php +
  • red_zrl_callback() : items.php
  • diff --git a/doc/html/globals_func_0x73.html b/doc/html/globals_func_0x73.html index ccec53426..ca9a9361b 100644 --- a/doc/html/globals_func_0x73.html +++ b/doc/html/globals_func_0x73.html @@ -28,7 +28,7 @@ - +
    The Red Matrix
    diff --git a/doc/html/globals_func_0x74.html b/doc/html/globals_func_0x74.html index a8a3bdee7..f7a827882 100644 --- a/doc/html/globals_func_0x74.html +++ b/doc/html/globals_func_0x74.html @@ -28,7 +28,7 @@ - +
    Returns
    string
    -

    Referenced by admin_page_logs(), connect_post(), create_identity(), events_post(), fsuggest_post(), get_atom_elements(), item_post(), item_store(), mail_store(), menu_add_item(), menu_create(), menu_edit(), menu_edit_item(), message_content(), message_post(), network_content(), post_activity_item(), printable(), profiles_post(), thing_init(), and z_input_filter().

    +

    Referenced by admin_page_logs(), connect_post(), create_identity(), events_post(), fsuggest_post(), get_atom_elements(), item_post(), item_store(), mail_store(), menu_add_item(), menu_create(), menu_edit(), menu_edit_item(), message_post(), network_content(), notes_init(), printable(), profiles_post(), thing_init(), and z_input_filter().

    @@ -1021,7 +1023,7 @@ Variables
    The Red Matrix
    @@ -185,17 +185,23 @@ $(document).ready(function(){initNavTree('globals_func_0x74.html','');});
  • tgroup_check() : items.php
  • +
  • theme_admin() +: config.php +
  • +
  • theme_admin_post() +: config.php +
  • theme_attachments() : text.php
  • theme_content() -: config.php +: config.php
  • theme_include() : plugin.php
  • theme_post() -: config.php +: config.php
  • theme_status() : admin.php diff --git a/doc/html/globals_func_0x75.html b/doc/html/globals_func_0x75.html index 7059f84da..7d53ad29c 100644 --- a/doc/html/globals_func_0x75.html +++ b/doc/html/globals_func_0x75.html @@ -28,7 +28,7 @@ - +
    The Red Matrix
    diff --git a/doc/html/globals_func_0x76.html b/doc/html/globals_func_0x76.html index bf69a6911..c61a91b6b 100644 --- a/doc/html/globals_func_0x76.html +++ b/doc/html/globals_func_0x76.html @@ -28,7 +28,7 @@ - +
    The Red Matrix
    diff --git a/doc/html/globals_func_0x77.html b/doc/html/globals_func_0x77.html index 110ffab01..96406899a 100644 --- a/doc/html/globals_func_0x77.html +++ b/doc/html/globals_func_0x77.html @@ -28,7 +28,7 @@ - + + + @@ -358,7 +360,7 @@ Variables
    The Red Matrix
    diff --git a/doc/html/globals_func_0x78.html b/doc/html/globals_func_0x78.html index 992f1acef..f0f230193 100644 --- a/doc/html/globals_func_0x78.html +++ b/doc/html/globals_func_0x78.html @@ -28,7 +28,7 @@ - +
    The Red Matrix
    diff --git a/doc/html/globals_func_0x7a.html b/doc/html/globals_func_0x7a.html index bfdd75ee2..67ec3efa7 100644 --- a/doc/html/globals_func_0x7a.html +++ b/doc/html/globals_func_0x7a.html @@ -28,7 +28,7 @@ - +
    The Red Matrix
    @@ -197,8 +197,8 @@ $(document).ready(function(){initNavTree('globals_func_0x7a.html','');});
  • zot_finger() : zot.php
  • -
  • zot_get_hubloc() -: zot.php +
  • zot_get_hublocs() +: zot.php
  • zot_gethub() : zot.php diff --git a/doc/html/globals_vars.html b/doc/html/globals_vars.html index e466fa2e3..152e8159d 100644 --- a/doc/html/globals_vars.html +++ b/doc/html/globals_vars.html @@ -28,7 +28,7 @@ - +

    Profile owner - everything is visible

    Authenticated visitor. Unless pre-verified, check that the contact belongs to this $owner_id and load the groups the visitor belongs to. If pre-verified, the caller is expected to have already done this and passed the groups into this function.

    -

    Referenced by channel_content(), items_fetch(), lastpost_content(), page_content(), pdl_selector(), share_init(), and zot_feed().

    +

    Referenced by channel_content(), items_fetch(), page_content(), pdl_selector(), share_init(), and zot_feed().

    diff --git a/doc/html/socgraph_8php.html b/doc/html/socgraph_8php.html index 5f67be58c..d85a7c0a7 100644 --- a/doc/html/socgraph_8php.html +++ b/doc/html/socgraph_8php.html @@ -406,7 +406,7 @@ Functions
    The Red Matrix
    @@ -163,11 +163,14 @@ $(document).ready(function(){initNavTree('globals_vars.html','');});
  • $body_font_size : style.php
  • +
  • $bodyclass +: default.php +
  • $called_api : api.php
  • $channel -: theme_init.php +: theme_init.php
  • $comment_indent : style.php @@ -201,6 +204,12 @@ $(document).ready(function(){initNavTree('globals_vars.html','');});
  • $gc_probability : session.php
  • +
  • $headimg +: default.php +
  • +
  • $headimghome +: default.php +
  • $i : docblox_errorchecker.php
  • @@ -310,7 +319,7 @@ $(document).ready(function(){initNavTree('globals_vars.html','');}); : style.php
  • $uid -: style.php +: style.php
  • $width : minimalisticdarkness.php diff --git a/doc/html/globals_vars_0x61.html b/doc/html/globals_vars_0x61.html index c7c2cf186..8493d5b7d 100644 --- a/doc/html/globals_vars_0x61.html +++ b/doc/html/globals_vars_0x61.html @@ -28,7 +28,7 @@ - + - -
    The Red Matrix
    diff --git a/doc/html/globals_vars_0x63.html b/doc/html/globals_vars_0x63.html index 91e566b58..6899381a8 100644 --- a/doc/html/globals_vars_0x63.html +++ b/doc/html/globals_vars_0x63.html @@ -28,7 +28,7 @@ - + - -
    The Red Matrix
    diff --git a/doc/html/globals_vars_0x64.html b/doc/html/globals_vars_0x64.html index e642dd020..06a3e585a 100644 --- a/doc/html/globals_vars_0x64.html +++ b/doc/html/globals_vars_0x64.html @@ -28,7 +28,7 @@ - + - -
    The Red Matrix
    diff --git a/doc/html/globals_vars_0x65.html b/doc/html/globals_vars_0x65.html index 4539792cb..b39b21f8a 100644 --- a/doc/html/globals_vars_0x65.html +++ b/doc/html/globals_vars_0x65.html @@ -28,7 +28,7 @@ - + - -
    The Red Matrix
    diff --git a/doc/html/globals_vars_0x66.html b/doc/html/globals_vars_0x66.html index 9d435e94a..ac01ed206 100644 --- a/doc/html/globals_vars_0x66.html +++ b/doc/html/globals_vars_0x66.html @@ -28,7 +28,7 @@ - +
    The Red Matrix
    diff --git a/doc/html/globals_vars_0x67.html b/doc/html/globals_vars_0x67.html index ed4d31490..350a44913 100644 --- a/doc/html/globals_vars_0x67.html +++ b/doc/html/globals_vars_0x67.html @@ -28,7 +28,7 @@ - +

    Referenced by poller_run().

    + + + +
    +
    +
    The Red Matrix
    diff --git a/doc/html/globals_vars_0x68.html b/doc/html/globals_vars_0x68.html index 1cf8653e9..aaa124015 100644 --- a/doc/html/globals_vars_0x68.html +++ b/doc/html/globals_vars_0x68.html @@ -28,7 +28,7 @@ - +

    Referenced by App\build_pagehead().

    + + + +
    +
    +
    The Red Matrix
    diff --git a/doc/html/globals_vars_0x69.html b/doc/html/globals_vars_0x69.html index fdaac05a0..09db932b0 100644 --- a/doc/html/globals_vars_0x69.html +++ b/doc/html/globals_vars_0x69.html @@ -28,7 +28,7 @@ - +
    The Red Matrix
    @@ -141,7 +141,7 @@ $(document).ready(function(){initNavTree('globals_vars_0x69.html','');});

    - i -

    -

    Referenced by admin_content(), admin_page_dbsync(), admin_page_hubloc(), admin_page_logs(), admin_page_plugins(), admin_page_site(), admin_page_summary(), admin_page_themes(), admin_page_users(), advanced_profile(), allfriends_content(), alt_pager(), api_apply_template(), api_content(), apps_content(), apw_form(), blocks_content(), blogtheme_form(), App\build_pagehead(), categories_widget(), channel_content(), chanview_content(), check_php(), common_content(), common_friends_visitor_widget(), connect_content(), connections_content(), construct_page(), contact_block(), conversation(), crepair_content(), delegate_content(), design_tools(), dir_safe_mode(), dir_sort_links(), directory_content(), display_content(), editblock_content(), editlayout_content(), editpost_content(), editwebpage_content(), events_content(), fbrowser_content(), field_timezone(), fileas_widget(), filer_content(), filestorage_content(), findpeople_widget(), follow_widget(), format_categories(), format_filer(), get_birthdays(), Item\get_comment_box(), get_events(), get_feed_for(), group_content(), group_side(), help_content(), hostxrd_init(), import_content(), intro_content(), invite_content(), lang_selector(), lastpost_content(), layouts_content(), login(), lostpass_content(), manage_content(), match_content(), menu_content(), menu_render(), message_aside(), message_content(), micropro(), mini_group_select(), mitem_content(), mood_content(), nav(), network_content(), new_channel_content(), notification(), notifications_content(), notify_content(), oembed_format_object(), oexchange_init(), opensearch_init(), pagelist_widget(), photos_album_widget(), photos_content(), poco_init(), poke_content(), populate_acl(), posted_date_widget(), profile_sidebar(), profiles_content(), redbasic_form(), register_content(), removeme_content(), rmagic_content(), rpost_content(), saved_searches(), search_content(), settings_aside(), setup_content(), siteinfo_content(), sources_content(), suggest_content(), theme_attachments(), thing_content(), vcard_from_xchan(), viewconnections_content(), vote_content(), webpages_content(), writepages_widget(), and xrd_init().

    +

    Referenced by admin_content(), admin_page_dbsync(), admin_page_hubloc(), admin_page_logs(), admin_page_plugins(), admin_page_site(), admin_page_summary(), admin_page_themes(), admin_page_users(), advanced_profile(), allfriends_content(), alt_pager(), api_apply_template(), api_content(), apps_content(), apw_form(), blocks_content(), blogtheme_form(), App\build_pagehead(), categories_widget(), channel_content(), chanview_content(), check_php(), common_content(), common_friends_visitor_widget(), connect_content(), connections_content(), construct_page(), contact_block(), conversation(), delegate_content(), design_tools(), dir_safe_mode(), dir_sort_links(), directory_content(), display_content(), editblock_content(), editlayout_content(), editpost_content(), editwebpage_content(), events_content(), fbrowser_content(), field_timezone(), fileas_widget(), filer_content(), filestorage_content(), findpeople_widget(), format_categories(), format_filer(), get_birthdays(), Item\get_comment_box(), get_events(), get_feed_for(), group_content(), group_side(), help_content(), hostxrd_init(), import_content(), invite_content(), lang_selector(), layouts_content(), login(), lostpass_content(), manage_content(), match_content(), menu_content(), menu_render(), message_aside(), message_content(), micropro(), mini_group_select(), mitem_content(), mood_content(), nav(), network_content(), new_channel_content(), notification(), notifications_content(), notify_content(), oembed_format_object(), oexchange_init(), opensearch_init(), pagelist_widget(), photos_album_widget(), photos_content(), poco_init(), poke_content(), populate_acl(), posted_date_widget(), profile_sidebar(), profiles_content(), redbasic_form(), register_content(), removeme_content(), rmagic_content(), rpost_content(), search_content(), settings_aside(), setup_content(), siteinfo_content(), sources_content(), suggest_content(), theme_attachments(), thing_content(), vcard_from_xchan(), viewconnections_content(), vote_content(), webpages_content(), widget_affinity(), widget_archive(), widget_filer(), widget_follow(), widget_notes(), widget_savedsearch(), widget_suggestions(), writepages_widget(), and xrd_init().

    @@ -420,6 +426,48 @@ Functions
    + + + + + + + + + + + + + + + + + +
    head_remove_css ( $src,
     $media = 'screen' 
    )
    +
    + +
    + + +
    +
    + + + + + + + + +
    head_remove_js ( $src)
    +
    +
    @@ -566,6 +614,23 @@ Functions
    + + + + + + +
    script_path ()
    + @@ -626,7 +691,7 @@ Functions
    diff --git a/doc/html/plugin_8php.js b/doc/html/plugin_8php.js index ff6745471..e338c63d6 100644 --- a/doc/html/plugin_8php.js +++ b/doc/html/plugin_8php.js @@ -12,12 +12,15 @@ var plugin_8php = [ "head_add_js", "plugin_8php.html#a516591850f4fd49fd1425cfa54089db8", null ], [ "head_get_css", "plugin_8php.html#af92789f559b89a380e49d303218aeeca", null ], [ "head_get_js", "plugin_8php.html#a65ab52cb1a7030d5190e247211bef2a1", null ], + [ "head_remove_css", "plugin_8php.html#a9ab6caae31935f6cf781ce7872db7cdf", null ], + [ "head_remove_js", "plugin_8php.html#a4a0ae7b881e7c8af99a69e3b03f898b4", null ], [ "insert_hook", "plugin_8php.html#aeaebe63dcf6fa2794f363ba2bc0b2c6b", null ], [ "install_plugin", "plugin_8php.html#a482131013272a1d5d5c1b1469c6c55d5", null ], [ "load_hooks", "plugin_8php.html#a326365e48ef94f0b9a0a771b8d75e813", null ], [ "load_plugin", "plugin_8php.html#a9ca9632b7309a65b05c03a3e2f473a3d", null ], [ "register_hook", "plugin_8php.html#a425472c5f3afc137268b2ad45652b209", null ], [ "reload_plugins", "plugin_8php.html#af9ac19004dca49adae1ac7a0d9f3b025", null ], + [ "script_path", "plugin_8php.html#a0e8c2ea50bfdbc39e17ccccaea21ddc3", null ], [ "service_class_allows", "plugin_8php.html#a030cec6793b909c439c0336ba39b1571", null ], [ "service_class_fetch", "plugin_8php.html#a905b54e10704b283ac64680a8abc0971", null ], [ "theme_include", "plugin_8php.html#a65fedcffbe03562ef844cabee37d34e2", null ], diff --git a/doc/html/profile_8php.html b/doc/html/profile_8php.html index a44f39cf3..4e95ad2b8 100644 --- a/doc/html/profile_8php.html +++ b/doc/html/profile_8php.html @@ -114,28 +114,10 @@ $(document).ready(function(){initNavTree('profile_8php.html','');}); Functions
     profile_init (&$a)
     
     profile_aside (&$a)
     
     profile_content (&$a, $update=0)
     

    Function Documentation

    - -
    -
    - - - - - - - - -
    profile_aside ($a)
    -
    - -
    -
    diff --git a/doc/html/profile_8php.js b/doc/html/profile_8php.js index 942cf9b3d..249035945 100644 --- a/doc/html/profile_8php.js +++ b/doc/html/profile_8php.js @@ -1,6 +1,5 @@ var profile_8php = [ - [ "profile_aside", "profile_8php.html#a1a2482b775476f2f64ea5e8f4fc3fd1e", null ], [ "profile_content", "profile_8php.html#a3775cf6eef6587e5143133356a7b76c0", null ], [ "profile_init", "profile_8php.html#ab5d0246be0552e2182a585c1206d22a5", null ] ]; \ No newline at end of file diff --git a/doc/html/profile__photo_8php.html b/doc/html/profile__photo_8php.html index 769fa21a7..5d775fc65 100644 --- a/doc/html/profile__photo_8php.html +++ b/doc/html/profile__photo_8php.html @@ -114,28 +114,10 @@ $(document).ready(function(){initNavTree('profile__photo_8php.html','');}); Functions
     profile_photo_init (&$a)
     
     profile_photo_aside (&$a)
     
     profile_photo_post (&$a)
     

    Function Documentation

    - -
    -
    - - - - - - - - -
    profile_photo_aside ($a)
    -
    - -
    -
    diff --git a/doc/html/profile__photo_8php.js b/doc/html/profile__photo_8php.js index c9a379a2e..db2f4e25e 100644 --- a/doc/html/profile__photo_8php.js +++ b/doc/html/profile__photo_8php.js @@ -1,6 +1,5 @@ var profile__photo_8php = [ - [ "profile_photo_aside", "profile__photo_8php.html#ac9cd968a767e2ae1b88383b6cdd6dbe3", null ], [ "profile_photo_init", "profile__photo_8php.html#a140631c56438fbfacb61a1eb43067d02", null ], [ "profile_photo_post", "profile__photo_8php.html#a4b80234074bd603221aa5364f330e479", null ] ]; \ No newline at end of file diff --git a/doc/html/profiles_8php.html b/doc/html/profiles_8php.html index 17239b852..1b947e0ed 100644 --- a/doc/html/profiles_8php.html +++ b/doc/html/profiles_8php.html @@ -114,30 +114,12 @@ $(document).ready(function(){initNavTree('profiles_8php.html','');}); Functions
     profiles_init (&$a)
     
     profiles_aside (&$a)
     
     profiles_post (&$a)
     
     profiles_content (&$a)
     

    Function Documentation

    - -
    -
    - - - - - - - - -
    profiles_aside ($a)
    -
    - -
    -
    diff --git a/doc/html/profiles_8php.js b/doc/html/profiles_8php.js index 6bc83ad62..256ba1080 100644 --- a/doc/html/profiles_8php.js +++ b/doc/html/profiles_8php.js @@ -1,6 +1,5 @@ var profiles_8php = [ - [ "profiles_aside", "profiles_8php.html#a2a3ac90f51941ff78b85e9389304969c", null ], [ "profiles_content", "profiles_8php.html#a46975783b8b8d70402d51487eb1f0b00", null ], [ "profiles_init", "profiles_8php.html#a36f71405ad536228f8bb84a551b23f7e", null ], [ "profiles_post", "profiles_8php.html#ab0362c81b1d3b0b12a772b9fac446e04", null ] diff --git a/doc/html/profperm_8php.html b/doc/html/profperm_8php.html index 315bc21bb..a99c661fb 100644 --- a/doc/html/profperm_8php.html +++ b/doc/html/profperm_8php.html @@ -114,28 +114,10 @@ $(document).ready(function(){initNavTree('profperm_8php.html','');}); Functions
     profperm_init (&$a)
     
     profperm_aside (&$a)
     
     profperm_content (&$a)
     

    Function Documentation

    - -
    -
    - - - - - - - - -
    profperm_aside ($a)
    -
    - -
    -
    diff --git a/doc/html/profperm_8php.js b/doc/html/profperm_8php.js index 978df3252..95b68003d 100644 --- a/doc/html/profperm_8php.js +++ b/doc/html/profperm_8php.js @@ -1,6 +1,5 @@ var profperm_8php = [ - [ "profperm_aside", "profperm_8php.html#a77fd398ae7c25142e1d9ad724ec347cc", null ], [ "profperm_content", "profperm_8php.html#aef015787de2373d9fb3fe3f814fb5023", null ], [ "profperm_init", "profperm_8php.html#a17fb64ec05edee1dc94d95438807d6c6", null ] ]; \ No newline at end of file diff --git a/doc/html/search/all_63.js b/doc/html/search/all_63.js index 0ac1b9a56..9f968e083 100644 --- a/doc/html/search/all_63.js +++ b/doc/html/search/all_63.js @@ -11,11 +11,10 @@ var searchData= ['chanlink_5fcid',['chanlink_cid',['../text_8php.html#a85e3a4851c16674834010d8419a5d7ca',1,'text.php']]], ['chanlink_5fhash',['chanlink_hash',['../text_8php.html#a55ab893be57feda59c2a7ba1e58ff2d0',1,'text.php']]], ['chanlink_5furl',['chanlink_url',['../text_8php.html#a2e8d6c402603be3a1256a16605e09c2a',1,'text.php']]], - ['chanman_2ephp',['chanman.php',['../include_2chanman_8php.html',1,'']]], ['chanman_2ephp',['chanman.php',['../mod_2chanman_8php.html',1,'']]], + ['chanman_2ephp',['chanman.php',['../include_2chanman_8php.html',1,'']]], ['chanman_5fremove_5feverything_5ffrom_5fnetwork',['chanman_remove_everything_from_network',['../include_2chanman_8php.html#a21ba9a5c961e866ff27aee3ee67bf99b',1,'chanman.php']]], ['channel_2ephp',['channel.php',['../channel_8php.html',1,'']]], - ['channel_5faside',['channel_aside',['../channel_8php.html#aea8e189f2fbabfda779349dd94082e8e',1,'channel.php']]], ['channel_5fcontent',['channel_content',['../channel_8php.html#a9c6a6179e0e626398ebecc6151905ef1',1,'channel.php']]], ['channel_5finit',['channel_init',['../channel_8php.html#ac7c8c7845741baadf87fae6bc279f3dc',1,'channel.php']]], ['channel_5fremove',['channel_remove',['../Contact_8php.html#a186162051a5127069cc851d78740f205',1,'Contact.php']]], @@ -72,7 +71,6 @@ var searchData= ['comanche_5fwebpage',['comanche_webpage',['../comanche_8php.html#ae9fe1ce574db3dd0931eada80234f82a',1,'comanche.php']]], ['comanche_5fwidget',['comanche_widget',['../comanche_8php.html#a6b0191c1a63db1696a2eb139d90d9e7f',1,'comanche.php']]], ['common_2ephp',['common.php',['../common_8php.html',1,'']]], - ['common_5faside',['common_aside',['../common_8php.html#a3b12ec67b3d3edcf595c8d195da5d14a',1,'common.php']]], ['common_5fcontent',['common_content',['../common_8php.html#ab63408f39abef7a6915186e8dabc5a96',1,'common.php']]], ['common_5ffriends',['common_friends',['../socgraph_8php.html#a7d34cd58025bcd9e575282f44db75918',1,'socgraph.php']]], ['common_5ffriends_5fvisitor_5fwidget',['common_friends_visitor_widget',['../contact__widgets_8php.html#a552f8544528cec0c995cea7287ea9d65',1,'contact_widgets.php']]], @@ -134,10 +132,6 @@ var searchData= ['create_5fidentity',['create_identity',['../identity_8php.html#a345f4c943d84de502ec6e72d2c813945',1,'identity.php']]], ['createdirectory',['createDirectory',['../classRedDirectory.html#a986936910f0216887a25e28916c166c7',1,'RedDirectory']]], ['createfile',['createFile',['../classRedDirectory.html#a2d12d99d38a6a75fc9a830b2f7fc0bf0',1,'RedDirectory']]], - ['crepair_2ephp',['crepair.php',['../crepair_8php.html',1,'']]], - ['crepair_5fcontent',['crepair_content',['../crepair_8php.html#a29464c01838e209c8059cfcd2d195caa',1,'crepair.php']]], - ['crepair_5finit',['crepair_init',['../crepair_8php.html#ab089978e50df156bbfabf9f8f5ccd198',1,'crepair.php']]], - ['crepair_5fpost',['crepair_post',['../crepair_8php.html#acc4493e1ffd1462a605dd9b870034513',1,'crepair.php']]], ['cronhooks_2ephp',['cronhooks.php',['../cronhooks_8php.html',1,'']]], ['cronhooks_5frun',['cronhooks_run',['../cronhooks_8php.html#a4c4c1bbec4ecc9a0efa00dd6afd2c0ca',1,'cronhooks.php']]], ['cropimage',['cropImage',['../classphoto__driver.html#a2e6e61f1e356a90bc978f4404a77137e',1,'photo_driver\cropImage()'],['../classphoto__gd.html#ab2232d775c8bacf66773a03308105f0c',1,'photo_gd\cropImage()'],['../classphoto__imagick.html#a2f33a03a89497a2b2768e29736d4a8a4',1,'photo_imagick\cropImage()']]], diff --git a/doc/html/search/all_66.js b/doc/html/search/all_66.js index 3f5c1a2d9..58826efd6 100644 --- a/doc/html/search/all_66.js +++ b/doc/html/search/all_66.js @@ -44,7 +44,6 @@ var searchData= ['follow_2ephp',['follow.php',['../include_2follow_8php.html',1,'']]], ['follow_5fcontent',['follow_content',['../mod_2follow_8php.html#a4c540ea4e9f5c581c1a53516ac585592',1,'follow.php']]], ['follow_5finit',['follow_init',['../mod_2follow_8php.html#a171f5b19f50d7738adc3b2e96ec6018a',1,'follow.php']]], - ['follow_5fwidget',['follow_widget',['../contact__widgets_8php.html#af24e693532a045954caab515942cfc6f',1,'contact_widgets.php']]], ['foreach',['foreach',['../typo_8php.html#a329c9c12217d2c8660c47bbc7c8df4c5',1,'typo.php']]], ['format_5fcategories',['format_categories',['../text_8php.html#a3054189cff173977f4216c9a3dd29e1b',1,'text.php']]], ['format_5fcss_5fif_5fexists',['format_css_if_exists',['../plugin_8php.html#a9039e15aae27676af7777dcbee5a11d6',1,'plugin.php']]], diff --git a/doc/html/search/all_67.js b/doc/html/search/all_67.js index 4aabc9746..acc803194 100644 --- a/doc/html/search/all_67.js +++ b/doc/html/search/all_67.js @@ -115,7 +115,7 @@ var searchData= ['group_5frmv',['group_rmv',['../include_2group_8php.html#a4118f498bbd1530c1d0136d016d197a5',1,'group.php']]], ['group_5frmv_5fmember',['group_rmv_member',['../include_2group_8php.html#a540e3ef36f47d47532646be4241f6518',1,'group.php']]], ['group_5fselect',['group_select',['../acl__selectors_8php.html#aa1e3bc344ca2b29f97eb9860216d21a0',1,'acl_selectors.php']]], - ['group_5fside',['group_side',['../include_2group_8php.html#a1042d74055bafe54a6a30103d87a7f17',1,'group.php']]], + ['group_5fside',['group_side',['../include_2group_8php.html#abdfce3fd8dcf0c46543d190d0530b4a2',1,'group.php']]], ['groups_5fcontaining',['groups_containing',['../include_2group_8php.html#afb802ae2ce73aae4bc36d157f7b6a92f',1,'group.php']]], ['guess_5fimage_5ftype',['guess_image_type',['../photo__driver_8php.html#a243cee492ce443afb6a7d77d54b6c4aa',1,'photo_driver.php']]] ]; diff --git a/doc/html/search/all_68.js b/doc/html/search/all_68.js index 8948f18f4..6aa164847 100644 --- a/doc/html/search/all_68.js +++ b/doc/html/search/all_68.js @@ -2,14 +2,13 @@ var searchData= [ ['handle_5ftag',['handle_tag',['../item_8php.html#abd0e603a6696051af16476eb968d52e7',1,'item.php']]], ['has_5fpermissions',['has_permissions',['../items_8php.html#a77051724d1784074ff187e73a4db93fe',1,'items.php']]], - ['hcard_2ephp',['hcard.php',['../hcard_8php.html',1,'']]], - ['hcard_5faside',['hcard_aside',['../hcard_8php.html#a956c7cae2009652a37900306e5b7b73d',1,'hcard.php']]], - ['hcard_5finit',['hcard_init',['../hcard_8php.html#ac34f26b0e6a37eef44fa49bea135136d',1,'hcard.php']]], ['head_5fadd_5fcss',['head_add_css',['../plugin_8php.html#a23c4fccf1eb5fcd63b24783ba1f05f7a',1,'plugin.php']]], ['head_5fadd_5fjs',['head_add_js',['../plugin_8php.html#a516591850f4fd49fd1425cfa54089db8',1,'plugin.php']]], ['head_5fget_5fcss',['head_get_css',['../plugin_8php.html#af92789f559b89a380e49d303218aeeca',1,'plugin.php']]], ['head_5fget_5ficon',['head_get_icon',['../classApp.html#af17df107f2216ddf5ad2a7e0f2ba2166',1,'App\head_get_icon()'],['../boot_8php.html#a24a7a70afedd5d85fe0eadc85afa9f77',1,'head_get_icon(): boot.php']]], ['head_5fget_5fjs',['head_get_js',['../plugin_8php.html#a65ab52cb1a7030d5190e247211bef2a1',1,'plugin.php']]], + ['head_5fremove_5fcss',['head_remove_css',['../plugin_8php.html#a9ab6caae31935f6cf781ce7872db7cdf',1,'plugin.php']]], + ['head_5fremove_5fjs',['head_remove_js',['../plugin_8php.html#a4a0ae7b881e7c8af99a69e3b03f898b4',1,'plugin.php']]], ['head_5fset_5ficon',['head_set_icon',['../classApp.html#a8863703a0305eaa45eb970dbd2046291',1,'App\head_set_icon()'],['../boot_8php.html#a0e4701c9742c3ef88f02ac450a042a84',1,'head_set_icon(): boot.php']]], ['help',['help',['../namespacefriendica-to-smarty-tpl.html#af6b2c793958aae2aadc294577431f749',1,'friendica-to-smarty-tpl.help()'],['../namespaceupdatetpl.html#ac9d11279fed403a329a719298feafc4f',1,'updatetpl.help()']]], ['help_2ephp',['help.php',['../help_8php.html',1,'']]], diff --git a/doc/html/search/all_69.js b/doc/html/search/all_69.js index 075a6789e..4601373ca 100644 --- a/doc/html/search/all_69.js +++ b/doc/html/search/all_69.js @@ -22,10 +22,6 @@ var searchData= ['insert_5fhook',['insert_hook',['../plugin_8php.html#aeaebe63dcf6fa2794f363ba2bc0b2c6b',1,'plugin.php']]], ['install',['install',['../classdba__driver.html#a4ccb27243e62a8ca30dd8e1b8cc67746',1,'dba_driver']]], ['install_5fplugin',['install_plugin',['../plugin_8php.html#a482131013272a1d5d5c1b1469c6c55d5',1,'plugin.php']]], - ['intro_2ephp',['intro.php',['../intro_8php.html',1,'']]], - ['intro_5faside',['intro_aside',['../intro_8php.html#abc3abf25da64f98f215126eb08c7936b',1,'intro.php']]], - ['intro_5fcontent',['intro_content',['../intro_8php.html#a3e2a523697633ddb4517b9266a515f5b',1,'intro.php']]], - ['intro_5fpost',['intro_post',['../intro_8php.html#af3681062183ccbdf065ae2647b07d6f1',1,'intro.php']]], ['invite_2ephp',['invite.php',['../invite_8php.html',1,'']]], ['invite_5fcontent',['invite_content',['../invite_8php.html#a244385b28cfd021d308715f01158bfd9',1,'invite.php']]], ['invite_5fpost',['invite_post',['../invite_8php.html#aeb0881c0f93c8e8552e5ed756ce6e5a5',1,'invite.php']]], diff --git a/doc/html/search/all_6c.js b/doc/html/search/all_6c.js index d286ba28a..c256f5457 100644 --- a/doc/html/search/all_6c.js +++ b/doc/html/search/all_6c.js @@ -4,10 +4,6 @@ var searchData= ['language_2ephp',['language.php',['../language_8php.html',1,'']]], ['language_5fdetect_5fmin_5fconfidence',['LANGUAGE_DETECT_MIN_CONFIDENCE',['../boot_8php.html#a68d1d5bc9c7ccb663dc671b48c66df11',1,'boot.php']]], ['language_5fdetect_5fmin_5flength',['LANGUAGE_DETECT_MIN_LENGTH',['../boot_8php.html#a17cf72338b040891781a4bcbdd9a8595',1,'boot.php']]], - ['lastpost_2ephp',['lastpost.php',['../lastpost_8php.html',1,'']]], - ['lastpost_5faside',['lastpost_aside',['../lastpost_8php.html#a6108289ef2a767495c7c85a24f364983',1,'lastpost.php']]], - ['lastpost_5fcontent',['lastpost_content',['../lastpost_8php.html#a82f14cce5d3cfe27f40bdbd2c679d493',1,'lastpost.php']]], - ['lastpost_5finit',['lastpost_init',['../lastpost_8php.html#ab4c6ebd25736af678e64d55ce508ce8c',1,'lastpost.php']]], ['layout_5fselect',['layout_select',['../text_8php.html#a3999a0b3e22e440f280ee791ce34d384',1,'text.php']]], ['layouts_2ephp',['layouts.php',['../layouts_8php.html',1,'']]], ['layouts_5fcontent',['layouts_content',['../layouts_8php.html#a6e0193759ad9eef76d3df2db24237b50',1,'layouts.php']]], @@ -20,6 +16,7 @@ var searchData= ['link_5fcompare',['link_compare',['../text_8php.html#a47c1e4a5f3f53027daacd8a9db24f285',1,'text.php']]], ['linkify',['linkify',['../text_8php.html#a11255c8c4e5245b6c24f97684826aa54',1,'text.php']]], ['list_5fpublic_5fsites',['list_public_sites',['../dirsearch_8php.html#a985d410a170549429857af6ff2673149',1,'dirsearch.php']]], + ['list_5fwidgets',['list_widgets',['../widgets_8php.html#a8e670642c7a957d2b5578dfb75aedc05',1,'widgets.php']]], ['load',['load',['../classphoto__driver.html#a19e1af2b6af4c63aa6230abe69f83712',1,'photo_driver\load()'],['../classphoto__gd.html#a33092b889875b68bfb1c97ff123012d9',1,'photo_gd\load()'],['../classphoto__imagick.html#a2c9168f110ccd6c264095d766615dfa8',1,'photo_imagick\load()']]], ['load_5fconfig',['load_config',['../include_2config_8php.html#a27559f388c9b9af81c94e48d6889d1d1',1,'config.php']]], ['load_5fcontact_5flinks',['load_contact_links',['../boot_8php.html#a719c7f3972d5f9268f37a41c76cd4ef6',1,'boot.php']]], diff --git a/doc/html/search/all_6e.js b/doc/html/search/all_6e.js index 9c8d326de..6dfd8d4fc 100644 --- a/doc/html/search/all_6e.js +++ b/doc/html/search/all_6e.js @@ -57,6 +57,8 @@ var searchData= ['normalise_5flink',['normalise_link',['../text_8php.html#a4bbb7d00c05cd20b4e043424f322388f',1,'text.php']]], ['normalise_5fopenid',['normalise_openid',['../text_8php.html#adba17ec946f4285285dc100f7860bf51',1,'text.php']]], ['notags',['notags',['../text_8php.html#a1af49756c8c71902a66c7e329c462beb',1,'text.php']]], + ['notes_2ephp',['notes.php',['../notes_8php.html',1,'']]], + ['notes_5finit',['notes_init',['../notes_8php.html#a4dbd7b1f906440746af48b484d66535a',1,'notes.php']]], ['notice',['notice',['../boot_8php.html#a9255af5ae9c887520091ea04763c1a88',1,'boot.php']]], ['notification',['notification',['../enotify_8php.html#a3e9a9355b243777c488d2a9883908dfc',1,'enotify.php']]], ['notifications_2ephp',['notifications.php',['../notifications_8php.html',1,'']]], @@ -64,8 +66,8 @@ var searchData= ['notifications_5fpost',['notifications_post',['../notifications_8php.html#a5baffec7b2e625c9f9cefbc097550d33',1,'notifications.php']]], ['notifier_2ephp',['notifier.php',['../notifier_8php.html',1,'']]], ['notifier_5frun',['notifier_run',['../notifier_8php.html#a568c502f626cff95e344c0748938b85d',1,'notifier.php']]], - ['notify_2ephp',['notify.php',['../mod_2notify_8php.html',1,'']]], ['notify_2ephp',['notify.php',['../include_2notify_8php.html',1,'']]], + ['notify_2ephp',['notify.php',['../mod_2notify_8php.html',1,'']]], ['notify_5fcomment',['NOTIFY_COMMENT',['../boot_8php.html#a20f0eed431d25870b624b8937a07a59f',1,'boot.php']]], ['notify_5fconfirm',['NOTIFY_CONFIRM',['../boot_8php.html#af8c0cb0744c9a6b5d6d3baafb1f1e71d',1,'boot.php']]], ['notify_5fcontent',['notify_content',['../mod_2notify_8php.html#acdf3851688ebd6d6a575eb84ef9febe3',1,'notify.php']]], diff --git a/doc/html/search/all_70.js b/doc/html/search/all_70.js index db470676e..36a75ee55 100644 --- a/doc/html/search/all_70.js +++ b/doc/html/search/all_70.js @@ -152,13 +152,11 @@ var searchData= ['process_5fprofile_5fdelivery',['process_profile_delivery',['../zot_8php.html#a9a57b40669351c9791126b925cb7ef3b',1,'zot.php']]], ['profile_2ephp',['profile.php',['../profile_8php.html',1,'']]], ['profile_5factivity',['profile_activity',['../activities_8php.html#a80134e807719b3c54aba971958d2e132',1,'activities.php']]], - ['profile_5faside',['profile_aside',['../profile_8php.html#a1a2482b775476f2f64ea5e8f4fc3fd1e',1,'profile.php']]], ['profile_5fcontent',['profile_content',['../profile_8php.html#a3775cf6eef6587e5143133356a7b76c0',1,'profile.php']]], ['profile_5fcreate_5fsidebar',['profile_create_sidebar',['../identity_8php.html#ad4a2c8caca8f6ae93633ebeca0ed6620',1,'identity.php']]], ['profile_5finit',['profile_init',['../profile_8php.html#ab5d0246be0552e2182a585c1206d22a5',1,'profile.php']]], ['profile_5fload',['profile_load',['../identity_8php.html#a4751b522ea913d0e7ed43e03d22e9e68',1,'identity.php']]], ['profile_5fphoto_2ephp',['profile_photo.php',['../profile__photo_8php.html',1,'']]], - ['profile_5fphoto_5faside',['profile_photo_aside',['../profile__photo_8php.html#ac9cd968a767e2ae1b88383b6cdd6dbe3',1,'profile_photo.php']]], ['profile_5fphoto_5finit',['profile_photo_init',['../profile__photo_8php.html#a140631c56438fbfacb61a1eb43067d02',1,'profile_photo.php']]], ['profile_5fphoto_5fpost',['profile_photo_post',['../profile__photo_8php.html#a4b80234074bd603221aa5364f330e479',1,'profile_photo.php']]], ['profile_5fselectors_2ephp',['profile_selectors.php',['../profile__selectors_8php.html',1,'']]], @@ -166,12 +164,10 @@ var searchData= ['profile_5ftabs',['profile_tabs',['../conversation_8php.html#a1dfcb5146e9d1eca4528bc580ad5d273',1,'conversation.php']]], ['profiler',['profiler',['../text_8php.html#a8b0a799341b1fc4cba2c3ede3e3fc9b6',1,'text.php']]], ['profiles_2ephp',['profiles.php',['../profiles_8php.html',1,'']]], - ['profiles_5faside',['profiles_aside',['../profiles_8php.html#a2a3ac90f51941ff78b85e9389304969c',1,'profiles.php']]], ['profiles_5fcontent',['profiles_content',['../profiles_8php.html#a46975783b8b8d70402d51487eb1f0b00',1,'profiles.php']]], ['profiles_5finit',['profiles_init',['../profiles_8php.html#a36f71405ad536228f8bb84a551b23f7e',1,'profiles.php']]], ['profiles_5fpost',['profiles_post',['../profiles_8php.html#ab0362c81b1d3b0b12a772b9fac446e04',1,'profiles.php']]], ['profperm_2ephp',['profperm.php',['../profperm_8php.html',1,'']]], - ['profperm_5faside',['profperm_aside',['../profperm_8php.html#a77fd398ae7c25142e1d9ad724ec347cc',1,'profperm.php']]], ['profperm_5fcontent',['profperm_content',['../profperm_8php.html#aef015787de2373d9fb3fe3f814fb5023',1,'profperm.php']]], ['profperm_5finit',['profperm_init',['../profperm_8php.html#a17fb64ec05edee1dc94d95438807d6c6',1,'profperm.php']]], ['protect_5fsprintf',['protect_sprintf',['../text_8php.html#a4e7698aca48982512594b274543c3b9b',1,'text.php']]], diff --git a/doc/html/search/all_73.js b/doc/html/search/all_73.js index d9a496489..62b0494ae 100644 --- a/doc/html/search/all_73.js +++ b/doc/html/search/all_73.js @@ -2,12 +2,12 @@ var searchData= [ ['sanitise_5facl',['sanitise_acl',['../text_8php.html#a9fbeae13c9abd6e27cb4d8d1817f969c',1,'text.php']]], ['save',['save',['../classphoto__driver.html#a5864fae7d8389372955a8e78cec527ac',1,'photo_driver']]], - ['saved_5fsearches',['saved_searches',['../mod_2network_8php.html#a36e03af6f2efe62ecaa247509365bfad',1,'network.php']]], ['saveimage',['saveImage',['../classphoto__driver.html#a22ecb8c696de65a5a10bd185be9d90c3',1,'photo_driver']]], ['scale_5fexternal_5fimages',['scale_external_images',['../include_2network_8php.html#ae8d9c41a11000fb8667039fc71b4f73f',1,'network.php']]], ['scaleimage',['scaleImage',['../classphoto__driver.html#af0f7ec48a31ae9b557b6e3f8bd5b4af0',1,'photo_driver']]], ['scaleimagesquare',['scaleImageSquare',['../classphoto__driver.html#a56634842b071b96502716e9843ea5361',1,'photo_driver']]], ['scaleimageup',['scaleImageUp',['../classphoto__driver.html#a1a63c4ae17e892a115ab9cf6efb960ce',1,'photo_driver']]], + ['script_5fpath',['script_path',['../plugin_8php.html#a0e8c2ea50bfdbc39e17ccccaea21ddc3',1,'plugin.php']]], ['search',['search',['../text_8php.html#a876e94892867019935b348b573299352',1,'text.php']]], ['search_2ephp',['search.php',['../search_8php.html',1,'']]], ['search_5fac_2ephp',['search_ac.php',['../search__ac_8php.html',1,'']]], @@ -16,6 +16,7 @@ var searchData= ['search_5finit',['search_init',['../search_8php.html#acf19fd30f07f495781ca0d7a0a08b435',1,'search.php']]], ['search_5fpost',['search_post',['../search_8php.html#a230ec9681ddee3b5b8b40c8d550f32f7',1,'search.php']]], ['search_5fsaved_5fsearches',['search_saved_searches',['../search_8php.html#aa911f7c7f0cdb0284e35d0ed610f19c6',1,'search.php']]], + ['searchbox',['searchbox',['../text_8php.html#aae91e4d2a2c6f7a9daccd2c186ae3447',1,'text.php']]], ['security_2ephp',['security.php',['../security_8php.html',1,'']]], ['select_5ftimezone',['select_timezone',['../datetime_8php.html#a633dadba426fa2f60b25fabdb19ebc1f',1,'datetime.php']]], ['send',['send',['../classenotify.html#afbc088860f534c6c05788b48cfc262c6',1,'enotify']]], @@ -99,8 +100,8 @@ var searchData= ['string_5fplural_5fselect_5fdefault',['string_plural_select_default',['../language_8php.html#a151e5b4689aef86a12642cbb7a00bfe0',1,'language.php']]], ['stringify_5farray_5felms',['stringify_array_elms',['../text_8php.html#a8796f6a9ca592ecdce7b3afc3462aa13',1,'text.php']]], ['stripdcode_5fbr_5fcb',['stripdcode_br_cb',['../bb2diaspora_8php.html#a180b0e3a7d702998be19e3c3b44b0e93',1,'bb2diaspora.php']]], - ['style_2ephp',['style.php',['../redbasic_2php_2style_8php.html',1,'']]], ['style_2ephp',['style.php',['../apw_2php_2style_8php.html',1,'']]], + ['style_2ephp',['style.php',['../redbasic_2php_2style_8php.html',1,'']]], ['subthread_2ephp',['subthread.php',['../subthread_8php.html',1,'']]], ['subthread_5fcontent',['subthread_content',['../subthread_8php.html#a50368f3d825b77996030528e7fbfa3d3',1,'subthread.php']]], ['suggest_2ephp',['suggest.php',['../suggest_8php.html',1,'']]], diff --git a/doc/html/search/all_76.js b/doc/html/search/all_76.js index 84866ad49..13376a70b 100644 --- a/doc/html/search/all_76.js +++ b/doc/html/search/all_76.js @@ -10,7 +10,6 @@ var searchData= ['view_2ephp',['view.php',['../view_8php.html',1,'']]], ['view_5finit',['view_init',['../view_8php.html#ac168f6c61a91ba2063f13b441c0ae96e',1,'view.php']]], ['viewconnections_2ephp',['viewconnections.php',['../viewconnections_8php.html',1,'']]], - ['viewconnections_5faside',['viewconnections_aside',['../viewconnections_8php.html#ae330cea4cddd091559659f8b469617b6',1,'viewconnections.php']]], ['viewconnections_5fcontent',['viewconnections_content',['../viewconnections_8php.html#ab6c4d983e97b3a8a879567ff76507776',1,'viewconnections.php']]], ['viewconnections_5finit',['viewconnections_init',['../viewconnections_8php.html#a00163d50b17568f7b0e48b1ca9ab7330',1,'viewconnections.php']]], ['viewsrc_2ephp',['viewsrc.php',['../viewsrc_8php.html',1,'']]], diff --git a/doc/html/search/all_77.js b/doc/html/search/all_77.js index 3223b0d56..662ebcb04 100644 --- a/doc/html/search/all_77.js +++ b/doc/html/search/all_77.js @@ -15,8 +15,19 @@ var searchData= ['what_5fnext',['what_next',['../setup_8php.html#aea1ebdda58ec938f4e7b31aa5c5f6b58',1,'setup.php']]], ['while',['while',['../docblox__errorchecker_8php.html#af4ca738a05beffe9c8c23e1f7aea3c2d',1,'docblox_errorchecker.php']]], ['widedarkness_2ephp',['widedarkness.php',['../widedarkness_8php.html',1,'']]], + ['widget_5faffinity',['widget_affinity',['../widgets_8php.html#add9b24d3304e529a7975e96122315554',1,'widgets.php']]], + ['widget_5farchive',['widget_archive',['../widgets_8php.html#a7b1e357b5a2027718470b77ec921fc65',1,'widgets.php']]], + ['widget_5fcategories',['widget_categories',['../widgets_8php.html#af37fdad3b2e861d860a4a8c4d8a76c0b',1,'widgets.php']]], + ['widget_5fcollections',['widget_collections',['../widgets_8php.html#aa189a07241246d97efbee29f1c6a6f7f',1,'widgets.php']]], + ['widget_5ffiler',['widget_filer',['../widgets_8php.html#a5ab3b64496e02cab56429978ad55f1c0',1,'widgets.php']]], + ['widget_5ffollow',['widget_follow',['../widgets_8php.html#ad1bf7aa69e8d100d95faba17c7bc91cd',1,'widgets.php']]], + ['widget_5ffullprofile',['widget_fullprofile',['../widgets_8php.html#a70442dfa079312d9d5e5ee01be51a165',1,'widgets.php']]], + ['widget_5fnotes',['widget_notes',['../widgets_8php.html#a45ea061dabe9a8372e4ca3b9e5714256',1,'widgets.php']]], ['widget_5fprofile',['widget_profile',['../widgets_8php.html#abd2e508a2a0b911c4a838e3cb7599923',1,'widgets.php']]], + ['widget_5fsavedsearch',['widget_savedsearch',['../widgets_8php.html#a94203eb9bcd63cbdecbbcb15163598d8',1,'widgets.php']]], + ['widget_5fsuggestions',['widget_suggestions',['../widgets_8php.html#a0d404276fedc59f5038cf5c085028326',1,'widgets.php']]], ['widget_5ftagcloud',['widget_tagcloud',['../widgets_8php.html#a6dbc227aac750774284ee39c45f0a200',1,'widgets.php']]], + ['widget_5ftagcloud_5fwall',['widget_tagcloud_wall',['../widgets_8php.html#ae4ced69d83dbdd9e6b51660d9eba8653',1,'widgets.php']]], ['widgets_2ephp',['widgets.php',['../widgets_8php.html',1,'']]], ['writepages_5fwidget',['writepages_widget',['../page__widgets_8php.html#a1a1e729da27f252cab6678288a17958f',1,'page_widgets.php']]] ]; diff --git a/doc/html/search/files_63.js b/doc/html/search/files_63.js index 531b158b2..3608cf3e6 100644 --- a/doc/html/search/files_63.js +++ b/doc/html/search/files_63.js @@ -25,7 +25,6 @@ var searchData= ['contactgroup_2ephp',['contactgroup.php',['../contactgroup_8php.html',1,'']]], ['conversation_2ephp',['conversation.php',['../conversation_8php.html',1,'']]], ['conversationobject_2ephp',['ConversationObject.php',['../ConversationObject_8php.html',1,'']]], - ['crepair_2ephp',['crepair.php',['../crepair_8php.html',1,'']]], ['cronhooks_2ephp',['cronhooks.php',['../cronhooks_8php.html',1,'']]], ['crypto_2ephp',['crypto.php',['../crypto_8php.html',1,'']]] ]; diff --git a/doc/html/search/files_68.js b/doc/html/search/files_68.js index 4377d15af..533921876 100644 --- a/doc/html/search/files_68.js +++ b/doc/html/search/files_68.js @@ -1,6 +1,5 @@ var searchData= [ - ['hcard_2ephp',['hcard.php',['../hcard_8php.html',1,'']]], ['help_2ephp',['help.php',['../help_8php.html',1,'']]], ['home_2ephp',['home.php',['../home_8php.html',1,'']]], ['hostxrd_2ephp',['hostxrd.php',['../hostxrd_8php.html',1,'']]], diff --git a/doc/html/search/files_69.js b/doc/html/search/files_69.js index 1ac9204d9..a08e0c1d4 100644 --- a/doc/html/search/files_69.js +++ b/doc/html/search/files_69.js @@ -2,7 +2,6 @@ var searchData= [ ['identity_2ephp',['identity.php',['../identity_8php.html',1,'']]], ['import_2ephp',['import.php',['../import_8php.html',1,'']]], - ['intro_2ephp',['intro.php',['../intro_8php.html',1,'']]], ['invite_2ephp',['invite.php',['../invite_8php.html',1,'']]], ['item_2ephp',['item.php',['../item_8php.html',1,'']]], ['itemobject_2ephp',['ItemObject.php',['../ItemObject_8php.html',1,'']]], diff --git a/doc/html/search/files_6c.js b/doc/html/search/files_6c.js index 663f102d3..ffcd040c5 100644 --- a/doc/html/search/files_6c.js +++ b/doc/html/search/files_6c.js @@ -1,7 +1,6 @@ var searchData= [ ['language_2ephp',['language.php',['../language_8php.html',1,'']]], - ['lastpost_2ephp',['lastpost.php',['../lastpost_8php.html',1,'']]], ['layouts_2ephp',['layouts.php',['../layouts_8php.html',1,'']]], ['like_2ephp',['like.php',['../like_8php.html',1,'']]], ['lockview_2ephp',['lockview.php',['../lockview_8php.html',1,'']]], diff --git a/doc/html/search/files_6e.js b/doc/html/search/files_6e.js index 0aa61f5c1..2722d4f7d 100644 --- a/doc/html/search/files_6e.js +++ b/doc/html/search/files_6e.js @@ -5,6 +5,7 @@ var searchData= ['network_2ephp',['network.php',['../mod_2network_8php.html',1,'']]], ['new_5fchannel_2ephp',['new_channel.php',['../new__channel_8php.html',1,'']]], ['none_2ephp',['none.php',['../none_8php.html',1,'']]], + ['notes_2ephp',['notes.php',['../notes_8php.html',1,'']]], ['notifications_2ephp',['notifications.php',['../notifications_8php.html',1,'']]], ['notifier_2ephp',['notifier.php',['../notifier_8php.html',1,'']]], ['notify_2ephp',['notify.php',['../include_2notify_8php.html',1,'']]], diff --git a/doc/html/search/functions_63.js b/doc/html/search/functions_63.js index b7e0d9f33..1a00e2f8a 100644 --- a/doc/html/search/functions_63.js +++ b/doc/html/search/functions_63.js @@ -10,7 +10,6 @@ var searchData= ['chanlink_5fhash',['chanlink_hash',['../text_8php.html#a55ab893be57feda59c2a7ba1e58ff2d0',1,'text.php']]], ['chanlink_5furl',['chanlink_url',['../text_8php.html#a2e8d6c402603be3a1256a16605e09c2a',1,'text.php']]], ['chanman_5fremove_5feverything_5ffrom_5fnetwork',['chanman_remove_everything_from_network',['../include_2chanman_8php.html#a21ba9a5c961e866ff27aee3ee67bf99b',1,'chanman.php']]], - ['channel_5faside',['channel_aside',['../channel_8php.html#aea8e189f2fbabfda779349dd94082e8e',1,'channel.php']]], ['channel_5fcontent',['channel_content',['../channel_8php.html#a9c6a6179e0e626398ebecc6151905ef1',1,'channel.php']]], ['channel_5finit',['channel_init',['../channel_8php.html#ac7c8c7845741baadf87fae6bc279f3dc',1,'channel.php']]], ['channel_5fremove',['channel_remove',['../Contact_8php.html#a186162051a5127069cc851d78740f205',1,'Contact.php']]], @@ -58,7 +57,6 @@ var searchData= ['comanche_5freplace_5fregion',['comanche_replace_region',['../comanche_8php.html#a028f004d5b8c23d6367816d899e17cfe',1,'comanche.php']]], ['comanche_5fwebpage',['comanche_webpage',['../comanche_8php.html#ae9fe1ce574db3dd0931eada80234f82a',1,'comanche.php']]], ['comanche_5fwidget',['comanche_widget',['../comanche_8php.html#a6b0191c1a63db1696a2eb139d90d9e7f',1,'comanche.php']]], - ['common_5faside',['common_aside',['../common_8php.html#a3b12ec67b3d3edcf595c8d195da5d14a',1,'common.php']]], ['common_5fcontent',['common_content',['../common_8php.html#ab63408f39abef7a6915186e8dabc5a96',1,'common.php']]], ['common_5ffriends',['common_friends',['../socgraph_8php.html#a7d34cd58025bcd9e575282f44db75918',1,'socgraph.php']]], ['common_5ffriends_5fvisitor_5fwidget',['common_friends_visitor_widget',['../contact__widgets_8php.html#a552f8544528cec0c995cea7287ea9d65',1,'contact_widgets.php']]], @@ -102,9 +100,6 @@ var searchData= ['create_5fidentity',['create_identity',['../identity_8php.html#a345f4c943d84de502ec6e72d2c813945',1,'identity.php']]], ['createdirectory',['createDirectory',['../classRedDirectory.html#a986936910f0216887a25e28916c166c7',1,'RedDirectory']]], ['createfile',['createFile',['../classRedDirectory.html#a2d12d99d38a6a75fc9a830b2f7fc0bf0',1,'RedDirectory']]], - ['crepair_5fcontent',['crepair_content',['../crepair_8php.html#a29464c01838e209c8059cfcd2d195caa',1,'crepair.php']]], - ['crepair_5finit',['crepair_init',['../crepair_8php.html#ab089978e50df156bbfabf9f8f5ccd198',1,'crepair.php']]], - ['crepair_5fpost',['crepair_post',['../crepair_8php.html#acc4493e1ffd1462a605dd9b870034513',1,'crepair.php']]], ['cronhooks_5frun',['cronhooks_run',['../cronhooks_8php.html#a4c4c1bbec4ecc9a0efa00dd6afd2c0ca',1,'cronhooks.php']]], ['cropimage',['cropImage',['../classphoto__driver.html#a2e6e61f1e356a90bc978f4404a77137e',1,'photo_driver\cropImage()'],['../classphoto__gd.html#ab2232d775c8bacf66773a03308105f0c',1,'photo_gd\cropImage()'],['../classphoto__imagick.html#a2f33a03a89497a2b2768e29736d4a8a4',1,'photo_imagick\cropImage()']]], ['crypto_5fencapsulate',['crypto_encapsulate',['../crypto_8php.html#a32fc08d57a5694f94d8543ecbb03323c',1,'crypto.php']]], diff --git a/doc/html/search/functions_66.js b/doc/html/search/functions_66.js index a97f0bc6e..5b30db5d9 100644 --- a/doc/html/search/functions_66.js +++ b/doc/html/search/functions_66.js @@ -30,7 +30,6 @@ var searchData= ['flip',['flip',['../classphoto__driver.html#a2b2a99021fc63ed6465d703ddddcb832',1,'photo_driver\flip()'],['../classphoto__gd.html#a44cedef376044018702d9355ddc813ce',1,'photo_gd\flip()'],['../classphoto__imagick.html#aff6bcdbab18593a3fc5a480db8509393',1,'photo_imagick\flip()']]], ['follow_5fcontent',['follow_content',['../mod_2follow_8php.html#a4c540ea4e9f5c581c1a53516ac585592',1,'follow.php']]], ['follow_5finit',['follow_init',['../mod_2follow_8php.html#a171f5b19f50d7738adc3b2e96ec6018a',1,'follow.php']]], - ['follow_5fwidget',['follow_widget',['../contact__widgets_8php.html#af24e693532a045954caab515942cfc6f',1,'contact_widgets.php']]], ['format_5fcategories',['format_categories',['../text_8php.html#a3054189cff173977f4216c9a3dd29e1b',1,'text.php']]], ['format_5fcss_5fif_5fexists',['format_css_if_exists',['../plugin_8php.html#a9039e15aae27676af7777dcbee5a11d6',1,'plugin.php']]], ['format_5fevent_5fbbcode',['format_event_bbcode',['../event_8php.html#abb74206cf42d694307c3d7abb7af9869',1,'event.php']]], diff --git a/doc/html/search/functions_67.js b/doc/html/search/functions_67.js index b3e96032c..ed30eaa80 100644 --- a/doc/html/search/functions_67.js +++ b/doc/html/search/functions_67.js @@ -108,7 +108,7 @@ var searchData= ['group_5frmv',['group_rmv',['../include_2group_8php.html#a4118f498bbd1530c1d0136d016d197a5',1,'group.php']]], ['group_5frmv_5fmember',['group_rmv_member',['../include_2group_8php.html#a540e3ef36f47d47532646be4241f6518',1,'group.php']]], ['group_5fselect',['group_select',['../acl__selectors_8php.html#aa1e3bc344ca2b29f97eb9860216d21a0',1,'acl_selectors.php']]], - ['group_5fside',['group_side',['../include_2group_8php.html#a1042d74055bafe54a6a30103d87a7f17',1,'group.php']]], + ['group_5fside',['group_side',['../include_2group_8php.html#abdfce3fd8dcf0c46543d190d0530b4a2',1,'group.php']]], ['groups_5fcontaining',['groups_containing',['../include_2group_8php.html#afb802ae2ce73aae4bc36d157f7b6a92f',1,'group.php']]], ['guess_5fimage_5ftype',['guess_image_type',['../photo__driver_8php.html#a243cee492ce443afb6a7d77d54b6c4aa',1,'photo_driver.php']]] ]; diff --git a/doc/html/search/functions_68.js b/doc/html/search/functions_68.js index 2fcb45ed0..b923ff905 100644 --- a/doc/html/search/functions_68.js +++ b/doc/html/search/functions_68.js @@ -2,13 +2,13 @@ var searchData= [ ['handle_5ftag',['handle_tag',['../item_8php.html#abd0e603a6696051af16476eb968d52e7',1,'item.php']]], ['has_5fpermissions',['has_permissions',['../items_8php.html#a77051724d1784074ff187e73a4db93fe',1,'items.php']]], - ['hcard_5faside',['hcard_aside',['../hcard_8php.html#a956c7cae2009652a37900306e5b7b73d',1,'hcard.php']]], - ['hcard_5finit',['hcard_init',['../hcard_8php.html#ac34f26b0e6a37eef44fa49bea135136d',1,'hcard.php']]], ['head_5fadd_5fcss',['head_add_css',['../plugin_8php.html#a23c4fccf1eb5fcd63b24783ba1f05f7a',1,'plugin.php']]], ['head_5fadd_5fjs',['head_add_js',['../plugin_8php.html#a516591850f4fd49fd1425cfa54089db8',1,'plugin.php']]], ['head_5fget_5fcss',['head_get_css',['../plugin_8php.html#af92789f559b89a380e49d303218aeeca',1,'plugin.php']]], ['head_5fget_5ficon',['head_get_icon',['../classApp.html#af17df107f2216ddf5ad2a7e0f2ba2166',1,'App\head_get_icon()'],['../boot_8php.html#a24a7a70afedd5d85fe0eadc85afa9f77',1,'head_get_icon(): boot.php']]], ['head_5fget_5fjs',['head_get_js',['../plugin_8php.html#a65ab52cb1a7030d5190e247211bef2a1',1,'plugin.php']]], + ['head_5fremove_5fcss',['head_remove_css',['../plugin_8php.html#a9ab6caae31935f6cf781ce7872db7cdf',1,'plugin.php']]], + ['head_5fremove_5fjs',['head_remove_js',['../plugin_8php.html#a4a0ae7b881e7c8af99a69e3b03f898b4',1,'plugin.php']]], ['head_5fset_5ficon',['head_set_icon',['../classApp.html#a8863703a0305eaa45eb970dbd2046291',1,'App\head_set_icon()'],['../boot_8php.html#a0e4701c9742c3ef88f02ac450a042a84',1,'head_set_icon(): boot.php']]], ['help',['help',['../namespacefriendica-to-smarty-tpl.html#af6b2c793958aae2aadc294577431f749',1,'friendica-to-smarty-tpl.help()'],['../namespaceupdatetpl.html#ac9d11279fed403a329a719298feafc4f',1,'updatetpl.help()']]], ['help_5fcontent',['help_content',['../help_8php.html#af055e15f600ffa6fbca9386fdf715224',1,'help.php']]], diff --git a/doc/html/search/functions_69.js b/doc/html/search/functions_69.js index a1e34fb82..97aeb2799 100644 --- a/doc/html/search/functions_69.js +++ b/doc/html/search/functions_69.js @@ -19,9 +19,6 @@ var searchData= ['insert_5fhook',['insert_hook',['../plugin_8php.html#aeaebe63dcf6fa2794f363ba2bc0b2c6b',1,'plugin.php']]], ['install',['install',['../classdba__driver.html#a4ccb27243e62a8ca30dd8e1b8cc67746',1,'dba_driver']]], ['install_5fplugin',['install_plugin',['../plugin_8php.html#a482131013272a1d5d5c1b1469c6c55d5',1,'plugin.php']]], - ['intro_5faside',['intro_aside',['../intro_8php.html#abc3abf25da64f98f215126eb08c7936b',1,'intro.php']]], - ['intro_5fcontent',['intro_content',['../intro_8php.html#a3e2a523697633ddb4517b9266a515f5b',1,'intro.php']]], - ['intro_5fpost',['intro_post',['../intro_8php.html#af3681062183ccbdf065ae2647b07d6f1',1,'intro.php']]], ['invite_5fcontent',['invite_content',['../invite_8php.html#a244385b28cfd021d308715f01158bfd9',1,'invite.php']]], ['invite_5fpost',['invite_post',['../invite_8php.html#aeb0881c0f93c8e8552e5ed756ce6e5a5',1,'invite.php']]], ['is_5fa_5fdate_5farg',['is_a_date_arg',['../text_8php.html#a1557112a774ec00fa06ed6b6f6495506',1,'text.php']]], diff --git a/doc/html/search/functions_6c.js b/doc/html/search/functions_6c.js index 7df51ec1b..b88f51b9d 100644 --- a/doc/html/search/functions_6c.js +++ b/doc/html/search/functions_6c.js @@ -1,9 +1,6 @@ var searchData= [ ['lang_5fselector',['lang_selector',['../text_8php.html#a71f6952243d3fe1c5a8154f78027e29c',1,'text.php']]], - ['lastpost_5faside',['lastpost_aside',['../lastpost_8php.html#a6108289ef2a767495c7c85a24f364983',1,'lastpost.php']]], - ['lastpost_5fcontent',['lastpost_content',['../lastpost_8php.html#a82f14cce5d3cfe27f40bdbd2c679d493',1,'lastpost.php']]], - ['lastpost_5finit',['lastpost_init',['../lastpost_8php.html#ab4c6ebd25736af678e64d55ce508ce8c',1,'lastpost.php']]], ['layout_5fselect',['layout_select',['../text_8php.html#a3999a0b3e22e440f280ee791ce34d384',1,'text.php']]], ['layouts_5fcontent',['layouts_content',['../layouts_8php.html#a6e0193759ad9eef76d3df2db24237b50',1,'layouts.php']]], ['legal_5fwebbie',['legal_webbie',['../text_8php.html#a2690ad67bb6fb97ef69de3e8d23f2728',1,'text.php']]], @@ -13,6 +10,7 @@ var searchData= ['link_5fcompare',['link_compare',['../text_8php.html#a47c1e4a5f3f53027daacd8a9db24f285',1,'text.php']]], ['linkify',['linkify',['../text_8php.html#a11255c8c4e5245b6c24f97684826aa54',1,'text.php']]], ['list_5fpublic_5fsites',['list_public_sites',['../dirsearch_8php.html#a985d410a170549429857af6ff2673149',1,'dirsearch.php']]], + ['list_5fwidgets',['list_widgets',['../widgets_8php.html#a8e670642c7a957d2b5578dfb75aedc05',1,'widgets.php']]], ['load',['load',['../classphoto__driver.html#a19e1af2b6af4c63aa6230abe69f83712',1,'photo_driver\load()'],['../classphoto__gd.html#a33092b889875b68bfb1c97ff123012d9',1,'photo_gd\load()'],['../classphoto__imagick.html#a2c9168f110ccd6c264095d766615dfa8',1,'photo_imagick\load()']]], ['load_5fconfig',['load_config',['../include_2config_8php.html#a27559f388c9b9af81c94e48d6889d1d1',1,'config.php']]], ['load_5fcontact_5flinks',['load_contact_links',['../boot_8php.html#a719c7f3972d5f9268f37a41c76cd4ef6',1,'boot.php']]], diff --git a/doc/html/search/functions_6e.js b/doc/html/search/functions_6e.js index 075156110..c51d3673c 100644 --- a/doc/html/search/functions_6e.js +++ b/doc/html/search/functions_6e.js @@ -21,6 +21,7 @@ var searchData= ['normalise_5flink',['normalise_link',['../text_8php.html#a4bbb7d00c05cd20b4e043424f322388f',1,'text.php']]], ['normalise_5fopenid',['normalise_openid',['../text_8php.html#adba17ec946f4285285dc100f7860bf51',1,'text.php']]], ['notags',['notags',['../text_8php.html#a1af49756c8c71902a66c7e329c462beb',1,'text.php']]], + ['notes_5finit',['notes_init',['../notes_8php.html#a4dbd7b1f906440746af48b484d66535a',1,'notes.php']]], ['notice',['notice',['../boot_8php.html#a9255af5ae9c887520091ea04763c1a88',1,'boot.php']]], ['notification',['notification',['../enotify_8php.html#a3e9a9355b243777c488d2a9883908dfc',1,'enotify.php']]], ['notifications_5fcontent',['notifications_content',['../notifications_8php.html#aadd0b5525bd8c283a5d8a37982bbfe62',1,'notifications.php']]], diff --git a/doc/html/search/functions_70.js b/doc/html/search/functions_70.js index 00f3caee0..b22e3e78d 100644 --- a/doc/html/search/functions_70.js +++ b/doc/html/search/functions_70.js @@ -78,22 +78,18 @@ var searchData= ['process_5fmail_5fdelivery',['process_mail_delivery',['../zot_8php.html#aa6ae96db8cbbdbb10e6876d206bbf7cc',1,'zot.php']]], ['process_5fprofile_5fdelivery',['process_profile_delivery',['../zot_8php.html#a9a57b40669351c9791126b925cb7ef3b',1,'zot.php']]], ['profile_5factivity',['profile_activity',['../activities_8php.html#a80134e807719b3c54aba971958d2e132',1,'activities.php']]], - ['profile_5faside',['profile_aside',['../profile_8php.html#a1a2482b775476f2f64ea5e8f4fc3fd1e',1,'profile.php']]], ['profile_5fcontent',['profile_content',['../profile_8php.html#a3775cf6eef6587e5143133356a7b76c0',1,'profile.php']]], ['profile_5fcreate_5fsidebar',['profile_create_sidebar',['../identity_8php.html#ad4a2c8caca8f6ae93633ebeca0ed6620',1,'identity.php']]], ['profile_5finit',['profile_init',['../profile_8php.html#ab5d0246be0552e2182a585c1206d22a5',1,'profile.php']]], ['profile_5fload',['profile_load',['../identity_8php.html#a4751b522ea913d0e7ed43e03d22e9e68',1,'identity.php']]], - ['profile_5fphoto_5faside',['profile_photo_aside',['../profile__photo_8php.html#ac9cd968a767e2ae1b88383b6cdd6dbe3',1,'profile_photo.php']]], ['profile_5fphoto_5finit',['profile_photo_init',['../profile__photo_8php.html#a140631c56438fbfacb61a1eb43067d02',1,'profile_photo.php']]], ['profile_5fphoto_5fpost',['profile_photo_post',['../profile__photo_8php.html#a4b80234074bd603221aa5364f330e479',1,'profile_photo.php']]], ['profile_5fsidebar',['profile_sidebar',['../identity_8php.html#a432259b2cf5b6f59be53e71db9f2c7dc',1,'identity.php']]], ['profile_5ftabs',['profile_tabs',['../conversation_8php.html#a1dfcb5146e9d1eca4528bc580ad5d273',1,'conversation.php']]], ['profiler',['profiler',['../text_8php.html#a8b0a799341b1fc4cba2c3ede3e3fc9b6',1,'text.php']]], - ['profiles_5faside',['profiles_aside',['../profiles_8php.html#a2a3ac90f51941ff78b85e9389304969c',1,'profiles.php']]], ['profiles_5fcontent',['profiles_content',['../profiles_8php.html#a46975783b8b8d70402d51487eb1f0b00',1,'profiles.php']]], ['profiles_5finit',['profiles_init',['../profiles_8php.html#a36f71405ad536228f8bb84a551b23f7e',1,'profiles.php']]], ['profiles_5fpost',['profiles_post',['../profiles_8php.html#ab0362c81b1d3b0b12a772b9fac446e04',1,'profiles.php']]], - ['profperm_5faside',['profperm_aside',['../profperm_8php.html#a77fd398ae7c25142e1d9ad724ec347cc',1,'profperm.php']]], ['profperm_5fcontent',['profperm_content',['../profperm_8php.html#aef015787de2373d9fb3fe3f814fb5023',1,'profperm.php']]], ['profperm_5finit',['profperm_init',['../profperm_8php.html#a17fb64ec05edee1dc94d95438807d6c6',1,'profperm.php']]], ['protect_5fsprintf',['protect_sprintf',['../text_8php.html#a4e7698aca48982512594b274543c3b9b',1,'text.php']]], diff --git a/doc/html/search/functions_73.js b/doc/html/search/functions_73.js index b62e60888..4e80eec4f 100644 --- a/doc/html/search/functions_73.js +++ b/doc/html/search/functions_73.js @@ -2,18 +2,19 @@ var searchData= [ ['sanitise_5facl',['sanitise_acl',['../text_8php.html#a9fbeae13c9abd6e27cb4d8d1817f969c',1,'text.php']]], ['save',['save',['../classphoto__driver.html#a5864fae7d8389372955a8e78cec527ac',1,'photo_driver']]], - ['saved_5fsearches',['saved_searches',['../mod_2network_8php.html#a36e03af6f2efe62ecaa247509365bfad',1,'network.php']]], ['saveimage',['saveImage',['../classphoto__driver.html#a22ecb8c696de65a5a10bd185be9d90c3',1,'photo_driver']]], ['scale_5fexternal_5fimages',['scale_external_images',['../include_2network_8php.html#ae8d9c41a11000fb8667039fc71b4f73f',1,'network.php']]], ['scaleimage',['scaleImage',['../classphoto__driver.html#af0f7ec48a31ae9b557b6e3f8bd5b4af0',1,'photo_driver']]], ['scaleimagesquare',['scaleImageSquare',['../classphoto__driver.html#a56634842b071b96502716e9843ea5361',1,'photo_driver']]], ['scaleimageup',['scaleImageUp',['../classphoto__driver.html#a1a63c4ae17e892a115ab9cf6efb960ce',1,'photo_driver']]], + ['script_5fpath',['script_path',['../plugin_8php.html#a0e8c2ea50bfdbc39e17ccccaea21ddc3',1,'plugin.php']]], ['search',['search',['../text_8php.html#a876e94892867019935b348b573299352',1,'text.php']]], ['search_5fac_5finit',['search_ac_init',['../search__ac_8php.html#a14f90c83a3f2be095e9e2992a8d66138',1,'search_ac.php']]], ['search_5fcontent',['search_content',['../search_8php.html#ab2568591359edde5b483a6cd9a24b2cc',1,'search.php']]], ['search_5finit',['search_init',['../search_8php.html#acf19fd30f07f495781ca0d7a0a08b435',1,'search.php']]], ['search_5fpost',['search_post',['../search_8php.html#a230ec9681ddee3b5b8b40c8d550f32f7',1,'search.php']]], ['search_5fsaved_5fsearches',['search_saved_searches',['../search_8php.html#aa911f7c7f0cdb0284e35d0ed610f19c6',1,'search.php']]], + ['searchbox',['searchbox',['../text_8php.html#aae91e4d2a2c6f7a9daccd2c186ae3447',1,'text.php']]], ['select_5ftimezone',['select_timezone',['../datetime_8php.html#a633dadba426fa2f60b25fabdb19ebc1f',1,'datetime.php']]], ['send',['send',['../classenotify.html#afbc088860f534c6c05788b48cfc262c6',1,'enotify']]], ['send_5fmessage',['send_message',['../include_2message_8php.html#a751ffd6635022b2190f56154ee745752',1,'message.php']]], diff --git a/doc/html/search/functions_76.js b/doc/html/search/functions_76.js index 562e0412b..7e2c42234 100644 --- a/doc/html/search/functions_76.js +++ b/doc/html/search/functions_76.js @@ -8,7 +8,6 @@ var searchData= ['var_5freplace',['var_replace',['../classTemplate.html#abbc484016ddf5d818f55b823cae6feb0',1,'Template']]], ['vcard_5ffrom_5fxchan',['vcard_from_xchan',['../Contact_8php.html#a6348a532c9d26cd1c9afbc9aa6aa8960',1,'Contact.php']]], ['view_5finit',['view_init',['../view_8php.html#ac168f6c61a91ba2063f13b441c0ae96e',1,'view.php']]], - ['viewconnections_5faside',['viewconnections_aside',['../viewconnections_8php.html#ae330cea4cddd091559659f8b469617b6',1,'viewconnections.php']]], ['viewconnections_5fcontent',['viewconnections_content',['../viewconnections_8php.html#ab6c4d983e97b3a8a879567ff76507776',1,'viewconnections.php']]], ['viewconnections_5finit',['viewconnections_init',['../viewconnections_8php.html#a00163d50b17568f7b0e48b1ca9ab7330',1,'viewconnections.php']]], ['viewsrc_5fcontent',['viewsrc_content',['../viewsrc_8php.html#a6eff3d0c1d7d14b335c4edb785cd60a4',1,'viewsrc.php']]], diff --git a/doc/html/search/functions_77.js b/doc/html/search/functions_77.js index 85ab44b93..e03b445eb 100644 --- a/doc/html/search/functions_77.js +++ b/doc/html/search/functions_77.js @@ -8,7 +8,18 @@ var searchData= ['webpages_5fcontent',['webpages_content',['../webpages_8php.html#af3b7397d4abc153e3d2147740ee1a41d',1,'webpages.php']]], ['wfinger_5finit',['wfinger_init',['../wfinger_8php.html#ae21e50c8d0a5f3c9be9f43a4e519acd3',1,'wfinger.php']]], ['what_5fnext',['what_next',['../setup_8php.html#aea1ebdda58ec938f4e7b31aa5c5f6b58',1,'setup.php']]], + ['widget_5faffinity',['widget_affinity',['../widgets_8php.html#add9b24d3304e529a7975e96122315554',1,'widgets.php']]], + ['widget_5farchive',['widget_archive',['../widgets_8php.html#a7b1e357b5a2027718470b77ec921fc65',1,'widgets.php']]], + ['widget_5fcategories',['widget_categories',['../widgets_8php.html#af37fdad3b2e861d860a4a8c4d8a76c0b',1,'widgets.php']]], + ['widget_5fcollections',['widget_collections',['../widgets_8php.html#aa189a07241246d97efbee29f1c6a6f7f',1,'widgets.php']]], + ['widget_5ffiler',['widget_filer',['../widgets_8php.html#a5ab3b64496e02cab56429978ad55f1c0',1,'widgets.php']]], + ['widget_5ffollow',['widget_follow',['../widgets_8php.html#ad1bf7aa69e8d100d95faba17c7bc91cd',1,'widgets.php']]], + ['widget_5ffullprofile',['widget_fullprofile',['../widgets_8php.html#a70442dfa079312d9d5e5ee01be51a165',1,'widgets.php']]], + ['widget_5fnotes',['widget_notes',['../widgets_8php.html#a45ea061dabe9a8372e4ca3b9e5714256',1,'widgets.php']]], ['widget_5fprofile',['widget_profile',['../widgets_8php.html#abd2e508a2a0b911c4a838e3cb7599923',1,'widgets.php']]], + ['widget_5fsavedsearch',['widget_savedsearch',['../widgets_8php.html#a94203eb9bcd63cbdecbbcb15163598d8',1,'widgets.php']]], + ['widget_5fsuggestions',['widget_suggestions',['../widgets_8php.html#a0d404276fedc59f5038cf5c085028326',1,'widgets.php']]], ['widget_5ftagcloud',['widget_tagcloud',['../widgets_8php.html#a6dbc227aac750774284ee39c45f0a200',1,'widgets.php']]], + ['widget_5ftagcloud_5fwall',['widget_tagcloud_wall',['../widgets_8php.html#ae4ced69d83dbdd9e6b51660d9eba8653',1,'widgets.php']]], ['writepages_5fwidget',['writepages_widget',['../page__widgets_8php.html#a1a1e729da27f252cab6678288a17958f',1,'page_widgets.php']]] ]; diff --git a/doc/html/security_8php.html b/doc/html/security_8php.html index b1263fa59..00bbb448c 100644 --- a/doc/html/security_8php.html +++ b/doc/html/security_8php.html @@ -361,7 +361,7 @@ Functions
  • -

    Referenced by suggest_content().

    +

    Referenced by suggest_content(), and widget_suggestions().

    diff --git a/doc/html/taxonomy_8php.html b/doc/html/taxonomy_8php.html index bb854072f..7a01392cd 100644 --- a/doc/html/taxonomy_8php.html +++ b/doc/html/taxonomy_8php.html @@ -250,8 +250,6 @@ Functions
  • -

    Referenced by lastpost_content().

    -
    @@ -493,7 +491,7 @@ Functions
    -

    Referenced by channel_aside(), and lastpost_aside().

    +

    Referenced by widget_tagcloud_wall().

    diff --git a/doc/html/text_8php.html b/doc/html/text_8php.html index b4472a962..9ee0d4d8a 100644 --- a/doc/html/text_8php.html +++ b/doc/html/text_8php.html @@ -175,6 +175,8 @@ Functions
     
     search ($s, $id='search-box', $url='/search', $save=false)
     
     searchbox ($s, $id='search-box', $url='/search', $save=false)
     
     valid_email ($x)
     
     linkify ($s)
    @@ -475,7 +477,7 @@ Variables
    @@ -545,7 +547,7 @@ Variables
    @@ -684,7 +686,7 @@ Variables
  • @@ -1144,7 +1146,7 @@ Variables
    @@ -1285,7 +1287,7 @@ Variables
    -

    Referenced by account_remove(), account_verify_password(), Item\add_child(), Conversation\add_thread(), advanced_profile(), aes_encapsulate(), allowed_public_recips(), api_call(), api_channel_stream(), api_export_basic(), api_favorites(), api_get_user(), api_login(), api_oauth_request_token(), api_statuses_destroy(), api_statuses_mediap(), api_statuses_repeat(), api_statuses_show(), api_statuses_update(), api_statuses_user_timeline(), attach_mkdir(), authenticate_success(), avatar_img(), base64url_decode(), blog_install(), blog_uninstall(), build_sync_packet(), chanman_remove_everything_from_network(), channel_remove(), chanview_content(), check_config(), check_form_security_token_ForbiddenOnErr(), check_form_security_token_redirectOnErr(), consume_feed(), conversation(), create_account(), create_identity(), crepair_post(), cronhooks_run(), datetime_convert(), delete_imported_item(), deliver_run(), detect_language(), directory_content(), directory_run(), email_send(), encode_item(), expire_run(), feed_init(), fetch_lrdd_template(), filer_content(), filerm_content(), fix_private_photos(), fix_system_urls(), get_atom_elements(), get_item_elements(), Conversation\get_template_data(), group_content(), guess_image_type(), head_set_icon(), http_status_exit(), import_author_zot(), import_channel_photo(), import_directory_profile(), import_post(), import_profile_photo(), import_site(), import_xchan(), install_plugin(), item_expire(), item_post(), item_store(), item_store_update(), like_content(), limit_body_size(), load_plugin(), localize_item(), FKOAuth1\loginUser(), FKOAuthDataStore\lookup_consumer(), FKOAuthDataStore\lookup_token(), magic_init(), mail_store(), menu_edit(), message_post(), mini_group_select(), mood_init(), FKOAuthDataStore\new_access_token(), new_contact(), new_keypair(), FKOAuthDataStore\new_request_token(), notification(), notifier_run(), onedirsync_run(), onepoll_run(), parse_url_content(), parse_xml_string(), photo_init(), photo_upload(), photos_post(), ping_init(), poco_init(), poco_load(), poke_init(), poller_run(), post_activity_item(), post_init(), post_post(), private_messages_list(), process_channel_sync_delivery(), process_delivery(), process_mail_delivery(), process_profile_delivery(), profile_load(), public_recips(), dba_mysql\q(), dba_mysqli\q(), q(), queue_run(), redir_init(), register_content(), reload_plugins(), Item\remove_child(), remove_community_tag(), remove_queue_item(), scale_external_images(), search_ac_init(), enotify\send(), send_reg_approval_email(), Conversation\set_mode(), stream_perms_api_uids(), stream_perms_xchans(), subthread_content(), sync_directories(), syncdirs(), tag_deliver(), tagger_content(), tgroup_check(), uninstall_plugin(), unload_plugin(), update_directory_entry(), update_imported_item(), update_queue_time(), RedBasicAuth\validateUserPass(), webfinger(), webfinger_dfrn(), xml2array(), xml_status(), z_fetch_url(), z_post_url(), zfinger_init(), zid_init(), zot_build_packet(), zot_feed(), zot_fetch(), zot_finger(), zot_gethub(), zot_import(), zot_process_response(), zot_refresh(), zot_register_hub(), and zotfeed_init().

    +

    Referenced by account_remove(), account_verify_password(), Item\add_child(), Conversation\add_thread(), advanced_profile(), aes_encapsulate(), allowed_public_recips(), api_call(), api_channel_stream(), api_export_basic(), api_favorites(), api_get_user(), api_login(), api_oauth_request_token(), api_statuses_destroy(), api_statuses_mediap(), api_statuses_repeat(), api_statuses_show(), api_statuses_update(), api_statuses_user_timeline(), attach_mkdir(), authenticate_success(), avatar_img(), base64url_decode(), blog_install(), blog_uninstall(), build_sync_packet(), chanman_remove_everything_from_network(), channel_remove(), chanview_content(), check_config(), check_form_security_token_ForbiddenOnErr(), check_form_security_token_redirectOnErr(), consume_feed(), conversation(), create_account(), create_identity(), cronhooks_run(), datetime_convert(), delete_imported_item(), deliver_run(), detect_language(), directory_content(), directory_run(), email_send(), encode_item(), expire_run(), feed_init(), fetch_lrdd_template(), filer_content(), filerm_content(), fix_private_photos(), fix_system_urls(), get_atom_elements(), get_item_elements(), Conversation\get_template_data(), group_content(), guess_image_type(), head_set_icon(), http_status_exit(), import_author_zot(), import_channel_photo(), import_directory_profile(), import_post(), import_profile_photo(), import_site(), import_xchan(), install_plugin(), item_expire(), item_post(), item_store(), item_store_update(), like_content(), limit_body_size(), load_plugin(), localize_item(), FKOAuth1\loginUser(), FKOAuthDataStore\lookup_consumer(), FKOAuthDataStore\lookup_token(), magic_init(), mail_store(), menu_edit(), message_post(), mini_group_select(), mood_init(), FKOAuthDataStore\new_access_token(), new_contact(), new_keypair(), FKOAuthDataStore\new_request_token(), notes_init(), notification(), notifier_run(), onedirsync_run(), onepoll_run(), parse_url_content(), parse_xml_string(), photo_init(), photo_upload(), photos_post(), ping_init(), poco_init(), poco_load(), poke_init(), poller_run(), post_activity_item(), post_init(), post_post(), private_messages_list(), process_channel_sync_delivery(), process_delivery(), process_mail_delivery(), process_profile_delivery(), profile_load(), public_recips(), dba_mysql\q(), dba_mysqli\q(), q(), queue_run(), redir_init(), register_content(), reload_plugins(), Item\remove_child(), remove_community_tag(), remove_queue_item(), scale_external_images(), search_ac_init(), enotify\send(), send_reg_approval_email(), Conversation\set_mode(), stream_perms_api_uids(), stream_perms_xchans(), subthread_content(), sync_directories(), syncdirs(), tag_deliver(), tagger_content(), tgroup_check(), uninstall_plugin(), unload_plugin(), update_directory_entry(), update_imported_item(), update_queue_time(), RedBasicAuth\validateUserPass(), webfinger(), webfinger_dfrn(), xml2array(), xml_status(), z_fetch_url(), z_post_url(), zfinger_init(), zid_init(), zot_build_packet(), zot_feed(), zot_fetch(), zot_finger(), zot_gethub(), zot_import(), zot_process_response(), zot_refresh(), zot_register_hub(), and zotfeed_init().

    @@ -1484,7 +1486,7 @@ Variables
    @@ -1502,7 +1504,7 @@ Variables
    @@ -1643,7 +1645,7 @@ Variables
    @@ -1661,7 +1663,7 @@ Variables
    @@ -1770,7 +1772,7 @@ Variables
    -

    Referenced by saved_searches(), and search_content().

    +

    Referenced by search_content().

    + +
    + + +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    searchbox ( $s,
     $id = 'search-box',
     $url = '/search',
     $save = false 
    )
    +
    + +

    Referenced by widget_savedsearch().

    @@ -1954,7 +1996,7 @@ Variables
    -

    Referenced by prepare_body().

    +

    Referenced by message_content(), and prepare_body().

    @@ -2088,7 +2130,7 @@ Variables
    @@ -2148,7 +2190,7 @@ Variables
    diff --git a/doc/html/text_8php.js b/doc/html/text_8php.js index cf3d8b77f..525dbb5d8 100644 --- a/doc/html/text_8php.js +++ b/doc/html/text_8php.js @@ -69,6 +69,7 @@ var text_8php = [ "return_bytes", "text_8php.html#ae2126da85966da0e79c6bcbac63b0bda", null ], [ "sanitise_acl", "text_8php.html#a9fbeae13c9abd6e27cb4d8d1817f969c", null ], [ "search", "text_8php.html#a876e94892867019935b348b573299352", null ], + [ "searchbox", "text_8php.html#aae91e4d2a2c6f7a9daccd2c186ae3447", null ], [ "smile_decode", "text_8php.html#aca0f589be74fab1a460c57e88dad9779", null ], [ "smile_encode", "text_8php.html#a44d460fcdee6247c67b9bef3ea15f3e6", null ], [ "smilies", "text_8php.html#a3d225b253bb9e0f2498c11647d927b0b", null ], diff --git a/doc/html/typo_8php.html b/doc/html/typo_8php.html index c643c7fae..84a43b90e 100644 --- a/doc/html/typo_8php.html +++ b/doc/html/typo_8php.html @@ -134,7 +134,7 @@ Variables
    -

    Referenced by FriendicaSmarty\__construct(), Item\__construct(), FriendicaSmartyEngine\__construct(), Template\_replcb_if(), Template\_replcb_inc(), _well_known_init(), abook_toggle_flag(), acl_init(), admin_content(), admin_page_dbsync(), admin_page_hubloc(), admin_page_logs(), admin_page_logs_post(), admin_page_plugins(), admin_page_site(), admin_page_site_post(), admin_page_summary(), admin_page_themes(), admin_page_users(), admin_page_users_post(), admin_post(), advanced_profile(), allfriends_content(), allowed_email(), allowed_url(), alt_pager(), api_account_verify_credentials(), api_albums(), api_apply_template(), api_call(), api_content(), api_direct_messages_all(), api_direct_messages_box(), api_direct_messages_conversation(), api_direct_messages_inbox(), api_direct_messages_new(), api_direct_messages_sentbox(), api_favorites(), api_followers_ids(), api_format_as(), api_format_items(), api_friends_ids(), api_get_user(), api_item_get_user(), api_login(), api_photos(), api_post(), api_rss_extra(), api_status_show(), api_statuses_destroy(), api_statuses_f(), api_statuses_followers(), api_statuses_friends(), api_statuses_home_timeline(), api_statuses_mediap(), api_statuses_mentions(), api_statuses_public_timeline(), api_statuses_repeat(), api_statuses_show(), api_statuses_update(), api_statuses_user_timeline(), api_statusnet_config(), api_users_show(), apps_content(), apw_form(), atom_entry(), attribute_contains(), authenticate_success(), avatar_img(), bbcode(), best_link_url(), blocks_content(), blog_init(), blogtheme_display_item(), blogtheme_form(), blogtheme_imgurl(), build_sync_packet(), cal(), call_hooks(), categories_widget(), channel_aside(), channel_content(), channel_init(), channel_remove(), chanview_content(), check_config(), check_form_security_token(), check_form_security_token_ForbiddenOnErr(), check_form_security_token_redirectOnErr(), check_htaccess(), clean_urls(), cli_startup(), cli_suggest_run(), comanche_menu(), comanche_parser(), comanche_replace_region(), comanche_widget(), common_aside(), common_content(), common_friends_visitor_widget(), common_init(), community_content(), connect_content(), connect_init(), connect_post(), connections_aside(), connections_clone(), connections_content(), connections_init(), connections_post(), construct_page(), contact_block(), contact_select(), conversation(), create_identity(), crepair_content(), crepair_init(), crepair_post(), current_theme(), current_theme_url(), del_config(), del_pconfig(), del_xconfig(), delegate_content(), deliver_run(), directory_aside(), directory_content(), directory_init(), dirsearch_init(), display_content(), dlogger(), drop_item(), editblock_content(), editlayout_content(), editpost_content(), editwebpage_content(), ev_compare(), event_store(), events_content(), events_post(), expand_acl(), expand_groups(), fbrowser_content(), fileas_widget(), filer_content(), filerm_content(), filestorage_content(), findpeople_widget(), fix_private_photos(), follow_init(), follow_widget(), format_event_diaspora(), fsuggest_content(), fsuggest_post(), BaseObject\get_app(), get_app(), get_best_language(), get_birthdays(), Item\get_comment_box(), get_config(), get_custom_nav(), get_events(), get_form_security_token(), FriendicaSmartyEngine\get_intltext_template(), get_intltext_template(), get_markup_template(), get_pconfig(), get_plink(), Item\get_template_data(), get_theme_screenshot(), get_xconfig(), gprobe_run(), group_aside(), group_content(), group_post(), group_select(), guess_image_type(), handle_tag(), hcard_aside(), hcard_init(), head_get_icon(), head_set_icon(), help_content(), hostxrd_init(), import_channel_photo(), import_post(), import_profile_photo(), info(), insert_hook(), intro_aside(), intro_content(), invite_content(), invite_post(), is_site_admin(), item_content(), item_photo_menu(), item_post(), items_fetch(), lang_selector(), lastpost_aside(), lastpost_content(), lastpost_init(), layouts_content(), like_content(), like_puller(), link_compare(), load_config(), load_contact_links(), load_database(), load_hooks(), load_pconfig(), load_translation_table(), load_xconfig(), logger(), login(), login_content(), FKOAuth1\loginUser(), lostpass_content(), lostpass_post(), magic_init(), manual_config(), match_content(), menu_content(), message_aside(), message_content(), message_post(), mitem_content(), mitem_init(), mitem_post(), mood_init(), msearch_post(), nav(), nav_set_selected(), network_content(), network_init(), new_contact(), notice(), notification(), notifications_content(), notifications_post(), notifier_run(), notify_content(), notify_init(), oembed_fetch_url(), oembed_format_object(), oembed_iframe(), oexchange_content(), oexchange_init(), onedirsync_run(), onepoll_run(), opensearch_init(), page_content(), page_init(), paginate(), photo_init(), photos_content(), photos_init(), photos_post(), ping_init(), poco_init(), poco_load(), poke_init(), poller_run(), pop_lang(), post_init(), preg_heart(), prepare_body(), probe_content(), proc_run(), profile_activity(), profile_aside(), profile_content(), profile_create_sidebar(), profile_init(), profile_load(), profile_photo_aside(), profile_photo_init(), profile_photo_post(), profile_sidebar(), profiles_aside(), profiles_content(), profiles_init(), profiles_post(), profperm_aside(), profperm_content(), profperm_init(), push_lang(), queue_run(), randprof_init(), redbasic_form(), redir_init(), register_content(), regmod_content(), relative_date(), removeme_content(), removeme_post(), replace_macros(), rmagic_post(), rpost_content(), saved_searches(), scale_external_images(), search(), search_ac_init(), search_content(), search_init(), search_post(), send_message(), service_class_allows(), service_class_fetch(), set_config(), Conversation\set_mode(), set_pconfig(), set_xconfig(), settings_aside(), settings_init(), settings_post(), setup_content(), setup_post(), share_init(), siteinfo_content(), siteinfo_init(), smilies(), sources_post(), subthread_content(), suggest_aside(), suggest_content(), t(), tag_deliver(), tagger_content(), tagrm_content(), tagrm_post(), tags_sort(), terminate_friendship(), tgroup_check(), theme_admin(), theme_content(), theme_include(), thing_init(), timezone_cmp(), toggle_mobile_init(), tt(), uexport_init(), update_channel_content(), update_community_content(), update_display_content(), update_network_content(), update_search_content(), update_suggestions(), user_allow(), vcard_from_xchan(), viewconnections_aside(), viewconnections_content(), viewconnections_init(), viewsrc_content(), vote_content(), vote_init(), vote_post(), wall_upload_post(), webpages_content(), wfinger_init(), what_next(), widget_profile(), widget_tagcloud(), xrd_init(), z_fetch_url(), z_path(), z_root(), zfinger_init(), zid_init(), zotfeed_init(), and zping_content().

    +

    Referenced by FriendicaSmarty\__construct(), Item\__construct(), FriendicaSmartyEngine\__construct(), Template\_replcb_if(), Template\_replcb_inc(), _well_known_init(), abook_toggle_flag(), acl_init(), admin_content(), admin_page_dbsync(), admin_page_hubloc(), admin_page_logs(), admin_page_logs_post(), admin_page_plugins(), admin_page_site(), admin_page_site_post(), admin_page_summary(), admin_page_themes(), admin_page_users(), admin_page_users_post(), admin_post(), advanced_profile(), allfriends_content(), allowed_email(), allowed_url(), alt_pager(), api_account_verify_credentials(), api_albums(), api_apply_template(), api_call(), api_content(), api_direct_messages_all(), api_direct_messages_box(), api_direct_messages_conversation(), api_direct_messages_inbox(), api_direct_messages_new(), api_direct_messages_sentbox(), api_favorites(), api_followers_ids(), api_format_as(), api_format_items(), api_friends_ids(), api_get_user(), api_item_get_user(), api_login(), api_photos(), api_post(), api_rss_extra(), api_status_show(), api_statuses_destroy(), api_statuses_f(), api_statuses_followers(), api_statuses_friends(), api_statuses_home_timeline(), api_statuses_mediap(), api_statuses_mentions(), api_statuses_public_timeline(), api_statuses_repeat(), api_statuses_show(), api_statuses_update(), api_statuses_user_timeline(), api_statusnet_config(), api_users_show(), apps_content(), apw_form(), atom_entry(), attribute_contains(), authenticate_success(), avatar_img(), bbcode(), best_link_url(), blocks_content(), blog_init(), blogtheme_display_item(), blogtheme_form(), blogtheme_imgurl(), build_sync_packet(), cal(), call_hooks(), categories_widget(), channel_content(), channel_init(), channel_remove(), chanview_content(), check_config(), check_form_security_token(), check_form_security_token_ForbiddenOnErr(), check_form_security_token_redirectOnErr(), check_htaccess(), clean_urls(), cli_startup(), cli_suggest_run(), comanche_menu(), comanche_parser(), comanche_replace_region(), comanche_widget(), common_content(), common_friends_visitor_widget(), common_init(), community_content(), connect_content(), connect_init(), connect_post(), connections_aside(), connections_clone(), connections_content(), connections_init(), connections_post(), construct_page(), contact_block(), contact_select(), conversation(), create_identity(), current_theme(), current_theme_url(), del_config(), del_pconfig(), del_xconfig(), delegate_content(), deliver_run(), directory_aside(), directory_content(), directory_init(), dirsearch_init(), display_content(), dlogger(), drop_item(), editblock_content(), editlayout_content(), editpost_content(), editwebpage_content(), ev_compare(), event_store(), events_content(), events_post(), expand_acl(), expand_groups(), fbrowser_content(), fileas_widget(), filer_content(), filerm_content(), filestorage_content(), findpeople_widget(), fix_private_photos(), follow_init(), format_event_diaspora(), fsuggest_content(), fsuggest_post(), BaseObject\get_app(), get_app(), get_best_language(), get_birthdays(), Item\get_comment_box(), get_config(), get_custom_nav(), get_events(), get_form_security_token(), FriendicaSmartyEngine\get_intltext_template(), get_intltext_template(), get_markup_template(), get_pconfig(), get_plink(), Item\get_template_data(), get_theme_screenshot(), get_xconfig(), gprobe_run(), group_aside(), group_content(), group_post(), group_select(), guess_image_type(), handle_tag(), head_get_icon(), head_remove_css(), head_remove_js(), head_set_icon(), help_content(), hostxrd_init(), import_channel_photo(), import_post(), import_profile_photo(), info(), insert_hook(), invite_content(), invite_post(), is_site_admin(), item_content(), item_photo_menu(), item_post(), items_fetch(), lang_selector(), layouts_content(), like_content(), like_puller(), link_compare(), load_config(), load_contact_links(), load_database(), load_hooks(), load_pconfig(), load_translation_table(), load_xconfig(), logger(), login(), login_content(), FKOAuth1\loginUser(), lostpass_content(), lostpass_post(), magic_init(), manual_config(), match_content(), menu_content(), message_aside(), message_content(), message_post(), mitem_content(), mitem_init(), mitem_post(), mood_init(), msearch_post(), nav(), nav_set_selected(), network_content(), network_init(), new_contact(), notice(), notification(), notifications_content(), notifications_post(), notifier_run(), notify_content(), notify_init(), oembed_fetch_url(), oembed_format_object(), oembed_iframe(), oexchange_content(), oexchange_init(), onedirsync_run(), onepoll_run(), opensearch_init(), page_content(), page_init(), paginate(), photo_init(), photos_content(), photos_init(), photos_post(), ping_init(), poco_init(), poco_load(), poke_init(), poller_run(), pop_lang(), post_init(), preg_heart(), prepare_body(), probe_content(), proc_run(), profile_activity(), profile_content(), profile_create_sidebar(), profile_init(), profile_load(), profile_photo_init(), profile_photo_post(), profile_sidebar(), profiles_content(), profiles_init(), profiles_post(), profperm_content(), profperm_init(), push_lang(), queue_run(), randprof_init(), redbasic_form(), redir_init(), register_content(), regmod_content(), relative_date(), removeme_content(), removeme_post(), replace_macros(), rmagic_post(), rpost_content(), scale_external_images(), search(), search_ac_init(), search_content(), search_init(), search_post(), searchbox(), send_message(), service_class_allows(), service_class_fetch(), set_config(), Conversation\set_mode(), set_pconfig(), set_xconfig(), settings_aside(), settings_init(), settings_post(), setup_content(), setup_post(), share_init(), siteinfo_content(), siteinfo_init(), smilies(), sources_post(), subthread_content(), suggest_aside(), suggest_content(), t(), tag_deliver(), tagger_content(), tagrm_content(), tagrm_post(), tags_sort(), terminate_friendship(), tgroup_check(), theme_admin(), theme_content(), theme_include(), thing_init(), timezone_cmp(), toggle_mobile_init(), tt(), uexport_init(), update_channel_content(), update_community_content(), update_display_content(), update_network_content(), update_search_content(), update_suggestions(), user_allow(), vcard_from_xchan(), viewconnections_content(), viewconnections_init(), viewsrc_content(), vote_content(), vote_init(), vote_post(), wall_upload_post(), webpages_content(), wfinger_init(), what_next(), widget_archive(), widget_categories(), widget_filer(), widget_follow(), widget_fullprofile(), widget_profile(), widget_savedsearch(), widget_tagcloud(), widget_tagcloud_wall(), xrd_init(), z_fetch_url(), z_path(), z_root(), zfinger_init(), zid_init(), zotfeed_init(), and zping_content().

    diff --git a/doc/html/viewconnections_8php.html b/doc/html/viewconnections_8php.html index 944b4efe2..ebdf48289 100644 --- a/doc/html/viewconnections_8php.html +++ b/doc/html/viewconnections_8php.html @@ -114,28 +114,10 @@ $(document).ready(function(){initNavTree('viewconnections_8php.html','');}); Functions
     viewconnections_init (&$a)
     
     viewconnections_aside (&$a)
     
     viewconnections_content (&$a)
     

    Function Documentation

    - -
    -
    - - - - - - - - -
    viewconnections_aside ($a)
    -
    - -
    -
    diff --git a/doc/html/viewconnections_8php.js b/doc/html/viewconnections_8php.js index 5b9ec8153..f74e87152 100644 --- a/doc/html/viewconnections_8php.js +++ b/doc/html/viewconnections_8php.js @@ -1,6 +1,5 @@ var viewconnections_8php = [ - [ "viewconnections_aside", "viewconnections_8php.html#ae330cea4cddd091559659f8b469617b6", null ], [ "viewconnections_content", "viewconnections_8php.html#ab6c4d983e97b3a8a879567ff76507776", null ], [ "viewconnections_init", "viewconnections_8php.html#a00163d50b17568f7b0e48b1ca9ab7330", null ] ]; \ No newline at end of file diff --git a/doc/html/widgets_8php.html b/doc/html/widgets_8php.html index d91f1a939..df9959890 100644 --- a/doc/html/widgets_8php.html +++ b/doc/html/widgets_8php.html @@ -112,12 +112,181 @@ $(document).ready(function(){initNavTree('widgets_8php.html','');}); + + + + + + + + + + + + + + + + + + + + + + + +

    Functions

     list_widgets ()
     
     widget_profile ($args)
     
     widget_tagcloud ($args)
     
     widget_collections ($args)
     
     widget_suggestions ($arr)
     
     widget_follow ($args)
     
     widget_notes ($arr)
     
     widget_savedsearch ($arr)
     
     widget_filer ($arr)
     
     widget_archive ($arr)
     
     widget_fullprofile ($arr)
     
     widget_categories ($arr)
     
     widget_tagcloud_wall ($arr)
     
     widget_affinity ($arr)
     

    Function Documentation

    + +
    +
    + + + + + + + +
    list_widgets ()
    +
    + +
    +
    + +
    +
    + + + + + + + + +
    widget_affinity ( $arr)
    +
    + +
    +
    + +
    +
    + + + + + + + + +
    widget_archive ( $arr)
    +
    + +
    +
    + +
    +
    + + + + + + + + +
    widget_categories ( $arr)
    +
    + +
    +
    + +
    +
    + + + + + + + + +
    widget_collections ( $args)
    +
    + +
    +
    + +
    +
    + + + + + + + + +
    widget_filer ( $arr)
    +
    + +
    +
    + +
    +
    + + + + + + + + +
    widget_follow ( $args)
    +
    + +

    Referenced by connections_aside(), and suggest_aside().

    + +
    +
    + +
    +
    + + + + + + + + +
    widget_fullprofile ( $arr)
    +
    + +
    +
    + +
    +
    + + + + + + + + +
    widget_notes ( $arr)
    +
    + +
    +
    @@ -132,6 +301,40 @@ Functions
    +
    + + +
    +
    + + + + + + + + +
    widget_savedsearch ( $arr)
    +
    + +
    +
    + +
    +
    + + + + + + + + +
    widget_suggestions ( $arr)
    +
    + +

    Referenced by connections_aside(), and directory_content().

    +
    @@ -148,6 +351,22 @@ Functions
    +
    + + +
    +
    + + + + + + + + +
    widget_tagcloud_wall ( $arr)
    +
    +
    diff --git a/doc/html/widgets_8php.js b/doc/html/widgets_8php.js index 0b1db1013..d83669dc3 100644 --- a/doc/html/widgets_8php.js +++ b/doc/html/widgets_8php.js @@ -1,5 +1,17 @@ var widgets_8php = [ + [ "list_widgets", "widgets_8php.html#a8e670642c7a957d2b5578dfb75aedc05", null ], + [ "widget_affinity", "widgets_8php.html#add9b24d3304e529a7975e96122315554", null ], + [ "widget_archive", "widgets_8php.html#a7b1e357b5a2027718470b77ec921fc65", null ], + [ "widget_categories", "widgets_8php.html#af37fdad3b2e861d860a4a8c4d8a76c0b", null ], + [ "widget_collections", "widgets_8php.html#aa189a07241246d97efbee29f1c6a6f7f", null ], + [ "widget_filer", "widgets_8php.html#a5ab3b64496e02cab56429978ad55f1c0", null ], + [ "widget_follow", "widgets_8php.html#ad1bf7aa69e8d100d95faba17c7bc91cd", null ], + [ "widget_fullprofile", "widgets_8php.html#a70442dfa079312d9d5e5ee01be51a165", null ], + [ "widget_notes", "widgets_8php.html#a45ea061dabe9a8372e4ca3b9e5714256", null ], [ "widget_profile", "widgets_8php.html#abd2e508a2a0b911c4a838e3cb7599923", null ], - [ "widget_tagcloud", "widgets_8php.html#a6dbc227aac750774284ee39c45f0a200", null ] + [ "widget_savedsearch", "widgets_8php.html#a94203eb9bcd63cbdecbbcb15163598d8", null ], + [ "widget_suggestions", "widgets_8php.html#a0d404276fedc59f5038cf5c085028326", null ], + [ "widget_tagcloud", "widgets_8php.html#a6dbc227aac750774284ee39c45f0a200", null ], + [ "widget_tagcloud_wall", "widgets_8php.html#ae4ced69d83dbdd9e6b51660d9eba8653", null ] ]; \ No newline at end of file diff --git a/util/messages.po b/util/messages.po index 485d47394..db21568c7 100644 --- a/util/messages.po +++ b/util/messages.po @@ -6,9 +6,9 @@ #, fuzzy msgid "" msgstr "" -"Project-Id-Version: 2013-12-06.519\n" +"Project-Id-Version: 2013-12-13.526\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2013-12-06 00:02-0800\n" +"POT-Creation-Date: 2013-12-13 00:04-0800\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: FULL NAME \n" "Language-Team: LANGUAGE \n" @@ -53,6 +53,34 @@ msgstr "" msgid "%1$s has an updated %2$s, changing %3$s." msgstr "" +#: ../../include/dir_fns.php:15 +msgid "Sort Options" +msgstr "" + +#: ../../include/dir_fns.php:16 +msgid "Alphabetic" +msgstr "" + +#: ../../include/dir_fns.php:17 +msgid "Reverse Alphabetic" +msgstr "" + +#: ../../include/dir_fns.php:18 +msgid "Newest to Oldest" +msgstr "" + +#: ../../include/dir_fns.php:30 +msgid "Enable Safe Search" +msgstr "" + +#: ../../include/dir_fns.php:32 +msgid "Disable Safe Search" +msgstr "" + +#: ../../include/dir_fns.php:34 +msgid "Safe Mode" +msgstr "" + #: ../../include/enotify.php:40 msgid "Red Matrix Notification" msgstr "" @@ -248,21 +276,21 @@ msgid "Private Message" msgstr "" #: ../../include/ItemObject.php:95 ../../include/page_widgets.php:8 -#: ../../mod/webpages.php:101 ../../mod/settings.php:671 ../../mod/menu.php:55 +#: ../../mod/webpages.php:118 ../../mod/settings.php:671 ../../mod/menu.php:55 #: ../../mod/layouts.php:102 ../../mod/editlayout.php:100 -#: ../../mod/editwebpage.php:119 ../../mod/blocks.php:93 +#: ../../mod/editwebpage.php:143 ../../mod/blocks.php:93 #: ../../mod/editpost.php:97 ../../mod/editblock.php:114 msgid "Edit" msgstr "" -#: ../../include/ItemObject.php:107 ../../include/conversation.php:628 -#: ../../mod/settings.php:672 ../../mod/admin.php:690 ../../mod/group.php:182 -#: ../../mod/photos.php:1141 ../../mod/connections.php:374 +#: ../../include/ItemObject.php:107 ../../include/conversation.php:632 +#: ../../mod/settings.php:672 ../../mod/admin.php:693 ../../mod/group.php:182 +#: ../../mod/photos.php:1141 ../../mod/connections.php:378 #: ../../mod/filestorage.php:82 msgid "Delete" msgstr "" -#: ../../include/ItemObject.php:113 ../../include/conversation.php:627 +#: ../../include/ItemObject.php:113 ../../include/conversation.php:631 msgid "Select" msgstr "" @@ -286,7 +314,7 @@ msgstr "" msgid "starred" msgstr "" -#: ../../include/ItemObject.php:160 ../../include/conversation.php:638 +#: ../../include/ItemObject.php:160 ../../include/conversation.php:642 msgid "Message is verified" msgstr "" @@ -339,20 +367,20 @@ msgstr "" msgid "via Wall-To-Wall:" msgstr "" -#: ../../include/ItemObject.php:216 ../../include/conversation.php:682 +#: ../../include/ItemObject.php:216 ../../include/conversation.php:686 #, php-format msgid " from %s" msgstr "" -#: ../../include/ItemObject.php:219 ../../include/conversation.php:685 +#: ../../include/ItemObject.php:219 ../../include/conversation.php:689 #, php-format msgid "last edited: %s" msgstr "" -#: ../../include/ItemObject.php:246 ../../include/conversation.php:702 -#: ../../include/conversation.php:1112 ../../mod/photos.php:1072 -#: ../../mod/message.php:332 ../../mod/message.php:516 -#: ../../mod/editlayout.php:109 ../../mod/editwebpage.php:128 +#: ../../include/ItemObject.php:246 ../../include/conversation.php:706 +#: ../../include/conversation.php:1116 ../../mod/photos.php:1072 +#: ../../mod/message.php:332 ../../mod/message.php:484 +#: ../../mod/editlayout.php:109 ../../mod/editwebpage.php:152 #: ../../mod/editpost.php:106 ../../mod/editblock.php:123 msgid "Please wait" msgstr "" @@ -365,7 +393,7 @@ msgstr[0] "" msgstr[1] "" #: ../../include/ItemObject.php:268 ../../include/js_strings.php:7 -#: ../../include/contact_widgets.php:148 +#: ../../include/contact_widgets.php:124 msgid "show more" msgstr "" @@ -379,22 +407,21 @@ msgstr "" msgid "Comment" msgstr "" -#: ../../include/ItemObject.php:530 ../../mod/events.php:469 +#: ../../include/ItemObject.php:530 ../../mod/events.php:470 #: ../../mod/thing.php:190 ../../mod/invite.php:154 ../../mod/setup.php:302 #: ../../mod/setup.php:345 ../../mod/settings.php:609 #: ../../mod/settings.php:721 ../../mod/settings.php:749 #: ../../mod/settings.php:773 ../../mod/settings.php:844 #: ../../mod/settings.php:1005 ../../mod/connect.php:96 -#: ../../mod/sources.php:83 ../../mod/sources.php:110 ../../mod/admin.php:418 -#: ../../mod/admin.php:683 ../../mod/admin.php:823 ../../mod/admin.php:1022 -#: ../../mod/admin.php:1109 ../../mod/group.php:87 ../../mod/photos.php:685 +#: ../../mod/sources.php:83 ../../mod/sources.php:110 ../../mod/admin.php:420 +#: ../../mod/admin.php:686 ../../mod/admin.php:826 ../../mod/admin.php:1025 +#: ../../mod/admin.php:1112 ../../mod/group.php:87 ../../mod/photos.php:685 #: ../../mod/photos.php:790 ../../mod/photos.php:1051 #: ../../mod/photos.php:1091 ../../mod/photos.php:1178 -#: ../../mod/message.php:333 ../../mod/message.php:515 -#: ../../mod/profiles.php:529 ../../mod/connections.php:452 -#: ../../mod/import.php:387 ../../mod/crepair.php:166 ../../mod/poke.php:166 -#: ../../mod/fsuggest.php:108 ../../mod/mood.php:137 -#: ../../view/theme/redbasic/php/config.php:85 +#: ../../mod/message.php:333 ../../mod/message.php:483 +#: ../../mod/profiles.php:518 ../../mod/connections.php:456 +#: ../../mod/import.php:387 ../../mod/poke.php:166 ../../mod/fsuggest.php:108 +#: ../../mod/mood.php:137 ../../view/theme/redbasic/php/config.php:85 #: ../../view/theme/apw/php/config.php:231 #: ../../view/theme/blogga/view/theme/blog/config.php:67 #: ../../view/theme/blogga/php/config.php:67 @@ -433,22 +460,22 @@ msgstr "" msgid "Video" msgstr "" -#: ../../include/ItemObject.php:539 ../../include/conversation.php:1075 -#: ../../mod/webpages.php:105 ../../mod/photos.php:1092 -#: ../../mod/editlayout.php:129 ../../mod/editwebpage.php:150 +#: ../../include/ItemObject.php:539 ../../include/conversation.php:1079 +#: ../../mod/webpages.php:122 ../../mod/photos.php:1092 +#: ../../mod/editlayout.php:129 ../../mod/editwebpage.php:176 #: ../../mod/editpost.php:126 ../../mod/editblock.php:144 msgid "Preview" msgstr "" -#: ../../include/ItemObject.php:542 ../../include/conversation.php:1139 -#: ../../mod/message.php:338 ../../mod/message.php:521 +#: ../../include/ItemObject.php:542 ../../include/conversation.php:1143 +#: ../../mod/message.php:338 ../../mod/message.php:489 #: ../../mod/editpost.php:134 msgid "Encrypt text" msgstr "" -#: ../../include/Contact.php:87 ../../include/contact_widgets.php:23 -#: ../../include/identity.php:613 ../../mod/match.php:62 -#: ../../mod/suggest.php:56 ../../mod/directory.php:198 +#: ../../include/Contact.php:87 ../../include/widgets.php:96 +#: ../../include/widgets.php:136 ../../include/identity.php:613 +#: ../../mod/match.php:62 ../../mod/suggest.php:58 ../../mod/directory.php:199 msgid "Connect" msgstr "" @@ -460,6 +487,128 @@ msgstr "" msgid "Open the selected location in a different window or browser tab" msgstr "" +#: ../../include/widgets.php:5 +msgid "Displays a full channel profile" +msgstr "" + +#: ../../include/widgets.php:6 +msgid "Tag cloud of webpage categories" +msgstr "" + +#: ../../include/widgets.php:7 +msgid "List and filter by collection" +msgstr "" + +#: ../../include/widgets.php:8 +msgid "Show a couple of channel suggestion" +msgstr "" + +#: ../../include/widgets.php:9 +msgid "Provide a channel follow form" +msgstr "" + +#: ../../include/widgets.php:39 ../../include/contact_widgets.php:86 +msgid "Categories" +msgstr "" + +#: ../../include/widgets.php:98 ../../mod/suggest.php:60 +msgid "Ignore/Hide" +msgstr "" + +#: ../../include/widgets.php:104 ../../mod/connections.php:583 +msgid "Suggestions" +msgstr "" + +#: ../../include/widgets.php:105 +msgid "See more..." +msgstr "" + +#: ../../include/widgets.php:127 +#, php-format +msgid "You have %1$.0f of %2$.0f allowed connections." +msgstr "" + +#: ../../include/widgets.php:133 +msgid "Add New Connection" +msgstr "" + +#: ../../include/widgets.php:134 +msgid "Enter the channel address" +msgstr "" + +#: ../../include/widgets.php:135 +msgid "Example: bob@example.com, http://example.com/barbara" +msgstr "" + +#: ../../include/widgets.php:152 +msgid "Notes" +msgstr "" + +#: ../../include/widgets.php:154 ../../include/text.php:738 +#: ../../include/text.php:752 ../../mod/filer.php:36 +msgid "Save" +msgstr "" + +#: ../../include/widgets.php:224 ../../mod/search.php:20 +msgid "Remove term" +msgstr "" + +#: ../../include/widgets.php:233 ../../include/features.php:48 +#: ../../mod/search.php:17 +msgid "Saved Searches" +msgstr "" + +#: ../../include/widgets.php:234 ../../include/group.php:290 +msgid "add" +msgstr "" + +#: ../../include/widgets.php:264 ../../include/features.php:62 +#: ../../include/contact_widgets.php:52 +msgid "Saved Folders" +msgstr "" + +#: ../../include/widgets.php:267 ../../include/contact_widgets.php:55 +#: ../../include/contact_widgets.php:89 +msgid "Everything" +msgstr "" + +#: ../../include/widgets.php:299 ../../include/items.php:3550 +msgid "Archives" +msgstr "" + +#: ../../include/widgets.php:351 +msgid "Refresh" +msgstr "" + +#: ../../include/widgets.php:352 ../../mod/connections.php:408 +msgid "Me" +msgstr "" + +#: ../../include/widgets.php:353 ../../mod/connections.php:410 +msgid "Best Friends" +msgstr "" + +#: ../../include/widgets.php:354 ../../include/profile_selectors.php:42 +#: ../../include/identity.php:298 ../../mod/connections.php:411 +msgid "Friends" +msgstr "" + +#: ../../include/widgets.php:355 +msgid "Co-workers" +msgstr "" + +#: ../../include/widgets.php:356 ../../mod/connections.php:412 +msgid "Former Friends" +msgstr "" + +#: ../../include/widgets.php:357 ../../mod/connections.php:413 +msgid "Acquaintances" +msgstr "" + +#: ../../include/widgets.php:358 +msgid "Everybody" +msgstr "" + #: ../../include/contact_selectors.php:30 msgid "Unknown | Not categorised" msgstr "" @@ -520,8 +669,8 @@ msgstr "" msgid "RSS/Atom" msgstr "" -#: ../../include/contact_selectors.php:77 ../../mod/admin.php:686 -#: ../../mod/admin.php:695 ../../boot.php:1442 +#: ../../include/contact_selectors.php:77 ../../mod/admin.php:689 +#: ../../mod/admin.php:698 ../../boot.php:1442 msgid "Email" msgstr "" @@ -639,224 +788,12 @@ msgstr "" msgid "Finishes:" msgstr "" -#: ../../include/event.php:40 ../../include/identity.php:663 -#: ../../include/bb2diaspora.php:455 ../../mod/events.php:462 -#: ../../mod/directory.php:173 +#: ../../include/event.php:40 ../../include/identity.php:664 +#: ../../include/bb2diaspora.php:455 ../../mod/events.php:463 +#: ../../mod/directory.php:174 msgid "Location:" msgstr "" -#: ../../include/features.php:21 -msgid "General Features" -msgstr "" - -#: ../../include/features.php:23 -msgid "Content Expiration" -msgstr "" - -#: ../../include/features.php:23 -msgid "Remove posts/comments and/or private messages at a future time" -msgstr "" - -#: ../../include/features.php:24 -msgid "Multiple Profiles" -msgstr "" - -#: ../../include/features.php:24 -msgid "Ability to create multiple profiles" -msgstr "" - -#: ../../include/features.php:25 -msgid "Web Pages" -msgstr "" - -#: ../../include/features.php:25 -msgid "Provide managed web pages on your channel" -msgstr "" - -#: ../../include/features.php:26 -msgid "Enhanced Photo Albums" -msgstr "" - -#: ../../include/features.php:26 -msgid "Enable photo album with enhanced features" -msgstr "" - -#: ../../include/features.php:28 -msgid "Extended Identity Sharing" -msgstr "" - -#: ../../include/features.php:28 ../../include/js_strings.php:30 -msgid " " -msgstr "" - -#: ../../include/features.php:29 -msgid "Expert Mode" -msgstr "" - -#: ../../include/features.php:29 -msgid "Enable Expert Mode to provide advanced configuration options" -msgstr "" - -#: ../../include/features.php:30 -msgid "Premium Channel" -msgstr "" - -#: ../../include/features.php:30 -msgid "" -"Allows you to set restrictions and terms on those that connect with your " -"channel" -msgstr "" - -#: ../../include/features.php:35 -msgid "Post Composition Features" -msgstr "" - -#: ../../include/features.php:36 -msgid "Richtext Editor" -msgstr "" - -#: ../../include/features.php:36 -msgid "Enable richtext editor" -msgstr "" - -#: ../../include/features.php:37 -msgid "Post Preview" -msgstr "" - -#: ../../include/features.php:37 -msgid "Allow previewing posts and comments before publishing them" -msgstr "" - -#: ../../include/features.php:38 ../../mod/settings.php:120 -#: ../../mod/sources.php:67 -msgid "Channel Sources" -msgstr "" - -#: ../../include/features.php:38 -msgid "Automatically import channel content from other channels or feeds" -msgstr "" - -#: ../../include/features.php:39 -msgid "Even More Encryption" -msgstr "" - -#: ../../include/features.php:39 -msgid "Allow encryption of content end-to-end with a shared secret key" -msgstr "" - -#: ../../include/features.php:44 -msgid "Network and Stream Filtering" -msgstr "" - -#: ../../include/features.php:45 -msgid "Search by Date" -msgstr "" - -#: ../../include/features.php:45 -msgid "Ability to select posts by date ranges" -msgstr "" - -#: ../../include/features.php:46 -msgid "Collections Filter" -msgstr "" - -#: ../../include/features.php:46 -msgid "Enable widget to display Network posts only from selected collections" -msgstr "" - -#: ../../include/features.php:47 ../../mod/search.php:17 -#: ../../mod/network.php:122 -msgid "Saved Searches" -msgstr "" - -#: ../../include/features.php:47 -msgid "Save search terms for re-use" -msgstr "" - -#: ../../include/features.php:48 -msgid "Network Personal Tab" -msgstr "" - -#: ../../include/features.php:48 -msgid "Enable tab to display only Network posts that you've interacted on" -msgstr "" - -#: ../../include/features.php:49 -msgid "Network New Tab" -msgstr "" - -#: ../../include/features.php:49 -msgid "Enable tab to display all new Network activity" -msgstr "" - -#: ../../include/features.php:50 -msgid "Affinity Tool" -msgstr "" - -#: ../../include/features.php:50 -msgid "Filter stream activity by depth of relationships" -msgstr "" - -#: ../../include/features.php:55 -msgid "Post/Comment Tools" -msgstr "" - -#: ../../include/features.php:57 -msgid "Edit Sent Posts" -msgstr "" - -#: ../../include/features.php:57 -msgid "Edit and correct posts and comments after sending" -msgstr "" - -#: ../../include/features.php:58 -msgid "Tagging" -msgstr "" - -#: ../../include/features.php:58 -msgid "Ability to tag existing posts" -msgstr "" - -#: ../../include/features.php:59 -msgid "Post Categories" -msgstr "" - -#: ../../include/features.php:59 -msgid "Add categories to your posts" -msgstr "" - -#: ../../include/features.php:60 ../../include/contact_widgets.php:76 -msgid "Saved Folders" -msgstr "" - -#: ../../include/features.php:60 -msgid "Ability to file posts under folders" -msgstr "" - -#: ../../include/features.php:61 -msgid "Dislike Posts" -msgstr "" - -#: ../../include/features.php:61 -msgid "Ability to dislike posts/comments" -msgstr "" - -#: ../../include/features.php:62 -msgid "Star Posts" -msgstr "" - -#: ../../include/features.php:62 -msgid "Ability to mark special posts with a star indicator" -msgstr "" - -#: ../../include/features.php:63 -msgid "Tag Cloud" -msgstr "" - -#: ../../include/features.php:63 -msgid "Provide a personal tag cloud on your channel page" -msgstr "" - #: ../../include/group.php:25 msgid "" "A deleted group with this name was revived. Existing item permissions " @@ -868,7 +805,7 @@ msgstr "" msgid "Default privacy group for new contacts" msgstr "" -#: ../../include/group.php:242 ../../mod/admin.php:695 +#: ../../include/group.php:242 ../../mod/admin.php:698 msgid "All Channels" msgstr "" @@ -892,10 +829,6 @@ msgstr "" msgid "Channels not in any collection" msgstr "" -#: ../../include/group.php:290 ../../mod/network.php:123 -msgid "add" -msgstr "" - #: ../../include/js_strings.php:5 msgid "Delete this item?" msgstr "" @@ -989,6 +922,10 @@ msgstr "" msgid "%d years" msgstr "" +#: ../../include/js_strings.php:30 ../../include/features.php:29 +msgid " " +msgstr "" + #: ../../include/js_strings.php:31 msgid "timeago.numbers" msgstr "" @@ -1011,8 +948,8 @@ msgstr "" #: ../../include/photo/photo_driver.php:609 ../../include/photos.php:51 #: ../../mod/photos.php:97 ../../mod/photos.php:775 ../../mod/photos.php:797 -#: ../../mod/profile_photo.php:88 ../../mod/profile_photo.php:235 -#: ../../mod/profile_photo.php:346 +#: ../../mod/profile_photo.php:78 ../../mod/profile_photo.php:225 +#: ../../mod/profile_photo.php:336 msgid "Profile Photos" msgstr "" @@ -1054,6 +991,221 @@ msgstr "" msgid "Embedding disabled" msgstr "" +#: ../../include/features.php:21 +msgid "General Features" +msgstr "" + +#: ../../include/features.php:23 +msgid "Content Expiration" +msgstr "" + +#: ../../include/features.php:23 +msgid "Remove posts/comments and/or private messages at a future time" +msgstr "" + +#: ../../include/features.php:24 +msgid "Multiple Profiles" +msgstr "" + +#: ../../include/features.php:24 +msgid "Ability to create multiple profiles" +msgstr "" + +#: ../../include/features.php:25 +msgid "Web Pages" +msgstr "" + +#: ../../include/features.php:25 +msgid "Provide managed web pages on your channel" +msgstr "" + +#: ../../include/features.php:26 +msgid "Private Notes" +msgstr "" + +#: ../../include/features.php:26 +msgid "Enables a tool to store notes and reminders" +msgstr "" + +#: ../../include/features.php:27 +msgid "Enhanced Photo Albums" +msgstr "" + +#: ../../include/features.php:27 +msgid "Enable photo album with enhanced features" +msgstr "" + +#: ../../include/features.php:29 +msgid "Extended Identity Sharing" +msgstr "" + +#: ../../include/features.php:30 +msgid "Expert Mode" +msgstr "" + +#: ../../include/features.php:30 +msgid "Enable Expert Mode to provide advanced configuration options" +msgstr "" + +#: ../../include/features.php:31 +msgid "Premium Channel" +msgstr "" + +#: ../../include/features.php:31 +msgid "" +"Allows you to set restrictions and terms on those that connect with your " +"channel" +msgstr "" + +#: ../../include/features.php:36 +msgid "Post Composition Features" +msgstr "" + +#: ../../include/features.php:37 +msgid "Richtext Editor" +msgstr "" + +#: ../../include/features.php:37 +msgid "Enable richtext editor" +msgstr "" + +#: ../../include/features.php:38 +msgid "Post Preview" +msgstr "" + +#: ../../include/features.php:38 +msgid "Allow previewing posts and comments before publishing them" +msgstr "" + +#: ../../include/features.php:39 ../../mod/settings.php:120 +#: ../../mod/sources.php:67 +msgid "Channel Sources" +msgstr "" + +#: ../../include/features.php:39 +msgid "Automatically import channel content from other channels or feeds" +msgstr "" + +#: ../../include/features.php:40 +msgid "Even More Encryption" +msgstr "" + +#: ../../include/features.php:40 +msgid "Allow encryption of content end-to-end with a shared secret key" +msgstr "" + +#: ../../include/features.php:45 +msgid "Network and Stream Filtering" +msgstr "" + +#: ../../include/features.php:46 +msgid "Search by Date" +msgstr "" + +#: ../../include/features.php:46 +msgid "Ability to select posts by date ranges" +msgstr "" + +#: ../../include/features.php:47 +msgid "Collections Filter" +msgstr "" + +#: ../../include/features.php:47 +msgid "Enable widget to display Network posts only from selected collections" +msgstr "" + +#: ../../include/features.php:48 +msgid "Save search terms for re-use" +msgstr "" + +#: ../../include/features.php:49 +msgid "Network Personal Tab" +msgstr "" + +#: ../../include/features.php:49 +msgid "Enable tab to display only Network posts that you've interacted on" +msgstr "" + +#: ../../include/features.php:50 +msgid "Network New Tab" +msgstr "" + +#: ../../include/features.php:50 +msgid "Enable tab to display all new Network activity" +msgstr "" + +#: ../../include/features.php:51 +msgid "Affinity Tool" +msgstr "" + +#: ../../include/features.php:51 +msgid "Filter stream activity by depth of relationships" +msgstr "" + +#: ../../include/features.php:52 +msgid "Suggest Channels" +msgstr "" + +#: ../../include/features.php:52 +msgid "Show channel suggestions" +msgstr "" + +#: ../../include/features.php:57 +msgid "Post/Comment Tools" +msgstr "" + +#: ../../include/features.php:59 +msgid "Edit Sent Posts" +msgstr "" + +#: ../../include/features.php:59 +msgid "Edit and correct posts and comments after sending" +msgstr "" + +#: ../../include/features.php:60 +msgid "Tagging" +msgstr "" + +#: ../../include/features.php:60 +msgid "Ability to tag existing posts" +msgstr "" + +#: ../../include/features.php:61 +msgid "Post Categories" +msgstr "" + +#: ../../include/features.php:61 +msgid "Add categories to your posts" +msgstr "" + +#: ../../include/features.php:62 +msgid "Ability to file posts under folders" +msgstr "" + +#: ../../include/features.php:63 +msgid "Dislike Posts" +msgstr "" + +#: ../../include/features.php:63 +msgid "Ability to dislike posts/comments" +msgstr "" + +#: ../../include/features.php:64 +msgid "Star Posts" +msgstr "" + +#: ../../include/features.php:64 +msgid "Ability to mark special posts with a star indicator" +msgstr "" + +#: ../../include/features.php:65 +msgid "Tag Cloud" +msgstr "" + +#: ../../include/features.php:65 +msgid "Provide a personal tag cloud on your channel page" +msgstr "" + #: ../../include/notify.php:23 msgid "created a new post" msgstr "" @@ -1068,30 +1220,29 @@ msgstr "" #: ../../include/attach.php:204 ../../include/attach.php:237 #: ../../include/attach.php:251 ../../include/attach.php:272 #: ../../include/attach.php:464 ../../include/attach.php:539 -#: ../../include/items.php:3412 ../../mod/common.php:43 -#: ../../mod/events.php:139 ../../mod/invite.php:13 ../../mod/invite.php:102 +#: ../../include/items.php:3429 ../../mod/common.php:35 +#: ../../mod/events.php:140 ../../mod/invite.php:13 ../../mod/invite.php:102 #: ../../mod/allfriends.php:10 ../../mod/webpages.php:40 ../../mod/api.php:26 -#: ../../mod/api.php:31 ../../mod/lastpost.php:93 ../../mod/page.php:30 -#: ../../mod/page.php:80 ../../mod/setup.php:200 ../../mod/settings.php:586 -#: ../../mod/viewconnections.php:33 ../../mod/viewconnections.php:38 -#: ../../mod/delegate.php:6 ../../mod/sources.php:48 ../../mod/mitem.php:92 +#: ../../mod/api.php:31 ../../mod/page.php:30 ../../mod/page.php:80 +#: ../../mod/setup.php:200 ../../mod/settings.php:586 +#: ../../mod/viewconnections.php:22 ../../mod/viewconnections.php:27 +#: ../../mod/delegate.php:6 ../../mod/sources.php:48 ../../mod/mitem.php:73 #: ../../mod/group.php:15 ../../mod/photos.php:74 ../../mod/photos.php:654 #: ../../mod/viewsrc.php:12 ../../mod/menu.php:40 ../../mod/message.php:208 #: ../../mod/layouts.php:27 ../../mod/layouts.php:42 ../../mod/network.php:12 -#: ../../mod/intro.php:50 ../../mod/profiles.php:163 -#: ../../mod/profiles.php:476 ../../mod/new_channel.php:66 -#: ../../mod/new_channel.php:97 ../../mod/connections.php:197 -#: ../../mod/filestorage.php:26 ../../mod/manage.php:6 -#: ../../mod/crepair.php:115 ../../mod/editlayout.php:48 -#: ../../mod/profile_photo.php:197 ../../mod/profile_photo.php:210 -#: ../../mod/editwebpage.php:42 ../../mod/editwebpage.php:64 +#: ../../mod/profiles.php:152 ../../mod/profiles.php:465 +#: ../../mod/new_channel.php:66 ../../mod/new_channel.php:97 +#: ../../mod/connections.php:201 ../../mod/filestorage.php:26 +#: ../../mod/manage.php:6 ../../mod/editlayout.php:48 +#: ../../mod/profile_photo.php:187 ../../mod/profile_photo.php:200 +#: ../../mod/editwebpage.php:44 ../../mod/editwebpage.php:83 #: ../../mod/notifications.php:66 ../../mod/blocks.php:29 #: ../../mod/blocks.php:44 ../../mod/editpost.php:13 ../../mod/poke.php:128 -#: ../../mod/channel.php:110 ../../mod/fsuggest.php:78 +#: ../../mod/channel.php:86 ../../mod/fsuggest.php:78 #: ../../mod/editblock.php:48 ../../mod/item.php:181 ../../mod/item.php:189 -#: ../../mod/suggest.php:32 ../../mod/register.php:68 ../../mod/regmod.php:18 +#: ../../mod/suggest.php:33 ../../mod/register.php:68 ../../mod/regmod.php:18 #: ../../mod/authtest.php:13 ../../mod/mood.php:114 ../../index.php:178 -#: ../../index.php:340 +#: ../../index.php:346 msgid "Permission denied." msgstr "" @@ -1104,7 +1255,7 @@ msgstr "" msgid "Image file is empty." msgstr "" -#: ../../include/photos.php:124 ../../mod/profile_photo.php:157 +#: ../../include/photos.php:124 ../../mod/profile_photo.php:147 msgid "Unable to process image" msgstr "" @@ -1112,7 +1263,7 @@ msgstr "" msgid "Photo storage failed." msgstr "" -#: ../../include/photos.php:288 ../../include/conversation.php:1453 +#: ../../include/photos.php:288 ../../include/conversation.php:1457 msgid "Photo Albums" msgstr "" @@ -1265,11 +1416,6 @@ msgstr "" msgid "Sex Addict" msgstr "" -#: ../../include/profile_selectors.php:42 ../../include/identity.php:298 -#: ../../mod/network.php:215 ../../mod/connections.php:407 -msgid "Friends" -msgstr "" - #: ../../include/profile_selectors.php:42 msgid "Friends/Benefits" msgstr "" @@ -1441,8 +1587,8 @@ msgstr "" msgid "Your posts and conversations" msgstr "" -#: ../../include/nav.php:76 ../../include/conversation.php:925 -#: ../../mod/connections.php:327 ../../mod/connections.php:441 +#: ../../include/nav.php:76 ../../include/conversation.php:929 +#: ../../mod/connections.php:331 ../../mod/connections.php:445 msgid "View Profile" msgstr "" @@ -1458,7 +1604,7 @@ msgstr "" msgid "Manage/Edit Profiles" msgstr "" -#: ../../include/nav.php:79 ../../include/conversation.php:1450 +#: ../../include/nav.php:79 ../../include/conversation.php:1454 #: ../../mod/fbrowser.php:25 msgid "Photos" msgstr "" @@ -1513,7 +1659,7 @@ msgid "Addon applications, utilities, games" msgstr "" #: ../../include/nav.php:135 ../../include/text.php:736 -#: ../../mod/search.php:96 +#: ../../include/text.php:750 ../../mod/search.php:96 msgid "Search" msgstr "" @@ -1521,7 +1667,7 @@ msgstr "" msgid "Search site content" msgstr "" -#: ../../include/nav.php:138 ../../mod/directory.php:225 +#: ../../include/nav.php:138 ../../mod/directory.php:228 msgid "Directory" msgstr "" @@ -1538,143 +1684,163 @@ msgid "Your matrix" msgstr "" #: ../../include/nav.php:150 -msgid "See all matrix notifications" -msgstr "" - -#: ../../include/nav.php:151 msgid "Mark all matrix notifications seen" msgstr "" -#: ../../include/nav.php:153 +#: ../../include/nav.php:152 msgid "Channel Home" msgstr "" -#: ../../include/nav.php:153 +#: ../../include/nav.php:152 msgid "Channel home" msgstr "" -#: ../../include/nav.php:154 -msgid "See all channel notifications" -msgstr "" - -#: ../../include/nav.php:155 +#: ../../include/nav.php:153 msgid "Mark all channel notifications seen" msgstr "" -#: ../../include/nav.php:158 +#: ../../include/nav.php:156 msgid "Intros" msgstr "" -#: ../../include/nav.php:158 ../../mod/connections.php:585 +#: ../../include/nav.php:156 ../../mod/connections.php:589 msgid "New Connections" msgstr "" #: ../../include/nav.php:159 -msgid "See all channel introductions" -msgstr "" - -#: ../../include/nav.php:162 msgid "Notices" msgstr "" -#: ../../include/nav.php:162 ../../mod/notifications.php:218 +#: ../../include/nav.php:159 msgid "Notifications" msgstr "" -#: ../../include/nav.php:163 +#: ../../include/nav.php:160 msgid "See all notifications" msgstr "" -#: ../../include/nav.php:164 +#: ../../include/nav.php:161 msgid "Mark all system notifications seen" msgstr "" -#: ../../include/nav.php:166 +#: ../../include/nav.php:163 msgid "Mail" msgstr "" -#: ../../include/nav.php:166 +#: ../../include/nav.php:163 msgid "Private mail" msgstr "" -#: ../../include/nav.php:167 +#: ../../include/nav.php:164 msgid "See all private messages" msgstr "" -#: ../../include/nav.php:168 +#: ../../include/nav.php:165 msgid "Mark all private messages seen" msgstr "" -#: ../../include/nav.php:169 +#: ../../include/nav.php:166 msgid "Inbox" msgstr "" -#: ../../include/nav.php:170 +#: ../../include/nav.php:167 msgid "Outbox" msgstr "" -#: ../../include/nav.php:171 ../../mod/message.php:24 +#: ../../include/nav.php:168 ../../mod/message.php:24 msgid "New Message" msgstr "" -#: ../../include/nav.php:174 ../../include/conversation.php:1461 -#: ../../mod/events.php:353 +#: ../../include/nav.php:171 ../../include/conversation.php:1465 +#: ../../mod/events.php:354 msgid "Events" msgstr "" -#: ../../include/nav.php:174 +#: ../../include/nav.php:171 msgid "Event Calendar" msgstr "" -#: ../../include/nav.php:175 +#: ../../include/nav.php:172 msgid "See all events" msgstr "" -#: ../../include/nav.php:176 +#: ../../include/nav.php:173 msgid "Mark all events seen" msgstr "" -#: ../../include/nav.php:178 +#: ../../include/nav.php:175 msgid "Channel Select" msgstr "" -#: ../../include/nav.php:178 +#: ../../include/nav.php:175 msgid "Manage Your Channels" msgstr "" -#: ../../include/nav.php:180 ../../mod/settings.php:131 -#: ../../mod/admin.php:782 ../../mod/admin.php:987 +#: ../../include/nav.php:177 ../../mod/settings.php:131 +#: ../../mod/admin.php:785 ../../mod/admin.php:990 msgid "Settings" msgstr "" -#: ../../include/nav.php:180 +#: ../../include/nav.php:177 msgid "Account/Channel Settings" msgstr "" -#: ../../include/nav.php:182 ../../mod/connections.php:690 +#: ../../include/nav.php:179 ../../mod/connections.php:694 msgid "Connections" msgstr "" -#: ../../include/nav.php:182 +#: ../../include/nav.php:179 msgid "Manage/Edit Friends and Connections" msgstr "" -#: ../../include/nav.php:189 ../../mod/admin.php:111 +#: ../../include/nav.php:186 ../../mod/admin.php:111 msgid "Admin" msgstr "" -#: ../../include/nav.php:189 +#: ../../include/nav.php:186 msgid "Site Setup and Configuration" msgstr "" -#: ../../include/nav.php:215 +#: ../../include/nav.php:212 msgid "Nothing new here" msgstr "" -#: ../../include/nav.php:220 +#: ../../include/nav.php:217 msgid "Please wait..." msgstr "" +#: ../../include/taxonomy.php:210 +msgid "Tags" +msgstr "" + +#: ../../include/taxonomy.php:224 +msgid "Keywords" +msgstr "" + +#: ../../include/taxonomy.php:249 +msgid "have" +msgstr "" + +#: ../../include/taxonomy.php:249 +msgid "has" +msgstr "" + +#: ../../include/taxonomy.php:250 +msgid "want" +msgstr "" + +#: ../../include/taxonomy.php:250 +msgid "wants" +msgstr "" + +#: ../../include/taxonomy.php:251 +msgid "likes" +msgstr "" + +#: ../../include/taxonomy.php:252 +msgid "dislikes" +msgstr "" + #: ../../include/account.php:23 msgid "Not a valid email address" msgstr "" @@ -1731,12 +1897,12 @@ msgstr "" msgid "Registration revoked for %s" msgstr "" -#: ../../include/conversation.php:117 ../../include/text.php:1609 +#: ../../include/conversation.php:117 ../../include/text.php:1621 #: ../../mod/like.php:103 ../../mod/subthread.php:89 ../../mod/tagger.php:45 msgid "photo" msgstr "" -#: ../../include/conversation.php:120 ../../include/text.php:1612 +#: ../../include/conversation.php:120 ../../include/text.php:1624 #: ../../mod/tagger.php:49 msgid "event" msgstr "" @@ -1745,12 +1911,12 @@ msgstr "" msgid "channel" msgstr "" -#: ../../include/conversation.php:145 ../../include/text.php:1615 +#: ../../include/conversation.php:145 ../../include/text.php:1627 #: ../../mod/like.php:103 ../../mod/subthread.php:89 ../../mod/tagger.php:53 msgid "status" msgstr "" -#: ../../include/conversation.php:147 ../../include/text.php:1617 +#: ../../include/conversation.php:147 ../../include/text.php:1629 #: ../../mod/tagger.php:55 msgid "comment" msgstr "" @@ -1770,352 +1936,352 @@ msgstr "" msgid "%1$s is now connected with %2$s" msgstr "" -#: ../../include/conversation.php:232 +#: ../../include/conversation.php:236 #, php-format msgid "%1$s poked %2$s" msgstr "" -#: ../../include/conversation.php:236 ../../include/text.php:776 +#: ../../include/conversation.php:240 ../../include/text.php:790 msgid "poked" msgstr "" -#: ../../include/conversation.php:254 ../../mod/mood.php:63 +#: ../../include/conversation.php:258 ../../mod/mood.php:63 #, php-format msgid "%1$s is currently %2$s" msgstr "" -#: ../../include/conversation.php:658 +#: ../../include/conversation.php:662 #, php-format msgid "View %s's profile @ %s" msgstr "" -#: ../../include/conversation.php:672 +#: ../../include/conversation.php:676 msgid "Categories:" msgstr "" -#: ../../include/conversation.php:673 +#: ../../include/conversation.php:677 msgid "Filed under:" msgstr "" -#: ../../include/conversation.php:700 +#: ../../include/conversation.php:704 msgid "View in context" msgstr "" -#: ../../include/conversation.php:826 +#: ../../include/conversation.php:830 msgid "remove" msgstr "" -#: ../../include/conversation.php:830 +#: ../../include/conversation.php:834 msgid "Loading..." msgstr "" -#: ../../include/conversation.php:831 +#: ../../include/conversation.php:835 msgid "Delete Selected Items" msgstr "" -#: ../../include/conversation.php:922 +#: ../../include/conversation.php:926 msgid "View Source" msgstr "" -#: ../../include/conversation.php:923 +#: ../../include/conversation.php:927 msgid "Follow Thread" msgstr "" -#: ../../include/conversation.php:924 +#: ../../include/conversation.php:928 msgid "View Status" msgstr "" -#: ../../include/conversation.php:926 +#: ../../include/conversation.php:930 msgid "View Photos" msgstr "" -#: ../../include/conversation.php:927 +#: ../../include/conversation.php:931 msgid "Matrix Activity" msgstr "" -#: ../../include/conversation.php:928 +#: ../../include/conversation.php:932 msgid "Edit Contact" msgstr "" -#: ../../include/conversation.php:929 +#: ../../include/conversation.php:933 msgid "Send PM" msgstr "" -#: ../../include/conversation.php:930 +#: ../../include/conversation.php:934 msgid "Poke" msgstr "" -#: ../../include/conversation.php:992 +#: ../../include/conversation.php:996 #, php-format msgid "%s likes this." msgstr "" -#: ../../include/conversation.php:992 +#: ../../include/conversation.php:996 #, php-format msgid "%s doesn't like this." msgstr "" -#: ../../include/conversation.php:996 +#: ../../include/conversation.php:1000 #, php-format msgid "%2$d people like this." msgid_plural "%2$d people like this." msgstr[0] "" msgstr[1] "" -#: ../../include/conversation.php:998 +#: ../../include/conversation.php:1002 #, php-format msgid "%2$d people don't like this." msgid_plural "%2$d people don't like this." msgstr[0] "" msgstr[1] "" -#: ../../include/conversation.php:1004 +#: ../../include/conversation.php:1008 msgid "and" msgstr "" -#: ../../include/conversation.php:1007 +#: ../../include/conversation.php:1011 #, php-format msgid ", and %d other people" msgid_plural ", and %d other people" msgstr[0] "" msgstr[1] "" -#: ../../include/conversation.php:1008 +#: ../../include/conversation.php:1012 #, php-format msgid "%s like this." msgstr "" -#: ../../include/conversation.php:1008 +#: ../../include/conversation.php:1012 #, php-format msgid "%s don't like this." msgstr "" -#: ../../include/conversation.php:1058 +#: ../../include/conversation.php:1062 msgid "Visible to everybody" msgstr "" -#: ../../include/conversation.php:1059 ../../mod/message.php:281 +#: ../../include/conversation.php:1063 ../../mod/message.php:281 #: ../../mod/message.php:417 msgid "Please enter a link URL:" msgstr "" -#: ../../include/conversation.php:1060 +#: ../../include/conversation.php:1064 msgid "Please enter a video link/URL:" msgstr "" -#: ../../include/conversation.php:1061 +#: ../../include/conversation.php:1065 msgid "Please enter an audio link/URL:" msgstr "" -#: ../../include/conversation.php:1062 +#: ../../include/conversation.php:1066 msgid "Tag term:" msgstr "" -#: ../../include/conversation.php:1063 ../../mod/filer.php:35 +#: ../../include/conversation.php:1067 ../../mod/filer.php:35 msgid "Save to Folder:" msgstr "" -#: ../../include/conversation.php:1064 +#: ../../include/conversation.php:1068 msgid "Where are you right now?" msgstr "" -#: ../../include/conversation.php:1065 ../../mod/message.php:282 +#: ../../include/conversation.php:1069 ../../mod/message.php:282 #: ../../mod/message.php:418 ../../mod/editpost.php:52 msgid "Expires YYYY-MM-DD HH:MM" msgstr "" -#: ../../include/conversation.php:1089 ../../mod/photos.php:1071 +#: ../../include/conversation.php:1093 ../../mod/photos.php:1071 msgid "Share" msgstr "" -#: ../../include/conversation.php:1091 +#: ../../include/conversation.php:1095 ../../mod/editwebpage.php:139 msgid "Page link title" msgstr "" -#: ../../include/conversation.php:1093 ../../mod/message.php:329 -#: ../../mod/message.php:512 ../../mod/editlayout.php:101 -#: ../../mod/editwebpage.php:120 ../../mod/editpost.php:98 +#: ../../include/conversation.php:1097 ../../mod/message.php:329 +#: ../../mod/message.php:480 ../../mod/editlayout.php:101 +#: ../../mod/editwebpage.php:144 ../../mod/editpost.php:98 #: ../../mod/editblock.php:115 msgid "Upload photo" msgstr "" -#: ../../include/conversation.php:1094 +#: ../../include/conversation.php:1098 msgid "upload photo" msgstr "" -#: ../../include/conversation.php:1095 ../../mod/message.php:330 -#: ../../mod/message.php:513 ../../mod/editlayout.php:102 -#: ../../mod/editwebpage.php:121 ../../mod/editpost.php:99 +#: ../../include/conversation.php:1099 ../../mod/message.php:330 +#: ../../mod/message.php:481 ../../mod/editlayout.php:102 +#: ../../mod/editwebpage.php:145 ../../mod/editpost.php:99 #: ../../mod/editblock.php:116 msgid "Attach file" msgstr "" -#: ../../include/conversation.php:1096 +#: ../../include/conversation.php:1100 msgid "attach file" msgstr "" -#: ../../include/conversation.php:1097 ../../mod/message.php:331 -#: ../../mod/message.php:514 ../../mod/editlayout.php:103 -#: ../../mod/editwebpage.php:122 ../../mod/editpost.php:100 +#: ../../include/conversation.php:1101 ../../mod/message.php:331 +#: ../../mod/message.php:482 ../../mod/editlayout.php:103 +#: ../../mod/editwebpage.php:146 ../../mod/editpost.php:100 #: ../../mod/editblock.php:117 msgid "Insert web link" msgstr "" -#: ../../include/conversation.php:1098 +#: ../../include/conversation.php:1102 msgid "web link" msgstr "" -#: ../../include/conversation.php:1099 +#: ../../include/conversation.php:1103 msgid "Insert video link" msgstr "" -#: ../../include/conversation.php:1100 +#: ../../include/conversation.php:1104 msgid "video link" msgstr "" -#: ../../include/conversation.php:1101 +#: ../../include/conversation.php:1105 msgid "Insert audio link" msgstr "" -#: ../../include/conversation.php:1102 +#: ../../include/conversation.php:1106 msgid "audio link" msgstr "" -#: ../../include/conversation.php:1103 ../../mod/editlayout.php:107 -#: ../../mod/editwebpage.php:126 ../../mod/editpost.php:104 +#: ../../include/conversation.php:1107 ../../mod/editlayout.php:107 +#: ../../mod/editwebpage.php:150 ../../mod/editpost.php:104 #: ../../mod/editblock.php:121 msgid "Set your location" msgstr "" -#: ../../include/conversation.php:1104 +#: ../../include/conversation.php:1108 msgid "set location" msgstr "" -#: ../../include/conversation.php:1105 ../../mod/editlayout.php:108 -#: ../../mod/editwebpage.php:127 ../../mod/editpost.php:105 +#: ../../include/conversation.php:1109 ../../mod/editlayout.php:108 +#: ../../mod/editwebpage.php:151 ../../mod/editpost.php:105 #: ../../mod/editblock.php:122 msgid "Clear browser location" msgstr "" -#: ../../include/conversation.php:1106 +#: ../../include/conversation.php:1110 msgid "clear location" msgstr "" -#: ../../include/conversation.php:1108 ../../mod/editlayout.php:121 -#: ../../mod/editwebpage.php:142 ../../mod/editpost.php:118 +#: ../../include/conversation.php:1112 ../../mod/editlayout.php:121 +#: ../../mod/editwebpage.php:168 ../../mod/editpost.php:118 #: ../../mod/editblock.php:136 msgid "Set title" msgstr "" -#: ../../include/conversation.php:1111 ../../mod/editlayout.php:123 -#: ../../mod/editwebpage.php:144 ../../mod/editpost.php:120 +#: ../../include/conversation.php:1115 ../../mod/editlayout.php:123 +#: ../../mod/editwebpage.php:170 ../../mod/editpost.php:120 #: ../../mod/editblock.php:138 msgid "Categories (comma-separated list)" msgstr "" -#: ../../include/conversation.php:1113 ../../mod/editlayout.php:110 -#: ../../mod/editwebpage.php:129 ../../mod/editpost.php:107 +#: ../../include/conversation.php:1117 ../../mod/editlayout.php:110 +#: ../../mod/editwebpage.php:153 ../../mod/editpost.php:107 #: ../../mod/editblock.php:124 msgid "Permission settings" msgstr "" -#: ../../include/conversation.php:1114 +#: ../../include/conversation.php:1118 msgid "permissions" msgstr "" -#: ../../include/conversation.php:1122 ../../mod/editlayout.php:118 -#: ../../mod/editwebpage.php:137 ../../mod/editpost.php:115 +#: ../../include/conversation.php:1126 ../../mod/editlayout.php:118 +#: ../../mod/editwebpage.php:163 ../../mod/editpost.php:115 #: ../../mod/editblock.php:133 msgid "Public post" msgstr "" -#: ../../include/conversation.php:1124 ../../mod/editlayout.php:124 -#: ../../mod/editwebpage.php:145 ../../mod/editpost.php:121 +#: ../../include/conversation.php:1128 ../../mod/editlayout.php:124 +#: ../../mod/editwebpage.php:171 ../../mod/editpost.php:121 #: ../../mod/editblock.php:139 msgid "Example: bob@example.com, mary@example.com" msgstr "" -#: ../../include/conversation.php:1137 ../../mod/message.php:336 -#: ../../mod/message.php:519 ../../mod/editlayout.php:134 -#: ../../mod/editwebpage.php:155 ../../mod/editpost.php:132 +#: ../../include/conversation.php:1141 ../../mod/message.php:336 +#: ../../mod/message.php:487 ../../mod/editlayout.php:134 +#: ../../mod/editwebpage.php:181 ../../mod/editpost.php:132 #: ../../mod/editblock.php:149 msgid "Set expiration date" msgstr "" -#: ../../include/conversation.php:1364 +#: ../../include/conversation.php:1368 msgid "Commented Order" msgstr "" -#: ../../include/conversation.php:1367 +#: ../../include/conversation.php:1371 msgid "Sort by Comment Date" msgstr "" -#: ../../include/conversation.php:1370 +#: ../../include/conversation.php:1374 msgid "Posted Order" msgstr "" -#: ../../include/conversation.php:1373 +#: ../../include/conversation.php:1377 msgid "Sort by Post Date" msgstr "" -#: ../../include/conversation.php:1377 ../../mod/notifications.php:86 +#: ../../include/conversation.php:1381 msgid "Personal" msgstr "" -#: ../../include/conversation.php:1380 +#: ../../include/conversation.php:1384 msgid "Posts that mention or involve you" msgstr "" -#: ../../include/conversation.php:1383 ../../mod/menu.php:57 -#: ../../mod/connections.php:552 +#: ../../include/conversation.php:1387 ../../mod/menu.php:57 +#: ../../mod/connections.php:556 msgid "New" msgstr "" -#: ../../include/conversation.php:1386 +#: ../../include/conversation.php:1390 msgid "Activity Stream - by date" msgstr "" -#: ../../include/conversation.php:1393 +#: ../../include/conversation.php:1397 msgid "Starred" msgstr "" -#: ../../include/conversation.php:1396 +#: ../../include/conversation.php:1400 msgid "Favourite Posts" msgstr "" -#: ../../include/conversation.php:1403 +#: ../../include/conversation.php:1407 msgid "Spam" msgstr "" -#: ../../include/conversation.php:1406 +#: ../../include/conversation.php:1410 msgid "Posts flagged as SPAM" msgstr "" -#: ../../include/conversation.php:1436 +#: ../../include/conversation.php:1440 msgid "Channel" msgstr "" -#: ../../include/conversation.php:1439 +#: ../../include/conversation.php:1443 msgid "Status Messages and Posts" msgstr "" -#: ../../include/conversation.php:1443 +#: ../../include/conversation.php:1447 msgid "About" msgstr "" -#: ../../include/conversation.php:1446 +#: ../../include/conversation.php:1450 msgid "Profile Details" msgstr "" -#: ../../include/conversation.php:1464 +#: ../../include/conversation.php:1468 msgid "Events and Calendar" msgstr "" -#: ../../include/conversation.php:1469 +#: ../../include/conversation.php:1473 msgid "Webpages" msgstr "" -#: ../../include/conversation.php:1472 +#: ../../include/conversation.php:1476 msgid "Manage Webpages" msgstr "" @@ -2133,70 +2299,45 @@ msgstr "" #: ../../include/contact_widgets.php:14 #, php-format -msgid "You have %1$.0f of %2$.0f allowed connections." -msgstr "" - -#: ../../include/contact_widgets.php:20 -msgid "Add New Connection" -msgstr "" - -#: ../../include/contact_widgets.php:21 -msgid "Enter the channel address" -msgstr "" - -#: ../../include/contact_widgets.php:22 -msgid "Example: bob@example.com, http://example.com/barbara" -msgstr "" - -#: ../../include/contact_widgets.php:38 -#, php-format msgid "%d invitation available" msgid_plural "%d invitations available" msgstr[0] "" msgstr[1] "" -#: ../../include/contact_widgets.php:44 +#: ../../include/contact_widgets.php:20 msgid "Find Channels" msgstr "" -#: ../../include/contact_widgets.php:45 +#: ../../include/contact_widgets.php:21 msgid "Enter name or interest" msgstr "" -#: ../../include/contact_widgets.php:46 +#: ../../include/contact_widgets.php:22 msgid "Connect/Follow" msgstr "" -#: ../../include/contact_widgets.php:47 +#: ../../include/contact_widgets.php:23 msgid "Examples: Robert Morgenstein, Fishing" msgstr "" -#: ../../include/contact_widgets.php:48 ../../mod/connections.php:696 -#: ../../mod/directory.php:221 ../../mod/directory.php:226 +#: ../../include/contact_widgets.php:24 ../../mod/connections.php:700 +#: ../../mod/directory.php:224 ../../mod/directory.php:229 msgid "Find" msgstr "" -#: ../../include/contact_widgets.php:49 ../../mod/suggest.php:64 +#: ../../include/contact_widgets.php:25 ../../mod/suggest.php:66 msgid "Channel Suggestions" msgstr "" -#: ../../include/contact_widgets.php:51 +#: ../../include/contact_widgets.php:27 msgid "Random Profile" msgstr "" -#: ../../include/contact_widgets.php:52 +#: ../../include/contact_widgets.php:28 msgid "Invite Friends" msgstr "" -#: ../../include/contact_widgets.php:79 ../../include/contact_widgets.php:113 -msgid "Everything" -msgstr "" - -#: ../../include/contact_widgets.php:110 ../../include/widgets.php:26 -msgid "Categories" -msgstr "" - -#: ../../include/contact_widgets.php:143 +#: ../../include/contact_widgets.php:119 #, php-format msgid "%d connection in common" msgid_plural "%d connections in common" @@ -2246,274 +2387,282 @@ msgstr[1] "" msgid "View Connections" msgstr "" -#: ../../include/text.php:738 ../../mod/filer.php:36 -msgid "Save" -msgstr "" - -#: ../../include/text.php:776 +#: ../../include/text.php:790 msgid "poke" msgstr "" -#: ../../include/text.php:777 +#: ../../include/text.php:791 msgid "ping" msgstr "" -#: ../../include/text.php:777 +#: ../../include/text.php:791 msgid "pinged" msgstr "" -#: ../../include/text.php:778 +#: ../../include/text.php:792 msgid "prod" msgstr "" -#: ../../include/text.php:778 +#: ../../include/text.php:792 msgid "prodded" msgstr "" -#: ../../include/text.php:779 +#: ../../include/text.php:793 msgid "slap" msgstr "" -#: ../../include/text.php:779 +#: ../../include/text.php:793 msgid "slapped" msgstr "" -#: ../../include/text.php:780 +#: ../../include/text.php:794 msgid "finger" msgstr "" -#: ../../include/text.php:780 +#: ../../include/text.php:794 msgid "fingered" msgstr "" -#: ../../include/text.php:781 +#: ../../include/text.php:795 msgid "rebuff" msgstr "" -#: ../../include/text.php:781 +#: ../../include/text.php:795 msgid "rebuffed" msgstr "" -#: ../../include/text.php:793 +#: ../../include/text.php:807 msgid "happy" msgstr "" -#: ../../include/text.php:794 +#: ../../include/text.php:808 msgid "sad" msgstr "" -#: ../../include/text.php:795 +#: ../../include/text.php:809 msgid "mellow" msgstr "" -#: ../../include/text.php:796 +#: ../../include/text.php:810 msgid "tired" msgstr "" -#: ../../include/text.php:797 +#: ../../include/text.php:811 msgid "perky" msgstr "" -#: ../../include/text.php:798 +#: ../../include/text.php:812 msgid "angry" msgstr "" -#: ../../include/text.php:799 +#: ../../include/text.php:813 msgid "stupified" msgstr "" -#: ../../include/text.php:800 +#: ../../include/text.php:814 msgid "puzzled" msgstr "" -#: ../../include/text.php:801 +#: ../../include/text.php:815 msgid "interested" msgstr "" -#: ../../include/text.php:802 +#: ../../include/text.php:816 msgid "bitter" msgstr "" -#: ../../include/text.php:803 +#: ../../include/text.php:817 msgid "cheerful" msgstr "" -#: ../../include/text.php:804 +#: ../../include/text.php:818 msgid "alive" msgstr "" -#: ../../include/text.php:805 +#: ../../include/text.php:819 msgid "annoyed" msgstr "" -#: ../../include/text.php:806 +#: ../../include/text.php:820 msgid "anxious" msgstr "" -#: ../../include/text.php:807 +#: ../../include/text.php:821 msgid "cranky" msgstr "" -#: ../../include/text.php:808 +#: ../../include/text.php:822 msgid "disturbed" msgstr "" -#: ../../include/text.php:809 +#: ../../include/text.php:823 msgid "frustrated" msgstr "" -#: ../../include/text.php:810 +#: ../../include/text.php:824 msgid "motivated" msgstr "" -#: ../../include/text.php:811 +#: ../../include/text.php:825 msgid "relaxed" msgstr "" -#: ../../include/text.php:812 +#: ../../include/text.php:826 msgid "surprised" msgstr "" -#: ../../include/text.php:976 +#: ../../include/text.php:988 msgid "Monday" msgstr "" -#: ../../include/text.php:976 +#: ../../include/text.php:988 msgid "Tuesday" msgstr "" -#: ../../include/text.php:976 +#: ../../include/text.php:988 msgid "Wednesday" msgstr "" -#: ../../include/text.php:976 +#: ../../include/text.php:988 msgid "Thursday" msgstr "" -#: ../../include/text.php:976 +#: ../../include/text.php:988 msgid "Friday" msgstr "" -#: ../../include/text.php:976 +#: ../../include/text.php:988 msgid "Saturday" msgstr "" -#: ../../include/text.php:976 +#: ../../include/text.php:988 msgid "Sunday" msgstr "" -#: ../../include/text.php:980 +#: ../../include/text.php:992 msgid "January" msgstr "" -#: ../../include/text.php:980 +#: ../../include/text.php:992 msgid "February" msgstr "" -#: ../../include/text.php:980 +#: ../../include/text.php:992 msgid "March" msgstr "" -#: ../../include/text.php:980 +#: ../../include/text.php:992 msgid "April" msgstr "" -#: ../../include/text.php:980 +#: ../../include/text.php:992 msgid "May" msgstr "" -#: ../../include/text.php:980 +#: ../../include/text.php:992 msgid "June" msgstr "" -#: ../../include/text.php:980 +#: ../../include/text.php:992 msgid "July" msgstr "" -#: ../../include/text.php:980 +#: ../../include/text.php:992 msgid "August" msgstr "" -#: ../../include/text.php:980 +#: ../../include/text.php:992 msgid "September" msgstr "" -#: ../../include/text.php:980 +#: ../../include/text.php:992 msgid "October" msgstr "" -#: ../../include/text.php:980 +#: ../../include/text.php:992 msgid "November" msgstr "" -#: ../../include/text.php:980 +#: ../../include/text.php:992 msgid "December" msgstr "" -#: ../../include/text.php:1058 ../../mod/message.php:453 +#: ../../include/text.php:1070 msgid "unknown.???" msgstr "" -#: ../../include/text.php:1059 ../../mod/message.php:454 +#: ../../include/text.php:1071 msgid "bytes" msgstr "" -#: ../../include/text.php:1094 +#: ../../include/text.php:1106 msgid "remove category" msgstr "" -#: ../../include/text.php:1116 +#: ../../include/text.php:1128 msgid "remove from file" msgstr "" -#: ../../include/text.php:1170 ../../include/text.php:1182 +#: ../../include/text.php:1182 ../../include/text.php:1194 msgid "Click to open/close" msgstr "" -#: ../../include/text.php:1358 ../../mod/events.php:331 +#: ../../include/text.php:1370 ../../mod/events.php:332 msgid "link to source" msgstr "" -#: ../../include/text.php:1377 +#: ../../include/text.php:1389 msgid "Select a page layout: " msgstr "" -#: ../../include/text.php:1380 ../../include/text.php:1445 +#: ../../include/text.php:1392 ../../include/text.php:1457 msgid "default" msgstr "" -#: ../../include/text.php:1416 +#: ../../include/text.php:1428 msgid "Page content type: " msgstr "" -#: ../../include/text.php:1457 +#: ../../include/text.php:1469 msgid "Select an alternate language" msgstr "" -#: ../../include/text.php:1622 +#: ../../include/text.php:1634 msgid "activity" msgstr "" -#: ../../include/text.php:1884 +#: ../../include/text.php:1896 msgid "Design" msgstr "" -#: ../../include/text.php:1886 +#: ../../include/text.php:1898 msgid "Blocks" msgstr "" -#: ../../include/text.php:1887 +#: ../../include/text.php:1899 msgid "Menus" msgstr "" -#: ../../include/text.php:1888 +#: ../../include/text.php:1900 msgid "Layouts" msgstr "" -#: ../../include/text.php:1889 +#: ../../include/text.php:1901 msgid "Pages" msgstr "" +#: ../../include/plugin.php:475 ../../include/plugin.php:477 +msgid "Click here to upgrade." +msgstr "" + +#: ../../include/plugin.php:483 +msgid "This action exceeds the limits set by your subscription plan." +msgstr "" + +#: ../../include/plugin.php:488 +msgid "This action is not available under your subscription plan." +msgstr "" + #: ../../include/follow.php:21 msgid "Channel is blocked on this site." msgstr "" @@ -2626,56 +2775,12 @@ msgstr "" msgid "Extremely advanced. Leave this alone unless you know what you are doing" msgstr "" -#: ../../include/taxonomy.php:210 -msgid "Tags" -msgstr "" - -#: ../../include/taxonomy.php:224 -msgid "Keywords" -msgstr "" - -#: ../../include/taxonomy.php:249 -msgid "have" -msgstr "" - -#: ../../include/taxonomy.php:249 -msgid "has" -msgstr "" - -#: ../../include/taxonomy.php:250 -msgid "want" -msgstr "" - -#: ../../include/taxonomy.php:250 -msgid "wants" -msgstr "" - -#: ../../include/taxonomy.php:251 -msgid "likes" -msgstr "" - -#: ../../include/taxonomy.php:252 -msgid "dislikes" -msgstr "" - -#: ../../include/plugin.php:475 ../../include/plugin.php:477 -msgid "Click here to upgrade." -msgstr "" - -#: ../../include/plugin.php:483 -msgid "This action exceeds the limits set by your subscription plan." -msgstr "" - -#: ../../include/plugin.php:488 -msgid "This action is not available under your subscription plan." -msgstr "" - #: ../../include/comanche.php:35 ../../view/theme/redbasic/php/config.php:62 #: ../../view/theme/apw/php/config.php:176 msgid "Default" msgstr "" -#: ../../include/identity.php:29 ../../mod/item.php:1148 +#: ../../include/identity.php:29 ../../mod/item.php:1151 msgid "Unable to obtain identity information from database" msgstr "" @@ -2723,7 +2828,7 @@ msgstr "" msgid "Requested profile is not available." msgstr "" -#: ../../include/identity.php:627 ../../mod/profiles.php:624 +#: ../../include/identity.php:627 ../../mod/profiles.php:613 msgid "Change profile photo" msgstr "" @@ -2735,7 +2840,7 @@ msgstr "" msgid "Manage/edit profiles" msgstr "" -#: ../../include/identity.php:634 ../../mod/profiles.php:625 +#: ../../include/identity.php:634 ../../mod/profiles.php:614 msgid "Create New Profile" msgstr "" @@ -2743,162 +2848,162 @@ msgstr "" msgid "Edit Profile" msgstr "" -#: ../../include/identity.php:648 ../../mod/profiles.php:636 +#: ../../include/identity.php:648 ../../mod/profiles.php:625 msgid "Profile Image" msgstr "" -#: ../../include/identity.php:651 ../../mod/profiles.php:639 +#: ../../include/identity.php:651 ../../mod/profiles.php:628 msgid "visible to everybody" msgstr "" -#: ../../include/identity.php:652 ../../mod/profiles.php:640 +#: ../../include/identity.php:652 ../../mod/profiles.php:629 msgid "Edit visibility" msgstr "" -#: ../../include/identity.php:665 ../../include/identity.php:883 -#: ../../mod/directory.php:175 +#: ../../include/identity.php:666 ../../include/identity.php:891 +#: ../../mod/directory.php:176 msgid "Gender:" msgstr "" -#: ../../include/identity.php:666 ../../include/identity.php:903 -#: ../../mod/directory.php:177 +#: ../../include/identity.php:667 ../../include/identity.php:911 +#: ../../mod/directory.php:178 msgid "Status:" msgstr "" -#: ../../include/identity.php:667 ../../include/identity.php:914 -#: ../../mod/directory.php:179 +#: ../../include/identity.php:668 ../../include/identity.php:922 +#: ../../mod/directory.php:180 msgid "Homepage:" msgstr "" -#: ../../include/identity.php:730 ../../include/identity.php:810 +#: ../../include/identity.php:735 ../../include/identity.php:815 #: ../../mod/ping.php:230 msgid "g A l F d" msgstr "" -#: ../../include/identity.php:731 ../../include/identity.php:811 +#: ../../include/identity.php:736 ../../include/identity.php:816 msgid "F d" msgstr "" -#: ../../include/identity.php:776 ../../include/identity.php:851 +#: ../../include/identity.php:781 ../../include/identity.php:856 #: ../../mod/ping.php:252 msgid "[today]" msgstr "" -#: ../../include/identity.php:788 +#: ../../include/identity.php:793 msgid "Birthday Reminders" msgstr "" -#: ../../include/identity.php:789 +#: ../../include/identity.php:794 msgid "Birthdays this week:" msgstr "" -#: ../../include/identity.php:844 +#: ../../include/identity.php:849 msgid "[No description]" msgstr "" -#: ../../include/identity.php:862 +#: ../../include/identity.php:867 msgid "Event Reminders" msgstr "" -#: ../../include/identity.php:863 +#: ../../include/identity.php:868 msgid "Events this week:" msgstr "" -#: ../../include/identity.php:873 ../../include/identity.php:984 -#: ../../mod/profperm.php:112 +#: ../../include/identity.php:881 ../../include/identity.php:992 +#: ../../mod/profperm.php:103 msgid "Profile" msgstr "" -#: ../../include/identity.php:881 ../../mod/settings.php:1013 +#: ../../include/identity.php:889 ../../mod/settings.php:1013 msgid "Full Name:" msgstr "" -#: ../../include/identity.php:888 +#: ../../include/identity.php:896 msgid "j F, Y" msgstr "" -#: ../../include/identity.php:889 +#: ../../include/identity.php:897 msgid "j F" msgstr "" -#: ../../include/identity.php:896 +#: ../../include/identity.php:904 msgid "Birthday:" msgstr "" -#: ../../include/identity.php:900 +#: ../../include/identity.php:908 msgid "Age:" msgstr "" -#: ../../include/identity.php:909 +#: ../../include/identity.php:917 #, php-format msgid "for %1$d %2$s" msgstr "" -#: ../../include/identity.php:912 ../../mod/profiles.php:549 +#: ../../include/identity.php:920 ../../mod/profiles.php:538 msgid "Sexual Preference:" msgstr "" -#: ../../include/identity.php:916 ../../mod/profiles.php:551 +#: ../../include/identity.php:924 ../../mod/profiles.php:540 msgid "Hometown:" msgstr "" -#: ../../include/identity.php:918 +#: ../../include/identity.php:926 msgid "Tags:" msgstr "" -#: ../../include/identity.php:920 ../../mod/profiles.php:552 +#: ../../include/identity.php:928 ../../mod/profiles.php:541 msgid "Political Views:" msgstr "" -#: ../../include/identity.php:922 +#: ../../include/identity.php:930 msgid "Religion:" msgstr "" -#: ../../include/identity.php:924 ../../mod/directory.php:181 +#: ../../include/identity.php:932 ../../mod/directory.php:182 msgid "About:" msgstr "" -#: ../../include/identity.php:926 +#: ../../include/identity.php:934 msgid "Hobbies/Interests:" msgstr "" -#: ../../include/identity.php:928 ../../mod/profiles.php:555 +#: ../../include/identity.php:936 ../../mod/profiles.php:544 msgid "Likes:" msgstr "" -#: ../../include/identity.php:930 ../../mod/profiles.php:556 +#: ../../include/identity.php:938 ../../mod/profiles.php:545 msgid "Dislikes:" msgstr "" -#: ../../include/identity.php:933 +#: ../../include/identity.php:941 msgid "Contact information and Social Networks:" msgstr "" -#: ../../include/identity.php:935 +#: ../../include/identity.php:943 msgid "Musical interests:" msgstr "" -#: ../../include/identity.php:937 +#: ../../include/identity.php:945 msgid "Books, literature:" msgstr "" -#: ../../include/identity.php:939 +#: ../../include/identity.php:947 msgid "Television:" msgstr "" -#: ../../include/identity.php:941 +#: ../../include/identity.php:949 msgid "Film/dance/culture/entertainment:" msgstr "" -#: ../../include/identity.php:943 +#: ../../include/identity.php:951 msgid "Love/Romance:" msgstr "" -#: ../../include/identity.php:945 +#: ../../include/identity.php:953 msgid "Work/employment:" msgstr "" -#: ../../include/identity.php:947 +#: ../../include/identity.php:955 msgid "School/education:" msgstr "" @@ -2921,138 +3026,116 @@ msgid "" msgstr "" #: ../../include/items.php:201 ../../mod/like.php:55 ../../mod/group.php:74 -#: ../../mod/profperm.php:28 ../../index.php:339 +#: ../../mod/profperm.php:19 ../../index.php:345 msgid "Permission denied" msgstr "" -#: ../../include/items.php:3350 ../../mod/admin.php:150 -#: ../../mod/admin.php:727 ../../mod/admin.php:930 ../../mod/viewsrc.php:18 +#: ../../include/items.php:3367 ../../mod/admin.php:150 +#: ../../mod/admin.php:730 ../../mod/admin.php:933 ../../mod/viewsrc.php:18 #: ../../mod/home.php:64 ../../mod/display.php:32 msgid "Item not found." msgstr "" -#: ../../include/items.php:3533 -msgid "Archives" -msgstr "" - -#: ../../include/items.php:3699 ../../mod/group.php:44 ../../mod/group.php:146 +#: ../../include/items.php:3718 ../../mod/group.php:44 ../../mod/group.php:146 msgid "Collection not found." msgstr "" -#: ../../include/items.php:3715 ../../mod/network.php:288 -msgid "Group is empty" +#: ../../include/items.php:3733 +msgid "Collection is empty." msgstr "" -#: ../../include/items.php:3731 +#: ../../include/items.php:3740 +#, php-format +msgid "Collection: %s" +msgstr "" + +#: ../../include/items.php:3751 +#, php-format +msgid "Connection: %s" +msgstr "" + +#: ../../include/items.php:3754 msgid "Connection not found." msgstr "" -#: ../../include/dir_fns.php:15 -msgid "Sort Options" -msgstr "" - -#: ../../include/dir_fns.php:16 -msgid "Alphabetic" -msgstr "" - -#: ../../include/dir_fns.php:17 -msgid "Reverse Alphabetic" -msgstr "" - -#: ../../include/dir_fns.php:18 -msgid "Newest to Oldest" -msgstr "" - -#: ../../include/dir_fns.php:29 -msgid "Enable Safe Search" -msgstr "" - -#: ../../include/dir_fns.php:31 -msgid "Disable Safe Search" -msgstr "" - -#: ../../include/dir_fns.php:33 -msgid "Safe Mode" -msgstr "" - #: ../../mod/common.php:10 msgid "No channel." msgstr "" -#: ../../mod/common.php:47 +#: ../../mod/common.php:39 msgid "Common connections" msgstr "" -#: ../../mod/common.php:52 +#: ../../mod/common.php:44 msgid "No connections in common." msgstr "" -#: ../../mod/events.php:71 +#: ../../mod/events.php:72 msgid "Event title and start time are required." msgstr "" -#: ../../mod/events.php:286 +#: ../../mod/events.php:287 msgid "l, F j" msgstr "" -#: ../../mod/events.php:308 +#: ../../mod/events.php:309 msgid "Edit event" msgstr "" -#: ../../mod/events.php:354 +#: ../../mod/events.php:355 msgid "Create New Event" msgstr "" -#: ../../mod/events.php:355 +#: ../../mod/events.php:356 msgid "Previous" msgstr "" -#: ../../mod/events.php:356 ../../mod/setup.php:256 +#: ../../mod/events.php:357 ../../mod/setup.php:256 msgid "Next" msgstr "" -#: ../../mod/events.php:428 +#: ../../mod/events.php:429 msgid "hour:minute" msgstr "" -#: ../../mod/events.php:447 +#: ../../mod/events.php:448 msgid "Event details" msgstr "" -#: ../../mod/events.php:448 +#: ../../mod/events.php:449 #, php-format msgid "Format is %s %s. Starting date and Title are required." msgstr "" -#: ../../mod/events.php:450 +#: ../../mod/events.php:451 msgid "Event Starts:" msgstr "" -#: ../../mod/events.php:450 ../../mod/events.php:464 +#: ../../mod/events.php:451 ../../mod/events.php:465 msgid "Required" msgstr "" -#: ../../mod/events.php:453 +#: ../../mod/events.php:454 msgid "Finish date/time is not known or not relevant" msgstr "" -#: ../../mod/events.php:455 +#: ../../mod/events.php:456 msgid "Event Finishes:" msgstr "" -#: ../../mod/events.php:458 +#: ../../mod/events.php:459 msgid "Adjust for viewer timezone" msgstr "" -#: ../../mod/events.php:460 +#: ../../mod/events.php:461 msgid "Description:" msgstr "" -#: ../../mod/events.php:464 +#: ../../mod/events.php:465 msgid "Title:" msgstr "" -#: ../../mod/events.php:466 +#: ../../mod/events.php:467 msgid "Share this event" msgstr "" @@ -3139,7 +3222,7 @@ msgid "Enter email addresses, one per line:" msgstr "" #: ../../mod/invite.php:141 ../../mod/message.php:326 -#: ../../mod/message.php:508 +#: ../../mod/message.php:476 msgid "Your message:" msgstr "" @@ -3184,7 +3267,7 @@ msgstr "" msgid "No friends to display." msgstr "" -#: ../../mod/webpages.php:104 ../../mod/layouts.php:105 +#: ../../mod/webpages.php:121 ../../mod/layouts.php:105 #: ../../mod/blocks.php:96 msgid "View" msgstr "" @@ -3208,19 +3291,15 @@ msgid "" msgstr "" #: ../../mod/api.php:105 ../../mod/settings.php:967 ../../mod/settings.php:972 -#: ../../mod/profiles.php:506 +#: ../../mod/profiles.php:495 msgid "Yes" msgstr "" #: ../../mod/api.php:106 ../../mod/settings.php:967 ../../mod/settings.php:972 -#: ../../mod/profiles.php:507 +#: ../../mod/profiles.php:496 msgid "No" msgstr "" -#: ../../mod/lastpost.php:16 ../../mod/channel.php:25 -msgid "You must be logged in to see this page." -msgstr "" - #: ../../mod/apps.php:8 msgid "No installed applications." msgstr "" @@ -3697,7 +3776,7 @@ msgid "Cancel" msgstr "" #: ../../mod/settings.php:611 ../../mod/settings.php:637 -#: ../../mod/admin.php:686 ../../mod/crepair.php:148 +#: ../../mod/admin.php:689 msgid "Name" msgstr "" @@ -3810,7 +3889,7 @@ msgstr "" msgid "Connector Settings" msgstr "" -#: ../../mod/settings.php:802 ../../mod/admin.php:369 +#: ../../mod/settings.php:802 ../../mod/admin.php:371 msgid "No special theme for mobile devices" msgstr "" @@ -3878,7 +3957,7 @@ msgstr "" msgid "Allow us to suggest you as a potential friend to new members?" msgstr "" -#: ../../mod/settings.php:976 ../../mod/profile_photo.php:298 +#: ../../mod/settings.php:976 ../../mod/profile_photo.php:288 msgid "or" msgstr "" @@ -3950,7 +4029,7 @@ msgstr "" msgid "Default Post Permissions" msgstr "" -#: ../../mod/settings.php:1032 +#: ../../mod/settings.php:1032 ../../mod/mitem.php:137 ../../mod/mitem.php:180 msgid "(click to open/close)" msgstr "" @@ -4026,22 +4105,22 @@ msgstr "" msgid "Change the behaviour of this account for special situations" msgstr "" -#: ../../mod/viewconnections.php:28 ../../mod/search.php:80 +#: ../../mod/viewconnections.php:17 ../../mod/search.php:80 #: ../../mod/photos.php:576 ../../mod/display.php:9 ../../mod/community.php:18 -#: ../../mod/directory.php:32 +#: ../../mod/directory.php:33 msgid "Public access denied." msgstr "" -#: ../../mod/viewconnections.php:57 +#: ../../mod/viewconnections.php:43 msgid "No connections." msgstr "" -#: ../../mod/viewconnections.php:69 +#: ../../mod/viewconnections.php:55 #, php-format msgid "Visit %s's profile [%s]" msgstr "" -#: ../../mod/viewconnections.php:84 +#: ../../mod/viewconnections.php:70 msgid "View Connnections" msgstr "" @@ -4198,23 +4277,23 @@ msgstr "" msgid "Theme settings updated." msgstr "" -#: ../../mod/admin.php:87 ../../mod/admin.php:417 +#: ../../mod/admin.php:87 ../../mod/admin.php:419 msgid "Site" msgstr "" -#: ../../mod/admin.php:88 ../../mod/admin.php:682 ../../mod/admin.php:694 +#: ../../mod/admin.php:88 ../../mod/admin.php:685 ../../mod/admin.php:697 msgid "Users" msgstr "" -#: ../../mod/admin.php:89 ../../mod/admin.php:780 ../../mod/admin.php:822 +#: ../../mod/admin.php:89 ../../mod/admin.php:783 ../../mod/admin.php:825 msgid "Plugins" msgstr "" -#: ../../mod/admin.php:90 ../../mod/admin.php:985 ../../mod/admin.php:1021 +#: ../../mod/admin.php:90 ../../mod/admin.php:988 ../../mod/admin.php:1024 msgid "Themes" msgstr "" -#: ../../mod/admin.php:91 ../../mod/admin.php:475 +#: ../../mod/admin.php:91 ../../mod/admin.php:478 msgid "Server" msgstr "" @@ -4222,7 +4301,7 @@ msgstr "" msgid "DB updates" msgstr "" -#: ../../mod/admin.php:106 ../../mod/admin.php:113 ../../mod/admin.php:1108 +#: ../../mod/admin.php:106 ../../mod/admin.php:113 ../../mod/admin.php:1111 msgid "Logs" msgstr "" @@ -4238,9 +4317,9 @@ msgstr "" msgid "Message queues" msgstr "" -#: ../../mod/admin.php:193 ../../mod/admin.php:416 ../../mod/admin.php:474 -#: ../../mod/admin.php:681 ../../mod/admin.php:779 ../../mod/admin.php:821 -#: ../../mod/admin.php:984 ../../mod/admin.php:1020 ../../mod/admin.php:1107 +#: ../../mod/admin.php:193 ../../mod/admin.php:418 ../../mod/admin.php:477 +#: ../../mod/admin.php:684 ../../mod/admin.php:782 ../../mod/admin.php:824 +#: ../../mod/admin.php:987 ../../mod/admin.php:1023 ../../mod/admin.php:1110 msgid "Administration" msgstr "" @@ -4252,7 +4331,7 @@ msgstr "" msgid "Registered users" msgstr "" -#: ../../mod/admin.php:198 ../../mod/admin.php:478 +#: ../../mod/admin.php:198 ../../mod/admin.php:481 msgid "Pending registrations" msgstr "" @@ -4260,567 +4339,581 @@ msgstr "" msgid "Version" msgstr "" -#: ../../mod/admin.php:201 ../../mod/admin.php:479 +#: ../../mod/admin.php:201 ../../mod/admin.php:482 msgid "Active plugins" msgstr "" -#: ../../mod/admin.php:340 +#: ../../mod/admin.php:342 msgid "Site settings updated." msgstr "" -#: ../../mod/admin.php:371 +#: ../../mod/admin.php:373 msgid "No special theme for accessibility" msgstr "" -#: ../../mod/admin.php:396 +#: ../../mod/admin.php:398 msgid "Closed" msgstr "" -#: ../../mod/admin.php:397 +#: ../../mod/admin.php:399 msgid "Requires approval" msgstr "" -#: ../../mod/admin.php:398 +#: ../../mod/admin.php:400 msgid "Open" msgstr "" -#: ../../mod/admin.php:403 +#: ../../mod/admin.php:405 msgid "Private" msgstr "" -#: ../../mod/admin.php:404 +#: ../../mod/admin.php:406 msgid "Paid Access" msgstr "" -#: ../../mod/admin.php:405 +#: ../../mod/admin.php:407 msgid "Free Access" msgstr "" -#: ../../mod/admin.php:406 +#: ../../mod/admin.php:408 msgid "Tiered Access" msgstr "" -#: ../../mod/admin.php:419 ../../mod/register.php:180 +#: ../../mod/admin.php:421 ../../mod/register.php:180 msgid "Registration" msgstr "" -#: ../../mod/admin.php:420 +#: ../../mod/admin.php:422 msgid "File upload" msgstr "" -#: ../../mod/admin.php:421 +#: ../../mod/admin.php:423 msgid "Policies" msgstr "" -#: ../../mod/admin.php:422 +#: ../../mod/admin.php:424 msgid "Advanced" msgstr "" -#: ../../mod/admin.php:426 +#: ../../mod/admin.php:428 msgid "Site name" msgstr "" -#: ../../mod/admin.php:427 +#: ../../mod/admin.php:429 msgid "Banner/Logo" msgstr "" -#: ../../mod/admin.php:428 +#: ../../mod/admin.php:430 msgid "System language" msgstr "" -#: ../../mod/admin.php:429 +#: ../../mod/admin.php:431 msgid "System theme" msgstr "" -#: ../../mod/admin.php:429 +#: ../../mod/admin.php:431 msgid "" "Default system theme - may be over-ridden by user profiles - change theme settings" msgstr "" -#: ../../mod/admin.php:430 +#: ../../mod/admin.php:432 msgid "Mobile system theme" msgstr "" -#: ../../mod/admin.php:430 +#: ../../mod/admin.php:432 msgid "Theme for mobile devices" msgstr "" -#: ../../mod/admin.php:431 +#: ../../mod/admin.php:433 msgid "Accessibility system theme" msgstr "" -#: ../../mod/admin.php:431 +#: ../../mod/admin.php:433 msgid "Accessibility theme" msgstr "" -#: ../../mod/admin.php:432 +#: ../../mod/admin.php:434 msgid "Channel to use for this website's static pages" msgstr "" -#: ../../mod/admin.php:432 +#: ../../mod/admin.php:434 msgid "Site Channel" msgstr "" -#: ../../mod/admin.php:434 +#: ../../mod/admin.php:436 msgid "Maximum image size" msgstr "" -#: ../../mod/admin.php:434 +#: ../../mod/admin.php:436 msgid "" "Maximum size in bytes of uploaded images. Default is 0, which means no " "limits." msgstr "" -#: ../../mod/admin.php:435 +#: ../../mod/admin.php:437 msgid "Register policy" msgstr "" -#: ../../mod/admin.php:436 +#: ../../mod/admin.php:438 msgid "Access policy" msgstr "" -#: ../../mod/admin.php:437 +#: ../../mod/admin.php:439 msgid "Register text" msgstr "" -#: ../../mod/admin.php:437 +#: ../../mod/admin.php:439 msgid "Will be displayed prominently on the registration page." msgstr "" -#: ../../mod/admin.php:438 +#: ../../mod/admin.php:440 msgid "Accounts abandoned after x days" msgstr "" -#: ../../mod/admin.php:438 +#: ../../mod/admin.php:440 msgid "" "Will not waste system resources polling external sites for abandonded " "accounts. Enter 0 for no time limit." msgstr "" -#: ../../mod/admin.php:439 +#: ../../mod/admin.php:441 msgid "Allowed friend domains" msgstr "" -#: ../../mod/admin.php:439 +#: ../../mod/admin.php:441 msgid "" "Comma separated list of domains which are allowed to establish friendships " "with this site. Wildcards are accepted. Empty to allow any domains" msgstr "" -#: ../../mod/admin.php:440 +#: ../../mod/admin.php:442 msgid "Allowed email domains" msgstr "" -#: ../../mod/admin.php:440 +#: ../../mod/admin.php:442 msgid "" "Comma separated list of domains which are allowed in email addresses for " "registrations to this site. Wildcards are accepted. Empty to allow any " "domains" msgstr "" -#: ../../mod/admin.php:441 +#: ../../mod/admin.php:443 msgid "Block public" msgstr "" -#: ../../mod/admin.php:441 +#: ../../mod/admin.php:443 msgid "" "Check to block public access to all otherwise public personal pages on this " "site unless you are currently logged in." msgstr "" -#: ../../mod/admin.php:442 +#: ../../mod/admin.php:444 msgid "Force publish" msgstr "" -#: ../../mod/admin.php:442 +#: ../../mod/admin.php:444 msgid "" "Check to force all profiles on this site to be listed in the site directory." msgstr "" -#: ../../mod/admin.php:444 -msgid "Proxy user" +#: ../../mod/admin.php:445 +msgid "No login on Homepage" msgstr "" #: ../../mod/admin.php:445 +msgid "" +"Check to hide the login form from your sites homepage when visitors arrive " +"who are not logged in (e.g. when you put the content of the homepage in via " +"the site channel)." +msgstr "" + +#: ../../mod/admin.php:447 +msgid "Proxy user" +msgstr "" + +#: ../../mod/admin.php:448 msgid "Proxy URL" msgstr "" -#: ../../mod/admin.php:446 +#: ../../mod/admin.php:449 msgid "Network timeout" msgstr "" -#: ../../mod/admin.php:446 +#: ../../mod/admin.php:449 msgid "Value is in seconds. Set to 0 for unlimited (not recommended)." msgstr "" -#: ../../mod/admin.php:447 +#: ../../mod/admin.php:450 msgid "Delivery interval" msgstr "" -#: ../../mod/admin.php:447 +#: ../../mod/admin.php:450 msgid "" "Delay background delivery processes by this many seconds to reduce system " "load. Recommend: 4-5 for shared hosts, 2-3 for virtual private servers. 0-1 " "for large dedicated servers." msgstr "" -#: ../../mod/admin.php:448 +#: ../../mod/admin.php:451 msgid "Poll interval" msgstr "" -#: ../../mod/admin.php:448 +#: ../../mod/admin.php:451 msgid "" "Delay background polling processes by this many seconds to reduce system " "load. If 0, use delivery interval." msgstr "" -#: ../../mod/admin.php:449 +#: ../../mod/admin.php:452 msgid "Maximum Load Average" msgstr "" -#: ../../mod/admin.php:449 +#: ../../mod/admin.php:452 msgid "" "Maximum system load before delivery and poll processes are deferred - " "default 50." msgstr "" -#: ../../mod/admin.php:466 +#: ../../mod/admin.php:469 msgid "No server found" msgstr "" -#: ../../mod/admin.php:473 ../../mod/admin.php:695 +#: ../../mod/admin.php:476 ../../mod/admin.php:698 msgid "ID" msgstr "" -#: ../../mod/admin.php:473 +#: ../../mod/admin.php:476 msgid "for channel" msgstr "" -#: ../../mod/admin.php:473 +#: ../../mod/admin.php:476 msgid "on server" msgstr "" -#: ../../mod/admin.php:473 +#: ../../mod/admin.php:476 msgid "Status" msgstr "" -#: ../../mod/admin.php:493 +#: ../../mod/admin.php:496 msgid "Update has been marked successful" msgstr "" -#: ../../mod/admin.php:503 -#, php-format -msgid "Executing %s failed. Check system logs." -msgstr "" - #: ../../mod/admin.php:506 #, php-format -msgid "Update %s was successfully applied." +msgid "Executing %s failed. Check system logs." msgstr "" -#: ../../mod/admin.php:510 +#: ../../mod/admin.php:509 #, php-format -msgid "Update %s did not return a status. Unknown if it succeeded." +msgid "Update %s was successfully applied." msgstr "" #: ../../mod/admin.php:513 #, php-format +msgid "Update %s did not return a status. Unknown if it succeeded." +msgstr "" + +#: ../../mod/admin.php:516 +#, php-format msgid "Update function %s could not be found." msgstr "" -#: ../../mod/admin.php:528 +#: ../../mod/admin.php:531 msgid "No failed updates." msgstr "" -#: ../../mod/admin.php:532 +#: ../../mod/admin.php:535 msgid "Failed Updates" msgstr "" -#: ../../mod/admin.php:534 +#: ../../mod/admin.php:537 msgid "Mark success (if update was manually applied)" msgstr "" -#: ../../mod/admin.php:535 +#: ../../mod/admin.php:538 msgid "Attempt to execute this update step automatically" msgstr "" -#: ../../mod/admin.php:561 +#: ../../mod/admin.php:564 #, php-format msgid "%s user blocked/unblocked" msgid_plural "%s users blocked/unblocked" msgstr[0] "" msgstr[1] "" -#: ../../mod/admin.php:568 +#: ../../mod/admin.php:571 #, php-format msgid "%s user deleted" msgid_plural "%s users deleted" msgstr[0] "" msgstr[1] "" -#: ../../mod/admin.php:599 +#: ../../mod/admin.php:602 msgid "Account not found" msgstr "" -#: ../../mod/admin.php:610 +#: ../../mod/admin.php:613 #, php-format msgid "User '%s' deleted" msgstr "" -#: ../../mod/admin.php:619 +#: ../../mod/admin.php:622 #, php-format msgid "User '%s' unblocked" msgstr "" -#: ../../mod/admin.php:619 +#: ../../mod/admin.php:622 #, php-format msgid "User '%s' blocked" msgstr "" -#: ../../mod/admin.php:684 +#: ../../mod/admin.php:687 msgid "select all" msgstr "" -#: ../../mod/admin.php:685 +#: ../../mod/admin.php:688 msgid "User registrations waiting for confirm" msgstr "" -#: ../../mod/admin.php:686 +#: ../../mod/admin.php:689 msgid "Request date" msgstr "" -#: ../../mod/admin.php:687 +#: ../../mod/admin.php:690 msgid "No registrations." msgstr "" -#: ../../mod/admin.php:688 ../../mod/intro.php:11 ../../mod/intro.php:98 -#: ../../mod/notifications.php:159 ../../mod/notifications.php:206 +#: ../../mod/admin.php:691 msgid "Approve" msgstr "" -#: ../../mod/admin.php:689 +#: ../../mod/admin.php:692 msgid "Deny" msgstr "" -#: ../../mod/admin.php:691 ../../mod/intro.php:14 ../../mod/intro.php:99 -#: ../../mod/connections.php:348 ../../mod/connections.php:490 +#: ../../mod/admin.php:694 ../../mod/connections.php:352 +#: ../../mod/connections.php:494 msgid "Block" msgstr "" -#: ../../mod/admin.php:692 ../../mod/connections.php:348 -#: ../../mod/connections.php:490 +#: ../../mod/admin.php:695 ../../mod/connections.php:352 +#: ../../mod/connections.php:494 msgid "Unblock" msgstr "" -#: ../../mod/admin.php:695 +#: ../../mod/admin.php:698 msgid "Register date" msgstr "" -#: ../../mod/admin.php:695 +#: ../../mod/admin.php:698 msgid "Last login" msgstr "" -#: ../../mod/admin.php:695 +#: ../../mod/admin.php:698 msgid "Expires" msgstr "" -#: ../../mod/admin.php:695 +#: ../../mod/admin.php:698 msgid "Service Class" msgstr "" -#: ../../mod/admin.php:697 +#: ../../mod/admin.php:700 msgid "" "Selected users will be deleted!\\n\\nEverything these users had posted on " "this site will be permanently deleted!\\n\\nAre you sure?" msgstr "" -#: ../../mod/admin.php:698 +#: ../../mod/admin.php:701 msgid "" "The user {0} will be deleted!\\n\\nEverything this user has posted on this " "site will be permanently deleted!\\n\\nAre you sure?" msgstr "" -#: ../../mod/admin.php:739 +#: ../../mod/admin.php:742 #, php-format msgid "Plugin %s disabled." msgstr "" -#: ../../mod/admin.php:743 +#: ../../mod/admin.php:746 #, php-format msgid "Plugin %s enabled." msgstr "" -#: ../../mod/admin.php:753 ../../mod/admin.php:955 +#: ../../mod/admin.php:756 ../../mod/admin.php:958 msgid "Disable" msgstr "" -#: ../../mod/admin.php:755 ../../mod/admin.php:957 +#: ../../mod/admin.php:758 ../../mod/admin.php:960 msgid "Enable" msgstr "" -#: ../../mod/admin.php:781 ../../mod/admin.php:986 +#: ../../mod/admin.php:784 ../../mod/admin.php:989 msgid "Toggle" msgstr "" -#: ../../mod/admin.php:789 ../../mod/admin.php:996 +#: ../../mod/admin.php:792 ../../mod/admin.php:999 msgid "Author: " msgstr "" -#: ../../mod/admin.php:790 ../../mod/admin.php:997 +#: ../../mod/admin.php:793 ../../mod/admin.php:1000 msgid "Maintainer: " msgstr "" -#: ../../mod/admin.php:919 +#: ../../mod/admin.php:922 msgid "No themes found." msgstr "" -#: ../../mod/admin.php:978 +#: ../../mod/admin.php:981 msgid "Screenshot" msgstr "" -#: ../../mod/admin.php:1026 +#: ../../mod/admin.php:1029 msgid "[Experimental]" msgstr "" -#: ../../mod/admin.php:1027 +#: ../../mod/admin.php:1030 msgid "[Unsupported]" msgstr "" -#: ../../mod/admin.php:1054 +#: ../../mod/admin.php:1057 msgid "Log settings updated." msgstr "" -#: ../../mod/admin.php:1110 +#: ../../mod/admin.php:1113 msgid "Clear" msgstr "" -#: ../../mod/admin.php:1116 +#: ../../mod/admin.php:1119 msgid "Debugging" msgstr "" -#: ../../mod/admin.php:1117 +#: ../../mod/admin.php:1120 msgid "Log file" msgstr "" -#: ../../mod/admin.php:1117 +#: ../../mod/admin.php:1120 msgid "" "Must be writable by web server. Relative to your Red top-level directory." msgstr "" -#: ../../mod/admin.php:1118 +#: ../../mod/admin.php:1121 msgid "Log level" msgstr "" -#: ../../mod/mitem.php:13 ../../mod/menu.php:87 +#: ../../mod/mitem.php:14 ../../mod/menu.php:87 msgid "Menu not found." msgstr "" -#: ../../mod/mitem.php:66 +#: ../../mod/mitem.php:47 msgid "Menu element updated." msgstr "" -#: ../../mod/mitem.php:70 +#: ../../mod/mitem.php:51 msgid "Unable to update menu element." msgstr "" -#: ../../mod/mitem.php:76 +#: ../../mod/mitem.php:57 msgid "Menu element added." msgstr "" -#: ../../mod/mitem.php:80 +#: ../../mod/mitem.php:61 msgid "Unable to add menu element." msgstr "" -#: ../../mod/mitem.php:97 ../../mod/xchan.php:25 ../../mod/menu.php:113 +#: ../../mod/mitem.php:78 ../../mod/xchan.php:25 ../../mod/menu.php:113 msgid "Not found." msgstr "" -#: ../../mod/mitem.php:116 +#: ../../mod/mitem.php:99 msgid "Manage Menu Elements" msgstr "" -#: ../../mod/mitem.php:119 +#: ../../mod/mitem.php:102 msgid "Edit menu" msgstr "" -#: ../../mod/mitem.php:122 +#: ../../mod/mitem.php:105 msgid "Edit element" msgstr "" -#: ../../mod/mitem.php:123 +#: ../../mod/mitem.php:106 msgid "Drop element" msgstr "" -#: ../../mod/mitem.php:124 +#: ../../mod/mitem.php:107 msgid "New element" msgstr "" -#: ../../mod/mitem.php:125 +#: ../../mod/mitem.php:108 msgid "Edit this menu container" msgstr "" -#: ../../mod/mitem.php:126 +#: ../../mod/mitem.php:109 msgid "Add menu element" msgstr "" -#: ../../mod/mitem.php:127 +#: ../../mod/mitem.php:110 msgid "Delete this menu item" msgstr "" -#: ../../mod/mitem.php:128 +#: ../../mod/mitem.php:111 msgid "Edit this menu item" msgstr "" -#: ../../mod/mitem.php:141 +#: ../../mod/mitem.php:134 msgid "New Menu Element" msgstr "" -#: ../../mod/mitem.php:143 ../../mod/mitem.php:184 +#: ../../mod/mitem.php:136 ../../mod/mitem.php:179 +msgid "Menu Item Permissions" +msgstr "" + +#: ../../mod/mitem.php:139 ../../mod/mitem.php:183 msgid "Link text" msgstr "" -#: ../../mod/mitem.php:144 ../../mod/mitem.php:185 +#: ../../mod/mitem.php:140 ../../mod/mitem.php:184 msgid "URL of link" msgstr "" -#: ../../mod/mitem.php:145 ../../mod/mitem.php:186 +#: ../../mod/mitem.php:141 ../../mod/mitem.php:185 msgid "Use Red magic-auth if available" msgstr "" -#: ../../mod/mitem.php:146 ../../mod/mitem.php:187 +#: ../../mod/mitem.php:142 ../../mod/mitem.php:186 msgid "Open link in new window" msgstr "" -#: ../../mod/mitem.php:148 ../../mod/mitem.php:189 +#: ../../mod/mitem.php:144 ../../mod/mitem.php:188 msgid "Order in list" msgstr "" -#: ../../mod/mitem.php:148 ../../mod/mitem.php:189 +#: ../../mod/mitem.php:144 ../../mod/mitem.php:188 msgid "Higher numbers will sink to bottom of listing" msgstr "" -#: ../../mod/mitem.php:149 ../../mod/menu.php:79 ../../mod/new_channel.php:117 +#: ../../mod/mitem.php:145 ../../mod/menu.php:79 ../../mod/new_channel.php:117 msgid "Create" msgstr "" -#: ../../mod/mitem.php:161 +#: ../../mod/mitem.php:157 msgid "Menu item not found." msgstr "" -#: ../../mod/mitem.php:170 +#: ../../mod/mitem.php:166 msgid "Menu item deleted." msgstr "" -#: ../../mod/mitem.php:172 +#: ../../mod/mitem.php:168 msgid "Menu item could not be deleted." msgstr "" -#: ../../mod/mitem.php:181 +#: ../../mod/mitem.php:177 msgid "Edit Menu Element" msgstr "" -#: ../../mod/mitem.php:190 ../../mod/menu.php:107 +#: ../../mod/mitem.php:189 ../../mod/menu.php:107 msgid "Modify" msgstr "" @@ -4872,10 +4965,6 @@ msgstr "" msgid "Click on a channel to add or remove." msgstr "" -#: ../../mod/search.php:20 ../../mod/network.php:113 -msgid "Remove term" -msgstr "" - #: ../../mod/photos.php:83 msgid "Page owner information could not be retrieved." msgstr "" @@ -5129,7 +5218,7 @@ msgstr "" msgid "Selected channel has private message restrictions. Send failed." msgstr "" -#: ../../mod/message.php:223 ../../mod/notifications.php:101 +#: ../../mod/message.php:223 msgid "Messages" msgstr "" @@ -5149,11 +5238,11 @@ msgstr "" msgid "Send Private Message" msgstr "" -#: ../../mod/message.php:317 ../../mod/message.php:503 +#: ../../mod/message.php:317 ../../mod/message.php:471 msgid "To:" msgstr "" -#: ../../mod/message.php:322 ../../mod/message.php:505 +#: ../../mod/message.php:322 ../../mod/message.php:473 msgid "Subject:" msgstr "" @@ -5161,7 +5250,7 @@ msgstr "" msgid "No messages." msgstr "" -#: ../../mod/message.php:375 ../../mod/message.php:472 +#: ../../mod/message.php:375 ../../mod/message.php:440 msgid "Delete message" msgstr "" @@ -5173,36 +5262,32 @@ msgstr "" msgid "Message not found." msgstr "" -#: ../../mod/message.php:473 +#: ../../mod/message.php:441 msgid "Recall message" msgstr "" -#: ../../mod/message.php:475 +#: ../../mod/message.php:443 msgid "Message has been recalled." msgstr "" -#: ../../mod/message.php:492 +#: ../../mod/message.php:460 msgid "Private Conversation" msgstr "" -#: ../../mod/message.php:496 +#: ../../mod/message.php:464 msgid "Delete conversation" msgstr "" -#: ../../mod/message.php:498 +#: ../../mod/message.php:466 msgid "" "No secure communications available. You may be able to " "respond from the sender's profile page." msgstr "" -#: ../../mod/message.php:502 +#: ../../mod/message.php:470 msgid "Send Reply" msgstr "" -#: ../../mod/hcard.php:10 -msgid "No profile" -msgstr "" - #: ../../mod/layouts.php:52 msgid "Layout Help" msgstr "" @@ -5235,101 +5320,30 @@ msgstr "" msgid "Authenticate" msgstr "" -#: ../../mod/network.php:172 +#: ../../mod/network.php:79 msgid "No such group" msgstr "" -#: ../../mod/network.php:212 -msgid "Refresh" -msgstr "" - -#: ../../mod/network.php:213 ../../mod/connections.php:404 -msgid "Me" -msgstr "" - -#: ../../mod/network.php:214 ../../mod/connections.php:406 -msgid "Best Friends" -msgstr "" - -#: ../../mod/network.php:216 -msgid "Co-workers" -msgstr "" - -#: ../../mod/network.php:217 ../../mod/connections.php:408 -msgid "Former Friends" -msgstr "" - -#: ../../mod/network.php:218 ../../mod/connections.php:409 -msgid "Acquaintances" -msgstr "" - -#: ../../mod/network.php:219 -msgid "Everybody" -msgstr "" - -#: ../../mod/network.php:234 +#: ../../mod/network.php:118 msgid "Search Results For:" msgstr "" -#: ../../mod/network.php:296 +#: ../../mod/network.php:172 +msgid "Collection is empty" +msgstr "" + +#: ../../mod/network.php:180 msgid "Collection: " msgstr "" -#: ../../mod/network.php:309 +#: ../../mod/network.php:193 msgid "Connection: " msgstr "" -#: ../../mod/network.php:312 +#: ../../mod/network.php:196 msgid "Invalid connection." msgstr "" -#: ../../mod/intro.php:17 ../../mod/intro.php:100 -#: ../../mod/connections.php:355 ../../mod/connections.php:491 -#: ../../mod/notifications.php:51 ../../mod/notifications.php:162 -#: ../../mod/notifications.php:208 -msgid "Ignore" -msgstr "" - -#: ../../mod/intro.php:29 ../../mod/connections.php:122 -msgid "Connection updated." -msgstr "" - -#: ../../mod/intro.php:31 -msgid "Connection update failed." -msgstr "" - -#: ../../mod/intro.php:56 -msgid "Introductions and Connection Requests" -msgstr "" - -#: ../../mod/intro.php:67 -msgid "No pending introductions." -msgstr "" - -#: ../../mod/intro.php:72 -msgid "System error. Please try again later." -msgstr "" - -#: ../../mod/intro.php:95 ../../mod/connections.php:496 -#: ../../mod/notifications.php:155 ../../mod/notifications.php:202 -msgid "Hide this contact from others" -msgstr "" - -#: ../../mod/intro.php:96 ../../mod/notifications.php:156 -#: ../../mod/notifications.php:203 -msgid "Post a new friend activity" -msgstr "" - -#: ../../mod/intro.php:96 ../../mod/notifications.php:156 -#: ../../mod/notifications.php:203 -msgid "if applicable" -msgstr "" - -#: ../../mod/intro.php:101 ../../mod/notifications.php:35 -#: ../../mod/notifications.php:163 ../../mod/notifications.php:209 -msgid "Discard" -msgstr "" - #: ../../mod/post.php:222 msgid "" "Remote authentication blocked. You are logged into this site locally. Please " @@ -5358,7 +5372,7 @@ msgid "Hub not found." msgstr "" #: ../../mod/profiles.php:18 ../../mod/profiles.php:138 -#: ../../mod/profiles.php:179 ../../mod/profiles.php:486 +#: ../../mod/profiles.php:168 ../../mod/profiles.php:475 msgid "Profile not found." msgstr "" @@ -5378,226 +5392,226 @@ msgstr "" msgid "Profile unavailable to clone." msgstr "" -#: ../../mod/profiles.php:189 +#: ../../mod/profiles.php:178 msgid "Profile Name is required." msgstr "" -#: ../../mod/profiles.php:317 +#: ../../mod/profiles.php:306 msgid "Marital Status" msgstr "" -#: ../../mod/profiles.php:321 +#: ../../mod/profiles.php:310 msgid "Romantic Partner" msgstr "" -#: ../../mod/profiles.php:325 +#: ../../mod/profiles.php:314 msgid "Likes" msgstr "" -#: ../../mod/profiles.php:329 +#: ../../mod/profiles.php:318 msgid "Dislikes" msgstr "" -#: ../../mod/profiles.php:333 +#: ../../mod/profiles.php:322 msgid "Work/Employment" msgstr "" -#: ../../mod/profiles.php:336 +#: ../../mod/profiles.php:325 msgid "Religion" msgstr "" -#: ../../mod/profiles.php:340 +#: ../../mod/profiles.php:329 msgid "Political Views" msgstr "" -#: ../../mod/profiles.php:344 +#: ../../mod/profiles.php:333 msgid "Gender" msgstr "" -#: ../../mod/profiles.php:348 +#: ../../mod/profiles.php:337 msgid "Sexual Preference" msgstr "" -#: ../../mod/profiles.php:352 +#: ../../mod/profiles.php:341 msgid "Homepage" msgstr "" -#: ../../mod/profiles.php:356 +#: ../../mod/profiles.php:345 msgid "Interests" msgstr "" -#: ../../mod/profiles.php:360 +#: ../../mod/profiles.php:349 msgid "Address" msgstr "" -#: ../../mod/profiles.php:367 ../../mod/pubsites.php:31 +#: ../../mod/profiles.php:356 ../../mod/pubsites.php:31 msgid "Location" msgstr "" -#: ../../mod/profiles.php:450 +#: ../../mod/profiles.php:439 msgid "Profile updated." msgstr "" -#: ../../mod/profiles.php:505 +#: ../../mod/profiles.php:494 msgid "Hide your contact/friend list from viewers of this profile?" msgstr "" -#: ../../mod/profiles.php:528 +#: ../../mod/profiles.php:517 msgid "Edit Profile Details" msgstr "" -#: ../../mod/profiles.php:530 +#: ../../mod/profiles.php:519 msgid "View this profile" msgstr "" -#: ../../mod/profiles.php:531 +#: ../../mod/profiles.php:520 msgid "Change Profile Photo" msgstr "" -#: ../../mod/profiles.php:532 +#: ../../mod/profiles.php:521 msgid "Create a new profile using these settings" msgstr "" -#: ../../mod/profiles.php:533 +#: ../../mod/profiles.php:522 msgid "Clone this profile" msgstr "" -#: ../../mod/profiles.php:534 +#: ../../mod/profiles.php:523 msgid "Delete this profile" msgstr "" -#: ../../mod/profiles.php:535 +#: ../../mod/profiles.php:524 msgid "Profile Name:" msgstr "" -#: ../../mod/profiles.php:536 +#: ../../mod/profiles.php:525 msgid "Your Full Name:" msgstr "" -#: ../../mod/profiles.php:537 +#: ../../mod/profiles.php:526 msgid "Title/Description:" msgstr "" -#: ../../mod/profiles.php:538 +#: ../../mod/profiles.php:527 msgid "Your Gender:" msgstr "" -#: ../../mod/profiles.php:539 +#: ../../mod/profiles.php:528 #, php-format msgid "Birthday (%s):" msgstr "" -#: ../../mod/profiles.php:540 +#: ../../mod/profiles.php:529 msgid "Street Address:" msgstr "" -#: ../../mod/profiles.php:541 +#: ../../mod/profiles.php:530 msgid "Locality/City:" msgstr "" -#: ../../mod/profiles.php:542 +#: ../../mod/profiles.php:531 msgid "Postal/Zip Code:" msgstr "" -#: ../../mod/profiles.php:543 +#: ../../mod/profiles.php:532 msgid "Country:" msgstr "" -#: ../../mod/profiles.php:544 +#: ../../mod/profiles.php:533 msgid "Region/State:" msgstr "" -#: ../../mod/profiles.php:545 +#: ../../mod/profiles.php:534 msgid " Marital Status:" msgstr "" -#: ../../mod/profiles.php:546 +#: ../../mod/profiles.php:535 msgid "Who: (if applicable)" msgstr "" -#: ../../mod/profiles.php:547 +#: ../../mod/profiles.php:536 msgid "Examples: cathy123, Cathy Williams, cathy@example.com" msgstr "" -#: ../../mod/profiles.php:548 +#: ../../mod/profiles.php:537 msgid "Since [date]:" msgstr "" -#: ../../mod/profiles.php:550 +#: ../../mod/profiles.php:539 msgid "Homepage URL:" msgstr "" -#: ../../mod/profiles.php:553 +#: ../../mod/profiles.php:542 msgid "Religious Views:" msgstr "" -#: ../../mod/profiles.php:554 +#: ../../mod/profiles.php:543 msgid "Keywords:" msgstr "" -#: ../../mod/profiles.php:557 +#: ../../mod/profiles.php:546 msgid "Example: fishing photography software" msgstr "" -#: ../../mod/profiles.php:558 +#: ../../mod/profiles.php:547 msgid "Used in directory listings" msgstr "" -#: ../../mod/profiles.php:559 +#: ../../mod/profiles.php:548 msgid "Tell us about yourself..." msgstr "" -#: ../../mod/profiles.php:560 +#: ../../mod/profiles.php:549 msgid "Hobbies/Interests" msgstr "" -#: ../../mod/profiles.php:561 +#: ../../mod/profiles.php:550 msgid "Contact information and Social Networks" msgstr "" -#: ../../mod/profiles.php:562 +#: ../../mod/profiles.php:551 msgid "My other channels" msgstr "" -#: ../../mod/profiles.php:563 +#: ../../mod/profiles.php:552 msgid "Musical interests" msgstr "" -#: ../../mod/profiles.php:564 +#: ../../mod/profiles.php:553 msgid "Books, literature" msgstr "" -#: ../../mod/profiles.php:565 +#: ../../mod/profiles.php:554 msgid "Television" msgstr "" -#: ../../mod/profiles.php:566 +#: ../../mod/profiles.php:555 msgid "Film/dance/culture/entertainment" msgstr "" -#: ../../mod/profiles.php:567 +#: ../../mod/profiles.php:556 msgid "Love/romance" msgstr "" -#: ../../mod/profiles.php:568 +#: ../../mod/profiles.php:557 msgid "Work/employment" msgstr "" -#: ../../mod/profiles.php:569 +#: ../../mod/profiles.php:558 msgid "School/education" msgstr "" -#: ../../mod/profiles.php:574 +#: ../../mod/profiles.php:563 msgid "" "This is your public profile.
    It may " "be visible to anybody using the internet." msgstr "" -#: ../../mod/profiles.php:584 ../../mod/directory.php:160 +#: ../../mod/profiles.php:573 ../../mod/directory.php:161 msgid "Age: " msgstr "" -#: ../../mod/profiles.php:623 +#: ../../mod/profiles.php:612 msgid "Edit/Manage Profiles" msgstr "" @@ -5634,385 +5648,394 @@ msgid "" "Or import an existing channel from another location" msgstr "" -#: ../../mod/connections.php:67 +#: ../../mod/connections.php:71 msgid "Could not access contact record." msgstr "" -#: ../../mod/connections.php:81 +#: ../../mod/connections.php:85 msgid "Could not locate selected profile." msgstr "" -#: ../../mod/connections.php:124 +#: ../../mod/connections.php:126 +msgid "Connection updated." +msgstr "" + +#: ../../mod/connections.php:128 msgid "Failed to update connection record." msgstr "" -#: ../../mod/connections.php:219 +#: ../../mod/connections.php:223 msgid "Could not access address book record." msgstr "" -#: ../../mod/connections.php:233 +#: ../../mod/connections.php:237 msgid "Refresh failed - channel is currently unavailable." msgstr "" -#: ../../mod/connections.php:240 +#: ../../mod/connections.php:244 msgid "Channel has been unblocked" msgstr "" -#: ../../mod/connections.php:241 +#: ../../mod/connections.php:245 msgid "Channel has been blocked" msgstr "" -#: ../../mod/connections.php:245 ../../mod/connections.php:257 -#: ../../mod/connections.php:269 ../../mod/connections.php:281 -#: ../../mod/connections.php:296 +#: ../../mod/connections.php:249 ../../mod/connections.php:261 +#: ../../mod/connections.php:273 ../../mod/connections.php:285 +#: ../../mod/connections.php:300 msgid "Unable to set address book parameters." msgstr "" -#: ../../mod/connections.php:252 +#: ../../mod/connections.php:256 msgid "Channel has been unignored" msgstr "" -#: ../../mod/connections.php:253 +#: ../../mod/connections.php:257 msgid "Channel has been ignored" msgstr "" -#: ../../mod/connections.php:264 +#: ../../mod/connections.php:268 msgid "Channel has been unarchived" msgstr "" -#: ../../mod/connections.php:265 +#: ../../mod/connections.php:269 msgid "Channel has been archived" msgstr "" -#: ../../mod/connections.php:276 +#: ../../mod/connections.php:280 msgid "Channel has been unhidden" msgstr "" -#: ../../mod/connections.php:277 +#: ../../mod/connections.php:281 msgid "Channel has been hidden" msgstr "" -#: ../../mod/connections.php:291 +#: ../../mod/connections.php:295 msgid "Channel has been approved" msgstr "" -#: ../../mod/connections.php:292 +#: ../../mod/connections.php:296 msgid "Channel has been unapproved" msgstr "" -#: ../../mod/connections.php:310 +#: ../../mod/connections.php:314 msgid "Contact has been removed." msgstr "" -#: ../../mod/connections.php:330 +#: ../../mod/connections.php:334 #, php-format msgid "View %s's profile" msgstr "" -#: ../../mod/connections.php:334 +#: ../../mod/connections.php:338 msgid "Refresh Permissions" msgstr "" -#: ../../mod/connections.php:337 +#: ../../mod/connections.php:341 msgid "Fetch updated permissions" msgstr "" -#: ../../mod/connections.php:341 +#: ../../mod/connections.php:345 msgid "Recent Activity" msgstr "" -#: ../../mod/connections.php:344 +#: ../../mod/connections.php:348 msgid "View recent posts and comments" msgstr "" -#: ../../mod/connections.php:351 +#: ../../mod/connections.php:355 msgid "Block or Unblock this connection" msgstr "" -#: ../../mod/connections.php:355 ../../mod/connections.php:491 +#: ../../mod/connections.php:359 ../../mod/connections.php:495 msgid "Unignore" msgstr "" -#: ../../mod/connections.php:358 +#: ../../mod/connections.php:359 ../../mod/connections.php:495 +#: ../../mod/notifications.php:51 +msgid "Ignore" +msgstr "" + +#: ../../mod/connections.php:362 msgid "Ignore or Unignore this connection" msgstr "" -#: ../../mod/connections.php:361 +#: ../../mod/connections.php:365 msgid "Unarchive" msgstr "" -#: ../../mod/connections.php:361 +#: ../../mod/connections.php:365 msgid "Archive" msgstr "" -#: ../../mod/connections.php:364 +#: ../../mod/connections.php:368 msgid "Archive or Unarchive this connection" msgstr "" -#: ../../mod/connections.php:367 +#: ../../mod/connections.php:371 msgid "Unhide" msgstr "" -#: ../../mod/connections.php:367 +#: ../../mod/connections.php:371 msgid "Hide" msgstr "" -#: ../../mod/connections.php:370 +#: ../../mod/connections.php:374 msgid "Hide or Unhide this connection" msgstr "" -#: ../../mod/connections.php:377 +#: ../../mod/connections.php:381 msgid "Delete this connection" msgstr "" -#: ../../mod/connections.php:410 +#: ../../mod/connections.php:414 msgid "Unknown" msgstr "" -#: ../../mod/connections.php:420 ../../mod/connections.php:449 +#: ../../mod/connections.php:424 ../../mod/connections.php:453 msgid "Approve this connection" msgstr "" -#: ../../mod/connections.php:420 +#: ../../mod/connections.php:424 msgid "Accept connection to allow communication" msgstr "" -#: ../../mod/connections.php:436 +#: ../../mod/connections.php:440 msgid "Automatic Permissions Settings" msgstr "" -#: ../../mod/connections.php:436 +#: ../../mod/connections.php:440 #, php-format msgid "Connections: settings for %s" msgstr "" -#: ../../mod/connections.php:440 +#: ../../mod/connections.php:444 msgid "" "When receiving a channel introduction, any permissions provided here will be " "applied to the new connection automatically and the introduction approved. " "Leave this page if you do not wish to use this feature." msgstr "" -#: ../../mod/connections.php:442 +#: ../../mod/connections.php:446 msgid "Slide to adjust your degree of friendship" msgstr "" -#: ../../mod/connections.php:448 +#: ../../mod/connections.php:452 msgid "inherited" msgstr "" -#: ../../mod/connections.php:450 +#: ../../mod/connections.php:454 msgid "Connection has no individual permissions!" msgstr "" -#: ../../mod/connections.php:451 +#: ../../mod/connections.php:455 msgid "" "This may be appropriate based on your privacy settings, though you may wish to review the \"Advanced Permissions\"." msgstr "" -#: ../../mod/connections.php:453 +#: ../../mod/connections.php:457 msgid "Profile Visibility" msgstr "" -#: ../../mod/connections.php:454 +#: ../../mod/connections.php:458 #, php-format msgid "" "Please choose the profile you would like to display to %s when viewing your " "profile securely." msgstr "" -#: ../../mod/connections.php:455 +#: ../../mod/connections.php:459 msgid "Contact Information / Notes" msgstr "" -#: ../../mod/connections.php:456 +#: ../../mod/connections.php:460 msgid "Edit contact notes" msgstr "" -#: ../../mod/connections.php:458 +#: ../../mod/connections.php:462 msgid "Their Settings" msgstr "" -#: ../../mod/connections.php:459 +#: ../../mod/connections.php:463 msgid "My Settings" msgstr "" -#: ../../mod/connections.php:461 +#: ../../mod/connections.php:465 msgid "Forum Members" msgstr "" -#: ../../mod/connections.php:462 +#: ../../mod/connections.php:466 msgid "Soapbox" msgstr "" -#: ../../mod/connections.php:463 +#: ../../mod/connections.php:467 msgid "Full Sharing" msgstr "" -#: ../../mod/connections.php:464 +#: ../../mod/connections.php:468 msgid "Cautious Sharing" msgstr "" -#: ../../mod/connections.php:465 +#: ../../mod/connections.php:469 msgid "Follow Only" msgstr "" -#: ../../mod/connections.php:466 +#: ../../mod/connections.php:470 msgid "Individual Permissions" msgstr "" -#: ../../mod/connections.php:467 +#: ../../mod/connections.php:471 msgid "" "Some permissions may be inherited from your channel privacy settings, which have higher priority. Changing those " "inherited settings on this page will have no effect." msgstr "" -#: ../../mod/connections.php:468 +#: ../../mod/connections.php:472 msgid "Advanced Permissions" msgstr "" -#: ../../mod/connections.php:469 +#: ../../mod/connections.php:473 msgid "Quick Links" msgstr "" -#: ../../mod/connections.php:473 +#: ../../mod/connections.php:477 #, php-format msgid "Visit %s's profile - %s" msgstr "" -#: ../../mod/connections.php:474 +#: ../../mod/connections.php:478 msgid "Block/Unblock contact" msgstr "" -#: ../../mod/connections.php:475 +#: ../../mod/connections.php:479 msgid "Ignore contact" msgstr "" -#: ../../mod/connections.php:476 +#: ../../mod/connections.php:480 msgid "Repair URL settings" msgstr "" -#: ../../mod/connections.php:477 +#: ../../mod/connections.php:481 msgid "View conversations" msgstr "" -#: ../../mod/connections.php:479 +#: ../../mod/connections.php:483 msgid "Delete contact" msgstr "" -#: ../../mod/connections.php:482 +#: ../../mod/connections.php:486 msgid "Last update:" msgstr "" -#: ../../mod/connections.php:484 +#: ../../mod/connections.php:488 msgid "Update public posts" msgstr "" -#: ../../mod/connections.php:486 +#: ../../mod/connections.php:490 msgid "Update now" msgstr "" -#: ../../mod/connections.php:492 +#: ../../mod/connections.php:496 msgid "Currently blocked" msgstr "" -#: ../../mod/connections.php:493 +#: ../../mod/connections.php:497 msgid "Currently ignored" msgstr "" -#: ../../mod/connections.php:494 +#: ../../mod/connections.php:498 msgid "Currently archived" msgstr "" -#: ../../mod/connections.php:495 +#: ../../mod/connections.php:499 msgid "Currently pending" msgstr "" -#: ../../mod/connections.php:496 +#: ../../mod/connections.php:500 +msgid "Hide this contact from others" +msgstr "" + +#: ../../mod/connections.php:500 msgid "" "Replies/likes to your public posts may still be visible" msgstr "" -#: ../../mod/connections.php:532 ../../mod/connections.php:604 +#: ../../mod/connections.php:536 ../../mod/connections.php:608 msgid "Blocked" msgstr "" -#: ../../mod/connections.php:537 ../../mod/connections.php:611 +#: ../../mod/connections.php:541 ../../mod/connections.php:615 msgid "Ignored" msgstr "" -#: ../../mod/connections.php:542 ../../mod/connections.php:625 +#: ../../mod/connections.php:546 ../../mod/connections.php:629 msgid "Hidden" msgstr "" -#: ../../mod/connections.php:547 ../../mod/connections.php:618 +#: ../../mod/connections.php:551 ../../mod/connections.php:622 msgid "Archived" msgstr "" -#: ../../mod/connections.php:558 +#: ../../mod/connections.php:562 msgid "All" msgstr "" -#: ../../mod/connections.php:579 -msgid "Suggestions" -msgstr "" - -#: ../../mod/connections.php:582 +#: ../../mod/connections.php:586 msgid "Suggest new connections" msgstr "" -#: ../../mod/connections.php:588 +#: ../../mod/connections.php:592 msgid "Show pending (new) connections" msgstr "" -#: ../../mod/connections.php:591 +#: ../../mod/connections.php:595 msgid "All Connections" msgstr "" -#: ../../mod/connections.php:594 +#: ../../mod/connections.php:598 msgid "Show all connections" msgstr "" -#: ../../mod/connections.php:597 +#: ../../mod/connections.php:601 msgid "Unblocked" msgstr "" -#: ../../mod/connections.php:600 +#: ../../mod/connections.php:604 msgid "Only show unblocked connections" msgstr "" -#: ../../mod/connections.php:607 +#: ../../mod/connections.php:611 msgid "Only show blocked connections" msgstr "" -#: ../../mod/connections.php:614 +#: ../../mod/connections.php:618 msgid "Only show ignored connections" msgstr "" -#: ../../mod/connections.php:621 +#: ../../mod/connections.php:625 msgid "Only show archived connections" msgstr "" -#: ../../mod/connections.php:628 +#: ../../mod/connections.php:632 msgid "Only show hidden connections" msgstr "" -#: ../../mod/connections.php:670 +#: ../../mod/connections.php:674 #, php-format msgid "%1$s [%2$s]" msgstr "" -#: ../../mod/connections.php:671 +#: ../../mod/connections.php:675 msgid "Edit contact" msgstr "" -#: ../../mod/connections.php:694 +#: ../../mod/connections.php:698 msgid "Search your connections" msgstr "" -#: ../../mod/connections.php:695 +#: ../../mod/connections.php:699 msgid "Finding: " msgstr "" @@ -6239,71 +6262,6 @@ msgstr "" msgid "No matches" msgstr "" -#: ../../mod/crepair.php:102 -msgid "Contact settings applied." -msgstr "" - -#: ../../mod/crepair.php:104 -msgid "Contact update failed." -msgstr "" - -#: ../../mod/crepair.php:129 ../../mod/fsuggest.php:20 -#: ../../mod/fsuggest.php:92 -msgid "Contact not found." -msgstr "" - -#: ../../mod/crepair.php:135 -msgid "Repair Contact Settings" -msgstr "" - -#: ../../mod/crepair.php:137 -msgid "" -"WARNING: This is highly advanced and if you enter incorrect " -"information your communications with this contact may stop working." -msgstr "" - -#: ../../mod/crepair.php:138 -msgid "" -"Please use your browser 'Back' button now if you are " -"uncertain what to do on this page." -msgstr "" - -#: ../../mod/crepair.php:144 -msgid "Return to contact editor" -msgstr "" - -#: ../../mod/crepair.php:149 -msgid "Account Nickname" -msgstr "" - -#: ../../mod/crepair.php:150 -msgid "@Tagname - overrides Name/Nickname" -msgstr "" - -#: ../../mod/crepair.php:151 -msgid "Account URL" -msgstr "" - -#: ../../mod/crepair.php:152 -msgid "Friend Request URL" -msgstr "" - -#: ../../mod/crepair.php:153 -msgid "Friend Confirm URL" -msgstr "" - -#: ../../mod/crepair.php:154 -msgid "Notification Endpoint URL" -msgstr "" - -#: ../../mod/crepair.php:155 -msgid "Poll/Feed URL" -msgstr "" - -#: ../../mod/crepair.php:156 -msgid "New photo from this URL" -msgstr "" - #: ../../mod/zfinger.php:23 msgid "invalid target signature" msgstr "" @@ -6312,7 +6270,7 @@ msgstr "" msgid "Channel added." msgstr "" -#: ../../mod/editlayout.php:36 ../../mod/editwebpage.php:30 +#: ../../mod/editlayout.php:36 ../../mod/editwebpage.php:32 #: ../../mod/editpost.php:20 ../../mod/editblock.php:36 msgid "Item not found" msgstr "" @@ -6321,17 +6279,17 @@ msgstr "" msgid "Edit Layout" msgstr "" -#: ../../mod/editlayout.php:104 ../../mod/editwebpage.php:123 +#: ../../mod/editlayout.php:104 ../../mod/editwebpage.php:147 #: ../../mod/editpost.php:101 ../../mod/editblock.php:118 msgid "Insert YouTube video" msgstr "" -#: ../../mod/editlayout.php:105 ../../mod/editwebpage.php:124 +#: ../../mod/editlayout.php:105 ../../mod/editwebpage.php:148 #: ../../mod/editpost.php:102 ../../mod/editblock.php:119 msgid "Insert Vorbis [.ogg] video" msgstr "" -#: ../../mod/editlayout.php:106 ../../mod/editwebpage.php:125 +#: ../../mod/editlayout.php:106 ../../mod/editwebpage.php:149 #: ../../mod/editpost.php:103 ../../mod/editblock.php:120 msgid "Insert Vorbis [.ogg] audio" msgstr "" @@ -6340,87 +6298,87 @@ msgstr "" msgid "Delete Layout" msgstr "" -#: ../../mod/profile_photo.php:54 +#: ../../mod/profile_photo.php:44 msgid "Image uploaded but image cropping failed." msgstr "" -#: ../../mod/profile_photo.php:107 +#: ../../mod/profile_photo.php:97 msgid "Image resize failed." msgstr "" -#: ../../mod/profile_photo.php:151 +#: ../../mod/profile_photo.php:141 msgid "" "Shift-reload the page or clear browser cache if the new photo does not " "display immediately." msgstr "" -#: ../../mod/profile_photo.php:173 +#: ../../mod/profile_photo.php:163 #, php-format msgid "Image exceeds size limit of %d" msgstr "" -#: ../../mod/profile_photo.php:182 +#: ../../mod/profile_photo.php:172 msgid "Unable to process image." msgstr "" -#: ../../mod/profile_photo.php:224 ../../mod/profile_photo.php:272 +#: ../../mod/profile_photo.php:214 ../../mod/profile_photo.php:262 msgid "Photo not available." msgstr "" -#: ../../mod/profile_photo.php:291 +#: ../../mod/profile_photo.php:281 msgid "Upload File:" msgstr "" -#: ../../mod/profile_photo.php:292 +#: ../../mod/profile_photo.php:282 msgid "Select a profile:" msgstr "" -#: ../../mod/profile_photo.php:293 +#: ../../mod/profile_photo.php:283 msgid "Upload Profile Photo" msgstr "" -#: ../../mod/profile_photo.php:294 +#: ../../mod/profile_photo.php:284 msgid "Upload" msgstr "" -#: ../../mod/profile_photo.php:298 +#: ../../mod/profile_photo.php:288 msgid "skip this step" msgstr "" -#: ../../mod/profile_photo.php:298 +#: ../../mod/profile_photo.php:288 msgid "select a photo from your photo albums" msgstr "" -#: ../../mod/profile_photo.php:312 +#: ../../mod/profile_photo.php:302 msgid "Crop Image" msgstr "" -#: ../../mod/profile_photo.php:313 +#: ../../mod/profile_photo.php:303 msgid "Please adjust the image cropping for optimum viewing." msgstr "" -#: ../../mod/profile_photo.php:315 +#: ../../mod/profile_photo.php:305 msgid "Done Editing" msgstr "" -#: ../../mod/profile_photo.php:350 +#: ../../mod/profile_photo.php:340 msgid "Image uploaded successfully." msgstr "" -#: ../../mod/profile_photo.php:352 +#: ../../mod/profile_photo.php:342 msgid "Image upload failed." msgstr "" -#: ../../mod/profile_photo.php:361 +#: ../../mod/profile_photo.php:351 #, php-format msgid "Image size reduction [%s] failed." msgstr "" -#: ../../mod/editwebpage.php:87 +#: ../../mod/editwebpage.php:106 msgid "Edit Webpage" msgstr "" -#: ../../mod/editwebpage.php:162 +#: ../../mod/editwebpage.php:188 msgid "Delete Webpage" msgstr "" @@ -6428,136 +6386,18 @@ msgstr "" msgid "Invalid request identifier." msgstr "" -#: ../../mod/notifications.php:76 -msgid "System" +#: ../../mod/notifications.php:35 +msgid "Discard" msgstr "" -#: ../../mod/notifications.php:96 -msgid "Introductions" -msgstr "" - -#: ../../mod/notifications.php:121 -msgid "Show Ignored Requests" -msgstr "" - -#: ../../mod/notifications.php:121 -msgid "Hide Ignored Requests" -msgstr "" - -#: ../../mod/notifications.php:147 ../../mod/notifications.php:193 -msgid "Notification type: " -msgstr "" - -#: ../../mod/notifications.php:148 -msgid "Friend Suggestion" -msgstr "" - -#: ../../mod/notifications.php:150 -#, php-format -msgid "suggested by %s" -msgstr "" - -#: ../../mod/notifications.php:179 -msgid "Claims to be known to you: " -msgstr "" - -#: ../../mod/notifications.php:179 -msgid "yes" -msgstr "" - -#: ../../mod/notifications.php:179 -msgid "no" -msgstr "" - -#: ../../mod/notifications.php:186 -msgid "Approve as: " -msgstr "" - -#: ../../mod/notifications.php:187 -msgid "Friend" -msgstr "" - -#: ../../mod/notifications.php:188 -msgid "Sharer" -msgstr "" - -#: ../../mod/notifications.php:188 -msgid "Fan/Admirer" -msgstr "" - -#: ../../mod/notifications.php:194 -msgid "Friend/Connect Request" -msgstr "" - -#: ../../mod/notifications.php:194 -msgid "New Follower" -msgstr "" - -#: ../../mod/notifications.php:215 -msgid "No introductions." -msgstr "" - -#: ../../mod/notifications.php:257 ../../mod/notifications.php:382 -#: ../../mod/notifications.php:465 -#, php-format -msgid "%s liked %s's post" -msgstr "" - -#: ../../mod/notifications.php:266 ../../mod/notifications.php:391 -#: ../../mod/notifications.php:474 -#, php-format -msgid "%s disliked %s's post" -msgstr "" - -#: ../../mod/notifications.php:280 ../../mod/notifications.php:405 -#: ../../mod/notifications.php:488 -#, php-format -msgid "%s is now friends with %s" -msgstr "" - -#: ../../mod/notifications.php:287 ../../mod/notifications.php:412 -#, php-format -msgid "%s created a new post" -msgstr "" - -#: ../../mod/notifications.php:288 ../../mod/notifications.php:413 -#: ../../mod/notifications.php:497 -#, php-format -msgid "%s commented on %s's post" -msgstr "" - -#: ../../mod/notifications.php:302 -msgid "No more network notifications." -msgstr "" - -#: ../../mod/notifications.php:306 -msgid "Network Notifications" -msgstr "" - -#: ../../mod/notifications.php:332 ../../mod/notify.php:54 +#: ../../mod/notifications.php:93 ../../mod/notify.php:54 msgid "No more system notifications." msgstr "" -#: ../../mod/notifications.php:336 ../../mod/notify.php:58 +#: ../../mod/notifications.php:97 ../../mod/notify.php:58 msgid "System Notifications" msgstr "" -#: ../../mod/notifications.php:427 -msgid "No more personal notifications." -msgstr "" - -#: ../../mod/notifications.php:431 -msgid "Personal Notifications" -msgstr "" - -#: ../../mod/notifications.php:504 -msgid "No more home notifications." -msgstr "" - -#: ../../mod/notifications.php:508 -msgid "Home Notifications" -msgstr "" - #: ../../mod/blocks.php:65 msgid "Block Name" msgstr "" @@ -6574,7 +6414,7 @@ msgstr "" msgid "Item is not editable" msgstr "" -#: ../../mod/profile.php:112 +#: ../../mod/profile.php:64 ../../mod/profile.php:72 msgid "Access to this profile has been restricted." msgstr "" @@ -6598,11 +6438,15 @@ msgstr "" msgid "Make this post private" msgstr "" -#: ../../mod/wall_upload.php:41 ../../mod/item.php:1074 +#: ../../mod/wall_upload.php:41 ../../mod/item.php:1077 msgid "Wall Photos" msgstr "" -#: ../../mod/channel.php:107 +#: ../../mod/channel.php:25 +msgid "You must be logged in to see this page." +msgstr "" + +#: ../../mod/channel.php:83 msgid "Insufficient permissions. Request redirected to profile page." msgstr "" @@ -6622,6 +6466,10 @@ msgstr "" msgid "Files" msgstr "" +#: ../../mod/fsuggest.php:20 ../../mod/fsuggest.php:92 +msgid "Contact not found." +msgstr "" + #: ../../mod/fsuggest.php:63 msgid "Friend suggestion sent." msgstr "" @@ -6643,23 +6491,23 @@ msgstr "" msgid "Delete Block" msgstr "" -#: ../../mod/profperm.php:34 ../../mod/profperm.php:64 +#: ../../mod/profperm.php:25 ../../mod/profperm.php:55 msgid "Invalid profile identifier." msgstr "" -#: ../../mod/profperm.php:110 +#: ../../mod/profperm.php:101 msgid "Profile Visibility Editor" msgstr "" -#: ../../mod/profperm.php:114 +#: ../../mod/profperm.php:105 msgid "Click on a contact to add or remove." msgstr "" -#: ../../mod/profperm.php:123 +#: ../../mod/profperm.php:114 msgid "Visible To" msgstr "" -#: ../../mod/profperm.php:139 +#: ../../mod/profperm.php:130 msgid "All Contacts (with secure profile access)" msgstr "" @@ -6679,12 +6527,12 @@ msgstr "" msgid "System error. Post not saved." msgstr "" -#: ../../mod/item.php:1153 +#: ../../mod/item.php:1156 #, php-format msgid "You have reached your limit of %1$.0f top level posts." msgstr "" -#: ../../mod/item.php:1159 +#: ../../mod/item.php:1162 #, php-format msgid "You have reached your limit of %1$.0f webpages." msgstr "" @@ -6732,16 +6580,12 @@ msgid "" "librelist - dot com" msgstr "" -#: ../../mod/suggest.php:41 +#: ../../mod/suggest.php:42 msgid "" "No suggestions available. If this is a new site, please try again in 24 " "hours." msgstr "" -#: ../../mod/suggest.php:58 -msgid "Ignore/Hide" -msgstr "" - #: ../../mod/pubsites.php:22 msgid "Public Sites" msgstr "" @@ -6865,23 +6709,23 @@ msgstr "" msgid "Remove My Account" msgstr "" -#: ../../mod/directory.php:163 +#: ../../mod/directory.php:164 msgid "Gender: " msgstr "" -#: ../../mod/directory.php:222 +#: ../../mod/directory.php:225 msgid "Finding:" msgstr "" -#: ../../mod/directory.php:230 +#: ../../mod/directory.php:233 msgid "next page" msgstr "" -#: ../../mod/directory.php:230 +#: ../../mod/directory.php:233 msgid "previous page" msgstr "" -#: ../../mod/directory.php:237 +#: ../../mod/directory.php:240 msgid "No entries (some entries may be hidden)." msgstr "" @@ -7173,6 +7017,6 @@ msgstr "" msgid "Got Zot?" msgstr "" -#: ../../boot.php:1902 +#: ../../boot.php:1907 msgid "toggle mobile" msgstr "" diff --git a/version.inc b/version.inc index 64336785f..3c6be6e54 100644 --- a/version.inc +++ b/version.inc @@ -1 +1 @@ -2013-12-12.525 +2013-12-13.526 From 1975fa50da5f418e293e0f018cf1ed2bf0f43930 Mon Sep 17 00:00:00 2001 From: friendica Date: Fri, 13 Dec 2013 01:14:15 -0800 Subject: [PATCH 242/271] doc additions --- doc/html/notes_8php.html | 137 +++++++++++++++++++++++++++++++++++++++ doc/html/notes_8php.js | 4 ++ 2 files changed, 141 insertions(+) create mode 100644 doc/html/notes_8php.html create mode 100644 doc/html/notes_8php.js diff --git a/doc/html/notes_8php.html b/doc/html/notes_8php.html new file mode 100644 index 000000000..55c8c2cae --- /dev/null +++ b/doc/html/notes_8php.html @@ -0,0 +1,137 @@ + + + + + + +The Red Matrix: mod/notes.php File Reference + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    The Red Matrix +
    +
    +
    + + + + + +
    +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    +
    notes.php File Reference
    +
    +
    + + + + +

    +Functions

     notes_init (&$a)
     
    +

    Function Documentation

    + +
    +
    + + + + + + + + +
    notes_init ($a)
    +
    + +
    +
    +
    +
    + diff --git a/doc/html/notes_8php.js b/doc/html/notes_8php.js new file mode 100644 index 000000000..d0433afa8 --- /dev/null +++ b/doc/html/notes_8php.js @@ -0,0 +1,4 @@ +var notes_8php = +[ + [ "notes_init", "notes_8php.html#a4dbd7b1f906440746af48b484d66535a", null ] +]; \ No newline at end of file From 94975f8d3081051df48b6fdd73be3f4be5484cf6 Mon Sep 17 00:00:00 2001 From: friendica Date: Fri, 13 Dec 2013 12:30:44 -0800 Subject: [PATCH 243/271] categories should already be html encoded - ensure this is the case but don't double encode --- include/text.php | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/include/text.php b/include/text.php index 042a972d1..f808fb0a0 100755 --- a/include/text.php +++ b/include/text.php @@ -1095,7 +1095,7 @@ function format_categories(&$item,$writeable) { if($terms) { $categories = array(); foreach($terms as $t) { - $term = htmlspecialchars($t['term'],ENT_COMPAT,'UTF-8') ; + $term = htmlspecialchars($t['term'],ENT_COMPAT,'UTF-8',false) ; if(! trim($term)) continue; $removelink = (($writeable) ? z_root() . '/filerm/' . $item['id'] . '?f=&cat=' . urlencode($t['term']) : ''); @@ -1117,7 +1117,7 @@ function format_filer(&$item) { if($terms) { $categories = array(); foreach($terms as $t) { - $term = htmlspecialchars($t['term'],ENT_COMPAT,'UTF-8') ; + $term = htmlspecialchars($t['term'],ENT_COMPAT,'UTF-8',false) ; if(! trim($term)) continue; $removelink = z_root() . '/filerm/' . $item['id'] . '?f=&term=' . urlencode($t['term']); From 0215043826c2c036c3a2c88fa6e42089138c7c52 Mon Sep 17 00:00:00 2001 From: friendica Date: Fri, 13 Dec 2013 13:30:33 -0800 Subject: [PATCH 244/271] prepare for Comanchification of mod_photos --- include/Contact.php | 13 +++++++++++++ include/photos.php | 12 ++++++++++-- mod/photos.php | 5 ++++- 3 files changed, 27 insertions(+), 3 deletions(-) diff --git a/include/Contact.php b/include/Contact.php index 5725e06f0..20dd04d17 100644 --- a/include/Contact.php +++ b/include/Contact.php @@ -77,6 +77,19 @@ function vcard_from_xchan($xchan, $observer = null, $mode = '') { $a = get_app(); + if(! $xchan) { + if($a->profile['channel_hash']) + $r = q("select * from xchan where xchan_hash = '%s' limit 1", + dbesc($a->profile['channel_hash']) + ); + if($r) + $xchan = $r[0]; + } + + if(! $xchan) + return; + +// FIXME - show connect button to observer if appropriate $connect = false; if(local_user()) { $r = q("select * from abook where abook_xchan = '%s' and abook_channel = %d limit 1", diff --git a/include/photos.php b/include/photos.php index ea4b494e0..9828140b8 100644 --- a/include/photos.php +++ b/include/photos.php @@ -279,8 +279,16 @@ function photos_album_widget($channelx,$observer,$albums = null) { $o = ''; - if(! $albums) - $albums = photos_albums_list($channelx,$observer); + // If we weren't passed an album list, see if the photos module + // dropped one for us to find in $a->data['albums']. + // If all else fails, load it. + + if(! $albums) { + if(array_key_exists('albums', get_app()->data)) + $albums = get_app()->data['albums']; + else + $albums = photos_albums_list($channelx,$observer); + } if($albums) { $o = replace_macros(get_markup_template('photo_albums.tpl'),array( diff --git a/mod/photos.php b/mod/photos.php index 64ca86941..0e23aa5bf 100644 --- a/mod/photos.php +++ b/mod/photos.php @@ -19,6 +19,9 @@ function photos_init(&$a) { if(argc() > 1) { $nick = argv(1); + + profile_load($a,$nick); + $channelx = channelx_by_nick($nick); if(! $channelx) @@ -35,7 +38,7 @@ function photos_init(&$a) { - $a->set_widget('vcard',vcard_from_xchan($a->data['channel'],$observer)); + $a->set_widget('vcard',vcard_from_xchan('',$observer)); head_set_icon($a->data['channel']['xchan_photo_s']); if($a->data['perms']['view_photos']) { $a->data['albums'] = photos_albums_list($a->data['channel'],$observer); From c00f0d4b282f2242b9c2e154a5381029cf0dc812 Mon Sep 17 00:00:00 2001 From: friendica Date: Sat, 14 Dec 2013 13:26:40 -0800 Subject: [PATCH 245/271] a couple more comanche conversions --- include/widgets.php | 132 ++++++++++++++++++++++++++++++++++++++ mod/allfriends.php | 60 ----------------- mod/message.php | 23 ------- mod/settings.php | 4 +- version.inc | 2 +- view/pdl/mod_message.pdl | 3 + view/pdl/mod_settings.pdl | 4 ++ 7 files changed, 142 insertions(+), 86 deletions(-) delete mode 100644 mod/allfriends.php create mode 100644 view/pdl/mod_message.pdl create mode 100644 view/pdl/mod_settings.pdl diff --git a/include/widgets.php b/include/widgets.php index f53998b23..888da37a2 100644 --- a/include/widgets.php +++ b/include/widgets.php @@ -362,4 +362,136 @@ function widget_affinity($arr) { return $arr['html']; } return ''; +} + + +function widget_settings_menu($arr) { + + if(! local_user()) + return; + + $a = get_app(); + $channel = $a->get_channel(); + + $abook_self_id = 0; + + // Retrieve the 'self' address book entry for use in the auto-permissions link + + $abk = q("select abook_id from abook where abook_channel = %d and ( abook_flags & %d ) limit 1", + intval(local_user()), + intval(ABOOK_FLAG_SELF) + ); + if($abk) + $abook_self_id = $abk[0]['abook_id']; + + + $tabs = array( + array( + 'label' => t('Account settings'), + 'url' => $a->get_baseurl(true).'/settings/account', + 'selected' => ((argv(1) === 'account') ? 'active' : ''), + ), + + array( + 'label' => t('Channel settings'), + 'url' => $a->get_baseurl(true).'/settings/channel', + 'selected' => ((argv(1) === 'channel') ? 'active' : ''), + ), + + array( + 'label' => t('Additional features'), + 'url' => $a->get_baseurl(true).'/settings/features', + 'selected' => ((argv(1) === 'features') ? 'active' : ''), + ), + + array( + 'label' => t('Feature settings'), + 'url' => $a->get_baseurl(true).'/settings/featured', + 'selected' => ((argv(1) === 'featured') ? 'active' : ''), + ), + + array( + 'label' => t('Display settings'), + 'url' => $a->get_baseurl(true).'/settings/display', + 'selected' => ((argv(1) === 'display') ? 'active' : ''), + ), + + array( + 'label' => t('Connected apps'), + 'url' => $a->get_baseurl(true) . '/settings/oauth', + 'selected' => ((argv(1) === 'oauth') ? 'active' : ''), + ), + + array( + 'label' => t('Export channel'), + 'url' => $a->get_baseurl(true) . '/uexport/basic', + 'selected' => '' + ), + +// array( +// 'label' => t('Export account'), +// 'url' => $a->get_baseurl(true) . '/uexport/complete', +// 'selected' => '' +// ), + + array( + 'label' => t('Automatic Permissions (Advanced)'), + 'url' => $a->get_baseurl(true) . '/connections/' . $abook_self_id, + 'selected' => '' + ), + + + ); + + if(feature_enabled(local_user(),'premium_channel')) { + $tabs[] = array( + 'label' => t('Premium Channel Settings'), + 'url' => $a->get_baseurl(true) . '/connect/' . $channel['channel_address'], + 'selected' => '' + ); + + } + + if(feature_enabled(local_user(),'channel_sources')) { + $tabs[] = array( + 'label' => t('Channel Sources'), + 'url' => $a->get_baseurl(true) . '/sources', + 'selected' => '' + ); + + } + + + + $tabtpl = get_markup_template("generic_links_widget.tpl"); + return replace_macros($tabtpl, array( + '$title' => t('Settings'), + '$class' => 'settings-widget', + '$items' => $tabs, + )); + +} + + +function widget_mailmenu($arr) { + if (! local_user()) + return; + + $a = get_app(); + return replace_macros(get_markup_template('message_side.tpl'), array( + '$tabs'=> array(), + + '$check'=>array( + 'label' => t('Check Mail'), + 'url' => $a->get_baseurl(true) . '/message', + 'sel' => (argv(1) == ''), + ), + '$new'=>array( + 'label' => t('New Message'), + 'url' => $a->get_baseurl(true) . '/message/new', + 'sel'=> (argv(1) == 'new'), + ) + + )); + } \ No newline at end of file diff --git a/mod/allfriends.php b/mod/allfriends.php deleted file mode 100644 index bb4df30be..000000000 --- a/mod/allfriends.php +++ /dev/null @@ -1,60 +0,0 @@ - 1) - $cid = intval(argv(1)); - if(! $cid) - return; - - $c = q("select name, url, photo from contact where id = %d and uid = %d limit 1", - intval($cid), - intval(local_user()) - ); - - $a->page['aside'] .= '
    ' - . '
    ' . $c[0]['name'] . '
    ' - . '
    ' - . '' . $c[0]['name'] . '
    ' - . '
    '; - - - if(! count($c)) - return; - - $o .= '

    ' . sprintf( t('Friends of %s'), $c[0]['name']) . '

    '; - - - $r = all_friends(local_user(),$cid); - - if(! count($r)) { - $o .= t('No friends to display.'); - return $o; - } - - $tpl = get_markup_template('common_friends.tpl'); - - foreach($r as $rr) { - - $o .= replace_macros($tpl,array( - '$url' => $rr['url'], - '$name' => $rr['name'], - '$photo' => $rr['photo'], - '$tags' => '' - )); - } - - $o .= cleardiv(); -// $o .= paginate($a); - return $o; -} diff --git a/mod/message.php b/mod/message.php index b5420e5b3..6a33f1db7 100644 --- a/mod/message.php +++ b/mod/message.php @@ -7,29 +7,6 @@ require_once("include/bbcode.php"); require_once('include/Contact.php'); -function message_aside(&$a) { - - if (! local_user()) - return; - - $a->set_widget('msgaside',replace_macros(get_markup_template('message_side.tpl'), array( - '$tabs'=> array(), - - '$check'=>array( - 'label' => t('Check Mail'), - 'url' => $a->get_baseurl(true) . '/message', - 'sel' => (argv(1) == ''), - ), - '$new'=>array( - 'label' => t('New Message'), - 'url' => $a->get_baseurl(true) . '/message/new', - 'sel'=> (argv(1) == 'new'), - ) - - ))); - -} - function message_post(&$a) { if(! local_user()) diff --git a/mod/settings.php b/mod/settings.php index 4d95f75b3..c2a540063 100644 --- a/mod/settings.php +++ b/mod/settings.php @@ -32,7 +32,7 @@ if (! local_user()) $a->argc = 2; $a->argv[] = 'channel'; } - +/* $channel = $a->get_channel(); $abook_self_id = 0; @@ -132,7 +132,7 @@ if (! local_user()) '$class' => 'settings-widget', '$items' => $tabs, )); - +*/ } diff --git a/version.inc b/version.inc index 3c6be6e54..2aa2a72b7 100644 --- a/version.inc +++ b/version.inc @@ -1 +1 @@ -2013-12-13.526 +2013-12-14.527 diff --git a/view/pdl/mod_message.pdl b/view/pdl/mod_message.pdl new file mode 100644 index 000000000..2efb3de79 --- /dev/null +++ b/view/pdl/mod_message.pdl @@ -0,0 +1,3 @@ +[region=aside] +[widget=mailmenu][/widget] +[/region] diff --git a/view/pdl/mod_settings.pdl b/view/pdl/mod_settings.pdl new file mode 100644 index 000000000..0b0a99638 --- /dev/null +++ b/view/pdl/mod_settings.pdl @@ -0,0 +1,4 @@ +[region=aside] +[widget=settings_menu][/widget] +[/region] + From d14e2db6b436b3190db0c506cf5f907bd1a7fcc9 Mon Sep 17 00:00:00 2001 From: friendica Date: Sat, 14 Dec 2013 17:03:37 -0800 Subject: [PATCH 246/271] make home.html fullpage mode - make directory search work for non-logged in, but leave off suggest and invite --- include/contact_widgets.php | 3 ++- mod/directory.php | 10 ++++------ mod/home.php | 8 ++++---- view/tpl/peoplefind.tpl | 4 ++-- 4 files changed, 12 insertions(+), 13 deletions(-) diff --git a/include/contact_widgets.php b/include/contact_widgets.php index cc0a3d617..482bbed78 100644 --- a/include/contact_widgets.php +++ b/include/contact_widgets.php @@ -25,7 +25,8 @@ function findpeople_widget() { '$suggest' => t('Channel Suggestions'), '$similar' => '', // FIXME and uncomment when mod/match working // t('Similar Interests'), '$random' => t('Random Profile'), - '$inv' => t('Invite Friends') + '$inv' => t('Invite Friends'), + '$loggedin' => local_user() )); } diff --git a/mod/directory.php b/mod/directory.php index 616035339..92fb36ea7 100644 --- a/mod/directory.php +++ b/mod/directory.php @@ -11,15 +11,13 @@ function directory_init(&$a) { function directory_aside(&$a) { - if(local_user()) { - require_once('include/contact_widgets.php'); - $a->set_widget('find_people',findpeople_widget()); - } - if((get_config('system','block_public')) && (! local_user()) && (! remote_user())) { return; } - + + require_once('include/contact_widgets.php'); + $a->set_widget('find_people',findpeople_widget()); + $a->set_widget('safe_search',dir_safe_mode()); $a->set_widget('dir_sort_order',dir_sort_links()); diff --git a/mod/home.php b/mod/home.php index edcaa938d..3f862b596 100644 --- a/mod/home.php +++ b/mod/home.php @@ -1,6 +1,6 @@
    {{if $similar}}
    {{$similar}}
    {{/if}} - {{$suggest}}
    + {{if $loggedin}}{{$suggest}}
    {{/if}} {{$random}}
    - {{if $inv}}{{$inv}}{{/if}} + {{if $loggedin}}{{if $inv}}{{$inv}}{{/if}}{{/if}} From db11f5af78e86278463e40a02cde841b5c01208c Mon Sep 17 00:00:00 2001 From: friendica Date: Sat, 14 Dec 2013 17:06:50 -0800 Subject: [PATCH 247/271] missed this --- mod/home.php | 16 +++++++++------- 1 file changed, 9 insertions(+), 7 deletions(-) diff --git a/mod/home.php b/mod/home.php index 3f862b596..2b8e83c30 100644 --- a/mod/home.php +++ b/mod/home.php @@ -1,6 +1,6 @@ ' . ((x($a->config,'sitename')) ? sprintf( t("Welcome to %s") ,$a->config['sitename']) : "" ) . ''; - if(file_exists('home.html')) - $o .= file_get_contents('home.html'); -} + if(file_exists('home.html')) { + $o .= file_get_contents('home.html'); + $a->page['template'] = 'full'; + } + } if (!$a->config['system']['no_login_on_homepage']) $o .= login(($a->config['system']['register_policy'] == REGISTER_CLOSED) ? 0 : 1); @@ -85,4 +87,4 @@ require_once('include/conversation.php'); return $o; } - +} From 950bd72e020daf887ac487c95d6f4f2e42b1dee9 Mon Sep 17 00:00:00 2001 From: friendica Date: Sat, 14 Dec 2013 21:37:37 -0800 Subject: [PATCH 248/271] use sitename for the banner if nothing else has been set --- include/nav.php | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/include/nav.php b/include/nav.php index f89de2de0..7e99c782e 100644 --- a/include/nav.php +++ b/include/nav.php @@ -196,7 +196,7 @@ EOT; $banner = get_config('system','banner'); if($banner === false) - $banner = 'red'; + $banner = get_config('system','sitename'); $x = array('nav' => $nav, 'usermenu' => $userinfo ); call_hooks('nav', $x); From 0272ab4cd9a6428396489d88c7a1a89be76e5810 Mon Sep 17 00:00:00 2001 From: friendica Date: Sun, 15 Dec 2013 14:36:43 -0800 Subject: [PATCH 249/271] Provide a fallback channel to probe for magic-auth when we have no prior communications with a site. This will be a system channel if one exists, otherwise any channel will do. We'll try to use the first valid channel on the site because that was probably created when the site was installed and is the closest thing to a system channel we've got. --- boot.php | 6 +++++- mod/magic.php | 31 +++++++++++++++++++------------ mod/zfinger.php | 32 +++++++++++++++++++++++++++----- version.inc | 2 +- view/css/mod_profiles.css | 6 ++++-- view/tpl/profile_edit.tpl | 2 ++ 6 files changed, 58 insertions(+), 21 deletions(-) diff --git a/boot.php b/boot.php index 4134ce3fa..0cde9419d 100755 --- a/boot.php +++ b/boot.php @@ -205,6 +205,7 @@ define ( 'PAGE_DIRECTORY_CHANNEL', 0x0008 ); // system channel used for director define ( 'PAGE_PREMIUM', 0x0010 ); define ( 'PAGE_ADULT', 0x0020 ); +define ( 'PAGE_SYSTEM', 0x1000 ); define ( 'PAGE_REMOVED', 0x8000 ); @@ -367,6 +368,7 @@ define ( 'XCHAN_FLAGS_HIDDEN', 0x0001); define ( 'XCHAN_FLAGS_ORPHAN', 0x0002); define ( 'XCHAN_FLAGS_CENSORED', 0x0004); define ( 'XCHAN_FLAGS_SELFCENSORED', 0x0008); +define ( 'XCHAN_FLAGS_SYSTEM', 0x0010); define ( 'XCHAN_FLAGS_DELETED', 0x1000); /* * Traficlights for Administration of HubLoc @@ -478,8 +480,10 @@ define ( 'ACCOUNT_PENDING', 0x0010 ); * Account roles */ -define ( 'ACCOUNT_ROLE_ADMIN', 0x1000 ); define ( 'ACCOUNT_ROLE_ALLOWCODE', 0x0001 ); +define ( 'ACCOUNT_ROLE_SYSTEM', 0x0002 ); + +define ( 'ACCOUNT_ROLE_ADMIN', 0x1000 ); /** * Item visibility diff --git a/mod/magic.php b/mod/magic.php index 03d09e70d..aead559a7 100644 --- a/mod/magic.php +++ b/mod/magic.php @@ -33,21 +33,28 @@ function magic_init(&$a) { if(! $x) { - // Somebody new? Finger them if they've never been seen here before + /* + * We have no records for, or prior communications with this hub. + * If an address was supplied, let's finger them to create a hub record. + * Otherwise we'll use the special address '[system]' which will return + * either a system channel or the first available normal channel. We don't + * really care about what channel is returned - we need the hub information + * from that response so that we can create signed auth packets destined + * for that hub. + * + */ - if($addr) { - $ret = zot_finger($addr,null); - if($ret['success']) { - $j = json_decode($ret['body'],true); - if($j) - import_xchan($j); + $ret = zot_finger((($addr) ? $addr : '[system]@' . $parsed['host']),null); + if($ret['success']) { + $j = json_decode($ret['body'],true); + if($j) + import_xchan($j); - // Now try again + // Now try again - $x = q("select * from hubloc where hubloc_url = '%s' order by hubloc_connected desc limit 1", - dbesc($basepath) - ); - } + $x = q("select * from hubloc where hubloc_url = '%s' order by hubloc_connected desc limit 1", + dbesc($basepath) + ); } } diff --git a/mod/zfinger.php b/mod/zfinger.php index 0827f3424..aad8e224d 100644 --- a/mod/zfinger.php +++ b/mod/zfinger.php @@ -52,11 +52,33 @@ function zfinger_init(&$a) { ); } elseif(strlen($zaddr)) { - $r = q("select channel.*, xchan.* from channel left join xchan on channel_hash = xchan_hash - where ( channel_address = '%s' or xchan_addr = '%s' ) limit 1", - dbesc($zaddr), - dbesc($zaddr) - ); + if(strpos($zaddr,'[system]') === false) { /* normal address lookup */ + $r = q("select channel.*, xchan.* from channel left join xchan on channel_hash = xchan_hash + where ( channel_address = '%s' or xchan_addr = '%s' ) limit 1", + dbesc($zaddr), + dbesc($zaddr) + ); + } + + else { + + /** + * The special address '[system]' will return a system channel if one has been defined, + * Or the first valid channel we find if there are no system channels. + * + * This is used by magic-auth if we have no prior communications with this site - and + * returns an identity on this site which we can use to create a valid hub record so that + * we can exchange signed messages. The precise identity is irrelevant. It's the hub + * information that we really need at the other end - and this will return it. + * + */ + + $r = q("select channel.*, xchan.* from channel left join xchan on channel_hash = xchan_hash + where (( channel_pageflags & %d ) or not ( channel_pageflags & %d )) order by channel_id limit 1", + intval(PAGE_SYSTEM), + intval(PAGE_REMOVED) + ); + } } else { $ret['message'] = 'Invalid request'; diff --git a/version.inc b/version.inc index 2aa2a72b7..d967ddd6a 100644 --- a/version.inc +++ b/version.inc @@ -1 +1 @@ -2013-12-14.527 +2013-12-15.528 diff --git a/view/css/mod_profiles.css b/view/css/mod_profiles.css index 8378245d2..6d935ee4d 100644 --- a/view/css/mod_profiles.css +++ b/view/css/mod_profiles.css @@ -35,9 +35,11 @@ margin-top: 10px; } -#profile-edit-with-label { +#profile-edit-with-label, #profile-edit-howlong-label { + width: 175px; - margin-left: 20px; + margin-left: 50px; + margin-bottom: 20px; } #profile-edit-profile-name-label, diff --git a/view/tpl/profile_edit.tpl b/view/tpl/profile_edit.tpl index 183389b9b..196b3ac6d 100755 --- a/view/tpl/profile_edit.tpl +++ b/view/tpl/profile_edit.tpl @@ -108,8 +108,10 @@ {{$marital}} +
    +
    From 731ab80ac2ea78f595730ecb8f4d62d7b468d084 Mon Sep 17 00:00:00 2001 From: friendica Date: Sun, 15 Dec 2013 15:37:51 -0800 Subject: [PATCH 250/271] set system.projecthome to 1 if you want the project page for a home page. There was a bit of re-org of mod/home, which might alter the behaviour for some existing sites. Basically we're not showing a login box at all if you've got home.html - there should be a login link in th nav bar. If you haven't defined anything at all we'll fall back to the old behaviour but still allow the home contents to be set via plugin. --- assets/.htaccess | 4 + assets/diamondlattice.png | Bin 0 -> 534585 bytes assets/home.html | 204 ++++++++++++++++++++ assets/logo_antiprism.png | Bin 0 -> 62321 bytes assets/narrow.css | 218 +++++++++++++++++++++ assets/redmatrixlogo.png | Bin 0 -> 105403 bytes assets/wide.css | 395 ++++++++++++++++++++++++++++++++++++++ mod/home.php | 102 +++++----- 8 files changed, 875 insertions(+), 48 deletions(-) create mode 100644 assets/.htaccess create mode 100644 assets/diamondlattice.png create mode 100644 assets/home.html create mode 100644 assets/logo_antiprism.png create mode 100644 assets/narrow.css create mode 100644 assets/redmatrixlogo.png create mode 100644 assets/wide.css diff --git a/assets/.htaccess b/assets/.htaccess new file mode 100644 index 000000000..ebba3d779 --- /dev/null +++ b/assets/.htaccess @@ -0,0 +1,4 @@ +Options -Indexes +Deny from all + + diff --git a/assets/diamondlattice.png b/assets/diamondlattice.png new file mode 100644 index 0000000000000000000000000000000000000000..f1ed7dbd0dce895bea75f894559e5876fab726c2 GIT binary patch literal 534585 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 B{Z*xJ_4L(VM&e<^ zEnatlVd*uJmjU+-;4fqc#RQ|`X>Dv&3tw2I-s;?thPFblKhy8~Ia;Kiy*KA7TOc*y zCH$~uw4_0T(uJ_qMyJR6Z$fs-9|HzHiW5Muknw?grL)5i8PNrrI&LH+wcfYWd{p;Q93WFNFiU#8ZZiYX&_Zs*SUkw^&Xx zx_wv~E|{le9UOmK4GyhswcneUI;*o^!>*7o4T8I6veL#TAO3VF;(d1Cj_80OFo_`6 z>Q`jyN_}d)?l5vKd$z;}j%au;TTQTr8K`BvCC9XDu^#(!`Iz{eO{<*Hw9Z$Vd) zeCaQ3_HLE=W^oU=0!{5e*K9vUhA6LVY_Z3Me|*pR%-_~Na!->c2t<4Z7b`54KS4je zGq8ASQTClRf+Q5k@ul)h!Roc-ncavE-FA!_ zz#Db8LmCjOai}&xgt2Onhq>0I8@Hf=)X#@$}Q-n3tL76iOZULe-Z&VYO(MS z_=tcgSug^M_Zm|!RE80H!Y=nwZ>l~#SHEL*)dntp^Jm6c<5Bu`-Brwp>u0f$Xd8Y+ zs8xuj%(KRq0H`%p`huUDBkSdP2`S^qwdh&rK!=y4_8^v=C2digDx8z?vg~4Yo&FQ{ zPnH$?De9Bt(dl23=-7o>i|gW!@}A6b7R7sJm@8Kusy_|RNxZe0(a7in5K|+a8SQj= z^a8DyLc}avpG+-Xi6=A>wUJ^cPoniw1a&qjO;s=59)YwI{SV&7Nhu5;?&Zt z%xlRnUsm>hp|fZf6Rs6@7halw1wR*e{5klM!FfC#16rPASY<8xDont;yjUE+1^KK0 zPn7VqA})*8f4R&}J1uZauguy}?SW5LxECH)_%8OygKxHj?oZW@mk$>>IDHA`I-Y*m zV%vt^Bntpp)0=0!{Y3K4L##|)ITK(*GL+bcp|X-uL~oImq*uR@IU0-s?LU%#;>@7R zXoUZA=*pvb@6svhVv@rt0Hmmb>@_Oju*n^c7odtOcYoptoMhU9vf7OKt_ULOEt&%! z`=z5RX{|SzQpNE7-F3DP8Atnb2KS)z2{4XMKUR#K+(M(wYT}HsuR&Uids4HhLIKuo zfW4Fwk{wtgEB!gaw%@+*GiQ;kRMxl(U+@O}OwwUkQBWh>{fj>|gQ7?>scPI`0{?S9 zH&{X=PUh%Praxznl6Md~xs6>LHcKN2d$I`}RiHL|O}MEZF{34W)O>)UY;8=?rOIY! zorvh;8l6D%Umjy_xp1}!VipD|J|{hGDWSY+MtA7*X{t&~Tk(rcCyNJlL~D&skSi$q zqH}}X;p|1g_((_&&1C`gy&NGHk<7C8u=30YAC;wD|IBI{n@emR#FbGZ(UC=(9ueR_S0w?cgV%-9B zhbY!~#s+U9kX1iW1F;RfAE<3itQMcy0oMcxT7af`amAF0{BcNa!QaERen=j4JSP6BrPmTg zfUteATF?KesVx13ccxZ*vfjx^>$>r(-=J69a-!4ju@4HvdKq9`(2J>Y$KEjI9SQN-mjHZ_fhF`m9NFTRdPRy z1zLNlc~tzf#=f9kS9($aJdTqYsk@DK4L5PDMeKJJ0gY}gh23>kK(WIq%KYBO26qgr zRwR+U$i~}!8VqE>5Q7Ur-_!D=8%0-wV%>)P#zy*r-WBj%%ORocvQPX{u?ORehQ`Ds zM3V*o_)CaFwF+qURkX~*nz#Q@viF91$G$5Q`dvn3sXJQ0{Zfm?w<4Da(`-hbdm?9xyJ|+h$@O`md6Z!6q{NDOc`dL{fHe%0v{kLV!dV%>_3sd5o zt-rO>kz!~<6q?OTW#N~sTLhQPn0_I%JY`-p*fuic3D$fO+bi(DnZD6@3AW-}1&KjF z^lxJ2&ZW&NYiTY`ld2}FUII|x%(VQP&Q7^kzPSic@`%ju`R&=1WH*t!v%ha#@{swP zzpa@Xqz`YOtLHmrPe6lVfV?fEPrqMS?2^`F;Qk#_d_)v*W+ExO;522Q&GXFM^9o%@ z3ySxIgY;6dB6PaT$)Vq7R>vqQ#+f3os<3am^I^oUW+yEpk1KOmcS+;s>X%?EF}TF;pIj{yCWpMdx! zggQO@-azq!|J%KxpVd#6E@(A0C-L0#l_oe3~5nJ-FmjWqT{M#;Nby^<)`R7{O$A)3=nb<^eX ztHmFAix=~wMCW(|TbvR58Wh6D38H0m8~Gn87iyW9(0?2IZ@W)Dw~ylGbnQQB4kkjQ ze}cfFxE2oA+xt>PWMa@fRWIaobAC17cPT?wcY_{U%4jp7KbQHAIrQ2KS}AneZg2BN z+FYD8UcT3^hHLlPu*}H57<>HxG~AOe=)K@&ssx{avo(z83rH z_yvKJ>W<+tKd~XNI9c7Lqj8#mlAA*>gHSY%I|J#uPkwgY+FDtLZ}zY2e~+q_+Of87 zQk%2nCHL>2xx-kxMfJs>3V*L;gqPCLu?c~%1t=@HPG!6Te7jxbx?3zf6>;oWab+k( z@EWv&{^g52f@q$(dEVo+e|t0ccuXhrgK!k2e2dI_uGYg{Ofc^%MXTPqth}vkO3)G; z=)xR)hM*A9g8;IfKHL(Gjg|B%TUm6uBHf(f8rOERBi$3$OpxiLlHA4 zob-yU+%zNe#wn))O8O0i6%{|D z^piY0(|bR~T`Z<*<7{;+^bc2#Nu2eTrt zZ1368E}5(R^l!2E6#*csCJgwmFV{`K1K)_4iIhFyAW*a9fRvjO4~yJGMRg|24kmK| zHhfNIViPVENzQj#`8t1kL^+R}b_s||#LkJcVKhHveQ{&6EGB4Ne3@S|ahx6NOm?Qg za+mT)^l4GqT=-W)FZzl!C-?Cs1Zk~iki<(u@5&`&w#|aM5`T$hd9BJe%6E`8`)}>Rc%pM&!RXlov=3g)OuuOni@N+Ls29i`ui#vw@Ye*|1CftP*m_sBZuk^-HTgH z92Aw^gb)GDM~1u6 zQUtz&IN<1m&A%?tUnqriZ?$9D!|>!mU5meqG;~(^*)t>@S{jV>0)1!Pa%P?|voox> za}rITYcGZoFCVT`oTUsSQ#QL%qmk7GMD7QXZ*1(yV@kSb8q7bu!zfDLvSY6VU(E}2 z%1edprwF+?``8;eWA;hx5*~mT5=9p{i~Wvj-Lg!QrsBv2w)WXHrj*CFpPy@!45q1Q z4;7wP1K5rIpWeOnE;?*2E8JacNL@}O0~=5S>3P#6L>w$&4k2TnUNo&^;zD4Q&H4U~ zej6{`f>Eum^~q{?8AJ2;nE9stYX*tpxn!SlpVOC{@khV)=~w)3-ElTFk@Z>9S^S%x zf>is_`;lM6Rp?6CsJMeCKxQJAGJ{gQ_EkgYR6msFtAc6Xb=Uh0Qaivs;oI+wE9-W%({b?SDgU8-? zHTJby8wd#Nm@U0Gnld&Knx_bRgSlx)9+4UF)WdP~_fJJfLbaKw2G6d$sKs%mm3m|=7^~wVimR+5k7S^&i(QIj^I`8q z&HJDAcdivlPHSkpp{fsqxxjlaiB&{rlBL^GG&yHQE>No$(ORw)dnmI{aN0Y3P*qv2 zo_EU+LP{0}*8tQ@C_80u(-Na|Lu;!fVfliya>)wNIc9gJ{;oa9Y@|!Nn>y%d;HUHD zbyu~q%+>wkJ}ojdz~e%#N?Ns*#@X%4SPF12Bok7-qQih+ykXAX=%2&_aMKPhQCN9V@kX;*-3#Iuypj}T%yz3V7o7^fT9DA|o8io;SRTo7d z3!Z>RabuX7BB~zHE5wKBN~_1NGexbNik^+Cm{;F?u&P(Wi9ygsyIi5|0#a^I?bDY| z`0E{XSms7|N7U(-*66_2-gEgw;5UFZj}e?~s>_pzWxBLe>dKNVSZ{G@kNY<+VKI6t z@%RJ7vS!B)+hk@yKtKIA+u}u`5ZNE(`E?NmbhI3R0kitiBXGLB&~fongG#12Ok>Z# zQdep^-dFAh?QK9I0y0*=FfkbfIySGRb#6a{kjXeAEA69oqZ{c))8?!42i^5N_cbZ9 zT8wPzFrH~?_M@$Np`H>V@{fyhQ}}&HTg`@V6bOTq>C=_TH$SW zVwQ#!z+wlyQ86xC#|ROs2A|)ai*!UUpuA>O7Kpm!WTs!W-Mt<=PSS( z;{2U%9Ho`!MNI9=whPZj_*LO{nNK{2v0_)y0WOE?eLu?%mgy{ z>j1*;Qk=xfY$Z!?+rmKh*Cx>=Kna(jyiiW-Y_HZn^cJuKqb_G4yd_!)SoTOXXJf!B zeBCa$@6whL%h>#I%NMEY#y#Ya@~#ONB? z?XpoQasaJfBo+k4FD})y)?PkE*~Fp93$`QLc5_98q^y3-&hF)kdKX^1Pi6*wHC1%~ zDCvm!Vcejy6Ul2&ESR0CL?g&O0J|C5Y$`?Y|N3B>EEK5NBVmDAP; z(M4+lGDGOWv+c!Pho0cA<(=PW<}W&UeK?Oc4-(B5s$oZG@=ROu;RF(&J02-)5F+8JsM%uRZpN^J0_>8@4-R5y{e(%X!(xnG(8|{nb=`L~t zA?_zxyO#3SK7@-3D8gJu`@gh^Y9$wIW+A3o4f>%t)T+oZw*UlWyYEvQ57thYrAOzXJUJ>dO31V9M40#rvOG81f;*%*jCSl3o0K4r<8&~=a zKywxsf{JWgMQd(xhLe-iQmtWINc-}1ylD7NEj2s^%xad35k=#C|JPyKuD7LT7H+L2USg>Id3m zD74@Yy(?!X(JhFehhaUTE=sqkw3>f;?w|9R_$J>HQb>}qdm95@Dok9p) zu<3z6{fy#K8QZ64Or3UF{Xo^$zS2g1q~7JH7?YA!vHV*0wCv_?4)1{$k!Of zDAS9V^hsGZT+6SXJq(eCFFuybmvmhjU>_Ub>G-f;zD}{RNyPsgmd=DNpPB7Dm9~SR z$R|){fGwBkVi@_VP%m||H*27_y`S);&*Vy`9{z2+egn0HyK?IFc6{SRA@xX=$#tAaO#kPC{coD2v%j#&0aGJKjUa zCzhoj#f<2)9wiRm&SZgXZ$&QxXj*F_V2v^0<94CZYY-pwwZ)ZE4iqjfjzAs)Smi`c z9IziN%y}EM@ zqhqiwVNZirU=zfVGH5DdONfhPlU=3xV4!HN=~LYCqFgoae-U&j(Td6VH=7534^qDr~r~b4N?FFhhAm@m`yTe__}ZAKt}Wi z*9^#iFns13_#FP7)#vdYSLXTpLzZNoBF)CZ?5GHd;Oo;%wS>e9)=_p$zt1k?ob+Pc z-#Y;U`%|GwoHZJ82cC_~taT_h^_Nb;Bj;i!Tk9p~j#K_#ek7O1z%R{M?jPl9N4Wc5 zqcufo7JX=^18G>LsbPAuHLD%zTC;T%V-_+T+Qd|I*}+`l6-Q3tPqUdOn4Ax<^%~Fm z_YJN(w4TBL_b!PTut1Z_ET$Ij3kS8qk-$f7U$78U)vbb&1|?`WZAN-5@WBLw{ARi? z_6LNPg7v<+s!7P2up;200wBo=-f9`D@bH%VdYYM#Gl1*{oXwXn`B=HH{%Krlqo928 z#mnWZ$P>41$|ZJkYyE66FO%#psh!{VT)D9RBVK34QFfaPd{iOpXfX3t;JHaAT86xe zzgpLT7C@i9bU2gbvvYl%8qV+-N(1=XJV;%H#yIC>%><#s<=bu4E)29wqB_&=>Z!3H zmXcXKvS}~Wa!JmI9d(ny?CJZ{p@i>102~C$!!>a~`zJUmver9YRLl6GN23ohU6${R zp9t!t41A^J+;Yw1Wpi+QrQp<{#tq;cEw7qlbY63HI?4n38(Eicw8{Pu-RWU%%4h8@_3-B9Ot&bMBUo%MB|i;W<6Ni%saKLfRP#}Qz2)nUP( zf8MKCerU;FMwQq^=0Bqel!P`0g_@LJC465@!9%WeXsVRbrRI6@s^G%*wQlh5Bj_oQ z$G8UGNSRrf1ZMM~onvL* z;w7h}unU1Q9*E{|@9e_u1XXsNqVZx+iY-^CwBr}mhiID_AD`pbC+BdTK@f9dPV@mMV$^<9p z!NiFNC&%;y6*rpmg828#ZmgUPOk4!0XRh+TsbsggQi`w(t^A{@vTxi;(H~9DtBmOG_N3A;VTqecM-l*VFPCYps7r zG6@nE!vA%Hf%&0|y_Of{(bK_GeCF_sjPux%p3kngfND{BeYv#YKIgCxTjo!SD5=8+ zDp}S8c%S5siOvB_T(FP>Gm*O{Kp9-w*fgo?mT$p1Ya)vFC}2&zq1eS&OYFkDSxC)!4Nh>SgI7 zO(%8{8kK(tUOLBGoPNWs#+m;cr!x+w;hpe4y>BC;5z-}9zSC?kH0krh5lG0`y6wOB z)VBg64Eo=mW?Py1WTL$wTo<=AMV(4=y|gb(x@Qtcvh%FXAt&+r?l#$u2mPu<%%3qF zq8hQ!9SNteEih#uy z{wo)IpS|#{0K+4d%gLpn`u?1&&DP{b(4r7O>t}NlwLxUw)yE$1oLU~A9nfk*)t%+S zhXM20QckX5s;HqcgBphNQ!&|?bK0qlWYzVfL+8!aAzl3TVur&O|Ev?|1fI37)`UIa zGLvO`o;A)Bq*yWYB$nCL=UeR=OpamWo5R#imZeg4cH!wyF{}EwBZR<#49Sk+I|&*9 z8Fo0?g-jQVKFhKQ)7}Z=;z-D2&;0uNowtYE=IvP&+m2t&WwFjxrZ#Z_p5QlUTepIo zAqDhrh=kfdQi`&WSXOhC;*u7fEGJbnGEZao@GKtoVM86R`TrG{Mbm$ODNM9xSOTxhyA1Pgw} z-ho|Z-n-dazaUUoD<}1J@K*mS7$0(;ALCEX7Nya%Kn9?^4NXpor)(JJ&mBw-V+r%W z>G2fNTc=kl+lIIBAm`|UTGJNu^7-AHpSFn(wn=+v$%L z?x+8gn1me`n`F4KD$cmyA5jr|HOgZ)A?WQ<%9`8FpnY)*6SM296f2#AIbjyFul3Ce zjj}$kAehA{rRG85iPX(icFa_3O0}K=la;V*Dgrb6VkCFH-9yP16dLsPH6IPW{!rn` zv57rlAa1b4cBcS8{>R&E#z*bMhUKUs+$C0HLMtD&6{Z`ju_u_ZwspcmYri(Fzjta`!ACrnNKRCGn4}n3W=d(t)aLS5d}U-0->U( zZI|L7^ke%4qLqs+rO0H2Go3uc&S`?4@Yg#pXWzh3N0TJ;$RT?4BMN;vwQy<2d1JJv z=ZnwuKpP!lBBmFuFOw@NCx&Pa%`-icIa`S9IDER|lGm%(5##j=KpW#KybCvYdwK+A z$h17$kt^H0UJ}c4Q_14_9E%s;7N%#ztH{DAjJeMTduomR#?W zuOUo`?&4Rc0?ZgvwA?Zu%-u_RZ|~D_$gHRKm;P(L)R2tQz5TeUg$~ZG482twb90I* zlG$ITT(xV=37N>U@{~NZs=jp!UVRT&ld=2T!_xE;mF+md{9q68x~-w6Tdnt^8!+1E zq&=pXNJf)Qb|U!SwFr~k_m_F>9tyvFzf`p(JWn2B*Ydm;7#cyc_*A(=s&I`0mAd%+ zAp_}Y)-AK@D7UTT#PFdA88L(mLAAPhlGkmyR|>vU5J|7D2)OGveQ&qp*|7@yM5L4! zjajB&>B~wXo4T?=AvN<`L+Fkv=hxM0@C)%#FUaU@J6b|0@9$2GZF!YK=9uJZL<+w4)xKW>e5*7A9kSFf>ur38}dnAAp5pSw>UHCl4^ zHu=(SV2s5~FvI+9HnWV$*!*+rw3Hs{>oNlP^Zb=#&yb0A-$B~n!ZGjJ7gQn1MF-RG|&55#K8T6UTwa^ylOXr!Xls2 zrQ8P1GgvM2GC<1Cx|tC-8EBL5!YG9J1K-@qCqJEtudUX&25O%76bPGLHJ|&c)jPzq z9XRTyC$<Fp=WcsH@yHAoK)W9V z9^XZ#tVydlRpVr5E&>cv^9_ZaT5t>d;t6ZSt6|p|qUnwBi}3Br_Y;;CG>KHJGiIj& zMzimm$=0zHZKlL65+^94*JNMu8g64Q@KwMmvL4P`VSX>}ho3zYRANZ~bwRL0>rA8F z8;><2J#znMiNg%~0MU~JP9AB0d#{}8$)X&y5`P|^jl5u)BnHL#d;VFM3x-9>J8}XZ z7i&Q#Te#R3>Y}AxO4D>x<6e(}G1L|=#YHTSa6_;fP#1ZU0Sqj8+X(->p}qjq44$t( zY(WDUARc#sDxT3!&qWY2)G^5#y0M&X(5I~AOQrONcL!vpJr99??TF4)Iw@64lewvA zo#}-AMk>#gE8oL_9gk@bI-;E+chFC>qa3QyWXfr^aQ(+^Ip3oix+ZrMaKYRcKQ-1l zHQ5=?wEg52Yb_$1V2;_ex7Q}&p5TuIc6DWP*nSt_@aFbSF&+9+BWi1)II;VcQ7OgPQxj(KpMZz zO*~8UJ_*-Ij45OwUpmfq+Dd95d_q_0>MB6rT3UgI2KkYb)1=wVAgC|txB1BrV!KH9 z=MUVDpBdKqwt?~|*Wxm-^AROe{`GRNu*s}6^1n1IgB@ZhVUA%o>K$4h zXXy1SdYv%&!|W09cX#p8+S?ZnEK>_XakIJYKbY2KLd~x(TEkX0>T^l9LfKAKGMnlz z);=t`hh8@ir#~3?{@(^k^LP{Liq(fvSi4zd zDlU%_y*%7_n2&bu;O-1gv@q-}cbH{OH~Zqp@g9C<`fdN4qgmfeeX_i|SJ3w878u#; z%GS+46?)!HpTC3yF@N?Yy_pEJIQ0&Atu!^ZKDybfVF3T5L+hqcSyVoh+5_x}$(SA7 zkSk?-L5|z~ekqPLynY}li(s)Gb85sbi0pnZ3K&bO(t}v&Zr8Z!O}f!i0|txkWB=&- zxqJ!?Vjfw$-@&}#)PQczj@A5L5$}0bp6!=5q^o8&rq-;FKce#1?-4eX%WQF1dD}39 zuK=CLb|;v#3|`@T^<6ryzDbtsRG(}9^f6m>3YxsTvOy9ak&h?4a#|4%56*xD?cm>* z$CREKEK8H^fu4HZg%U=+Wx^5`JO6cHL?aQnl>?=C#uj$z+ME+lXINxVi` zl<4{W-BrUm5FazL0k9&u+lS^2pV{xmu(Jr9gSXEc#K--Av?PZ2>E}Pp$?od*tb96H#Ml+hh zsL`-78lK&^uix`8EY3Nf>%6b)47=IlMqIbv7vcYj_}Hpp!mKnhAfKxOzXs6BUpCsm z#d}E|AJz1^?cZx>U-&?&uLX~XD|7*ejyZSDf7;OemE9I5Zvid;dxKGbC0k4&PD1y{ zFKk<2U2I=O={!yn=an%DjB0W}4z5dx47(QlVMt9wzcID;b=*XAKh%BsD69uAaUFTo z+IVSou#751A&9~gqWE>Z-x@_>uqm1@XZ$9a&6XpZ%`IkY{0&irsW1bQZ5+VZaux5p zKc6=6O22Cjof+#k?`{i`op!j&xN!GNEeW0V0a8r+35;~U*3o<%B3%*yuAuh!!S%f= zBYZH-R>)QSHffuo_paEE0F8GzA@ALZ!BC7_E8bHvsa^=}t_buVgxi(gL zuaWKCownhF^Dt@^@L)@kGCt=E@A=cC9LB)g`wEsrd?P;%VfJ>-tWQV?~;5jx>;?A z-M$QQR|VU&LS$I7C6+m2Kc3-2%3@EJPM6%i*>h3UtfZ4Lj`_jo{WZV3(@>h+x%3II znPP6ht&ft%L+12sus2ftUEXs4EImD4UH@HbP}OKdWPap5LLM3>{rFo`CPJd^T4KxK$H(6NZs?KH=aJiG=kFL1&`q#Z=83iV4@@wD+k%dm`aTvHdyKd?XA2?{ ztPOFClyUARpKqSXjRowwbe!+X$+8S%iBl+3%HGXw7FevFKmNnzw3i~!|K5J*iG&mI zYbSy#`AiP!GdDQzj!4R)0hUAOyCNxj=%G3HN=Rw$K)8$TS%23);T=BT)PK83ItS=k zm!*sHKvE3Xw>`WF)NO1P49H|UEf}Ezlp^wXGD`v)E7o0((%4;m0&JdSNGSsGBy0JR z1AfbNy(v~Fd^2u{C|^Vbi7dl)b3k#9x)8pJ48nTZN8P(GA5=OoQ4!eA=p+qtJBJa> zFlzl(zk`Y6RNh)G|>*+uCG0~sdhZ5SOg#z z<=d7_ON33$ZzA%~WRT4h>@bqt0|a7j<#IjX^GA?f=RF@-4j7`NF{Xag2>ORZ#6`O7 z)qu-COvy6w?ygDMi9ZaEvn9gnMnRgg5IS$e0}tGIM-y=)SH=MJI%>3lsL0MtB6(kk zMD=_F8XH*>f1W#-1wA3_pBLRkf_?bLkJQpfA2TTP+1(rXA^W<^i?S>Rklj4CR@FE= z>FK2Dge3Jcd{v&6lOs$#-TzRj$*HByjitvawh-FdV!c}Kcm zwO&kyzIfX#sKrj}TI%!7SnXT7>rj!C%)BN?yqROEj8J70$+_R&%YI-PEJE%i_z`D@ zOo_A~5jeWKN~exvNHuK_NVh`^0B|=Jkd>*?F*hLjs`38)*iX<6>%<+jF1|5aa0liC zpvye;Hp>FjxIEt7oBVlEMLN^sav5uTQ$i@3#)RM&nS)yr|25gBydcZ-j3)MuiGhE6 zu8M8D**;}hj*=^A%N=JHl-ChaT0J_z9}Z<_L2MX3D_wKPMp00Ebg_J9)<&Bf$I}$? zSm*YZ4-Wl4q;B<5li?jn6))5wH`njl8YxmAeokb)R!?jT5bU&SGtQMvA$Ruqv0=!k;1w88bY?Qw6Pdwu+p-TE$o zvnm%d6BQ_84Po2Yxm}e&993V%0pih+?brE8#cL;^IewA7dA9d5kejky#pYYP} z7VJ|7Ugv^MBEw4=6`<-|N10MBeYR7EKh|apH&Ji?lwq#=0aEC-NxQs3Hg$>h9QpW5 zAaq&{U##F|^uKNGynlzok^&+>#D97r%Pp#jWz>5DT4Ex&<&SzKjdS^qP>#1s34$a- zPgRn4IGpo?h+6;~CC*{#<-8ji+WbSXI1wK$8qg8{-cr3ppv3oBW8<>d-W(1et|cz8 zwt;-#Jgp$HrMq6Fd>JU-Ov=q=&-?%@(X8yGBonrTmrlusHK4Gs^Tqz0p13ymms-6Q z8t2s_fk;zELQ{{q&~<2yp-|%FfoD{c;dDZ2buKL0>KY_DE%XSu&_Z|z|6tPI-|@5LTYo+86y-BT1@89^B4 z;MvPm*|1t-T#$hd^JrIsPrY2zT+4*RL?G7Cs*z!wXePQ8-4o{mZAhei zG9=0B39Bq2r%p(21W&tAPlIyaH7ZJPZ|)^jiDBkaqsRkZINKIy53EJM2fwI3y<-XY z?lNz5R+BVOD-=k-F;-+JAWHV8qvi|$^W%>wQZB33#{3I4tzH6u$If0z?KhYAAgco0 zE(Y6?@C^rZ`*nL3o+iTqO}MD5OMhmQKBjbeD|Z%m$)4e!Wmq&K_c~=l{@Y>mBuu23 zirX7zh|T{#WfHM)w6u}mN2*o_v_E<0HSiIsg+T|q%n(aGc(3(2?hioG*w0zOzn|wK zQiVaQUlGfci@vZn*2)>4h90U5Bb*ShlIVd)BK6Y9ftffD3aSCSW;2(%;=y5S!{LQq z?;}C+i?z^d5AiAO#u>3n`ZhxP@f@GVL+*cR#DBTR3J|c6N?Y4`h ze0XUFDoS7Fy6Rtcl)4NdnBA;)mLgrKR0A<*YTyT1(neD`OtfwQr@Bjt&UWanbG)Pb zn<+AoH%!IVtg|Iqb-VjR^VvCHMH2>;!pC>0&TO{%bT1y5@XXh^9>tjX%8zYY^PTTm zEJ-qQlSejAlui!&GcA0ya$0G-QaMw=h{gC=|*g;5N0(sUaz?AoaYnR9gY`9& zZZO%-|JR$|5XyGP@`>pic1bA3$0R^_=g!q+{%K|J zxqKdX6WGPJzFXWYPHQH~XO)95dT(-fM+pzWp6^WxX}!K4iqNX@p*r=LsqOfgQC{_% zbLb2`j@IiqmfUQxzMNJ(xsH=O={@z=ZN+LzbamIiqKTAR%A^SF@RFJu|JW;Gf=}m| zx0G@DN9$kW)0xWN!$j}&Rw3EHzg68RGGBSXnQ}~+>k(Y2bl@;FCxV@}?mknNJyoM% zkU9~}CgP-%b7$;juYvWTTjg!pr}zZt338IEIO2`I*uz5fk=$uYFr37iwBH15NKI$- z;zQY1ehT-YaeE>ono1lJrT&{bMdCojF>s0D`mCMQf97h}>LPQD*>ifi`AYj+1Ium( zYexCedQyEeOb9kGS%o_M|Qbl1{qdOBi>k*Md#h-Onzlw!`{nW zj`^1`mqC!G+0l*50eQzhY1_kQ$xUbf4_6uoWyE!!FP4NrSz~i1WP~GIzJ3{j4 zfI~rK#NJn5&68!qO(S!Esc*IF-vY=`(lE>vE^1kdh_| z*w1RhlU;)tpZZr&E@FDzW&tB{d!P)L_bwH|WK#L8nS;$z+)S=gl=yF>=z^MTj;kg` zQtp_g6c^sD=jY#h8-!h_Tc(U750-h1S`7+wIe)Qw_g^d+B>CiKs6*ZB5A9Pw0X5LK za@$oWU+`5)XeITPKX{sI1!hG5ZS4sy9G6G?Rl3Y%(3GMf0kIg(!0S!pNdyRwqNTGEnYFW|T9H8#ZI^Ap& zPK6Q8EhOb8F}f~_db`|cS`Mxrj;30aM!U8K4hQdQWe8>;o9knhvsbDm_%;TK9YEV+ zKb)d?QwrO`LDj2Dl*!h4tqe)l5L52e{{uoy%XfPSg5+lcAxktRmlYb#LZ#WgX)_34 zQ-ju_tFC5256vi_GSpOlH>NPWXPDW(CNJ?dcG&3f3ZIsaAuDoT3G{-mF z#L~lL?RB$`h1)bQ+UT8OHTAsu>cFIw67IRj$m{9wGZJ2!g zh#?q?x7_TC!}PYNPxB8Adu`aRt`AE6kEfnGAKl(?Qtj(KNwE?hi3)bL6yc% zzk+7LV7mc!C*N`9th*Qyv^`kg*InSWBeoP_=Za2qhV%tpB7D0 zQKPV<53W7~_s8AS$hqIqvyn2Oa?Y=pdU{$Q9D)?vm6se=y}F6_9Q=Ov(krxKm!*o_ z)0BTESc+qTxJ!%W`3s-#i8pd{J4M4q1s@QnGzI119J^C@=jfvbx-u%6=58t@D!&CZ zKa2Z~mznk7%{CgRUDynl-maJUL2fBs@x(#)#U*dt$hi2+!lZaVw27-BLuR9RShbU~ zi-WSSf^+#7s?)ZI71|rUI^;JB?a9+48OiqaTK~JD(U7gb%WvXpg88JP2%Ng#3Xo=3 z+Kbb$3oIX~&c65hL~u~EEJj0XQFrHK+JEe=!Nivq&;L}Ex}QXdlRrNP;#>|~O+j;y zJ_-SC9;n;yPowTFex9wbcT1NpGo*x=u7Z;2cSNoTnozCI=U2# zjxaTv-&{M#0$Q$4h|b*){-9(!W;&3hCsZo&NjR^=o9_se3LJ^>mv?Q7280W!R1cF5GS=}yo) zf30t|3DVmmV8$WIuAC|wOAz3n{Cb?<=F(cu92vqqmO^m$Mbr6mqPbVOQLrO0tqz!8 z=L9rt4Z)A^q+77&9wkll-DC|rWgboa*jG(JXl;DLmmdF9`oTl1urgt1DI77Ike5Lw zYKtmxd6%7sY^~L{(E_x*P|4xr9$sR< zF%zVNk1Z`2(>wp8Nogo1^=h7_SazkJ9wO)5gu-?h1>@sTJMq;!(eYj5XB_2}4=+ZY z1oSL`0{RhvsRq|0%$?DkDhQ`5%O*Vr8-^m}eC=C$+GZc!61|x0WbVodsQJlKz0IAE zfNK9!>M}9ZaAuWZU*;)Ly8Xk=E^uu?eJL-3%d*nlHvOXQV}?a|0O;8JGXx8J5-`6# z{Zqc>(}zN!iFH(7Y0>GR<{#Z})eh0G^!G=aNvu6g8fS;y#`a0ognI{&7=x@9O?=rl zRC4DyXfN*2W66R6@yYoSv1C^LhqWhopG}_Sa^r8MkKsMG`-l$5X_FHQmLvoAPP@Zo zyM;0V%MHv+TP`4xRV)Yo*V*M2(~UD(U^!~5?_`yj0~weVYdcS_MT|K5+vnwJI)~hvY%E$Ha!#7Uo$@G!Cu0IaIe~e++U8R`Ad##lp>f`# zjrw#2Clq{>xcpe$o+5zGc}4ni)o%H1zASoXH#)wVKjU0{{fLBcOR~3T(b@MiqYn;k zJvngsD{CD|0H}-$k8z2oYX|#{1zX6{CZzD?=OF20i!{oOtF9~n)G+10}5^`Ry%iVrW|Wm{7F&R^K2 z*jG7+Rb-4B&*<(Brd`J7p@FmCW1`V6w%a8r?T)IScAbkRBBh3n&OYM<1$n(XpLlN8 z58dzsk>hkN{^5;`a|@Kqd(zfBp&c6LsUps|L@Va5kBHtcbBsmg6H${Cg($pJDa;gR zAB=mRxONB0nA{fEm9^tQ%iTnMJN&zg**Edwg6HrcU{?fUC5Mo^ZTTWxZ~|?$eodt%4SyuJvVJOSPW6?p>ZyJ?7cUy$f%y0VdVC z>XoH9n?NO@i-%uTx}kDNrLWAvXWB@M;IZJ@HL-hP~h6&0I54tz1+iGqI&#TMZpYgzc zEa>zn%KPdSw~;{N=2~-KuT|jlOU(AB)Ay`Bbni54MaL%@nZoMlc#i0-<+*|#yXu?L ze0+8-CDy_LGaw;|?`%xdV#bE7#o7sv>IKA3BW55E^h#=lZ(IL4`4@ZcczQAD(P2xj zlCKs|5I&TN@yNfzM;IBX?H^}3(3nRdSb%B(Dj{;Z*^ZOjU*5Za6GsY|C+lN;oJHw^ zE{4A4U+_*;>U~Z<%Q$!R?9JJYd}qCWsLJirbU9#v?&!z0sYMm&1sMy&u5qng+W7o( zTN^f_7EA?COWQW_|@+Gni{HRVy(!vUwbB z7tG9fo;}(woUQAVkn7#^zlE;9NpQQTu8l}%E2>guUQtcUxNWVD+}WVJ?qFA)8J?dVYyeF4Xr=~VkL{3CxdUft%(HqywkVigd#EGdM!v1bXC|*=b)I~?uBU-> zrg7aqD3J4m+{40X!&Ks6aigrT8@tXe2>4W-=*YRfQXJnu3J-~+)KO+g@*}^-pDA=a zRF`SzQ4pB5V3AK&Atiw7y%3%6XIpY;0?BYNkRpY5cX>d#Ys6rWT^8Cd`q}F1MzSp2 zQOsw%6t7qNFt zj?1AmMf1@ebI?er@a>C<>I4SQ+^_uCY;+6$x%smVf=eK4mD(;s1nlGVm|=yqQLE4_ zJA?1s7A!Oxq#LJe>NT>Sg0f}VyGad)H`&36U$wa!*li$4M+$YOYnpXi`t-}eIarz- zBNtbVJx6U*C%#V*OdyMCBipI}`=OPex@9B2`qvSDCz(si)yyx+_sH40Svc=H z%G0;i&k)pSA#i3xa=9Y^$Ti+!tleegi?qjo&jGRTK@vkSXv?9*vo#MxWqz$@LnHFj zQm9fKr7J60CjDE2Z}zF7ih^OP`O7Iz#Tf$qW@SC0a{I{V*%NmD>#wM?Ao6%ElCeL(?!BiOGpM)4)gb?@T_pth zEUK?k;!G^$02U^!dW` zl7E&?X^NZYO$`;;q7fZyO%@O|qxB`CA$!?-_@(RDlllEK(cUaeQ(1gui*|6?2Rmjd z5m5P3^Vo-1i6v;k_^`qpjitZ7$I0@SogE$JgZoTczCh=Qd_K;u*h9dNv+gjM7t;&5uJ!u6K&}Y_jyQD5AXEUc zWkfg6BX~_~5d@(%e2~fX7>*>vA}FlasVKjJhf36Xdu+G5zFhAy&U3*CCMh2r=e^Ec z{t-&en3VFbDI<$qDf3!ny)7x5Cwa2eEX)$B77GEO+j;`~Uti1eKPmD!s6)-swMh|V zx)-Wr*}37?54Cy*k}OfFo23QfleO2g(H*mCaw5V^o{7L zMn&;}XZmclg>0SEOswZC{vHOhz)U9lC`R5sH^LU&JWHXLnO& zfPuPnQg7zq*^us?jYvMu>l~d6KSlkU)-U!59#5j)2{-lWw2$u|ZRUFP9?uBMbT(Qt zkf+JqU*6%|mwF-w`L^*n-T`9Mp11nn_R0Pgu}AhpR@UU&U-`Q8 zR@>%+@>X79M{2OLq_T|8B3pyp-l@0`8=WiUh&wY;X~HYV*Et*!?CGc-b>R(sOotJ) zoJNY@|HYeJO-7$qPMBM}&)HV4Pi9iQ%Nbpj>WaHZ^LZK6<8x}pAfQJ8!C#vX!l=K zK6DyRt!^dcM;&i0?+<+gq>5}`9yZWkG!k2_1uz$`5NAI19asJbh&#=4AA#dGZ-DP$`fFsgrA znVkxIce3je}`;F>K ziwcJ?@}2A!@`7FL6{m={e03vAyO9*)4t!F?FqThgDVTu;RTB0w?S8xN*55YpGC$P)1!J7uYE#nFJ8${x4w2byJe+zGHhUD zAPTd3RgjAZ5C4uWEZXElIN2IVcTK*GiDLr7xo;9ti}J{_h7Y~a-X${hbl=wHZ8xXO zqn>@*d6wL_Wm9lw#}>V1;&Ym|r;XC?fvbM%r{ghSA#$AA-2~8z;H`E0>#e0{a{h`0 zKlgfrBzl%2-nq=HH3OJt=>g12_w^8oQsoc^aqz6xz03c#_uMQI_R>gl7HV7XWshuj z+hw;wa6HRHO+Qw|x|`q{GL17KlKy-M6&RE=a&6LK4z0dzzP9T8UYyOfh5z$e2m6be z;?qLxIm|g_;wxH|S(5cq8TF%R>D@*G|6p{bcutA?F}+GW-5gMn+$+*?rsH2tD%`@< z&3eDX#lg!8e6r=Mv8fR3F;U?$a@>t5;okn`iBF%n`P~hx2w@p7;b$J91ccs8c^9xD3kV7X`VevYL z)<{>5PMVlM(+&n2*cwkmWb9(RZs3%MX()qt{YO`ba zfIq)9R6?xZgzrD(S+L2 z6%+^HNOXC6r2B-o98n|~-c1%{N14Uq+}ir|%_Ae0Ox9v-kKDzoN$jSapMzVA>)h)N zkTeHK^vOv%Nx*$IXE8B!9t5k<8$+I=nIqd0?W0yJEf4(j3_;`A#I5XRaX&}vAlHzr ziEQTTtMSP62LYEBn4Y?k&J>a4`|Gv4t)Ctx^YTERBk zPTi;5zZOrf4foc~rT5*wj#ufO(Hek!{y>BCQ#%^IR|2;l#%#!P2NorQ#R(^~11Ajw z<7plkG21%c(VPi+U;A1KlTu~}^*-^a<8C{AS&n^nb3D3FiT@HfboR_(SR3Cnr7RPc zp~L)8CuM%@J_0elo&fFNzX#@q`QJS%=cEjXwa!13dhxY12N(I?X+yFsGDRvZsHS!P<{%ONNPT#r{+G1t z&0i{dx?e6oMo~lFJOXd__XT_$okWC@ihbBnb%AmJbUbLW zrneyI_*Su<183bSq#8gi%{%04bMgKl9c+-=R>Bx`JnCV;@D**Yk3Q;~@E&;IS{Djc zrw$k~u-w0Xl~b-E9%z}*>dCfi>t?Pw7S-ows?} z=TzHJyD~ONx>#}K?gTh!QSJTs34(VL4R^TinfjJ9@N88o6FAK5ph=gTR@5 zWoX?6|A1^wX_+>&8^6{SiV@&$Zz@nGSir;7nL5J#aaLNGfmI3mQ(1O7<=l65ZOnZ8 z?Z7QAnhuF4EUKC+kb)7Oc$*pK$dB>O@KVCX`ST%$xb0vG4iDx244Ey}bjnM% z2!Dp64&mF2vmeY@#C`YKzvgH&1pXPVD3{5h@}HEJ1>L~~-8uYesxW*Ex^s@f`RuxE zdc8IBWVIdcAudUBMSxX#>NO4O3}xJnu6F4Bz0CvOpM#`Lw*}@yz!eO34C_ey@utEa zW`Y%;PqNN@C}Ae>oo1jPg}3`bkskh$UzF>V%XGR$0OT1s@Oe^sLzr`JM2R?A{fu1y zsLVrir=4$9w=D^AIR!&S_09g+12@0-ZHTviQopX2u^XEfJ!{XBGKC8pfcr~4fNPOdrTFs(A5s1-KNn2So`0PvzuRqlP)?{I6$QA4BNoReU;fcoM*Hsi)}@HD?lbKJkTuBy zDNak+>B$!B)ydEnQYk^0lnDb%q)goHsXgP1>KyZEKgqKx1YFytIt55?JV7>-Q*#u? z3~UfAwi{leR3yiuO-&Fwb(Ed<<(S&GS$2cWVeEmjW}WWhF{b1gRh!}dR-(y3?ncW* zVLiI{6YChU4aY zp#*`J`(8va4`)|7{+K(ODjxsa%%!F@W_@1&%r&SH6rIKTczkVpGgM(KXqhH>i87GK zTWiGS(z6rE^$9^u(IOD+Ej44ue09u7Ur~OgXkUun4K3LYiTRE(_twyEwRCaW?pK=A z*MA@_M3u$7d4YjuITZ$MkL&NA@A~fP?@2fXjt?{;4)-8aA5PMIGy^YasTWNAp9k*d zVild_r;b(Pw}^HXpTr9D%kE2r8E^g&)4fOt>n2JPpO(k7B4$Wd9 zS2O$_#L6{h=$R9ev%xO54R$xH=rjhShbh{){Gg&W$~S9ugN;BF-`2zA*?G&@55?H> z2`os+s&1Hd&wT5JpR}3cT4hHu1m9-<<U7^{=TTvoA zxq!C;BOO0B&1?xOv&&@>tJwL*&wb=Qo&9*?hOT8mbz^vM>27B&=fkrCW$wV)42 zpFac&JX@K<`8Q1M`qpz-b!^#Z$6jchJe+TJb#>%VbI8WgkCFCj>IPrMAsD)#Yqwl<^)P4{vM~`?L+Z6VXzB zH~Dpn<*vlW)hBD7jY|;!cBLKNetN0#x)0KMd*t;o!P7oywzDD^HZvK{#t1~|oM0Mi zGU&0no0}`B$_{$2fZf8a6L%AQ|NqGbED{2P>t}P%w?}HdK>&|dIw=im*AxpVoS68H_4>v|E`cODRKF-= zDD{$xC^1)6ie3UTKjORVw1!_-Zxo&X>3~CX7R{Onvn!I!1jzE>NY~ZT87a;6?X2-B z>_V_C+(KrCjyyZMDg)Bm1%6FW`P3Zkobq{lr)~MDu$Gs<9J8HN{RqN!<$ptM5vaW7 zv_UlXSbgd4Yvac3J4{n{WK73fpQ+JgDpk1su9SBBJ436p+F5^7L=s*4@VAQEg zOH#d$-&s6&x7Baa`6epNtUkOp`(W;QC7-AL4$59E5OUk)f4MuC=OwJ4X?~vcR#*$D zEy9a-FN$L4$Wt7?)8J*ZkCS4fjNq%}w(A;?_kF9gw;8@=IEr0(C;cD~YrU^lMziN` z%AsHKWG8BOUII4xLdw*SBvA9{v}I=_$G#&_+y4gv0LQ=lZ&RBwBF8ePaH0w(ztJLv z&`%tqzD<~Qz*R^iHNY5Zrxc{Pli7H{|9;5`dN?xpi%jo@8CehLn#suYv(3Bm%^mTj zunDJigP)pc0|Z9?FAISA^hHG9FaK>-?XZM#p)t=_!>ZyZ8pHqt|I*7izD@U*K(LL^ zdyu;oMR%M`;draDq~G%^8n*EOc1jgYN>`g5k*|J;zk8O-cZH&&N+$|g@O%$F==l_3 zldX<_D%Sfnu*-!>(z<^(tH_0~j~@8*42$V6Nm0h{zT;=FChwao3@SC$z|~K!<)=_# zM~;0Grj{J0qcd>&XS%T}d7ja0m_Ml)|w6 zMVtTS8jqDlY??{TpRCO%c3-IeHtm-p2huYfZs3fT5##LWF|O_0>vto>dh;DolFfYl z;UZ=CtS=erV1HzuegG!=5_C<1fwSlQrx3fOr1cNYBv|F7EnV2UxJ-`hl-gmMAq?8R ze027u#DWYFA+}X~>Cjm|U3l-OZ)%xpLTi6E-D&4RFlo(9uWUy9u{_{0^}QC^_)O-^ zmT-=$Fqy~juDbK$5j=R3=Cx$3W@j74j-|=nM)B0xy}Ne-Tt`92#^CPV zaB*^cxE~3Gws=X%fl?ff#i*qxSrf}9@V7!ZUz|O{h5r%ODOzCLKyjuPNh(gcvCT?$ zA~T$@qdtNRR4M8g@ZXrRbVoo4{A%uO{EYGJFseVEdQ4UUCBhVe>_x_DCkYFEuY63GiEWh*|o7rX8 zJ{&}q2Lor7#qD27?&k1EP0m)=l`Nczew=y#IWV}|=O)e}N`B$r-R2#9pa<@3m0p)7 zYhd=F-_bWyzK1LJ_d;f9zgCxLPKFx`VFc4bE`67OT~lOCr+b8e5cO7_*#RAK)o|Dg zF~gW!8y6pm;A@n>%`{_&lE!}say#(gifaPizLKF+g=DY`=?mI zKvxTVsoZu!MnL>(_-%Ag;Ta6~Zk!o%@ma2EsnN5VPXcXz6$X(6cgE6m$>+3Hsu`s* z9Az`ERyyK2o3^K=9?z-ncKPm0)kgVFZTJyyAD4B2JEA*O`@5F(*06{D?J_Y+`|3g1 zU@zsEqIp*s{8wxFk!-@KF@v|eaqQ+8X|)8eHT}B1j3afy@NnqSFjaPgX_hBYbv)d` zbf-y7d=}2CJ>_#*+aXXog}qa9FAD^n0f0lYRC0~FV^E##0H`t3rG=cP1fyEI%adg# zdRD`DW%&WIK5eSO{?sGG4cZ+-e>GWxvhkI{_^|-6(K3W2i zHb}ZfY?@I7q0v3EwySLtS4{Dr*4b&V(+>C%@Po+nFEq1l^TZ_B%7n-%*A=vNw9>gc>k^iT=jxdhWXnsJf=>+fV$z|9@uWG9iMlQ?J!GLsp zP}D^xsst@{E%9P1M1W;V4O~Rh&D=XfZ?F|quxDpZDPTNyS#-u|xiECi{`EYYTT`-P zKWrdFY&gS&zsltKzb%@*622YlQE(Euulw;_70KahOUNi3)+-mT@_f6^ zY zowYxx6EJBFYj%JGuxpC9W&|8t{wb3d6207-be?Xs(+B+0)cGWNbCNOE?GyCUxH3p1 zV>d#x37&3%7LCmsuhX8H33BaMy}*!0JssNdb2VNRhDm$|zlGGkkrYbXftG%`0_-ra zfG&2yPZpbJ7a}USRdynN5V^_z*H!IoP!ZrafJ}GI!HcQBl!<6$Ib%EYHtg|?&3ESV zo{uU+$Yh}A#mzumetyX}F<=%7Lj>QPu}jo@-f#w)+xMp;?~sbNgdgayf!L_25ic}9 zB3ddMkHGm(`d{ub6oECTe+FG=w|)^DA58BCM_yasl!khR0Yl1j#8t+&ZuW6I6p1Lm0E;n4^)tI;!Np~rKnl{E`K)kW{w5k_*Qxw zpIDs9;zYBwdDQS$@`7`J_8zYHiBP%vdY4q1Km~BTt${@BS(Xus6Eo(#wzCaSs5%)A z?6AIB+G_U98Y&;?9r$zR1ufG)qWm4ZI==K{)7ExzZ88u3(Q?-2-jw_akGU0b5-~Tl zp)Ph-T;jwDTosidF)I4DgOR(K>9g#^rN(DFz)t%jd{yBNzU(TZ7$mx4chrVx6k8y8__Iu!Dy!PK`?0dF(B~d0>fsWLW zh0j%DH)bo=V^IXaVajXR7C613($8np1y_QrI?9j+>FDmIub zg+y(o#sZGC78J7{EYTX}%sThS=+8(d`C%l46@CF?k(-TNTe+xqA~S}yPLIF>q73A8VV%;hriyms&h+z|YR7~t0SK`f$?8aD*K*`NF3p%TN^p(n|5oe?ba0=7CHDIL_T z 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

    R_l=YK{GL*k z86~5!#ojmuQLAZoZb@dZfX?e#EDM={5{@F&fwnxE57(B)xZ^gBYjH!wfY*;uMWM~ zX?qAW_sbeewcyg;sXks)Dq2SM*F6xT7Znwq&Qsh|C>H5lO*$FTnh||b^P_tc2K}m; zI6juhpPxu}fvPwulUgQYY1u>vjbbk*IU)>1kPvtrdiGv{g?grs_c?os!8^>p%aP6V z24;%wQD8RwAVRl6eAEEprq}rp%M1jZdOn!WL`w7>8rkNQ_tVDalJ;M49{n~e1;K7y z+_S^hu&8K)8_DVw9LRGg4~ zjzhAtiVB%!?>&!^yreRY5r@nWiR`_FW0Sp|!?8Km;W)?PoUixi_xSw}_v3kA&+EGG z>zb?I*ooYAK2`RU%y)8lCpA6auD(7|{tfJM?7eo|!@ltK4wy)C$3UdTWhVyA7|(L146^pjP%-u3Xk%iW7rpz0|dW`Mca zUd{)5-+U`RZ#>g$O%fK`%^12irL^qak|y_MR!r}IezAsr_^52zL-jVPsS9JH@s|(C zYd{F-t$A$I?EsEjytL*wRz~-JZ08biSUWYrtWAWecLuRO{oDMZM3#5JhsJ=1!|&8Q zheRUnncm{_wYa=eB?%nikm*&_VjX+<_zBHF$;*iPuSW}7N&(FKaVN~y3q7kSjeuEw zA(3GlCD&juZT)Q{-f3G@pYJ!}tbP^mRnrF#vs|WHK$q65|GHma;8mqOz|22~AGZ0+ zfvP7O)~faNZ5y}x&MzGx+d{Tiy3nVF;o-__QoSW2*pqjT5SmAHr;EGq5&p9)xqMz7 zYDZJky;>WkEpLTnc%Lf7d}$J}%F`~%JPx`6<0-y!@-fP{XC8Z*T zph%CN{(<(kgXjuXUOBtn+(%WIXSLu*IIOYL&2&2?=o%>48vL6r&d>Z$ z1me<3s_T^JWPx2i=ynLlO72Gph;`mBUDy+_BzknBLYx!kVEHQivzTsb$eLiTPIAP2 z-%OIARztUyGMiRUS)dn7KjM_MEtbHuDf|4*<&!L#0X{Jvg^h}~YBS*}-~R>jHb?0oBHm>SLW=oKb7-lZ1Nn=mx?TAdvztG*r9h|s=qHV8F_obj}LPB5#6lhOjqV| z%L~-7xVY$+RWVM)i(9*&MGFTW+nW1?NT>O5x*l5;#|1IdVo zVc{lOJhcOz|BqD3VWBG;tfUli=+7}#ZEjjtxMQLOLcC?+A9E3$V3vRnqczLlvk=&wB) zB4e`~{9^~d)VICqD{(@Hy<1-@WQO`{B+n+WcPY0pBQ!sIW!B!DQXBl$pnkpUYdZgh zyTEMyqXho+Cvd56VB1QA>v%!J#pf(Hw`n{WCN?;cV%1k15Bh6XWbmiMSn}8A#{b+{ z{|hOgXALvGcNT{+#0I_CzuCLm)6w?j*MLepjq>j0+#!%BUz6i9M_83##i0DoR7baB z`1DPMzx^tGRlZ0hZN-=nu%}JU^H=}RZ#rG-)#{;=#W7)uos^y9{bNc}pXCy8xv4)Mg=X^}_3MTy>nJ={YAxuK#vc zZYlU!$N~_abNW+nE(T$h!hT<}G={^(XTZ*NGyL?h=V-7YMD{IxG!Av}-m_BWlt}xu z`SWhc2e&QD4$?OqA~qy_Qn>)cD!hjJH_cu-Kr@Ewm6&?)U;+S*_WP7{_7UFxV0qTAiKY^M1jQ`Xb+^c8USs155JtTw_=79&K(T1|InCQEV{t zQmCvAui~1qe5-QcRdKX0x6;~(r5W;k^{k5V{N`!A6bE{s0MfFR_Rmn9C(xtc_GH;m z`&}iT1MOS<)bHYIMdU~eo{kQa*6KxW_Ka)FZ}U5?Lyv-$(^_V{e2G(5Ls5(_eK@L_OT~370{R z!_}gcV`d7TkT+%gMe*kudtD+<@nF|4E>-bPZf57;%dU3T;p`MBK>&2fA zM4Mig0HqQBh?BY|bY)lde{`(|t*3}*LckXmUe5ZBl%Xz-)W9|94bR8^{zfQ%Cloa^ z3`bv+<$d}vV00uA{yD-^t%Pc!OpS@Ub1Wp_)x$t8Sk|@VEB(^3(l5`g!mNv6Is~xH zk?LFoMRxt@E}wDN$=5gM11_rxEpqf>;$Mr0a2>u$3@$)pbko`6GESnQV(q0hnWTiy^ge z^xjHIZ&YBqFsj|3RQLGPv1GUG+ZLI)XrD<^f1wk_3`%fN!1Z`6L`feXudOnd*;ivKIk zRQ_x%!{EJ|L{njLk7%pzJ89d`S?FIe5B~l9AR(=uidH~V2QuAsv%K={hXOOHwFGlG zu6gQhW6R#jV5&&9jDYf#*q9md z%7MG|PpD^b4{OaXD!Zotkl!+|dYCpZwsqzR^-^8%7`jhW(f2UQ{zvqUYHfuz!SB@S z&Lo8{hODy`nA5b2i(@IJHgr8s{xAjvJ)z?s#Lu=?9_3R5%uLTr_nT#c4QnBgOZ=9= z#hgD^ogHaSKVFZF(F9oIn*dmUS$PQejeclbf&c53HWAcyYiM2IeJQ=tio?F?%}eRR z=$?SMD@ap$u_oE9YN$T=c93XbynESim6F!JnWt~k+}$^7pplRDvqXb?+l3y}??{L_ zcl3tbRl@rFPkSz@&z|h(a<3!2tuFc$RggN>&C&@6xU_aRI_LkK!hrzZoEkcHTCv|2 zOv(JXSZ@c3b^1A)7Eywdg5va-BtYGeR=JWGw6*f#K%#cD`M}j^8W=-M3|7fJqp$1h zjnZPpp!*WYQxiIiYloPzoE7QFwczDiaY-Q_lk~e6y~^blO~e_wY^6o^P$^kyBj+3U z7VSE_8-?b(^SZNup{F;ex&=c|dVoMeb;izHk*mf93b9!R5&#hM454lQJhJVyR|R)j zXR5oQ=;PdA@rwG?Z#l1n2g~9`^3C7krS)(x&F@c-xoI(KL2pUYEBkuI;c;TRNY6w#LhKtKpl-RwudvtN#w; z6~NDDv)AYUD!@?XLU8r3S>-*l#kRwm$AX3H7V9SKAoH?vzC>vzi>tcV6?tSqJzd#$ zy1`3n)lqpx;f+@NX|3iD1`;W8HJeM3*E!}4u!MuiuN@{Kyf2u`glg>{Ug6>m9?H44W%98I6$_V&M3PN~)+ zP1(#szDCN!Zk~~|S4J-}y+vNzBxyx7d5XVd$Qa4D7H-^-{S0;HJC7B2)t+fbk}B*} zCq3BDCwH^xKulGCGHQNgkc_^@d-^_1R6Ew=qS_?v99bo&Q=~7O0VhC=x;G%!r4d74 z4}04OKMt3^@NfegzZa0^U+YE;t9I)&A4mvN=fd2kTv>=hTQiN3LJ5QX9vj?iQT=Hi zkA0oDiO>15{la*Fp?OAffXBB;63wzcNRo*>hxvwimdXKrR5GvNAP&39tLQk@1J*<1057Bl(?1%pF3R$EUh8!I7=5jK0r;fy-8>=!1XXxOt4$XABEG=2QZ7U$j23 zb(;Ed{5sCb{YZ1>*BsMz+Zn)D%`C@0sxy4BtTEmtRD8BoC7nuS{;Rx~N)?-Lw2SGyem?tE;${#(NAe zyPxR$x#{kDCxai%?VcHrgB8U3`=qM_#hnvBQ9xd_gdFioIyK1uIf>a=xLJ2|MZbDq zzrCMMTx7%!@Q)7pg}0{J{^+B!VnWThvP*|euc`uDZ=on#ODhmn&OWw04_Wla4x@l{ zEfY|M9=f20xG^rP_?^G2k)o(7Ebi8S(|s-IL=FuQ-dmscjJ+S_eXP!*u*Xfz-zvR= zPH-0D04j2VS`N4#fV#^MIu&d+bt&g>>Hwx_*{CEp*%PT4ws(}e&bwBS*h+u=jOkir z0H2;ZN7f*fOt&4Nq*<-=qv>{9NVTPIlW0EWIZ;lT*Bf|W!D`6W+H{v4UOSkF6bKF+ z4e(#Up`$I3XZk?j%HIH5tM!TY=8t0^)9BXs6ua&je@8{W@_NCowphh>y>CD#PR6j2 zDKVY5WxxxZJYaST*V<7Kj^PFwv9Oi2*Zu;>HB=`p9MT2!Kj1nxVXZD?YE6ILTK}J@ zbBMb)!B#Y-U~WveY!2q5>8p7Q|F=aX=0V!JH&Jcz38gyQa)a+zz6G_AcorF?YJN+?i8_d7@t3`xMS?`?Y%Pt2p z!=szlJe@z}35ut*&{D`yI#aT*r>W_$iA- z|1F@mwA`LdHBVb2ErD@|2TH|E#z5N0t;MF`J>|;VZm>;T`SkClEfDxWmXBG$z>TTM z*%>>7opEMWFDJOE{CQ#@#p9W``U(R!|Gv>=8Rf; zE>v&_ML%>vnXlsy%)vA>^XT)Cv5f_zE7vc4WjQW#%F^KXqnqR*-Q7;5dFVdH(^}71 z9ZsN^zQT!5styu2Kj$gzciTRkDOZL3OS99dB*pi-F|4iMZm#}!=VgnS?E8`gaZtBz zdGLQO3kG>3>CbDeN{%PW;HDx64KvYe{NsNml0o>c?JQCpL58n(`ZrpN5C={q6(R-wLuFh$EL$xkFc zR&44oQ_~OWt;bR5S^N3E>X%t2u$+i`!QfwU)yd}}-3}haiv5YR$~+Z8X_F9FSK7cD zXIHSvACNvXJD3T2wXd6|Y%}@V=>4L3u>8*WJ&(VH+nlJHol0sXctlY2ZylALZ zbAiB~i68L89)p@b2&EP6yT!8ToxpOOgZcNWl;B^M8|7prAdd?-%^dU&p_Vj!I(qQns;M*sjbY59TwCeqFoq!9p>e2JDb+3 z06i_&vR-JYS^5C%=*gR+WwhOz@{In43+JnXVY*X(1 z>X;A+y+)w+CO^;1UtH(H<9V5|m{5Y4-po-#$W;Jv8s;HCs%$bVaGlO88wJN5( zDKbMnJb$;aUG(D=0C9b%92(dB>HCfe~0O5BQ&;p-MzAy^|2-$eM zlGKN0V`l)bHX}}T@%OOSdDxCs?F}MudAe%4Pys|Eu|D!cZK%2^JQpa{U3<1r%3OwY z8F@o1EqX1mDsd6!nWP zdSY8YJ@Acr^nk$}f2g6mtI|~XGV^6F_@=M8hHqdy<`(8-pPeOWlnU@mmFo?PMqZEE z|Ec&0we8o>$#o|4kxVZJ+Bw2ZL_JSPdzyPL|IY&aG{_F=aT`pzX!_|eC01jW+G~_3 z-<57y)N4WO&(*QSNthys1>tbSpWTA3lPru=WuayTd?4O5AY>y{J>T=~>dAk=aWf7> zQYi{*U_wI;>QFr6Aca!+@`N8A7bWi<%&Gn_xt>%}){0t=R+75rQ;#d zp7GDP-5qlUgMoepYHnA;tMe1}4qgV}Rn91Z0=1K7ve&VOk{wtufd-O&&aYD@M z*WRoxEZ#2b$$frFwNXLre?2Wc_C?s|hAmj9-B!_q;7PHU0uK#N+LEMB#vf;%mLk@I ztwYLXUas%jS3a48C-1kG>kADdClchzX}jDs#SBirx8IATxoTey?b6}iG2GR+j-hK| z9|(_?34ZLxv{HG0&EP z!FWS-EMF>vuQxYIm1=`tK#^2+`c~HL?U1^UFS)(9=Cm1e4!%qkCnT4j!4*Tp#qaK0+(pL%ij*eU&8Fm)9*G=ynLa z5qsSfMf}Cx=_L6D9n8LwzEQ_vaZw8}2*Px@(E^!j0L~Qe>=?s6eZAc_z7X43T^N#} z?^xcyw7_4>R5N(fS4m$ibqoX~HyZg}+)Dk0#xz(shbVQf5!XNRpS(&H$cUPZ?w6eg zn+^?%zp!;p@Bwapmj+uTwV2mydhIJZD5SKgHr_ouZwJy6@{@kGyhaStWfd!63|0pb zO)bBz%zRxEa<{L*7vJ(Oj>DaU8nuWn;ZE0VR|F>=Bwy9Ay0$8z=wH~B>dvP0fg^77 z5O$SrwAIZ~Uk0O7=Z?`dHRm;QyWOpocGYhzFodW^RG!tn060++`OB)cvil?mo7E&f zUf_wnH|R^cHRpH%Z4~hti?Wo%t87KVn#=zvVjA3MEJC4Vz(Ft1`>NW$AQqN&Hj7SG z4l3!hytIN>BtZlJb)r5Jv>gx1(JdIKVpHr&a+wZOc_zADavX2AZHPV`xGEJWg z`&0xtDi{u4=YI1~@8KufY7OMr3tB@$Rfq*w8u0&o zZFE{iD!OUAX@{?SUP}x4{--tPz$#MfNB`BdUMGHd5Bk=~+1-~Dk29v(@{OUo&Y)4)yv(sZz0pM%B1c^b>z z#3e(V$uIUlVDj3ce(KS$jdA(D(b;Ot-F`nh5yr3#F^dy<$LMcaFH~o?@5bM_e+j?d zTi)A&9t=m&&xQBjgP&ctwHtWLw@sQ~iDhWIededUbNr$Odo6sy>}2wb4=q8%el}17 z(EB|f9o*X_1+zfbSV&ayjF_{KdDGw2046m-(tEe%(38*cz6izrTv9+uvCq$_l3|m9 zzOME4_j8qo%#o35d%GhriHmK@xfLYf&{B%(_5f>2j?Hw4SzXb=!sL;{PI6g4sjVME zQ-#OCSYlo@b!F5aAEVl@|0Jm>av*miz5bN&bTtpNf_W$2Ek}Vnl;EGt6uOXQ?M+%o zcX;2mjK6V7YdzFxv0H9B9~`>_J0<|24{T9;9kEx3vbsJj4BanR$FfiPc>qHGHNVbY zeEtIDP`RmDhJf+jGT2L2{1f$X@?Y)2R+DAud5YfH=6sUcdlk@<#drP4wa9Y;C-+m3 zKhxmV;sqyiVsj4z1bpwO$M!!{$<`2u^#pCls5O2*U6ZOiVT>_t{^Fd#%Ulrev2Jk2 z>O+G?2Bn0tcfWVOgsF6BT?G_(F`8{`#bLYre|+}8N03cdUYMMcHlBM~o0rwsJFPJ# zxG6*9t?llKdAGHX;SH09fyPU^h-vzi^L9d8S1-eLiX)e1Wd3rZQtls&VRggl+a=t}#Y>)h>6_7Y%{b&uo`pcQ7(e;c5?X)`8i9uh8wLe1F*QA0 z_Uol;-tD3YBR9bdptLIJ7Dp7Zt=r(^YLNB;Z)XUcV|uDV&ks@LY_5pno5=6=cu7Rk zC~}~O!ch`A7dUNrht2D}Hoe7H{XU57*wmYDWk}aeJM?&8|6{Sh+M3kojLL!2vDhl# z{hEF~0=DlhXfI_l|Fdrzux|qH^xI4VA3tO}X1odZvJR}<&2-2bFJ%u^NT>4HZF;y= z%tQsZLbf2;R*-L(1J1QP?XXLIu6)zLZ}5NKV%%vh8C|fN{$gk`Gr}VV-%VT&k^&IB z?Hp_lGeDZUofh(f<-uJN=Wq7%2VgwwyX?h2d-WpS){C`6(5O*G8(_s^+gpLkJ&iO! zaNqnz>$vyl;XnUb0y(G9yb&fJ|6JX1p$)u$gz0Ek9_d%MneccqV6Y95q8m2GKCO8- z{m2y3W}}YA+#BoAY&{g@x*B|#QzKtYxqClY@fx7Ot-JXiXZhxoI1~J zxJg!*f{~wMV?v^V8c`gr2k5IqjIqFt#>YrvgRyiCqN}bhG0n?dtgL-Hj6}=Rv8OdF zL$zRpYy>_Igtx2)mTU#LgwOz`0E12f;O~xfb z8q3(rbANbD%^N%`a%{{@X3JPt#|RD7DD*1}K0J9`NqZP{mTk%1G%oknHmOsM-K9jE zB?(zuoUS{zERj&RVl(qDl=J8^1eo(w0vBdn@LSjVPgchGL0C&BgUs6G6Frn{%6fVVuD5={MXeJH3^ks1>{K*EwXD=Xg?CXvqkA|I{o_ z45-T_u|`34j+ZuLA1W8t_$VH#yxo~`K40Sec!)z54)-fiM1cOLU#`%G4h zadvxMGkSBMW1fH7&e@IEzpPyNpwXTiW%Pun`pZ_SbSrBRUogbAfUIywnp7F$rU!Gb z_vZ=5Zz?FSN0cYCfgDwTT z>MvIjX5X)p#h8<(LLRLNzqYh;G#wWBZy~PAE&I7BvQ{Oa=llg`>7XaOstm5Wk8IDl z5)?(Vw6)jrle?B5snP8GhocEu*O}eYMSZ*2V3*#v3x5>xqH%=Ht z2JsgnAG%cZ%T`9|L=bOl^7{I^d$tWZeT=h1rsgu6e!iPrtB*WESk7a4W_vOS>jlV#uwh_p@nk%inRoMD5ZbAaU|%XJH2@-*f9=zN2;D26z$ab#!5d&C{_hG zi1Ises`D2(H9@CS0WmMF2)X4Wy!Hs#Ls=1b=E07+zc7|EVAy#vd96E9QO+m|@iJ@n zUvhITxm0|Y*LA*U=7O9#6^)0d*sZfO_^hgPWHkTqpjM(vG_8i(Vbgck3Q1b}$)2rz zDM9t(P30vzsP>Q{H0qnh@i1?o!+t~RBj+E{Zi1&*_l)#D>YQQ7;iHrDtm%i3F62@eB(^Ms*}ffbolg4(Hugt`1tg3RPk zVOU=d%v&&co3FTNkMpHN9tMC%%j>idpLe;hhI~ERHh-VQSmru3z1rvqHv!*D z2OkxM0@u+jX94d0N^%x6_Ri=sHgTNzIzielXP`@SsS57Rte z$$7*1E3=pZOdaO8WoF42j8|CHf(drYQEUS5;{0rpGuWR~UYhtm4sg@J=JfTo-5mEy zOe4UEJelA8d{+K3+v*=WZ#-tgfqWg}4&mF2+yc1j z73-{SO_-;1J8C7sbqL4&V=IIzZ(}0X&o^M&AW<4z4DAH@MT`h})>Hxt#yl%fE5ZpS zgT$b>W+8WN2#dkWyO#>+32_XzA>he9e?oN=rQ#0J+_<~Nl(YeY=AF%KPVwHKv^q<2 zVDBlnrzO@i>V}|{dTi#uS$G1#WB}IT&8C*O3N+;ExsAN>enD|**n`HA!}Rq z81Hpj5IUsj^=c=?Dh4a{#P6SAH(3FTJ0LikLcSw~vewtQc)Ugzn^YC}`QH2=xI?u0 z%gP=(JF@;{1U>4>Vf+4BXzMAied*r|bog%I=F1tSy^KC}+LLP(0r!y$Ie(*j4Z~+e zqcGE^*olzY>(i|W`6XGy-<+Zi3T0lo0)?jZIDw|vn6|KR6)d|w;=Bz!ziemK-2r}V z`XA(ye>>)HF)uk=QEtVe;u*JomEo(jW19hWN9xXC*yCpHx(DeXlzx3ms_@>l0D1JN zVe_uIIQp?3`g`TENcl*+ui7YxLHBA606@c0U|>Zq7oY5y(y}{fQMYbM+NGI63kRFJ zTbIE!fvQ-yYX2ni40jC_D@e8ZdFnWj9-UF{`zEGNtV?e9KtIbue8%ycu-wdhs!PA>y=}-krH(avNo?Mr-#Qf|}nJxLT&W5JdLyd(ll+%OxHiU53Bj7Zl zV|8+0-^{moyRm-Sd;L|n_M ziIr;y;u{qc__6j`yRtGuyNpn3b;lm|p2E21BiBTum3e|po3D`qfgj%JJ=|0r!?X6i zuGMC^Og(Un&&%m34(H%0OSF7?vW2q6p;{ zb_Et}B3>KI#^}l53YM9~?CmSaTIs$<(2?heRG8D}#h;oj{^3Dz_t^^8y_-Szj2Oz9 z9doP2F9frPhIZoy^plWV$jbM~gF6URbnN+Va1@d9VPkGP_WH$3UasnWZ!w0#Cy$EU zEBY}jv&G4h0#0-@K3>PK(V5?L)Z8$v57qWjYE;>r*l}#5Mo!t zR6V4Jb21rdl)o&H7LtQTQ~q>Dzb}wso}P<-58jJi#XRlToFS`+(@oDT(q^*ldp zwYmt@{7CxbH%}7fZ3DkTrxj2~&AK8}X$k;)U$*GNAvuh>fC60O&uV@euOK&v5M6KQ zm}>SEVU&gGO69t?Uy9#vhYvP*L_eJoN)*<$HOvZMT-=1g~P99756-Ao(d83n4pxZ*MrFGRpw<7;<^3>bb zRy@ZeWO+Z!@BP?t-*_tI7x#<&+ehpb5VD?68EIz=2XW1A{Hk#yWGE1-i;>v7+}6(u zU^tIuX@id7tS*oi$|3(#9ocPmdrVKI_$Up`b#K*t@V;S>j5GfL03QhL=O&Y(|LbB|GDIDQ~iU-ypa!Ly!uGaRIwcwC0D4Ao6PV^^9O&Iivrw>sV&Cs!8P66jJ1eGT zx){a`!%jd=F3XjQ0@1}sNvgfIj)wFP|JaaIgA3QME(Vc|r1RMx?u8U<&ngbA4>5Rb zG;KgIpwXJcEL~42vNW}XvG~i+o}eoKJhoTEH(Pl0Dgmj(t${h>8NsjS7**}0pVL<#gS&~lYO04uH$zD zL(i?cX{SmnM*>=7>JOIKV60qlY!Uat!RW$-P`xkWb1-4K_CJ^%bB3k|59ln!a*GF4 zwwJ@`3>WtzN`Qr<+{UOu`z8CcN|};A-6DniL;F#QCs(HAta-nyFQ0HlRdF0B>!I>> zy%CtoqZBq8vWiWH!P*@X*XR&~+ZAz6EOV`pL@G*Z^2wrvsdi7FI@IAm1m5iy?|V>8 z*WEQjawGZP6>y*0x0sNI8`JYVrxsioMyfY9d7ko#9YG$~#-=z6d}$>d2~Ubq#RAqZNZlP$zf$oL zwC0S~lJL=WK!$75{zUZnpT_n0d^gV#8m|Rgxi^SdV&?jf@vaskfL0(wYN6VFm zo~jXZm)4piA0V?#^`WLa{+*XGV^&rj&F`laXja^hvyG1`mfL>*wDL75j?zv>U7^EfTn%+WowPJtbK}ogy-JB&2t~q0&l=1MD1* zdsn&~D|;x1m?tgJe|x|^)ie1?2iwCDZg(LC#5+hqFUe*ng9j-#ws$Pj`ao7<`u=jQ z*V4B(-u*nAQ}i!Iq~rSG?G*A5GQK4x`glJULn%M0SyHDp-&r~wjy+TVxK7)?8BI2M9lQ|2+x_nkxy0O~ zYJbX6@d=#H^91?``dIEh&rx&AY@4=P)D+!PaHYIvNfd9wTVa4$lpeaj=8eP$3u$)+ z*{tixK_CEeE%ut}rIy=qV>Vn_E{=k1eB}X~Ler)S$4jG>9!vO#5aGx4V$XKUm6s29 zND(?^!hwqg}+;hX9?~2Kxg6qYlr2P;rZce34u51uN zVs4utcV?0&_Wf>?4+xa&0pX!B$lEe5QJ&QHZ#x+)6f7 zJr(yoO{g*aQr%QlvDL#xLyFDt?q%l>iJRjm&6jsiIJIo98B|$Ee-l-k?A#24zR%3$ zHP~gp3lii0&KkZo%atLrc7qSRHy{U=fUX=|Y{}ew^&!J?al^G6a~ciz2l0~d`6IpQ z*lVG1>tXIQgO;gw5 zEMMacbb??Cva!mfCLtWkC1&!k6<}@(dfESPzSj5i=Y^mbrt3sbz(hzII z!Y6)QmsamgRse`Gw%*)v@_ei)aIuVvhb-PbA|*3y9~t!Y{{^*vq}ZO~^Nzr->a;DI zK||MT_K(3i>lOF|OB2jtuz%Z$c~IUU5~+^1@w6}v@_d&;(d~`jEVYhJdAP%|&L}t2 zGguz=5q3S6DJb{+xNZLAQq{}OAwa%(aM1e*wXQOvuqJ{JnYC_x_I)bG{%vE-HEJ~f zXVq>oFU!b=Nvg>wlKZ=7yxC^{hTpL-jpHxwaq}ILzN1D`YEQEJR!9iQzbCA@dwma( zt{hof0fn=>55D_H;DA%Y(<-6DgBfuRa|t1a{%eS}6TSvZv1&?BZ&*eWbvSRGD^~@@ zw2HnlF7oXTs@}87rJ6D~Ht-xcP$+%Q@=HPWBqa}hlk(TtKu_beB!1zZk*nhLUQWgS zNm$+pd*Ue~k&7!Gi1*-A@s1&>jRYL5i#ZIuT^|lkfQf7-8qQpX;Sl3ak}#zfZ2Zb! zqZe!48)N-`cMKL@1Ul~Y8@Wz%X3CUULBVe3K~2%p$TvAfIs5e(nnHYCb965-kI@P~ z$A_K&88=V4>v6g}?H$;#j@Dzel`WWW{hDcVxRww+Ypm*OW)fPe$(1JOHrl1g-*UhJ zUQzcJjY%(QYEKHWd+&L0`SGN<&DbxNR5br<^Ac^&PG+fANk99L@528_M?|$5RBqPY zb{Q88`18pufdc&}Cm=Q*nPvfoi9HGVZJ!um@2>yhf{XYd;^$t!LimVW5%6O^ym^|h zQ$yZ4@_62sxhhs7!rHyLOn$hew`kpXBr_`4o6cQ~8k%gB{!;YO#IOwHFXl8BTDzKa zg2Qk;?EHhY1?GrJTHGkPHV%^_K8^E8Ve$cFkjBDsQk(rzzXrccI+H0?q0alCvR5$f z99DYbS*7VEN8KM2ue83+HX#k?BS4F*`p+kIcY^$XyD+qHHwE6o4O(1E?lW}N$rT5i zC9EX^ewn%!1USt{8=k+`1tTXmyZ$9<&VjqE`Nh@iy z%#z4>=A`Z3QpsTFw*D?*?CiGb!QV}opP@#A2@HBqXAwHl>|6ws5ek0ou3h$)Gk7ID z*e66g|Jtp3@fC~Ul_@=!IGBSYFwi;Z$Q?IOh=AXBsZa`XWmZUM+XD{w7wS$x1M}f( z-mzI1eL9;S!xfZH0<^#C$5y!h@H8)nsk-}zIPz3d`$#yHa5-cqsu6^R8hUJJT(qSj zitwjIQqG2 z4?QiMO-{)B^)Ur@f@%c?GZUx{mXV)8azYcIycEw`MOA+PcX3%UAG7a^AjQyj&$6S- zl*SwyCT%N13*+Z={;^kLj$=0c{xFvaY52cXwzaEp&&{+Jk9C?9HZf?I|9<1m!js(1 zlY%!J4;`KIA?(_%><5SM^UR<1%{-ZX9Z+8Zx)vhizSL-AIg~~Xnl=g4;JjeJ3xkI4 zdDy43ZAUWhm@xV@kMfLdrKwn>{-v-RIADcDStpwyIc{REN43Fg3y>pKp|zbjA^go= z-wpp)NU#n(g{*B^Oj(Vd5>B_^e``o?IX_wMVUHUdL-+Ld?vsx0D@d)MyOse7m7_Uo z?kI2%Pr0c#dKi{_rJbLx0{8K_#v-)}4{z6<;W`~^?&t;RzM>|5glJkzG_LYkitH``1f zgNwrthvIiF7KVT4rc+l+_27WH{)m)jr8D-E$D~sku%YzRfcTZ$t+m3u!;lZCbh9+& zHHrq|`K!gFl+qipSG}Bb7n;wG4=ry}b#l~&b(N>VAQ9MT~P` z;Ay>;tU{@P5x*Hv@V=;fud2p8^dBeU;MT-J&#L`t@{!%-CN^B3n(1It9F0qSV;`yW zGOfq-ojS=!^CIs%Z&P9=$F6esr#)oD?6-^+KO4eev?dA*rvFLhzxIpKszHLHg*2pm z>CwF&{U@-GM5x^C@32dVv;i3tqZY&hJ}kCAgWz#nM|xQsrd9vNR;+5=FjQfnVYS)p z#Ta+>f1-zI^UFs-m0&XT2&T^e_6z~rg4a)*qTA@)tFI1MT!nuQQwhCtO+ZHC1 z<&t~yHP(kmoNVcc&wmsQim1hI4{E?pwFeWoxMrp(xJuspGZ9550&*nBKZV_HHacnB zhC_$%`V#_UYM=Z~%cLzL679Wzmx5y-Y^HyTa3R}l7^pjxl z5K!$q46F{?;pk~GdXxlO9n}aHf4T+gvp#pe@cj`UTv;Dt`abtF>HJ`lQhpJJx=EfS z7gELj*}7Pf9Ff%wIV#iP|7pcVApqUH@1=8!K8D`mW^)$mO5U8}=B+uFqcV1S28Ti- z3IGM71yyV|B%f|3z@55*y4ykb%jBr2A-q`OL}CY)_zIo;Ab@?r!=Y~a5Tu3Ri$pH zrabtWFT{=UJijmDsJO~U?Rj;UT=QJV!&F)2F`{D}^3qr-YwUHu!U_60lHe!n=8Xhn zaExXUcI)WH1z=tv*$It-zWgM2rbZ7rYFN>o=TlFLJ@KnahJN|dc)0y&Dc~2{I3o0D(~*Xn6-FBOtr8q$UES%Nk<|~Lh?R!)Ocex_ zln}CQT!6JLC^q%plJCW<1*nWl1MJ^+ZSoe5AFpH>dhAkyX>)Dz(DS^fsEiX_0SDt| zgo{JHem_CwO1Q*1sdFan4gA?1n{ijg+}-$O+5E)(`%F8aCPv(0u5XaW=1dKJZL(rr zCyABxSQ_~CEUzt`f{*klk~hKb#p0MvSt&$S@86B=hN0r5`|zi;(2(0ZHm8dYd$tZ( zmCZE7x=`>_KG&J4H&w!pX}T5~Ktn*SS&p#pLkaMX%49y2wN_69K`wb>HnbXr*xdVI zot0@m`?>4wQ2nnxmfwghT{mHRIT3AZFx8%Uwgg zSM8-KyR$d7(0BS!5ps@(P4MJp8HGx6>EpkYuaZX-qBa96n{B1ovK#XkUl!s~`$0}p zyDz!kBO{X=e+r79dhRDk5!xdq$57&hWVa5msnz+bxp3|f=`6*S#_1!^vHs|eGvg71 z8MX5vsUx_}QRy|;J9Urd@43f&a{N_>iRt&v6<}x@%@bQJTD~fhJavz1>4J;~ZJZ!y z$H3*wXP=7f>W&}j71*pgs~&Qx>czm;%Gu4zqNyIY@_UQhL z8TZ&Ce(sf3JThnHD!pn~P;Mr&wzkiXH|J(;d>nV@Xw7GZ^iFqjSa|p_pk9(WpgYm+ z5cO+w?cf4g@ye|AG*!eF49s^Yc?A&48JCpSF8@E8&cd(B_6_@wqE1DbSObZnsHl{L z)L`g?f=a2VfG|KpM7m=eBOXPiK{}?SbV-b!!07JWU^F8KV=UkO-uLtV5BGgt*Lj@Z z<2Yi@v+Z#QinJ)w$RlQK0?W%HEzCr?%Ck_jqxoZv=VwB zG3k0ko9OUtT(GdoqJ8Gi@4X-{SK;jmcbvOk}*WBhqh-i>&Y)D4= z+gl*Y4fr{yIp&M03jMT;U-1TGgI@WLXZhKeEX^%cy;bc?i&(1@bJjdY+`1|BA#$qT zN*$yxsWZ|$)f)J;_TF0Q`x;mar-Hiz_vwe9OH%9Zdud3;w{-m#=1Y=gS?~$ zarNx@Wp~i*>vks=Y5l*EulTgmZ{fJ)_ES=4r19C*?#iq%87jy7TtowCf`71CIWcroq!Zba!9&USI=bI725@Wr~LMYl|I zh4K=p_^{W8m@=;#%|m-^dYp^s_V3QoKY5{3n$y#FXW!@*tNE8C6fTj9hSl4LzC7?| z?{Mm-yS=LVhLxbC`==I~i({0KGWX5)1Gg;emqfwDTSd&#A%o%Gv`mH=c9bI-H{9AC z`l9sh3|s|FeR|tTC?(_;vlXThKSNu4CWk8AARB&+O`FaHQ|Stjv5E)-&u2p{*w9wh ztq1W^7a-Y;(vo22>DKMAhm-BWhK~<%JL5$J=hu`oNQDMd(2VP95$m;eTJS-Dw|Pu8 zz_a9@q9Mz`V)iJ=GPC`juG86XpLcE5jrf*k>#h=KQ{tYnw|~NQV*s~2`}24AD5vV> z(N4n7$yKI-d_z58lGsyLfx-F!Q)yzn>la6XnREw?W?HsX5x~JK z+eD2wY@mLV)TsFxvzq_+Rehas!!Mei6|rIik9L03go`C(i!2R|2LPDx2~?xu+!ev|ytCwTQ!*xfB=75}nn zG>3h4kPmglY?@*FEZE=A_0thYVUHT{b)52>yvUq|Eajf?|BKSyG0nC)Xvt1ArcLb}#8fTsHr=?S;f9PfO+Fv)8*}MR zKUaRDmxGF#sBeH^u(ELz)xbv#>tD}*Ce%sIJ%M%)@YSO3Y_;#>Vq7AZ7uc&&Xx9x>nWNzwGGd9SM7a^Z5d!KAkHKcaaSzi%OM9E zpLyBHSATa?9Tm45MuTQXz##Ri--d%jxu8ZDW+Q8r?rk&%WOfxezp8)WZ|?RFO^v_4 zCq%8FHPSA~@P4=9m|Hy@Hf(7y`GWcL`8zO~{2!{1r%{=lRmAISXa8Q}5`bQhc?7oO zidNqiNfnLV71+OS_CGn|ffj)`&-E4IVs(k)yOh6~L)%r&Pgs+5S6=iblfH=ajmR{Z z+vWrNoCDS;tj+F+weu3oQmX~AUc47X1r~-CL^L@E+hOV3bXfgC^5I%8RN$ zh)o^BwI>$Fn?`BEi2kN03;`sj*Fc#QX`)5njdFt$T$3O21JB1mxJYrt7uB}Su>0YV$2VdY9q7V7o>_KK3cFj{Y zTU+Ra=l+_G>9;;z(BZcs#~|_tVh6gww!HLwE=lx(=dVrmP?A|$o63xU-;1dl=W8{{ z7pS+x>BSmInmUQ-gF-6qZ9&`7(SI_V`PJ~*&& zxFEr=C-sOkHtU zw7TxBwlg{B)cZ$A=ZC20(i&1yX~fP{F~m=zieYYZV(*^^%u1io^$Zw%=brs`!<6Vy zD~G$@T3`;K)JlCh=;I}XT#dD~gDW56p5sKR^ejgIR;AL~xXpc}KImVN5NKq&mk{IA zPvFL~Pp8*|ys~M>%XYV8>3%z8@rjxjcfSd{DSQOUgJgltCo%GK-S38Z_Wm`V4-9Bp zww%bYcBgynV48EbUkqGTUJX8%47M4yB@3+3Fd|2CqM$?P6a8kkVUs7bmnVlkkgM0< zGS~k|6-$8VYXW~#KKHlS7?V0&IT@gr%!M!eI}rY@y{K#fuUR=@mHR6%y}Oet zk0Y5>)XVNNHy#S|n&|{hYT3~8i!*ZC_l)B_<%nDFJ5!ks7LBP*a`n$PZ^AD#e0M^y z+o#yKsFBz!FJA&R>r{X)eC@__O8pxiW`FcnLVTc#$j_3`*s8PW*rCi|@~PSMW6RV! z@6Y!!z1dCA$m4*f`abB9yVp9Ib2N(QS*1-+D+WW8H8F!)B8`y`4BWnvr zzj-Sm?o<~|_!%4^S~e}*hTk&QC6eKSvs=DoyQ9z$r1)fT1gVm&d8pHVG*Q2=>ZeJ- zCt)#b(7lBxQxVjt8}Q}-nMX!>snH}|DQ}*vTvEu%#YcNtNtOE3K&Ijgsq1)j52bn8 zZSd4YOs^A7K`$jV8oK!fX|x};`l~u2*~~?dfdjlys164ff*9~!7NYsOH@$F{;_9Guq)}@zs@fsaVSQ)G`*8IfOCxm7(S_Vz}7p<6(G-x&4 zz>zTlJaOTCbmQT=vQt~%qWzT!!690JIm>-}-h3{EM~AOPjk`#?RIm@R*RYI~N~33) z*L5!~UKMj)U&;b(C622Ltj*KbZrKR72;6A8cR>rtS`Jp(`5KV6tf)NQ39BV&O0ZdBm;&dVRfD<{hQKf4dj9*niFTU9dQ@dXw6wn!Au=)_Tl-_z%-7Gw+{;!=#(?_-r=@ zgg+sDWU%dZFkWU7l~AhyYj-kSD|M>8;Gtfcg<7 zNu)^+J(KNG_fYDZSg#w%>4k)8sp&|BPF=}))Z~B^W=n8K*bPRTN1w!Tfk52Xs_#-V zq848tExlK~$z1*gv$6kWc0BTVwra;_jZae5rwWQzT~?hPk^Gyvs5_ouhB%R#!W6J< z=eG3qc;sn1R6zqB(Ypgx%UXP5k-+ph$sy5uotHM}6+W>k0vtgJHvli`$mi2-v zQsX#4H9}--U6HjknvhUzDsWnnjlQsW>s=d%)+GwgYe-+@AnUfl9`t8!H(X!!<$B#H z3U4}F*j{o1&B=`@>>hnF{kO8|?Lt2$Z-fu(`au|zNIqE>2jtL9zS6ptSdED*foflz z24&)%Axq@)-#WX4w}m_pD$HcX$P3nf-&S80^iI{qE7Ubr@zjM2(Rcn*E5?nYk^p-& zL3$CMSKrlgn(Srx@{fSpeM~HuD~p4YP5SsHL!_3r&o+JJO}p%PXH5<`3z>MZm0hs5 zcF%YcsHWRs6pcL&cMy z!e&-dr6-+1efMmw#=SAjhMPR$34G7kt;H_4yg$Ys{afV3hC;ZR7>FC^Ek7 z)P&)PnS$|%$ZWSpOe}aGCEtmj;;uu=b)$^Vb7V2Yy5tXNd4agNaVHzy1p5N$WRK7f z%e^V;e)$tb2I^merK=9%g6p>@(r4#nv%M;xfx}JTv2C*>dpL{8!HW4H*r(2-$etqM zSGtj@k$d{wEF~qC8k-lG7VscO!NQ)1`ygWFJp8{@h3rvgpuCoXzG2@98VwzY`L6=2 z#HV2=i=3ZooldWH&>9*CjGyqYbYT+?gH#uFXj1}?CY*pYT_l} zjSbsa&3ir;G7*g6oXNYrY&YVZQB<7D+&W5(`j&gFV;eMGgt7W?;IF`#At+QZ=42H@ zLyZVH@QM{Ob{VL=?h~Dfv&-f_lruO8TeaWduPA$oN+;>(_TM+JGCq>dn&*VS6#fd% zZAZ&xI)iI0_&HCtEN%K5tW3d6vyi@o51Vx@J+TKeU19p;Pr7o-TyP9Wi}1>G0P;^e z&-bFjwe|_rb#S4s0%5uEh?Y80qE9|p`Qlp2a!x3Zz0n`)EggO}TZK)$i+ti@w^N7Z zI!-V5EkXOPGtdd!{iM5)`neKiJwOC|4Lj#j_V?*!W(6Cmo*H-Q1$pKPQL~#}H z`uegrnohz*M0;D_%Hx<}^#YT%rMnHmpY^`|N*AwJ)xf>eNi`-;>3IdJXsNK5%uyHm zLr=CV+%KE(FAMB-e&A{FwfR!{+!nu<=}dd*M&sUQ-WvY%%GH#CCXJ3816AG4K0eb* zKd_Oc8TXvtvF!f&M*cFF`^%ea`vsp3KeI#jgK^xSL%;M2`(Z^2iWVJ0%zSo)FRs^1 zI5v5urCb+qf0V)kg?j&|ZWZmtDKVZhNa?aS=SZvxvB6v=0RQeADkK+hcT_hmFR;u+ zya95hm|K|FfxFc^6E}DLgQ;fJT5wNbWb7y)M1=p7>LOaeCxBjp?X|t1i)H*{1zdiP zbIQQQ>*zpEO{GU3y}l0SF#rJ_*G-ap@n=TfmsI&ZyKbnbFvZAPROfR@!D?htR8Rk0 zm%<$cyHH9|4?NzEY=hc}!HS&H8n645Xwu^aX)}i*f6gL$aU-N0GODu#R3p}| z=U^)NdeWGg{M>aV=dW>PAaKOLRsktu0|)G?lozTCV_%|uEB~kd${vsGs;zZ??kr@4 z(7xyNDv&#@yP^e|Nv~d0$r4hLTIO-~Exqp|@YO@{VoJB|aiB}e6Y#T^+!M&WpJ?cX z+J~jNz>vx!uNZAESjZE_4yTyWXM?qC(gv~NVnrFBr#j->n%`E1SLGWd?ZwAw$@2=a zlo(eK#2 z_n)_)q-n03^jo1Eh>>am>ZBlwcpvKOgyIOe-5!dUb=xdAs6C<$P_sY2+0T-9ZT~nY ztAz3(mG#0e0=X3# zKCdi#nO4pH+?I9a_OVqt;~HevUb|0uin$VB!jba(;_>a9xiYWW59$i;z5A)9wVB>o zB(KMPC5CF`;uqEMp`93S2QRFsUK1Z`UI~h$_4s3mTZ0e|2{M=Mqq{%)(fm@)YX2~D zC>P|jj0cSKM;5$FKo$79{zBIi(2esfrVEm7y|Zp1Bdg!TFQ4Q6{4Lwg$#5F;fgRX3 zw0uL^Z)Cz}8>}ekQ@AixpJQW+#*j6l1piEr zIH!EeOuY&&6Bith@J&#&p?w~CASd1WeCXO`v0Xy7@<6@s@k!D47f;HcSe@ue`5(TW z!KGE9vt@IN18Sua&!;hkBnqJV8ve3w z);6yHiztxfVC?H?-{`k!#gF+X`nrsd_T#3Ta-vJ-XH|djtxN;R#O^OmXQQ|lNzK%F zDcyx**k^$X&?`0nY*bS!vb}CAXHRNSxFEf$LtW1e`z|_o1gr@-zngoX12jd|03r;I z1Mhlh@53$>1N+W2@|s@xT`l+tVkTR%a2NsF_V~5%&3ndX-&PgE-nW94y5EGBm&m+) z%VsI9ZDNw)!>)b*ZKT9s=8Y>pksK`JqF=oPurbZw*JuPab%I%#uizSRrqabg~s1({|PU z7dfVB2od$6&f^;@PCSbRz9ZZQ|W2e4uKzW22Z0fr`p}9=e+pkZVA71&^$-ib`nvjv& zK3sx~i1_=CVVvLavX~u4<}B3AuCl)Dq?}YsN$aOX<>nTWdwduS*+T5hi)cSWqR3r=Ei2tO{JSc-xcJo z$+Tuu`idt0x;LHBB?80>luy736Y_AoJY7=0W4F-Mxw6SAgn8PcxI#yjd^KRL`^M(U zzmG)lT))+9h3SM z$m2&@O_^N}QhxijJC;lOUsKW%<)GOoe+5hZ{t#Zx(|7I<9QlHcn^5S5uEo?>)?QXq zIyuE^;@U((KALQbW#s8EeGMlauSGCkh!l4fb3;MY(Z3w2Pt->Ao;Y}OjN<0ubyoi@ z^{{momhSIASBu+8=}Z*I{in}%%)v87Gd{cW!mYAU^+d5EX;T5olHRUlCp9AGqM8IH z2~GJRjp6W-Nw*3<6tQ9r47O`-$^Yo5#zgPL_ z^ykP66Y2X$?ofXPS#q1Isr0Tf%)er^h3nBuO4-V#;#BrQN}tJ!!}pJhLtDW&ly4_i zqZHe2$%4ZfKM3W2$kZ#ecNyOvgsP`s!`D4VGkl+RMF1Q598MvxhqInr==E;T5+`Sl zKI)iVtRp>gHhU5Vac zw-*YSq`iR1$aD2i*Zgs)#&6dz=H?u+gJ9QRAO;397ruiAwzx{r#xV16$M(3UG~j|Y zsqG6%vTh^>Qq!qY2RBuEP>MEnxwN+;I!u*%Vad z%&gRBh9Bj07w7}un3?hGRVVz@7y*2WaDOI?r|tc=av-%0C@Fq%G>1z~D4xg#@GO;_ zO3Hj4pA9XPD3BK?DM328?SFb<{^{s%CpwEl?kd^5)zfFk`H~g%L`X)zjt;y;GpTGr0_@H?a_mmV$x70zu#jZ|e z4tq^Xz^-+3g6#TrF5!k!l~A8uO`XogdCu%(HK9Mqx(@e<)v~*?%AmJKT1=(Dw$PP9tm0&d^r&|jfy<8Q8ag6?w5p)Ap@B**6ZU$~Lm`&xXevy3 zQZaa3YDm9Tn{!}KLUQ-LuIG9!VaSBr8<$1DdnFYSMl%npz;cFYbzm5&wYlDB>!N@E8xw=7 zjpwOF!`nQy-b4zwm8C@1TA;EW9&Y1+7(MGX+T=KB9@ZBzkjRWBsGsZuTJbD6`kMDVe4Am{NJyli<&1>v|=Y_7Pv6UcwW>z1XIO;oLh5Q+&nCHqINuPZ_LT ze4_A`F#3<0ok^izW%Csi0f{?IL+|rQH^uWRl1{1o)V3AA*px5cfC$jo|IJFeeq13< z>sGZ|&2^*Rme(T`kxeCr5S7OkbTWYpaCKkgPavfExq7-E{`vC6Lw5h zDR)ye=eoHC;=)6`%7-6KtCZ+buB2FS27C^o2XO&ByxuQ-wElZs-uGEDN=mys+Ew0+ zOdR)e)=2_PwMz{?b#!ob6e8Hb@kikKn~I&wx3_PtLJ+Zm{Q6ojE^k0vEl ztbE<~{P*k}*x#IgfvKP)?1&XvlRRgyu)JWY8yLMB`@I7KoUJn7X6EEVzad9 z@DLX`^Ug@xlT*hz4rAUVdUyYbkgOb?QEnTZiNavh z2euub4l$Td03>DpTjyaLHzy%?>e2SdvGoAvr%)$L-qO4oRVdc`q*?%G?FIF~hUc?H zfqSV?TR4qwIZx z>`}C~$xR=iV*rBIm zVou@wbB%1JHSJd`MFL76?A(BskhvPEpf&v2{9scS`T zD4%9(O9|WJL2}`e2jQq*k$qkjtot;kZ=hg)p3`xaTJEey3 zT(N4`FN|}?56-@^@BfiFceh4jQ_cUI!aCY0CAKoHgd~~pfg67m+JR^}EQXDKHO!)C zPr{#UBqrrR514;#rrxi>UTxPHr-gq28)s}&;2tUnZyIVLb*?QsElC#M{n_2dzH*oL zy5_czvx|>~bXB8Yx>w{yHYf{U`k-mxrR`0BTM4fnU|Z9g;mtlW`EUrGhs8t|-&)ub zSRSp>>JGJ4Rudt@SJ3~|U#CbZIzt7)I zKaIQWqq=0Bt>$b%>z~-*h|jJ^eG(`~CG@7uSMxLjL;{NZXu(!zHoPaV;)e3w`#5PB zHZq%nnZ2ggAxEiz;{fof52W`1Umt}T1byJ@?Bg328m=P#`h>kf?yrxe9Fl#%no?~6 zol-A&h(bKVfbJ*a4w~F?%NHG7PM2}fWU;q?0pShzCpsoaxyk`QgTwj?hQ`Fl?X>cx zFQg>f3GScSG@r`OuKH2&vgc4XZ8h+UaKlIA;THU*i=hcT;~j_S*Ye#@1Nmshnp zg%sBRF-n+HZ&Lg1CD?{Dit%P#i=28t$Mmt>G5@Re?zI1ZL*%3Nh&|s)quae=H(?#> zx2Yw^;DHTFCR%;YvP-(e@RufavtTZ$DL0)PvLLE{g zt0cQaV9<{>jA2LTEB5WVh_*9F1~8kV*u{TQ`_CgIzJo-ndE((p-jAHqvX#>MWGHKZ ztoaITUSQ)yhpkmmWOxN8E1i3x+sjay^u7!N`o0Ea!wiSR_KYqjg9`Lhno z1kwELNdT zkEJz4G?P%UaP*dr-(tYuINTSjScV+Lm!(aYqnx9(+bF-VO@)K8$rj5zNh-(`$idzW5{#pjjbB3=UJ z|2bym48D*X^ae2_-MGta+WzDe`EIj`*()yb7P|gi(Y*M)S4EP}HBSb$9|V+XXinC4 z*sQr`u*(-s8o6!eCi6(hAhqzQtZ=QYel33fDKmO%%lSzMrLS^IOd2LN>l>ia?iQBB z>cl5Xk;4gmf1i%)M?QlK`#E1pRkSx`G|Ab&YLfcXFj21G19`iMtWkEo?QM7MSGez; z5}jlX%iLL9)cJA1>LXs;bUolof__XmlMnf$QF|weFhS4@1pKpiYK~e~QAK_tVH%_L zy?3}JUwhv$7_|M#^7VAVK08IB?!(0DkfqtTTkzeBkVz-O4WN1!%I)N|RG74P*qmf= zU);@cT~tzX0g`VeGlFUi?rkYX*|2@Dh5&9mN{n&HR`Dx(XGsrmgUOr+Z{lN{jL65% z42m)kJKXIFH|%dJcC^|_e^XUgageQE6kTwfypb@xVlcEN+G0pP?zHySJI=%GOk>Su zin-mc^mhG%m=4!fR*6-AK7Yt;RmteCzvrfIQQp$2%gCi_^^DeSC@j zX7n4BvTnw_cJgLN)b3o*1(B{-f1?6VJe5-!PzXHtAD~M|H1p?;iXfc~eNEe(fnVnK z)kRY1p`oEFuG;j08^?>Hq8{>n?r@-Q(f$43;Pc(thwKuX;cTtq;livv(jHyW52ceD z`l)Qg*~K9&KHVm@ngZqZFCZ9T>i`X}fgIn*f}8W!2+Vcjw&kcR8R6BHdvff^1}{Rc zzczQhJJm|-V~AW77krbAk-)Oo{*hWX>uc262|RoFb6umgjUe+E2#WNRzL5ZE07o{7 zeVO)2a2_6~y+7x5mgwmq*s=O%+~#*!0(DG#&u-UQOiJF04?RoEQVpfO@+H5~gTm_+ zsz9ydE1T1)!ow&}-*=$pyht;Qk2P(ze;Ix97O`iDR8z4Tx?Y*xG!sAai=6AAYb3XP z!Ehzl&6nsXY!3i;8VTP~^7*e))dcNWAgs(DjrPk^=mNrND!9lV9c$m(RNPGe ze-^+a%;I~SKC`PJuLZ94CuQzVBq5O{$CojHH`rv9^O0Pq@K4 zLS)$o&JkT|iP4EE_Og-vD<1^GLsB}NdSy8**%lY^(d1@dv0@{C|GSo>qj?Tka`hMr z_n@u6@BMd!x~8{;5*17O+`QN+2dMu?ZBMPdvacFuS_=h?*idZ=nE74314HM9>6VM# z#)EO8z_mYItt)k{TQVl4+5MX9Qx$qSY~kiN^C0I8a}!}?E&zJM6g;EAclbCzWr&{f zzM*wY*b7G2$qX=2HBzNAJo0zngp~B? z;GFE7f?MOXz-q-KoEcsHVZF>!%893{V?Pr2qfN@uFxi~nbH6>dYvAKPJC4|F0jdK_ zKXR*h6~fr>hPJX8b*Zcb#Oo`ocy3aPjkjAMn_P zRCMF#Q@eX7Rn=t8o3QV-Y{f@HJ40Su`91bDwW>>{m*z_|)^4ROWa+OEv1G4iMeh8_ zp!oLMU2eC=-@|QiyBsCh*t*znhuCD%S@@t=s&9ge=enWiJ#>-&C4uSiUkQh+QsCBg zZ8X%cH?}@je8V~H$%t!L!MLCAQbj%R^EyoVPE;Bn;UrV~q<^rFU$d6G{2ne$!##Gv zto1gW88uql&X+RP@uy%sBzpLfTb6@F);Zdku+VRmRl|}Sv2sRf#9qCvvK%vQ-j!)f z8`#j8WzRHEthab`g~#O_hNKCmUiLW+pWrmyf2-v)xhl|r8?V>;qX1Z*O-4SXZgEWc zvEy}FRqUIMTe`r5blzn`1Qve^I+A*&Uivp$P3}grH4W;$6W&XId>d?u7#WCPKlTfE zqrGu))sK`c4`3(&5f{4~g2IIx?I=x;r(=C`LKas3qN{_;7*9xPy!C2Ui{0E#n~E?H zH<&xZY-s2TKizBa0CX07#tUGAWF$G;6NDZ$y4;vIE5tWj!y|xbTBaU2N($WN#xb@C^CF7Lr zP3jp{e4K{gIb{drqGaxdb$i_^{bF}X|F>BxD2uuHkDAw;mDG;mc2td9#xh@ZA5KQ+ zM}t`sv+)xA4+Wn?0bK>L~o^^0&WBZEuA-P$>sYeGC5ONtDHZB9>kxU?et_Ph*`6=&h zf6jw?3;2&FBqow7Y$WcFeO=BdUth3B93Ls~rYrAmwr%Jd&@;e{-Rm#RplWx@6eDCz za^CSrxHOI?41V$Q{BKxpJA3)F1LGCeYCLs+&|YuxIXk*__UJnLHi9tq5<|&AnyjGR zm`uN}@aV$5u4|#5p2+(bA-}6!iM~d@sj5&P*o&d!aJ|7sPJDhuIY5s&RBhvU@SrUZ z2;14Ak7L0n86a-hlAA21xM4kPGc!zos^{09{uk!z_dAtE(FZ#L9?I9L);lqdQ~X-Y z?K0Qgi3ZRA^iTWC+y^X=*Iuk+cs2@nPq!PbDW|0Kr(n|!4C1%7wgb>I6;Ucu=2UL* z*|2SWm8Oe{a_$43@1=gAEOFK38xYB#@JSt$$AB;d<^^%t*ncSo+>CN%z1=TAMPb0Y z48KVG?U+VY)je5BYz9H}uaRC7eNVvCOls4W5xTE zcdF#UOZ{;bPKr$Y^C8${HS?kb8dKUJ-q}=8GPKSAqt0DDRG_u6S-CZW7It&a3!Ei2ejs@?D4 zT1gcyb;09pcW)Us)-WH=9AipFqj`k>Ye{WeqB+|{ltfqaJ0f{1b)A-iy(|IN_@U-R)0ymW52MaeF`cIlp6# zu>3%16SU^XzONar(E@^r&`1?#}v8^1zYvOp)U4df(q+MO~}i)%7ba!)Dfa z{yNji5OXW>$es7mz3bi*ZmuIGm&Gg%1mIJQPAb=N;P3uZ=ra?+Q};^FmCTk&F68Nx z+s(m^RT^V0%;DX|<|X#XL3X*2JN&>G^@+4~b`cAb7>kiDmXdOfZ@t-WJvFkl`-Kql zN=?*MPYVA?-O5RNJ@c&-)o7vH4y$z>$OS&mx^n@D+SnkWE7Wi6R_oVEUvchfe@y%? z;J!wCT5={LeY$q<*h>AMG`_C~gMg1bEc`_LcnV;wQm)HaK3#XL8Q6Z_e(8!fb$4(T zsagsI4KgjaA;YWM=gC_=tjDES%0J|9&&(^%mDg65m^rb(Yc<%L`Jy`b-C-^%glF1| zwwYzPL~1*p*5hoCZla!c6ukx(csgw#TOuYgj|V>9?pcMjONT3i+N!lb}y?N7cf>^v&sML_A+*^Y|q@Qn5HRdwqDw8 z#TS9i|;8TbEwDLVH0(v(*qLaD}+fc+>W2o@AT+@+>GG-0;bI`&sR zu?Y`r(U)-uk=5mF4wS{jcCQYvZEv11=Yb96x?_cBK@K>%`S%rS=GA4f%zRw^*V zOT+rA|CF`vKl&BY&YnRHr>Vo|9F_yfq-4TG?`7a1r4`b)b#6Od?J-R4j?-j8qqWL| z(iJe0uVf=Qrj$$mY5x?LHH(l~nW!3O`c?5f;`b_7XAAa;$cvCduF*jHOsVweCN}}@ zexJ44aV4DG)f$9~lv5xPw{^1PpN53CF*K zN?rIUv6Ah?_CQA3Pb(3phF9Jk8^TeZvZKzjJF(PJ`?T|Zz3;zY8ePE+)%r7N z2Agle|0PuC^l@zvA;*aaocP(7b3P`K>&ZaejocP|(aPXIx>6h}n7HHMi>IoF>aTZ7;$0MW zyGAPG4E0V?L|^quU!$nnaQmyu)5cO8++aJqgfXm_T`EX{I!4Y}iZ*$=z9gwwJeDb| zTQi|n!@m8(fBif4H`*-xs4)*MbX0w^Vq;4qdRC_9o(jnMy4IRoW>l)tVhy6EqA+k- zKjrA2GNjGhZRe}`p|7%kH)Sr5Zp5=0y zO--jdf>rEifF_=!Gr~dwxjDr7@EOVf7YwO?L`xkG{1wUx}rW&*NaEhEEDfkrmPicFj_B9pF?sbA?<}^20 zi^tDKY+jq#QjxI#i@2c}@se&?2qV4)Iy086Usy)6Q(&@)pDWjylRxF{OZK88iP6>i zM}~@c(PC>?k7)14*a%ia*JG>A)XGBuC8t%uX#Y`YTb zbY#7?D)ACvD$r(>zo9BV#7`hhl)5QnELb(! zxvZ0EZ@_5$Ju7G9JJrV}IqMasO8F$g+EiAKODQ?~=N1|sVNzuNqa3JHeFloT2TANv zw(eEoo>lL=QF`@JdXd$}A!aacJK^Rj*VGu=nY<=t#(bXbTn;<&R~_kL|1mT*q}mkK z-C6gx_0Fj*X7;YXsMq@>NRvW`$fG!l z=i^n@vVkvC;AkR8H3NBmxbo*L#!4*_zVR5d(c-^#l)Ug>W99an!>`qSET*!wdID>_ zXzC0^Vs-1=Y=gJXedm7RtB**fu@v{YQ^Od{cDdB%(M!3oO&;apWl+5xK}pZeayC^O1#A3N9>hF z(cNIYTlLpHXRC46WS~|Twe4>PG!yZ%Fm%zd*h|3>*fRkYK}u5pZAQ8Gy4|XhAhsVIQs8})9?m;A1tM||L99ei*^|@q2 zs2?>@*5~Gcv(R`+B%roJexptW31$12LTcVL+k(UN&a5JoYZM6Z@!pPb$XJ|sHvkBJ zIQH90!O7oWjgNjO;ZKr2s4IzOm?&HjP2qLKl5vaqt#k!EAMorU*XF+*-(Tq zX*;bY@yZ7JASkx(Z_-cIdX$j1{itG5#azM}kmb^wDWODRD9;l?+8vi?mxFGC z!Js_7Q-74L(edjA3d%23ZbN8+ZX1>6#>(`D);RdtDv2lt4zA7CzN0W@?t7J2S61a? zy42BXXm@_uM}fRDdKAfZRc7;I`mM4smpt7|4_uI%X}+78dR9v&(kS3gbYslfFt2v) zs#@!X{a<6rFHSMLOme2{?~*eeeV(a<6onMP7wY8(68e3{yBl6rnXMU@EWF%$mp`Yk z^)?>~h5u7-Ct-CjGV;`t@emqF6KNEu|4a&5cq|;p4Dk53iy4Cz#7oscEiyN5wS61W zn*6Q7YQc8j?!BTO-fQdnx;pip<6tmtPW6*m0(TipGhp=%Sh~^_+SU0zV%YCsr>m>I z>d6uy#{^2eKGejJW15*-T$HK+aHsgT1&QaPUw8$v?Na*7x#iE<`qHp1pOA#=9b%=t7k>|p!u^TYRlcs}mueO>o; zu(En5k6$uLMZVh*#saB7JrkB)8}29rb)mmi-!H$e-tF$E_8;`o&hAbU&K2iXTl@gW zY>0+CZMHdHpyi%yp~yAgfXkDMkra*IPn|Ji`d-2vAxOt&uPmV3(0)T)M^HwG3j}zm z0U3(M`-TtnEYe$=*G`sBAGZ1qH~iAi3Uhv&Mm6SPiKepQ_X=RrwjX+TBmzre(Kro>AZ6G`($M$nH6<(A+`6lN{_nlaNc_V zaB+XFc=2~3qtCUK76C7*%l+!0uu9TN^6X)`c-+O90Vf;HmSjlI2Tme$-p$Vz(@D5d zX6|a`9q@K6P^{@A?bh_OhviA!Wocva5g?VdoZR|8R$QAfbS4tG4ylN^P~^2r7`4F% z;(B9~mh!CLm4?Ob=zkQXJjqCuZg&2zk*rC|hj2#Cu~vI*$4`rJr9EHL5Jb8DPQ{aD zYd9=)v*(EbXYbkHF{@6u#0bI}j5gRmef;*s94YAW(|daFkVPeMcjvGWU_pCn4}8N0Vav6# zRv2oyTYZgxIccsnD|pUer)lAMAY|$PU$McP3oHr`sOyQ5wl>+K<@Olu0|9$tM^%xf3~vP zhH|A5TtU2vi?CxCjn*zFOwY_?G_>-Z2u2$(+oGc^1s3K7chtnYdoqLyV+X>QbX7em zxNr0yTgd}i>gtGu+{_2~xE5dKWAtd@o{U5{o=&Tckfv+lc8j_T^u%~{M!$M0VJ-Q9 zmJHEAdLf%mgpk{Z6MYu5Lq*9-?(#O2Ij1hw);Mn}hY_cH6P-m})zkitq()p6BP z29Zl$tq|&wyOI!WRtDO7AG&$}mD@(@&vSaqFp3qi$lcWE(_8}N5#cFsC9jr+lMlt0 zwMVX>k}ox^T>U3{Zd`OYqgh^td~9!LWGu&0y9EHG{at8ujmXXZlq#^o^ik|}DqBA} z+t&M*K3{PWc);7|XvYD~1ev0_p3*{%sT835l*i8+ToY}l8Y zFA6XHx3mA6Ua{sw`KpF|6Oe}c^US6tLnh~>(p8{iMtQ>GOdCJR^?c!^ z$q6rLhVx{{P$;;cmHb0hZ*hT~3AxGs!v0CZ9O^<5Z*CT~XgP{#VS4)gK8RE%yICzf_$t?$(KK@C;E{NtIgBGlqiHH z%9~dr=ywND_13QUcoUuDk)Lq24~_VJj+ZIUuwMA>uPkYv=Uxbbn{%ftM%<$G=229Q4Uh?g5a_}%Dx^K}$Wx7EsZW2vs+ z0YX-VYxb^~(>ZJa4nQEboe$qUfYO#LhtE~BmTq*uE{ELQOVw`(zRx$MXtMF7+DQ69 zNLW~f<%{F*>U55s<%lt!Va+Zpnftx8|6Kiz8UKofi8}h@A+NY6pn00LnpeZz{z;I09 z&jGl9#qp&{uKQPl)f+{|a)1uw)1>RakcYxapgd)2$~TI@?|zl=%Igk`tB3#}e#=e9 zn49hXuB{l=X}j2^Ib*=}QLeF)jx*W!S0a+yGsfp7AtsFEYsh!bQN{qJVelcocSarA zuw>W_%$7MOQ!f)2!`x?n`5y5+=dD)6OYmyk58xm7OK3~>&((G{r6y-^HN)1-ri^JMNmTMwh z{FiNAG?*BnaQ^^1O~Z+oqwnqbJ-BK{p-^E@@!3`ETVtuTKH*ENuVoZMTiu5SlqX zenvfNKs?lv<#e-5c(t(UFo%md=(davJ^IX&Q-RlSSVX(Egx0I>^pMbP>u=YM1^7vz zucj8TO3M)|oJ=bj7ytV^@nDN-6TIC=z`{U;(7K3}s4Vo#9%*M=;5T}&N__C=j5T3{ zSRN=t-OAZLo~|pXX5& zG)FG1kMhPIKVyEyN4%rAEHZT^!41kL zHKk?!pJ!)E%Y)l2I(|sWx-KaDtfi$vLEQS5ehaN$j-#u1%R|?xeDbT+nTs4tQ4tKT zDsu75{9m1Om9MMy7EbOD4(?MiMKW2N8axgPR5`-yFYVmj(O=cO0tR-!=*sGD7TNl#M;s;C`fjQ!I`M zut5BxE!kX!C?_?Y*zjCB3EdZkT|wYo!f$I;-w z0|I0(fm&?H6QxI}IPi-aw;Ae8{e+R^Pjlo2l%7BHHXwOv#UzGzBJDTKJ3{O44y^67 zfy}jRZgtc|((+9_^1bB3#Yk(6#9wj7qa6RavHT<%Xm;;%N;Xj^QSrVst@eP34u%bRziAznFUhq19;#0r#jyg~>aK}Vm5&XE{x$;JGwAr_F!sTH zLj(7+>fK$`Y1cr2XgSM+>jjh3c;yj@c&125(kd%U9F}bG-61~Q+2q^(@gJ&~DCuHI+HiqDfyH-kd+(=*0r3MfE>8Yd1HI); zac9!E%>K2@qeO8emh&5;TEhLSgp0jGHDqjWEUp!sJpD7}W7Thfe)k#ejk(es)W;Wk z-HG0rYFP4vlgh@NcD?R0U>D_ypSz~^jeUI=%_>#c6$P{t(!B>Ig7SR9pDU+YCxeZl! z|Dwou$Iebqd=MHVKn%;=?GKtw5C+~0r)b8>4-pF%Pd>1vw71^*S*lr>kmw~9_8Y;C zW4E-a9`J2g{U4{Hj`)st4V3t!e(9iO5$B!)Z|Z{0px@F~vFL8F&8Ye^XVKZTY{Cd{ zRS8$JzRe2$-j!^Psdy$l8M_#m^XjJ2(zrtNO_D2BV-Y8cw6HV9Iu+AW6PN)j-~JKe z!`CiXKbfRX806^gOyV?pf}LOK?Kpn2n@exdVS1Qrfj1;3mh4YT)7{tX)rNmeiy?9% z9K##AziB72sv7h010yCr-zK)K_Xjm8kG4ertIPh4)LI6JE|#c)yf2mGaCss(hE@fZ zwz|S19f@{Ydrb7dAOHrnV=TNCCwz>RyBFZ0bAZjYvW&RRncMx@Hfb3#c3@{xqW^)2 zO}*pV>1BfXq!DBpC7m-Y;QF&>Z@3ah{k1x`DVdt9a-7Ths&lsU;z=*TJ+Fwd4170F zYDz`pqBs9=v&nS~y54kFZUS6IWDf5CY!+Y45)9ABrqEwBs!P!IET-+Esv!Q_$Wp8K za$6YTjtJjP(wU4$&*UNBSUvJwc#3!WzXgN7t&-CH9z{1(#=X4qBa9k!LaB=sEq*_v zV6R=#K5n#Y+;{S~u3E|$!;%`W#}yI&uN=Hms+t-*EGpCJcTDT)SxCmXuJw?ErnvnI z9(?Yj@`C0waqh%%`n#g|jkL6&rQnYWA-c;P(mPUm0+UmlaBPw20Z{EjxU=?pGwXdp;iW1&G07A|mRV%)Wx(>Ixf6k6yZX6Q%B*g= zDF(oDwd!pV>rQ7L?zwAY`%^Ts_w9y~bKpq2nLF5-kyO~y@dHv6$cmhdW%%*?&6OgM zxo%N5dgIdjPB@pv=+_?Nd8SZ^s+tt-E3%*`%Nh7>;BY=M@BZ{*Qv0B2luDE>Kpn`k zUJ^TLMwulT%Fx_^84d(aAvBkKoAH%CGN$_B7^kK~acKH^2Kn}yRV25k)bbY}9c7P{ za#bF6Sz8MC-wRuu`bmFi7wmVB+q*LIZ|7p=FlFHA4L|4Ofs;RG;Fp802L3bYanIxx zr$i-;J}JK818i(Lq>{d2L2NQoWAjJ1@-Am3lOU02yWq8ZNKaBw{LKtaE8i5!BTVUp znl{dy6XM;dcW+tI8Hv8sq$U@MSyiBd;Xk~X$RtvVxSrn0aa>gOFZfZKAZ1sVJaDY7 z{E&Rv`PHHz`6SM~6LLSIqFZ7~OPMdDe!5)lkd6q&NRN+40(I??khi?ojYLf!sno6W zRrpd@R}_Sh-MIf+*S6Sdea+|sJ$~J2ySf-bfJ{HcxcCHcfZt1$YKIT9Z?eOd7YuW2 zUM0zhJ=`7E&e&F+zLYh+@@_{hV(c-t?Q^?&l`qp1_CbVZ6A`+e1pxRe7WS8OWpPC; zq&0)sT#=7dMxU}1nYvUD-2@4&$&J0q@t`Iro;yOa9n{FNvDb6|iBwDL&Q6eg^uyx) zuLLVmbtUV(ghkd(_|>sRoxIUePJa*8GmTO9N{RYDk?1Rn$9^RLYw$=M_IbK%81TVO zSpoUay4wiHy%ex8+s64AW)2m>{9oOU3LxI#h>rn zCA#3+oca_8Cnuw%I#$7YX@2}sEt7OmthZGCx`*)N*i~yn*}C^m+}@fjQ1F}Tn>#!= zs{-NY44cPEl5U@djg|fjob`$9-Rdn40I-dtb`M=-UHTuKv@u%_5-WUAI9iGLxtj7E zkW2$I9udmQ+u1zf^%KEIXU=ba)D1a{?of(3yrsWS~F!*7`}yp07O${n_)ND}KWi$0&(GA{ z?3sJ#QH4*qL0-7L(nzjm5{0QgkbMQx;1ayMk=gJ=O9n%Yg34qO&Wf8C`h6zf<`8Da zB%(E%a`RMNS9{5mIr+{|2dzR~vSdu(T0G6e%4qih2{F5HsP5PdsPELi$hQm#7j^+A z6BgIugdnQ$p^=6lMAA-j>dIchZ`~{5XfQQ38eTM$%>Yu_ z6}7fX5zk+^54h#$^Ym<~qp^~8Z0tmXJ;`v%I4ZXs_ni~z7_=EjDm{R~fcYh9j&qEH zsZ8Dp&bp}%M}J2}8Zr>o3~{qG^6f;^x^wdLj&+z{x+K-{>gt10V9U8qoY9MolDmY6 z`58O5t2Rbu*c0+v&8z=wb6EIv$6Q9eAnR|Yged+%XpxUXLO(iLF6?2BG}FDI!G5W7 z*MgRt_B?Ro+RRhLHD*05l=o2f2s#tQ-C6bIQhV%v4xfRBjTk{A!l+;U(#g+Swy-6h zrJwfvaYcC#+78T<_2ivb|F^dt{rm;zh8OwHau+}*1 zPDS%K7H511)_J#V+(2KzT#i}HVicJ&JO;-I; zzJTg>uUfMvw35MEQSEY*S_VK8@&%5&ViyRxjseT^=3C#hybcUOiGK>-+(O(_V?mPc zLFT^&qE9vS?$?uA4y2@tM2SS}eEMOyKKVzQFQW%dx6@WL1^KED3%TdD_A$PbO;KSQu)%6rPUt<)hQ|w!>{6(cnY!0Iy>xRgAQ? zNfi68zC1f*U}Uyy!heVTmy~y4mc{&!Z|~*~JX)8gD6`rtX;qpqEP5_gS9jgb#rKP) zE^2LSC&cLmo;PqL;tcA{-k$|}BzyLGWH?Ew7R@;<6n4X>ro~QJzs1g`gwHqx$Afkh zA9=R0^DvAj4UG!s9ZC(s7zzJo)?2zy$%-X;_G&4VXTNyf`U0!V$A!~e1FJQXw!tO<)bW~29*Nu8oEEA&cQFv&FQBWN2k9f7g z2@1@~ zRD4M=>Hwg8H`cnRETFeQePh62N49dSVTuTB>ulTCy_pH*U-WFFRyI(vYDu~l75G-` zG|i#0MSlcFdpuxJk|>33{YyERF+>DZi<;hc%V=qzJXa2c+>(SQx=BqLnBz1qdfc^T zNH1c!8*eXrp)6-2Q^%cfH4TR07RL z%qwl*dwJ0%vN=$Rc`Z*ye*S)$w{k^Wd7aXxqM3+zthAW3>JeDJ>FTz(^D9GpdBvLa zN;eg>rG38My?t$wnbOeN+leB3*Ed^!HVJ(3%OyX=+}O4vLaWpqbu1e{<$@Z3$KYS+#e7&<8Od09{=!T5 z>fZPlHzWo>VHsU4ux-|c`QMl#t01be1%P#m6?%mc?dSym;Nri$aA(&kr===V+|!5e zOfU3ouOg5Do{9$8TRzTf+we0OKdBf!-If~FVcz_4HSB)~3)3E=gf;GB_|3CSt9kWJ z3q5$?_5H5xrI3d?A*hlNGoNL}+B+}6(`xfUcb+SP%o!rEwXJEJ<5)!r%dimx$(Eiu zvR@>_GMfA}7qEXN1A~amb2SPZHM(!|Tla$6`e|Jld1zz|;UTS>bXuM)$@^NFCBi5_ zL|)BxLydr4MgE=4o{#v%zqs6Nf(c)snxnW13;ln<17L9c0q}kE)%3|j^quZgmy(L4I*w~Z3)?Qs{plph<^Z&W ztz+eNMZwGW?wAAYUedcFZ9~9ewP=~(xf)DkW$RZVt(2zCQ00`GKG%#p*vxRn&OE)N z_gxDdRT_fr&$}LyTN>~Z(M;0TuEdIHvspL4V0qLohu=yL>>C%!-BwcK&^{+$afNDx z_uf~MYgGA>)%>Ic*a^CU`CMhgkX2K7xitJ<0O*@l_F8PU$xH}tyxfzL^s1*##cI+) zTnRaU%M_kkjvw)ICtEz;{gyOZ^AO{GgKh~@Tk6e1Qb*zjiCLh>FXk3s5{AanP9Y01G1S}ULmcQv^kX|ypx z!UjKZ8B+~~!-EJKbfp}A%>gKHhiH)8;G4FahBM+ZY>#V8%g zL}owxtGoicEfU`*@zFIze}1hxvZ3zCyn&utjY7uDmGprv%m==7{)w^=?Fe0UvYf&G zkyky!o^LPylRL|)`_$2{9-#ay+xa7)!GQd|?quVqCH2^CYM>1B+g2i}XD_5XG$Z8K zWQy+9zyVVWucoyzQ6!wypX^H|L^BJb)vXlFS-yYw@){(FqUWnE`nwT#c6OQKoO;rb zz{gz|a+NTBk`}!)@O(LS3~WmM-kQ-DD;Xl$5Ic?ADTeiE!Exbz`F!n#n)y-48L6*^ zdII=`_D?zztH9r#cCeJhGDuwfJ9O0UYCve)df5N14zw>@tV!RBGz52Px}kjW8E1UA79rJUb43(c&A| z{vIPx=1@M7Qzf(4B}$SPi?|R@tJY#|HE^rw9L9AHW(~8XJp}LVQqO1Kp8ZWSX&XKw znayy!+CN$XAug*&u&vk7CkivSG3V+pjY)6QR#RY(%Q(Q!nqV!-_8;&{PTt_U7{}Aw zZgXdkTd}8jL==OoH-5`Z1^B@JyRb0~z1DmMuGnC)EB)2@<&<{kP=A!k{9Fca^hbZg zhMoIWrxVDQA7*wj0msyZ!Y}NL<^;WVxNC3wq{8S6yIC{MIM~+vd4)D9c0bxSA`ZWr zdusAuCW!1Pl4k1~?LIg0uhiMCUZ?Z56a#RW7bE*P&u2FijfheD3_s_5E`U_G13jkn zzre#R*mgIJ{RG39n}%fV;3rQl6s-J8RIM`IK9F?O=@%s~_i(In;Fyap7KF$$ayU$1==FrQ~b#Hn*6mH=b|D*(UT z?|P^~1lYqTfoFgsn^nQ9mX6trwg5Um^t#GR=YYzW(X z2ukGDkVg1C;?9qW=cz)Bhei&MAD#=ZhIbZtKf+l6G^8`Au>n7zOj5dA z`P9L)tcG?VjagVCG$PD%sDB5tEW8-L*&nRo??E79i43vy_+=0%nX}mRIU+(vI%DX` zF&g`bQC%}PoFqEqS=VwIRc zKp}s2q9hw|^?q~E!@3}pAlbrn*pQ2~L|@hz+y0x#TNB^5jpo0EQTS%}6b%%b8y9b9 zZ}+#p<49bj=zHCur2Tu(<3aBJrT%8=wruRy-LxP-lAys2SoQ5wKaFh1^l zwZ}bO5$Tg6={%J>f(TyYXYJffT89OMtrS|1d)eoy1NemfvAO-B|EPl+8Dq{1UQv^P zec3#6?NZxPi0@`kt8SlO!{x+obzeySJchm--_-}~3C+Aasgnt<9siHfzqowaPE@Mp zv(rRBFJ@N$koqC8gMHo{Cun}tO^Vpu*v^cZYy0eqv>JeCVOYrCV@k$yOU}|de#9RS zJxV#E3e!sUH_G}a%iTU08t90AM=M^Rp{R-V+Q_6UsFQCWBG2npoYO;8(#Tu4pyJ(m zW69xLHF1ey{*9=!G3qhU%H`hk`!3Xl4#N0Dh}y@M!mH1B0mJg#)jOO~=#;Ec08JsG zsq%+LrwLMOo9A@hWTyis09}`HZ?rw)|8k4BWHR@Ee2`h#RgLFjbJ{9Eyr8$5Z7jhW z4gWZ_e;#wF-q3Nwp;2IGr}y(ktx4RI)P(uY&nv=Ms_}SZsyt)idtLym%FOA79_DH` zLBKZF(40Jf^8S&&-REXXM-n6&gQb7yK5m+XopW>hEBq9YDadZfzPeRZk}Qb(<^@%Q zMF!~fVCOP=EnvV9-y6WU{c57REIFg`_TiTl?k!UCl}l?>wHtb!c6yd5C8vy@?2I^D z-bAqnW8$I+$n!Y7FWOfrUg5}o-{;t!Dr82{y5Xt@YEIM(g$+En$v+7$3O3k1{b6TI zR~o1U*8|_Mhd_nXok1&M*`HGW1v!Uy zi06SXZq4^*Q8ISQN>3N6p4%vYMq1I9<0WM>)q4CEm0$a{RWUaYtIhjQ8eceji~SFx z0#uTB`xN0TG@q~hVPUT|dUAc!lgGW!3T+@|i*wygx;c3g=qa;ObOoP_T59(L! zWiW6J%xmx0@RVrceWvX}?v4QSTSCNryKU~(V0RXJR<@JzHj#Sn`M!flUy4T8T-FBR zi>CjP-*)CN9exLeV;Lp;g-#nbwuz;%3)7=`p_QL2Jz5lEjR7ZzyG*9ca!ByetSa4> zMVcLP{ECF}3e_IBd`+_OuFslXcWxH?G^tz{G9Qap*5WCc?=Ox?&f(?RORJ>ctrATa zF2}oNeSZS6jWC)Ummh|}OdeN1#mx>?Y1#m66phz}A(&rE8?SC+ttbgK^x;6pN_6%i zr{XeSc2}Vm|F~aU9MpGOG=|RfM5_+ z{}3&XI8|bBnS0%?DEms%d}G63j7uY-vuZonzyI0TW<;vi#HodllPHO?=!{aJ?k^AP z`Hf~>d8IA>3XwGTWu-|ix3POK&m_<7AS^`wE@z?RZ&|C9&YM&kg86Z~!EZ07P4U>% zZoBw#c>L#}UF>P^ zr==jA8ea-?WBv; znh%%tQ=_}2$_AiTW*(Y1AZCzl0R`w=duNIA49$r96X?^;f&7#8y`V$vQY003TM1C9 z**O(s-_&;?QG2B9QpyrxRjXi#EcgazlMZcWG zM+UE(g2OUh8qKvRjkV@`1ZIHdX5~sFIqdX2 z$qu7`pT1!&sZB4Aa|10t^0?Ot(Zk{HFK}+w1uN}*8t<=z3U4>z9+@Onm<9@gOJsY+)? zV}$1>f_Gx4uB^ZeA4pK-R_ty*4G0@Cb_j7PMbdus-p1Yz>Coa8RuAtNmZMH9lra^J zIi7e_9Y~P8v2AtHDpn7?*?Oc>6%v@9BVI%Weusy8!~S^uJ-p<1zcoW=u|aLRo#Q`4 z0IWH!YrQ%SN-Tj^y_RyS6=j@Q53 z>y$qsa+yAz^*{}@Ohw#Ty*3ORilPnQ%$N~XAQIF5K`ZY;SKgPYY!8|F=T{lESdJc2 zfa@-DU!f3BbjVWoP+L)HY|rdNg5hGjdmRD36A@aRpSGJJgzro(^;>SE4Naz;-FqN6 z$|5P{xqI#Ttobvdb-|rNaZ$l*&zrTJg0Sf4_Np~4OYJ{%#qG|hgc)}rm+BaBR}rez zlDA@%2bYsOR;z|q6{Af3XpmmIgoDNv)E&mx&U~%c>Jpdh8jc^ay81brp1*aLvWGE3&b_Ooq-)9G*5&{dTX6E1tgpg+)raA)^sIUR#MiyRC2G^M=Q~2t+Mc zFFBnMY$Ct@?6Kw~-<$9FCa=YDo6;N5mQZ&+{9mCm1Dv?<2!wm8cB!FV;B&N$>@sI~ z)Nbui_dU8B=i7?DZTFarN3h>;LdJ|=ZDy+f_{T=2%iZySja4CcI4M<=n#cL4=c`#~ z6cJ8bPhK~PkZQ4eG|4TFc~-*X%}8rb z4-7^RMO*TqKcS$mP610^|3zn+KKEzvflF%TNii0Oh-W!(;K8@I2kvV^EO-w`vSVPU z*%g;TJHg-wD+3eJt_9@{u#roYJ1)4zZ;2sDYd`UYKe-ThWxO8x>^xrT7li?}S(l6s zc;(s2;+z)vCM^$4hjlKOwMMTVQ=#-hUhLUIo4gu#M_hYfqzmf9$p;&|N2YLQS@S6^ zKAtQM+^Wz5AY!cXoCf$hAWsnW(CHUY!5kK|+Nt96Mp5-WJ|?u6zUK~GA+LQ;C;A4Q zpvkQ~9(Smdhdq5JKamB7L|mzN^DZXQBdfbvi~HZfwi^C@r{y(UVvm51CJBaXl8x6( z&n`KI+HHrOJ4eg_?)Swz5dNpvrgbvfZgYwC-v|`V+4v7onI&%rLOm?H+S&anB%=$uE$Zc5VI*m?(1(^9m6P^(!SeXc8)`Nh{o!v< zs#{_k2AMAmM`s`AE6_c`aqG%{+t~^Drj`Ug4(aFTPW2+jx*agL*T?k~=gkw*4K-?O z*)!*Q2v+#zCE_U9P2GOyoa>VA`4+PZQ->X8@Ba=>TbXLRNz~DAx3~&6=oAI*|BNu% zjOt)CoB4X6==rc)n{A{Ah00*~nQC}kNMb~7iT(QK@-yVC9YO7tYnkh@ZkG^pdct+b zGb!y^Qg07dkfguKNd?MwIp`~x$8L=NfmV0_C~P{8fCT^5aF@DSFEoFPGFlGSl!1|# z3TB-aquVZ>wFC>g?2I%$v_$pH#U<@wq?&`hYVMx3-2d`bPYeUN=Xb@3D~<&64P2&I zIUhmD;r*|y&L4s!8uMZsnF{8&agmpJ*bVr14XWu3=RHmT!G4+~MUMNnQ8kKgZ=T(L zT3#Bx-*x>h}*C@a*>;;Sz6AhLrE>#A`x<(3c^*Q1$z{2sRWM0 z>B%N59J9@Am0k?lI<^{u-j(_b!QLv|U%Z^Ls!4A=L#FQ!&CZd|MAr2Fs9u|i)bu8V zUnUvvuV(%IgiBk#y;_r4-D&aVpRcBkaL(keC* zL!sU)q~=z@f6A%jf)j$Sw{WAPsv24>UBxn#G;K*CPvWYHrsWRm3>5)+%Wo{M(VZXD zZMArCgw}IF9ODzx`jGy`lxOlk+b=+)-QT2nl`yoPav1D|Hsd*arP4(va)Z1an!--* zP(16CB}d;!F^_W6`S-^cT)5Huck?e=r6LR;fTd!8 znJqikR7$^#I@B~d3p1=(jpY<6ndvTOtXI4{AK`KRgyi@nUAlVadK;3c2X)i;Jo{>*y07D%QYH0bs)m& zrBZ;I#`Ul-Vha^+kI{1h+lcib0MqGt@3wI~u6==EXhDI=?#YsF-6TBSZH1|Iry6&a zIR;gTceAsjyo6Z#)mHtY+voobB0D1JoL^?}%(PuP&Ul#jyVWa@XTRB~KLbA@8TL3g z%<*$CK40~ z*(!BTlDLuqPO$~UN|G5@i(pY~z9xpNQFKBA;LcfYuhtjG!4oo>TlWk=e_p76=YAn| zw2p6;=|f2Z#MS*#e7rKbr3fuyDGpM$P@6P&{bv$Tb?)>0L@2ZRZN!cwZ`qAKM5RXv zmhh^hDF?UlZ~Lan!lx)*D@ePF*hM~Q$;0Ms+?`2^zshzSpjb`it7V|owV0=TCqb>o z`FQ)vEi0Q>|bTvYKvL3+-F3hSf$B(_zae5=O z>9R{qZ1~Cg%4s$vC3r7HHT`ydw?7=VotEyu&gksim!ngYL%60D$8$gh!_foauTyaM zAFQ`~mD=~MVxY}!cG?4DRq~#vwsYG%6SWOH5__-x<#liG-``76tH_&=PxO0!zwi)# zz%Wt*7Ird2!>97YNh6!d%};BJFFcyh`{1>~DAzi{u|{}2{LY$D{&=(ZZJ7>*m(2|i zJzJ=RVoUQRZ|8bvbHTZ_DnlK4AKKAtU2j!sLWYzBZpr^E1GF{?SKqmER=NJT?&*$5 zq@?d)w87NGN69~ii@j}hLg&wG#*Aobwa_>cd`UyW+&QFTvmtbX!HA>%w-?{ibh|2S z8QyCND#5DDtUrGUwfmninENUY)#{X#^qOQ;DCEI24>QLuDFtw?X2!Nl z!#`M#PsI0ci`OELm69)MNf zZ!ME0yDu%|%RPntgplFy%3>z?iu6An%ofEj^xD>tTk}%sl6?2PZMbzpob(I#-O>8M znLL(4TX&n0|MSK?kr@7mxSI0;(YQ83fR)@r$DQdor-Y8myua^#AMn#_*W?ez99o$x zp^-5lq^GubyF%~g%(bmPo{!nT+K|zi%tcuS%A(Y~s+3D=k5>jmTvJq^BjD%iWh(;b zHj&Xe-{JZ@1|h6J_oc8W`0Yn6&mEF=!|;zMSU}n$!|i}J`Ooxh3$7`)aUm}Q!U=ID zwGYt_U~-#p=SIke4J0as4xM5tW@Yo5Ay+^^&z8tH&IRXVt3O)6j8K1dU!dF0r=*Hr zdcWXFW(VEbNF0G!jNMj$qyE2mE4$!9>&cygBht)QF!eOnRo$D+2FrId`WZ6cDhF6P zwxV@XB-xpVm)0vCbelCF84<>TN7fP9hbMIxh8aht4~kbPq0jxySeunXiAilMUC8*} zuOahN%@c&9&F?Mz-WH$PCNxSntiDO#QgH23B({S{7y!0Z!U&f+vH_j{i_ai z&cn79&eu^{zl4|XxKKwBJrn1f|1jH2ucc#Mau6 zuyCXV%h&rjkkS5RYP&Px4m)jbA?hwtkUI(~wH4Wx8BQ2*A`#-=6 zC&hyr3!c|I8@D?cIi>BFhX$z)han{L#_l_j>NL9AnghyEpp4bOd!ro$zJ%es>ee_Z zm)`+UBgy;0Q!~c5F6EV?-{@g$lw?lBH1)_A{&Z19-NW+pgM--&Yqu z1uTJfYw9jU?OUSm{+ZZ-s$n0`o9jj%&YbOzV@~azKN1ZmsZReSdtYbalSgB9Jp;HK z*}gNsh9huG58`w3Y%gk7&|cDSseR+;4$zHe)TWwjlw3z$ZW}LN?|mEQ`%aj4Jot2Q z+8A8TMcw1W@K@?AX>&s^PUigX3dGjO~2b>4M?%Z$u$SJ41vb}xfy8iSV!HxkTxVQ3mue*@G@a% zw}T*K-zA>p`-tjw0G7D80L;l_YI(lsM4rZoPpGWJg{N9j!HL3#qW+s^ zx9ha9l}F%j!v|Ua3TkhGj%sVxUs<=;8TJgD4yxIIzd4uHuz!A6tjV`cz9Zr`HppA8 zVHmpyt;wTEvTaoogM$E2A(@tCqz|@wLTfHs=YLt{n5vFFY~1p1btVuB?6V!c9)mn0 zdc>ZmurAuIAOJrb+j0TV7c#f!9d3b13=0n7pf}y+%i((0>fPf}w>>`amN%UrfBKHS zJxpgTt^!cx|OmX;b{=krT3!z$=so${2z zWgiPaxO-1;N&L@Y1jqTIr$pVDWJGW8<~Y|kuzqgNC^yA0JQy~2RQeA;XzqVdJI1iV zVHx-T`#y`ZpRn}~h3B8Gb?yKG`h_a@7_E`b>n?;Y_L%y@d7N_>Etsx5rEZj-?I(cWLfnV!lz%bIzDKWiOS`3hL zVC9bV#$mpA^vAxu$_&zzWcyg{`)(oQo#W`2Czz{PJ|6Wx%J7Mzdz6gglwNpn!d`RW zJK=lcB7EV5T*$(&?e^KiBZTh#Xuac!f^d>mn47(%O_-_AdEYs~44V{5I#qcl_E+^>{2Rm$9%35~_=Y1F-i9*|zGBJS zLf)m{6o#c5MFiR?OJ;MV##)FcHbwanAs|9?KOPW`5^T*7l+ojzs4wx!$muPWBwS+H(qKmb zQF}Kg7^4Typ3+O)UmpqN=B6|nw|>3NA)X;7C0PES#Mo4)mo*`1v(Ao*!hH!j;2Y5J zaQ)ns5SdCaer#aeadr2OG1px1(^nQHTAEM2EOUy$FRtyLN_>^2hvq*1Ffh@o-k7kM zvlN8e#sr+6k>YN)nTLH8BmsUyd>ftZ#ciCgSwu;*XmgoK8*VS)z)0tVm15NmkJOO) z?(S|4k}(5aI%$0wjWxr-)4qeM&YZ%MciOt&h!t752$9dkJ@;+N2#O?3=6tSVVKL|p zX2K@9OryP=W)kDm5;PrPj^hrP1^FU-B%=z;kEag#b`&NruUwwI|5=y*2;@^4srvxG z5S64k`ZQt@t@9(041U#U?&N!Z;kFA;BhBjB=;XiR(W*u+qI@k~T^N2<9q?i;oBXUy zCd(J!AOEITW4!>cExBB7V`2G*ol?E`RJldbi~>O8Zhr#m59`>W;}Kz{O7h|x%AjEQ z1Jw-KTw;Iy&Z2;2?dVR%)?v~%W`x}@c50(K8dW_U>&7NRs&?1TQCa6Rw%)X~+*E@| zqZbphZeBARHKtFHKAG%}Sv?HDLRJ5=aTFfUDvZ?Vc$<(}co0uyHf=|~cS-UG#Yk84W99b{v_JRGea$R!io&n)5GCgcN z@c!mkF)iKt>4VWyCj|2(t9_kI;d9Q}Hzd8Qzg)m4JQ|mlO4QI^4-9e6r1CR&Z6L*p z$cr$;nI#>rY@Z)a_oE%>u4xgxpmr;@B(!>qu+%!>iqHu~fBq#i8*6X`CCUGncen1H z=m8`w)y*lnh*|+Fh+RMY-|A^pWrM!g&s39SNgMGr>fRo$cGGa_MuQf_UUaTbjD1Jg z5P6G!{ST@L_FuyT_umdftYAbk=4vNsMmEB=VA}9iHRm(E$ShW+2@9@MOEi0`_iXg( zKQJRi)S$y;n4KST>mxHSTyZpMYf#5u%DJY*tOaEUsv4AcLGpAecKgEh(*=Qa2!R?Y zL|gKsqTqU3VOuV7JV>jAc)Q%{zg8`pH5}S1{3`ESDq?F{eDqL!!ho010u=L@j(9x#C{Am+sob?XB*Mca(N6Llo0J@n;j-@uNG!hT!RZJ;CYb@7gk`9?H_l@1?E zYcFB@jH!9W(_O@$eIK>BJ^%jzq(EE0LK%E`2Wx@vVuh9)SLZoRYxDGqn0Uqx#8qDw z@vf!vQE!y-P1_j1av_E>uEtcExXJKNmfR?t#~XsL2mi3j|3$bnM*BwtUqEbjZbjuN zAC#{RtZ9^cV#B}2S<%|rpMSa@;$DW`VW-8PU3*ElUdeu0`}6Nlru%h)czb8a8*~q~ zTzS`FRHpwBAilpOw%ze7@E;uA^QZ+mNb_8B&bGmtG5@}txkup3*iQxIVrYBoU0c={ zBd-m6!Y1S2FFJRPuCp*}q)Rfj8eB7Kd>7O3hPX~kS-H!#{W%Ec<#KLFg*2$o<^6Iu7NBUdOKa#ku z3-f$R;LDanoy1mZoMXM^k<*)(A3Abj{n!)FnzIHXKCEcW&rUhsb+l9Vj@Y^JGGMJA zp~El(f4;%t%Dvk=owWhH|ZAd0u^Q3-fDibbjh5U-^y~>T)$A)#*b! z-?vM0@c*r%Hpn&ty|G>Y&I>tGN1b1DK2r5YZVj>JgZ0CL+5ASdEn>5_N55Ov-ts)I zoiBLfN^$B_+aCIz$8k>0P34`t(MDtZf#^MPlaTM4A#W4C&B$4tyK2u#QG9#&$HR{f z7JcyB%-&A7e>etnmTmbz{8vBDPfT}D<+j0lSB3v8d{^*8!CL}*$(|Yak-1PW@4T4v z*Tm*#`H$MB^wDTs7vzrKFS1rXA3Pusmk*Cu2hLt?&V_REC>JSCF>Z9<+$Hf|7(MH0 zf7XSw^J9T?eOYSWaqFMocAmPK~j5gui6QsMtm{hEXUMt9aG*lCI)<+eJOH*ry@=cl{U9~+KAg(?ICSBX zjhE8@ULE*_$<1@;Ts9s7XQj=fbW#554^#Z;7{&qPlD9r`y44pC^b(wR85qkW_-28J zk`M2F6tk0u@^rU+E#d;UKBq~I2T2kV&2h$j8N4nHNZPVA|V1c;4N%k0mVTgMB&frmH0_@_MPl3a|< z0o!Es@<6TG)E3h;8LQ1>nMl1@Rau$5Re5D2_jn%32UJu${Xp!)_Jaa()qf6KBV^lo zTy+fG{Ezi{5`a%kwH+(GfSsiumlt(@D@tcI92d@mVR~|cNbK^tTyH@AV z{+?ZP@>Sn)Xy4Y$*;aOr@Ts~fu2C0Cb8wRQkTR1T^Hg#DfV{9)|5TEIi$@=Kllt>BwmI}g3E9DZ7x^c(*96A|BQ>U3UY%LFdTF-Yv%)`#`BLD%v*r&c z62nNXo6nZZN4>GE-TFYv@V#NUHNciL`S+Gsi%~lyi0>mcF0z&v>4?`J(B5*2Q{9(O z*2xh%yffgeJ3`-p8E}D~mc4pxV*BOrN8X5s)_=;_cZ?5rI>hoUM<>QFUwXVf{9#+n zkq3|sgpa5UcYqe^m8Ce5%h=(%(U%+VOZzE7=5tdT$Kn(Fg*N5Nt2?%n@yDU>arDX* zpPp`gNP7JF@Q(ZT-G>wK_@ysC_RyaO*9Nx=o)Y9Cyyi=ad-+ly$oYV3r)~9LTm3ZN ztKwtkZ|$!X`k~#2AHLyyD@HqF_)PHR4A&S_-HUdm_P2pYm`9TGG9-_3Etex1zdrF_ z?$ni=Lv?*yZw?}w=I5tl_NnVBBHoLPxeRm~^=9j0;4f14MM8byA8H-vFOv8FHkHm0B(*SN;#d z-GfsC@$*>>Xq+!Go)G-qsyuA^!2P5hii^Ev$=fIQ^7PL_o}ErFUAE&Udh$_F{iWcc zfw?9B|Ji#Fc+0Em?t4g76lA0`Om7Ums5I%#fF_o_z7~d}7@FwE7z7{V>!WCzk)rWM zqsC}JS}-w*Pa+Z}mS_}_5PB1sPDdC~5l!a#e*gFU?%nr4=bU@ax#yOFyFQ=aU3;&+ z_TFo)-T(K($Vb{YP?;2z_2syUP??U7Wy;M*KU}|^6Y|W5#3<*baVgIPvK6JTv?cc} zu%E9DG+F75_mA>Cifzq&Pgy&jdbar@pzdG6PMJXe#yg(RwEnXHJ=6S}@`ng`QS?GPSR$$XA(C%SRaZ~bw?X`yeiVh;YPLL>1-GyPe!3;K4T^ zJOHd4GA-2CrjRo2l>cpnaBWrBznBoIFLy2o9^RFmu{rHpPg%PQ+J94CwwZKY9{S{v?{Yl=KsZ+`P32KRuG=tdM4fzM*Xsq33pRd>z3 zoYdFB8Za3@EVu`2=gi9D&VKmVTmqaA$2aPyrg6O+SgyYrZ+V%{{0YxEpjOSvPhitK zTf|kJPDtPOq@CHFC^ymB3E8e-I`|6kW3Be;qZFIXCoLDzb6$zX;Gu@xxcQ;sY2a_X z`$hV@Gu_Rh!Oy@?8!~n9tSkG9t;*t4(jOvm5}>{6Y;Z5vZuLrCvQ^%;EYDt|&+Ybc zipPu|rsdVZy`ULot(Rqyg_mWfm8VSZT=-{DkA?evbi>`l+~X$l!A$oR#inLl1#PuV zk|$r+S1z&sr=16kgX5p|9PYfZEOX6t@+7NtWY&?4;XrEm&j@2n&JWK=_E?)4HQ7ko z4Nre1Ph7$+Q(qqv8{3N9bJn!y?i6jf5paK-qGxCXJU|z*PG{lYMesNGX;bMXTwFLd z+8rBwm`x@!Msu;tOVt%{9>Z-nUN4uiKZk*f$Vw$rR_D=)+_v0gZR1aA`+Y6?zln0j za>Tz{u-&v>cSQMF;6jkH*n?=$ejO~!Ez>?95^ne_aO1dL>!?yn1NJDjnNP4D4H&FVp&L z-uAq7*tby6`pPX&I(olCwkvQx_z=$=kZX527wp6NCYjc^aQm|D^qYKSuE|v(WdD-3 z#+UH;Rp;@`Hci_`#(-qij{Z1j_5zO4qd)did<2~~RGr-Vlzqfl z7_(m%D*9wQ!kC&D+G&5L<(6xY^4MtF_)8hTq^;-ru&x(=KN3C+BfBha057f=6#0Wm?+A7QUjuW%rI>%*aI=t3EZs==+R45%;y+h-5<0FC>PYkoJDKk+~p3cxitj zuKaU7c)rNh({FurUG|f1r!oC?Ji8&+RLJz}!EQkR9|PLmivG4ykT&GPb@>XC?g9VS zWUe3{6UyCZ0j;}teH4_o*=cMHk1RZL_uVq>*eQDgm<}?B!zmh^*N(M&7aw%jSzagG zm(q`Mvk&*YZ;T>t#-W_kG*?mju@7N?%1oy$GPz@~+_d%!btULe}Cd9X3*W*;N8MT$>y?bQ$Gr6p#6+&0 zIj^)&SxMIOY|4I?_Dh|q^oA3GcKhIlKQ11=!X zh`(CM=56@0;g_;^TL66)l=5u+mYH@_m3yITMIL^85H}yTm%*D|R?E6>%&j)(cTo13 zhH_mec`o+VLGW}#&qFEjvE#wv=3zQqnfdbIBRkDYoZ~(h#IA5egLXEPB{r5NZ5`7; z2Z^QeEz{Z}ZUUB-WLr}D^NmX0JVd?F=i(5qAMvGrafm$g$#TgH!}5XT;7`k9pIjf4PdYsE=-Eid(X`~nz)PIi z9_YVzL@#!iHd=NjC}m_TJ8bVsa7Jy2UV<;y6D4V@b)1K$wZk!vTz%7W%j{EstW%P* zkZE=GWfS1V&ySyuleQ(!Br7WOrls)sShssXYxqysb1Bj1GM{nKcJ~F_*0=aw_GLr* zkOpnYxRib>^OC4fuE#lGYtRkZzU?Hg>91WI`ZR+|k0;OYX{-&Nm5RSzTz&#~_Ift~wepJaKZ^qp-`a$~k zQtY1DMPvH65AaM{-K3rm)zFzFKAB97$FD1pJHIl|ov&{KmV2(8NAX!hVM5Y7IWL`S zvqxw`dt67tv=n|5=|jMF;3tLL^1yno7wH#3U(82l-Z7NB23|{5(Lfo6v3ml^wz;)nHY!+dy|E@jHqm$cV1{mn;(*gw)aQ9mPSVnlLI z+rF_$%oAJX+LIWT9PwaW)w7P{;vL1j+qDnsXW5bAmb8m{C;SulvoCPjsp`JK_3-w>2FTR$bDPS1;vqH*~p&jt91w4nlrt z5V=UHn}frPAeZXuK=Z)JA@LCDRbU(N7Vx*AtQVW*%IiEbiYhWMjt5@W9t8gYBo8__ zHTxI(Q9_%9vZSpez6I*!fv10h4|IcnwcuQN99V8Ya@*8)bwi0ke6Z~KV0UmI*dKU! zD@(k!#k78u{+v(VzT%%ee#o~4##*vJ`?7y+%OybjOk3A->&13?>?K)|`jYKgo)1k6 z6hb~!jf3@UONvd(N@%Ck~Ny!u7fIGh^g93G>bo+jiW{n|3_xQCGEYTgZ2(YSNok;SAiFTa$cNG{#+orcZHmruGf%tMCNSfyz||5oyQ>`Iq4(y zoZG_l^IOB!k+h~;DXRNhUx(I?ZRt;bE%+^<|E@)2;GV4yLDrvn>l_c(0{#0mkW6Rq zlDl?=beUC(S{j;sj=HI$E_=?zsy?ZAyfTnW>*!*K>0@6oC_|;o=z@aV_-tl zCRZXAel_is+z_i>8J^A5x{;Z_u#vCp=D<@Yi_n9|i<7dFQdfR2m;o+BFPHJ?TCN?j zC5KvBKjresO}mk+FIVmZHHVG13J;3dtzOdVnb-b*1W-&PVp&Vd&%opd?PtX#zE2s`;y-U76K1JA4Fa# zwac<_k`9Bb9q8%tcRKJO#pqz`%a zs9%u&)3^ z{!Eu#ec^uJEDp9UrC;M9JmZ!F$Ey|Dk2YFYE||~5{so9-n!g-0H4fBKg_nPj!^ zIM+NMVoz+c+qoa{WW9-`Zep5v#$J7OK+3ozHpWTcGUwGztUc45C(b2F9q&R@^vsEX^I(de1rhK; zKMQ=3Gwy^gH|Tzb=d1L+J2vdq&qn*umK*FG>;fJC)q)$N2Z)V*19u??Iq-5=CGRHgI4%S`fP92lPC8`2_9ag``Pfi$b!=CeTxj1Jz(?z2zzfe0 zfENT0NH0-7-md}Lteth+V{;B{FLA4Y4{9%v{{-qbmUdcZyRnbt;K5{Cxd)Um7Q#!+ z{UC>!HYA4nmHZzxVCdxui`0K16pP9I9$jMd{OiwM%`|j+NZHa^>0{ z(ss*4NIiAF3w%U83ce3^2HIchl3kDNqfW}2$?JNq&GJ&?_-c!O#7^xqR@!cP*{*R= z*YcF9r~JtVH?2%6x#?#4QeIW!N7|70N?x!I1pfdsHnF{&3;O50EGc%D{X2)n&A>Gq zyGxFE(8r|9a{DUVG%akmQ@RgD_qi|8)yLt7fbGGt!-on<^>C}kdlu=xLjRN|I+fxC z{kVyK7lTW&?YM?*&d;Ne%?Iv7XN_R9u}h5IUzY>dk^902fggY@H_p)uPuy2g=KObl zh^z(2%XB$kOh?yw)9L~4ezpi)PPdo9?dxlWFZ%g1WZLODa2~Kf_2QE}c86=bYfl?2 zms>Anx$+Z%_UVs%mR#E|THfF?`?P;; z*S@=e{u?9LljpHxrJp6#m-JJz?o+_Fgmwh+@43iYQ8y33v|)VgUw^~Xw_KSv=;KN- z8=MM03$#}s;*)vzBio8BJiby?k!@S1+_5al{-pFjkQPx%J6|&&$WXUS;T9c#GyQ5{eIH_8rhHt!3V5l~CNG(8CbUkZuRF!5m=Qwx_M8 zt!vtPa_cD%8Nbp#^IqV6;I0LJu<*mjLLhmVE7!jgwvl|&h^l_|+x|<6jdIJi>29z9 zOb50Vdrg-Q-qK!m{EgtZfw6l6D7zLc0zN3CPqHo9Psp_Gh06IEd+kTN^v%n#q)b@9 z>^Cvc-^h)%>Ap6S?uUOkKH@HY2lN=X0mz`0YfKoI};V zp^x{sseB7%i^0M+Iulj&I2|ts?m3eC@}clWRc_j}QwGA-$hBt1Q0xHi1lFGqjCsbW zjCaOBF1-tA%R4*lPdgoV=ZIrmt{=zUb{_*Pz&5~g@!El@P?c{^-aCYQ?YSV7x#WDy zBTQL*l-o!2%uD(wDR(_;mv*R|w0YC&XnV*xm2@Xu|JAdN`0ly83i!BjKHE>7+&lHj z%6o#Hfggmw53<+jw{_*EQSmczNSxJ)U-HC;WZ$Tp_;4<)a~>{i^zQuAX8j2_W=U&r z-B(1_80n8=AA_%HmN4K86FA3uSM_A2_`0~@xOWN~-XBtBjJ)j|%Kl9z{&o2;9!o2gt< zmd(};)CW+?NVX*Hvyk?ye}8&0>2EY-IS}pJP1^Q?*b^I-+fX>kY9rT1Nj=NFbbSdd z1ap9w1i!o=45SAKSoH|{BTQaXoN6EQ>w18~svl476RukCdlf<-!Dw~L^=9D5q}ZmeWui=59=U0KvOHv7q@Mlo@guHBtu4QU(xbp4;MldR z{{!0Ii|)2Z?*jOlUG_z_F(cR43~X9R4_|;|YxQU3eq?jpI_cOr8fRl{EZ2fnzz449 zqK`7mEpuF*m!XV<Qad7o`h<>&P{xZMy^QD?cjei}nfq5%DeS zNp2hZqY*+KeUmIV2G0G`NYm=bt#6%Psg?iCv1%;eLc_;4x_9lRAN$sB_r6`hmf&B3 z<85rTT^qG8w!4RDt9cu8zN_DkQn#JXSe3aSE(fkRN!#^VKRo~RO+QWRYdMZ&D{|c9 zujQW0p}}A_1h!w7MRy{(bHuR+)qnC5pR)$!`Y$XqF2+RCAN{gSk~>#QU)3>AlJcZ0 z!3OZd*c^MaCkraULWN`W(NVPnJoufbmS+l%;G#i;K2T(NF|3_Cu1X z)H5~$Ut!&@z&jW7MAMBJ@Dp&wz`iok<_z|~iquNrrauySuy}yh;if1oFQH6b4n*BIu24cFGB!x0VI9a%G;y7qt8P#CRV(INbN zTO(b@Q2R<>wAJ=)FKs4mJwGV8PQM1!v%i#=+%omkR(RSpU&@r*mKcd%N7X%1@`Kdl z4Q1QXcKtEFa_5H7zcOvPez;zq09S$UfYO)P7M?PFD*cSzr7V8P9dG;UhF*eyhfrZ5 z@bR*=F`mvr5nuH~=v#cUucYn2G@eRz45EGztk!HjbG7CK5?h{uIM1Nmo#de z(qzuo8@mmG>t;^9U=rjXzy{BXZvY?L?q?Y{l1<66EDM|~#@o2=1nvaxjryxBWhFQE z&hN~3l6|Muv?zQ8Fo!n!9(V!imxArUy`b)kb3{91tG)^SD1Avfy6WhUbN6g85*ffx z4QwSNsdij`KboHTC6)fU{yYm_3}yiL!_tq8qhph_J_*-q_5<4yQush_AYYfIY&^LB z-c3iI>+c2nr~Ud9zvLM=(~-wl^QIk3=T7`Bx$P!zdNR@u7_}S7d~|Nd-^8Tk`jK%@ zyj-7~fb5+mkN?U}uI&kkCN;SR+`~PmE@)V)KhBHH1AQ0H{d(H9;QeeXU_E1C{L1*4 zx2-AKa3e4o-k2M1^fo}tZ@}g`;8NE0aTB}>2ZMt<~oQ<+&HN#uai3V7rW}^$-e?$e9+7QUR2H)GOzj*^rw*7M_`+- zDgDux%pLo43~vRJdF!a3y5ag`I({XuAHw+9N9IGuCTsaUg^j3s%YJB>#pH;^YHmC2;H~8@b=k#)m^OY)i0o1YerjpK)*ugpWF7vn_C}GA@pZlyNYv z{yTf<)4C&(zAeJHc_@As{@3uAfmy&Yd4Ho{^>PksuWQ-)<@|I`nvPr_luOQ`%r*0- z-)*8nmWRsppCNS4`(S%H&Dh6PeTad6ETFylwD(2$2}PS5BQx&%g4w{h|0~dj-)!XN z*~j9WGAVvOpLEubIzh%%E+qjTq9)|)o!m-A46%6)-sMcSNkc8neG>7ew_7-avD zn-_^0$w@;;V>)xXT7%~{tkNg_(e^S1$}(=oz`2naxK>i8USdFUFgEIMNc1{PcMsnJ zoL4hk|2&`N@!Pa;-Df@QKsswmy~K-TRnPbums5&0XxS8PSP^hz|nV zTb79?AII}Rs|Wl<*|&<0SAupQJ#wka#mNhgj~qA9W`}SNp&U-hd${`B^=`@j`7Q1` zF9Daqmy$1Sa+CM4i!Jt>P2RrKzvXTMZt#+ux(5OCq$2A?zZw5i%HIbrY@+AEVZV}T z4{RS%UjZJxUexqIHj=FVTvXlIr(HRKm1)mfa4nD`tJ`K9X{Ri+zWqg}jud^%v2z^{ z+G+Da`ZgxkNu1Qb7t8}*q#S#7Z96))bpcu1BU#CvFV?k8l>M5v-0_ebyXdCPa2r%7 z_K~dU1p0DqJ9m$5m}39xT1TW`4|vng-PoS-Qhpr>#ZKEvy0o{HnYO-dX|HL?zRkx5 z`)oJ&4?=Z6bY=tFJh|Zy$%>rsN$aCy;050J=~MdpYD4evfvzbTAng+Rq%E!&kyykh z^ZF8>NDjs_2E^x|Ti6AiNK-qZ?`6&3gtC^>WYx;cDL;VJR-p8^Ds24F_unDyrSDDD z&wR7kSnFSWjla%Q)AHD^pLQMtvQ8{lmT_}$`M{7Gx%Tu%s=gQ%*U3`qol1UY`zlqb z{t}mU^T}Nae?u32cF_E&R1U+Q{b^waaK3d)`jqi8p2qxX;JkAl{20sy?Cpd9i51Ce zj2sWi@%U+#8oM9&(Dbh0D}Xsz?Q`0DT9Yx@8Tsu%Kitpt#h7Ss_JGW(%tyFuwmF@a3#mD&IUSvA?a@|GWI?jcOq=V?(abE!513n7eQ}xra${3QYeAHfji{Hj- z8xa3WZe7PqKPBs)KD^0FK9N7Tn^bFhCPpj+{%>tW&_-=XP zmwM*aHMScHu?JLp_;wh)lyS=*R@!eIT$k=muIZe?yODNnTV@Q5n=z1=bW5R{xW|>1Khp-!^ z@F2-WD+h}QvcCa3zsCdiM(QpCi-B|uUHuk(dvF2JF6{_N4sQ0QW0#w~q>Ub)Tqp() z4s|Tgp;)HX7heA4Y0q@&KiO&j2OJ1IbiKf>23vzy0n4Pc;bCk)#w#%+Ssg_5HE5f% z(k|q{ejc{Xc9qqHcv{M}qyCcBDM%hV2D%A%EV;cLsM6CcGwg-S~K-zO`|7Ivl zZlFK=w!U_n7WV19F|Dm~?TjzxCCk#jGW&4;g9<@zokym#4dsIp>k{ z>g~0<`%r!)a@X^*wK7D5r0+YTI|s={@V^)=8SqIT^h=xdO_(mnN~wq_;?Wo{a8|8m2}Za3t3or>>2 zqS7xx#zVdetO3r6uV<>hYXAU107*naR07wh?F-kdaK1WzzegL+yDxMx9;kOjjrCOh z_tcB2p&iFH>BqV0`2IHV9B|FJ4)i7ShGa$cIi>BMfAJ~nNdBp+#y~rsvp!4$ZLy9q zFrB{6Zp5RP^HhKNs8Fq;Ps2Y;yVCwZ|2F~pXJ5j#BE@EX(H_^7W#;u?n@b(#!nKt) zNLDgqH&OH!%-osIzYA6a&t_xdTz7AB-D|g8ABAzyXJuOgV-(-QaM%SpGBM95emf^-Rh#@CfSVKY`sjm*?Qq{!*yfy;E?Ask&V@bCM=UY zoV-;1<&a2mSLEi-7!Ll`!YXRd0LTXq!890q+_>G;JqU9-P)GSw;8RWP@j%GIAQ$Qf zk;(O69zRJ=`#W$L@ba++X!k7ao=qBFec`qbV*T~inHS3f%sGG;4 z^3u+%XaXE?>7Xst)*Wh=-myo}{!+wuNmv*ZE3GT<>uH&o^{k#WU1H72W zSJTcv{dJw0)?e%Kp{M$veA1Rf)i=_{9f1$~a{SW4%jowIGTS!Fjg9lHBAbWlX=vf#64v^|md>I?Z(l(pLScm2t^t~50Y%$gy_0YZ-jk(}T?0Z8I zBRAXEAfE$Pf?VYNP~b-C#_GoDp(FPqltYDNbr5~JXir(MbR!iPfyH1JSOd;2+SXP# zbD>>c5IhiF_#UE?WfvE9l*K30xfoeLhp60owo}SHG(sL0Tu!DP4YmchgAX_QSxs8_ zn-MN;J_f3IX3(gAAy&GRu^fCDl#@n z%XcNl+re2!)t?S4E2$pK%n5nM!L+u(eh0i=WI{{Z+*;K6*xkSe*+ zQE9s|P8_vQyOe2n;;)UdlVr6XtfQY&Vy&I$3|FwXHqV1#&9$|L-E z6Kye{s^31k*6XCrMk+Id!$TKI^k*w#~#8>C~WTIU# zW>?^Olet{lmw8dj%JDTO`YaLyeIJ}Oq}@N284Gp(*YIK_laHL^-iLMo&g*(?>T$^& zcP<3_>KxH`(`8JIMdk|0O7EQEDvGCQ1B`&ILHCvCabZzaCph^;^74-o2MJ=Ka7EY_tEYQV4r8z+K*in z`CFKEUVwzgUQ^RW)Ra5`JREYV&=1q)WuiPt)fayaUJGV|2Z0B7NV{gEHVc9HeuuV{ z^^LW84>ax5uh?eZxLc+y_9^$0lY^dQmHr;wi{y(yE?6WxqTA4#2YmFjqVfs%@n zD)VCbffjcD9&UKin+|RPqosG!-p({)pMOyFS^DJsu-y2@2h$}PTW#0h%%{kFaGzVW zO|~UDUI$P*2e>yZZBkF0eRMm{XEZ5C+>~xb>Rfam*c|w{S`H-JijVOvTt6JA_@j@G zZ_1soK3G3BBqGN$GRB$CPtXMSYEb^5nzy({$FL z`HYog&e~e{;UN){?&y`&C+^i>Km7&#b)fXkF*ypE<9iRNlm3*ljG;39@f>hY32k>h zT?I8YfML%bOav##SJt&)v{IB4rkT1v3eIowGM}0{AEsLKdt9{e` zN0N6l9#y3={PAl1+l%(M1Z52BU6$jm|DJ*Rn=yARjY0kV$ex-#$#G|Wmf=A%IcW)I zx!-w~w2Dm`mw1slWIpJ7;^O$bj*W}4GZ5kz;JghaE|@w+BSav3+X!k?#m~eDT#r-p z!R4&;@}e`|zFxzI!sfot&3&?wm&Umu7b_m_>)deN2;bghBXpysXx!*1din-f02YtX z>kqrMEr*7OftLl5N2MEwC=ZP|?%{bc@XybU-IKrz)_ZFGuR^vOYz;m`Tu-Z&BkqWD zdDA{^@<5Ay+7yti->qGa*_CvtVr98 zy=Af2ykqb^;AQVf_yV8~AHv3rG8eQdaW2O`9a|n~lfJ4aDL4NFVC__YUi-Pi?WM?k zpg9f?fj=qA$aYO9(cbRV(hkz~@DBb}PGYJ;Y_+ra;e7FtqV2YohLk(EKRqNO*P0x! zLn&SeHU-W0Tr9ejDtE} z5dj5`j2Fd~P5R@7)VK)KUQC5~d2E-*Ph;=_ z+WGL12ub(!M%vhuYF@JImEjI6KZlJlXJ~EC7f?^=VhJrJ>wgm*vOT| z_l&##E0>3i#YeHfe)goi}!efZP1GurrGF)n|@^e$(;{7_ z9xUy^t}+JtsQ($?(r?5S>2Kz$0>_)VnD8i?v~&!y*#qmg10%)8xadgsG5u6f&WFqe z_if|iIx&9A`FOcO!~|2PsKW?k&3C9irS?pUz&BXX_e~Oq{Huk>z?B1g%_Om^`qvRQ zT7flQINpwJyTIKHPniUp;kz)!3p~8~XXciHdVdk3T?5^*ciK%#ddk{RniB589*EVq{nf+gSz_J zj!JvAOM8C~Vr%Tv*3uu#)pLBkgwjs+F@}p#^=FFDhhGn7gLgCjZ|n0MpxKIIzn4nw z(MD|xPg*}>f4G-dKPc$ibg(7Z9{gd$*4M!IBEKEbPv-QfE*r0>Jui)$fD=1tOP{n~ zI|F@;pOI;szXksZaP57%gSJttE?xV=y{vBr?gDjsBR21i(BJ4D-(kD9kqe!VDCdHg zH@WZvcPMx{kQ^I*(GOAjWm@0X0_XC!z&X|py#*h3r-E@mVFVw(N%=DLw6{+2Nx6On z>YCOs(>`oWCtsHNF+yw(&cQBNPjpOUT#U!DEquC>vIoHxE&4J3?uScj^-Dh~9(;(z zUoYqSXg?$=tiQ_Hz%0>xQ__i z6Q;{^$h`ZC>(99US%+~%wQsZ^E$s-5+i6Yu*Y1_TJt0*3`rimk|KhX$yXRXbkDqHv zpVOot#1le}_aXG`SZiCSlo&YH&gJ;2|N5J;)o+nK^-u8qqm#&gOlwKZjq3l`Ker}*5SXH8UIg4%rs!E5fgj;?RFk?`d~q|DIHCF2U23&$F&*Lmo#GJ8rl*# z547J{`w>L`cq47z^n>6|uml+Ek8~L4Jko^-ujxibB~u!t$ywq(o?MPmW5kCTcy=sI2r^lcyDx;>#N zCp#j!Z$!y6-o3&-+Wo8~mAsV3&-kY-KFgyc7wSb8y~M$F@u@bk$b4h0s}Fz97wql$ zE)w62kAB6saQ$>03D=!)Kluu?x_#OvVw)FB zZF92|UO>MMeh170PlMC@FyHQIwC5v#Br0w8aw4?DhmiK>VokET(C-H~K3@jzZGm=cuSh!FxStFhpUfA7;Tky@Ti%Zi zjxqaP^{+9^M?Mn09NqmvhFii`>|GzS!55@HaHkiS88N@FL(I zFh$Su2>1Y806INH$0}UkWOMOxywzBB&_lbg!JY%C$01ogLMM6?d>!`i5UGA+UBBSn zfZTEPf;blBVc_BOGaAoh*aOJ47kZ&>n}Vyrt3fBU0wpgnTY^v1{^>m)GCAn^NLKw> zs~1QghhFNuSbC}Sl6f0A3K%Q%Z|$)^st%(k$mxrh?@rfJY_=ioHimA>-^C_ltz6r^ z+_^5iz+FJbomvj$|9oF^M_0?kDh7U>k4| z`8U^WM_iG*hme{H+Qof9d-zZ1KfbS^h`BHA$vdGJH)`B|H%jwIx zX>5#x!7}Ni})75A}@Jj z6Itpg7tTq!>yZom;QaXgfud@?{$;}^Y^(mi9-E`r?6GMq9;R#s$owGLGiA>!=WrU+ zkNBW(rb}7M!qrK6((=?*FX??r-wl+#8=pM49%se?RHfpj&_A8&xZMDgAK2 zvdcj_9@+fC-1sF9qTl`L&b=spw(DJAwr|+l?%q@Pxoq=xGP{Cy^-KM+PQM<1w5Qcv z?|1*kW&wRJq~TA%-&var{qAox?d?S6oxym;#`9$jV2(}EGb{q0#Z&YwkH9zC>^$VX zfJ`*85l@>BCc{B=Br!P*TfAKGVPT`)COAgN(EouAdzxJgJjDDkHm6_(1mp zXJ4I?ZEBNo3op}_n-5RfqsUeRefkBM4kYc>AAQj$9^GyKG@W-?lJ6V#^Q)=lAhXmQ zP-$72qE>FfGDn$OS-D4{sk!$;9Aswh9B2;QTB*4A%mnvdIdP&QZX6)^`g@P}{rCBc z<9Hsf`?}BLJkO6|CrYo0Rf&^c6X|rNS_EfIt$>;sF1dC;cT{Myd@L5%hYPjCV`&nS z)j`!a^bg1Jz`0sz*=S6~tW>uXJka-~E^`$R<|V-P7mu5WiDg)o=^I# zMw9Z2bZQs9<+{>K#T1G@r-KZ}&K=g8tty86fqEknlN1N8%v>xD=%^-ywcee24m zu$3S!L&|WiI;=OHk02MVZ*KzY!L4U^=WaV5{Ojb$-K}T78Pn)>4|q1YoX@>EC2d{3 zza7TjUOizy{WaiGtom6oS@8PYngk%zIL6QC;ECkyijXE+W8f$6b=I>Kk0sDbRnHNK>o{)a%7cP9sm^3_W(RX6Cs51R-=*K z6ubtIvC8XQ(gnnYcMRZ;D7Tur75}H+hMc>rY9sphKpH+JHsRYAgFLl9<9)&^)Ltsy z?7vjSQ^tyaEHOS)9yF=B-=_kNsMo|!T@6p>m^h&v=yfMQ-QYuMQ5LpOVM8AiK6up} zU{`XqfTw*=w>UF&`&>v+UV&6ym%agC{Dif8v?x_l`~D8oyD#&kTTJ^ zfaly>6Nddn>#jeG8p@a=FjEwAAo>yhu1fQ$>c4IR=tKRYv)o#U3TSpP1W*9@PVI0& z)@DB4h$>1uvP!EnTg#?947KDrgMLtm{4UdUS%?t8Q?%$5=dm^n8!_bEu=XpdXrq+M zpQR>3AP*Psg1cYj3lS=*X?9xX%TMOWPUd()p5E2#pB019K?xR*oXxL^-J{ti7ULc( z{#d)KC+i|f;^&A6*=yl5IGDpbRF>|-Yd{A1=p}e_C^LG~I@@8=wOKA=H>9OJdxoyL zBl)ceanumu`Q@r-l8XbBU1F;g5js=xc5m?uwbc5no3~OYp8`rL<+iYpru_j{vVYrv^xX06BtKF(D95v?@jXcs+?Zq#mqEt^fv!hkl?3fLhpG?k&{As)5r_m5o z5FlG;X3>C;KA#pStRc=g&W@Y8{iD~G`PacfP3bB z9Pl2Qa#-DBj67T%HpIWN@Y^)a=MFH?xMHm3XhjmQJzHt?(^y(QW$0ojT>f1tJQo^t ztnx2X1ytd0oG~LRYdfqIJ!()no(Wi}A{|d-{dp&Tg`gz_w(;uyIm${f&yoVcT73klTDdUN63t z@;nzKBiQ@`Cpx_IuR`Iq;kbKwL)lQk;=GbGM0U?SAPq&C+KQf$9bQqzmq~pU?&ZvG z>?E=7qx|#PdnFs+B~$OzfJDZM_KiBxITq(vsh@2}-)nFB_{x=?$Lr%afFEAkl@SX; znL=A)q7v-d4l*(2wqCkjODXH^MUsr2!pq#1CyPW?8{#yGZF0f3X-Nm z()ox^>ZdB7q+(__710XzTV$a_1mwWhagta<&UFUm;$$`&LMnJ~gZyYY8n!Q>aD#}0 zg;l4dh|)UfOIavvOC3GI!~E^=CwiW*9q2bcX_eM49iST^NyU2|N4@6cRnJYk z?C5wai+~co7cAAmN<-vlcdAb$T5u96#N-cJ_7BZNBQ-E)@46l^yPlm^gebRT#P$_u z+8tiX0`7~IMa4e4QZC+evg-KboAC#nnIm^S?#mubVx0ce!pzV@VuWM_A|upo`{nvI z%-fb|@XTv_apI%6%6nj%zNiOU)#!AIQrLVp8oUHv4s9(^XIV|G3pG-Ht~w%$8H(!% zW2`lPQ;=zuuWdRshQhagS^LXXr?j`!p6uL~IgVX@j7N;>QW&I6$NHI#E83fk{a<)t zl$!W(JnP!+#l2SXM@RJq&mw-jyZ3qQP-2^V`xv;+tL>5Io=(yz5(?a-7b#;ih*5S| zPpn3y@jej4JEevZk2e{e(laJ%@@ufgf`r<~D7}a3Tm@)V*huf2a)BpIP2E^m@E3Z& zh~$CB#I_{gR_{tcX{`_I@trf}Ir8A1rP!Ul3_gIbd|J(p-%n_Em~yZE_H{48MphFA z^_0rc?;xcWBpT`UuvA;IAxZf{AF+j#>~HVG@YCF#i~ItU;RNzSs2G@5e5Y5O!h|OD z-#DaHn1WxQ`Nm2czw<641NR1zrztI=zW}>wDiYnbDk;$~Hg73JtAVc4L~u}2Zh#L( zRy@IKasiii4bR)6VcR%O=|2zI-klgelunbbjm}!j5Y#Wz{#hY^(dsm|Q;SMGF0;QC zazMgK(x$lYGf-COR?}*>%`)Mn$Iv^Fc!zd%D{RHp1mD3|Rl?4jpQv_$&9xq;bzcOd zRiN~?yXCi7Z_I6~v%xxiH+V`_`cwGOqd+NUUnIh;$mRdj9fnSuGNbsCxo<2-J zxA+*zRyt+~A9wPPn4|EYYR!S|Bj)F~83%Wy8r|=}mze2yYe8)@!?Ui295sSOYvo2_HfRoa&O9L5${n%agWN<6<`BG*7LUXBYzyqt2}y{9}s< z-y6i@|2BCSpVbc}+qpgjy`#Lxc>M=kO?GbQi}b4YBlMtI2 z*Bdpi5u~B?H2%i)X>9uAwr_tqazOu?WnhD&vIf;!*rx6}*zX1VLz7q(Zs6dLoY^6R zp+~!t=3bHxy-d-_a=WV8&o8JSk%;fSthDWth6)X6!xi6czq=G@OK5PF?_k0#TVLVp zwt#|h_O?n2sv9Zpzw%NF+z2}1o&d;k_FV%%cx@`{poA(@>O!kdHb{!gF#DAF89q`6 zk)-=dqkkz6Qww}#ogMv!ybY(AkG6fU{Ec>YkRi3f^|p5;9P+x7hSl~h;Qrp{yEPRL zr=t@RU|Ge{sM0Kthxc<7Krx)B*V0x+1LT97S?12k1`}JnT4h_uTl51FR%Y_*XukFD zCU(BuzQy`5my6w7kR$%>Tux%PQEU}<_Dez6xYb=Yr+38>4}MK5E)c6bPQ{MyIcp=X zorn+UJ2VGwMhDjGL>G|~zTT@#K&Ok(P-I@#ll$uco7}N9uh@5qfb)Z4=|w4=J)!aP zO`Gyrsko@xi7O*(GE4x*4~Cw4`b34T(EMfmdDC&h+W-6<$fsAf7ng^47Uf*URQa24 z*IwSIJYIvA&P%Lggg&|U=wWU$`wfNr=|Mk88X<+8U`e%#lLzX0r;q-A^x~i3uP`EH z+cu}v^>OsSoD-s%!Dc3;a;KVEYx;Et-!L%?Z~OBcH`yx~b3DH-u_IiU4)7FW;nu+s zW>#@*xD*Y!ub3>s87Z3nL!E4Y+5wmA3F|>d8PHTWjd%D<^ZSM?2ou0reWZ;lo+bKL zPUNU&Ko=>ql#Nn8Kx0kCIZqv?Qo;vPBI)ds{Js}Rg3r!k_TZLl+LS8j;?nsIr6WUa z_dDx9?7iy0fZXbfmAB`76hY=p5{zJ`*-tc0SH&cN1dGWw8PF+dNlu$D-22-dHEwuG>XuKJoD|fKj8`*;!7E0pX-Uc7d zKE2a8zS>gj8JQd`Snn4^90G{)GEC8~%5l{c&@}(d4tV-!k8ve<<^|K9-PNkw&m9Rf zJJNeIAUALF%qZPwADlznH>$f&?T|wh%@YUXw{&yYt^@eSp`i2Qy+yKPH_-=rsb|?} z@URCknI3OD_399nv9Is5YY0ZXInrRexNwp**5ibu5+Al|#IFYw8ogOFehoFs+ze1~ z$ioyvx)}F@U=o)@JD_TZ%Z58_?up2=LDwn&B!$RBE`K$-JFWO11XL4xfUHP3ZgiB2 z^uIu-1lf+f9X`x#{CI_2zqWDRemeAGl;N1AEE)G?oX-{T>w~w{$zR}y2|zt(rc?h? zvV{kfe?wIO;Xas%z?4FgWJaF?xRNL(1F8e*Yj2C&Th9k-(Q9aKn!O(=$}(nPNi)k+ zJ~~}$^6NkR_)bkB!p+$v)PFjdt|ZAL^-Vcth;GBFcKYee11>!P-bLah9#&mg9jTfc zsO;m+;I3o21vRnfgs2Au49q9RJNVTu{4qb?%H3O%ao`iBy7e8#0du4PT7<1z6Kycp zY@JDT^!L5Nx!cnKI?F0j#C$YxCpJE8^_G)$9-7%KqZi7e#Cv2@Adp=g?}^Z!tW%OE z{`$r79Z=*uvve9#*47FykuqT0JhvAJ0*{7o&c##-gO6NEa9~YsY$(U;_4qU6No~x^ ztWB1y9rfCX+?{g*3HO4oK>MTp|W)>0Wp~%VSn9 zn!>maF(f5QcURgpF`0AZg4)4tCJ@WyS!T4t*6jfr(K+6W)F%$ z3+p^?;~G46>Z9+kKw$xC z#^?!ZmIx(V+M9i`lyFu~oxvST6=q93=;MIa-Org_-iC>WnVQx~<<5Q$B&=W2Rn`HWRuhHgoCs%L3-@3yil#< zPx~FhUE-kYyCeH!=I=e;i=0umpsYwh)Fo?j?OzVM9+D_O7KE2{Z(#Ke5?p)i6acJ& zuq&1VDx*3)ZObXdaCxE8BpH&;zEA+z$!w{iK~c8xy5FlS8o|av4wSF{?D4!dVBB{T zdDvT8fFy)N7U)QMEHT!lZ7h1?ljE;>Wbi!2Qmky|YGg%ExZeZsu$}M3RG)Jb=_tKc ztHzuD-{D8cE_kqtZT{MXXmsS6=5CC+L4vW!Xof{jBUDTEYi&u}ux}2z_jje8jLPQR zTAhMw@wF;bNm|HLz<*Y#bH{EfYvJUSW0=6Y5l%yA2EE+zeCVUYH&9-JA+$+M%;UMd z8q#gKC0c&X>juRmI95b^h!CKb>FANlXEE z^@<*i*-Ss*DX6J()Y2pjKgWQcoZMtNb-jV_MvA9d=;byiy z@xUZHxs|t+_*n+A&5BuByzd@x0m9aB&ig(6>b9%BQQhAvX!cNr|EmL^jFK7*a+k!nF&D_Mi5-1)-7U`}a7vbOI zol?xs$uL7omVH>eDnn{t{mV~Vf&I26eJh&(%KWp!Sl~HTTR_p_UgmU_2o)k&!(uZB zMXI&{@s2Tc-5W)wrL`5kRgq~;3bSK(VY5A;H)Giq!Wb%7G7XEU^-suYo?I{~y?@Xx z#7!E)wzqh!$=&8zJH22Tz)_e@`hy6myGb9XX4u3GdBHDKqhm9QE$6C)*HRG2)}+|n zQ)dUUVaxnR7CBK}zF&DYH@kkF>d0FaCm#s_(GJ!7^@D$X@56EdS^oqhP7|k!eH`53 zADYScy+9Xo3;PzUJ^KEGvWUv=$dW!2F%JKnuyPO?0c($8)SAM-=H;_CjPd9rK|}YE zY9-na&YxnPkw_0|(GM(H_da&!({x{xNNViUiqCvr@x?yS!wyxarxnBjBGdeBnCu<>Z5J-kI&|ysM zS^z`nD{_K|8K@o-6G_yZ+zZ_Bh+B54;9~JHr=L}=yFG17x1+A+v&e^%3eFzjUY?$_ zpX7&EYfLFUJSurfd#fUvET&0P?IeSq%tK8&vKGB>yi zn)1HV@cUx`@bP+rWno0Dj1BtEVxfspEzRh*|HTIO`)5viT#HakcuKUR!|y46!@Jem z^N**W^}PChr&Lyt<3E!r@?5AHe9&=fZ1ac*&BYOAIyA=1*1~u(b7<2m=2XVnenGUe zRcfsrFg3pNegB!r!L_&}K6JbtMk;>l-Lp;&Fzu-X?-=U4POa;3PviU3u-PIC ze@xH*rrec(vlg~giC?Fia|c4Q??JBsP99mE2V8S*K$4De%le1C`N%tuHIn( z8Ff?8Y2z5kaqwjyKn!7X_+qWSI5QC|W5s^>cT65O)mt)lidMI;da95NbK^ZAF-;ri z+q6Zh9L#czBky+O&hpgGp#SvC?nWAl3Ozhwlvw~}6PEEOXV8J%&9@bgxJ>}+s6u7m`IW)U!gvrl4DWQz9;TKHvSPWy?#Nzt}hi`J%Ykeja0#xORnH4X2w zt(1{Q$)%IkdrJ(?V;r(XO8H(6vdV&sm~i9DymXZqL~8*qHRr zVfJazPFn{rm$VTyg9@e~lTfZE04=&xyz-pA1IWa@3b;n{4qFSUAb1tXfxO?(OD)XgVV2}( zwZa|8Py^=qk#Ja)kem_tmORZC5+zIo7(O zZ^LNbLB#7x|Ig~OjzcA=KesHnolS(XW3NVAT^*NQ?J46N&j0HHx0{~|e6688UIe-- zSYLXZR1q*QXAjsoy?rUA*RI~=>>ZyI^3d^~Z{XB4{tv{8u(8pAJQSgVhZ9PWpvl`J zq_0J# zQFRA{QO{G-^hC%b0Xt1D!2}uTa>3d1G!VEPk9fW zO3kR)`N8$TReF;6h4pIIhDN$-CwaDGjz@0LkrN*Pj_U9wZ&rOVf zJ31oShj#IMwUUDC;-bNNxt;kv#RoI&SOcFA1HF8oPEAM1i(7%WUX6*2n`n2z^=2}*43DSabgS1w8K zwK@gI$;M37m}8iW7w=9=3QLmTzi$()b}3g7$Ox6=J=uK$loc3?jfMbb4Y}Mq<=w|f znnJRL4=6RAX4=NxHp5ykWcMXDc3$0$BNI((-n;9oJn&#`ahcGi{ z^qb@FK)37ySz;BImuD-aK}}xbJYo@lQp@&N zhnQeXdI&Oby6T*MO_uC1RV!=cYCoiIi;-DPIrxpYlFxaexPNy5OtgvPJ(`%kpgaAi zS(BFCdSGGu9`rA&qq0V@qRyE#WRshU+$#7~62fs?)-IBe~5d(utG5OdQ!G!b>=;us7*nh;H!6Q>)oJ z5^$|rZu!GdTl* z-)_bA@A4|pgIqP7TPF&Qi%fpUsxmkb49OcB?NvL!edDYuVPsEbgP@wca<48K?f6;W z(`I~)!w(LR7|(6N{a!p$8i<+=b3knKiA_0Xk^b)%Ql7bWewR@VuB>DpX3wzw!TULy zv!7_&9S+Ms$eiRVQqgK|JZJuy1bJP}9My>)w;!+mU${oehCHK@y3MsJ{70)C&`=-9 zOC=yHTe^Rs5}`jU!wR-?(qw$^Y^%o0n6U0zjOx5M1HB+{i9j#bPY|on@0AZ5{?%PC*07;gk`M*g}rfC6~UQMZUA=%c> zf;JTDJBy23oD{!C&Hh<&DV1SE_<$H)h4P_2bSm5jZ)1uanM&t&bCxFsQhKNQwiw5A z{nDwQJvO4f9hn5Ku8nh5v}pYKwlQ3_7`G!Ww5styVAM_M=-l(#DikES`bD~Q_hP;@ zwGUEWp>b-`Ry`C|>Uo9_vz7R%9OU+@%!xVzJ_B&7-5xLQ@$vZVI^|`Cr61h}<0?0Q zQ~r3)&gMo_JY~u1dzv}EWT>hKP;2tX&KO3eb|*%RZOz=m5K{aX6CXlsUW*SEExuAI za)!)e4D{bmam;*-+kQ|f|9Xp18SjU%XGrvvHzQa1b}FuTz1-oFtVS^xl(W0L0Sdgz z9|W7WxI0fX{mpRHt@eQ(!R{$@LS+AVdrehYm+mAN91j*XdiZad&)S+~>s8FF;bmo% z;_~kUw^(Z!X4Ue6s|1~Gqf;)KnzbILw4tp>obN#+PQYx&)lZXTsrmK|M&ZA!PrDAE zIO#c`@cmOACUQk*L~g3C3$J|Vk=d2QKw9jB`wadiYK8IQbTnyxFZUPLoot>!AUyxc zmLj5lyOcHWEFB z?$E&;?QawvjiIdON0SWp%x8vvZpu}ga+I@=rO!Ek#($(1wiTyfbEL_psa9Sb3MDY| ztEtIy=7=xAtlj7MRMt|&ui6^r{~Qu4#vwxGM<0!z7SFA8mwGm>l|%kUe^2p@dddT8 zBaeFeWh(yMKX){w!fX0y=kmJXQ;tK|!}ga88U2%2(Up30FpSi5ctq&l6wYW3vvxFd zKTR4o_>A3AW9z-M6@dP_=$5j2r)!CtR;2APXLdjBE}9{V^nT7}*j--@J4ps_g}4G0 z%w~pue+}{~C~AF*%`mPfQn3C0?d1jLe`nsOf$pV&v_zc|5m*r6i(j>M5AU}1LkI0q zp;OkQZq(f$-&($M9dYqPfGd#&@>Lfh6tgb%a-kU$)&Lx($57V+Rk*=bJA{oC{C60t|HkjzKQrCS_oi+}j@xzHnhLRjvoz%kKqC zGd8CA`oJSXiUjT7MkrKbq<&|`lOz2;L&cm9ymv!>g42Cqv+k13;4 zw_kk_k}_N3Q+i>o#Qy6vwT;ciHXFbUI^WL%$*b6t4MZIVd^*bF{I`zb`S`~WGu*_! zfU1LBKUv*=D0%Ke@Ktfyt+o~x>_64^r7=;kDa-ZQ%a*f$KRR@_{ee^-zr$zaSQ?0b zwCwHQjZ0mbd^ZVaJ+^A`?`k@U*;TsUzUd75Gc)w_Vflju_}52!!ZMv?RqqJ_jkPL< zckMdni{VNo#U4vzaf*oVRm~hFki1@&y_PWHzrX~pHSvdyVn$%5o!^4I0?vgY2R6TD z)>ZBGJVht2@PRxMer7xFc1eRCDmNQc(qPlbt?xGT`p3eAsXXatX@6Ue zl(L+eDDunQtp~!Z9>yDjH@*;gDhpPP7W2%_HbT+tmT2-w6TtD*eWXa7Kns-~7 zZ`b6#{~#sG5sgRQF}?=$#dE@==B|wUFZaY&&u>2nM@;uLjKK3_$km7QMWz~K$nkD_ zMc+rBF05~(2Y2KGo1#wr2J)k^ZupD_Zf(EwWsG;qPbQ46Wx3q=P|XDb{BmhvLcrUi z#=jqw%wCQNb?D3I9VYZ}Hoik^>?we`&7J^5P|?wxDQgBKBZ`~9!?;Ui>{U}J<|#=> zl5JHh4KC?BxLfAu3$tHW=sYcX*LTCDeUEKB?vvHeVXzLB*bunql1(X!1rQF$DDFM# z>$*aVu43P`TB7i_c*N~Pu9#3{WO8Cebf`X%srhyh2Z`1A_vvxEi}~c=s=CG~Xu-xV za_ooEBE+I%N56%RoFL`;+(-fdnZJWTm#+}1mlW(YpE_FpIar4-+K?GaHZ_bM_8m0Z zGC4a8(1%!tv11d&aH)4Z^?Dy?J!<&v*&w=ZPC~C$hlCo_DSof5*aD;1ihV1ZV#`3n zr}9TujEMU#=^}Yz&qCv^mEbBr#vFat;+i--pH6yn zKEm&oF%^L{bl1iyRmG2Nh<+ZRAFJOlCzrR*=I`EcKMu8+?^I>ovp*_LtV#Dx4u2z% zlk#jw^Vb1^4Zqnx%hrIl$(BoSBn{IcS}&q+ISKU((JokVDq2@+K`Vx3_I0UbRS@}E zvQ!!LJ@qDWubAckcLBJRn9Ou&zIzi@ZB?~H=foOOlk$l?*;_vD5G8+{xr2Md{y4pP z;BkGyTNmdjc$lXlcXAY>rHHN(!ghyx{wO;uV&n76v1U6FYWMA&$eN{+^;56&VgUesz70rjZZf z7cWb8#C*P)@aFbM`|B?*#9Xp`$y^y0!*q!~Zd>YN6nk*hWoBFcYfM*Pu`*S-!QZX!(s7i*{g1)(xFDgffmD-KhJ|DuZSC{m#F(r+_;wHJxxcC#qyE z7~akUx?jtb7rH^3ukM!v+8^UDyQrjJO70e@)eNu=$D!E?I7QgF)snQItv5CqkuqUY z)3NklmZEatXA-Zkm%2;IoTbl0u&67O>%Kliv(ihSug69H@!3gc33Lf@#b6lfQQudv z*Yo3(K=k4B8Q)z={5%P85E~sJFeS>&YuWHXRuW6i_JiYZZB0IQtp9J zw`EScy2OL)$Eh1YApKWIziHIsMtoz(q%L9OvHg~Ib6oI7oBwmObI>#{rN0wM^9#Uw z7JA;))6TtpmwDlzLR?D>#81uFjg7+Fk5<=eKTGC;V}$!c(VM!J99pcMOePct54JSgCQh=li|HdBnI-%FEKk(~q<+@$%sIrgwp$iW4vNtDG>#TbSFVL>! z%w&$Hy@V~ZcbKLKrwc3y#Xa!F=eu)B+r_tb`=Wi$jT{f$ma$`tV(**GO`J^EBj67| z+&m<>Gk;wMFqZne4am0~ADFi4BMAV=h|b?({>$7+<=9Rym+K=L`p-!wlVUNaqq-8&}5wlCrq`Tqler-URziGdBx~o(tY93=q43q1V4?=*D+>3(B#gvumJrW1>#= zrfyhz>C#>-GV%?;XdQ9YdHk1Pr{urZwFld3a^>E+)^_Xzx8ST=@A>wVQGM*) z?n4@RMW78-5(XEP%m;8NS+yXbPxWKi<&*?9B}itL>k`tT@yJew+q^N-%tG>TJS{MBD#a^wBG55ANjl7 zv8j;NPJncYW16Tu&a=<$>dp^Kp$U-2d2`lusU@Q*51@bbIGf#k3L|w1%F@hrJ*`K; zCsU%hPnQrZA>^@ho!H%=Y_lB#*Zt|T>SQ`2QuA(``k3(a{=$;h_;-&b&f}k-_j|0& z>ke+Ff9?OkjY7b;1Z`p2rFnAywx(?#oSJPM#$zY`4%D{xMkXm}biv_T&b}6X$GaUI zEB|I5MOknDWnI|h=ZUMUX*bA`Ysa8nDy!`Q_Mfpkk=Atn-*WF$yZfvO*Y|4n^2fps zL9oTV*7JkP59+K#jAhenU-R@aG=Feba}BUCcD_Q_6hX6pt2Xz&Hux`lc1bl@txYR-^ADB z*jVBx;A^=gY3G-MFIn`SaK1Aae93u}B@}tpH#0KS3n0o({NrBh>vHms1NiclsiyMv z$Sqd^a4h6uL})e}Q!W1VmUo|7RR6o5O<$XvueliTHg+5@O0yhqU%vs8C@=AU0*9TH z1O^O*av+jb-QKvTEAg4~ocw|8i?8SxAUwq%d4;c($;U$x#pKJ?(k;wvC*BtB)hxh_ zcSKM1{mpc&EYsly`W?RUjD{!U875w{dZ{OLjNL?j`Pbb)i>;2n=ghjB)%?Z$p4!7T z?#=P+tEo*NKBr+HpZplxgcm*J@$2+`>~BGDfBWJ6INO*@YdXa)Rn5JAqAFlhXoGd> zDD~}$=CI>muw4&jUC9HSl%LMq_pOKglt8d1)c8kS;Q2lOO0#Gq%3DQ?^%ACvq3H0=P&#SL*Jcu5!k?h zVDOE9Gkf)jCZAeUcFXopgv8?~E9*Yph-vU*YT{Y`f>CDG_)R{G6BYlt1rD)aHJ&Tt zfG84|lLFvG-!k2$lv8(e?(0&+c1ol9Y-6zyO88HgWOQ6`IkWle8Q3R5_6^qE8&&QDqwZo+<*?ZZxb|8ppG?b~!?ssHJiqz;-Oo#3;f z3ztEl*(<4Bsh0+h-{4J-V>u|2QOSnZVuS})dbUf-bT>6#)%r3CVh3N^Kn4?3e?(8Twfx9$vOxc7KWX@pR8 zVAcL}`M|sB7zYgZ)*VvnW1dEK2mMVuqp&kixOM6J$Q`hZpZ{3F~Y|B0_;rH>Y zEeeKP*})JC`bJn^vMWqRW6APEIm@ijiT3vKwWb&flm&f(E+Hr7t!*D#^qi1K%d=hH z%3>Mw!71K9R-`T3^i8v1_O1)h3C0M>AEwNKCEUoy%v)>_0TWp~)rU9{(d8%->a(4W zKyE%h`QI07&LPjMj7Nr2gHPy>VMouqS`M>3N=fags>A+dr+siG7qT zA?7wJe>tB|pxQ?dJU;7p%6}KbyH%gPHoYx#@ z(|Av>(02miI$m0ShrO-ek+sn<|MaudY$qIJ<8Shy_tkiq^6tr_1GO>iK3YZas^xdwj}GNXpL#XnqF?bP5{FpN zLde2!t1cMI=gGNYd~8oANIfd9H9@xpTes5z;O(`o;e($lg~n=!-)?}JaOZbxX2bPi z4_P8#39dXg=~~e=t(C6Z2=H_E-5y)o03dr#WgBmJn{H3y`-7wNW_%4Ifi!tAfUFeuyZe##kgUx~Pvs#qhwp45Abt%NX8bg(;w<89H($N>$it`C&(GGuay5vHrvJb0CA?u3LYO#xq?R2h?x+U+9KQ3#CS zE^sifpmfbL-FIc|uR^)ARL=0&#D>)CGb-c83xAvU6A33D3N$&b6PW4T4F&)U9UfznF9~)E@KPtxi z{Reop28oploS_7HO}ipS(JPXfG>SCPY0#iL<- zbnx7T4!YD2G)ELiPq+FSSJ>k1S5=N6K}7-5xO@gCuJ#;})8xcW=O77xq5FiT?ZL{v z6EED$+g|6auDt>%k+e+9jy2`??lg|xy(vX&^B)^Fs$GHk6Xp!wRm z+ZYMp6nW!3UUuS(%{1ANBrw}w@fBTWUgoh8IQ{0NWMt{uNU9ftAH~=4_b?rgWtanB z{54hHo192RP`tm(PbB+Hg=st-RMu;9cuw)^{p$16V-4y>MZIYfOxi-Iyewu%3D})+ zox$w1v$KMyeTuKUy&yuBP`)R(@-@ADz_;6{?lSBb_qF~X|G1Kdi8@2btx!2^4ZoY4 zG+|P4tHyILAQHdWdh79cuHf0OB-JV#T)3A|t3$r{IE}iJS*q`t7Bin6mHJSB=>V(s z#p9-|sD`Hr{)KnPRY_SFzqb8S8-?G?%a?>su9f5g1|O$0#Emc-{0n-3yQBXl{ST+O zRrUCTHpC}=J(1sf;9-}INvz+|{JJuq##}@s{p=8A>8xBG+u8c@D)2Xpgt@nM;Dij2 z4}%y1lf=iHDKI#F`+R7=bpxR=HhL;=CKtyWs%Wkg(Zfe+7QQ2ok9=mm@38-KcjXsi zne`N33DZ`=pxZ}kM`Tto{@YS0_mSgbrNcOS^Lf9$(t9)d9Vh9ROk$Gy zOb%!xBXbQ|rQJ^S4ynFq*D@()h%EE+_hZq1h`}+-;A9m)VXpM??)u#4Rd?|>&8F@; z&$?d)h5peHCq}!ygdTIQN9I~JEEmsXvG4=@_?)^YyoJ!1c?9u)vwdmv z{Kk++#3S_!(xB^*hMoEK6UU7OVP4R6nGF`|C!qP$F|6!A##Tr7{Ep4bVU@MB8Zn+% z&~PChlQ;7`yIL^f0)C2d*(EK%E@t=a%Iuk_D-a2bz2TFncYObcwTIO)$Y*M&4~e?I z-<-GynWLKR>O}O9(TsLxpbB$bX>CaI0zZwfn_Nw=F4`R{0x3ju(r=W^7K+N>t(X%% zvT=S|GP)!<#l?5{D2SRvkEHLJHkL^xcDWFPIH+n$BG57$S`oUYaehqyh(Mn#7QaU-=O>M`m%^f@I z)cG|$1=@VC9%P}*Z1(BH92>kB-zKIU{7e=40=jA-s=;!n-)#6nkYH+KD(@~bVdZ$9 zz;~+T=+LY0R;roDF%N$JD?Q0%T5dV+zy9Gp+NHsSsEwVJ+Xn)sYd7m%nJrC0Sx6;D z&PAY#ceio@uFY`v(sZ9t_P{%v{C^ZxaJq-`G{GR>eyj)-kaAN0D| zaY;-6p7hu-&(Sjs2-=hH6Ay)X6`m1vZ#P0{d#=^H0bji>y8<#@l2`X~UxrTpIeu5` zYSk+qMOU`*xm>u5-0H=+oIbqd1bpsA-@LbDBy0WD+Ak1TRjAP6Lf@X=W*(PSBjn8G4=+Zwl7qp_x@K*Cd@#aKctq?AC0I|S zK3t`FKk~{5nkyh(S>SXg79`Mc(;@n~0BAG)?Do~(s=nH~=Jxsu0MK-)uqsjZgWV$` zfVym#9Pr06@w~Hm8Mcgm8(p=~I=B=qd0>FrD=jujt}Vm%=>PQTZ<-;gPC?b@k6N_w zH|vb|8$}FJD2bPn0oh3)ta)#BZG%UXYA0f``9X(~UUl9CGxbEd)ur|P&U{bq4ZSJF z=Ssufv3^TdLG?LJJ8yj=oMzt%2@YOmITb+GA>32TLG0;`Urxt9jLlc@^aJLm$X3%U zrHBzHay4^4%R!C@Q*YzJ!P?)m;xvi0_0FkrB;4Na-s>qfkme50<8-kxnuc9FXl9LZ z!me%H&o&M7EIVpvx7lsNfM0*AYppU;$jS~wT)4J_Yy1J=7%q?T-r`DDCjZ$M#as^f z0bqS3(Ll`DNv==SXiPk-KdPupAM2{5ya&tTZZ1(gdo1 zO79@@&aKCJPb>)tY}6)c49ToGk6`9V=6z$U(0U-#|Doy1+|ECo7QI=HhEvXc- zD90QdsZ@$kxsQyG`f0o zbkIbsmcxt^u1#ANcBO6CKek&!)F1m*rS@@DcLJeU)b@#Q#$nc)(d|Dsc1jMw&6!tL zAE_IRWq+cy4g`p}EYmZpr~1H@OU%ePlpaQ?qW+yezzlWQqn+EDFRk`NV+9qx=1qNt zQel|IAQd;D-*N5aM0JKj6;sdVJS528g)I_veIt8(9(H>9T^`c^zY`<=!rjz@=jIge!SH1o)#la|9(?XuU7kJC6 zMl*RcJ)J!1fuDFM+mt>n`}G`|u;YHE@+W$;(ZNYLRjk?z0m>|Ej`_;CpucxK5?X2Q zkDQp?@wnemzjY=WprniF&0)SiX8f!_<8A4CJ$7S4$NFqXCu$DG`kWV!$!tpv_~r;D zvF7}}2gT;#z*eKwN08h*&PFrQe8;YHHS<$pGR#Qtu?LH-I=>niF6PVdKeZ)1h}jp% zZ@P0@ik~eBFA0Q{FI^Cy7A|q;0Ed(l0>j$>Ecqtg!H876beJ*zBhe`Q+rhm(aU%+~ zSGXLlQ-zPzbwKT`yp!uOoD1)ui>G&~Pl8nqf0bB)DHH zZB3~w1>E6_uJ9og)}eAjQ4@hR@` zi2o}1RA6sM(bi(^m*9K$V`}q$Q`qm6B?U&hErYa^K65gi;Do#&?92J^7)DP^tj2gY&K>_?*UYgj|1qkY9GL;36dbJ;yi)lI8dv+x^3C(yQk?H0P2&oR z4ZDx!Pp$_3ni=-;bSFr8a^INYi=SLs%k?R(tiRjU_5?mB3q!vW>T;7Zyu$0AI(5Jz zDc|QNX+kd*t~FNB=U0&-=uOpHgNX|xu&%D-dpiPMf8{v6C#3y;)Qk_co_NQ8)_#c&IjGshey6;@1}lwEQIXnQK*Pz!b0#_At5^Fp0r9oD(JQ+;I{QEK?8k8A zfd7O56_z6FcxQMY?YcI6N=2{RhyGFnF)Vm7a-fa;U~T#5^CGLC4Zz_I?DAl6H?wk@ zZO5eK0p#pxIrynnfh65VHa58QbcJ=gnKEIw9*TGIe;Y%6!Rpti_|E47#8LC+T6%A0 z_wr$l2?(bzRnyb28llm&(rG^>M#T8;-C-7`CG2|4n7)OmwHkrxXq4U^8oToHpM$<&x{Vobvt3rTi|sHNvwIiEM83+ z!PIYl-|QQD2==v30`E$OQYA5H`d~99gfa2Fh!mW4xE#SJ;v3KSWF@%c|3iKhqsx^d zKu@H8Y~l&g$WoJ9nfg%<$g(~gtWm-Nz#j7yfJ(i|TKTb^I zWI^Xh-*fCgvgJ2go03YE?fzP~(=+WK3V-9U@aRPP9#iqDq!Ck(^ZMd|9o)!hgiw#e;?jzVN0QiUkEJC` zfv)|!d&7UcUSB7bqf0JhUi-c7nPq=MHXOQR7+#JkiV6eaSEU=4rCrbl2c>SP>Rt1k zNyF8akKq%_+p0r?N%bi`67(PTYck-m+UwuK=yMXQqS9QDTfBgaSF(6N6yWtf$>4jP z?Rj=mRQD~4X1JyU8pOU>t`b*xZ^ex%vsgAiCOHEarGz&%_^5#82zT$8g@Ip4mW;JqGsM|u{ ze5yUzbGFg;fA zJ5e$Hp7+rBILIwa^+?;(+A_g|7muUaMs+2`3Vs#17>x&k6zeY}=)IVyYX$>r^=76V zB&WaLEk>B+8h_xhp<6~4gE-jG*F?-lM|)Umd-f(r2NUwqgC!{-t!A<@*LR5XWB(Hn zm}drklgSTh>luG@Tfy?fj!kUPq0DRIrB@HjT=ZPKh#o1ZO7~z%71aQ1&*wYLM82D3 zA=e^b{YgO1W76XgD3~_}@wA4PKp~yR!i&t&o1@R+juxY=?NikH8IIlX9HC__wCeGQ zS-t6GVVm`N%<6Jojy=4!IF{x2r#-%f%iHYO$l^P*;@XpW*0)-fI@A@a_DQ>$UO=cTCx)JiPi>C>&FS%=YK>$U2((_sV&`pmcWq52Gjcf7{^qdFm7 zS)P5V^vI&-z+bmM#`hu@hm1{wyuZ165UzW{w*KmU@nQDjMO}H3>n_vFc8I4vOGgI9L5D=mfsb^*b$He}W6K zUhTJZ!H{h+5KaJ2Yy1#10~V;K>}9sRznuwm)UD_~zCWr$C><{b$mW-igjYuk3_hG} z1O}{fV8~(^)1Nysf}J8lwIG=NvG3zsI)PmNt}FMhnAN_VO^Cx@FXEqEz0+k$TaDU; zPt@;xEPx9)LPu~l`b%yt6T(hVzp3_8oz#6dwW5BL;$SyQUdhex!8rDt59?}^XkYS; z{p4=10;FlZUB%FTtTMg=t87gZF78JeWos8jmvi-&%J&$%WmQWnCNNE*Oi0%kl5cIi z?^R!D$#K)1e&|YLDb`Do4~p~pp*q1x*g5#=`kB1lA!^Ry`MsiQS;baJ%L|~!O>giQ zRBPLN95w5lYZOG^_xAyUUf3MwC+qOy@I5rfK<^CdD#K@o`GX}pkMv4}a;H|bK|Ar( zOVd)CN+i4ZoN5GjEF_X6B3glk8lZ~5E7_MuVbmG2-4 z)k-`gMUr|~@=q!~oSZW&JtI*aypz?G>i&FF(lE6n0QGQmV%ne5LGm~)`SI18!%@W$L@cB-U3705wkZR%y{0zp7@RF&ydXhU_7i_Sc0XVg&HCn0jxL^Bo zB%4xR-lxL%lOl0r{)yO+m+X)k7U%5%i4q=(tq9igY4lbINdQ92ir4c}Kiw z;@Zsq{cZV9U8g&7dDLRYE1vZ;QQ(|R51LbKJvChpFX=~GjEOf(^G07_)MK~fhssCE zL7W{pM9uEBzmjTn&9}NqdvGvwSsc@sS++1WuGFu!zE{^z_oRI*&DBO1ywSjGV<~Pkv$2>N&5> z`)p^rHa;6^Nc&x@QT@+OlU5q}>k{;5C_^E*AC}TsC_|0ooApB1W(#F3&IAR%v${AC z!XkS7E)4!@1Wak13iA#PUaj$Ek<((q=%@*TR1WIFT-8U9GmkS`NX%ZaqxwdrUiO_U zM=`3uNAcUBC&+0MEytUa$^dG({o(xs*y97por^xVCCt*&0Tw<@gneqA5>pf$4XcReGq*L) zOWzVZAPpMlj|Hb>lb{V?rGBgTK()bcdIVS6MsR2r~ipY%4)Uaid|-( zJ-T}Rw7u)%NPbG^*=3s{=7 z;{s<*F2NW1&Ed{PQ%b}Uf!EWPGvLtzH3Il%qI_XLxkn>yGkPm#5?GD8rZx zyh$y)mQ5U@iwGjSX&(y~JL8#{rzjXfSFDr${lGqPG0cUh>TLa-+lbEl#9A>(&Su+; z#PWU~YGL=^?qt^9xy-}lwls!o5hWC(LGqk~ zk8vQB171-wJLiIX42R9;!Jk^m+Urwf>AR|VTzmuy-+k+4X1*Ejzd1UKK)e)8uMvV9 z++44{%=?WvRcVm@+#L(9ovpy@ecW!(Lb&dH)C{KGlXFjDenUO;GA_)zvukI|#yIPdhenE8=0(&}7Gw>l`! zueN_&hjzG-Mefpv51F3d9NQ=67rCPBAuS+a#4`CrI{BDt=svw50*7ZZa)aTbi{<{K z%rniP;HF~}glra8;CN7o`q^&HVQS=yVDq@Gr&SN!0JLZ*c<>ljw9`!pqyk$L+=E_V z{S~$0!SqiZU)pLTewj)|^f@1!4*c-EaYSiu^)NwS`!QCsD|eVc3FPed0!l<8%#xiGc*@ zmPl6X%_*D7jjVH%xFa+$vO95Fti*`I=$7a*3ie*Yh)yF}zqO8$*)MsLU7hxT=Y9G=ff?r?b!yjI^!rX2%& zoWz3mg6^zmMz7+@4%CNRVK3W@V6>08W9yw*n;(PWeaYd=;XKUfSFp#X-4#QsgfzAz zhIMPVaIHJ7V(vt^^?uLhNv}>Bx$OT?x0KnJav+8d+bhl1+>+QuW9WXdE5FC=E;))e z`4h+5s+BFC^^rEZ0xFRZ#L5DyMVZ^UDP>DzgrVt?bTKMcPBBIj;aV=;P~7E3=W&1LJ0Mi!sTL~-P2vRJVE+;p2*Vh zuVB(0#=Wr)oL98|nA_lC+YUZ_RxzT-TK@U5RrCH1_V=oCBYjJ3UKH~;r(vzW6>}&! zPsLr+kQ@(-l@9Xx*W+yKo{K@yjtC{ltImFppg}ijIxdOFRO!?Z>PUh9^S0%B3{G}C z!%d;=4j|ce0F&};^@gr1^Jx|HGWc_a+YVER^-{!zhl;HM!oQTU?d ztQHbz)b1GcO77r9XaT|chk_)<30%CT4v5G1(~>SP0#2pXZTLcA7>?vo^o4UTA>Hok z8qLvpGmtUe9u=GvsSH5A@GZ{s>aU>;WS|BfZMMKD3wFEjTAdm#M><66ZdK2}mfewg zQop}0q59AUX3z zG@Z5f4iGF!sq41)p5;v>uyDUR(wSL>aC}^8n7`H3mBAkvy=sf&v8HhpxpufJcy%_= zZGJCynoWFF%L2f!q3-Dar=?Upc3f)h>seD^&G|TX8mUxXe0p<(rP>rxQR%-g$Z}`$gz1pB``Y+3}s<`yVw?jUq5$?Fn-OO9?0> zrfNh$HV}x;HcGSQPU!S@Q*Ed)XB%#;tGo{ z=bw$YqD~Vw*e*?gMaqji*mgP%9hGMvxKB+HIq1^t{yV;(M)Gx8npz-5-(Na6vFGs@ zR+6WkXLQ$t+ZgawS3X&WvOvZ@wU(D;rU6#& zh2wj-O>tN(j`i0f_L~uG2lDzRkjmBjsCzOhL{$55{EcY9@_xC)i87Go%3B#^AYIz~ zmK^;4&3Z~n)_L%+iYWgy?2(4<){kEgQQ9gII(Ja$ZfW)prz+Gh5AOkH2hFLWW=T|- zT)nSs6jC9cX3>It7c=?7`lnw{I%u$K0EsbS&0d2v&Gr};7Q@4v^_FM2S za%M{>&MjXsW#pfRLs(ezm`)zic;WP7jl_x(9j+mPu-Q}Jc*AtLK#(GSi;F3j=(3k4 zp1{6z$?#}x`ntj|+jXIw2%ZXVs0XPnD_s`U?SoMG$r{L=ou(DZ=V<1uE~Mwz(f6p% zFkK$yKHkvS#~8DfNDl98QtX=2UsJq$9PWF7PZASQFPV$6D79#A6Fsw8dwQx;onk-ly; zmh)SV+%@HZXr|R<*qkF3LB@ zq|SPW)ub_Cq1c#;ad>s0^=XJ#f2G0sVg6^HhGe^fDV@cCo6=NVYPMndXm$JA?VD!!iZLxrI_^A@3b0107@&h8T1-`KMz&m4Jwf%02m zB)bNMNu<_c{lBLTKmht%3qoXP%CEjE!viPy718@(tOEhuq4wCV7jhi^adIEoB25E4 zbpNx$)qQCychuJ;$z%y{ZF@flbrU4<#y7<(kAPQZSN7NJ8<5I|VOOSaj^F9*etZ~_ zTsFS(ostQdT{osmNJVzV&m*$a6|B^%D;6eP_BMf~Alm}BL33z5kZ(^=R9jB77v13xXEnf^R!EY@l<`o~wngfgzR3Gwq zaf>DTcQfV}juAHh1@7#X%m)L6!ZX5(-T0(<2Fv|E8cqobPc1Lp^_~xEeiuDoc3t^R z`y$WLAdfG;IC9Oj?v;`Gu6bSXqQq3dZWC-G@P*1X{}V`qw&gGwIwDpSj)e{mdhEqQ zF~Kq>58HLd!<88V%A%`TTHSG1VNspgCVwlytD>oZV(@J}cAO-{hDTj9(LWe?rP>E} zB_N_sOS4i$k)88szTW;urAs;h{s&cIWrdkAOp6nXQO1LwPUxHp{+hmiYV7>@p^xW3 zHeznOCoT0ClyOAngw1uhP`=Q5W^va@vw8c3heq2|{iD(lb?QgU8g`E6^Of|*Mu8pO zn&5I}WH23U4LsXUH!q)?P6=PY>vv>JTrp=)`@z*bNHb% z)@xZO?aJWlSjPUNGOv`<)cTrNa$h5fN<`hpUBu>s%XEdQd+!!lRgo+8!p^2fbM#!b zCKMwp0Sz$jh~0oJS9PduCv5G{h1m|7Zav>^)(0+M*wCWh)SCLJR35n;XuRa(|8RG{3EinbmqTDlDFXsX zkIm5nI0(h-rP@y8GJ;)I&;VL9vWTN6so66Nk511+@&$?alo78^DFaY3B}MG(j(rT< znRmzMq90c%LkX%u%iq}j5cI<$^*#Yc3RL8OV*3LBaj&hJdND7|#k0cOPW5<~sPe36d0ApH@czxpl^@t6LsC~#DY#Q56TKc#5ZRli)5`_FQ09oHa(A)0A5K7h~HDw5Dz^etQ(uuxCJk0%UE+Bw&%p! zN%a0n*e`6jQ+H+x);rAj^wI(s;gxl&b?=K$0#0KN^(7;1i;)hCx?b1Zh@#CORDW79 zyh6gQ9`@ag5U;9HO`voVQCX@qcw>#N4u-)jw9(_xixI1f-v`5PiX54}DlTBm2@1Jv zNtt?o#P5ky#}gTpSuO(ob8v4{t(t<0`qim(M*&}sy9b)9y&Gj(MAfVsm|&uzxAjq9 zoUiOGa7W`3=*oR1kYC@q0!0vL>F?p?ljCg|rGadVv<3IpbS7k%c^^^gBPT5-qX_if zZRg$%cA5(rYl)`N&tonOJFq+X`=Sx>ygw^1#q*4_39Bt9VS}q4-IAnjld^4!j0|<3N(#;W-Qq!g8;8V|^I<%) zIBJpQydIc1`pMVB&1ZTR=yPr6F4~%?D>kIP&3fNot&@c|pJbHtt4cAeK3!|v69ib- zU70B1-T;(Di-u8G7el;tlD&=1X={D`w(BPc{o50wj>Lu4*u^aEY*Y=J+$ zuqm)^E+~w2dUu8<4fNcvZlOCJQ7=z4?sPVpuw3r={GwQ@Ke68TTvQJ}`0}VsRd{is zDg4%TJvc;Qxr}s1nCW>T)k%-B`{^BSvdwr0nW9Xf1oec}+z^apIH}d$-3HG{ZOKL3 z`78JtUjIZFKYFcD>e_r@AF9lOd6{{w#bw5nM_YtGuGqb6H2g-s5Zex zY9!yQJ{qsQj$K?B|VHY ztDT6AoDm2;7IE}m)h3-VCV?8sTvno~#a-hRP5Ok*4`w0gi?aiN`Z`$>H?o{e!J0af zz6?O-hfK%g1w-FuDeGeKIcvUEq~rK4VTbF!?2@o@-Y!;qyKa&d$)e_Z+Gi-L zN@@0DK)^rL+@?rP&<`VvB<1Dbj=F>a91rUKWUy1$4Kz6jUiz45($SvijEh!Ma?V*M z4`)x8PeDqI<#@M1i9Bw=2rL(Q5!z*yx@0%mt^`-AQhqYQ<=#oh;`F;RJu+Qg^Yx~% zA;bKZuQV2;Y8-){-txQ18d`2)40HkY_Cvs~;X!<5;T`o``yQ9WtSk&yx*l%#_KP>m zhX70)FE)gq-{g1ux|IfWO{@5n+N*xQSedS|u-$1;8@xl&w4n;7MM~CPr|-`_8pJF} z2WKIf-HB7-hnl9x>&1s1jMa@@iJ`#Cgx>EO2lGvVqsHRHoBrt4d6`cA38rBcVIw|g zV+K`mEHFU{L1mb8E1zAV=DO*z8g&2F;f6|IgYW6w5$UJdcMaN9-BhTOubcQGL60Wpqa_$&><4<^%Ir?2qp_=pUx<_9Af+20t2AlkhbamDdC3*sG zIMNjMjsEJ7AW)|w2Yf?YPLjd|L)LkqZw7TLs$Q8hCn`ar|DslkeUC~k|43me5^%vpy>@z04Sl z^)MezRV;p`kJYhH%$SP1qRHkd`BX> zpNzy@KSlN}`gug#p=<9-<4-NzE7I_y+22yrow=AIA|~K?Z^l$u*MjwmWQ=x6W4P$0 z^dkC<9SXe@+%|hZ(pz7OE-k8~p)~C8^~_s2;iqjE%H_4xiGgO*E2OC~IG(>!G^uer za^`j{+w3YIh3w((Id^X=m)cxOFVI%C)s|HT`8?ZLRi3eTYk`R+=JRIkPwxYcc1K=wUV_aXvca zl-NPHnJ>$|)0X#a4$?ynU?U&DO1V+@4U|00w+Le!!_~n#CN)|+^REk#6m_L>V1QHL zBc?iecPrc8EzpGdM_qcCPS;p%tfc)hPu0)S`K1watOLd!9NY$h0_Gv!JM;f_$no(3 zuJ8xVCULLRw6q%^)kfM`;%uv`+VAxd%J>Mk=Um3bg;%{zOGFx^&a)c5J&&4rDSrYqNDysxR+Qs=y=b-lo3NDQ8)c9DGfXtipQ>XAfnET&ge7Z`i;wxvP7`DGeFS(X zVQw^}x_(Khn-HYMgxW*o{8|SaK84+zO1TP=@O~59iShL;z5g`jv#77V_n~CnS0nT1 z*!F7lni7!y?W)`~y@97NB=V#;D}&Q^`8MUAVdEyke0(X=0Tetk%bfOeDfEiXiyRs6 z@*a3J^zh%IBk5-8z3dJw+GMBjMBUtCXmwB0eh%@vwY7R{92q#|_WK@aDjU-}32~Jb z(E+yIU3nBmUU_Ninreh*%%~6Wd*^xUZF4n8H`TMus)Zu^B#*}24Wi^LZj%}J{4NU4 zE zc5W$j25E~z2!V3B7N1h)e?)lz4oG&oXEvE(}%?Dl9<5 zYZ0ZYwjztqeY33U5R&N_F;_s5fY_A)QK;tG z-EtE=J;uAVI2GFa`{18~xS`ILeMo*(xoL9#TI9N%(=@+H)nb50_xRR($$wH)%OO(# z%aosaHm@5A`v&3@peT$p~%=eZo( z;bVgsyAQQqdr?QZzCOqQjLHeFDW#t8Q+E)zUia9>M%;XK7@@c56ApzND^}3*;J;a# zp0=Kw?<_q*p$;ci)T{57Sp7L(ZSx{ggvZ40JWXJim9Y;_CmmabHf&J;q`9LI`QC#J zvicxq*9JE7{ywn<=6J5JrIce`CI)!!=rqeW4{CjEP|HHR@^l*T{l_vJ!wS=!ckdkZ|hignscj4}15kEx^sR#NgvUv{_`Vznr-9D3N?HZ|wXJHr;^G~@FbpjMx$WKzK1ivo>~>oxRvZ8H(Sl;Af3>E)1)S+b z?l*lurY)W5WG`rKwrTrZu)m7$=u0Mo!ihCJtDXTpWq>Q~VPll})b(G*_(@=^9A9{` z{NdH#+GD4EsG5JW^x7ZoH#L1<|8KW!L+kf4+0#CZFq=|u&jlR??2jvDdo|h5T`h*G zDCleh+%F4_d6WWyEQE~(547ZC-4lyju4Q99eDDU_5FG7xuMrGA@v~uaTc}~U0#EOl z#dG^}xbs~brK7qFh?zvglqXwDam7!7manjlfD`GFt~xJ8z%}HZe2R1&6)TH?$K4jq zA!Ms`_O<{{74yXqQUyzu!tLNo#(zwG$q#AA74}w>?v!Ju?LMi<9k|iF!YpJ0e>?rNxZ#*8(q%4vI4&y#h+DTljmIGC! zYB9+!*GT@PmVUjg3XG4K8PO)w@lQZkbsb+0e53yq2Yfx;u*X=s1vRzj+-Y}6GfbT< zyyyMbsGzxPSx#@wwBTFHrO9~V-#C3ZE6r);K9N)tcI+*b9;IOs?Q&4xO8xaV`uDH5 zwf@W*g~_do0_qwp@~-}V{IpNhr5uKHO0|;LZx6Yi+m86U+u!GNYbUJ~IiK$d+jS$T zP83C2blp_=*(_Y`KB*{ZN2 zHS)AS&3|j%Lqlk>bj`NU8pV){wPJLDU(4}Dr@Z&8Tl#)DCu57AX8bg`$IS8cKlyz zgY5}>HvR*RFcrwoH>A@*%W<7iu-_|2!e+g~YJejTTwsX#pi%hoO9S9dpHkJ!? z8mWrN=505jF^0eBpP|R1^zmP&Dae0Q_A|CkdX+VTU3o3ii2YwJYxWq5|Is&OPbP~? zwdKvKL_=L`Oguo-*XV7Ua-#n5NXKP~e{mb5er~_>j`3M6(y8w2+2pG2j^uRm@J*0z zFS?y{XnfM8#Y*)Cz5B1yA@$B!h2#YVJlrBr?+4Z`keD@8I!^tjZ)M%BV|rAT*4Fce z_83T6g4??`ab*xLaSY{&SV_yJ8fV!tD*VjXATr>%(1!=Co5M<&}(it zlDvcTrU90Jd%vKj>#jcv;d#0qY+k~T=tDVN^0=Vx$hGL&x?-m4;836ZxVdG+dC|U5 zA5-CZlqBJBgdIB0?Es&F-J^NqH#;%Fh!@>fabC_3gHwF>zu)Ucv4ST%x8o5|GO_KpGbjk@)fcabts_>E9waO?jtfqCT%63PaI&A$# zs7l4{p`+M|062*z8k+c!d0k4Dvs?RGne{cSxsxywdVRbN=o4>9H+_ywKy z=!WS#pM|vaYL$NFsSOp1qP3EW6bz5cHGyBbO1qWWd%2>=4t~B*H@kF3-)?5&&Re6NAq!X&GpOD1|&zBl@xK2WzAJ_>FUQ@Oum$lceK(fHyMVJQv$?h1=*vBm8k zA^Zbb-^ltX&y8tU&tI3qgZLH}_efj8TsuL{ z^l!1`hbyO4S5$yglk}1Cwp8+cy~B~m>!?K?xQ$Md8(T(_*&9~o)e~+p)sJxQ+Y(1f z2RPWsO~`*BbTJ1mbN%e?lY$(5hHju_>5ENaZ9-vXgiYA4fu8;yTf;5ZtJ!MXN#IhI zubOp<3-j6pO>{KxGsuTAQPU(UgK4urr;rldnK(%s`_M5ya8P^_aE^xI*Qa)++;J9M zd_r!!HJiL!<3+hCZ^PzPHFkZyxk+2knjIWemG&eQ>Wos*nZINM2DsZz`&Z0154r=O zd%=g?#6#HN1b@JQC_2d6uKjdh-?o18k*vPMw&by~T6m{NA_dnuo*#=lBXw%)q5Skc z=9Ez|Cokl{o`IIt{n+I0u6-Nyh&ClwC%756#YOt}2wtoL*uH{t*&*9_M7(%nm3`b2 z?n@^%|KW0Zo{a7UIeeu=Udo~JT4P(U153w~nF+PVn~x57#o>9RN8j7EoJA!Gsyctu z1|1NKaZaLB;Acm_=W01Q=bAqqPA$Upu~T~7%G;Te`t^!~fHkPF0ugKGiTaNe>UMb;RAL_1z{ zd4~>`cImfDe$q%>FB0v>iWjGxN59-Eh{tf*JuRcbmRI%UWps!dYLIIJ;b<3vmU!#g zEvwDcbk0+}zT>uCUjbH|T+*rEm1tz%5(PO^bM7ta%O#fQTHJn;reWT2^FozBcmG+$ zNlS1q76p|>F9oyJ1qNS#UK*$^OZ!?^B)fj5!9C2SLrg4#D<$O6;eq&*@YA9-_51JZ z4n6|>qvjiqUUbjUS8RX70Nz8G^yK%@6)a-E$O6JXsj`ZGxjC`ca_`6B|SpSbT)f6u0 zvOCl~%d=NOsXzxY$nDCUvj<+(H@E?DCFr3*>6m={x<432i*5#{UIcY~W0%-(?v;_^ zc6GR1n7`&2C)7rtALdj)aP2&6_46pY4Thwbzk4oDH^T_V>m+TY-C;)?4zlg=c zjzMp}Mg`5tjl{!dqXRNlQX2jf69PE!fQ7riem6g!%RWSEu zf3rW8=oHR-FUnVXx6R10Z`hM=1i6Zf+Z7f}gKxVhis(R+Wf#fu71K;W&Sn({7ml4R z%Na`v%PokZ6YD?a`C%i41VARolgDsPJ&d}!QG?jvy4dPi^?06`6li@?t@Lp^; z@&hRpnrkC`k`q%QSk4d)>&V8cf($QOBu5(p`Rwt)FO%) zZZQKNAmV=>e+e|3?c&(uB~;%Dt4Ip?;-fGD11*l2I&U*nwF@_`#OE7I2u^q_Eyd%q zd_8<)kMyhf9Hvz@67{QL5CQ%doTUw*7w4c%J#ll~A>lodT$?#O4%=KXTfYn@wPJW< z)ysHlZJ;|>a1-{}uU!)e1G0Ly{#=_#wQ!Yd`|thf4ahC$DqjUOeL<_In-dA?oG%p5 zu}&uiyWnAdF>JZ1#KMI~ZN4|5Pl@fRaJKt;^)Hxk= zS#-*F@!z@nx#8jEsnZ^^&47nDjjeWP#5P=*`oh~^&iw~oKX@wI5pPm9lLOO7ThdLn zLEyr6?y$jD~f_t*zqQIx)qz0f!|bVz9R-V1!zy}9!C zm3;~fn@3OuuPC_f8y(iGFL#FugtmnB8p0Qi`X5w6Ovc-fuLxB^f+*6Ew^GhBt(c>~ zkK#o=knloaAK>4{yMF2Qy7xOtFn9iDY?uo-z)Z*3x)jGYQ{IY+cAI7nSg16%X&Q^N z!?iv>KbG$+ExI!rTQyzEr+Y}q5P;KvG_`+4MiWsHW8x8!$f$11;@;``NpjGqxO((X zcj!usnKNs_UEHDA&no3Rs4@R*f{YS&{rU9;aS16hLdJM`iQM~QYeIwVuVcIN_tQuO zNjNh`W_hJ>UH53M6R*K6&o8)98@~FN{oK;?J`Dvw;NNooLYrXx?pz5qO?V?>PW#Yh zK#^Eu&Vndz0$15y=No2wLJ3G8kFpPaGfFiVoEIyFIa}k+u_1z~tn6Ute%{5sW2MHc zte)@suPVO;Y9Z&efzK@NR)-6&zGVz@yy8oP-R-!7g|UEYm2+ahG&IdPZYB%4oi490 zg5~)d;5i;p{=FNwX@=m}`-~a(fJxPBTo$iQwTSN@M2r_P}Ux$#^%LHD|Z?Ij@+2Zwlu+!db(7dkD;7|w(yzid_)i$BxvpR)0 z>KTDH;HgCxU2{jH`SIe?_8FyV0c^QHF?R^z>v=#n+iRdq)wrMc!4+lARzmZ0BZY+< z;rUbG(Ku8`OXH~yG`%wK*LrwB3R1;#nK*=i%Sm~de=?fI|1%Dn3_}iM6uZol*n*8? zk^hCiF%Y3jxR-W4S|tA|m{Hoiffm81)D)+f8-tc?vm{{^kyX~8jG$IRnDqKKh)ob? z2xDgUK&IuB^@b&gyoFn_QG{shQA-bg$Y@z5WSAb3)ctpd9e9z>mNleHreh}F`zcEs zYrKfjeILlf!+Tse_u0Y&S<8=>G%tX*@F5;TDAfRB=;<=pkt&2eEz1=+zV~gfz?X&e z_o1_Y?y32U|H<9Fj6A{EvI&}-!wlb@vCi2D8E-2qc0#?RcpC1#Ecp)RBixH=FFqwo z$;VFzFybm^bn6wueY;1z7|W*}nBDI^{>30orCgUKLZfwuB}TZ?#Swxl*4zi@dSoWL z!&*+((oT3Zq}=gV5Jw?iraP-;ti5Z+Zoc1SHn*Q_l>*$S?p)ls z>wet$gyGK7O1JDof+y22#AwM?9hkbe)Z%o7+F+8e@PXJQnkw`~V;Ao4)U zZGTQd=94YPkMkeH#o<J!_0sf7I>-D}xx{c{GC-;uirMs`+ zEQ8Rk9P`B$X!2GH@?U;MmV?g9%--=&NK4b3;!x|0b%r&!jW$-V{vS=({ZHlp{%w_U zDrH1eRuad^J{+Z`V-%IFbCj&?am>RZ?~EK~5lKJO`$NPdzoFC$l`T-p*Y`O8;Esw2;9d zYlBm5TU^Ua$;*Z}zbB9XbE;|#%qTS1^?CM&7U{Qhw1rZlh>2KR^oNu??ykvP~Q-eQQ8utC-)0)Gv&uC}~& z6)D~uvx~|E3*Xo;j|YY~eQB5l9lO+3hn5bbU43HDY*Sl~wpe$lF-tU#Zyv;tw0o{n z)S)cFC34`cq$hmiF!lnLQq<8U$Nf>AZv{Gjbq12y;VTb-=I@4at0)WlDd5E13PEqx zyyqLyd|glY-kIiT6)89){TnD`0X%mwf8XaJplZshU|lAqz~L4_OK!g{*b*o!d|^)D zMv#BDZGBLF&1D^H_lav!xZSP}DxjsB4a#!87EbkFAG zI`3}&<-MVjCgo%Lc~jS*Y4yP-QUSa2x+?gqqn5Jd&i<}rz3+!kX1%}--^%;pcMrV} ze#|qz6okb9b^{FOL!xB6sOiuo2_Efvp#G3RBv5p#0!^yhJGCr^S&L?i!etwvm-JBZ2Tz_;bWKH z%@?!n@aQJml)xhjKavvqTcDIDL=_?tpAclUE9>fLMTU-mKkvw*0ck_G$@XY;(radtJd9Tf(N%uyw&iK};-ur*0r`Mf!Gx76lf=fNo4o*cF zsy61;Jz^I>iMy;=Im}`=!{>~%6mK|dVi~%&b2=MRK9qL03p=j;ip>!Idw-1fCAxjA z{Ey#CdP zURk1fhJ^C~dblO{(si<8p^HGSzYb?VDFAv+;wKcy8u%ClH{D!X$d$dm^J#y$%GDq( zF#H{$d)SCLEy9BMzIpjc&->MEw5D-@Gt%%q6thZ#)$AKr;_k+mhCnNKNMhR6VIs6n3 z0NUT;sp#G@XL1ZdIV)I?NgOUyAtkb}DCK-NVbtM*nTFfsqCT`%@%D>GF$wF@y#Yb= z{vj+O27k^D*62q93V=RH*%%8oDeU__n=&}Jzy0@2au`Gh0CzABKOYwR!Qvc#0n-K3QNM7gI#C^A}fB67z-8LK`( zE`PTJalo0DnYd%yck!RV>a@OGIt&O^7rEfVe{WN2Lp}}Z-9Bd#VcEEYaPeaKAagqO zF?EUFzAThUiyqqlmK(dXKX9L*Fjw#~DwNEIJ$Y37IjocJ4gAy`>P?pS`UqzGT93=FlD*sOt)uD-IP^k?Zp3IC)}C_!M9t4)D>( zuZOq`mv!vWX|L7-#jP#*g)X7m+3kdGrzAyHeHl)xHZ3ChNk5G-h`C8_rB}}R$;UWo z7L_lY{E=9fI*dfVpS6ZT1ZMC2mOZ&?Zy{O@9qmx1$h-DO(_jO?0Wg~AsPvWY>6y1> zk&W8}e$yHGQ;S9FQ`m+^1zNR#zg+~gK@-c2-#iph_Vau6=&5YiqrR(`s@o%` z^`S2q2UAmL>=Bm#^mp0r6E1&wm29fbdg-xuDY_Q#N~Ob1PDvRXp8f`gfZiSYQQglh z|JBK#C$FgBK-;?46P*WzzbxRMzKF9kP4g?1pL4AHZrf7+ZTVQ}T^R2yHqXbbg5da*Z+t%Ma= zI3D60d~_{-+`FqT1?tRpaNE#cBOiV^;(2*rHEwsB{~IjJTjxL~sn?f~xEN422rx-Bh#!|XlO8rvUqDw&zn91a8gN@MANb8Z-J9n$hTdr%RDr+2ijX5K zV|cvdl_U-;Q-a9Y2HyRDcXubLcAPkd10awdqxt3pd5ip}AiXi(LvqSI1S*@ddTx{* zqo!ad75%EK2y!M??~ZkaBh;2hH+=~`8LF=jj@+KH3H(BbD}=c(p@Qy?!Q$b^YPLo;;i>O!{Ri@x*kwwY$=~tgie~v@*A%;R5o7gDYr(nBAR`W4zQA+ zC`+{BL%^kMol0tp>($v!nTf3vtiXmPFz(=a+pOTSVyDRjgH3VpZSOevd)Pkw%)PFDD~Y34crQB#P!h7e;V?K3 zS%Km#vyX<>h1j4kxk}KwWO)5$!Jps3HtJ5NSC!}PRek1kFyG)Dr`FuWzwTk@ye79f zmnqCtqK_`b2gf;X)@q+J?}dyQx0=P;q5rIMIuN!WVr@~8inZ>WdM>R+kj_zS2VTEk zNha~2o%hg(lz4@st~a(8&)(P+=P#y8I*8iLb1DM>fhx4Ci4{SHF7$b<$BY>LdBJps zul)2yWKh@sVKbidd)4cv`&6F4)q>X$lgq^5#xTSjs+heUE5Y4EnN|ie_X_SDF#9&K zU_kJ17TOKZms$t!;_=InChL#6g-w@>*`V5+OnVoI+7tq~{7bTR~eV+$BJ!QG4 zi^qO5P>3XZ-rm2pum1OY(DJl%Ghe|b6TOp(*r?rvi6m50(^=T`urfG%tLW}d`r|*yfD5S+#M^y!r~o=?V6L zxtT6c{H1-=pL4ls2*Z-b+-zZmP+>Zr6mlB8L+$nMX&2iRXs$fC+syiBcy~}^fBHS- zQ(vY0o3Es1J_f&JC0w2R6rY%jHGFm@7IU3(S9clh{$}iC%C4bg)aT!jr&K1%Cfbhs zwaMbAKfHP|88FhMH}~e2!s&`i6KyoEpp-8ccKV$OQl`%_ZB*wPVSEQn%f$c!heI4s zah(E!IviyNN3okd*WQ+dKNX2CjhVC%3~#7I73V*fO?_~D)Pwx0d1(hq^V@M3g3-$30mq>B3?V?-sg40|61|BHs=ll z>^7Z$^J#UWH~>0+1)2!!b?Tw6rL7~1t;@Bpq3}U_P_oiupwrfNHf=xKz)x|*mV3w` z$Y@NhM-{g`qFJsr)RTU6R@3jT9yuy1EOc_0tVCPE^CAgbZ++fiRCgV9gdB3Jlhr0a z-GnA7x1)jaI8v_T_*`G?oj@;X6XD+@fmLRKttfDM``kh%S zY}R*}iZ}ZKd^I*qOL#Y1N&eIx-8sb7(JrPY{I5szLWQopgiI%pF?3aO*FO;3wedbcv7{+{YA0Yi3fsF{S+X)*}eA+c#i zn!)5_UMt~M`YUKw4gVUe1?ga!qf5_C^Ka9lvBsG3_ma7ZSI{G$u@-c+9(abfhyXGD zGc>+KZc81#9?&x_i3b=V(&84$gz{j|CI0EcLnc9R^i97UGw8lc#Sptf=V~d$*`c1O zG)ib)i;ut-H$pn4Nf%D&-yE*zHD{0)au21bvmJPGP zV@n$BXBmQ}$y6cL0tz%j2A9w-aQ$}{rIy=WsE;4}C6H8|gk(<+!8L=w_ooIfn{y(z z)e=uMRc zd~#QnrDkrNX=h_cbQ0-Nl*R{zNk}GuRLWkQcr7m_6?fDqwiaV*H=-eL06=OTkZP6& zBHi`k{{X5-m8BoqT7V%0^d}L|7YE92=jDW@+_|gR=(Nb)d=x4lw8x=4Ijp`|aSpX@ zef~}j^^EU5boVjhvOIJ!GLgaXHA>9 zm@T_r^cFTXrWxJ}Spiy#;pQYAJ}Ums=s~FIN6;+*zS) z58OH4BC#*0o!9y_M^KULJWFZj!&0Ur)1?A(9LxGSrXC+Q@pf6#ozsE;VJ6_WcFHgI zxt{ZlBYh(?u600s&+mM@Rb2lfFN=%ywOWNUVz!e?WK0O5F^qdDrk++%C^oni>QduK@Mgz>+i`!-4w zy!N=LNm?_gn8lENd(>zMy;v+~21Yei9!_|4I>}nF2zOTMyJy` z8^fLLx^Vjwl=J!hn_Ja$J>uVOL0(^6tyNR7v@l_UJ3=2zf}Gv!IUeXAlmH{kVya`L z5!S}a6nL@3U=^-aB_!p6HP6&@c9FOwi+U}ssn1c0wFpIPUJzZf`hO2;h<73sfK*9c z?MRmL|9q$!Fi|Ij7wDlI+7tKTx2y*`Vtp230}g~o3WmqI8h>6* zIZPIL-p3}woYg-S)h}2GWYa1txwL+OSP7*E99n&uYL5%(U(cRS2{`sBy|~ed%|Sny zOKAzQl8v*tLAh>seDk70fudD6Xw-FV@(oED8rv$-H+~7D|`!rPx~(>uoJE>XxKI^mLJ|?!?CS`3cu8E zuaa#t%6_pZw)8ePg&5>H={tH3XNk z*rKRNt>XmSV5LR7Q%0y_`c`ZRKY#gyf?yj#chR3Z>Q_WmReM}TCCG`(Q)p3h!3vMDDs$5IEy#cfWNxONRI!@v{Bs3ru1MO=ri1)Z1W?=S&Ah6Xo+ zfx4wmz9-T_Y~buknmIWvzi9_*@MpwIOk5Ed{q_deS`&pnLJw3*pS@o zp3RT6k5?;;bM#e8zw(&|_SrtI?79s^v`|7hf&Dm^#hk8p$OtWie#j5ETmUiCU%A+pdVd+iT9U!hdv^rmrD*#dy(YuKdi$`a;Rr zn>f&ze0Snp_}A()idNj@LV>%37hR^e+{ktt&QR|mIf>g`m4Y`(bQn(gD?1n zM~2RvmpO?avE17b?Dsq>*y8IA8Z*Yij$*l zP+YfwxuBA0eVYWk#LPf&zFjIQrIxa0!D*rB!{CRNk=jWPJ5k!|bF3C|x}h$sz&2)c zmRB}rbv@--`M6CJWLoXsV^Tk+*)L(O+Qk8tK%Yvvoc;;vFY02WEFmDhV{}qJJ}ifj z`U@i&zfmcvnEuie(f+J5u2uk$mK(^g3aA0grvE22``_#*D@J=h#kJPzqy*`4_-c3f zdZ%D*OXck19n3K?o5u#xW8e`h9z<*Vj)MzdF15)~<4~rO^zMnj4_T61FZ|?nh^7ZT+QdIpPirHqq z(ziERV|-~t2fnSjus^iW@ZJSwejJH6n%ES&9`o}{l9EG{gfso)J%Ao#Rl35| z9ETHrRV6$nq&-_E2R$AdSC_YZkC#MXnST>lxyxE3sPNj^{*cnhSXV$$A zr^X_mwpseCP9&j_W0kB$$?fJl9#5X1xMrie_Kml3e#gshKYKXDNh5zTHd;DbXh85+ zk}sP4D44G)ComEYiyBmP_u~6$@^SWw{I3$vD8)^a<#0G8eEa<{X21N3X>t{FK|*@C$|q5ENAU2H_L6>~x;}#P;bNKdsUV!-!{1YZ^p-(dt;D;a7gTuC+xckx+ z4t|u5Rl-sV+k|_5sV@c0pK7F@uVTZ1!0f&`$|5Ij&s=$w*qNx(2+xZxl zoaq*B?L$mO!KT9MAtTz-xo{d|Gk=_2WpZd-dY#-FG>#+P*Ix}#`XJMvwoh94Z67VR zMEodY?#q_%`TJ4PNLbw1$5+iMI-XN`xR&QI;^XNO0AUEfpJ{}FOC85-CL_2%n37!X z-o_^lhJQ_|`h&Hqhe{H4kmSmEf6b~Gz;@R1?RTOW$^uTlW*ntNe^xkqjlyG$_><{> zFkFRuZ+5MGyN3I2w2Gsmyp&`u)J3+EiacT%W6Iuy+@4H)tl5ct+(gNw9olm5-bbQ3 z6g;h_>&i?GO?$&q6t*XLflMk)o$oQZw(%<$e zw|&?1fG^a!`C)?lMubMY`a{Ypd=a!-eqwGL&0p#)Ii!||BJXKu!NK4z~lf+%M5 z3z;xd_Zpq2W!Kz)>gHv@emZG4JNt8(U3O*ZQ)lRIhP%^`*{RjX21saFHeW(Oiz&|{ z0MC0ne6XO*$0a2#eEL$=|;b%NHV82`7> zbC;z@AFLkpd|;kup1(i;csu-8!nZRDFC};{ZXoQR#M+~!1o?L(SV&wtbHhH6e4{B0 z^W}dgKNplL)<5YU);?_K^ZeIgf&YY&B7g0@|BjO~Y(Ss;j9>FXiNS=JwV1gXh#t~b zE@(i*k6BKk+)|<(!HJwAhSSm&SyS9RIE1)?w}y}!&t0qA%b}ESC0AuUiCP3|?_b4M%`g_K>t@zr>`JyN1jIP2rKw;8co^gpH*%X8DxM4VrWbyPjeC6+mvS zd;VHzkaFm~s>H=Q{OhW0Ll*3$J?DRRvnEJRbHD19u#KCSB9#U(0kNn=_^WEDLhR;IF2nd%azK0HY(d% zrbz%jjbooU-G*TaUp=Gq`^-Fw32VlsJNEecA6Xj3Oa^}2b12PRgdA8q;7i{NdznD# zki$TgE2o6S^*U%ZwK}oEIzf~?P%V-nP;ZYd5ng#UuQl(vf$>yPEsqa9wXe7&RRQ!f z)pialYAlO-#c#pvy>8{JcG4J(Y5!n=h*vOdVhm^4v{hl)lfhlIkvaXT)8}sU-iY)E|X+r7U%C#=D9J4OCEKH!=;z(sz zC=%+adR6be(2vbD)Q-S@bzD61!W>tI$ii9bF=P*BU7j_xzf^w`J?rNK-qBnA!u{Zr zqr){T@Pz$KT>0Z@ojQ&gMsEhJ*cxQE;Z5~Dk+J?XM^W`YE>ezzpGBOzKⅇR7JXt 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

  • S4`3bqY0rhNit%V-N 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�TEYcQc2fB|mh; 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 + + +
    +
    +
    +
    + + +
    +The internet is broken. We're fixing it.
    + +
    +
    +
    +ma·trix: something within or from which something else originates, develops, or takes form +
    +
    + +
    +

    Imagine an internet slightly different than what we have today. Imagine if you had an internet where the people using it could create new services and communicate freely and privately - and where you didn't need a different account on every website in the network in order to use each website. Where you had your own space and could share anything you wanted with anybody you wanted, any time you wanted. Where the things you share in private stay private instead of being under constant surveillance from advertising corporations and government intelligence agencies. +

    +
    + + + + + + + +
    + +
    Decentralise. Build a more robust network.
    +
    +

    +Now open your eyes. We've done some amazing things with decentralisation technology over the last few years and have created a different kind of network. We call it the Red Matrix. Forget the old internet - it's hopelessly broken and increasingly being choked off in order to take your money and spy on you. +

    +

    +The Red Matrix is a decentralised network where people are in charge and the size of your server farm and wealth do not offer any comparable advantage. Anybody may participate on a level playing field. Cloud storage, file sharing, communications, content creation and management belong to everybody and can be shared with anybody (or somebody, or nobody). This is only a representative sample of the services we plan to offer. In an internet where creativity is allowed to flourish and corporate overlords have no power, the door is open to entirely new forms of expression and applications. The Red Matrix software is free and open source; created by volunteers and distributed under the MIT license. +

    +

    +And the Red Matrix has Got Zot. +

    +

    +So what the heck is Zot? I'm glad you asked... +

    +
    + +
    +
    + +
    Your identity is your own. One identity across the network.
    +
    + +

    +Zot is a revolutionary protocol which provides decentralised communications and identity management across the matrix. The resulting platform can provide web services comparable to those offered by large corporate providers, but without the large corporate provider and their associated privacy issues. Communications and social networking are an integral part of the matrix. Any channel (and any services provided by that channel) can make full use of feature-rich social communications on a global scale. +

    +

    +We use the full power of the matrix to offer friend suggestions and directory services. You can also perform other things which would typically only be possibly on a centralised provider - such as "wall to wall" posts and private/multiple profiles and web content which can be tailored to the viewer. You won't find these features at all on other decentralised communication services. The difference is that Zot also provides decentralised identity services. This is what separates the men from the boys, and what makes life in the matrix so awesome. +

    +
    + +
    +

    +Zot's identity layer is unique. It's like OpenID on steroids. It provides invisible single sign-on across all sites in the matrix; as well as nomadic identity so that your communications with friends, family, and business partners won't be affected by the loss of your primary communication node - either temporarily or permanently. The important bits of your identity and relationships can be backed up to a thumb drive and may appear at any node in the matrix at any time - with all your friends and preferences intact. These nomadic instances are kept in sync so any instance can take over if another one is compromised or damaged. This protects you against not only major system failure, but also temporary site overloads and governmental manipulation. You cannot be silenced. You cannot be removed from the matrix. +

    +

    +As you browse the matrix viewing channels and their unique content, you are seamlessly authenticated as you go, even across completely different server hubs. No password dialogues. Nothing to type. You're just greeted by name on every new site you visit. How does Zot do that? We call it "magic-auth" because it really is technology that is so advanced as to be indistinguishable from magic. You login only once on your home hub (or any nomadic backup hub you have chosen). This allows you to access any authenticated services provided anywhere in the matrix - such as shopping and access to private information. This is just like the services offered by large corporate providers with huge user databases; however you can be a member of this community and a server on this network using a "plug computer" like a Rasberry Pi. Your password isn't stored on a thousand different sites where it can be stolen and used to clean out your bank accounts. +

    +
    +
    +
    + +
    You control your data. Red Matrix enforces your permissions.
    +
    + +

    +Zot's identity layer allows you to provide fine-grained permissions to any content you wish to publish - and these permissions extend across the Red Matrix. This is like having one super huge website made up of an army of small individual websites - and where each channel in the matrix can completely control their privacy and sharing preferences for any web resources they create. +

    +

    +Example: you want a photo to be visible to your family and three select friends, but not your work colleagues. In the matrix this is easy. Even if your family members, work colleagues, and friends have accounts on different hubs. +

    +

    +Currently the matrix supports communications, photo albums, events, and files. This will be extended in the future to provide content management services (web pages) and cloud storage facilities such as WebDAV and multi-media libraries. Every object and how it is shared and with whom is completely under your control. +

    +

    +Again, this type of control is available on large corporate providers, because they own the user database. Within the matrix, there is no need for a huge user database on your machine - because the matrix is your user database and for all intents and purposes has infinite capacity and is spread amongst hundreds, and potentially millions of computers. Access can be granted or denied for any resource, to any channel or any group of channels; anywhere within the matrix. They do not need to have an account on your hub. +

    +
    +
    +
    + +
    + +
    Reclaim your privacy. Red Matrix is built for you, not governments and corporations.
    +
    +

    +Your communications may be public or private - and we allow your private communications to be as private as you wish them to be. Private communications comprise not only fully encrypted transport, but also encrypted storage to help protect against accidental snooping and disclosure by rogue system administrators and internet service providers. +

    +

    +Want more? You can fully encrypt your messages "end to end" using your choice of encryption ciphers and using a passphrase that only you and the recipient(s) know - in addition to our standard multi-layer encryption. +

    +

    +Want more? Our end to end encryption is pluggable. You can define your own chain of multiple encryption steps with multiple keys, and include algorithms known only to you and the recipient. At some point even the US National Security Agency will have to throw up their hands. There won't be enough computational power available in the universe to decode your private message. +

    +

    +We also provide optional message expiration as a standard feature. When the expiration date/time passes, your message is removed from the network. +

    +
    +
    +
    + + + +
    + +
    + +
    +
    + + + + + + diff --git a/assets/logo_antiprism.png b/assets/logo_antiprism.png new file mode 100644 index 0000000000000000000000000000000000000000..b72e2a2118c8da308f0837bf639b16d901e6f047 GIT binary patch literal 62321 zcmXt=1yI!A*TxrEVCkj1B_u^8q&o#cV(CUgQo6g51{IJLLApU$It7ssq?AVZ(cST0 z{xh$GMQAShK32r32)1N_Ts5~KzE0dQDoS&yum+Gy36aiYdODm_cDKL4e|2w;<0mj<7R2@ zV$I|H)+TFDj0yr_fGEpJYkOz!eDd-p(IM|&^s{L!@|r+XW`BIbO14wL9vF)!udQ8O zkQa;{{Y)NRn}jPkG%ql3COGkRK08wzu?!a0V=3Qxhfg2(6VXYOW*`0X(eDr*(q-mergwPKQs0kEH5>o&1|t?; zeq~7OPD_bCV7$$b!_}FieV5Ur0g2NqY8xAKd7l}e=xTBC42EAkQP~Nnk6DXI|x*`K<> zth47(bszJC?VQlf_fgGvUB`oz_k8N31_iOC`7=-2S$mOJ6a@nk*ag#%cM~G}L5qH#+b?^Immd>~QNe zPes{6lZSzF8+qWVi=DE1$En#N;NHiiFzQJH8_8?BS>7KIXD{~M6kB*3z9z3k^hHz7 zw47>>LU@AjLPFo2bu1t53i3oW)0571@oUj&i?Qa zma`j~>`U9PD}Kgu157@LBs48Yu6j?^Wey@8WFnakTIiHao|0abJSl1$AG0OO^tLNW zDc@L#G(!l6C0662UY~XyDzf_a-I1BIzxWzsdw!br#N&nT94+2E)-E0Gx)*u$(Ykah zvW_3lU$02*D>AZwtCEAwFa!yg{Rl3O!omvS;esjWzLYx%ZddUGqq2o2DE@cek#F{o z2nH8)pKD*ka9l6S7fFzOs;R$>DupNFV!~iFnWy+8oQ+V_iCyaJ#Gb9~Gi*O;!lN%d zQiq7LF8y-IKu?t-2TFZ)e&i7Q<+7Jvf)(c$8ucdTg8lhUFRluq$bs)8-keevOIvTU z(BN8~AO^1qo08d}@}Jil#JqS@48qT?#81BzOmUQahx~LnG+JhY_V-eJF28~FrwKj` zbXo9c3ig`1ad3e=XQ$58Gd+8?hZiQ@pUDWTa+21))WZOuJ=;c=^f>=HJdCcw1{pm_ z7?$QKFWcid6!bUp4;Fn7^4O)Ybn0PmVK=MrA1&S()pR$8!(r<93Ei(o-&o6Fg*vri z?`EiBu5J|83sF(wb?ZzqIM4Z$@LW(D`RJr3H#7B!J(1HIfVA;ag-@yi8|59my3dG36%MD+ znq#mYQGC*?$N^4@!Y94N4W|2%QB9;ft#_-|2{(!w@)=3d+h05%yy!K5W66kF64 z)#nJPs1A;42>c6BOcsAjR@%6e{>)7eOriYqyFt1A5^{FFeori=dEu93@+J8O974M? zXL0`SZXZ`nrC z5U=u;PUId2Gx(_m;;-{=!l~qKRooNYZhGqA&pxXSFJ$m^7=@p&y)+CCJ#T-j)1?6i zAJb|;UpM9#KiL~UZm$mcO(xA4(?}XLtI%S&LZRS zv0(9Yu3FQ~h>2Xm()PO0hc`BVo*glSCz|dlOA8O}%<^Tl9-)CNs1A*3kZs3^StWXt zuXi{dfB0VX@Xf9kGtUmN2S#*UE8|}Ess&)wtkNNV6TBl!tZSxWi+m|NJ2X;iYG?ev zA#1c9KPmO1c{PXE7ZGyMNR={$9EIclf`0(B?D~I2Q zqL@i4&28Fqp1Bbb!ij1LS320dG*w>J05%}?VA_VG9M;VtePtF zHQf$`6U2q_GkVzCYBS%p^r^zlhQ)Ef(Qwgu?V=-af7Oa%WGw(~MVlOeZM{KV-9YP~ zcHet5z38CCfLl@6d2z{p+hLcS?eFPZHyy$i9y7OIIQcGZ^Amv07Ue|X<=LsA358rzI-b50i=GMzS`au(s7Z?zUs`qGnD6XtT z;lEfl_RH7Y9D;kO48ctt$L2URL7KnSM)HYEp1Y&Un^s_$Q-XUk@(QsaPo*=)T(YDZ3B@a8Pkb#T3 zQZPj>{xTbRsjO>q7Rt01A4p%sc@N3&Wkw%1j!r;-h=Y4ln{7gjH_7vaE^5zOVp z$v84pb`rJdy7K)oq-d#3=gD;jMb~n8VKWUx<6>PU&Hp~@&Ap|Dq#SM=G1w&}XBsBh z3&yz8`2j!TlDwz-E+~@k&fg#W_krsp9v&W~xHTr>h0L&;Q5$hRL`aCx5cXg)tt8Kjdt&T!@kF)d!N9t~Xre3$60{TxBITakNo=MZ zqMh)~C1c^)l{`<2_;DW}D!{q;MkYMI3TwOy&*QX;c;jXjA!N#pWzv= zsjM0`RtdL;M20N6`;Mr@UuBN1AH1blVFr=42ZwM6pC)JrkA(NS?~RIxW*A*EFRskZ z3894-j&qK8dev;GCBZvPn@0A<;_ot^B!{v~-rBb{m_?FK zQirvtE+iSDRPIZ(YUE7aPkD@2h5!3C{h0LjUok6M3(XaNq#$2GLRmfvL|#>wdHZ8i zXI7hK)rV?arpSdDK{u1+QaOWPePt`}9S4!lT;6r^hq~ko7<`-3ry>;deauc1TCnz8 z`|qlFhh)@4)6VkXd=;J)<1LNo!ZVT`1k~Ki-*gwcxG8yoj9z5l5W}+78wAROr#qJs zgPZrL_V_f2+khqf@O&7hH**S^I_m11vd%!}Ge;e(5mC=Yrqpc!Ty)P> z4wo8cKN%+?;oQg&^pA)HS-07}rN6iMA37tk^%K{=B&w6m`s+6zUJ=VvYssRCC2CcT zNZ*ySED-9lL8Y6FLe{FjNRyL2it6i+BX_Q|G%c218Y)|2=Sm+FdKV84r*D$j%-LT}2gL_d`wIGTf!l%o>McucPQW~80ukkWf8p+X zt)=PW!W5@wUX#$jA#MMifBQ-2-BsRI#sGbhBx#{QAbm2U_=X!l`~Kg?;HQhnQZWO& zT0|MHBih@oFXRn82qT$%#;wA||8&e++S$(F#JX5@DoyT4{&PM5TSQ^OoFwcV+S-6w z^qM_b-ic*#L(LGf;4l@g`VNNLT&t2zB}qPiTcz-GW|kbA5yulVLHrs1x6}>kC7(oO z2$T&|MyZYRy!?sK`eXL@!B`<}MBND%X(0+gLP+QUn!3T}ki zG&4z3*>^6Fvq`5Gn2mx}n<=ni%`WhdW3REvA@>XaDP8#&!0_$stsY{2Ia{%}ySPlZ zM!2L1BqsMAA|R;y3S>S>_j?xmO4|;M8ijOcbu7WD$D1zlpImMtY7IhD!^VC@=Sv8p zex;U3ysZt#M&GOS#(~fY~yrQS{d}&bP13|F5pgy3X6n z0!Gx(zsoH_VkfL`F}s$b<24Kl0d>AneC@36bGLXU(tmmuskoz#8iE*)7i#DX=VCOl zjom5cxIf|Fm$k6(suz|Zkf36LRiZyjJ0XJ=aeqn7TyjCh55A(vN(+4fI75(sWsA%p zRZd9fp|GI0m`ca>l;!?&`!QzEBduu4>k>r;x-Amk?L#B&{h_2^GgXAmPK@l zW;0-jhxcn^F+#tqe(7#1(-oI3Jbb8Z4@O42eJaCR2Bfh?EY(;;MqvnwAZD8O$g%);@u*pg+b7GC_^Ja@ecyN`X# zVB!R09FvbK{CniJ928Ly6)&H!e#l{ZTP$Kj79Nau7RC1*zuj1rA?0Nu z;zHvcNBXG&NP?mGztjnq}Tto|vWQbm{Z&eHppJg5R_j zp2jC1xbpuYcDY?=3Cy-mXE(hU0<~6bsamVC8mYM64_MK{N1YiZ=riQT0LCS=<1hcq z?1=;HpZ*u7R*82~pBkj7L*dZBf2emeI&k_I5q8dUMY@NjbDm=jQ3av=GT^eM8zcW7 z#~MeJYaNCLKkMX%`7Mz_g6lq`+H_n{KBTZL%s2;m0nCV!F}DbWHWVfA^Iq5w5i+pf z&;%$+T-1ArmpMvZFETbX+E$YkU+-@fc8>*KwjQ+B)=g9@$y8*alXf^d>tfgHf$i&f zFG{-`l+7~R&qPfX{edqrZ@9~OeEx>~Av2KpG#~S~(ZC(Xcz~Q&Hh?C0Va>3>Go-uY zlMVcc@tPjr-g)iBx1dkW6ZmGk5YooYDEExFnSGkZCf88(DM4$aa~%;R2?rsRWz~;j z#o)0;ZdFae#rBl2_=ce#zRg#jXKcEp9?olv%d!B`wCr-Y>m9ato7j1yB1aM|&pSdV zbb?GuR#qOvWtM^*z3T7n$n*$)GP#G%l?~zGvo&6t;&pv78U)GAXJ-?LWV%)FLj`WL z&&C9UH>Bx=Bm@SUOvn5?0@0kRc_gveUpzMwVW z1W8rwGRMfw;;K0b^1NZ7!GB^vF7MY~RWi~gMNxOqmZu?>yjWx4Ww%Csj<^Eh{JW4% z4_g6$hL(*A>8SMm2O<z@~%V*lLJ_roYzVj#_M5JQG zGS)DI?+@n9oK`BZ`hfpg7@a+;w_fKwi<^`WXDBhHmv<0K@64)_8lY7j^Esb}wQu{{ z^~8jG|I;UqVBiYN=Bon*wQNLo&M7Ir(P4>VgD(?q#8*eL7Ayb6a4%Dbsri6xoq52d7cjzH6k-V4hWJEyyQ= zMiEmsNhAWcq4Qqah#sJ@oiv*Zvw^Hofn`HmC971tZ<_x(PV*Mk!E2lgDo*b>JmeHUDDakCTCPG}k(?`e z?yO%Ut!8SEsyQnqL9Kk6-E)f@@zS2D#fnRDr+L8e#(sOzD1)P;`1Wr#oj6M?vx5u7 zH^V9EZ{_3z8};9OlvZ^+T=?2|0cy?eon3}xJb>K!K;TOn4=w^&UPgSXu;7{pi21)asW)Xd%+N;{e4gG|>s!fin@%wqK^S27NW~>ye{L7g zP7KJ%c8e5@K?7Tc5`qc>e1RozG$kYOg;jnaZuLI zR{P&EBQ;TMc^6p?Id!G1(0;*jC4EWq{zu$$dgSk8z>dWs$^GdF21WiQO>ndRm{a?v zk#>MS7k6OxRg<5FrX+Fm(~3e5t$Yy-r0l0M6KP22VP*CD<@64|i)U0>oR5k5rz0iy zZwF#ud}*V{A-_k#W641RO3L zkyTHI*FJf5i;7zX6(--bUa~vap$UpM$8zLl*a$Fg#F7yQAD%~me0-zAdkEtoCaMd&rDycHZueX>6ycZS1n_FWju#sd%V0%(?TO@LCB4CiaE=i$~}kr>@c z6lfilv~U+kFOWJBUg`ZODmzId5)y`xT%Kb)fx@IW1BCMbPW(4#Uv@ajW72Br9Kqe8 zWP*T6(+3tK1$ABkG&dOdpEzKi8n+uJ+<%IeziD8@QH{Of@yay^yT4ITrq6<%HyWSR z#}HZvRoEWhyWAWq(-9khLTrvVh+O)%N_UR*WfA_N3Jqjl`D2-bMy$jid>_YB8bEV` zu4LBKZ{!|;q+A3X!i94n22Lj^a|peS37`va(fwQNF$G#ocdpjloL6^>7yW+ZTju`U zO=|ZE@kHkPfFb*d;)b*EE9$<4F*eH>`WP!rEn>PH4CT+gey0Ri;TanHr9p{{P6(~e zmws5-`zhlGMgl4j<3^cPj*-F5bDGjd`lEQ4Cq>b;_t2FuVioml3sSpLX)!;zB_N0h zv;}+T$@pQz8c^vX*@!_74t7j1s68w8K4Jc{g{U=6;%$gP_t-hY3QKU)v%Hw^D|jKO z;BGniZ;~wkd;uyeL!vJBoHU`1g^sVrG7K&02+-s0-_mvnWbANnTxPt=1&WR9^OG9F z*cn}HLr;{_dx_xMhM+DaKicoq%Gf)(Dl}&|hMlfJ0~`{<@iTmJ5)_vV?Yy@=>e|kK z3A+BdjL2%=T|Y`=T8hlstlmPKy}oOJ@(}aN`g3YKi!!t_KY$TV6ET9}8lw+hv3UH9Qw3=*nAaiN0UmB-w7 zKT2u9TV92;BPJsCO%9*#KW8dy`?n;l6?)`hsCo34x8&;0eZ-X=-W0n7mqp_A1fj4A zXT!3cceD$D5z07=4={*hS0ye#BOQ^(R1`h=XEy^7#lHSe?6SUZI3+un<)E zzS?Je8Jt~4_}CWpAEkHqehi#ql{vY^P6F^#6~A8v&HkgDjHP?1HAEJYMK3Tn=9Vfv zwH;^U9!An=LF~YWBjwH|{1H)zoWdxW7O>BKQRr0vIxi;-5?o@`9GxH!C>zt|@Z-uH zKdRcdKBdSitlpCM0l)XTG{0c|^P!QqX1}##jwP!K^%*b+B+JNSM3O+P2pVqhG5Wbz z>rBglsp~^hv&%+kBd5w zOZ1vZ0p(!4n)$u@joqY?4k*vv8GdA-WLAzmNDD2b3&|?e<4$Aehce_GxK4Yj!BA-; zir5X1*z&4(m|K=|W{XbI-e(ff^Xd0<;cDnw;4A|)=Ap+a0|1&cCbj|sLkLY7uB z8w$>9NHwm1tEbf3F#*F)NLE9gDU+MNj!$R9tJ%d}Mty`y@OHVJ^Y(And*tpUC6M8; zB5;B*5V}*Fv1ImghUn39mh>s%%_-JDbMermC;+bs-O``_(l!oRv4pHzLQjuTR`<~a zI|*Lo@wzjHn1!NsMxuw{;e~@}IXR69U|xI`;pD)k?+3ya1D}J@M_m8!1%SW($?EY@ z^xnDoXE7H3hGbCo#$DswGJ6%OsdZ!>lFC1wG9lI;HYMPqI~82j7+h9~VgtS!TTH5+ zgq4+J0LYB6MBl-m4(L8Sii1fHvuC`3!G=3K5L5*UcnX7^)b$u?BZX(BM-a0Y30jXT zK6r_kfBzBkH6Zj_(z32_X8><7_Zu`rR=-l5i-5d5s1WPDFkFS&D^L?29JHHw>FJo5 zCO|Ju&KOkY*R26pAefx+=wc|KwNXa5$Nv<}!jE}Y?yu*j-eaNxwb7)cDI#4ev+vX| z=jpQh=P_HrY8?vcT9#YS2q^heOCVPjcAx$U&cCb-{X3&-w=b4qfG~kncMOL;*%#$# zlC%}Kd{m%7V0RGkPyC~>_;m;So_)4b$OQ87yYC}x+JQ5Y!U%>jnQ@$SzclBgWXPtS9c!7{{8hr8k%Eq61F( zs?DWU{64?lBCo0?%}Vmw*PFGuaZm!uw8O;)dXC~H@4UtnH>}dTnN@6@#%djyz*a+K z+DP!0$5J0Y3qO!P#Ud~4M(wZ3@fc=kg=aSSwD-T4^Z)U_)7edhN0OQvxK;k{;LX&y zgSxXV1_Q1LJH%GM>>j7g;}24j;dtL@54CbIh&PMtRaKsnbQbvf{kZnD=S=10iI&E! zoO{dIXG~lf#PFi6gX5hD0~hn9$0MN4s@>sUw}`J9R4pD%I- zS#;4$Yf^d&c0ywK-xB;`G>O3XQX{(TndW~T$0a!RP(z-b(-h1F7<6lls!whB0L8m& zIdIfmaRv|YN4vN`x?d4U)XM)b6beRU3fyQyij$S*>uuqsEAkcUJg zrcqe@yu!oHUDTHH&bM#4%By8l-yq!DXqF$Gti9m6`lH%&VHFO!hX1%>;Sht0XXl!> zuen{sRDu?wjrp1id^gPH{WU^MM_OG=_ESqoFuq7&giHEjJ`~U^#Z`<4Ulz>5&>&lv zj6Pl8^Zj>CXBJNxcbxbk5ywH=>rj~&TWT|q;9Fz*P#@>l$K0ALLm%9P(w3wTZS}_` z$j|fSXm_nBVmFfs7|s8&7l|jQ#hNxTuQqPz%pasuokj;8`v7QpQM>;{h=INLe^{-)*K<+z~78(G<;93-WD_-$i|d?FFS9 z?lXr|Ch?!L(g!~5kcDKY{Ty%o#D8Ya1DI3|P!?Qt z*m$oZ(@&w^UnR5+>i#7rQNP_x9;{Prm0yNuS$8pe)QQ=9!P^-2>@XI8j6-8r}Y?`$@yu>HuxvMl9?(aqNNyPw6Pr`Q*L}k zM_9tW)}H4SMz55-fSW3>zq}33xh9h_g)7jR-K|OIZ;Wy z=-x`ZcY4L2c*{g}DB^5%EAH?d#n~;mHolBENzVJkC;p!ltVEh1WYx_6eQ+nW??Xm> zu>A=?K%3&{&wE0)+)tH&!vUif7zge8c4O&X9b+1k|K=y9Ov$doE#{n0_sr@Nw;3F9 zFt`e#;DsQt`!IF5N=seNRS1iFQ9fLx`Z4rr3LQ)a&%1t>iB+9OZ9_By*bqq_Zt zOgTs#T0k4h*Etp^^|{{-D)R8L0Df;3M$>$a-mjk=hq9ppQ!epq7hEeTHPoB zULTMNqDTh|aGEO6k1nH^@ya~zd zK+k6WYI(k7#&x>C=VS^_ir)!e{xAdr;n$~s&>;*^lz>)XPf^Tc<@0+alzY?E-uV@a zzU)Zi5m#8F=}Xzo+a~tiSVM3xrxb0w{9E0BV81Qr-zl&`-DWUK5t9@m#J)S?vqe^w zi8hcddZ?xC^am?s)u_f0Vpj5$k>VvOuS&i%DX_s*NtG>o^>n;sQ=ZT&YohJ#Dx*i- z(j`8s#%1qm{@F$tx+GdD9Ywl7eP<%wIs5WG^Tt%7b{l;c^or4Xm*&EBT+Gg_V9*mw|R3VV_-z6%3Ey=Y<&z&ioV zmkeGvM%oU4(7XOa`oC2D3ePEyCNBar^ML#v4jf^Ao4SZgN=o6|1;k+Bw}hz1_cH7r z0(>{q0?O?2Ls#Em$Qr~aNwx=rl5y~j7x~vFZ?0j6tMw>C$$;>J?=;_1C1e-UE=!U3 zC7Ou|LEND)r_WScnXr*l2|(vw0UjE2(d6Qvu&!?v37^r4fkyyQguGBh+T-VRenm*i ztpEGFnDd0>>H`eA=t;^HNf7QVWG(nSj;u;%p?=hSm`B5lLgvxd_IO_; zM!~?WDYXN0&$M2$xP3<1@>gt0{%#ElEn?sd;yKYYubm&wdP?vu_21W5%@jfO?sKgq z{c=?te(orhNbJjBXJf~iuvB#T3pDO-Kc)Z!~PGRtHukt z$=WL>XnZ1Jd)ow1$aWtr8&3iyRQw_e!%V_XZSma+8A~oavN$44xM0K0cR{B{1j(a+ zq6FzXwtjm9yGpjV1@@4xqwe}fKTz!h`>tU~>Gmw*NiV4nyAaRSOT zij0%d{r2?N)N`UH=!2r_%2jAbyN;ib1d6{JKO27hr153aaH%Tt%p*YK$-ZmH0Z%?O zlnOg%2$oOsY>b@I>qLHXn4qW0O|;0kB_1%S9{qo%W6m!U!nil;x24Owqh7i(aG|;Q zhuPf2WXIRXyq+{V@1D*4PDK}%utF_uq|^Ajq2SJCVH!kKQ$>*aNB6ECUHG)$rt}&Y z0{pNMKQY_USF3=T2kVC)f3lD@3de6}bfC-c{zQk#KCI~@?o3=+nY77&KVuLZ(xEV=Rmj)9MB?=qu+U?QoKW{^QrFlnR(g z9dq44~jYK{^)@bnPun#l^+7GgbAcb5ll!r- z+NGze^n2#T!rOCxBSpDM)Pcg4>D`%BZ#IWw^*9Oty)>|}VlM>Gs0%* zyt$h>+`^ne>cXzGh*m22^Ik&kL&?RtitJTm-w0J$lb);lm~dLvm8^g=Zg_q)QU3V) z$8U>Fev@3M#^m97Q>k8zz|OkC(Yd#357?=Ul@9M0dQyQS z^El=G3;7w@CZP5oFBA^a2vdQAz{BW1{GmpDB{bsvN~vOP-qhu08LM=gK#|>J>T&j2 z`9!6+SbCP{@?`V3p{joN2#HG4IbJ{Nz_wpm{IB@?RF$a+RhYQYwCtHI2E-GR{G9C% zb`pzSuX>6GX(h>xJk$yU_xxL)n^T@fQw%o;RuPpulq3?0#|4%(xNB<(^V?9q?fzd;MAX-?Yc+Dtpv91$CW)$?#d{xi`R#L4g-M*Sw6oqa020>JuW%!95bUi~ zmh7R13*+Z5}XBLQ6+Kih2ERe6bfh%eb~?o&qT z)Cr2Sa~;+E|8&>d?_5)d=LDSBi!?Tqunr>3yi6t&uKmevfEys%=adin*S81}j=l}7 zI}QZR3iZFAf%@Fc>j9oRPUz}0ik#7-q+@k!e7?P-yt(!y_AokbFBJA2r9gNP7YTjG zlD;30OF_XDg?xvh2HQE4L$Ou1x9oGu`sIBJk}ohX*7YY{KPlt_nab3 zJNbs=XC2P@h*<@9@gwng*9y7wdD`X_Y^x4o*_4_>6Mxv>msN^O+z56FpIWPbW?m;1 zB@3QQ-EWK<(61-vBn1E1~WrI z9SGdI-8qe3jBhTUHJzo1vzmiYTVevdg3V9dUNg%)xHmb51-^GJZ$}kctn$q6)R;?G zQXVz-ffTJf#}o!E_&_%Sj{=!9cvGW`)^`2ux)R)0A}7S7WdPPh=ne3-TK}DEmBq#4 ziMpQLA(ps!-v5Xcg{veV+zm(j?*;DcK7j)^7<=XRc+ys?_^)YC+Dc$SOr#h{hhlcf zZ3;krJ6rfDK9_(l zhxfIylQe9_1cb@dTr%tCBh$v^LB~H2rNt!jR%0+CUe@`fj7@sfgUWK)L$EP^Z0jgUMl} z&l#M6xBE`iROQW@(U4bDD(CVqK79kjQz`b4^#iQ$Wn}_@Ea$H-#ywj;g5bu~DCvu0 zimM7St$c5_nx7^W#s||SJZAYM0nc~0Ho!o$SM>+S@njz6R1Lh`6Q*9dT!SUOjNF&6 z+kXtm^|YC_M-5in{p)cdcf(PduP+FmNlWeZzFcDGNd1#0!9(=voL6>YgSd|?d6lkr z3SCAR5tCbzmx4Q9qqKO0?%(3ANc=qmm3S%c^JP^b;*_kn;}rRZzz74hZ2&jl3}qm* zO3=k^_x8#T2ae3~)CX%R4=(SlHqGMO%Pp$4QN4npGrU)?F0apUxHZ;-H}!fuF0&t5 z7CU~xWX-#)^LzC`ub!HHb~t0AyC(or@(=N+ z3X-%92{O6vmDPI0ZIr%wz-BaUHtv#AT!*Ncx+alucw|d=m`6Cq-&$kiunBshXaCuV zrw@(zSv71d789QkS;L;*Nhsa!^3U=kQ1W~S%t?5S*|Nm#CkuOG&&OSdWj5DrzvvBb z8SRl?`+%o!Ial`7P%TK8+3d@XPT<+{Z;<-Py?~pEdI%E1HIbc%d+!&XBMe8U{)IZ9 zeWM08TQIj-0+DRyqr7PigtX?AkAB#j98O0bY$t~{3+1NX_ezeg_NHoe4gZ-Lt$L|= zB3wr|UKqu$dnx~ul){|yb7fXs@SB#Q*IKd?Ou4O#EEe<$$=uoOTgJbZupCvu z*lAoh2mt^tN~ey{C4fMG$BtcbEn0e0r;)J2CJ}?PCOU@0B-~oc-p*f%qF)Cql-wv^ z8q0}lVOi?z!)!rfnF2@PB7S8pq0U+skdu1V=o#aG=^)l$_~*S zCdfVv-}Z9&s=c(#2^TaWwJ6yXs9k1Y8vi6r0Et|-@mK^j*nnc!gv>CQbN<=w=%}@^ zK5AwBmqMbn1bbXfUOa{Kn+CQ0KNYot^5B7c^ImZG>!}A11vH#ts}Iwdv*z5C%(z#M zpb(@v+py(P27bTPNgL0JCQ8V zt#IagFt1%*DCs+5tK)z4Lb8{Qv;cHgIJ~?LY>f3g=98>F8jnVTXqUsBwdRQN8e|?@ zu!+T(kY*9y%>=XB%nRxxOEd`pQSRLKV*(oCL(^2C_^-S;T=~xQPgx=kb%ZjD^ncfQ*P_tw@d`+{A9!SbrKf+k|8{li#;Dm z%A5!-*@+|r@d#!2wZYQ~f;T;sOoXxi9#1nKwCuf;VEtu#$b^f|w?zondb2rzZ|+{0 zxcz;aPYmUGbAfRj$RlP8)Bd(5L30#Gq~n-{_PRvlcL{&f-Fl{ba{72@2@X~iZ})R{%#EeF2lv| zEc19}G35)1Hn1um8_0=yBqDDkcJP5cqSoQ;PskIJ!(X|IH-@8V$aw1bID+wc;F##j49>?$1r2yy=pY9 z$_+kVe2p;*cP9~G;X_NguNhn>ir?}xq8uRfv2uH#R}BUxHThmkr*RqbmW@P~d>4)Z zE+b>iTOSia6k_joT@+@nux7haCf`Xj{hP6aK$*R^hfG=Y{iLQBMQX;I6#Gp@)fZ$Qbe zg@>LA5eLO80NfQ(Ll$fW+{**r-o&)c7DAK0QsO zMuyIYsc8P#9^Ymev<8{UhPe#IJtZi+o8xT*mSEo>g%k63s18YzuYUhb_PCELs{}2M zi%BCU0S`KXkht3*LHg6dSsL=63}dWAx#fHAMZ zt?3B~AfLF0$+qXKT<*`2GdtV5{H#NH5CqHf`x9sq5KkSBri}tpq}5Ws%r|` zxu$I%^9BAD3C2qjL{>li8iA{$x?bF3;M$J0YwjwNBwO zycUghV&7*57~p>S>}V2PFDZ$6$oCtv(Hlo~G8Tc!{NHiRW=0!!*KHM1AH%7@hydh4RgNHQ>MfU6u{ZlKa3R_xBdam(pLh}K^IIO=u zU+{NwVxPK6(pbq1e=DY*kR6kakVqR$iR@p0So;&T;|?^4N`RWuheM_o@^aaWo?H3R zP5a}!VTSmdfXtuFE@H9oD~~Ux-us*r9_VI$7A*O`X`i-<0zw_;+cUP2e_YyZ-&BL>``rTHsQPoHF$}_7=6^28<+?`=DDdMJ-6EaZK;oi3o zogEO;s3RgXFtyq|f-0_QEr>)m$!52)1WAE*eD&q>NT8Yontgj=sF(0>(2^jyu$qMO zR`J=ThDgZ8_3-;fO+qM&d>n$YaM5jxL$hf4bnNOCVV_J4QyHkB*^TeA6sy`xz34LB z{R=FO<-NsWTE0)`e$X+`H}r{S3%?yu(sw}VymJc6GG*5061U4caK60isOh*~iuAj( zvyBet@@lJb6!UNONb1r4bl{2kR;+$S455i8-Dnn)nilE8n=P4NpL!ZP5fa*mYWR`!Z^IVD9 zuwq7?%wLkz#$lJ z4wv}cVYRA?_rL5=zQPz;6x{UOWo>UfCEoaOc=3U(q|}52ot6JdVV2>UUwwAIdG_6%J|3P|vIleN$j*2yqL0V;KOX@CP8N00uGyGXHdBUa33SJ!mB+QTW`fR= z(JRhDgdQ*ar1=tXDOgljWM#K`^FNMof7_zk*?kJr3F7dRQ19_e);0G~P!<$?j#wF>esB{5H@j2@YI|s^>~D~K>BK$zy5vK%$wz@y`^Z{J zE)9!@p>oX72)p-amFV3!!PM<+jpBD62OsVuVfHB!Jv9T=FFN41tqeT?Thn78E?HyAti1*m+w@LfUCc=9$V&rQ4FqNwbYQ6)qClk#SxVd7!7YmZB>W76lDGu54V^YUG8#-$Qf`=mXUb% z3Ye0|CawrDamY{nbBp*w^K!~@xgLLG4O|il-g;(b` zzzYFv#(s}{*L;W z>@J1wlOGc^3bgUQYTPdG)8F5zgWd_?lqm);Tjso3m z?wa{3Es&7aWC4d#jx$=GKIFAhDrc;aTyLS5($h++L+~RHz!p$4=|q6V1q3Xi&f|T; z)BW$g-!<#BUE3}_wu2iNCxia+IcP|_&mH5Er>M3z|)L)%AJo$ z00r>8pMmM1$D>rn>5WvPHPCdGJ>&MaJaLS^FZ+X^lHgiRi^TY73Crxe5<=q^9gr2^ zQw|L1foGw=Eq#n_NWa?^eClbCDQ?W9VS97guEhmCZGrVCOl$pG2snGC6T*?MRnLcc zW{w1l3o)U-@W;KA%QsT#5YG9&|BaRnl#f&kIornYsc5{43vbSUDj=W^A_VBK-{(w6 z(}j882t!VFGr(BIZ3p+0K@>rRRWGVTS$kncH8&Mm;cj4c1`Hyay3>VR&LHb;Bsjf?!W*+z~733Z(a$}yO1k?E!BF*8h2wWcl=@; zw$~DYo(5~g1rn6m;BAZOP11hg9oobkVm~`w(tm;o;puCDIU+x;>cc3N1A+0pbpuw= zfZH3q@nEX26nl|h(t4Smjqu=@qmeC4TTAw`gx`3PG@BRq-24hj@esaXm_pC_3ml7^O zn~hf%(y+|Z^I-AZWsxMQ^k25HG~aLu6ckwOaUY?A8}KhsN(xSY{wWovhgor&>ty^- zLZxePIXORU_4o9y`kcd(bbM@Fu7^w{T)m$`-kCi z;FBqlHE&pI*o!a@xszmsf@#wQwl+ikdrk;! z$CWDu9V$=R!O#|#=?8R7Am*Gc8WFDO7UQvX{`6p!p*ss<)VUCuzx->fZ!|hW(B|bh zAG0JyK2CamI*t7vH_+ha)4%ct00#XAIh&9q1 z*kRv3`~Xm1;fHSmI~rX3i%xvN3YGp1RbCjya~KPJ7^%e7Fy^lwOiroP$O{5e487|{ z<}qU{S>^3~eLlh0{$T^HGIwZE&?bvr57FB}iEd|l(H>iPGwt~FOWG!9qhhL!eq6?t z)xK2S;@kmKW`A&4OOMNNf-ivKxmW2wAg;is8n{m( zJSXTt7Z#n=DxquWNqx7@Tr5TUJxw8b)`Bb_j40nbl(adgg`2;?EnIIWca0aBlQGZu7Wv3-*RJ3zutK#!gENT7f7AY9qeLEu91C zP233sB$g$^6{<{j^!S#U5n!lvgnH@Mo;SNlS182Kx9$cEW6vyhoP9Vecq^XBw$8r!DyFsa}* z1Lu+VDGAG&Q^p3G}G~Pf?!|4xCERYZC`968yso)cYC849*)^{cMzFdjGeee!F z{yjp5*t4&fi=KY))NaYaqnel&9iCZgJzP(+yZt_kbeRr?a~{T=YvZWr@`$Hn;|YF$ ztQEhQ-m5*m+TCS#)wa9Vf^01xK(0daP7}M&5B<=HJJ0> z2m@6t05Xa8wQ>7(ih?|0dfVmWF0rt46%G+&$uGc(KVa3Fwp* zYtb83w*GBD!VV`aFyt7R$0VyY0Oi2K!15TAgLQcS3_rJh>Yg^62apK#>s!lpaD9=NfH!Y68 z=xXOMmVaqpA-;bKuV_;E*Qfc;j1os2>*}uUtj(=3_pk+K4HCRo|9vGm>6CE3JanL%kN28f!)Aph%80}Dmzg07 zvl|7T^S|E%h4tZCY=UBpZNP*SjZf%Bb8v@qhcK`(Z?KS79=DK}Gqw zv3AQ*J74|&*lAvPlj`RA^z0)i+HnRRV>IYq-{*Ty@Wsl5mJq^~o=1=?J zB|L3U&5lNMu?Xy-H_}dPmPwh>Gd76LO0rk5z|A{GTQ+#VW6*i8B~m|QtdH8SZxg}r z?xW(0Ca;aHH*NQ>5bLve8PvGH(B$(32^Q&ilXf6>QCnY+2FnvYld;Ihyq^Pxl_+Up zeBLE422d0C(^{g-xvE9=@DfT?D8hG(J02uT+fX=pgI;SKqH!LJ++?A(x|s+|YGzc! za#k+xh>SIx#QGp6%a;LP28E=u zl=&xy(i8h#RyMqDu~bMH%qbno#yT$ECoSgx`F@`>J`&qUkrGgmR%*m~e_AFjk$ah-^EnPBB;sY4Tz5$qu`yKfSa`>E_rkYgI}e#_q^VxVB?jO!~tev-NL71%9#@p z);*G(tjYVW1wsE$CxD*V3?zOd&oC_AHMPO*bYzpd!~XZ;?N|*06QbT_PE}0X} zntstvqjUM1lZ)))-j)T|#=BCmz zi&1oz^+5>hh%#>HG2=s-n73;M;0_qJ>}p%SEa_Ox@@ z2p@)RFup^t&?XnOsa3naJ&4Y~q!`!#SiSMl3`^%B6rnyJ!<>HXr}ye?IL82{oH-Bb zsjCnA?-F0JRYBVhyRkp)JA}U+_8YocbC5P0e4MWvXln;8u~NjZis#Y|8__y7R06zX zDUtGThiEU#TNu}8m z=Vd1T_J^N8n;3!&q&^~p5qL#`9+T2I$oR*uZ>3<1>Ld{fN}4NH-3mNv~?#uHg(ym=#pQ8dzJw#{J-%`Y(?+ zJ(*&e-#)=~k|++eR-9wD(4pP`jx#C64j09zFuDA296OYbsB*s~Qm@<#S?}E&(=Bp& zuQj(d^6P?s^ykEh4sH4~@d5k!smIvJ8{0h%qUsB}+K>56V@jS9NpWCR&%=LqKXwOg zhdhb`p0Rn%t1s1ep*4<$0}eXkJihbpDEunVMvI#+mg=hJd+vPOieFYX&QSUip;e98 zpY1)(s__h&N9b9ks7*zXGxrT>R0!iyvgXXb%^p*b^0gusaba zZ0~j=ZLIV}adHk2(R`>~n5DA9k5hVuQ`AV><4+nQ$)%6_@o`&v$7)Q;N8z*82PvwX zeyPz87Jo%ncvWVWK~mPrM-K2xxviSF_K|=Rb&)-Jtyt?3eG@`e0!1ji@+EUnd-j39 zv~z_*T{D8yF~yB0OwB(xGHRmN6-OvkxCP3RSBUj9?WcUxq4qUsV}q(JYwuGcI9u;a z%q`n759qIR@18+6z}%Nomx_5^WlmBkz1`z5Sy~N>W3&L&8{EFz$Hb2bCHyH)UvktA z`7yRhePymQWo&DU(Z#1_<(Hru$|rLQ3WdCJl8u+_#<|R6u8*k2FfHTdzwOztT6sj4 zNjEX88jixM%Dr8nK^QZU?rWP3_EP*nmZr&wvKTa0KRzAJ_;SI(l{Qp=NRpOZ^+8tu zkzGnPVa7Ao$t*I1$x@_=2UaS(|NL})Rxu5B>odW&$Z`FZ{g0~TO*Y;x+R8z@fzr@2 zdH*`?-MkaL$o1Vmg>rs|kb~!b)g~Xm2;-pqSzh>l_6a?8RI2F@A6>|+GxYaju&~WJ z0-JZ*WNkiT7=bMVt{0>{qmyP-a6)SB!8|Lc^%GPO2lq+l; zemmpMtQ9C96<~ux^7CQFE1zinZVGwG=6^>q#Hm@w!}bg1sxG42LwEa1!ig;9t}}Tw zYo(50Qa?&ZgEXvUXX|VAwV+B3gA_ID5)oc7MbV*@Ih7+lXLWwZ_aWPNBJM+6%Ha2Y zfj4uIE_08XYvl1M_%*{U>2sf=Fys4v`w!pi)YOh)V%D98twg@2*RLH>X6A-tr@a)i zVSiV*KxSH~Gy{@?!DQmJX7i9VsyQ^tBGIWL%50PyLKh)`-DcX@ME&Ts{u^EtChMVg zTP+Bnn5zAzde-KJR8eKS2!djKB`_PfJr~TrZt>x;=OY z#Wp6SbP-Jfc+bz>p?Qb(zdT>x5AN7lPf*zHd05d{u(_$urG^hf90xS^!{?Xy(gq`+ zZa*P6_wA06W`Els@bYePFi6>RfKzH;q8kge`kw#Gd-_Crt%3VU0*}j?x~60i_oJea zqv6W{lgkImk`NwYoDC;>8t*PHIR$<`&cMhPa0&~3c|ti?x6Ew|>%-<|2z-)%CC?yg6sTt^>-E)1SlEL&IISS{ZrKbK1Sp;}`FTNOy)vOhj%w zh7CFE(0NKW-gt~zSO{55ujWx@p16-_QbD*kcrjQ`_^l#WC^ZNX9ZY#w z$nP#*&A&vQGM2sP`qvurO^+p_w16<{=IdR4jcxjoIU!0o6r*<=)=S9s%$>C*FF?3Y zCoRM$&p2Xwq8`8YBBCY?HLA?44s7iHD~yggY$=U>{~)zW5}>vP@Wx$K+ja3Nb{@>P z#||rvS5s8*diAA``*S9jVcPXK(n)6@uHxrVkno569?VuZVoAuq^w13`Dv~%aHiXm1 zZThGOyXLz6FKil4zZRxv3XCU%zTp`LYM39*=BmJMB|TGhe<;3m6~<@Bqo7pLawcr$ zs)OEe+8IM)w_*o6-WgM4X9^|F%gW#6vQBgPk)GOU*HLwl(xKCYnK08rnl1i#mk(CUy@cwZUVZ>h zTBBt+d8t)8yJj8Zvk}89Dw5dM(0$IFwHr8BakI$KKKyPQme3mIR#0*fH3h2HlaH17SWSehC8g+227EF0HqL5EbB#$I%!;WX^PS04bc zh4J$WMXTYzBRbT3&pQc3@D4c0Z??qT0zx_q8FNgN9_cgLKV8ju}oCQh_rI&~ajf@y2Snml#Az;>Tco*kqWY&x|u^uU9&&MZ^L%-T|=>o3C!KQ1#M0(NKF6hjYG2NiM3lEh}pcLA@)B|!CCucpmhbmnBr+3Lhw!s&p ze%Y*a(@fUt0`I5^bnSzk-WfDth@M?;<-Pr4Mr5-5e#KHdp)Bf*H$!wi-V5&aiT?+2 z(KCJR63h4#e2M#aIEw`jhBob-jkhqJYG1(W#I2gyhLS0Wh}=E~;5Kd`{X!S@T>izJ zPrw7VC&me^OAue)>s!k?5Cg3t*MYZZhiR`B`h_f?D$3sdcwMzh8n!)+rAJWI zAcCQ6n$G9Pd3n;Sy=)V3X~1~HD(UVgKVY%+e=i9yiB%3qUk z<|muWD7g@0+XZ71X?2Vqh>BE z$qJw8ol45%laOBh%!SfcN91TD2dmy1$GaG|psd68imY#F_}-TPise${Fotv!#lr|0 zSFZUv#i>v&=FEmzTwznmzW>i<+SEIp%}Ita+WN+ zQSqP9JE|H)=QuybdAPJ~O`flq)4u(}gP-umOM3eE6h{=5JiI5_D+Y?8f0+g!MggTe zaY!l5BhijHQc)%?UT~pig+hJ(Q7bFX-9Y+;Ym{S(bNu~(Yowp-@t$hS&`!T#{?MV@ z3Ae)YX`if$aAaXjCy1904#PBzaXyGi#@+C7@{`-y@yeQmny0{{MS%_+lq249(ttOo^!(n?^M zJf01pid2jaqe=waFJ=?xZTs(-EyL(;b}_S&;>_Ge-=j_0XVMRoAd8ZdgxNi6pD(3e+S^USYhN+ z?*?NYoBX_7CnBJ;u0NwV<*sGZpn{HDd?Q$4jpXBk6HlINtxiQS_65#8%@6x04oZ_K zF_eSnQ;8CjEDwGnjn(fDEoP-wIX&2Q|7CE&kC26S(;dQ**A7DoH|U4%vF)HJ^lk9r zu^7ymz%I^?1m~??h-lHnO_r?1EF&y<=)0Cf|N{>TOvYgp_ z`b`#EM%ea%ZXuvR!)!b9w(mYML7qd)i~8xBVO_*1H_Q6-FXWOXA9Y8A@YW}s^>c=LrTLT`keyY`T z>#Hika_Vy~@2W4Y5EfU^Crfr(Ld@RubCdSvuGA`NAwrnRLTl7lo#k)Rrq)Qa*+h2k zTmrqZYap?-;5K@w^)V>Jsn5s9;oaCP_+!G4KBaYLi}+A@W|-#%VL8A2SH5Cn+3zNF zco*4>Ou7E2ywp%`G`UOq?swC zjtAxf1ZtenBBn9hVV)O02>a<;@4Gs3{ zO&WdX?M~tstF#HKV3qwiY54tKubN{Y6 zHM91Y=9Jpi!gu4^iR%A(0b2W|z1e%B6F$eJ6Dt4b_j!+FL*igltgXAhX62;S(ad)* zzSda2KJ zwo+|P>EMcrmt@V@$2s-4M)uh^az_WFAJClUW--D~mfuRP{3KaCurmU^E<3)OLNyo3G+NS617HtTWfp?ta|b3PQa043!5j3H)_fO$#V4NGvOM zS0zJQa#x4`NeETyD@MXp;lx`n)OfM6#C%XSjUckTSfyQ_xq&wh5*@`IbgKSM1k=GB zX=iE`qgYpC7$!8e;DZ6V@#Xu-DP(3l_VGBN?B~NCPs+wloCEqME7^^46Yr z?t+oUjzWT?4Yi=+QxWuEA7J{MMWAK}UY`e{8!tZfaG(wGo>Zs)hn&rbRfkg>ig6H4 zo^?!sK7QCNF~q<`=CA5@C(AB#(oiB->4`q7r zvqJ5i9Rw!}OaX8G_jvCfF&5ZZH+*^^#1<&)P>cGgnig+rA=new zib1#Qs}6_QG>rubHATuoQCn?&sLjf7O3kFIhKm)IT4+p=+Y2=#DrUL|%@?};vF4`& z5s2C5a!Gag$|LR5!tvQ6RrMu~oYm{MLLuiVkS(W*Ctb!-_B{Iqm+)G8H2!SHtYP)P z?N^8MVLfs#M2p8dP~%Xoejo${4HBTvUyFRE<84LWitEXE1Ol!TACxJF(>eT?t&kq; z&mxJKVhKJSxCNBnQYsA_^O+)F#|Ok*>mw=qP)+$r1kw@%qF!MeazN7{UtM0*ijw@x zEX(t?O8Qi6!DAt;sE}+Bn5A`_W|*?N?pz znnzV@Uireco`McKei#j~I(Wi$GGW1pV>3#?ZgA&f!cdSvkCS>eNek_8r}FAn00nuSz|g2cE6zGRm|J?ypfs^v=`Lqdf}U|sp76i>1n@}o0SZdInqjsrHVD5uP`w|*<30hsO5 zqc6q@i1hcyUid*do!Fwd*f15Tk3Fy1*k?o&qoy1Z(=tjj+ZA3O-`x&Lq5$D=Y=JF; z;eoM92e-aj@wR!v-8*}HK>A@|eT2xy&%SuKTF=bP zR^=L2=&6GxCht|r(=bFtIa*>Nf2Fa~ogAo5Pz-O3Rr*ly;N|naK7O@BO21}rwWr*3 zzy(>H484UMZ5&M!NNp$j(BBW6m*y(XWXaFituQkx1(fhf!d5*t<+X}kDMWYX7udCC z&f29{J>-I_11YH!+f1BF^;OJg&DaUz-&pq{@{Dg;{cSz-?;$6of=eg(aER6aCnokE zk+7b%bUi@!OkI5Y^j46y$VeN!+QqLQ!qsUCw!nY!aUXch@KrwY9B)UL`}uVl!p7Fs zmQ>w$eTK7XTdmgJ7Mp)dy$Dl90NJeFn1%yMU>#`#%43&~n87Y7Xz{tABxsJ`xw}=jWUx=#n z-{Iv(Q^j}6xlx@>sf5*Vw~zSk6Snh4KW2K#7whTExhsq4<6NO2Da8apfE5l@^!- zrLM&GYsRmd)t7NexV%cz$L+>SmND*hLHU!%6C`_{aucN!awa0LB6zF@yJs$2zAsq9 zZmW!gdO+0WyB+Z=Ty+_+b5y_x#VQnk%047UU6epvR7aFAfY1Bn&zaIm68QyP+5utO z&yO@}J<<%s*?fvXQpq8U-`q^g(>;ai1jy}@y$3{=2v)dw=iL%^+rzbWO_k}c zDQ0AFp6tFOZ;}87Q@(4Ts=cchfK(vz7(cfeW0w4h&E9i4F;CrnpEfMB)2PJ~y2`p& z8y3*se6_wgmU&wqo)gpP#Q!1mrf!8OTB0XeZ-!h>#^=Ctk8`{yMjy&p3>nC5N^3<1 z0a!4>9lYWOX<;#h6mhi4GJXPtOy7*%UnzY~TCpJ_eioO_qg~0wWR4yFiM5|^|GG@j z{jTTBzbhH#yX_SW@C%hJ6CZhiKWi%)oMi?8lJK8cGpl|oK&P;$1Nsfgs}$Ze+mJ7g zyM7_9yzLHm3;LVo=@5%H$7t z&vtH9`uWWmnu3^Fj=N%DDJ4QrlXrm#nHmW`4E?IV5^4eOfgNl71?8(~-*e4+*0ee%z@971z8^cHbDL`9*HQtySMMkG%~FeX(rc$b#Yg5 zk}%mdRaRQ%g6DpW=6^+y#-@EaPp+hpPzo{rOm@@sP0O?+-eQY-f-~K(VZP*xHsF5( zy7ShWMwB+>8Gqscg>l_$?#tb(Al_n9G^5@NY;^%!^`QTKWGgg8H$m2dNo3?FH{+u( z12d>H&3?+@(l_I&UB%VUK%a#@Y!JXx|6|Xi+T8mKa_nUzIT#skt7#A=ruN}I-ST0` zik1oYzSC8vI{G80*lxy`8Zkpke{N^sL6;Hu_y#a<)jfm5fx5`W5jz&~MUV_P`G1AwAK zPWUmfV&GD(U8)Nz3y1~=3sXEMrs&dSGw8J>JM<_duvf28&c=x9fWAvheW*V}_KB5FMqn95J@%}CM;EK+uvkG!W@kPT zUT$$7Up(u~F?4sL9Vm_di5#%j?9@%u$ZE3p&%Y>!dWk6XDkFN*QOn`TV0j#c#7 zMZu5u==18{qxLjm_TJWMFay0RUXIqNOlMH6cSTHkA`PF*u2bQ1``Z1`8eZ_c;%SeY z#t+0SR*8G%mRQJX1cn=e{;fCichWo4xa8sDnEOr}jbnk$Cz5yKS!iee;{&8v9EV0A zrr?x~_)&4kVKC*iWPn$23SJ& zZ2Tu9zU+LJ-d40;WkF zHl`_6tIbdk)W_$qyW+55ax`h~?$43@o{*4a4EOpB^ zWb>XvV1v591O@N<(_2by7kOV}d$EZbulvyo-p#*RgFH*xSNjMC-vmK$y+uY7nwkPQ)HHbu&)U-Nr^LqdEyOov}t)_cK-Ou-ZDnkgAWUmf@d za;HV=`0~A{?SP11d^yI7?9VYkm|gKv{EYK9!Y$nd8X!7m@nSHvR#Z5n<0ArPo{b$m);Ffu^Xo7@*N7{pMF!x34e)|`cr6#Hd3 zY5+O_pmy~XwU~vWaF@_XOmJR%sR)$GT5nfoOBkU`KP`F0pD{bV4U0X<=CZmPTS5rV zOw6sH7w_4>l>OE=mu;>egw=cc1ZU8b!dkmMf~K^>4f}KHhM$fqPzA5{Tl(aFAmO@? zlSpW(WwS~M2)EyaV4N`QRp|TrZoh(cQs8_11Zwjej`-)h(3NTeZdIeOmxp)mXnV7N z4?nh1$OtZXmzV^p;NeKsD;rrIK;|FmONvET8?I!YqPH2{{m>l^bm*CTj}j(`SJd0< z>JD4Tc${hDb%Gnq6lgIO!M7+aU-fhdi@IX9?Jrc zskz`!mk_Dg8ZBnn4&Qd(G+^TESzEpr!Tph{p z&@#=(ox;)V9sYJB(Eld3dT;9mKxB*!`|o-7QJd_*C0ZyNB&PYJ4yUb|kyVmCe0ufh zt%|@282E0^d#^Tjl=n{s44t#Z4i6XyuD09Y^srYKrkV5}vgQ{$?-Qb+EQV9uwUs3k z>BUiHS(~4iXKm(4%?uS1YvCf;z<#jZD2WRqD=eLD!a_dS8jqH2&)1rF}8%fCYRNwLX zqFp8PM;YQ~v)D&;^MZcr@W`yNJLRVl1j(GCyieW03Ak6gt_`d=`o2uI^SFhJE=hB(>8pOLIc)>5P9FFekC-(N zzFK#l=LA^o1h(SlS0DA+OpUefM~1bD98qF%yeg)r%b-O`DZgb{lBU%Qn{#Z%?7pe= zM0{aEs$%Rn%og}(*~8@(!bq@>aQ&uo=RxJU?LDY*l-H}L9r*VQ`)O&`5LJK=JGGH6+KDYmW^<&^D&jYn}_ zX^5Ni!0rd%yJcb^*d15lXY275y@k$2lHD`6ykY76x1-iH$xuto&NjCv%{7{M2N{#g zzGTzb+u1}53+6~md*GftEpt3d33_wUL&)lveEqkDk9S)!wC)`h7knl*>}0{6o3nSs znsx~1IcSWGDuh@Cw7ZgYgG%=!XzPcrv$&W6XZG!-&TGiA%q1tTcRZ~IO+A?+Em5GauuZnQ5LzehezmN#r zHiLTohMS4-8AoTOihGlwa&lS@*3&YdQp0C0D%8@PnM3H%!FDI{mD% zh_CE|mCp;(ZLkhA>ET`X868kR6Y_&fkdz^0ArpM zuNeK0O3q2Mx#eyjHXGgra&-1n9WML``C$$z-3`pq{7=W)Sfi*AQ0h+VtK!dtHBkLx zT9=}STm=2wy_{IU8MAmi-APPpE-Du_kK&_yM)4kt>D#SfF9bV9ycdyk;(1`s zwi^QdmFGPQwt`u>a4*}v87as%%vG9Yh`^yXLE|FSOsNA4=nLJ|P->CW(p97(^|{S! zNwL6|y+$YnYQz%Wm)oW-J_U|wIHn`ud;$f?DQK%Xvh~std#K^4YyZ*g`BvjE3*$eE z*1r&c>KeJ30PrwW-^DQA;lDvyj9cFP>Ldi%!GDI!JgfTLzcc!rD(9DmIpuk6%agm^ zN@70ci_GYjyAEbUsfB{hYFBojh}U7&J$_1Q+)kCHI8W4YQHXwLX4SMRK`^ z%^cz@SyY*(aIuW7#!T0Id_NT%eaLY!HXID3uuvgHe@@OXpc0PD4HnTEA@S)SyVKuU@PgTqM`??g<-Z$Vt_N+k4u zcBaB(S*$uLuHSDjlK_gnJ2rO5*f+jRfr)i9C`ZU<+Cy-LJv;)wO5g-b^N@U)FdFsO zAVO83%WTj-@(GbeTE-Fl%`)h`_*AM1w*^c z^4Rxm49v~vRqnJ7C~-OP<--!Sb)_mfS=f(Tj~Fg`Y5NB>_~3~DBRhR%Kfp+b%C>Ys z8|Q26)s{#s&}7EC+@ijdFNA{pH$gjdq!?=>Y<=bvjt4K5-Sfj33(zFPgrrOVoGj6s znjK-DuO1jDQN1gfOI^kFV&~zRG0)whUy2WPp6+peqNGh?7`dk)q%%9+wdqPYIiY?!i!n4R;> zC|YObI#J(6vZ=O1;@Ab>Np*BdxpMc(N$4EL&-BCykg-wzjy?7|a{l$2uKRHb!?It| z=2$PjVcZhO0|KJQSK?mKlrUtf5F7!u`*)%}8}&5QVQMWVSweVQE?n;NjhMLin*v0!Guz?gGrlSPrAip_1VGHi_7fxjWP zCxkVGhw7r^FYvPS39tT{_&&JB|Q5pHkeX|L)1$-m??`a z*4Y~?D^SxkI%6m2-@Qf(Xc0zc-Dqy2Sl6X#*UDmBF|Q_?gG>IsywQ+=2Jm$l5hGYBj)R=~3m#2xu6_n2kTG~X zLf$)|BmDC-U;B^7+5-|S}-2S2J* zQqxZO-or*a$$$Rmw0b+lwK;@Q+$nW!$sls?Ko+|ASH1CU@;0Etmd}R*NC&Q!LoZ-V zqxr-Teys&ja4G(i*yhQ27FKo=kWFMe?&SnO&+tHUK8ms=xfAA|D} z4*U$2|Bh*|d&W`S%-v#krP%xSjrCBT;_@kE)q+50sVKC_?8VWbc!qDB8d+H@o?l%b-~(r`HuV zz&NHSD#Qu8@n5X!Oy0pW2(oqNs2#7q#X#=x3pi+FDqKhfVyWI<4ayg0Mt_h5fyIrn z4o9*G&YUOk59vFpc(SyTB}ORC&sd)M<%q|}8#d}XboUXnZ`^J;x`Jy!t7ZQ1eL^yH zX|Q@$p{K|u-hMHv+jOn#?|`@;(;GMxLuI%R94OgrNB?XeD<~uR+VX))>^jE=4LTKX~6%}W}82w$H3_cUf^)$c^QERCV)yC`1^K5}? z)8*Io!x?hHEUj5KR#oQBkHCrhrv)S1; zba?4GN*(2MAod`+Ot*#}>yfxP7RR%g^Mi_afQt3+81=BYiiYf?mbD27W>hk$d4BR$ zZLIJBdI7R@5g)0-k@%xlJ%Z>SXwBDz^vODmNa}=5v!ZOq2xI3gl}dfObe+!I463k| zyY`+r+u=RsOd0u29|C;=Xkhqm=&{aL2(S5J$_mq;ZT1R@x4R?97kR=khVXy>v0&wf zEOr4Y$Do?%bC#S*blQMO;AFl94>$ybK$yPeoE^k@!H=@41Ps(?`80GltBMA4oxgrz zJ^y_6OsX@N|MVQd`C}E!d$kDdLgKX5_LJ0qx->2_)2a{0u6Pv-Fx?L9e`cUzgsp2s zNr`0WZ21mK)3E@VgH`7!{NcgP)-t!0`EkOB5R_4e$_O28*lHq84s# zNiLq;7a$9J2un~Dap zfMMh})oE(XqCGV;&nrCevyt_5>uJCBH27o>XYTk>BLKJ#1{I=nCB z{v?U$`jQx=&5QwKD6F=JwhOCEha(^V%l&|f>T|E^?7d4Yw-Z+tT~&!U80!{*J1>=b zb0Z3}brx3{&Es^ERuFK8sXRPmu$%rFO+aOAT{bG;Jngi=B%eok_RDrg47x;;>bgDY z3cK5*o1qkmIuLrzIk6BRnHuZ*{MoAN_bO{p{yOiDnPf%VUQ*=$yZ~u_a!@+LmyRwN zR^_n6yMan!+xcUTIR}MdY8zKr*;u)iym$AIu)C~h(;EKNi_BN?oim!)3l7vtt;MSOI`T7w?xE z=e}<~7iTK2e+?{N!vr5ZCkOoY$F53>hqYl(?mRFQ?GmmAu_n{n|YzBSZ@~UP0~OnEA~F zySv^2Q{1{=ii_(~W>?81%dGIkK{k;r@t><~NAmRMY7M=X0&=S?>4W4Yrp3*?kG@l6 z7H|e2?tlvM~;MHpXM!t+;XiH_PS_smSrJ8;IhvV8N6NdO-Ol#VqD|hu?n;B|7=w z5YqfC!N!~Pc*&iQf2v?d;Pbu)z-;FSpYBm1WeA@fWcWh;({ZY@au+_2`JBx0q&rjJV8*B)3gfo{0Aewedb2(eowRt~WfO7oKP@TsNPHpsbb7=My zi|*D18OREhyky^6L}WUeeE>g14D4!Qtib>(vyM@Xiv@&Z13`R(Yu@a?eYHXMCX#sh zg}<-KDtI44uf)2?ww3JP(o83{-e*#sjCr;`mTLw_uRCd>mPDOnK135iXnYPoA{3Sc0%|LV>UO%;TQSmUxe51Z*j9V;iN8_Jb@b+E{@f`k zEcr9na-vW6l*7@(Qpl+y_$PBNxX$P$yl-q9$>quTFr+e{zS3m(#Da`f{K7{Ywbjh% zhj+e#c2%+zYWG?ibSfkP7`Xg=in@1K$5YPxVOb3Q>sNtnhUq`O2O;One+(X$&-lOp zXLT4Wys2$)c_9VJKGwrk=~r-mcW3ZGt#tP>0KvEUulYZMNeC8Tg*gbbMiFNkGE!3* z3*h8@UBN=~=c&hSKDnQ|*|a5YiL1QCW%Ld@&H+PCTir5;blRDKbhw;SBfDtD-p$bI z6#TP70#J!_(#xBNgk$mXNJS)HyVfjng%j({TB4lD&o|Up=8mdWF80%~tO7LREJiMX z0Fy64$eT7OPsXL``qXyFE`N;G3=DCA>CJX~admz+r~666p-=*U?DO&I?yIHi(-fkqzy0g1AL)abJ1p9^bD#3`^xA%sz zi(cLlEj0@6D^rxdze2n8KEa#Duz>-yiC*X4qNM^*U1Tb40X@4)=qhTo>+802VU?DC zK|kd8a9K^0Sc9&M47^3qE`DMMgn;)4%#Z5Biap=$-O`s)Gq5CyY6%T5`0QRCo5!uX z=3OjyXYlt9nc12MI66s-Et*MA+rTWB$R;U1!E0NM<2xCWIs)-5lpC2)^FHdo!J)ML zn8k}eaQi(e%HO{O7OWVo}qys(~b96&Sfy!OBaatk= z*ZP>G&W^*qf?hp2bOWB4)voKgx+Te8Hbu$O?t?!&578$YNfW&W8hZ+Nry` zGf4<@0Y2g-`oHhdATy=prY?14p<+YQ_jvz2rdi6dAEQ}Jw;h$swoHgWjC zLM1iVexfL!rr2khcC9_FWZ1Z8=c36&sC-L2Sn03N9x6 z>90`87D`MmM3_eEJtow?Q7EJ&0)i~#HCrA7hcWw8*7|erfv_g9vjPg`y~v+l!NjY- z`IQX%Ix|`CWdg;;h3)rj2T67A_4wo&fyWs@meBZQ_f&?PMqHr(9wioz9UN|#vfcvg z?)qVT1AVm&CzSzcODoigx>h{lmbq>k%o!~~R%iCGLSbzyDx11*)ojx}lp z?&*|g(cKQWOvkfoOgT8Oe>;`IUmW$T_yKh{RElFT#3b>phu9CTCIM2wV4qN|w|WsN zAQz&G309+7ywXfj6rr(i1y1O`T^E+aYHU6v%IZp;Z0p*hUIS`*RZS&=@@GTmUJ- z#R#PzT1@5MWI^~`?qg&EX;f!TDCy*DEvd6yM{5S!k$5fGTs2=amFy*UT!Hz7X&aOK(>A6-QC-t(W#JMGOrXeR+0@v?hJFX>*nD; zM!~F5-L@tJ7t&J;8gL@P=u!urN4Dr)x4G;>&AZlN$?3e%SUmHLxbx>owMa+WhR)0! z=j+r3W?E(Bkx-IjwP&oY%gQTXUe?p zbA3-m+DKD}WUr0;4jits5m7TF&%qa%qvAJKq5$p@9XNNa-ZPnGqXR<&P4^pxAwB96Nl9%s&KQ!fNNBFIgvZZ-eevG(jc+<*0>Fx}hc zg#<~~uu&#y{0*%#0oO*!F<+Vz1N9Ig^Rt<<-qJp{Vw{di1q`R4sP>a3%h0A1er0?x zcd4m#MLUcNx}-n&p@2;xnDylc@iY3rpjC5pg!YQf1AWD(9mTYncHH_-pZJ~!h3lu0 z(sm}(xAj<#o><>W1>Oua|NiRkM}uRnHuCLCl1c%!oYxp*~ILd0W!g&cYbR#9E3K~_5kk%@KS76x5iC@bo~4!azOUA6faZ% zzUQJ7VAU6`KJ~<<6!ADh)xj&>>G#-kJI!9~s@Eec%pL0yvO2^pycjYka760;7;V+U zEcPT3IU08?-RRj(s59UE8CeeriIDStoEW>|x%V4l5bSu-tCmkokFhX^u=~m>*iwMp zKn}_&W?K)WNe7i+OKl;Vm9_uX3m^Gz#si&7j&H7YBT@}PuxL=XjuQDUYvp2vXxDYL zl@{=NF8yge$(Im}{&cQzK2nOa_VU}hH9hIDvBG!57=8xV%$aW*1&>Ym{b1`>YxcS>W_jJIsy{0E66X(1lO{?! zRc19g#yy3&_CUF!!QQpsw0vCLvRQU=fl#_4N`i}C zIYRdx@-3Hz%HW7}yEGSKmYz6kMKD8Du)@@qF-DRv2FMtL3jCUWr4fZ%b=7tGt}~0e zv*Q``*pL?6ygr#1jsetF5*yt-EfQ+K0qchtfp5*(S(N#TIWFUJH2i^q%xn@JA>e|h zdg?B_)`2a8sFizPXUViaBm-`#%bif-ABCdtDD72d(eFD7i-_3J=Dlr}B;U zp3AUAdI(n9;3kc-{Ljaql7`;%!=Ac3tu`?)+RcUxX8YF|CuLC^C=x$=mcK07V?vE~wnamOkbx7-XMDtk?xWnxaU4|! zBKZ1Fvj+MiwP+8txdQXaFjoF&ePFiyj(T9~qP*VV4Ws%!CfoAcR}Y9UhUPVuY#dHf z$NWgZ@X0U&a+OBy-sl;)A8(k*vRs?^LEvWUF(YE)icj%s2QzuFM2OqRB)K2~hGyU^ zrV>Gln!iV%<@m`agjQZqi8B26%TEC(MQN*^{bUM+b(@0#RK@(W56B;9kgsJS9%uWa z{KFx?C)(zW2Bykb+nKKlZs8U|Xok~K78sU_?)V6{(q2TiMxdE>X`t=ulwd&bsYVhL zYd#&~B%rP{Ti~KwZ^v>l&cF$E>>s!4y)tZfk~U^lpNCNb7JdCSlt;K<3T!{e=WTzw z+^R%v!n3146JX|Gu&gifdm6u(>Z8K})~hX~D!Bi=o3FVtiw6Px^Dtp-_POgBAti|* zbUf_|nhGf$te^Vx3(giwl1em4C1m<$EiS&Jrw5p)V+b^ly~SHQBM&I9wx{x|5aKyI zp(iIKnD^sN9v6@KvIv=USw@PtaYQ$v^eCwR@h97MrHPDkofSK=C>G=r1e; z*s!++aY$qBdPTQ}@DaT@YPLZE6cE&`;p2#Nx*DkvwIiq?&HXA`fjWaZg>tzmtE}+k z!g_L6V&Dz%KSnVZ|5pyWg>r57=9dR+<&VeUA=1n>!@XwqCv59;zU@E)PYrPP%l7tE zYq>231LfI{jEMfJk)2k7mjPSv7`Xg}+*?HVOwCzxQ7(OHxgkn0yn+83B%6Wte{x+& z2cn<=4M?G4N3rZ{e54}T$8(Tp+KEDopJ^NaXZ3c?>IVJrJG%*8=FE=&JcZ&W%n52; zI*O=Zc8gWUvQqrP&|+RW?H$D`1kJyt)tNSA56PtvU_EVUWCJ`eDA7m`=9DkuW&;-U zVf|Mh$DB^WwjHH`0aAWnK2v=DrX%mMUvMlY1zJSW0QC`_+hlLbnKuW(>4m8yG&8pVv-__h~ zhKw>Di{vE+8cEpUw@0MH1iOO|sX#mE3moM-SBj+oA%V?jq(Gm$H2>lfaZw3Q@WlKD z*x>IEMFuM>s$f35awIng^>N+I+}=_8O!On$v~8@pyfB=4ud0n5+q?!YMm~EC*LT^8 ztiG(;Io@qESiS>K{tZ!ZbNuJ{vS(Ou_5E0G{PKenp}o@sEa;VJxpLxhKkbg>G8CSk z1)@I%k9nyjSi4hB4TGD7T&8J;hfGllNuFS7%OJh8%o51%2y=+b~lLN;TT_3 zr;OEiYDoT!+%|Fy1`t z#sbI=vhcaHrnHuJ?;W}4+}f@>1IVmKi~~B(0(P%{u2zl8GON#U-g`M{^@wnU5eJ2c zv5J6b+7?Sd$KCstPsTgF@PKB((Z0^U4Ua6E_a=hS*+1N0AjFd?ukBeisqmvQ18EKI z%N4A=?1MB2*&PKMe`u{M*El+G(pEReiiog#5Zva7$AxK?=Wd>{j5cY;?v#slN9MCH(4K2C+n{B zDSX2gEOs|z)`5`I`X~%Rpoo;pYVo8?hV)dFc|4Ta!x?f&=C_XcWs@xv)Qx;2?D9Du zKiE=5&&~MZ)-S_y{s~d(AD39cv}mlvw(uBC=v3`^%eZybG`nyA=;Epwr`FP@NJ3w{ zwp57eKN)vi!+tZR$KdFs%j=3st*MxAWpgQgkf}~~)DVF7g?7(&d}54$s(GtwPB50y z0?{tB(}XmP1nC(UQ+vSoA?eRRsX#NB38nLlhm`b)210E)gr(}+-4`1EA~juRQy_gW zX|}G-(LggxWSW`o8?Ij&e>fql0S5-u5VA~?Iz}5nL|tZt3@k~C*P(XU;)Bn8z^Q5V z>(e~^)O#D>&r`IQ<@1K)k?Dl8G!HIJGBeha)0uf=83Vq>MYWnEo#kHz$YJ8o$*#7G z8MWKRSFe_Oof+sVOZ-!4beeGk1qRejAD3LdN&Lhhh|vG+f&IwbaumM zUyx==?|0nqnqxnmGl70z-09w&oG&!3z^hm;J^(^2Pk22G>@N^SXGwaziO1u(D4O%a zfL(b4igVg;^@D&5I@=cn!c;U>BnAKARGu`*T!ZoT`ClPv9QjS+O<%_{{`QUwyfKK! zN=Je~@lRxWT?N**O43QM;JFKfRv3k6B4_%T;_h>uEd zG6jCZ+~uk7eQo%Y&F4e{`)M}!@MNio z#~H4mS|*A9keKI>K|E5CmN@zTSqsM9F0n!Y%#8QLf|}m6q#XIl24xposl>`-DH4~% zv|0vvt}Mn2tcJJ#CFA1b3KE9%oB7HiiRGc*iF7{%;oFZ~@4V()hWF=P4`)mjuXoT| zju5&LGNa{}mSB_+58tbW4RMkk9+U5$PQu$HO88XHjjwQU4;=;^)G}yg`T0Q`2=H_>`3pj9lX_wl-16jFaSA+#Tr8&dy##Pj=GID4&if zIAmrc-AZV|zIHoSs90~_@pGD6vC6FDltJvD;J?U;P=7+%xfKiU2)rYBIW`$sCAmsp zEu%GY$<-@~!}zwf(K!!) zRcGS5o6%|r6snv{J?Z=&(^P>y$NPlw^khl=)?X<-^^^)Jv7&BaIiYxn z5=84nlo4ZPS8t{Ix?RJsIZ}7JYW)o8rTKp^73(E=&$<--Zjcy`Zl_~j;6u$SU7zUv ztn1LNUOzt=NBns4a*f}s8VqjWI$kRxMOQ!>-;eOJ;wg%{9nDK#RfSK#O~L79r}`GB@|_2b(tjvg|f{6X4gGE_<)tL<`+E=3Kv33VR$) z%ClHuX&4YirBXDNW~uzRuEz7z&b-qi-P@_+s@V*z{gR}v^{~cbM=THc5;1tvBmoyK zcu_LvjM2n~muK}Pr;w?45rtQ=*>UV7g-s7Gmbe{6bAczilg{8a?q9xDS8$Vvd+A;h zJlYegE{Ow{+{51nI$*|AFnD1*ntnUtR1JX3-3h!Rv(Z9PJN_8-u8p*6J_z+((w57W zKqlYlft;w#Fm5LR$JlmK`p*)0pW`^j+Nx;NlN1f*ORz3 z{%<=btr`)B>N^IuJqAQ?&)>_;Six1Y{R#Voa&>r7JCgWJ`cn@4(#5q<@O;t2TbY+% z69+DG;NF3^GL5GF2NCGlZ&raWG>l-|r8Hj$be`g(wFNDsI^=ydBK*Wdc-q~ z$p-QrtOEx2LBSFygMN*E z#N^T`hZ~U$0kXvxxvx*2<5#EXoTX40u;Edqf{+`fm`US*!n!}#&@nCjwF2iH?ivQ= z_usS1*T3K)v4(;=6c8Z-nS1J1s3gtYPT1Mo)F~@3`_(wg6%kKBd--#mD`P<}>rcuE ziQ!PIGdxVc-JL!P*HJ8H+LP9Pzu+6m%bG7oeAwswassDtpDDK(lX5KNn`K80z#v&K z-86x!2ior>!OH!}=J{npfcHPqMp9KtUOM*R?ai6o*Cdm9xItB<3yhOMHN)NNRX?yh zE7gxlWF~}v)1PhdSBpGGV}x#(J*Uud-w`N_NWp=cRGX0J}ap@dT*trBye zLJ^sZA3`Bha@lk+mPKpCNyBp!8_l^{S!aDg3v9u09MlLMYk_M~tS+E*UG!k4I44lc zHz7L_mEPjB`eu0jEiK%6Mlv!viPUladsGa^kuu=-OxhsH%{pQnXr8oMTq{Lzh#5;5 z6lpQ|e{vxVCi_w;=oNG+ZF=1jU-vJET^>;9eBbI=y@G4nj(>vzOGlF%RF6jc{Y&a6 zx{7+rng|2^_C6Q=0P;v&(JABl)`Oqel%-r7c9rnYHONKh!w>d9cb<|G+VI)W%0U-} zmg>x66JNGx2>lpyd!vIf6XpK~wpu?8`KkDVk)Xk9Lm=&h4btoMX#6kb7aoznsl$I> z98-pCigD$aB17Pb2D5>!^L<4Y-GIlR*gyr?sOI%|on& zWWN%%?Xe`q%THtt*W9)1TbLI1+hKb;3&{OrTiTX*mu<_sFk(OQW)hT8qm|_M7B;lH z4bXvuGrdrAd$1P&?*(8~)0;Br>AfqBnR#{w?=dWy=Q%hFW;YugBlJLK6#P0QuO&W; z>qu#-zdE7qK}%9R&&XZJO$4n0x|T}>V_O~5w9Eq6Oa5($68W`hTK%~94tO!RTv$OD zcZ~4^4u4Vq7_@m%Be_sBnFWl1;%L8k1J}G?1eyG1##$oKI143ZSVoi z5eg^aJHl7Xq+F8mNcJu8GS+a`X)*(`GizwCJyTh!u8V`-1Le2nXSFywkIi>^W6z6R zOEd|l)g|jt! zfWkfDLc#mU`X;9V-7z7VqQ45EOE_2&T6Ik5i{N1lf0)0vI zp$Shn@JtDj)h5mALI9DN1B0cKe^ZTz_xT+2x)%jnU(uu{!+J~n!@%>re|kd)XcZg{ zyG{@J+lP_KU!T8m4@9kpAwN5D5ByI8Tkph4 z4$OFGFPj|LrV5e&C#?>pxyDrliJXb@q`UV|+AoFHbt8PoM-wU$$(3ETrq;j!95zJ) zm$#QZc;)pu{Lz!q9l@*G527C^T3{gJZF$Hn7&&kf!xE=80XAyT6c&23QX-uR%lR8G zLv5tzm*ME#zxSH8s)~7tu*kCp-Upa}TEEZ^G!!73B3G|lz$ntLW-Sod*A!&S_p1H; zS}6{SMYE1Qq)_ijcih6mjjY7s+i1V5$+@}=Wq-`F%IF8=6CTh*2l!a3n;5PYha{7P zttY&!OJ#-X5hNwQ^vZMJ3|Nh45hzyeRp15Uw+SHrRR_op3KTrgdJw&=PC#gw=HFs>2!;~aT ziG5^&TVhksb=mvssKfE8XlyY+lkO+n1RR9#bMpD_>J8VktI29S@d$(Mi9Gzna&mQtGm<#TR>U!c z=xQ2vbfbJ>ZnPJk5~~_TqB~UB*zfH`u%7#qf?k9cA~T8wYqh~2x~gWkU*D}oFQlwT z#4w;R$Ug;F2a+U@;WEFxkSAr^(^f!!K8 z_SUJC#_{p$T|*>OqMEHBVwRkJq+Un8LtBWi;p$>O@%mR;;g!^kS5iq#zFmI8ctu5O z9;Zh58NvrS%M0Ct9Z^q=0tZdMWzm8j0+xo+v>2WoFb!4hglkqZVlNRAu$*J)VPxJI z30T7ZZsf-`=DR63c)*|#q;|p|$e7j+XU|$D#LCaqY=y#+VsA91qVu?J%7sjsS@P5$ zE3k_=&XN=%5olw+(%lgL6wlA94i@T;??sOuGCCu9>qN&1)@yoHexLq2zR`4WyWM(S zTDm?&D1uEN=gjzRa4u@>?u3a@)4R3CFTDngekWcaJC7YVJDXZU6YuAOSBg(!<%jW! z@u@?T=nPv1o8Np=kCG2*aPHZV2IQtGP__v_0vbdi4|BVkmibvgp$;LqL=~I;=u3_b z4lE$IR9Iq9PZG?=|MoUmLh-&l6GWlA7f3^|GEtx67?%9xk7gV7fLNN>sZF`_cq3&> zymVH>4FuQm8~8lMoP*A-(>?qhz0L|nKb!r)TvsHxVD-*ET3 zS89NMTZeb(W|8Zyc=yM(UqVhqWbF80HYY69@op|E*Mh*;*`aXba^pnL>qs!K6`@;b znu;(sIzj}%ptnm3%Rcdwq`7Lj+j9iT2e2YCEPP5ex1l7+{I6QdFhgf;Nkp zo$Y&iZ*=PZ_K8}X{cEV?x3$9$W{8)XuDhof!N*C%P(lBoi1uAOcG)!}q6u{;6F<=s z(o81Luw@F*2Q3x-b04yJ>!6AnwQ^4%SI^YA@3gc>6n=E@`RodZV$1c^4I01Bk{)w= zz~Yq^Nb46Pe+T#7*vD=2=QxeVJ^U>#v5)1Fl}5|kkW7BGV!UUOXf{iXhlO`~#f=bB zN(d1$p%*7Zw#M2?i8wl`H86@*2rW0bNlo*?kpzCu`fbabDMR@rJ0KhAllMeob?)%R z!Gr_NsSVGgPEN(WPcqUb*eeDnDSWs3ZgFti70^Gt^qW6GOgIdlJaCI$F~|XrDDfA0 zzl|Hw*S9Hj*lV4;x1~F31Sgk^rerdKn2iz%cyBkOPalHw9zykF-3&jj3uM5V7@IkS zZ?RkXe9!-+A`}1IlsA45=gfjd{Dhx?H9p!n!}j4kRuS|x#t)Fai~;8=mv`#KI4x1D zLXSlS;o+OEL`NSX3yj{Tj2@61L+a18E?3Xuzdl_~FKY*Tan~?F&Isw3`V8Ty`d$3! z?MozWOnoyiH;4o=Z#yJ94SA4R9bgjEcxD;Re^Tj>dMbYD@P!L>$xcoaz42FpEzBCLL)YWQ|xa(NBA$cN`Os@B8mqQM+@d z+F6Zlh%~o#xO^fJ_3o=qQAFbCAEh|)d~4o?AYAH_>6ewD^f^;(ZZ5~wCn?JnGsw3< znMg~{9U>Mz>T+&MqCy0dLZE9YM%my=A_0q!vYtT{RkkOXSeGO>?-#kvZ!C;40EOh0k5RM+>q5@5T)z<|y$wydhZvYW5!t)fRa*pw zf&3sanm9~*ipP?3)Ac8M{ZZ)tY~CBAf)=i|iqf<83_Nm$0N9+~P5WKVQ*@;XZ(KCI zO8Z_|h}7$Km$<%gakZ5^iW-?Ia;k!G8f+WEO=~twBnqnKnV)>jlAulIo;ZMvFRMGG zJwgc_d=XoQUkOcvK@N(xnSB7>$T{VuBGLq~4*af2XW z#XWqmFX@+DhWX4_6T=#U>0r5q!)~lTj{{^ycNHty?)*T@*MfYuVy_VJU4jDc!}r#6 zr8)%B!?fsJ`Dy3(*3WRh(9K*8Qo}*|m0}omPwcW~S?GtyVA4VcrN5HJq>H~I?Re^& zEX74l-ilicUw=1_d7H)9i^}GM5&kQI>H^R8S`-lD`lCy+RstTJ&O=Cap|+8CGcL0A*%EJ}RygMiQa*k+6AV~#s1beQ;vy+-4e=8n zTU~x77L}OFB4D9q)liJ`i(Bur`n+7Crg$nFl{A+21H-SUWBYf9 zeB7r=m3gt;;<{%iJORD1Aw^{((zG4>#s^R4aK}(|!U_1JcDLcPGh-quk1lJ34ws_o z8*2ubX<~YJztk||Pk<0RcTFBFZ|SY^_1dlNy9-oxSW_JMG|dWCzU+nN>BP4s`V|>a zS2SIINA+y#(>`Z-ikafM8$rD@^x=t2vKTATr3U!#t?zIJWcP@-ilCr@EWn0V7~w#3 zcJ(V~^mmNAw2Jl$<5BGGj@92Ue;T6#PF4bWEAqFvKGZd{AQR85tRH-()9bE(6@mt= zxMO@U9JMY&t=S5LCl3e0t5E#lu7F2!FgEpp+DJbOhTZUUbi*3m*Xr#LMRVz9SX5v7 zy5`Xpt3#5xl^jVc0zkxYxn}d*^&=I*WGH@ei70hd$1sAl3FAly3%beM>ky052o&-2 z;}ibnoUPPgjQ1z^a;bG87y&C>Q@NDBT=oAwa|AKl@^#@YQ#j&^*0(S66k!^k%VgCqN!rQu&Kv&;A;zE*kO$%-2 z_moWxj_fL~;oJxmAu{8`;^-flv(`R;P}>~QAlv6N@|coZ?if0PRW#|zi9izX*Z&&k zd~Jviw_nfVlQ1Eg@DLSF!uM3rZ(V?_ED=QEwWgi>aG{dQe-b6HqW-lJ)FNNrNR$hMM$%u}&p}AwjL%0n6EJGvdq&-V)jif_S6nkCGaN8iD|m z^nqK$in6|(czc>(F_8IapvepKqdeG5G<-8+%P71~v8s7Yi$ZYba*!m-nK;SB>jN&ef zHC9=AM7DH)5-JNz>3T!?SP^Qu$D;WbJI7aw=e}l1$3afn{dg;FYWahUrv*FtMg2}J zfJ2eX8%}UUdpFrd#w`JcW6x<^7-LNHhMLCzB!L9FmXuERXlN2Eg%1bW)&c=BWu41V zU(9PJNvNO@Ah?$B>)c^wMUBMT!k+%kGdc!I`MgG?VBssu()In=%stdL487h$d>$ zd_H6V?I^N?T0EHl3l6!B);+ih`6(XrgWa9b`2va`n^yga0Tdv6#bW{)Twe(Q- ztzdQ#d$jA?mJENj^sMzfp#+^>E8nU_-e-L=oE$^lO7z26$GyPu_>09E|GM@<;&aufb3UC3MR8 zc=W@vOGhJk@c9jZz~iG);#t)UyVYCTw^yGXRcBdI5n3#(dfD(kWy&Z~sgDZ}QnAs< z6GsW!bES@0kDDBLESmZ=`kZ@ML)6p|D*_%hu$Ix~l@d{GdOKaNO?Fn4}N!a;@q|A(wrAz~$HSc=a^qoSryXrzB=5>-~q4VyYfLUNWwPHIC}T zY~*UmvCb&gBlwp%g-cXwv%U$Fp)}rb3kOOUnw0SK&Y<|s($wwEXR-Brrc|1!Kp*Cw zJs0Ea(N$gl>i+ve#h>F4ADQY zXZLM`2#&`C%~|^uucP1@-7DnrD7y;zMsR~+|6<3C>Vm6Af~IboLl%&2)lITF`iuz- zUP;$SGEnf>Lj4J(O&tP?KV&G;Obsn^tY9Sy_jA-#gx)*8P|{kvLd@jRGIXE& zg)8ljY;wBsJmilu&LY(y0J(8+$Z`Pu4nJQ)fb`0;#(6pP@-}03#AaeuA*B?Nm<_+k z`^RDl^`;Tvrzrin@a@;wMwdJxh5lI2zVkX;v{5&h8uCvaRuB(vv6d9WhhxxB4OvZl zXwLU0xXBT8)pOLg?4^DC_2;aKG5O6#KIa2c(~%nt>OQ5Lm90qpxseBl8PAp1CGGrs zW3qazaI#6qTW520fUxW%bv0i~mU})&Qf+$PW{7@>PK`UY7ae!L{&cKvK*bi36o$#( z*if5LA!V{N+ky=CYex7_{AH&GQbOT_8Gc8CO~1~c`@8IoF!T(PS!Kg4tJurL-Uayp zAxx|gwSODCmy3l6B+eP?JDttAhL0W!^)~QDDR}K~-*T}U5}1<&&QMLkRVx1=2wR09 ze;)EbJ4r#vRm%0a@bXF0!%$%74_tc`@9|_O033rR)14mjFZIJXLkI~3KI!Er-7m_& zBGm1k%PW6tOO<`bH{ubk58R2K*#(o7;Pmsldu`Qo9FLq2pt1Y{NWX@BqTcZ=gR_ev z+UHDEo1Wbb5PGeOE1p_3kJKB#PI;lP8yX2xqpTI0sN3c@!4(@Twew$Wd(aWSz8sCc zIa5kgHPMC4QzUmiQA)?ZL9&R-bS`1)Vm>{XhSlZtW>8l@RdRl~YA9;$5ki36$IS}x zIaBnnEW>onObC<*bnUpwhI$n8;XFT#!8pz$96114!6TM}k`^Ppn)a@c08WMkOA2Sb zW87%Ggd{9`E<5Z4v=8@7q6b+4OJ55xu; z3b~RbxJRukOnhX<(R4{kJku$vv-;o^_7|&elr&!jL7oMf=hHCGwBHUzK5nH6yM?0` z+n{Q$J3R`5ulK0f`xDKG_y~Or{=??&L}>{q#posTnw}d~DaZF@M&*|A6t*);X?6bm zq0Se2KxuCX8GYI%>kIGwgMY`r;Qho4%o+|?DR0TwMc(Xx?u-`!_aE(j1a5-0aG!tn zlm!Azo?7lwQYD8MCnBclGUtW5$uSvhg`86@_kJ^4KLaKX+BTV6b2EHZ)@>XG-2BLUX_L@dre|4LYV)L!3W3 z%5a$0wFNtzq0VV&OYvtF)X7BA;2?kz z`xK-EM^$CZFnM92W;O)I>Dfk$!ZdmB#M~#Oe(T>jH&uOq&_5g&2%&8 zTJM5kV7XN9K54xS|7QyDBnO(F{Q1^}z;M+dV588X&I@sJ~#@iEV z6EL&ek25E!cByFjhAl~Ekbw90cwI*;u?Xe#aLn0z6jxa8vE%E(%+CQPJvdD92#Qr? z7L>QN_7&}3ZOz#SnZ1lj-5JSrrS>#?B#Xt)>Ao1uNN}y=esRU#a1sW0RfBRX?HL;} zwHJI;FYR&fd;58F@VFv-9O1z$jMeI=PKZN~7Pweea>^dpQxY*}k-a&Fdh-``MMzy1BD zHCBqYczg-RZB)=Dh@9XDgzG<13>*UazS-&?4)Uobbbmz|7(g}@l318GwGkFvuq4W{ z!ah|ejE%kNTrt1~;3)OdWk$TjYQQCacvS zb7=dV@e*ets}Hk)#rx+AN~ns9!wBk%9u=ji z)I3v#_6@R<=**z!f3Wx$;Rdv{u==_!eBaL4*3dv)H%`S8EZaUhybSTf!A|R7if8D` zF(*Y{`FV}7o8{-@^*1x~R#Q!HdBnGIkv_FajENPXHI|EbN~r z<>RS9*D;~7J{r0x5TZq;U0UeBw2M2~_>bxlkVF8UN#WN9Mii<$u1cYchY)P|^+jDs zI&;^V06z*KQA)tB#oj25ti70#0hp>*JP!#0gx|w(A_`u7O#+;- zOjmE$0aPYL-LJT4SNJD(GFiMPgHVe0 z80B4-WCKE}3dtX#S2spG2Ws<>12{ImT&X(F^6vDE-))%E3UyJ*McNm~gl-+p{CxzZ z5kMmLdDaPf@sfk+_0xfDZSY2S<}ZuBH(z)$2p7Bzpx}OznIAk3dgFQA@W}}dg)Ywj zLRs+QMPfJu`2e4f-WQ;DJm2*2mLcnu#V71Zy$2i*WfB; zX|#VmVF0D$crL)e^!3+35FG=}MTo~CW4QHshmLQVses*Fcs#~$Y92^nO!CFVEZvbS zLCX+YL-)@4W=UAWHqxo1xk1Z)M#$2sF8q z9UB@Av_;0g?L(WfIaEK@lgR94@x}01AbtOU^ts1$lt$x}iVdHXjp#Ci3!LH7`Eam??98)6+T3c6ipzUK%tyPjHYA6EL00XJ}F}eT;swlO~~I4 z{qM)gT=fO7<^@|CC0|WeHj9P++=t?6+{G-S7eb_t7v=aeKwM6Rdy8Tck(IPjE43Oy z%l*44`EJYXp5+dm96U7}1vYq)5Mro|Oz|Q^E5iP-c1~hQcH8R%8YO zK*9x0Y>`pk>f{GB@O&`GT96;z9ib*K76HQ<)y%dhWya$IW?$=&aF?{^V9H94@e&%C=9Jd+UOZlgrrRGBRM?IwF_>$4;nnO+XX@Po zFp@74Y>`Xa*9Pp~;MUt`sC(ZGO{pfKda#Ab3tj;GMo2nId>#Y5B9FIO0~1 z(Y+HjY*nFeZb@VU=MF4kq8c$^EPeIKDK>lIf&1kD{F(9dmTK3_k(??pE(F1Kb=b0s z1YLRa?eDd$#3v--#d&Sy(X4m~Er?^KbAi9yS!tTPL<~XJ_=EKLqwqhu0F3w687EHW zdGxUyu2knc<&F0*xMu{)zmIt^fanZdj0l8t-Oi$!l6_zz;`yRlKNXtD>YEiL>6UhX zirQtypdH0(XZUl$7m}?-G^A2%E*MBa9KL?X&W20z)2aiYh|ibLKk3SzRlc>~{^epo z&**Y{0pw7>Al=~lngSn1I^Zvn3Qt6l$cNcDp%b`3Cf}_-qk{nho}?H*08~{n!K!e- zgQj977_k4vw1P&9E1BfUjmqY*+2t=8IJx8xxi*QlNTs5VFdcs4hji$9(=VAA(re;=N%l_ukxlbohh-kg0i?3Ls>Zxy1FjRy<^47nl>VNkti+UJi0~v+!pyNX^j~i0TO*@qC z*TgSbJmdh9Br?g19UlDneOm+xLEYCDmP`6v{at!Yw(U3EUC#Gus`2hBF9E5xTP_Vj z(mhsQMBwTE%N;&()uM1cN}@tK5Wv#$hjPd4`QsZd$`jphKR}C#V!>{hR8ZM{chW<{ zoU0^)^CmQYgHEj1G(~2>K6}~@Oc4|N`zoAaUhNX+F1WGBQ(TPT0Ut3bP*)iBO=$DF z$2W#-bNSaw(2U8R`Xq^E%zJ4Pvg6?q?4@nm2A}RNUOOBS2{f^(pX0JS1t(O%Tgc7x z>;#5l>|MV9tRi#CxQtMs_6ulT*KkV)XGA|}aCTF#KVF(%!~nurdgE2ct$0Y{p)92< z2Ig#FOBJ8*^DL4RMExRMyeS?BzC}DR(sTd2@am_Q!7TO8H4w(8@9IMpeS|76vSIRS zg3=uIrl;jV-6$14iIW9mC5qZV5@z;yGP;PmP{B_bd|7v4zLFn{ESCCrTgRaVhoLYVHravY9nDHo|YJ@rV~1d$4`%;o~)`{7Dk(O-V} z8X9m7d98a1f zv^OzfW0I?l3WGPI31}F1JgE6?C%elSzXt51az8OsHXxQE!I0}JrqQQfBkx%S;!A^O`RtAn3pJ{x@W6vi@UXO|zP zczz+Z$#CUeG|wXtv-OmwGaPo#?%IDlq?01$Mg;Cj=`+g!Lk#wx=t>te-PE1ueoN2RB=z2qB>VNr-QYg0{Bx7Z`+{_BxnYXJrp2NU; zXn+0pCg7xt+*S->?;e{zUeOTYEf@B$Nm4%wdMP)3J+ZSBZF`GH%iL1xDPep#fW2c* zpWKr=3iF;wB>?V-T$pjusZQLFq|tDk=LIgwA50x;4(mj~POluN=`=wI~HeO9jkc8{t2*c_%J!DX2ap z$w1WCVrC9(pLU1ag@=VOdDuy~Wqr?yqW0V44VJRHQBC9iP$+}hN2W{^9Hzh$A>b`b z$Ea)$3lI}rN?xIqvQB`|5+ht_T8Ho~95TwXjBb51J#F73g^H&1UH;zKHZ4#Qf%ib; zhNSj_U)_o?q%|eny8aBwf`O>|{G0;V&~+_Rb8v@(akx1r-{oFw#LnX4j{J)sx&e=R4|po35MFwB?6;HHNew8q6tb@8!xTs%yXJ zP_Y4?TdeQT&d0ooN@TDpeC>}D`r2i8`p>SsvPw8>!IZE}ycdbvCDF3_nr+_!FoWUi zYYs-sL!WpS%a`lA_EvAMtwDpB$><+*+L^=D&^yo7_d=h`1oc+v_?K!C1pTHF8@Lw5 zg?|}gH`2D>cpQK}TJe_UkIB{FgS3u%=@Tbm%WC?Wp-9))kk$-V9LVHY--W^*c4KDHNo{i2nWhK=|2%hjD&% z4+yWs1UxD#alW^R12Fur%Qge@Ek?904(9o()H;Oxf>ak?*LD{QR@Qkr;bO{Pw^9l@c{;~t@Ba#SR@z^%C>PV|=wvi@58s-j=QbORY6Pf5wXYXg)&H^Mucrh!O zmN+ArnuIope6gvW05t*d${+ zD8Pi!EA%w*&f_qMH*m_;gw)`bIWHF>4LeJ2AQ2O4WJ|6H5vA=A3%w&rGRY&?0N2qFWeOBfJSgKu3!9N|z_X8G8u!QRoK&=NP+T{%#WRm%w|j ztNK54c8m5&*d-3Zy~#}@1(v=T$ROH)T&TEb4iBK!IPt|nQ$)cBdrDvo_T1b5H#^se zhbmJX0NBBk4P+oGbVJt6sSFm)H17l$f!~=KK>#~N7f@UOWX<`$)Bi0aHsrOmKR%$e z<0-@3cwf;QH7>x%6iJ-%&`;cYJ)vCcPKP2NkkpDp@z3FA_}k~B(8K?;NT4Q*8F!ag zUpqer2=2lt9a`3-ASFBrHZM$cm9WOvLqFC0O@2LVMOMv0N5M0Ah%0tJ`;5j`nC7<; zp8kC`@OiA6F{3PLM4n+}>TxfDh;Eb+J3(LNQd6Wth~fb!l< zyqy1)<>6@p(3K)aU*Yw9*AQiTJY1k%-rs0IF}G~-v;Tp|7{v5~;25Y;+@&JIXniYB zM$Q(z;Q0^Fzjh;_m-X=WOQ971;}<(F`N{h$Ge(^#gX=6wuJ1?+ zE#Y`{FR4J}5CM^4K*>35{RwS;3d7OHNUxg^KjGENlv%3Byf*d6_kSHXK2N0)1pU2w zd5F(mqSuSAAmdSPa$d~DLcmGc1BB2CFSR0tgR;jt41g3G9r2`6w9;`vM@k3RBDU6> zqlAcwLV}Pu_q;8nnNE7NGE*rSN0)b49 zSA#Vo-g$J9zOWYGMtA)i!YGRKqHl3O@Vnk4Hl5TO$^)G|7v_9+&OOK}G}PBZMd;O< z+o;f~hK-g&G_m^{80<)k&3p)?ah||qABaminO+g}Tn9#(6{dA66-y-m4of1LEERwh zCD*#Mqs0ae7dcs?2^CSOzbQj@-0cb}tvT;Szv)mwx9eritFH!wsRZ8zmAa09*FfRv zHg&!Jr4xvOe;k>vRh=WvStjDemY2TM#b%uus2mlF3%fte{UdG$5r&c3X zq0y+sv6MVuoFOZ_v6EW1TwMKtcyF0syk%=VC3Uqh!7HZB!T-SowZ@nt=Cy z20$b?okzt|AG_x^5hjCKj*B3~img&XQjCyFkA8akHDfY)}H2Fs4_DrHH)ny7|o`S0QNO+A$#0t*f|+ z2Q+Jo{_>t6;7UOSKzm=;N3i^;tirDLXUVXD9m9vzG$ko~o0)CJfjHpFxu~J4YmT)H zK$S4;q*#dIZF<%#`2b&OrR@jnU&`}Q`KSO3sYQmsBGh6Nje5U2hdF1UyYb(JCbB{O1GgOr$&TY?%_Iee=gS82JMz@e~U?(t&jMof596(T66 z40sLLOSij^EOx;!XO#!KZ#V$z#;Y;%6Ira0(J_01oTW7l?y@v2T5lA?DX-UGk)J=< zvp0MiZ&>=&pCF`wcA}X=Is7q0*K3LvK-f`R?5MH9#N_eyk{FPaj=z%Xj2D-|04NQ& zBC7d{$r!R9T|Au?v-wT{wtipwL%=nz4jm#%#wCes z-pBcVji#&2iZ?If48zrW{O!(jXFgP?inraO{nMn0&-&M=ai4>qi@flOpRP#!x=)>h zlN?fJzvi>!Fwzy)Fa2k@GWsKSEVu7E@fgF|rpBIDH)%~Pd#&O1=;#=NmGmF;D^?>Ts&Pi{yrLhVYf6`gt~J&W z5Qre;@|?CxHC^_KouuxbJSGwJ_KRe$VM=jXBMAspRw0!b{3D_3F!2rUhlj_;y{|jO z8k=}}(H4Rw*9-AttJ~dd&|e&;U6dd4PC_c{wY7cSja4p29_7VsT$s~SIm}#}APF4$ z3eqR~pRUvS)aq@&)u(==1Nn7$Dy%AskcFpi{c6>-Ah{8biO{s_5h2G|hAE_FG6QQI zkZ0`aoboMC1^(EAh61}Q2-qq!Y(BJNzasGJ`fI)gkV?S-F|?S3;xI z>PQq4W}AQE+G-@=*E}}yWlzLTXzO$R%5VI_e5UFU3D4o)Eo?+LtLdM9#AgQRen7dW z;KzF~+;oC3!WeemfFYcvak}=g^?FVj;$pyjJ^u)RcTI22HACc)0E9ut1^WY5Ns;7c zH|XvN0Nu}Fm0L8~faJN=Vh?<4lgx91~s_t6?ThhyjHCwHcg2>jNHSs==SOT&l1+ zZo?6nbjwqA1)V=PX3pyln9J*X{yGDUC5{70%`h}Z=z}qf(=`z=4^_v&L5VhNWfiUL za>x-^FjUL@PX)o`HcrrM{2s$jgc&%&s>XzL$k-l?v60X4i&^hKEFo=AZGBu zLyIy@M+mq%ziokXG<_+AV&*IEZ1aj zXnaiXFlM&8v{3~ioV z{R5XYVpJ$8V*t(4D{dp=mw(X-c1GX*YDoRttqv}vNB&r!djR3)DOarrDyi_rPj&Ii zV*>Yw=9_zy`!jNYpYuEM%|DPK@Tdl0S@LEQy`Xa+)?&laf#~&F3VcX+ZI~VXF4v6w(8D3Nnk@ z#z2E${dD}+B40H?({l7qTRHNKi1G|uJF-2V){cw2>CcTk=Dntb@tfr?E1?proEP}X zK)&8KzS|wiimaYnx_1=V`RrluZLd+7VZ(fWWBbPlUe$F0?T?+K+^_T_E^Al2L#8XL z1O9jyaNGMk9k4%CuVpBdy|@~`acyE^($^jju55h+-OAsW9uqybU)y_Xo(Vj%$ET0- zKNsMv9Xtm)uxY*_6rAYCn<-&Mg02*iqs7#g+#Rd+xjQh45(H{vG_nNLJ3-wbGoB$YNFn z{di1}&~@_Ti;1qEYPw=?+LM$ymS1#6bD%D9aOk{BT8TY@O5DMDXP9F`UKlFz7iQdk zM-dUiJYuNaM6G|{FM3gOcYgG(KBe>)8Iv8vtXZXfSj5+vMCWd+!TOw!@}Jeo%bX`C z0fvyU`pwD=*tYw~sLE@=h7J?cGUEQ(0^|RETh~0$@B5kyyEc`{O9~*2K@#1e-diy^ZiKUf)Zx6ZNkjkYG*sHa^#7h98s{e+IPT4VJ z&0a>mh8Bgo9#yWC!yfd%T#NuIz0vT{ZJ{tE3mlnY?+h zVcYqh8|~{~4Uaz<;fldJ@LnPMSU`Co+k>t(O1TJ>?PV%;qzxZX3rZ_xUl^HHSq+|? zNRVrj>>a3j)~*SyHuam1GYvVGIZco+k{gJ?y37PC$PF|Gy04hCQ^|g#Gv0 zOwp~%vn)}k2bCa6ffx%+>eD>tK$9r?Xy#vpNDIYbu}IGJLB0%rkHNaxny_scXc5_5 zC}=%L$bfqoiYoUJ)CDR<-a}#_+#;)y8iv{+(NsQ&W14sAR@Jzrv`%0TL!&`XNnTl| zRdbV#KkBgIB_OBp)1_e~hNh2y(7!KC{tX4WrEx5LsL{R4$qV=sQGe}{3O1~1o}G>r zhpB|~n@Ns(parSZwDRKwfqxG|jfsM;Kyhxyya;C+Pv+WH8b&6*A99&t60?ueSa4(5 zwg_@2{sw!E?pTMu_BY@i$uO?ZEpn@2#K`7y$5S>m!w-1o5xP}tyE2@PMELtx8FX^Y z|JvmbyR(z3ex7i9jl2i=(I7ronihI^hGEU6(U%aQ9gLuIq*YWXn+LK*@jmtjB`5>< zS8z9QfVt-OFt*tgtECN!ZjyDRIf_8~-hFA~c5E*J+nz_hChS9=-^`;NhRQRn(&G}I zuNiLP!L~K4J2NWh>_nH_xx`2-5_bZ z6%%9zZ=0eAF(Gy0ngg@9-DG$y!G70>H4JqGjiWnL*H)jHM5FgfyR!$;z_v~2?V8pl z7Z+GC(^2&h$?;d+DCX+kZO>raKCfEMQnKydR02!CiDsB57?{aESDN98X}hLf+Ex!_ z8a-psX|8Tn*DoSgE#Ky^*nP@VH8HWqJ+XrQa(d2LCSRzZNCkH*Yo{WA2LIBTC*|{0D*|IAqp?G`5RdyUk6VeZzuGq*KdaeW`0 z+|T5Q>e2jG1e=>4lP+mDW(DQnmOTs^=+c@T?V@DpW3zkX3_h zJcZe-?GBzvgO~O0xNe)~H7nul_J>*`(J<_X_lA;NAkVd($n=d5A+>0Zs~d*31wpJu zDq|)m96oN?=v+uYGXf2}*;aGxZU!JeFHvMBdd#Qn$8|XJn#W}En7%Um5j3H^SN@C) zi5HTe+0De${7EBzxRm%PzT8LQIz8(_HRp;htehL%syp+mR~D0+Pw0;3q`NBBs^%m7 ze4u?oeZpaCzNIN4%Mm|U*Sf%wKj~UUTNnq_;o;nA89cUEJ-J&>Aq_8N{ZM{=>_S)m zLbs2-BEXXUKDUz{!ujfsWN+(QSG06+8L9Vi9eoJ@!6GSdL17tRm9LKz?m|mZZlWgI zs5yC+{QTmXMB^6ysFVpsBa9owy%-L?deO+rggfEDxDl3IP|nQ;4y-d}$rHE6;GM;V zWNa{A63#pJlgdP2XB{yn=hNQyS0D_jWR>bjgjSMWbT=EFNn-?G4ep{(Dpw+b#X|{+ zDyfI0aELtHo+zdoE16LszaIL24xkVm4CTvdFK#T7pa@`a)^LjIIR;S&H%8tu9B^fg z43i2ev;UUJGb)S?94x6nL7_{$a7zAbfTB-4b@G#U@yZ3BMB<#2z0{n#dzlqn1sTWZ zhBQ_kkamB=gw!%8u|=)n!0uR1U!1zMo1)3!atDu*)yNBMUthrucuumgR|UqW$eEf` z#L@J|C}H*O$~Zga`k+@ei5JCLs_+s&R|6#SSc(&W8Eo~XZ@*2<@gYFZ`0YAlMq<8> z30#wNW&nwXSyd@-UnV!VNt@VYE)8DGYO}oBlN0LDpOJ6FO)(spLb1fNmZ(K{VLZKn z%hqR2gx;-t_LuyX*j%p3Hn?t^m4?fE$^0llBwmps(gNHV1*z&broZBs9TFP1S%Rfp zT#=vZW{520g>vjm`F1hydA^*FQeLm0azk3;JuC$ijX)UNMW<~JR@MbHs`f&x4pT{A z^NeAH+rp|d&O`OeWTle4yQ7IO=Ej?u$uL=jI^<>~QDl{FQdcnOcby^X2^SXZc$Mq@ zgO)3oo}bJUl`=0%;GV2aWjP%C2N%N+tTz%y=bMoyNfoWq9AsH9C`G@!zQIeD8F1gb z6mBd*tUHzGK_TY8K7Lue7#85cu z_=?%x?_D$(A9`(SPIF3n6n?zQ@qz8sUZ?|o%4qb#i92XaQ#yOesrsC)`#SpQmBcqM zzc1-I#O*+`O?opw8kM6rPacNcr(=^>ZPc<#bP4L2W5@-m7avx65Mbjs?y&wA#v|Ah z^DaO2;un*C;h@r8gwD=b);5xZqqTvJE@ySK(z}iBWDk4Amok;RA44MZub48B?BmQ^ zWg<$co&Co=4cAse@PqSM9OslP3}&7|6t{VQakO<*D5?FP^}t;)Pp&xi49W@?xMQ=m zq(Jv*Q{0FJ%D+uPZn>QnpNRC+UShSlGeKm)B^LOCj17#WTaWYM*G|xDfWF*GjnJ@nYvn0x6oPkNroK%;`c{q~{Ml33{0B zBAd}qIKMyRIb*-_JjJYLdeb|l?ea}pYF&~a{aWO9L#h84`f|kLNrMr`uruyEu5Opu zQ?e7}ai$uA5_F+qiW-8wr(U9ih4%%An(I=1pS`HBF(7v^t5%sb#xx0(*H^r?)1UTR-3a9of8h**Ke96^cgbiw;T9;x29`6+-OwReN)`pJ(%O zaxn{15oTB{MMozU#?OsA^iGc!vx`?MeTzD0nZW!?olYX{!Ax7xqZ{NzQRftAKt022 zuWI}u(0IMpOTOq#3qm~4h zDXM{F;;O`E?>HaoIzi7Fce=)H7Nnp#gmTZev-p>^Qy2NRwlrM-hCK+UXb19DGCeUr zRRRHtNNo-x=6YVVgibiV8@@O6{BwmsvZ)cFA#1c~98$9O;_da7rRu6J&)QrhmG4D3 z0y*)*nQPQY*W#x^YX?6`jj8DN+?a%4O{$1XiV8+WpO?!Gm?$gSXH7iZ+hjXW|5QBRW~Q|zzy;Kp+*`OGC_I9}`L ztJ@1Rm`;mVOBm{DJ`;HE1br3!#r7||Gb@aL+P435@tn_+SJSdLIBvleOq8NnBw%WZ zDs)G6Qrk_i7&PSUp4_f@tQ%5#XItWP#xXurwqDH1BX`r+X)*4AgxArXmujqR*TJLzhJ>g_ZlXzcvE1Gbt2dvJ1l zhO&<1*bWZq#nN{qO~mXEWgjhbLP(C11bBv+HU0;`M`l>LacXb3HQD@| zBL&vqG^Xror@cdcpp^N7dZ@or=q z-FF$T+b8|P%zrFs;}-<890S<*W4P!(Sur`uJ1^$Wy~IR`lLLB9K(?2 zpHcCia;@S%Ol)fFQQ3rKy;mHcpYW2VxBc<__fTL$fxxe`xdwXFg)jDdjG9a?3JGWE zkQB|NNe-armNVk^Y2gmL=xhLSP_ol$=&)8UCx6kKwZN%#`GmKU!JM;HlbkwZ&P;w- zKTp5-&J>KUI!EC1K6vr1Ag8&5pnwK~Mi-sC{N-BQLLkO+-19p|E|#-99@P7a0UNO} zA|h032{jhN8(|1IG%LN_+w3;0KT78=iUWn#*4i<{xH1QED}8EeofAJ^t;f~%I*!~+ z>BFWVs&z9-ZScZ(Uj?aW_!;~sW*OfVvXcmyAetoxE#0J^7Sp(}r*Z2doC+nTJx#GtCxQD!Wkc&Oyg&S-H zxh4@+Um}!)C4c#Q&NCPC*E_K(tR`00E8C=aF4xaH?Oex%n%j>%K~7j-m)Zsp2}mBj zdU(gC1s}`9no9TKO})F>w$?akEAOmTP_|2ssoT{QzWT(6Se~G88`USMO=A*ej1|F` zgFWg%?4?fyO5^@sO38&(X%bX*fb24S0YWGct_1PwK+jg2XuYbIdjdTNWq?UU$B%^I zf#2_LlOD#6f<`)gy4bAf z=w7DegQ%nEp=FzDE9^~=r^Dmlo~-}E-4La`GQ)i{MPnJHidb)SBqb6u;*M`KbRLiJ zA*i8t_rPxaNG)W99$4;Msi46pZSM$~YbiPD8xD4jxIe-)<`c?D-*s#fGL67ogpHes7-Mh)mOPC5EJE}1U+G{uBmCmvK+CbKz?0tFWkQjcAX+f0m*D- z>6uIO@P~mksTiWlZcx2lrTTOa&9kqx2+^=;`Ex8*X%#8DO@1NjFYjDykVViF-Ab~g z<+`UHC9em%8%x)l+QpBRhfwZ_$BMkM#RR^em<4qOgHarNU71b<8zm7;VF_E=?&sS! zB=(y&(C6rPA1mmu$ZUOC>f^I$k&K!5nURiI?ivNVomX;C6id2c7;?WSRV8zl2+>l$ z+))V`pCn6rLXmvhV^f!;q07|Q8ShD%#}yg2FhAuQk~$M~6~J#d}ijoyY+a=zKi?9Z_8 zE+mPUur>L6?0V@?LteI`YJ~u@pjmyre2;ws-7IR&m03H_fGk5IbGdmTDwOe#8Xw5;D4{ zKCzm8D=ivRYR6J{`}5)>`f_!a8zJ*-k&Ky{xwY%|7REFc)CS_yFyUKHq~~vdvp(*p zP!mrcREiPI6a2J)*|-t8Lk)?U-^oUSkZ()Ys|ir6_rcyM;jZlt4-mjT{qf#MuhXGU@OgaM5)qJ zx<-t0^do$1iQW!krrf|rhx?((sM z{a0{>U(U!PX>rkP`I{?3Py}TYhqD0#L@0jo#3bJ4$OYe9_vvYCP8F z$L>tiIT7UJMqhk6isCl0OV-~AYa~%*_D{|aFs6MqAtRiGaq-NpHm?Mbq!N`O<~id= z*?4z@G3vGW`(F=S5*E_r6jxaxmdQiosy&#;yfg0(Mzq5>-*leI5$0pCDYZLNz5ps*QGp7cA5-^J}bKLTpA}sZ^pWigu88on6Dt=mFw5E zKI~*mcl-!;`kjn-+T2@q)uZeudPBj>)vgL<5QqUW`4K+xe$9C2VE9<^LwP!zfXq`gFkSFI4MB2HVpCaJQ z;+Xi%M(`$03d|#SV>tx%(8rb@O5Z10s*UD^im6o(T^Oo-s|BI_k(KA%PSrA|lu$n^cEAx>51M-v2s{jB1 literal 0 HcmV?d00001 diff --git a/assets/narrow.css b/assets/narrow.css new file mode 100644 index 000000000..a1c12dcc4 --- /dev/null +++ b/assets/narrow.css @@ -0,0 +1,218 @@ +body { + font-family: 'Ubuntu',Tahoma,Helvetica,Arial,sans-serif; + color: #111111; + text-align: center; + padding:0 0 22px 0; +} + + div#header{ + position:absolute; + z-index: 100; + top:0; + left:0; + width:100%; + height: 55px; + background: rgba(100, 0, 0, 0.8); + background-size:3000px 55px; + color: #fff; + display:none; + } + + @media screen{ + body>div#header{ + position: fixed; + } + body>div#footer{ + position:fixed; + } + + } + + + div#footer{ + position:absolute; + bottom:0; + left:0; + width:100%; + height:22px; + background: #AD002C; + color: #fff; +} + +#intro-text { +color:#c60032;font-size:1.2em;width:70%;margin-right:auto;margin-left:auto;text-align:justify; +} +div.section-text { +color:#c60032;font-size:1em;width:80%;margin-right:auto;margin-left:auto;text-align:justify; +} + +#tagline { + color: #c60032; + width:80%; + margin-top:0px; + margin-bottom:20px; + margin-left: auto; + margin-right: auto; +} + +div.red-button { + width:150px; + margin-left: auto; + margin-right: auto; + font-weight: 500; + font-size: larger; + background-color: #c60032; + border: 2px solid lightgray; + border-radius: 5px; + padding: 12px; +} +div.red-button a { + text-decoration: none; + color:#FFFFFF; +} +div.red-button a:hover { + text-decoration: none; + font-weight:600; + +} + +#footer { + font-size: 12px; + color:#fff; + padding-top: 4px; +} + +#footer a { + text-decoration: none; + color:#fff; +} +.bg { + display:none; +} +.bg2 { + display:none; +} +.bg-mask { + display:none; +} + +#bg-narrow { + background: url('diamondlattice.png') center center no-repeat ; + opacity: 0.05; + position:absolute; + top:0; + left:0; + z-index: -1; + width:100%; + height:300%; + display:none; +} + +div.summary-nodes-container { + display:none; +} +div.summary-menu-container { + display:block; +} +a.summary-menu-item { + display: block; + width:70%; + margin-left:auto;margin-right:auto; + border-radius:10px; + color:#FFFFFF; + font-size:1.2em; + text-align:center; + background:#c60032; + margin-bottom:5px; +} +a.summary-menu-item:hover{ + color:#FFFFFF; + text-decoration:none; + background:#550000 +} + + +div#menubutton1 { + position: fixed; + top:10px; + left:200px; + width:150px; + height:30px; + border-radius:10px; + color:#FFFFFF; + /* line-height:100px; */ + text-align:center; + background:#c60032; + display: none; + z-index:200; +} +div#menubutton1:hover { + color:#FFFFFF; + text-decoration:none; + background:#550000 +} +div#menubutton2 { + position: fixed; + top:10px; + left:350px; + width:150px; + height:30px; + border-radius:10px; + color:#FFFFFF; + /* line-height:100px; */ + text-align:center; + background:#c60032; + display: none; + z-index:200; +} +div#menubutton2:hover { + color:#FFFFFF; + text-decoration:none; + background:#550000 +} +div#menubutton3 { + position: fixed; + top:10px; + right:350px; + width:150px; + height:30px; + border-radius:10px; + color:#FFFFFF; + /* line-height:100px; */ + text-align:center; + background:#c60032; + display: none; + z-index:200; +} +div#menubutton3:hover { + color:#FFFFFF; + text-decoration:none; + background:#550000 +} +div#menubutton4 { + position: fixed; + top:10px; + right:200px; + width:150px; + height:30px; + border-radius:10px; + color:#FFFFFF; + /* line-height:100px; */ + text-align:center; + background:#c60032; + display: none; + z-index:200; +} +div#menubutton4:hover { + color:#FFFFFF; + text-decoration:none; + background:#550000 +} +div.section-heading { + font-size:2.0em; + color:#c60032; +} +div.section-subtitle { + font-size:1.5em; + color:#c60032; +} \ No newline at end of file diff --git a/assets/redmatrixlogo.png b/assets/redmatrixlogo.png new file mode 100644 index 0000000000000000000000000000000000000000..6929ae14f3e8d1362d27d609097c30a4b0c04806 GIT binary patch literal 105403 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

    D&h1+KtxsF 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

    W3vx}29o9xi1@V^3(VALQbUSpAfD0ei%hpKNd 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 + position: fixed; + } + body>div#footer{ + position:fixed; + } + + } + + div#footer{ + position:absolute; + bottom:0; + left:0; + width:100%; + height:22px; + background: #AD002C; + color: #fff; + } + + + +#tagline { + color: #880000; + width:600px; + margin-top:0px; + margin-bottom:20px; + margin-left: auto; + margin-right: auto; +} + + +.clear { + clear: both; +} + +div.red-button { + width:150px; + margin-left: auto; + margin-right: auto; + font-weight: 500; + font-size: larger; + background-color: #C60032; + border: 2px solid lightgray; + border-radius: 5px; + padding: 12px; +} +div.red-button a { + text-decoration: none; + color:#FFFFFF; +} +div.red-button a:hover { + text-decoration: none; + font-weight:600; +} + +#footer { + font-size: 12px; + color:#fff; + padding-top: 4px; +} + +#footer a { + text-decoration: none; + color:#fff; +} + +.bg { + background: url('diamondlattice.png') center center no-repeat ; + position: fixed; + width: 100%; + height: 1350px; + + top:0px; + left:0px; + opacity: 1.0; + z-index: -1; +} +.bg2 { + background: url('diamondlattice.png') center center no-repeat; + position: fixed; + + width: 100%; + height: 1350px; + top:0px; + left:0px; + opacity: 1.0; + z-index: -1; +} +.bg-mask { + background: rgba(255, 255, 255, 0.95) center center no-repeat; + position: fixed; + width: 100%; + height: 1350px; + top:0; + left:0px; + z-index: -1; + +} +.bg-narrow { + display:none; +} +div.summary-menu-container { + display:none; +} +div.summary-node { + position: fixed; + width: 50px; + text-align: center ; + font-size:1em; + + +} +div.summary-node-header { + font-size: 1.2em; + color:#FFFFFF; + font-weight:bold; +} +div.summary-node-1 { + position: absolute; + top:0px; + left:0px; + width:200px; + height:200px; + border-radius:100px; + color:#CCCCCC; + /* line-height:100px; */ + text-align:center; + background:#C60032; +} +div.summary-node-1:hover{ + color:#FFFFFF; + text-decoration:none; + background:#550000 +} +div.summary-node-1-text { + margin-top:25%; + width: 150px; + margin-left:auto; + margin-right:auto; +} +div.summary-node-2 { + position: absolute; + top:50px; + left:170px; + width:220px; + height:220px; + border-radius:200px; + color:#CCCCCC; + /* line-height:100px; */ + text-align:center; + background:#C60032; +} +div.summary-node-2:hover{ + color:#FFFFFF; + text-decoration:none; + background:#550000 +} +div.summary-node-2-text { + margin-top:30%; + width: 150px; + margin-left:auto; + margin-right:auto; +} +div.summary-node-3 { + position: absolute; + top:0px; + right:20px; + width:250px; + height:250px; + border-radius:200px; + color:#FFFFFF; + /* line-height:100px; */ + text-align:center; + background:#C60032; +} +div.summary-node-3:hover{ + color:#FFFFFF; + text-decoration:none; + background:#550000 +} +div.summary-node-3-text { + margin-top:25%; + width: 200px; + margin-left:auto; + margin-right:auto; +} + +div.summary-node-4 { + position: absolute; + top:200px; + right:180px; + width:200px; + height:200px; + border-radius:200px; + color:#FFFFFF; + /* line-height:100px; */ + text-align:center; + background:#C60032; +} +div.summary-node-4:hover{ + color:#FFFFFF; + text-decoration:none; + background:#550000 +} +div.summary-node-4-text { + margin-top:25%; + width: 150px; + margin-left:auto; + margin-right:auto; +} +div.summary-node-5 { + position: absolute; + top:250px; + left:120px; + width:150px; + height:150px; + border-radius:150px; + color:#FFFFFF; + /* line-height:100px; */ + text-align:center; + background:#C60032; +} +div.summary-node-5:hover{ + color:#FFFFFF; + text-decoration:none; + background:#550000 +} +div.summary-node-5-text { + margin-top:55px; + width: 150px; + margin-left:auto; + margin-right:auto; + font-size:2.0em; + +} +div.summary-node-6 { + position: absolute; + top:20px; + right:270px; + width:150px; + height:150px; + border-radius:150px; + color:#FFFFFF; + /* line-height:100px; */ + text-align:center; + background:#C60032; +} +div.summary-node-6:hover{ + color:#FFFFFF; + text-decoration:none; + background:#550000 +} +div.summary-node-6-text { + margin-top:30px; + width: 100px; + margin-left:auto; + margin-right:auto; +} +div.summary-nodes-container { + position: relative; + margin-left: auto ; + margin-right: auto ; + margin-top:30px; + margin-bottom:30px; + width: 800px; + height: 400px; + text-align: center ; +} +div#menubutton1 { + position: fixed; + top:10px; + left:200px; + width:150px; + height:30px; + border-radius:10px; + color:#FFFFFF; + /* line-height:100px; */ + text-align:center; + background:#C60032; + display: none; + z-index:200; +} +div#menubutton1:hover { + color:#FFFFFF; + text-decoration:none; + background:#550000 +} +div#menubutton2 { + position: fixed; + top:10px; + left:350px; + width:150px; + height:30px; + border-radius:10px; + color:#FFFFFF; + /* line-height:100px; */ + text-align:center; + background:#C60032; + display: none; + z-index:200; +} +div#menubutton2:hover { + color:#FFFFFF; + text-decoration:none; + background:#550000 +} +div#menubutton3 { + position: fixed; + top:10px; + right:350px; + width:150px; + height:30px; + border-radius:10px; + color:#FFFFFF; + /* line-height:100px; */ + text-align:center; + background:#C60032; + display: none; + z-index:200; +} +div#menubutton3:hover { + color:#FFFFFF; + text-decoration:none; + background:#550000 +} +div#menubutton4 { + position: fixed; + top:10px; + right:200px; + width:150px; + height:30px; + border-radius:10px; + color:#FFFFFF; + /* line-height:100px; */ + text-align:center; + background:#C60032; + display: none; + z-index:200; +} +div#menubutton4:hover { + color:#FFFFFF; + text-decoration:none; + background:#550000 +} +div.section-heading { + font-size:2.0em; + color:#C60032; + width:700px; + margin-left:auto; + margin-right:auto; +} +div.section-subtitle { + font-size:1.5em; + color:#BB0000; +} \ No newline at end of file diff --git a/mod/home.php b/mod/home.php index 2b8e83c30..05626dcb5 100644 --- a/mod/home.php +++ b/mod/home.php @@ -1,6 +1,9 @@ profile = array('profile_uid' => $u[0]['channel_id']); - $o .= prepare_page($r[0]); - -} - -// If there's no site channel specified, fallback to the old behaviour - else { $o .= '

    ' . ((x($a->config,'sitename')) ? sprintf( t("Welcome to %s") ,$a->config['sitename']) : "" ) . '

    '; - if(file_exists('home.html')) { - $o .= file_get_contents('home.html'); - $a->page['template'] = 'full'; + if(! $u) { + notice( t('Channel not found.') . EOL); + return; } + + $r = q("select item.* from item left join item_id on item.id = item_id.iid + where item.uid = %d and sid = '%s' and service = 'WEBPAGE' and + item_restrict = %d limit 1", + intval($u[0]['channel_id']), + dbesc($page_id), + intval(ITEM_WEBPAGE) + ); + + if(! $r) { + notice( t('Item not found.') . EOL); + return; + } + + xchan_query($r); + $r = fetch_post_tags($r,true); + $a->profile = array('profile_uid' => $u[0]['channel_id']); + $o .= prepare_page($r[0]); + return $o; } - if (!$a->config['system']['no_login_on_homepage']) - $o .= login(($a->config['system']['register_policy'] == REGISTER_CLOSED) ? 0 : 1); - - call_hooks("home_content",$o); - return $o; -} + if(get_config('system','projecthome')) { + $o .= file_get_contents('assets/home.html'); + $a->page['template'] = 'full'; + return $o; + } + + if(file_exists('home.html')) { + $o .= file_get_contents('home.html'); + } + else { + + // If there's no site channel or home contents configured, fallback to the old behaviour + + $sitename = get_config('system','sitename'); + if($sitename) + $o .= '

    ' . sprintf( t("Welcome to %s") ,$sitename) . '

    '; + if (! $a->config['system']['no_login_on_homepage']) + $o .= login(($a->config['system']['register_policy'] == REGISTER_CLOSED) ? 0 : 1); + } + call_hooks('home_content',$o); + return $o; } From 46fd10a29d40d3448b8d23756bbf3ae11f4dd565 Mon Sep 17 00:00:00 2001 From: friendica Date: Sun, 15 Dec 2013 15:44:36 -0800 Subject: [PATCH 251/271] can't use an access file or we can't see the assets --- assets/.htaccess | 4 ---- 1 file changed, 4 deletions(-) delete mode 100644 assets/.htaccess diff --git a/assets/.htaccess b/assets/.htaccess deleted file mode 100644 index ebba3d779..000000000 --- a/assets/.htaccess +++ /dev/null @@ -1,4 +0,0 @@ -Options -Indexes -Deny from all - - From 6c2d29f73f47fcc45f1d6023f55a35cdf8d1179a Mon Sep 17 00:00:00 2001 From: friendica Date: Sun, 15 Dec 2013 16:02:07 -0800 Subject: [PATCH 252/271] change the top margin so the headline gets in. --- assets/home.html | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/assets/home.html b/assets/home.html index 978139893..773ca53c5 100644 --- a/assets/home.html +++ b/assets/home.html @@ -30,7 +30,7 @@ $(window).scroll(function(e){
    -
    +
    The internet is broken. We're fixing it.
    From 936845089bc0ff8d7e639f361c1de330efb74658 Mon Sep 17 00:00:00 2001 From: friendica Date: Sun, 15 Dec 2013 16:27:39 -0800 Subject: [PATCH 253/271] improve the flow of the message a bit --- assets/home.html | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/assets/home.html b/assets/home.html index 773ca53c5..7ea2c400c 100644 --- a/assets/home.html +++ b/assets/home.html @@ -41,7 +41,9 @@ The internet is broken. We're fixing it.
    -

    Imagine an internet slightly different than what we have today. Imagine if you had an internet where the people using it could create new services and communicate freely and privately - and where you didn't need a different account on every website in the network in order to use each website. Where you had your own space and could share anything you wanted with anybody you wanted, any time you wanted. Where the things you share in private stay private instead of being under constant surveillance from advertising corporations and government intelligence agencies. +

    Imagine an internet slightly different than what we have today. The internet of the future won't require logging in with passwords on every site you wish to access. It will just know who you are. An internet where you need to keep track of hundreds/thousands of passwords on hundreds/thousands of websites is fundamentally broken. But an internet with no privacy and where all your online activities are monitored and tracked is likewise broken. +

    +

    Imagine if you had an internet where the people using it could create new services and communicate freely and privately - and where you didn't need a different account on every website in the network in order to use each website. Where you had your own space and could share anything you wanted with anybody you wanted, any time you wanted. Where the things you share in private stay private instead of being under constant surveillance from advertising corporations and government intelligence agencies.

    @@ -111,7 +113,7 @@ The internet is broken. We're fixing it.
    Decentralise. Build a more robust network.

    -Now open your eyes. We've done some amazing things with decentralisation technology over the last few years and have created a different kind of network. We call it the Red Matrix. Forget the old internet - it's hopelessly broken and increasingly being choked off in order to take your money and spy on you. +Now open your eyes. We've done some amazing things with decentralisation technology over the last few years and have created a different kind of network. We call it the Red Matrix. Forget the old internet - it's hopelessly broken and increasingly being choked off in order to take your money and spy on you. We're building tomorrow's internet today. And we're doing things a bit differently than what you may be used to. We could wait for this new internet to be built, but we don't really trust the typical corporations and governmental bodies to do it right. So we're building it on top of the old internet. And we're building privacy into its DNA. And it's here now.

    The Red Matrix is a decentralised network where people are in charge and the size of your server farm and wealth do not offer any comparable advantage. Anybody may participate on a level playing field. Cloud storage, file sharing, communications, content creation and management belong to everybody and can be shared with anybody (or somebody, or nobody). This is only a representative sample of the services we plan to offer. In an internet where creativity is allowed to flourish and corporate overlords have no power, the door is open to entirely new forms of expression and applications. The Red Matrix software is free and open source; created by volunteers and distributed under the MIT license. @@ -156,7 +158,7 @@ As you browse the matrix viewing channels and their unique content, you are seam Zot's identity layer allows you to provide fine-grained permissions to any content you wish to publish - and these permissions extend across the Red Matrix. This is like having one super huge website made up of an army of small individual websites - and where each channel in the matrix can completely control their privacy and sharing preferences for any web resources they create.

    -Example: you want a photo to be visible to your family and three select friends, but not your work colleagues. In the matrix this is easy. Even if your family members, work colleagues, and friends have accounts on different hubs. +Example: you want a photo to be visible to your family and three select friends, but not your work colleagues. In the matrix this is easy. Even if your family members, work colleagues, and friends all have accounts on different hubs.

    Currently the matrix supports communications, photo albums, events, and files. This will be extended in the future to provide content management services (web pages) and cloud storage facilities such as WebDAV and multi-media libraries. Every object and how it is shared and with whom is completely under your control. From 5837ab69b9abf872c7eaa20ccc6a1f908bcb563b Mon Sep 17 00:00:00 2001 From: friendica Date: Sun, 15 Dec 2013 16:31:58 -0800 Subject: [PATCH 254/271] use consistent font-size for text --- assets/narrow.css | 2 +- assets/wide.css | 4 ++-- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/assets/narrow.css b/assets/narrow.css index a1c12dcc4..dc47c6984 100644 --- a/assets/narrow.css +++ b/assets/narrow.css @@ -43,7 +43,7 @@ body { color:#c60032;font-size:1.2em;width:70%;margin-right:auto;margin-left:auto;text-align:justify; } div.section-text { -color:#c60032;font-size:1em;width:80%;margin-right:auto;margin-left:auto;text-align:justify; +color:#c60032;font-size:1.2em;width:80%;margin-right:auto;margin-left:auto;text-align:justify; } #tagline { diff --git a/assets/wide.css b/assets/wide.css index 4574526b4..dd7322d90 100644 --- a/assets/wide.css +++ b/assets/wide.css @@ -19,7 +19,7 @@ body { color:#C60032;font-size:1.2em;width:700px;margin-right:auto;margin-left:auto;text-align:justify; } div.section-text { -color:#C60032;font-size:1em;width:700px;margin-right:auto;margin-left:auto;text-align:justify; +color:#C60032;font-size:1.2em;width:700px;margin-right:auto;margin-left:auto;text-align:justify; } @@ -146,7 +146,7 @@ div.summary-node { position: fixed; width: 50px; text-align: center ; - font-size:1em; + font-size:1.2em; } From a6987134e5ca957a3ea923cf678a3c4b6df69e41 Mon Sep 17 00:00:00 2001 From: friendica Date: Sun, 15 Dec 2013 17:19:02 -0800 Subject: [PATCH 255/271] headline spacing --- assets/home.html | 4 ++-- assets/wide.css | 1 + 2 files changed, 3 insertions(+), 2 deletions(-) diff --git a/assets/home.html b/assets/home.html index 7ea2c400c..cbeae1fd2 100644 --- a/assets/home.html +++ b/assets/home.html @@ -113,7 +113,7 @@ The internet is broken. We're fixing it.

    Decentralise. Build a more robust network.

    -Now open your eyes. We've done some amazing things with decentralisation technology over the last few years and have created a different kind of network. We call it the Red Matrix. Forget the old internet - it's hopelessly broken and increasingly being choked off in order to take your money and spy on you. We're building tomorrow's internet today. And we're doing things a bit differently than what you may be used to. We could wait for this new internet to be built, but we don't really trust the typical corporations and governmental bodies to do it right. So we're building it on top of the old internet. And we're building privacy into its DNA. And it's here now. +Now open your eyes. We've done some amazing things with decentralisation technology over the last few years and have created a different kind of network. We call it the Red Matrix. Forget the old internet - it's hopelessly broken and increasingly being choked off in order to take your money and spy on you. We're building tomorrow's internet today. And we're doing things a bit differently than what you may be used to. We could wait for this new internet to be built, but we don't really trust the typical corporations and governmental bodies to do it right. So we're building it on top of the old internet. And we're building privacy into its DNA. And it's here now.

    The Red Matrix is a decentralised network where people are in charge and the size of your server farm and wealth do not offer any comparable advantage. Anybody may participate on a level playing field. Cloud storage, file sharing, communications, content creation and management belong to everybody and can be shared with anybody (or somebody, or nobody). This is only a representative sample of the services we plan to offer. In an internet where creativity is allowed to flourish and corporate overlords have no power, the door is open to entirely new forms of expression and applications. The Red Matrix software is free and open source; created by volunteers and distributed under the MIT license. @@ -122,7 +122,7 @@ The Red Matrix is a decentralised network where people are in c And the Red Matrix has Got Zot.

    -So what the heck is Zot? I'm glad you asked... +So what the heck is Zot? I'm glad you asked...

    diff --git a/assets/wide.css b/assets/wide.css index dd7322d90..84dbc47a2 100644 --- a/assets/wide.css +++ b/assets/wide.css @@ -386,6 +386,7 @@ div.section-heading { font-size:2.0em; color:#C60032; width:700px; + margin-bottom: 1em; margin-left:auto; margin-right:auto; } From 817d1461236acf9067ab7ff79d116832f18c282b Mon Sep 17 00:00:00 2001 From: friendica Date: Sun, 15 Dec 2013 18:30:10 -0800 Subject: [PATCH 256/271] bloody hell... php version incompatibility with openssl - openssl no longer accepts a string as an algorithm. Earlier versions didn't recognise sha256. So we'll look to see if the algorithm constant for sha256 is defined and if so we'll use that instead of the string. --- boot.php | 9 ++++++++- include/crypto.php | 4 ++++ 2 files changed, 12 insertions(+), 1 deletion(-) diff --git a/boot.php b/boot.php index 0cde9419d..9c0fb8919 100755 --- a/boot.php +++ b/boot.php @@ -1392,7 +1392,14 @@ function fix_system_urls($oldurl,$newurl) { dbesc($rr['xchan_hash']), dbesc($oldurl) ); - + + + $z = q("update profile set photo = '%s', thumb = '%s' where uid = %d", + dbesc(str_replace($oldurl,$newurl,$rr['xchan_photo_l'])), + dbesc(str_replace($oldurl,$newurl,$rr['xchan_photo_m'])), + intval($rr['channel_id']) + ); + proc_run('php', 'include/notifier.php', 'refresh_all', $rr['channel_id']); } diff --git a/include/crypto.php b/include/crypto.php index e9372fbb4..339d5fe17 100644 --- a/include/crypto.php +++ b/include/crypto.php @@ -4,6 +4,8 @@ function rsa_sign($data,$key,$alg = 'sha256') { if(! $key) return 'no key'; $sig = ''; + if(defined(OPENSSL_ALGO_SHA256) && $alg === 'sha256') + $alg = OPENSSL_ALGO_SHA256; openssl_sign($data,$sig,$key,$alg); return $sig; } @@ -13,6 +15,8 @@ function rsa_verify($data,$sig,$key,$alg = 'sha256') { if(! $key) return false; + if(defined(OPENSSL_ALGO_SHA256) && $alg === 'sha256') + $alg = OPENSSL_ALGO_SHA256; $verify = openssl_verify($data,$sig,$key,$alg); return $verify; } From 065300f7c352dc74e52a09804b7aeb858df1db0a Mon Sep 17 00:00:00 2001 From: friendica Date: Sun, 15 Dec 2013 18:43:54 -0800 Subject: [PATCH 257/271] bloody hell - it isn't defined either. --- include/crypto.php | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/include/crypto.php b/include/crypto.php index 339d5fe17..33cdc10c0 100644 --- a/include/crypto.php +++ b/include/crypto.php @@ -4,7 +4,7 @@ function rsa_sign($data,$key,$alg = 'sha256') { if(! $key) return 'no key'; $sig = ''; - if(defined(OPENSSL_ALGO_SHA256) && $alg === 'sha256') + if(intval(OPENSSL_ALGO_SHA256) && $alg === 'sha256') $alg = OPENSSL_ALGO_SHA256; openssl_sign($data,$sig,$key,$alg); return $sig; @@ -15,7 +15,7 @@ function rsa_verify($data,$sig,$key,$alg = 'sha256') { if(! $key) return false; - if(defined(OPENSSL_ALGO_SHA256) && $alg === 'sha256') + if(intval(OPENSSL_ALGO_SHA256) && $alg === 'sha256') $alg = OPENSSL_ALGO_SHA256; $verify = openssl_verify($data,$sig,$key,$alg); return $verify; From 61a7bfb9426c36b7cac0058f5fe5a0c5c6d4ae71 Mon Sep 17 00:00:00 2001 From: friendica Date: Sun, 15 Dec 2013 20:30:37 -0800 Subject: [PATCH 258/271] use 'a' ACL search instead of 'm' ACL search for mod_sources --- view/js/mod_sources.js | 2 ++ 1 file changed, 2 insertions(+) diff --git a/view/js/mod_sources.js b/view/js/mod_sources.js index fda952cae..2efc7ad5d 100644 --- a/view/js/mod_sources.js +++ b/view/js/mod_sources.js @@ -10,4 +10,6 @@ $(document).ready(function() { } }); + a.setOptions({ autoSubmit: true, params: { type: 'a' }}); + }); From 5a3a72604bf0e1c7ec04fbdbdee7a08c2a340c5a Mon Sep 17 00:00:00 2001 From: friendica Date: Sun, 15 Dec 2013 20:59:52 -0800 Subject: [PATCH 259/271] some re-work of mod_sources --- mod/sources.php | 21 +++++++++++++++++++++ view/js/mod_sources.js | 4 ++-- view/tpl/sources_edit.tpl | 2 +- view/tpl/sources_new.tpl | 2 +- 4 files changed, 25 insertions(+), 4 deletions(-) diff --git a/mod/sources.php b/mod/sources.php index 125184d47..87bab60df 100644 --- a/mod/sources.php +++ b/mod/sources.php @@ -9,11 +9,25 @@ function sources_post(&$a) { $source = intval($_REQUEST['source']); $xchan = $_REQUEST['xchan']; + $abook = intval($_REQUEST['abook']); $words = $_REQUEST['words']; $frequency = $_REQUEST['frequency']; $channel = $a->get_channel(); + if($abook) { + $r = q("select abook_xchan from abook where abook_id = %d and abook_channel = %d limit 1", + intval($abook), + intval(local_user()) + ); + if($r) + $xchan = $r[0]['abook_xchan']; + } + + if(! $xchan) { + notice ( t('Failed to create source. No channel selected.') . EOL); + return; + } if(! $source) { $r = q("insert into source ( src_channel_id, src_channel_xchan, src_xchan, src_patt ) @@ -92,6 +106,12 @@ function sources_content(&$a) { intval(argv(1)), intval(local_user()) ); + if($r) { + $x = q("select abook_id from abook where abook_xchan = '%s' and abook_channel = %d limit 1", + dbesc($r[0]['src_xchan']), + intval(local_user()) + ); + } if(! $r) { notice( t('Source not found.') . EOL); return ''; @@ -106,6 +126,7 @@ function sources_content(&$a) { '$desc' => t('Import all or selected content from the following channel into this channel and distribute it according to your channel settings.'), '$words' => array( 'words', t('Only import content with these words (one per line)'),$r[0]['src_patt'],t('Leave blank to import all public content')), '$xchan' => $r[0]['src_xchan'], + '$abook' => $x[0]['abook_id'], '$name' => array( 'name', t('Channel Name'), $r[0]['xchan_name'], ''), '$submit' => t('Submit') )); diff --git a/view/js/mod_sources.js b/view/js/mod_sources.js index 2efc7ad5d..49880b38f 100644 --- a/view/js/mod_sources.js +++ b/view/js/mod_sources.js @@ -6,10 +6,10 @@ $(document).ready(function() { width: 250, id: 'id-name-ac', onSelect: function(value,data) { - $("#id_xchan").val(data); + $("#id_abook").val(data); } }); - a.setOptions({ autoSubmit: true, params: { type: 'a' }}); + a.setOptions({ params: { type: 'a' }}); }); diff --git a/view/tpl/sources_edit.tpl b/view/tpl/sources_edit.tpl index 6e9cee32b..34023e03f 100644 --- a/view/tpl/sources_edit.tpl +++ b/view/tpl/sources_edit.tpl @@ -4,7 +4,7 @@
    - + {{include file="field_input.tpl" field=$name}} {{include file="field_textarea.tpl" field=$words}} diff --git a/view/tpl/sources_new.tpl b/view/tpl/sources_new.tpl index 267245ae4..3c6a4be30 100644 --- a/view/tpl/sources_new.tpl +++ b/view/tpl/sources_new.tpl @@ -3,7 +3,7 @@
    {{$desc}}
    - + {{include file="field_input.tpl" field=$name}} {{include file="field_textarea.tpl" field=$words}} From a7a775a718ef92c9bd623849baab1e386071d70b Mon Sep 17 00:00:00 2001 From: friendica Date: Mon, 16 Dec 2013 00:25:08 -0800 Subject: [PATCH 260/271] install redbasic during setup so that at least one theme is registered. Otherwise none of the display settings seem to work very well. --- mod/setup.php | 2 ++ version.inc | 2 +- 2 files changed, 3 insertions(+), 1 deletion(-) diff --git a/mod/setup.php b/mod/setup.php index 0198f1f09..245508683 100755 --- a/mod/setup.php +++ b/mod/setup.php @@ -577,6 +577,8 @@ function load_database($db) { function what_next() { $a = get_app(); + // install the standard theme + set_config('system','allowed_themes','redbasic'); $baseurl = $a->get_baseurl(); return t('

    What next

    ') diff --git a/version.inc b/version.inc index d967ddd6a..663647728 100644 --- a/version.inc +++ b/version.inc @@ -1 +1 @@ -2013-12-15.528 +2013-12-16.529 From ae95269c6dd5b354d5f807c96a4b237b543a9b53 Mon Sep 17 00:00:00 2001 From: marijus Date: Mon, 16 Dec 2013 15:41:23 +0100 Subject: [PATCH 261/271] remove some cruft and a typo --- view/theme/redbasic/css/style.css | 61 ++----------------------------- 1 file changed, 4 insertions(+), 57 deletions(-) diff --git a/view/theme/redbasic/css/style.css b/view/theme/redbasic/css/style.css index 0db9caa4e..7c7d450aa 100644 --- a/view/theme/redbasic/css/style.css +++ b/view/theme/redbasic/css/style.css @@ -234,7 +234,7 @@ header #banner #logo-text { background-color: #aec0d3; color: #565854; -moz-border-radius: $radiuspx; - border-radius: $radiuspx;; + border-radius: $radiuspx; } nav .nav-link { @@ -327,8 +327,8 @@ footer { margin-bottom: 15px; } -/*TODO: we should use one class for all this, nets-selected probably obsolete */ -.group-selected, /* .nets-selected, */ .fileas-selected, .categories-selected, .search-selected, .active { +/*TODO: we should use one class for all this. */ +.group-selected, .fileas-selected, .categories-selected, .search-selected, .active { color: #444444 !important; } @@ -676,7 +676,7 @@ footer { list-style: none; } -/* .contact-entry-photo img, */ .profile-match-photo img, #photo-photo img, .directory-photo-img, .photo-album-photo, .photo-top-photo { +.profile-match-photo img, #photo-photo img, .directory-photo-img, .photo-album-photo, .photo-top-photo { border-radius: $radiuspx; -moz-border-radius: $radiuspx; box-shadow: $shadowpx $shadowpx $shadowpx 0 #444444; @@ -734,23 +734,6 @@ footer { #netsearch-box { margin-bottom: 5px; } -/* might be obsolete -.nets-ul { - list-style-type: none; -} - -.nets-ul li { - margin-top: 10px; -} - -.nets-link { - margin-left: 24px; -} -.nets-all { - margin-left: 42px; -} -*/ - #search-save { margin-left: 5px; } @@ -2002,13 +1985,6 @@ ul.menu-popup { .reshared-content { margin-left: 30px; } .shared_header img { margin-right: 10px; } -/* might be obsolete -span.mail-delete { -float: left; -width: 30px; -} -*/ - .tag1 { font-size : 1.0em !important; } @@ -2488,12 +2464,6 @@ img.mail-list-sender-photo { margin-bottom: 10px; } -/* seems oblolete -.contact-entry-photo img { - border: none; -} -*/ - .contact-entry-photo-end { clear: both; } @@ -2506,29 +2476,6 @@ img.mail-list-sender-photo { overflow: hidden; } -/* seems obsolete -.contact-entry-edit-links { - margin-top: 6px; - margin-left: 10px; - width: 16px; -} - -.contact-entry-nav-wrapper { - float: left; - margin-left: 10px; -} - -.contact-entry-edit-links img { - border: none; - margin-right: 15px; -} - -.contact-entry-photo { - float: left; - position: relative; -} -*/ - .contact-entry-end { clear: both; } From afc86875d242027434cb4ffca10e086d53cbbbb8 Mon Sep 17 00:00:00 2001 From: marijus Date: Mon, 16 Dec 2013 15:46:18 +0100 Subject: [PATCH 262/271] move some stuff back to mod_connections.css --- view/css/mod_connections.css | 31 ++++++++++++++++++++++++++++ view/theme/redbasic/css/style.css | 34 ------------------------------- 2 files changed, 31 insertions(+), 34 deletions(-) diff --git a/view/css/mod_connections.css b/view/css/mod_connections.css index d133a1b99..c460fec28 100644 --- a/view/css/mod_connections.css +++ b/view/css/mod_connections.css @@ -104,3 +104,34 @@ margin-top: 20px; } +.contact-entry-wrapper { + float: left; + width: 120px; + height: 120px; + padding: 10px; +} + +#contacts-search { + font-size: 1em; + width: 300px; +} + +#contacts-search-end { + margin-bottom: 10px; +} + +.contact-entry-photo-end { + clear: both; +} + +.contact-entry-name { + float: left; + margin-left: 0px; + margin-right: 10px; + width: 120px; + overflow: hidden; +} + +.contact-entry-end { + clear: both; +} diff --git a/view/theme/redbasic/css/style.css b/view/theme/redbasic/css/style.css index 7c7d450aa..9ac021a54 100644 --- a/view/theme/redbasic/css/style.css +++ b/view/theme/redbasic/css/style.css @@ -2445,37 +2445,3 @@ img.mail-list-sender-photo { #sidebar-group-list ul { list-style-type: none; } - -/* need to put these back in the theme for now - used in more than one module */ - -.contact-entry-wrapper { - float: left; - width: 120px; - height: 120px; - padding: 10px; -} - -#contacts-search { - font-size: 1em; - width: 300px; -} - -#contacts-search-end { - margin-bottom: 10px; -} - -.contact-entry-photo-end { - clear: both; -} - -.contact-entry-name { - float: left; - margin-left: 0px; - margin-right: 10px; - width: 120px; - overflow: hidden; -} - -.contact-entry-end { - clear: both; -} From 50731fa6a6edbd5d4223de239ae791cc03efe9be Mon Sep 17 00:00:00 2001 From: friendica Date: Mon, 16 Dec 2013 13:34:34 -0800 Subject: [PATCH 263/271] bring back the collection edit sidebar widget on the connection edit page until I sort out Comanche on that page. --- mod/connections.php | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/mod/connections.php b/mod/connections.php index d1bb33748..cb859e4a6 100644 --- a/mod/connections.php +++ b/mod/connections.php @@ -39,10 +39,10 @@ function connections_aside(&$a) { if(x($a->data,'abook')) { $a->set_widget('vcard',vcard_from_xchan($a->data['abook'],$a->get_observer())); + $a->set_widget('collections', group_side('connections','group',false,0,$a->data['abook']['abook_xchan'])); } else { $a->set_widget('follow', widget_follow(array())); - $a->set_widget('collections', group_side('connections','group',false,0,((array_key_exists('abook',$a->data)) ? $a->data['abook']['abook_xchan'] : ''))); } From 7b5a42568a7f4cf90e81036b4ed5d93ec3f6e3e2 Mon Sep 17 00:00:00 2001 From: friendica Date: Mon, 16 Dec 2013 18:07:41 -0800 Subject: [PATCH 264/271] Tricky little bug. Allowed somebody to bypass comment permissions. Hopefully the fix will have no undesired side effects. --- include/items.php | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/include/items.php b/include/items.php index 2cec6bc36..b328ca2d1 100755 --- a/include/items.php +++ b/include/items.php @@ -2362,12 +2362,13 @@ function tgroup_check($uid,$item) { $mention = false; // check that the message originated elsewhere and is a top-level post - // or is a followup and we have already accepted the top level post + // or is a followup and we have already accepted the top level post as an uplink if($item['mid'] != $item['parent_mid']) { - $r = q("select id from item where mid = '%s' and uid = %d limit 1", + $r = q("select id from item where mid = '%s' and uid = %d and ( item_flags & %d ) limit 1", dbesc($item['parent_mid']), - intval($uid) + intval($uid), + intval(ITEM_UPLINK) ); if($r) return true; From 9728a1303d4cd6b6cb8866eb79194b2d698b9961 Mon Sep 17 00:00:00 2001 From: friendica Date: Mon, 16 Dec 2013 20:54:03 -0800 Subject: [PATCH 265/271] There's always more to do... --- doc/To-Do-Code.md | 2 ++ 1 file changed, 2 insertions(+) diff --git a/doc/To-Do-Code.md b/doc/To-Do-Code.md index 60b94e6da..df8a476b9 100644 --- a/doc/To-Do-Code.md +++ b/doc/To-Do-Code.md @@ -11,6 +11,8 @@ We need much more than this, but here are areas where developers can help. Pleas * Finish the anti-spam bayesian engine +* Integrate the "open site" list with the register page + * Write more webpage layouts * Write more webpage widgets From b3e3073b991c2ee898b0d8f4edd2df221a538631 Mon Sep 17 00:00:00 2001 From: zottel Date: Tue, 17 Dec 2013 12:23:39 +0100 Subject: [PATCH 266/271] JS-less display --- mod/display.php | 11 +++++++---- 1 file changed, 7 insertions(+), 4 deletions(-) diff --git a/mod/display.php b/mod/display.php index 9aafec8c3..65114272a 100644 --- a/mod/display.php +++ b/mod/display.php @@ -139,13 +139,13 @@ function display_content(&$a, $update = 0, $load = false) { $sql_extra = public_permissions_sql(get_observer_hash()); - if($update && $load) { + if(($update && $load) || ($_COOKIE['jsAvailable'] != 1)) { $updateable = false; $pager_sql = sprintf(" LIMIT %d, %d ",intval($a->pager['start']), intval($a->pager['itemspage'])); - if($load) { + if($load || ($_COOKIE['jsAvailable'] != 1)) { $r = null; if(local_user()) { $r = q("SELECT * from item @@ -202,8 +202,11 @@ function display_content(&$a, $update = 0, $load = false) { } - - $o .= conversation($a, $items, 'display', $update, 'client'); + if ($_COOKIE['jsAvailable'] == 1) { + $o .= conversation($a, $items, 'display', $update, 'client'); + } else { + $o .= conversation($a, $items, 'display', $update, 'traditional'); + } if($updateable) { $x = q("UPDATE item SET item_flags = ( item_flags ^ %d ) From 44ead61339745b975d4cff60894afb18b83fa55f Mon Sep 17 00:00:00 2001 From: friendica Date: Tue, 17 Dec 2013 16:35:22 -0800 Subject: [PATCH 267/271] authtest: do a better job of success/failure indication --- mod/authtest.php | 7 ++++++- mod/post.php | 2 +- version.inc | 2 +- 3 files changed, 8 insertions(+), 3 deletions(-) diff --git a/mod/authtest.php b/mod/authtest.php index 2c8d7b4b4..7747ea504 100644 --- a/mod/authtest.php +++ b/mod/authtest.php @@ -6,7 +6,7 @@ require_once('mod/magic.php'); function authtest_content(&$a) { - + $auth_success = false; $o .= '

    Magic-Auth Diagnostic

    '; if(! local_user()) { @@ -34,11 +34,16 @@ function authtest_content(&$a) { if(! $j) $o .= 'json_decode failure from remote site. ' . print_r($z['body'],true); $o .= 'Remote site responded: ' . print_r($j,true); + if(strpos($j,'Authentication Success')) + $auth_success = true; } else { $o .= 'fetch url failure.' . print_r($z,true); } } + + if(! $auth_success) + $o .= 'Authentication Failed!' . EOL; } return str_replace("\n",'
    ',$o); diff --git a/mod/post.php b/mod/post.php index 73345c4e9..7f495140e 100644 --- a/mod/post.php +++ b/mod/post.php @@ -232,7 +232,7 @@ function post_init(&$a) { if($test) { $ret['success'] = true; - $ret['message'] .= 'Success' . EOL; + $ret['message'] .= 'Authentication Success!' . EOL; json_return_and_die($ret); } diff --git a/version.inc b/version.inc index 663647728..50e01fa2c 100644 --- a/version.inc +++ b/version.inc @@ -1 +1 @@ -2013-12-16.529 +2013-12-17.530 From 98b0e0221d66fe93104328e7027efe77f9c84008 Mon Sep 17 00:00:00 2001 From: friendica Date: Tue, 17 Dec 2013 20:03:45 -0800 Subject: [PATCH 268/271] more comanche stuff --- view/pdl/mod_new_channel.pdl | 1 + view/pdl/mod_register.pdl | 1 + view/php/mod_new_channel.php | 3 --- view/php/mod_register.php | 3 --- 4 files changed, 2 insertions(+), 6 deletions(-) create mode 100644 view/pdl/mod_new_channel.pdl create mode 100644 view/pdl/mod_register.pdl delete mode 100644 view/php/mod_new_channel.php delete mode 100644 view/php/mod_register.php diff --git a/view/pdl/mod_new_channel.pdl b/view/pdl/mod_new_channel.pdl new file mode 100644 index 000000000..733bc248a --- /dev/null +++ b/view/pdl/mod_new_channel.pdl @@ -0,0 +1 @@ +[layout]full[/layout] diff --git a/view/pdl/mod_register.pdl b/view/pdl/mod_register.pdl new file mode 100644 index 000000000..733bc248a --- /dev/null +++ b/view/pdl/mod_register.pdl @@ -0,0 +1 @@ +[layout]full[/layout] diff --git a/view/php/mod_new_channel.php b/view/php/mod_new_channel.php deleted file mode 100644 index e7709cbd8..000000000 --- a/view/php/mod_new_channel.php +++ /dev/null @@ -1,3 +0,0 @@ -page['template'] = 'full'; diff --git a/view/php/mod_register.php b/view/php/mod_register.php deleted file mode 100644 index e7709cbd8..000000000 --- a/view/php/mod_register.php +++ /dev/null @@ -1,3 +0,0 @@ -page['template'] = 'full'; From 1780684c57a068f0278ad576703e044c64a70aa5 Mon Sep 17 00:00:00 2001 From: friendica Date: Tue, 17 Dec 2013 20:26:08 -0800 Subject: [PATCH 269/271] split mod/connections for comanchification --- mod/connedit.php | 708 +++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 708 insertions(+) create mode 100644 mod/connedit.php diff --git a/mod/connedit.php b/mod/connedit.php new file mode 100644 index 000000000..777127c4f --- /dev/null +++ b/mod/connedit.php @@ -0,0 +1,708 @@ +data['abook'] = $r[0]; + } + } + + $channel = $a->get_channel(); + if($channel) + head_set_icon($channel['xchan_photo_s']); + +} + +function connedit_aside(&$a) { + + + if (! local_user()) + return; + + if(x($a->data,'abook')) { + $a->set_widget('vcard',vcard_from_xchan($a->data['abook'],$a->get_observer())); + $a->set_widget('collections', group_side('connections','group',false,0,$a->data['abook']['abook_xchan'])); + } + else { + $a->set_widget('follow', widget_follow(array())); + } + + + $a->set_widget('suggest',widget_suggestions(array())); + $a->set_widget('findpeople',findpeople_widget()); + +} + + + +function connedit_post(&$a) { + + if(! local_user()) + return; + + $contact_id = intval(argv(1)); + if(! $contact_id) + return; + + $orig_record = q("SELECT * FROM abook WHERE abook_id = %d AND abook_channel = %d LIMIT 1", + intval($contact_id), + intval(local_user()) + ); + + if(! $orig_record) { + notice( t('Could not access contact record.') . EOL); + goaway($a->get_baseurl(true) . '/connections'); + return; // NOTREACHED + } + + call_hooks('contact_edit_post', $_POST); + + $profile_id = $_POST['profile-assign']; + if($profile_id) { + $r = q("SELECT profile_guid FROM profile WHERE profile_guid = '%s' AND `uid` = %d LIMIT 1", + dbesc($profile_id), + intval(local_user()) + ); + if(! count($r)) { + notice( t('Could not locate selected profile.') . EOL); + return; + } + } + + $hidden = intval($_POST['hidden']); + + $priority = intval($_POST['poll']); + if($priority > 5 || $priority < 0) + $priority = 0; + + $closeness = intval($_POST['closeness']); + if($closeness < 0) + $closeness = 99; + + $abook_my_perms = 0; + + foreach($_POST as $k => $v) { + if(strpos($k,'perms_') === 0) { + $abook_my_perms += $v; + } + } + + $abook_flags = $orig_record[0]['abook_flags']; + $new_friend = false; + + if(($_REQUEST['pending']) && ($abook_flags & ABOOK_FLAG_PENDING)) { + $abook_flags = ( $abook_flags ^ ABOOK_FLAG_PENDING ); + $new_friend = true; + } + + $r = q("UPDATE abook SET abook_profile = '%s', abook_my_perms = %d , abook_closeness = %d, abook_flags = %d + where abook_id = %d AND abook_channel = %d LIMIT 1", + dbesc($profile_id), + intval($abook_my_perms), + intval($closeness), + intval($abook_flags), + intval($contact_id), + intval(local_user()) + ); + if($r) + info( t('Connection updated.') . EOL); + else + notice( t('Failed to update connection record.') . EOL); + + if((x($a->data,'abook')) && $a->data['abook']['abook_my_perms'] != $abook_my_perms + && (! ($a->data['abook']['abook_flags'] & ABOOK_FLAG_SELF))) { + proc_run('php', 'include/notifier.php', 'permission_update', $contact_id); + } + + if($new_friend) { + $channel = $a->get_channel(); + $default_group = $channel['channel_default_group']; + if($default_group) { + require_once('include/group.php'); + $g = group_rec_byhash(local_user(),$default_group); + if($g) + group_add_member(local_user(),'',$a->data['abook_xchan'],$g['id']); + } + + + + // Check if settings permit ("post new friend activity" is allowed, and + // friends in general or this friend in particular aren't hidden) + // and send out a new friend activity + // TODO + + // pull in a bit of content if there is any to pull in + proc_run('php','include/onepoll.php',$contact_id); + + } + + // Refresh the structure in memory with the new data + + $r = q("SELECT abook.*, xchan.* + FROM abook left join xchan on abook_xchan = xchan_hash + WHERE abook_channel = %d and abook_id = %d LIMIT 1", + intval(local_user()), + intval($contact_id) + ); + if($r) { + $a->data['abook'] = $r[0]; + } + + if($new_friend) { + $arr = array('channel_id' => local_user(), 'abook' => $a->data['abook']); + call_hooks('accept_follow', $arr); + } + + connedit_clone($a); + + return; + +} + +function connedit_clone(&$a) { + + if(! array_key_exists('abook',$a->data)) + return; + $clone = $a->data['abook']; + + unset($clone['abook_id']); + unset($clone['abook_account']); + unset($clone['abook_channel']); + + build_sync_packet(0 /* use the current local_user */, array('abook' => array($clone))); +} + + +function connedit_content(&$a) { + + $sort_type = 0; + $o = ''; + + + if(! local_user()) { + notice( t('Permission denied.') . EOL); + return login(); + } + + if(argc() == 3) { + + $contact_id = intval(argv(1)); + if(! $contact_id) + return; + + $cmd = argv(2); + + $orig_record = q("SELECT abook.*, xchan.* FROM abook left join xchan on abook_xchan = xchan_hash + WHERE abook_id = %d AND abook_channel = %d AND NOT ( abook_flags & %d ) and not ( abook_flags & %d ) LIMIT 1", + intval($contact_id), + intval(local_user()), + intval(ABOOK_FLAG_SELF), + // allow drop even if pending, just duplicate the self query + intval(($cmd === 'drop') ? ABOOK_FLAG_SELF : ABOOK_FLAG_PENDING) + ); + + if(! count($orig_record)) { + notice( t('Could not access address book record.') . EOL); + goaway($a->get_baseurl(true) . '/connections'); + } + + if($cmd === 'update') { + + // pull feed and consume it, which should subscribe to the hub. + proc_run('php',"include/poller.php","$contact_id"); + goaway($a->get_baseurl(true) . '/connections/' . $contact_id); + + } + + if($cmd === 'refresh') { + if(! zot_refresh($orig_record[0],get_app()->get_channel())) + notice( t('Refresh failed - channel is currently unavailable.') ); + goaway($a->get_baseurl(true) . '/connections/' . $contact_id); + } + + if($cmd === 'block') { + if(abook_toggle_flag($orig_record[0],ABOOK_FLAG_BLOCKED)) { + info((($orig_record[0]['abook_flags'] & ABOOK_FLAG_BLOCKED) + ? t('Channel has been unblocked') + : t('Channel has been blocked')) . EOL ); + connedit_clone($a); + } + else + notice(t('Unable to set address book parameters.') . EOL); + goaway($a->get_baseurl(true) . '/connections/' . $contact_id); + } + + if($cmd === 'ignore') { + if(abook_toggle_flag($orig_record[0],ABOOK_FLAG_IGNORED)) { + info((($orig_record[0]['abook_flags'] & ABOOK_FLAG_IGNORED) + ? t('Channel has been unignored') + : t('Channel has been ignored')) . EOL ); + connedit_clone($a); + } + else + notice(t('Unable to set address book parameters.') . EOL); + goaway($a->get_baseurl(true) . '/connections/' . $contact_id); + } + + if($cmd === 'archive') { + if(abook_toggle_flag($orig_record[0],ABOOK_FLAG_ARCHIVED)) { + info((($orig_record[0]['abook_flags'] & ABOOK_FLAG_ARCHIVED) + ? t('Channel has been unarchived') + : t('Channel has been archived')) . EOL ); + connedit_clone($a); + } + else + notice(t('Unable to set address book parameters.') . EOL); + goaway($a->get_baseurl(true) . '/connections/' . $contact_id); + } + + if($cmd === 'hide') { + if(abook_toggle_flag($orig_record[0],ABOOK_FLAG_HIDDEN)) { + info((($orig_record[0]['abook_flags'] & ABOOK_FLAG_HIDDEN) + ? t('Channel has been unhidden') + : t('Channel has been hidden')) . EOL ); + connedit_clone($a); + } + else + notice(t('Unable to set address book parameters.') . EOL); + goaway($a->get_baseurl(true) . '/connections/' . $contact_id); + } + + // We'll prevent somebody from unapproving a contact. + + if($cmd === 'approve') { + if($orig_record[0]['abook_flags'] & ABOOK_FLAG_PENDING) { + if(abook_toggle_flag($orig_record[0],ABOOK_FLAG_PENDING)) { + info((($orig_record[0]['abook_flags'] & ABOOK_FLAG_PENDING) + ? t('Channel has been approved') + : t('Channel has been unapproved')) . EOL ); + connedit_clone($a); + } + else + notice(t('Unable to set address book parameters.') . EOL); + } + goaway($a->get_baseurl(true) . '/connections/' . $contact_id); + } + + + if($cmd === 'drop') { + + require_once('include/Contact.php'); +// FIXME +// terminate_friendship($a->get_channel(),$orig_record[0]); + + contact_remove(local_user(), $orig_record[0]['abook_id']); +// FIXME - send to clones + info( t('Contact has been removed.') . EOL ); + if(x($_SESSION,'return_url')) + goaway($a->get_baseurl(true) . '/' . $_SESSION['return_url']); + goaway($a->get_baseurl(true) . '/contacts'); + + } + } + + if((x($a->data,'abook')) && (is_array($a->data['abook']))) { + + $contact_id = $a->data['abook']['abook_id']; + $contact = $a->data['abook']; + + + $tabs = array( + + array( + 'label' => t('View Profile'), + 'url' => $a->get_baseurl(true) . '/chanview/?f=&cid=' . $contact['abook_id'], + 'sel' => '', + 'title' => sprintf( t('View %s\'s profile'), $contact['xchan_name']), + ), + + array( + 'label' => t('Refresh Permissions'), + 'url' => $a->get_baseurl(true) . '/connections/' . $contact['abook_id'] . '/refresh', + 'sel' => '', + 'title' => t('Fetch updated permissions'), + ), + + array( + 'label' => t('Recent Activity'), + 'url' => $a->get_baseurl(true) . '/network/?f=&cid=' . $contact['abook_id'], + 'sel' => '', + 'title' => t('View recent posts and comments'), + ), + + array( + 'label' => (($contact['abook_flags'] & ABOOK_FLAG_BLOCKED) ? t('Unblock') : t('Block')), + 'url' => $a->get_baseurl(true) . '/connections/' . $contact['abook_id'] . '/block', + 'sel' => (($contact['abook_flags'] & ABOOK_FLAG_BLOCKED) ? 'active' : ''), + 'title' => t('Block or Unblock this connection'), + ), + + array( + 'label' => (($contact['abook_flags'] & ABOOK_FLAG_IGNORED) ? t('Unignore') : t('Ignore')), + 'url' => $a->get_baseurl(true) . '/connections/' . $contact['abook_id'] . '/ignore', + 'sel' => (($contact['abook_flags'] & ABOOK_FLAG_IGNORED) ? 'active' : ''), + 'title' => t('Ignore or Unignore this connection'), + ), + array( + 'label' => (($contact['abook_flags'] & ABOOK_FLAG_ARCHIVED) ? t('Unarchive') : t('Archive')), + 'url' => $a->get_baseurl(true) . '/connections/' . $contact['abook_id'] . '/archive', + 'sel' => (($contact['abook_flags'] & ABOOK_FLAG_ARCHIVED) ? 'active' : ''), + 'title' => t('Archive or Unarchive this connection'), + ), + array( + 'label' => (($contact['abook_flags'] & ABOOK_FLAG_HIDDEN) ? t('Unhide') : t('Hide')), + 'url' => $a->get_baseurl(true) . '/connections/' . $contact['abook_id'] . '/hide', + 'sel' => (($contact['abook_flags'] & ABOOK_FLAG_HIDDEN) ? 'active' : ''), + 'title' => t('Hide or Unhide this connection'), + ), + + array( + 'label' => t('Delete'), + 'url' => $a->get_baseurl(true) . '/connections/' . $contact['abook_id'] . '/drop', + 'sel' => '', + 'title' => t('Delete this connection'), + ), + + ); + + $self = false; + + if(! ($contact['abook_flags'] & ABOOK_FLAG_SELF)) { + $tab_tpl = get_markup_template('common_tabs.tpl'); + $t = replace_macros($tab_tpl, array('$tabs'=>$tabs)); + } + else + $self = true; + + $a->page['htmlhead'] .= replace_macros(get_markup_template('contact_head.tpl'), array( + '$baseurl' => $a->get_baseurl(true), + '$editselect' => $editselect + )); + + require_once('include/contact_selectors.php'); + + $tpl = get_markup_template("abook_edit.tpl"); + + if(feature_enabled(local_user(),'affinity')) { + + $slider_tpl = get_markup_template('contact_slider.tpl'); + $slide = replace_macros($slider_tpl,array( + '$me' => t('Me'), + '$val' => (($contact['abook_closeness']) ? $contact['abook_closeness'] : 99), + '$intimate' => t('Best Friends'), + '$friends' => t('Friends'), + '$oldfriends' => t('Former Friends'), + '$acquaintances' => t('Acquaintances'), + '$world' => t('Unknown') + )); + } + + $perms = array(); + $channel = $a->get_channel(); + + $global_perms = get_perms(); + $existing = get_all_perms(local_user(),$contact['abook_xchan']); + + $unapproved = array('pending', t('Approve this connection'), '', t('Accept connection to allow communication')); + + foreach($global_perms as $k => $v) { + $thisperm = (($contact['abook_my_perms'] & $v[1]) ? "1" : ''); + + // For auto permissions (when $self is true) we don't want to look at existing + // permissions because they are enabled for the channel owner + + if((! $self) && ($existing[$k])) + $thisperm = "1"; + + $perms[] = array('perms_' . $k, $v[3], (($contact['abook_their_perms'] & $v[1]) ? "1" : ""),$thisperm, $v[1], (($channel[$v[0]] == PERMS_SPECIFIC) ? '' : '1'), $v[4]); + } + + $o .= replace_macros($tpl,array( + + '$header' => (($self) ? t('Automatic Permissions Settings') : sprintf( t('Connections: settings for %s'),$contact['xchan_name'])), + '$addr' => $contact['xchan_addr'], + '$notself' => (($self) ? '' : '1'), + '$self' => (($self) ? '1' : ''), + '$autolbl' => t('When receiving a channel introduction, any permissions provided here will be applied to the new connection automatically and the introduction approved. Leave this page if you do not wish to use this feature.'), + '$viewprof' => t('View Profile'), + '$lbl_slider' => t('Slide to adjust your degree of friendship'), + '$slide' => $slide, + '$tabs' => $t, + '$tab_str' => $tab_str, + '$is_pending' => (($contact['abook_flags'] & ABOOK_FLAG_PENDING) ? 1 : ''), + '$unapproved' => $unapproved, + '$inherited' => t('inherited'), + '$approve' => t('Approve this connection'), + '$noperms' => (((! $self) && (! $contact['abook_my_perms'])) ? t('Connection has no individual permissions!') : ''), + '$noperm_desc' => (((! $self) && (! $contact['abook_my_perms'])) ? t('This may be appropriate based on your
    privacy settings, though you may wish to review the "Advanced Permissions".') : ''), + '$submit' => t('Submit'), + '$lbl_vis1' => t('Profile Visibility'), + '$lbl_vis2' => sprintf( t('Please choose the profile you would like to display to %s when viewing your profile securely.'), $contact['xchan_name']), + '$lbl_info1' => t('Contact Information / Notes'), + '$infedit' => t('Edit contact notes'), + '$close' => $contact['abook_closeness'], + '$them' => t('Their Settings'), + '$me' => t('My Settings'), + '$perms' => $perms, + '$forum' => t('Forum Members'), + '$soapbox' => t('Soapbox'), + '$full' => t('Full Sharing'), + '$cautious' => t('Cautious Sharing'), + '$follow' => t('Follow Only'), + '$permlbl' => t('Individual Permissions'), + '$permnote' => t('Some permissions may be inherited from your channel privacy settings, which have higher priority. Changing those inherited settings on this page will have no effect.'), + '$advanced' => t('Advanced Permissions'), + '$quick' => t('Quick Links'), + '$common_link' => $a->get_baseurl(true) . '/common/loc/' . local_user() . '/' . $contact['id'], + '$all_friends' => $all_friends, + '$relation_text' => $relation_text, + '$visit' => sprintf( t('Visit %s\'s profile - %s'),$contact['xchan_name'],$contact['xchan_url']), + '$blockunblock' => t('Block/Unblock contact'), + '$ignorecont' => t('Ignore contact'), + '$lblcrepair' => t("Repair URL settings"), + '$lblrecent' => t('View conversations'), + '$lblsuggest' => $lblsuggest, + '$delete' => t('Delete contact'), + '$poll_interval' => contact_poll_interval($contact['priority'],(! $poll_enabled)), + '$poll_enabled' => $poll_enabled, + '$lastupdtext' => t('Last update:'), + '$lost_contact' => $lost_contact, + '$updpub' => t('Update public posts'), + '$last_update' => $last_update, + '$udnow' => t('Update now'), + '$profile_select' => contact_profile_assign($contact['abook_profile']), + '$multiprofs' => feature_enabled(local_user(),'multi_profiles'), + '$contact_id' => $contact['abook_id'], + '$block_text' => (($contact['blocked']) ? t('Unblock') : t('Block') ), + '$ignore_text' => (($contact['readonly']) ? t('Unignore') : t('Ignore') ), + '$blocked' => (($contact['blocked']) ? t('Currently blocked') : ''), + '$ignored' => (($contact['readonly']) ? t('Currently ignored') : ''), + '$archived' => (($contact['archive']) ? t('Currently archived') : ''), + '$pending' => (($contact['archive']) ? t('Currently pending') : ''), + '$hidden' => array('hidden', t('Hide this contact from others'), ($contact['hidden'] == 1), t('Replies/likes to your public posts may still be visible')), + '$photo' => $contact['photo'], + '$name' => $contact['name'], + '$dir_icon' => $dir_icon, + '$alt_text' => $alt_text, + '$sparkle' => $sparkle, + '$url' => $url + + )); + + $arr = array('contact' => $contact,'output' => $o); + + call_hooks('contact_edit', $arr); + + return $arr['output']; + + } + + $blocked = false; + $hidden = false; + $ignored = false; + $archived = false; + $unblocked = false; + $pending = false; + + $all = false; + + $_SESSION['return_url'] = $a->query_string; + + $search_flags = 0; + $head = ''; + + if(argc() == 2) { + switch(argv(1)) { + case 'blocked': + $search_flags = ABOOK_FLAG_BLOCKED; + $head = t('Blocked'); + $blocked = true; + break; + case 'ignored': + $search_flags = ABOOK_FLAG_IGNORED; + $head = t('Ignored'); + $ignored = true; + break; + case 'hidden': + $search_flags = ABOOK_FLAG_HIDDEN; + $head = t('Hidden'); + $hidden = true; + break; + case 'archived': + $search_flags = ABOOK_FLAG_ARCHIVED; + $head = t('Archived'); + $archived = true; + break; + case 'pending': + $search_flags = ABOOK_FLAG_PENDING; + $head = t('New'); + $pending = true; + nav_set_selected('intros'); + break; + + case 'all': + $head = t('All'); + default: + $search_flags = 0; + $all = true; + break; + + } + + $sql_extra = (($search_flags) ? " and ( abook_flags & " . $search_flags . " ) " : ""); + + + } + else { + $sql_extra = " and not ( abook_flags & " . ABOOK_FLAG_BLOCKED . " ) "; + $unblocked = true; + } + + $search = ((x($_REQUEST,'search')) ? notags(trim($_REQUEST['search'])) : ''); + + $tabs = array( + array( + 'label' => t('Suggestions'), + 'url' => $a->get_baseurl(true) . '/suggest', + 'sel' => '', + 'title' => t('Suggest new connections'), + ), + array( + 'label' => t('New Connections'), + 'url' => $a->get_baseurl(true) . '/connections/pending', + 'sel' => ($pending) ? 'active' : '', + 'title' => t('Show pending (new) connections'), + ), + array( + 'label' => t('All Connections'), + 'url' => $a->get_baseurl(true) . '/connections/all', + 'sel' => ($all) ? 'active' : '', + 'title' => t('Show all connections'), + ), + array( + 'label' => t('Unblocked'), + 'url' => $a->get_baseurl(true) . '/connections', + 'sel' => (($unblocked) && (! $search) && (! $nets)) ? 'active' : '', + 'title' => t('Only show unblocked connections'), + ), + + array( + 'label' => t('Blocked'), + 'url' => $a->get_baseurl(true) . '/connections/blocked', + 'sel' => ($blocked) ? 'active' : '', + 'title' => t('Only show blocked connections'), + ), + + array( + 'label' => t('Ignored'), + 'url' => $a->get_baseurl(true) . '/connections/ignored', + 'sel' => ($ignored) ? 'active' : '', + 'title' => t('Only show ignored connections'), + ), + + array( + 'label' => t('Archived'), + 'url' => $a->get_baseurl(true) . '/connections/archived', + 'sel' => ($archived) ? 'active' : '', + 'title' => t('Only show archived connections'), + ), + + array( + 'label' => t('Hidden'), + 'url' => $a->get_baseurl(true) . '/connections/hidden', + 'sel' => ($hidden) ? 'active' : '', + 'title' => t('Only show hidden connections'), + ), + + ); + + $tab_tpl = get_markup_template('common_tabs.tpl'); + $t = replace_macros($tab_tpl, array('$tabs'=>$tabs)); + + $searching = false; + if($search) { + $search_hdr = $search; + $search_txt = dbesc(protect_sprintf(preg_quote($search))); + $searching = true; + } + $sql_extra .= (($searching) ? protect_sprintf(" AND xchan_name like '%$search_txt%' ") : ""); + + + $r = q("SELECT COUNT(abook.abook_id) AS total FROM abook left join xchan on abook.abook_xchan = xchan.xchan_hash + where abook_channel = %d and not (abook_flags & %d) $sql_extra $sql_extra2 ", + intval(local_user()), + intval(ABOOK_FLAG_SELF) + ); + if(count($r)) { + $a->set_pager_total($r[0]['total']); + $total = $r[0]['total']; + } + + $r = q("SELECT abook.*, xchan.* FROM abook left join xchan on abook.abook_xchan = xchan.xchan_hash + WHERE abook_channel = %d and not (abook_flags & %d) $sql_extra $sql_extra2 ORDER BY xchan_name LIMIT %d , %d ", + intval(local_user()), + intval(ABOOK_FLAG_SELF), + intval($a->pager['start']), + intval($a->pager['itemspage']) + ); + + $contacts = array(); + + if(count($r)) { + + foreach($r as $rr) { + if($rr['xchan_url']) { + $contacts[] = array( + 'img_hover' => sprintf( t('%1$s [%2$s]'),$rr['xchan_name'],$rr['xchan_url']), + 'edit_hover' => t('Edit contact'), + 'id' => $rr['abook_id'], + 'alt_text' => $alt_text, + 'dir_icon' => $dir_icon, + 'thumb' => $rr['xchan_photo_m'], + 'name' => $rr['xchan_name'], + 'username' => $rr['xchan_name'], + 'sparkle' => $sparkle, + 'link' => z_root() . '/connections/' . $rr['abook_id'], + 'url' => $rr['xchan_url'], + 'network' => network_to_name($rr['network']), + ); + } + } + } + + + $tpl = get_markup_template("contacts-template.tpl"); + $o .= replace_macros($tpl,array( + '$header' => t('Connections') . (($head) ? ' - ' . $head : ''), + '$tabs' => $t, + '$total' => $total, + '$search' => $search_hdr, + '$desc' => t('Search your connections'), + '$finding' => (($searching) ? t('Finding: ') . "'" . $search . "'" : ""), + '$submit' => t('Find'), + '$cmd' => $a->cmd, + '$contacts' => $contacts, + '$paginate' => paginate($a), + + )); + + return $o; +} From 38fd8410eb5c66928cb24bb87ad38657f53aec3a Mon Sep 17 00:00:00 2001 From: friendica Date: Wed, 18 Dec 2013 01:00:08 -0800 Subject: [PATCH 270/271] split off mod_connections into mod_connections & mod_connedit - lots of links to fix --- include/api.php | 3 +- include/conversation.php | 2 +- include/widgets.php | 2 +- mod/connections.php | 336 +------------------------------------- mod/connedit.php | 219 ++----------------------- mod/follow.php | 2 +- mod/settings.php | 2 +- view/css/mod_connedit.css | 137 ++++++++++++++++ view/tpl/abook_edit.tpl | 2 +- 9 files changed, 160 insertions(+), 545 deletions(-) create mode 100644 view/css/mod_connedit.css diff --git a/include/api.php b/include/api.php index 093839875..463d29cf8 100644 --- a/include/api.php +++ b/include/api.php @@ -362,7 +362,8 @@ require_once('include/photos.php'); 'location' => ($usr) ? $usr[0]['channel_location'] : '', 'profile_image_url' => $uinfo[0]['xchan_photo_l'], 'url' => $uinfo[0]['xchan_url'], - 'contact_url' => $a->get_baseurl()."/connections/".$uinfo[0]['abook_id'], +//FIXME + 'contact_url' => $a->get_baseurl() . "/connections/".$uinfo[0]['abook_id'], 'protected' => false, 'friends_count' => intval($countfriends), 'created_at' => api_date($uinfo[0]['abook_created']), diff --git a/include/conversation.php b/include/conversation.php index 29fb8a163..2ba3948bf 100644 --- a/include/conversation.php +++ b/include/conversation.php @@ -915,7 +915,7 @@ function item_photo_menu($item){ if($contact) { $poke_link = $a->get_baseurl($ssl_state) . '/poke/?f=&c=' . $contact['abook_id']; - $contact_url = $a->get_baseurl($ssl_state) . '/connections/' . $contact['abook_id']; + $contact_url = $a->get_baseurl($ssl_state) . '/connedit/' . $contact['abook_id']; $posts_link = $a->get_baseurl($ssl_state) . '/network/?cid=' . $contact['abook_id']; $clean_url = normalise_link($item['author-link']); diff --git a/include/widgets.php b/include/widgets.php index 888da37a2..9d6617aa2 100644 --- a/include/widgets.php +++ b/include/widgets.php @@ -436,7 +436,7 @@ function widget_settings_menu($arr) { array( 'label' => t('Automatic Permissions (Advanced)'), - 'url' => $a->get_baseurl(true) . '/connections/' . $abook_self_id, + 'url' => $a->get_baseurl(true) . '/connedit/' . $abook_self_id, 'selected' => '' ), diff --git a/mod/connections.php b/mod/connections.php index cb859e4a6..10f0468b6 100644 --- a/mod/connections.php +++ b/mod/connections.php @@ -13,18 +13,6 @@ function connections_init(&$a) { if(! local_user()) return; - if((argc() == 2) && intval(argv(1))) { - $r = q("SELECT abook.*, xchan.* - FROM abook left join xchan on abook_xchan = xchan_hash - WHERE abook_channel = %d and abook_id = %d LIMIT 1", - intval(local_user()), - intval(argv(1)) - ); - if($r) { - $a->data['abook'] = $r[0]; - } - } - $channel = $a->get_channel(); if($channel) head_set_icon($channel['xchan_photo_s']); @@ -37,13 +25,8 @@ function connections_aside(&$a) { if (! local_user()) return; - if(x($a->data,'abook')) { - $a->set_widget('vcard',vcard_from_xchan($a->data['abook'],$a->get_observer())); - $a->set_widget('collections', group_side('connections','group',false,0,$a->data['abook']['abook_xchan'])); - } - else { - $a->set_widget('follow', widget_follow(array())); - } + + $a->set_widget('follow', widget_follow(array())); $a->set_widget('suggest',widget_suggestions(array())); @@ -202,319 +185,6 @@ function connections_content(&$a) { return login(); } - if(argc() == 3) { - - $contact_id = intval(argv(1)); - if(! $contact_id) - return; - - $cmd = argv(2); - - $orig_record = q("SELECT abook.*, xchan.* FROM abook left join xchan on abook_xchan = xchan_hash - WHERE abook_id = %d AND abook_channel = %d AND NOT ( abook_flags & %d ) and not ( abook_flags & %d ) LIMIT 1", - intval($contact_id), - intval(local_user()), - intval(ABOOK_FLAG_SELF), - // allow drop even if pending, just duplicate the self query - intval(($cmd === 'drop') ? ABOOK_FLAG_SELF : ABOOK_FLAG_PENDING) - ); - - if(! count($orig_record)) { - notice( t('Could not access address book record.') . EOL); - goaway($a->get_baseurl(true) . '/connections'); - } - - if($cmd === 'update') { - - // pull feed and consume it, which should subscribe to the hub. - proc_run('php',"include/poller.php","$contact_id"); - goaway($a->get_baseurl(true) . '/connections/' . $contact_id); - - } - - if($cmd === 'refresh') { - if(! zot_refresh($orig_record[0],get_app()->get_channel())) - notice( t('Refresh failed - channel is currently unavailable.') ); - goaway($a->get_baseurl(true) . '/connections/' . $contact_id); - } - - if($cmd === 'block') { - if(abook_toggle_flag($orig_record[0],ABOOK_FLAG_BLOCKED)) { - info((($orig_record[0]['abook_flags'] & ABOOK_FLAG_BLOCKED) - ? t('Channel has been unblocked') - : t('Channel has been blocked')) . EOL ); - connections_clone($a); - } - else - notice(t('Unable to set address book parameters.') . EOL); - goaway($a->get_baseurl(true) . '/connections/' . $contact_id); - } - - if($cmd === 'ignore') { - if(abook_toggle_flag($orig_record[0],ABOOK_FLAG_IGNORED)) { - info((($orig_record[0]['abook_flags'] & ABOOK_FLAG_IGNORED) - ? t('Channel has been unignored') - : t('Channel has been ignored')) . EOL ); - connections_clone($a); - } - else - notice(t('Unable to set address book parameters.') . EOL); - goaway($a->get_baseurl(true) . '/connections/' . $contact_id); - } - - if($cmd === 'archive') { - if(abook_toggle_flag($orig_record[0],ABOOK_FLAG_ARCHIVED)) { - info((($orig_record[0]['abook_flags'] & ABOOK_FLAG_ARCHIVED) - ? t('Channel has been unarchived') - : t('Channel has been archived')) . EOL ); - connections_clone($a); - } - else - notice(t('Unable to set address book parameters.') . EOL); - goaway($a->get_baseurl(true) . '/connections/' . $contact_id); - } - - if($cmd === 'hide') { - if(abook_toggle_flag($orig_record[0],ABOOK_FLAG_HIDDEN)) { - info((($orig_record[0]['abook_flags'] & ABOOK_FLAG_HIDDEN) - ? t('Channel has been unhidden') - : t('Channel has been hidden')) . EOL ); - connections_clone($a); - } - else - notice(t('Unable to set address book parameters.') . EOL); - goaway($a->get_baseurl(true) . '/connections/' . $contact_id); - } - - // We'll prevent somebody from unapproving a contact. - - if($cmd === 'approve') { - if($orig_record[0]['abook_flags'] & ABOOK_FLAG_PENDING) { - if(abook_toggle_flag($orig_record[0],ABOOK_FLAG_PENDING)) { - info((($orig_record[0]['abook_flags'] & ABOOK_FLAG_PENDING) - ? t('Channel has been approved') - : t('Channel has been unapproved')) . EOL ); - connections_clone($a); - } - else - notice(t('Unable to set address book parameters.') . EOL); - } - goaway($a->get_baseurl(true) . '/connections/' . $contact_id); - } - - - if($cmd === 'drop') { - - require_once('include/Contact.php'); -// FIXME -// terminate_friendship($a->get_channel(),$orig_record[0]); - - contact_remove(local_user(), $orig_record[0]['abook_id']); -// FIXME - send to clones - info( t('Contact has been removed.') . EOL ); - if(x($_SESSION,'return_url')) - goaway($a->get_baseurl(true) . '/' . $_SESSION['return_url']); - goaway($a->get_baseurl(true) . '/contacts'); - - } - } - - if((x($a->data,'abook')) && (is_array($a->data['abook']))) { - - $contact_id = $a->data['abook']['abook_id']; - $contact = $a->data['abook']; - - - $tabs = array( - - array( - 'label' => t('View Profile'), - 'url' => $a->get_baseurl(true) . '/chanview/?f=&cid=' . $contact['abook_id'], - 'sel' => '', - 'title' => sprintf( t('View %s\'s profile'), $contact['xchan_name']), - ), - - array( - 'label' => t('Refresh Permissions'), - 'url' => $a->get_baseurl(true) . '/connections/' . $contact['abook_id'] . '/refresh', - 'sel' => '', - 'title' => t('Fetch updated permissions'), - ), - - array( - 'label' => t('Recent Activity'), - 'url' => $a->get_baseurl(true) . '/network/?f=&cid=' . $contact['abook_id'], - 'sel' => '', - 'title' => t('View recent posts and comments'), - ), - - array( - 'label' => (($contact['abook_flags'] & ABOOK_FLAG_BLOCKED) ? t('Unblock') : t('Block')), - 'url' => $a->get_baseurl(true) . '/connections/' . $contact['abook_id'] . '/block', - 'sel' => (($contact['abook_flags'] & ABOOK_FLAG_BLOCKED) ? 'active' : ''), - 'title' => t('Block or Unblock this connection'), - ), - - array( - 'label' => (($contact['abook_flags'] & ABOOK_FLAG_IGNORED) ? t('Unignore') : t('Ignore')), - 'url' => $a->get_baseurl(true) . '/connections/' . $contact['abook_id'] . '/ignore', - 'sel' => (($contact['abook_flags'] & ABOOK_FLAG_IGNORED) ? 'active' : ''), - 'title' => t('Ignore or Unignore this connection'), - ), - array( - 'label' => (($contact['abook_flags'] & ABOOK_FLAG_ARCHIVED) ? t('Unarchive') : t('Archive')), - 'url' => $a->get_baseurl(true) . '/connections/' . $contact['abook_id'] . '/archive', - 'sel' => (($contact['abook_flags'] & ABOOK_FLAG_ARCHIVED) ? 'active' : ''), - 'title' => t('Archive or Unarchive this connection'), - ), - array( - 'label' => (($contact['abook_flags'] & ABOOK_FLAG_HIDDEN) ? t('Unhide') : t('Hide')), - 'url' => $a->get_baseurl(true) . '/connections/' . $contact['abook_id'] . '/hide', - 'sel' => (($contact['abook_flags'] & ABOOK_FLAG_HIDDEN) ? 'active' : ''), - 'title' => t('Hide or Unhide this connection'), - ), - - array( - 'label' => t('Delete'), - 'url' => $a->get_baseurl(true) . '/connections/' . $contact['abook_id'] . '/drop', - 'sel' => '', - 'title' => t('Delete this connection'), - ), - - ); - - $self = false; - - if(! ($contact['abook_flags'] & ABOOK_FLAG_SELF)) { - $tab_tpl = get_markup_template('common_tabs.tpl'); - $t = replace_macros($tab_tpl, array('$tabs'=>$tabs)); - } - else - $self = true; - - $a->page['htmlhead'] .= replace_macros(get_markup_template('contact_head.tpl'), array( - '$baseurl' => $a->get_baseurl(true), - '$editselect' => $editselect - )); - - require_once('include/contact_selectors.php'); - - $tpl = get_markup_template("abook_edit.tpl"); - - if(feature_enabled(local_user(),'affinity')) { - - $slider_tpl = get_markup_template('contact_slider.tpl'); - $slide = replace_macros($slider_tpl,array( - '$me' => t('Me'), - '$val' => (($contact['abook_closeness']) ? $contact['abook_closeness'] : 99), - '$intimate' => t('Best Friends'), - '$friends' => t('Friends'), - '$oldfriends' => t('Former Friends'), - '$acquaintances' => t('Acquaintances'), - '$world' => t('Unknown') - )); - } - - $perms = array(); - $channel = $a->get_channel(); - - $global_perms = get_perms(); - $existing = get_all_perms(local_user(),$contact['abook_xchan']); - - $unapproved = array('pending', t('Approve this connection'), '', t('Accept connection to allow communication')); - - foreach($global_perms as $k => $v) { - $thisperm = (($contact['abook_my_perms'] & $v[1]) ? "1" : ''); - - // For auto permissions (when $self is true) we don't want to look at existing - // permissions because they are enabled for the channel owner - - if((! $self) && ($existing[$k])) - $thisperm = "1"; - - $perms[] = array('perms_' . $k, $v[3], (($contact['abook_their_perms'] & $v[1]) ? "1" : ""),$thisperm, $v[1], (($channel[$v[0]] == PERMS_SPECIFIC) ? '' : '1'), $v[4]); - } - - $o .= replace_macros($tpl,array( - - '$header' => (($self) ? t('Automatic Permissions Settings') : sprintf( t('Connections: settings for %s'),$contact['xchan_name'])), - '$addr' => $contact['xchan_addr'], - '$notself' => (($self) ? '' : '1'), - '$self' => (($self) ? '1' : ''), - '$autolbl' => t('When receiving a channel introduction, any permissions provided here will be applied to the new connection automatically and the introduction approved. Leave this page if you do not wish to use this feature.'), - '$viewprof' => t('View Profile'), - '$lbl_slider' => t('Slide to adjust your degree of friendship'), - '$slide' => $slide, - '$tabs' => $t, - '$tab_str' => $tab_str, - '$is_pending' => (($contact['abook_flags'] & ABOOK_FLAG_PENDING) ? 1 : ''), - '$unapproved' => $unapproved, - '$inherited' => t('inherited'), - '$approve' => t('Approve this connection'), - '$noperms' => (((! $self) && (! $contact['abook_my_perms'])) ? t('Connection has no individual permissions!') : ''), - '$noperm_desc' => (((! $self) && (! $contact['abook_my_perms'])) ? t('This may be appropriate based on your privacy settings, though you may wish to review the "Advanced Permissions".') : ''), - '$submit' => t('Submit'), - '$lbl_vis1' => t('Profile Visibility'), - '$lbl_vis2' => sprintf( t('Please choose the profile you would like to display to %s when viewing your profile securely.'), $contact['xchan_name']), - '$lbl_info1' => t('Contact Information / Notes'), - '$infedit' => t('Edit contact notes'), - '$close' => $contact['abook_closeness'], - '$them' => t('Their Settings'), - '$me' => t('My Settings'), - '$perms' => $perms, - '$forum' => t('Forum Members'), - '$soapbox' => t('Soapbox'), - '$full' => t('Full Sharing'), - '$cautious' => t('Cautious Sharing'), - '$follow' => t('Follow Only'), - '$permlbl' => t('Individual Permissions'), - '$permnote' => t('Some permissions may be inherited from your channel privacy settings, which have higher priority. Changing those inherited settings on this page will have no effect.'), - '$advanced' => t('Advanced Permissions'), - '$quick' => t('Quick Links'), - '$common_link' => $a->get_baseurl(true) . '/common/loc/' . local_user() . '/' . $contact['id'], - '$all_friends' => $all_friends, - '$relation_text' => $relation_text, - '$visit' => sprintf( t('Visit %s\'s profile - %s'),$contact['xchan_name'],$contact['xchan_url']), - '$blockunblock' => t('Block/Unblock contact'), - '$ignorecont' => t('Ignore contact'), - '$lblcrepair' => t("Repair URL settings"), - '$lblrecent' => t('View conversations'), - '$lblsuggest' => $lblsuggest, - '$delete' => t('Delete contact'), - '$poll_interval' => contact_poll_interval($contact['priority'],(! $poll_enabled)), - '$poll_enabled' => $poll_enabled, - '$lastupdtext' => t('Last update:'), - '$lost_contact' => $lost_contact, - '$updpub' => t('Update public posts'), - '$last_update' => $last_update, - '$udnow' => t('Update now'), - '$profile_select' => contact_profile_assign($contact['abook_profile']), - '$multiprofs' => feature_enabled(local_user(),'multi_profiles'), - '$contact_id' => $contact['abook_id'], - '$block_text' => (($contact['blocked']) ? t('Unblock') : t('Block') ), - '$ignore_text' => (($contact['readonly']) ? t('Unignore') : t('Ignore') ), - '$blocked' => (($contact['blocked']) ? t('Currently blocked') : ''), - '$ignored' => (($contact['readonly']) ? t('Currently ignored') : ''), - '$archived' => (($contact['archive']) ? t('Currently archived') : ''), - '$pending' => (($contact['archive']) ? t('Currently pending') : ''), - '$hidden' => array('hidden', t('Hide this contact from others'), ($contact['hidden'] == 1), t('Replies/likes to your public posts may still be visible')), - '$photo' => $contact['photo'], - '$name' => $contact['name'], - '$dir_icon' => $dir_icon, - '$alt_text' => $alt_text, - '$sparkle' => $sparkle, - '$url' => $url - - )); - - $arr = array('contact' => $contact,'output' => $o); - - call_hooks('contact_edit', $arr); - - return $arr['output']; - - } - $blocked = false; $hidden = false; $ignored = false; @@ -680,7 +350,7 @@ function connections_content(&$a) { 'name' => $rr['xchan_name'], 'username' => $rr['xchan_name'], 'sparkle' => $sparkle, - 'link' => z_root() . '/connections/' . $rr['abook_id'], + 'link' => z_root() . '/connedit/' . $rr['abook_id'], 'url' => $rr['xchan_url'], 'network' => network_to_name($rr['network']), ); diff --git a/mod/connedit.php b/mod/connedit.php index 777127c4f..7fc4bfaf8 100644 --- a/mod/connedit.php +++ b/mod/connedit.php @@ -41,10 +41,6 @@ function connedit_aside(&$a) { $a->set_widget('vcard',vcard_from_xchan($a->data['abook'],$a->get_observer())); $a->set_widget('collections', group_side('connections','group',false,0,$a->data['abook']['abook_xchan'])); } - else { - $a->set_widget('follow', widget_follow(array())); - } - $a->set_widget('suggest',widget_suggestions(array())); $a->set_widget('findpeople',findpeople_widget()); @@ -228,14 +224,14 @@ function connedit_content(&$a) { // pull feed and consume it, which should subscribe to the hub. proc_run('php',"include/poller.php","$contact_id"); - goaway($a->get_baseurl(true) . '/connections/' . $contact_id); + goaway($a->get_baseurl(true) . '/connedit/' . $contact_id); } if($cmd === 'refresh') { if(! zot_refresh($orig_record[0],get_app()->get_channel())) notice( t('Refresh failed - channel is currently unavailable.') ); - goaway($a->get_baseurl(true) . '/connections/' . $contact_id); + goaway($a->get_baseurl(true) . '/connedit/' . $contact_id); } if($cmd === 'block') { @@ -247,7 +243,7 @@ function connedit_content(&$a) { } else notice(t('Unable to set address book parameters.') . EOL); - goaway($a->get_baseurl(true) . '/connections/' . $contact_id); + goaway($a->get_baseurl(true) . '/connedit/' . $contact_id); } if($cmd === 'ignore') { @@ -259,7 +255,7 @@ function connedit_content(&$a) { } else notice(t('Unable to set address book parameters.') . EOL); - goaway($a->get_baseurl(true) . '/connections/' . $contact_id); + goaway($a->get_baseurl(true) . '/connedit/' . $contact_id); } if($cmd === 'archive') { @@ -271,7 +267,7 @@ function connedit_content(&$a) { } else notice(t('Unable to set address book parameters.') . EOL); - goaway($a->get_baseurl(true) . '/connections/' . $contact_id); + goaway($a->get_baseurl(true) . '/connedit/' . $contact_id); } if($cmd === 'hide') { @@ -283,7 +279,7 @@ function connedit_content(&$a) { } else notice(t('Unable to set address book parameters.') . EOL); - goaway($a->get_baseurl(true) . '/connections/' . $contact_id); + goaway($a->get_baseurl(true) . '/connedit/' . $contact_id); } // We'll prevent somebody from unapproving a contact. @@ -299,7 +295,7 @@ function connedit_content(&$a) { else notice(t('Unable to set address book parameters.') . EOL); } - goaway($a->get_baseurl(true) . '/connections/' . $contact_id); + goaway($a->get_baseurl(true) . '/connedit/' . $contact_id); } @@ -336,7 +332,7 @@ function connedit_content(&$a) { array( 'label' => t('Refresh Permissions'), - 'url' => $a->get_baseurl(true) . '/connections/' . $contact['abook_id'] . '/refresh', + 'url' => $a->get_baseurl(true) . '/connedit/' . $contact['abook_id'] . '/refresh', 'sel' => '', 'title' => t('Fetch updated permissions'), ), @@ -350,33 +346,33 @@ function connedit_content(&$a) { array( 'label' => (($contact['abook_flags'] & ABOOK_FLAG_BLOCKED) ? t('Unblock') : t('Block')), - 'url' => $a->get_baseurl(true) . '/connections/' . $contact['abook_id'] . '/block', + 'url' => $a->get_baseurl(true) . '/connedit/' . $contact['abook_id'] . '/block', 'sel' => (($contact['abook_flags'] & ABOOK_FLAG_BLOCKED) ? 'active' : ''), 'title' => t('Block or Unblock this connection'), ), array( 'label' => (($contact['abook_flags'] & ABOOK_FLAG_IGNORED) ? t('Unignore') : t('Ignore')), - 'url' => $a->get_baseurl(true) . '/connections/' . $contact['abook_id'] . '/ignore', + 'url' => $a->get_baseurl(true) . '/connedit/' . $contact['abook_id'] . '/ignore', 'sel' => (($contact['abook_flags'] & ABOOK_FLAG_IGNORED) ? 'active' : ''), 'title' => t('Ignore or Unignore this connection'), ), array( 'label' => (($contact['abook_flags'] & ABOOK_FLAG_ARCHIVED) ? t('Unarchive') : t('Archive')), - 'url' => $a->get_baseurl(true) . '/connections/' . $contact['abook_id'] . '/archive', + 'url' => $a->get_baseurl(true) . '/connedit/' . $contact['abook_id'] . '/archive', 'sel' => (($contact['abook_flags'] & ABOOK_FLAG_ARCHIVED) ? 'active' : ''), 'title' => t('Archive or Unarchive this connection'), ), array( 'label' => (($contact['abook_flags'] & ABOOK_FLAG_HIDDEN) ? t('Unhide') : t('Hide')), - 'url' => $a->get_baseurl(true) . '/connections/' . $contact['abook_id'] . '/hide', + 'url' => $a->get_baseurl(true) . '/connedit/' . $contact['abook_id'] . '/hide', 'sel' => (($contact['abook_flags'] & ABOOK_FLAG_HIDDEN) ? 'active' : ''), 'title' => t('Hide or Unhide this connection'), ), array( 'label' => t('Delete'), - 'url' => $a->get_baseurl(true) . '/connections/' . $contact['abook_id'] . '/drop', + 'url' => $a->get_baseurl(true) . '/connedit/' . $contact['abook_id'] . '/drop', 'sel' => '', 'title' => t('Delete this connection'), ), @@ -515,194 +511,5 @@ function connedit_content(&$a) { } - $blocked = false; - $hidden = false; - $ignored = false; - $archived = false; - $unblocked = false; - $pending = false; - $all = false; - - $_SESSION['return_url'] = $a->query_string; - - $search_flags = 0; - $head = ''; - - if(argc() == 2) { - switch(argv(1)) { - case 'blocked': - $search_flags = ABOOK_FLAG_BLOCKED; - $head = t('Blocked'); - $blocked = true; - break; - case 'ignored': - $search_flags = ABOOK_FLAG_IGNORED; - $head = t('Ignored'); - $ignored = true; - break; - case 'hidden': - $search_flags = ABOOK_FLAG_HIDDEN; - $head = t('Hidden'); - $hidden = true; - break; - case 'archived': - $search_flags = ABOOK_FLAG_ARCHIVED; - $head = t('Archived'); - $archived = true; - break; - case 'pending': - $search_flags = ABOOK_FLAG_PENDING; - $head = t('New'); - $pending = true; - nav_set_selected('intros'); - break; - - case 'all': - $head = t('All'); - default: - $search_flags = 0; - $all = true; - break; - - } - - $sql_extra = (($search_flags) ? " and ( abook_flags & " . $search_flags . " ) " : ""); - - - } - else { - $sql_extra = " and not ( abook_flags & " . ABOOK_FLAG_BLOCKED . " ) "; - $unblocked = true; - } - - $search = ((x($_REQUEST,'search')) ? notags(trim($_REQUEST['search'])) : ''); - - $tabs = array( - array( - 'label' => t('Suggestions'), - 'url' => $a->get_baseurl(true) . '/suggest', - 'sel' => '', - 'title' => t('Suggest new connections'), - ), - array( - 'label' => t('New Connections'), - 'url' => $a->get_baseurl(true) . '/connections/pending', - 'sel' => ($pending) ? 'active' : '', - 'title' => t('Show pending (new) connections'), - ), - array( - 'label' => t('All Connections'), - 'url' => $a->get_baseurl(true) . '/connections/all', - 'sel' => ($all) ? 'active' : '', - 'title' => t('Show all connections'), - ), - array( - 'label' => t('Unblocked'), - 'url' => $a->get_baseurl(true) . '/connections', - 'sel' => (($unblocked) && (! $search) && (! $nets)) ? 'active' : '', - 'title' => t('Only show unblocked connections'), - ), - - array( - 'label' => t('Blocked'), - 'url' => $a->get_baseurl(true) . '/connections/blocked', - 'sel' => ($blocked) ? 'active' : '', - 'title' => t('Only show blocked connections'), - ), - - array( - 'label' => t('Ignored'), - 'url' => $a->get_baseurl(true) . '/connections/ignored', - 'sel' => ($ignored) ? 'active' : '', - 'title' => t('Only show ignored connections'), - ), - - array( - 'label' => t('Archived'), - 'url' => $a->get_baseurl(true) . '/connections/archived', - 'sel' => ($archived) ? 'active' : '', - 'title' => t('Only show archived connections'), - ), - - array( - 'label' => t('Hidden'), - 'url' => $a->get_baseurl(true) . '/connections/hidden', - 'sel' => ($hidden) ? 'active' : '', - 'title' => t('Only show hidden connections'), - ), - - ); - - $tab_tpl = get_markup_template('common_tabs.tpl'); - $t = replace_macros($tab_tpl, array('$tabs'=>$tabs)); - - $searching = false; - if($search) { - $search_hdr = $search; - $search_txt = dbesc(protect_sprintf(preg_quote($search))); - $searching = true; - } - $sql_extra .= (($searching) ? protect_sprintf(" AND xchan_name like '%$search_txt%' ") : ""); - - - $r = q("SELECT COUNT(abook.abook_id) AS total FROM abook left join xchan on abook.abook_xchan = xchan.xchan_hash - where abook_channel = %d and not (abook_flags & %d) $sql_extra $sql_extra2 ", - intval(local_user()), - intval(ABOOK_FLAG_SELF) - ); - if(count($r)) { - $a->set_pager_total($r[0]['total']); - $total = $r[0]['total']; - } - - $r = q("SELECT abook.*, xchan.* FROM abook left join xchan on abook.abook_xchan = xchan.xchan_hash - WHERE abook_channel = %d and not (abook_flags & %d) $sql_extra $sql_extra2 ORDER BY xchan_name LIMIT %d , %d ", - intval(local_user()), - intval(ABOOK_FLAG_SELF), - intval($a->pager['start']), - intval($a->pager['itemspage']) - ); - - $contacts = array(); - - if(count($r)) { - - foreach($r as $rr) { - if($rr['xchan_url']) { - $contacts[] = array( - 'img_hover' => sprintf( t('%1$s [%2$s]'),$rr['xchan_name'],$rr['xchan_url']), - 'edit_hover' => t('Edit contact'), - 'id' => $rr['abook_id'], - 'alt_text' => $alt_text, - 'dir_icon' => $dir_icon, - 'thumb' => $rr['xchan_photo_m'], - 'name' => $rr['xchan_name'], - 'username' => $rr['xchan_name'], - 'sparkle' => $sparkle, - 'link' => z_root() . '/connections/' . $rr['abook_id'], - 'url' => $rr['xchan_url'], - 'network' => network_to_name($rr['network']), - ); - } - } - } - - - $tpl = get_markup_template("contacts-template.tpl"); - $o .= replace_macros($tpl,array( - '$header' => t('Connections') . (($head) ? ' - ' . $head : ''), - '$tabs' => $t, - '$total' => $total, - '$search' => $search_hdr, - '$desc' => t('Search your connections'), - '$finding' => (($searching) ? t('Finding: ') . "'" . $search . "'" : ""), - '$submit' => t('Find'), - '$cmd' => $a->cmd, - '$contacts' => $contacts, - '$paginate' => paginate($a), - - )); - - return $o; } diff --git a/mod/follow.php b/mod/follow.php index 364fe76b9..962bb71a7 100644 --- a/mod/follow.php +++ b/mod/follow.php @@ -30,7 +30,7 @@ function follow_init(&$a) { proc_run('php','include/onepoll.php',$result['abook']['abook_id']); - goaway(z_root() . '/connections/' . $result['abook']['abook_id']); + goaway(z_root() . '/connedit/' . $result['abook']['abook_id']); } diff --git a/mod/settings.php b/mod/settings.php index c2a540063..7fb6f8317 100644 --- a/mod/settings.php +++ b/mod/settings.php @@ -99,7 +99,7 @@ if (! local_user()) array( 'label' => t('Automatic Permissions (Advanced)'), - 'url' => $a->get_baseurl(true) . '/connections/' . $abook_self_id, + 'url' => $a->get_baseurl(true) . '/connedit/' . $abook_self_id, 'selected' => '' ), diff --git a/view/css/mod_connedit.css b/view/css/mod_connedit.css new file mode 100644 index 000000000..c460fec28 --- /dev/null +++ b/view/css/mod_connedit.css @@ -0,0 +1,137 @@ + +.field_abook_help { + color: #000; +} +.abook-them { + margin-left: 375px; + margin-bottom: 15px; +} +.abook-me { + margin-left: 36px; + margin-bottom: 15px; +} +.acheckbox { + margin-bottom: 5px !important; +} + +.abook-pending-contact { + background: orange; + font-weight: bold; + margin: 10px; + padding: 20px 5px 10px; +} + +#contact-slider { + width: 600px !important; +} + +.abook-edit-them, .abook-edit-me { + float: left; + width: 100px !important; +} +.field_abook_help { + float: left; +} + +#contacts-main { + margin-top: 20px; + margin-bottom: 20px; +} + + + +#contact-edit-wrapper { + margin-top: 10px; +} + +#contact-edit-banner-name { + font-size: 1.4em; + font-weight: bold; +} + +#contact-edit-poll-wrapper { + margin-top: 15px; +} + +#contact-edit-poll-text { + margin-top: 15px; + margin-bottom: 5px; +} + +#contact-edit-update-now { + margin-top: 15px; +} + +#contact-edit-links{ + clear: both; +} + +#contact-edit-links ul { + list-style: none; + list-style-type: none; + margin-left: 0px; + padding-left: 0px; +} + +#contact-edit-links li { + margin-top: 5px; +} + +#contact-edit-drop-link { + float: right; + margin-right: 20px; +} + +#contact-edit-nav-end { + clear: both; +} + +#contact-edit-wrapper { + width: 100%; +} + +#contact-edit-end { + clear: both; + margin-top: 15px; +} + +#contact-profile-selector { + width: 175px; + margin-left: 175px; +} + +.contact-edit-submit { + margin-top: 20px; +} + +.contact-entry-wrapper { + float: left; + width: 120px; + height: 120px; + padding: 10px; +} + +#contacts-search { + font-size: 1em; + width: 300px; +} + +#contacts-search-end { + margin-bottom: 10px; +} + +.contact-entry-photo-end { + clear: both; +} + +.contact-entry-name { + float: left; + margin-left: 0px; + margin-right: 10px; + width: 120px; + overflow: hidden; +} + +.contact-entry-end { + clear: both; +} diff --git a/view/tpl/abook_edit.tpl b/view/tpl/abook_edit.tpl index 30abcc6b3..23368f2f7 100755 --- a/view/tpl/abook_edit.tpl +++ b/view/tpl/abook_edit.tpl @@ -30,7 +30,7 @@

    {{$permlbl}}

    {{$permnote}}
    - + From 10ef0cd997cd5e391b30c4342be40cf66710cf38 Mon Sep 17 00:00:00 2001 From: "p.tacconi" Date: Wed, 18 Dec 2013 15:19:02 +0100 Subject: [PATCH 271/271] corrections to italian translation --- view/it/messages.po | 2492 ++++++++++++++++++++----------------------- view/it/strings.php | 271 ++--- 2 files changed, 1286 insertions(+), 1477 deletions(-) diff --git a/view/it/messages.po b/view/it/messages.po index 693e76cee..14d92e170 100644 --- a/view/it/messages.po +++ b/view/it/messages.po @@ -13,8 +13,8 @@ msgid "" msgstr "" "Project-Id-Version: Red Matrix\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2013-12-06 00:02-0800\n" -"PO-Revision-Date: 2013-12-10 16:05+0000\n" +"POT-Creation-Date: 2013-12-13 00:04-0800\n" +"PO-Revision-Date: 2013-12-18 14:07+0000\n" "Last-Translator: tuscanhobbit Pa \n" "Language-Team: Italian (http://www.transifex.com/projects/p/red-matrix/language/it/)\n" "MIME-Version: 1.0\n" @@ -58,6 +58,34 @@ msgstr "Guarda %2$s di %1$s " msgid "%1$s has an updated %2$s, changing %3$s." msgstr "%1$s ha aggiornato %2$s cambiando %3$s." +#: ../../include/dir_fns.php:15 +msgid "Sort Options" +msgstr "Opzioni di ordinamento" + +#: ../../include/dir_fns.php:16 +msgid "Alphabetic" +msgstr "Alfabetico" + +#: ../../include/dir_fns.php:17 +msgid "Reverse Alphabetic" +msgstr "Alfabetico inverso" + +#: ../../include/dir_fns.php:18 +msgid "Newest to Oldest" +msgstr "Dal più nuovo al più vecchio" + +#: ../../include/dir_fns.php:30 +msgid "Enable Safe Search" +msgstr "Abilita SafeSearch" + +#: ../../include/dir_fns.php:32 +msgid "Disable Safe Search" +msgstr "Disabilita SafeSearch" + +#: ../../include/dir_fns.php:34 +msgid "Safe Mode" +msgstr "Modalità SafeSearch" + #: ../../include/enotify.php:40 msgid "Red Matrix Notification" msgstr "Notifica di Red Matrix" @@ -254,21 +282,21 @@ msgid "Private Message" msgstr "Messaggio privato" #: ../../include/ItemObject.php:95 ../../include/page_widgets.php:8 -#: ../../mod/webpages.php:101 ../../mod/settings.php:671 ../../mod/menu.php:55 +#: ../../mod/webpages.php:118 ../../mod/settings.php:671 ../../mod/menu.php:55 #: ../../mod/layouts.php:102 ../../mod/editlayout.php:100 -#: ../../mod/editwebpage.php:119 ../../mod/blocks.php:93 +#: ../../mod/editwebpage.php:143 ../../mod/blocks.php:93 #: ../../mod/editpost.php:97 ../../mod/editblock.php:114 msgid "Edit" msgstr "Modifica" -#: ../../include/ItemObject.php:107 ../../include/conversation.php:628 -#: ../../mod/settings.php:672 ../../mod/admin.php:690 ../../mod/group.php:182 -#: ../../mod/photos.php:1141 ../../mod/connections.php:374 +#: ../../include/ItemObject.php:107 ../../include/conversation.php:632 +#: ../../mod/settings.php:672 ../../mod/admin.php:693 ../../mod/group.php:182 +#: ../../mod/photos.php:1141 ../../mod/connections.php:378 #: ../../mod/filestorage.php:82 msgid "Delete" msgstr "Elimina" -#: ../../include/ItemObject.php:113 ../../include/conversation.php:627 +#: ../../include/ItemObject.php:113 ../../include/conversation.php:631 msgid "Select" msgstr "Seleziona" @@ -292,7 +320,7 @@ msgstr "Attiva/disattiva preferito" msgid "starred" msgstr "preferito" -#: ../../include/ItemObject.php:160 ../../include/conversation.php:638 +#: ../../include/ItemObject.php:160 ../../include/conversation.php:642 msgid "Message is verified" msgstr "Messaggio verificato" @@ -345,20 +373,20 @@ msgstr "Da bacheca a bacheca" msgid "via Wall-To-Wall:" msgstr "da bacheca a bacheca:" -#: ../../include/ItemObject.php:216 ../../include/conversation.php:682 +#: ../../include/ItemObject.php:216 ../../include/conversation.php:686 #, php-format msgid " from %s" msgstr " da %s" -#: ../../include/ItemObject.php:219 ../../include/conversation.php:685 +#: ../../include/ItemObject.php:219 ../../include/conversation.php:689 #, php-format msgid "last edited: %s" msgstr "ultima modifica: %s" -#: ../../include/ItemObject.php:246 ../../include/conversation.php:702 -#: ../../include/conversation.php:1112 ../../mod/photos.php:1072 -#: ../../mod/message.php:332 ../../mod/message.php:516 -#: ../../mod/editlayout.php:109 ../../mod/editwebpage.php:128 +#: ../../include/ItemObject.php:246 ../../include/conversation.php:706 +#: ../../include/conversation.php:1116 ../../mod/photos.php:1072 +#: ../../mod/message.php:332 ../../mod/message.php:484 +#: ../../mod/editlayout.php:109 ../../mod/editwebpage.php:152 #: ../../mod/editpost.php:106 ../../mod/editblock.php:123 msgid "Please wait" msgstr "Attendere" @@ -371,7 +399,7 @@ msgstr[0] "%d commento" msgstr[1] "%d commenti" #: ../../include/ItemObject.php:268 ../../include/js_strings.php:7 -#: ../../include/contact_widgets.php:148 +#: ../../include/contact_widgets.php:124 msgid "show more" msgstr "mostra tutto" @@ -385,22 +413,21 @@ msgstr "Questo sei tu" msgid "Comment" msgstr "Commento" -#: ../../include/ItemObject.php:530 ../../mod/events.php:469 +#: ../../include/ItemObject.php:530 ../../mod/events.php:470 #: ../../mod/thing.php:190 ../../mod/invite.php:154 ../../mod/setup.php:302 #: ../../mod/setup.php:345 ../../mod/settings.php:609 #: ../../mod/settings.php:721 ../../mod/settings.php:749 #: ../../mod/settings.php:773 ../../mod/settings.php:844 #: ../../mod/settings.php:1005 ../../mod/connect.php:96 -#: ../../mod/sources.php:83 ../../mod/sources.php:110 ../../mod/admin.php:418 -#: ../../mod/admin.php:683 ../../mod/admin.php:823 ../../mod/admin.php:1022 -#: ../../mod/admin.php:1109 ../../mod/group.php:87 ../../mod/photos.php:685 +#: ../../mod/sources.php:83 ../../mod/sources.php:110 ../../mod/admin.php:420 +#: ../../mod/admin.php:686 ../../mod/admin.php:826 ../../mod/admin.php:1025 +#: ../../mod/admin.php:1112 ../../mod/group.php:87 ../../mod/photos.php:685 #: ../../mod/photos.php:790 ../../mod/photos.php:1051 #: ../../mod/photos.php:1091 ../../mod/photos.php:1178 -#: ../../mod/message.php:333 ../../mod/message.php:515 -#: ../../mod/profiles.php:529 ../../mod/connections.php:452 -#: ../../mod/import.php:387 ../../mod/crepair.php:166 ../../mod/poke.php:166 -#: ../../mod/fsuggest.php:108 ../../mod/mood.php:137 -#: ../../view/theme/redbasic/php/config.php:85 +#: ../../mod/message.php:333 ../../mod/message.php:483 +#: ../../mod/profiles.php:518 ../../mod/connections.php:456 +#: ../../mod/import.php:387 ../../mod/poke.php:166 ../../mod/fsuggest.php:108 +#: ../../mod/mood.php:137 ../../view/theme/redbasic/php/config.php:85 #: ../../view/theme/apw/php/config.php:231 #: ../../view/theme/blogga/view/theme/blog/config.php:67 #: ../../view/theme/blogga/php/config.php:67 @@ -439,24 +466,24 @@ msgstr "Link" msgid "Video" msgstr "Video" -#: ../../include/ItemObject.php:539 ../../include/conversation.php:1075 -#: ../../mod/webpages.php:105 ../../mod/photos.php:1092 -#: ../../mod/editlayout.php:129 ../../mod/editwebpage.php:150 +#: ../../include/ItemObject.php:539 ../../include/conversation.php:1079 +#: ../../mod/webpages.php:122 ../../mod/photos.php:1092 +#: ../../mod/editlayout.php:129 ../../mod/editwebpage.php:176 #: ../../mod/editpost.php:126 ../../mod/editblock.php:144 msgid "Preview" msgstr "Anteprima" -#: ../../include/ItemObject.php:542 ../../include/conversation.php:1139 -#: ../../mod/message.php:338 ../../mod/message.php:521 +#: ../../include/ItemObject.php:542 ../../include/conversation.php:1143 +#: ../../mod/message.php:338 ../../mod/message.php:489 #: ../../mod/editpost.php:134 msgid "Encrypt text" msgstr "Crittografia del testo" -#: ../../include/Contact.php:87 ../../include/contact_widgets.php:23 -#: ../../include/identity.php:613 ../../mod/match.php:62 -#: ../../mod/suggest.php:56 ../../mod/directory.php:198 +#: ../../include/Contact.php:87 ../../include/widgets.php:96 +#: ../../include/widgets.php:136 ../../include/identity.php:613 +#: ../../mod/match.php:62 ../../mod/suggest.php:58 ../../mod/directory.php:199 msgid "Connect" -msgstr "Entra in contatto/segui" +msgstr "Entra in contatto" #: ../../include/Contact.php:103 msgid "New window" @@ -466,6 +493,128 @@ msgstr "Nuova finestra" msgid "Open the selected location in a different window or browser tab" msgstr "Apri l'indirizzo selezionato in una nuova scheda o finestra" +#: ../../include/widgets.php:5 +msgid "Displays a full channel profile" +msgstr "Mostra il profilo completo del canale" + +#: ../../include/widgets.php:6 +msgid "Tag cloud of webpage categories" +msgstr "Nuvola dei tag" + +#: ../../include/widgets.php:7 +msgid "List and filter by collection" +msgstr "Filtra per insiemi di canali" + +#: ../../include/widgets.php:8 +msgid "Show a couple of channel suggestion" +msgstr "Mostra i canali suggeriti" + +#: ../../include/widgets.php:9 +msgid "Provide a channel follow form" +msgstr "Mostra il link connettersi al canale" + +#: ../../include/widgets.php:39 ../../include/contact_widgets.php:86 +msgid "Categories" +msgstr "Categorie" + +#: ../../include/widgets.php:98 ../../mod/suggest.php:60 +msgid "Ignore/Hide" +msgstr "Ignora/nascondi" + +#: ../../include/widgets.php:104 ../../mod/connections.php:583 +msgid "Suggestions" +msgstr "Suggerimenti" + +#: ../../include/widgets.php:105 +msgid "See more..." +msgstr "Altro..." + +#: ../../include/widgets.php:127 +#, php-format +msgid "You have %1$.0f of %2$.0f allowed connections." +msgstr "Hai attivato %1$.0f delle %2$.0f connessioni permesse." + +#: ../../include/widgets.php:133 +msgid "Add New Connection" +msgstr "Aggiungi un contatto" + +#: ../../include/widgets.php:134 +msgid "Enter the channel address" +msgstr "Scrivi l'indirizzo del canale" + +#: ../../include/widgets.php:135 +msgid "Example: bob@example.com, http://example.com/barbara" +msgstr "Per esempio: mario@pippo.it oppure http://pluto.com/barbara" + +#: ../../include/widgets.php:152 +msgid "Notes" +msgstr "Note" + +#: ../../include/widgets.php:154 ../../include/text.php:738 +#: ../../include/text.php:752 ../../mod/filer.php:36 +msgid "Save" +msgstr "Salva" + +#: ../../include/widgets.php:224 ../../mod/search.php:20 +msgid "Remove term" +msgstr "Rimuovi termine" + +#: ../../include/widgets.php:233 ../../include/features.php:48 +#: ../../mod/search.php:17 +msgid "Saved Searches" +msgstr "Ricerche salvate" + +#: ../../include/widgets.php:234 ../../include/group.php:290 +msgid "add" +msgstr "aggiungi" + +#: ../../include/widgets.php:264 ../../include/features.php:62 +#: ../../include/contact_widgets.php:52 +msgid "Saved Folders" +msgstr "Cartelle salvate" + +#: ../../include/widgets.php:267 ../../include/contact_widgets.php:55 +#: ../../include/contact_widgets.php:89 +msgid "Everything" +msgstr "Tutto" + +#: ../../include/widgets.php:299 ../../include/items.php:3550 +msgid "Archives" +msgstr "Archivi" + +#: ../../include/widgets.php:351 +msgid "Refresh" +msgstr "Aggiorna" + +#: ../../include/widgets.php:352 ../../mod/connections.php:408 +msgid "Me" +msgstr "Io" + +#: ../../include/widgets.php:353 ../../mod/connections.php:410 +msgid "Best Friends" +msgstr "Buoni amici" + +#: ../../include/widgets.php:354 ../../include/profile_selectors.php:42 +#: ../../include/identity.php:298 ../../mod/connections.php:411 +msgid "Friends" +msgstr "Amici" + +#: ../../include/widgets.php:355 +msgid "Co-workers" +msgstr "Colleghi" + +#: ../../include/widgets.php:356 ../../mod/connections.php:412 +msgid "Former Friends" +msgstr "Ex amici" + +#: ../../include/widgets.php:357 ../../mod/connections.php:413 +msgid "Acquaintances" +msgstr "Conoscenti" + +#: ../../include/widgets.php:358 +msgid "Everybody" +msgstr "Tutti" + #: ../../include/contact_selectors.php:30 msgid "Unknown | Not categorised" msgstr "Sconosciuto | Senza categoria" @@ -526,8 +675,8 @@ msgstr "OStatus" msgid "RSS/Atom" msgstr "RSS/Atom" -#: ../../include/contact_selectors.php:77 ../../mod/admin.php:686 -#: ../../mod/admin.php:695 ../../boot.php:1442 +#: ../../include/contact_selectors.php:77 ../../mod/admin.php:689 +#: ../../mod/admin.php:698 ../../boot.php:1442 msgid "Email" msgstr "Email" @@ -645,224 +794,12 @@ msgstr "Inizio:" msgid "Finishes:" msgstr "Fine:" -#: ../../include/event.php:40 ../../include/identity.php:663 -#: ../../include/bb2diaspora.php:455 ../../mod/events.php:462 -#: ../../mod/directory.php:173 +#: ../../include/event.php:40 ../../include/identity.php:664 +#: ../../include/bb2diaspora.php:455 ../../mod/events.php:463 +#: ../../mod/directory.php:174 msgid "Location:" msgstr "Luogo:" -#: ../../include/features.php:21 -msgid "General Features" -msgstr "Funzionalità generali" - -#: ../../include/features.php:23 -msgid "Content Expiration" -msgstr "Scadenza" - -#: ../../include/features.php:23 -msgid "Remove posts/comments and/or private messages at a future time" -msgstr "Elimina gli articoli, i commenti o i messaggi privati dopo che è trascorso del tempo" - -#: ../../include/features.php:24 -msgid "Multiple Profiles" -msgstr "Profili multipli" - -#: ../../include/features.php:24 -msgid "Ability to create multiple profiles" -msgstr "Abilitazione a creare profili multipli" - -#: ../../include/features.php:25 -msgid "Web Pages" -msgstr "Pagine web" - -#: ../../include/features.php:25 -msgid "Provide managed web pages on your channel" -msgstr "Attiva la creazione di pagine web sul tuo canale" - -#: ../../include/features.php:26 -msgid "Enhanced Photo Albums" -msgstr "Album fotografici avanzati" - -#: ../../include/features.php:26 -msgid "Enable photo album with enhanced features" -msgstr "Abilita gli album fotografici con funzionalità avanzate" - -#: ../../include/features.php:28 -msgid "Extended Identity Sharing" -msgstr "Condivisione avanzata dell'identità" - -#: ../../include/features.php:28 ../../include/js_strings.php:30 -msgid " " -msgstr " " - -#: ../../include/features.php:29 -msgid "Expert Mode" -msgstr "Modalità esperto" - -#: ../../include/features.php:29 -msgid "Enable Expert Mode to provide advanced configuration options" -msgstr "Abilita la modalità esperto per vedere le opzioni di configurazione avanzate" - -#: ../../include/features.php:30 -msgid "Premium Channel" -msgstr "Canale premium" - -#: ../../include/features.php:30 -msgid "" -"Allows you to set restrictions and terms on those that connect with your " -"channel" -msgstr "Ti permette di imporre delle restrizioni e dei termini d'uso a chi segue il canale" - -#: ../../include/features.php:35 -msgid "Post Composition Features" -msgstr "Modalità di scrittura articoli" - -#: ../../include/features.php:36 -msgid "Richtext Editor" -msgstr "Editor grafico" - -#: ../../include/features.php:36 -msgid "Enable richtext editor" -msgstr "Abilita l'editor grafico" - -#: ../../include/features.php:37 -msgid "Post Preview" -msgstr "Anteprima articolo" - -#: ../../include/features.php:37 -msgid "Allow previewing posts and comments before publishing them" -msgstr "Abilita l'anteprima degli articoli e dei commenti prima di pubblicarli" - -#: ../../include/features.php:38 ../../mod/settings.php:120 -#: ../../mod/sources.php:67 -msgid "Channel Sources" -msgstr "Sorgenti del canale" - -#: ../../include/features.php:38 -msgid "Automatically import channel content from other channels or feeds" -msgstr "Importa automaticamente il contenuto del canale da altri canali o feed" - -#: ../../include/features.php:39 -msgid "Even More Encryption" -msgstr "Crittografia addizionale" - -#: ../../include/features.php:39 -msgid "Allow encryption of content end-to-end with a shared secret key" -msgstr "Abilita la crittografia dei contenuti tra il mittente e i destinatari con una chiave segreta" - -#: ../../include/features.php:44 -msgid "Network and Stream Filtering" -msgstr "Filtraggio dei contenuti" - -#: ../../include/features.php:45 -msgid "Search by Date" -msgstr "Ricerca per data" - -#: ../../include/features.php:45 -msgid "Ability to select posts by date ranges" -msgstr "Per selezionare gli articoli in un intervallo tra date" - -#: ../../include/features.php:46 -msgid "Collections Filter" -msgstr "Filtra per insiemi di canali" - -#: ../../include/features.php:46 -msgid "Enable widget to display Network posts only from selected collections" -msgstr "Mostra il riquadro per filtrare gli articoli di certi insiemi di canali" - -#: ../../include/features.php:47 ../../mod/search.php:17 -#: ../../mod/network.php:122 -msgid "Saved Searches" -msgstr "Ricerche salvate" - -#: ../../include/features.php:47 -msgid "Save search terms for re-use" -msgstr "Salva i termini delle ricerche per poterle ripetere" - -#: ../../include/features.php:48 -msgid "Network Personal Tab" -msgstr "Attività personale" - -#: ../../include/features.php:48 -msgid "Enable tab to display only Network posts that you've interacted on" -msgstr "Abilita il link per mostrare solamente i contenuti con cui hai interagito" - -#: ../../include/features.php:49 -msgid "Network New Tab" -msgstr "Contenuti nuovi" - -#: ../../include/features.php:49 -msgid "Enable tab to display all new Network activity" -msgstr "Abilita il link per visualizzare solo i nuovi contenuti" - -#: ../../include/features.php:50 -msgid "Affinity Tool" -msgstr "Filtro per affinità" - -#: ../../include/features.php:50 -msgid "Filter stream activity by depth of relationships" -msgstr "Permette di selezionare i contenuti in base al livello di amicizia" - -#: ../../include/features.php:55 -msgid "Post/Comment Tools" -msgstr "Gestione articoli e commenti" - -#: ../../include/features.php:57 -msgid "Edit Sent Posts" -msgstr "Modifica gli articoli già inviati" - -#: ../../include/features.php:57 -msgid "Edit and correct posts and comments after sending" -msgstr "Modifica e correggi gli articoli o i commenti anche dopo l'invio" - -#: ../../include/features.php:58 -msgid "Tagging" -msgstr "Tag" - -#: ../../include/features.php:58 -msgid "Ability to tag existing posts" -msgstr "Permetti l'aggiunta di tag su articoli già esistenti" - -#: ../../include/features.php:59 -msgid "Post Categories" -msgstr "Categorie degli articoli" - -#: ../../include/features.php:59 -msgid "Add categories to your posts" -msgstr "Abilita le categorie per i tuoi articoli" - -#: ../../include/features.php:60 ../../include/contact_widgets.php:76 -msgid "Saved Folders" -msgstr "Cartelle salvate" - -#: ../../include/features.php:60 -msgid "Ability to file posts under folders" -msgstr "Abilita la raccolta dei tuoi articoli in cartelle" - -#: ../../include/features.php:61 -msgid "Dislike Posts" -msgstr "Non mi piace" - -#: ../../include/features.php:61 -msgid "Ability to dislike posts/comments" -msgstr "Abilità la funzionalità \"non mi piace\" per i tuoi articoli" - -#: ../../include/features.php:62 -msgid "Star Posts" -msgstr "Articoli stella (preferiti)" - -#: ../../include/features.php:62 -msgid "Ability to mark special posts with a star indicator" -msgstr "Mostra la stella per scegliere gli articoli preferiti" - -#: ../../include/features.php:63 -msgid "Tag Cloud" -msgstr "Nuvola di tag" - -#: ../../include/features.php:63 -msgid "Provide a personal tag cloud on your channel page" -msgstr "Mostra la nuvola dei tag che usi di più sulla pagina del tuo canale" - #: ../../include/group.php:25 msgid "" "A deleted group with this name was revived. Existing item permissions " @@ -874,7 +811,7 @@ msgstr "È stato ripristinato un insieme con lo stesso nome che era stato elimin msgid "Default privacy group for new contacts" msgstr "Insieme predefinito per i nuovi canali che aggiungi" -#: ../../include/group.php:242 ../../mod/admin.php:695 +#: ../../include/group.php:242 ../../mod/admin.php:698 msgid "All Channels" msgstr "Tutti i canali" @@ -898,10 +835,6 @@ msgstr "Crea un nuovo insieme" msgid "Channels not in any collection" msgstr "Canali che non sono in un insieme" -#: ../../include/group.php:290 ../../mod/network.php:123 -msgid "add" -msgstr "aggiungi" - #: ../../include/js_strings.php:5 msgid "Delete this item?" msgstr "Eliminare questo elemento?" @@ -995,6 +928,10 @@ msgstr "circa un anno" msgid "%d years" msgstr "%d anni" +#: ../../include/js_strings.php:30 ../../include/features.php:29 +msgid " " +msgstr " " + #: ../../include/js_strings.php:31 msgid "timeago.numbers" msgstr "timeago.numbers" @@ -1017,8 +954,8 @@ msgstr "Non è stato possibile verificare l'articolo inserito." #: ../../include/photo/photo_driver.php:609 ../../include/photos.php:51 #: ../../mod/photos.php:97 ../../mod/photos.php:775 ../../mod/photos.php:797 -#: ../../mod/profile_photo.php:88 ../../mod/profile_photo.php:235 -#: ../../mod/profile_photo.php:346 +#: ../../mod/profile_photo.php:78 ../../mod/profile_photo.php:225 +#: ../../mod/profile_photo.php:336 msgid "Profile Photos" msgstr "Foto del profilo" @@ -1060,6 +997,221 @@ msgstr "Contenuti incorporati" msgid "Embedding disabled" msgstr "Contenuti incorporati - funzione disabilitata" +#: ../../include/features.php:21 +msgid "General Features" +msgstr "Funzionalità generali" + +#: ../../include/features.php:23 +msgid "Content Expiration" +msgstr "Scadenza" + +#: ../../include/features.php:23 +msgid "Remove posts/comments and/or private messages at a future time" +msgstr "Elimina gli articoli, i commenti o i messaggi privati dopo che è trascorso del tempo" + +#: ../../include/features.php:24 +msgid "Multiple Profiles" +msgstr "Profili multipli" + +#: ../../include/features.php:24 +msgid "Ability to create multiple profiles" +msgstr "Abilitazione a creare profili multipli" + +#: ../../include/features.php:25 +msgid "Web Pages" +msgstr "Pagine web" + +#: ../../include/features.php:25 +msgid "Provide managed web pages on your channel" +msgstr "Attiva la creazione di pagine web sul tuo canale" + +#: ../../include/features.php:26 +msgid "Private Notes" +msgstr "Note private" + +#: ../../include/features.php:26 +msgid "Enables a tool to store notes and reminders" +msgstr "Abilita il riquadro per scrivere annotazioni" + +#: ../../include/features.php:27 +msgid "Enhanced Photo Albums" +msgstr "Album fotografici avanzati" + +#: ../../include/features.php:27 +msgid "Enable photo album with enhanced features" +msgstr "Abilita gli album fotografici con funzionalità avanzate" + +#: ../../include/features.php:29 +msgid "Extended Identity Sharing" +msgstr "Condivisione avanzata dell'identità" + +#: ../../include/features.php:30 +msgid "Expert Mode" +msgstr "Modalità esperto" + +#: ../../include/features.php:30 +msgid "Enable Expert Mode to provide advanced configuration options" +msgstr "Abilita la modalità esperto per vedere le opzioni di configurazione avanzate" + +#: ../../include/features.php:31 +msgid "Premium Channel" +msgstr "Canale premium" + +#: ../../include/features.php:31 +msgid "" +"Allows you to set restrictions and terms on those that connect with your " +"channel" +msgstr "Ti permette di imporre delle restrizioni e dei termini d'uso a chi segue il canale" + +#: ../../include/features.php:36 +msgid "Post Composition Features" +msgstr "Modalità di scrittura articoli" + +#: ../../include/features.php:37 +msgid "Richtext Editor" +msgstr "Editor grafico" + +#: ../../include/features.php:37 +msgid "Enable richtext editor" +msgstr "Abilita l'editor grafico" + +#: ../../include/features.php:38 +msgid "Post Preview" +msgstr "Anteprima articolo" + +#: ../../include/features.php:38 +msgid "Allow previewing posts and comments before publishing them" +msgstr "Abilita l'anteprima degli articoli e dei commenti prima di pubblicarli" + +#: ../../include/features.php:39 ../../mod/settings.php:120 +#: ../../mod/sources.php:67 +msgid "Channel Sources" +msgstr "Sorgenti del canale" + +#: ../../include/features.php:39 +msgid "Automatically import channel content from other channels or feeds" +msgstr "Importa automaticamente il contenuto del canale da altri canali o feed" + +#: ../../include/features.php:40 +msgid "Even More Encryption" +msgstr "Crittografia addizionale" + +#: ../../include/features.php:40 +msgid "Allow encryption of content end-to-end with a shared secret key" +msgstr "Abilita la crittografia dei contenuti tra il mittente e i destinatari con una chiave segreta" + +#: ../../include/features.php:45 +msgid "Network and Stream Filtering" +msgstr "Filtraggio dei contenuti" + +#: ../../include/features.php:46 +msgid "Search by Date" +msgstr "Ricerca per data" + +#: ../../include/features.php:46 +msgid "Ability to select posts by date ranges" +msgstr "Per selezionare gli articoli in un intervallo tra date" + +#: ../../include/features.php:47 +msgid "Collections Filter" +msgstr "Filtra per insiemi di canali" + +#: ../../include/features.php:47 +msgid "Enable widget to display Network posts only from selected collections" +msgstr "Mostra il riquadro per filtrare gli articoli di certi insiemi di canali" + +#: ../../include/features.php:48 +msgid "Save search terms for re-use" +msgstr "Salva i termini delle ricerche per poterle ripetere" + +#: ../../include/features.php:49 +msgid "Network Personal Tab" +msgstr "Attività personale" + +#: ../../include/features.php:49 +msgid "Enable tab to display only Network posts that you've interacted on" +msgstr "Abilita il link per mostrare solamente i contenuti con cui hai interagito" + +#: ../../include/features.php:50 +msgid "Network New Tab" +msgstr "Contenuti nuovi" + +#: ../../include/features.php:50 +msgid "Enable tab to display all new Network activity" +msgstr "Abilita il link per visualizzare solo i nuovi contenuti" + +#: ../../include/features.php:51 +msgid "Affinity Tool" +msgstr "Filtro per affinità" + +#: ../../include/features.php:51 +msgid "Filter stream activity by depth of relationships" +msgstr "Permette di selezionare i contenuti in base al livello di amicizia" + +#: ../../include/features.php:52 +msgid "Suggest Channels" +msgstr "Suggerisci canali" + +#: ../../include/features.php:52 +msgid "Show channel suggestions" +msgstr "Mostra alcuni canali che potrebbero interessarti" + +#: ../../include/features.php:57 +msgid "Post/Comment Tools" +msgstr "Gestione articoli e commenti" + +#: ../../include/features.php:59 +msgid "Edit Sent Posts" +msgstr "Modifica gli articoli già inviati" + +#: ../../include/features.php:59 +msgid "Edit and correct posts and comments after sending" +msgstr "Modifica e correggi gli articoli o i commenti anche dopo l'invio" + +#: ../../include/features.php:60 +msgid "Tagging" +msgstr "Tag" + +#: ../../include/features.php:60 +msgid "Ability to tag existing posts" +msgstr "Permetti l'aggiunta di tag su articoli già esistenti" + +#: ../../include/features.php:61 +msgid "Post Categories" +msgstr "Categorie degli articoli" + +#: ../../include/features.php:61 +msgid "Add categories to your posts" +msgstr "Abilita le categorie per i tuoi articoli" + +#: ../../include/features.php:62 +msgid "Ability to file posts under folders" +msgstr "Abilita la raccolta dei tuoi articoli in cartelle" + +#: ../../include/features.php:63 +msgid "Dislike Posts" +msgstr "Non mi piace" + +#: ../../include/features.php:63 +msgid "Ability to dislike posts/comments" +msgstr "Abilità la funzionalità \"non mi piace\" per i tuoi articoli" + +#: ../../include/features.php:64 +msgid "Star Posts" +msgstr "Articoli stella (preferiti)" + +#: ../../include/features.php:64 +msgid "Ability to mark special posts with a star indicator" +msgstr "Mostra la stella per scegliere gli articoli preferiti" + +#: ../../include/features.php:65 +msgid "Tag Cloud" +msgstr "Nuvola di tag" + +#: ../../include/features.php:65 +msgid "Provide a personal tag cloud on your channel page" +msgstr "Mostra la nuvola dei tag che usi di più sulla pagina del tuo canale" + #: ../../include/notify.php:23 msgid "created a new post" msgstr "Ha creato un nuovo articolo" @@ -1074,30 +1226,29 @@ msgstr "ha commentato l'articolo di %s" #: ../../include/attach.php:204 ../../include/attach.php:237 #: ../../include/attach.php:251 ../../include/attach.php:272 #: ../../include/attach.php:464 ../../include/attach.php:539 -#: ../../include/items.php:3412 ../../mod/common.php:43 -#: ../../mod/events.php:139 ../../mod/invite.php:13 ../../mod/invite.php:102 +#: ../../include/items.php:3429 ../../mod/common.php:35 +#: ../../mod/events.php:140 ../../mod/invite.php:13 ../../mod/invite.php:102 #: ../../mod/allfriends.php:10 ../../mod/webpages.php:40 ../../mod/api.php:26 -#: ../../mod/api.php:31 ../../mod/lastpost.php:93 ../../mod/page.php:30 -#: ../../mod/page.php:80 ../../mod/setup.php:200 ../../mod/settings.php:586 -#: ../../mod/viewconnections.php:33 ../../mod/viewconnections.php:38 -#: ../../mod/delegate.php:6 ../../mod/sources.php:48 ../../mod/mitem.php:92 +#: ../../mod/api.php:31 ../../mod/page.php:30 ../../mod/page.php:80 +#: ../../mod/setup.php:200 ../../mod/settings.php:586 +#: ../../mod/viewconnections.php:22 ../../mod/viewconnections.php:27 +#: ../../mod/delegate.php:6 ../../mod/sources.php:48 ../../mod/mitem.php:73 #: ../../mod/group.php:15 ../../mod/photos.php:74 ../../mod/photos.php:654 #: ../../mod/viewsrc.php:12 ../../mod/menu.php:40 ../../mod/message.php:208 #: ../../mod/layouts.php:27 ../../mod/layouts.php:42 ../../mod/network.php:12 -#: ../../mod/intro.php:50 ../../mod/profiles.php:163 -#: ../../mod/profiles.php:476 ../../mod/new_channel.php:66 -#: ../../mod/new_channel.php:97 ../../mod/connections.php:197 -#: ../../mod/filestorage.php:26 ../../mod/manage.php:6 -#: ../../mod/crepair.php:115 ../../mod/editlayout.php:48 -#: ../../mod/profile_photo.php:197 ../../mod/profile_photo.php:210 -#: ../../mod/editwebpage.php:42 ../../mod/editwebpage.php:64 +#: ../../mod/profiles.php:152 ../../mod/profiles.php:465 +#: ../../mod/new_channel.php:66 ../../mod/new_channel.php:97 +#: ../../mod/connections.php:201 ../../mod/filestorage.php:26 +#: ../../mod/manage.php:6 ../../mod/editlayout.php:48 +#: ../../mod/profile_photo.php:187 ../../mod/profile_photo.php:200 +#: ../../mod/editwebpage.php:44 ../../mod/editwebpage.php:83 #: ../../mod/notifications.php:66 ../../mod/blocks.php:29 #: ../../mod/blocks.php:44 ../../mod/editpost.php:13 ../../mod/poke.php:128 -#: ../../mod/channel.php:110 ../../mod/fsuggest.php:78 +#: ../../mod/channel.php:86 ../../mod/fsuggest.php:78 #: ../../mod/editblock.php:48 ../../mod/item.php:181 ../../mod/item.php:189 -#: ../../mod/suggest.php:32 ../../mod/register.php:68 ../../mod/regmod.php:18 +#: ../../mod/suggest.php:33 ../../mod/register.php:68 ../../mod/regmod.php:18 #: ../../mod/authtest.php:13 ../../mod/mood.php:114 ../../index.php:178 -#: ../../index.php:340 +#: ../../index.php:346 msgid "Permission denied." msgstr "Permesso negato." @@ -1110,7 +1261,7 @@ msgstr "L'immagine supera il limite massimo di %lu bytes" msgid "Image file is empty." msgstr "Il file dell'immagine è vuoto." -#: ../../include/photos.php:124 ../../mod/profile_photo.php:157 +#: ../../include/photos.php:124 ../../mod/profile_photo.php:147 msgid "Unable to process image" msgstr "Impossibile elaborare l'immagine" @@ -1118,7 +1269,7 @@ msgstr "Impossibile elaborare l'immagine" msgid "Photo storage failed." msgstr "Impossibile caricare la foto." -#: ../../include/photos.php:288 ../../include/conversation.php:1453 +#: ../../include/photos.php:288 ../../include/conversation.php:1457 msgid "Photo Albums" msgstr "Album foto" @@ -1271,11 +1422,6 @@ msgstr "Infedele" msgid "Sex Addict" msgstr "Sesso-dipendente" -#: ../../include/profile_selectors.php:42 ../../include/identity.php:298 -#: ../../mod/network.php:215 ../../mod/connections.php:407 -msgid "Friends" -msgstr "Amici" - #: ../../include/profile_selectors.php:42 msgid "Friends/Benefits" msgstr "Amici piccanti" @@ -1447,8 +1593,8 @@ msgstr "Bacheca" msgid "Your posts and conversations" msgstr "I tuoi articoli e conversazioni" -#: ../../include/nav.php:76 ../../include/conversation.php:925 -#: ../../mod/connections.php:327 ../../mod/connections.php:441 +#: ../../include/nav.php:76 ../../include/conversation.php:929 +#: ../../mod/connections.php:331 ../../mod/connections.php:445 msgid "View Profile" msgstr "Profilo" @@ -1464,7 +1610,7 @@ msgstr "Modifica i profili" msgid "Manage/Edit Profiles" msgstr "Gestisci e modifica i profili" -#: ../../include/nav.php:79 ../../include/conversation.php:1450 +#: ../../include/nav.php:79 ../../include/conversation.php:1454 #: ../../mod/fbrowser.php:25 msgid "Photos" msgstr "Foto" @@ -1519,7 +1665,7 @@ msgid "Addon applications, utilities, games" msgstr "App, strumenti e giochi aggiuntivi" #: ../../include/nav.php:135 ../../include/text.php:736 -#: ../../mod/search.php:96 +#: ../../include/text.php:750 ../../mod/search.php:96 msgid "Search" msgstr "Cerca" @@ -1527,7 +1673,7 @@ msgstr "Cerca" msgid "Search site content" msgstr "Cerca nel sito" -#: ../../include/nav.php:138 ../../mod/directory.php:225 +#: ../../include/nav.php:138 ../../mod/directory.php:228 msgid "Directory" msgstr "Tutti i canali" @@ -1544,143 +1690,163 @@ msgid "Your matrix" msgstr "La tua rete" #: ../../include/nav.php:150 -msgid "See all matrix notifications" -msgstr "Notifiche dalla tua rete" - -#: ../../include/nav.php:151 msgid "Mark all matrix notifications seen" msgstr "Segna come lette le notifiche della tua rete" -#: ../../include/nav.php:153 +#: ../../include/nav.php:152 msgid "Channel Home" msgstr "Bacheca del canale" -#: ../../include/nav.php:153 +#: ../../include/nav.php:152 msgid "Channel home" msgstr "Bacheca del canale" -#: ../../include/nav.php:154 -msgid "See all channel notifications" -msgstr "Guarda le notifiche dei canali" - -#: ../../include/nav.php:155 +#: ../../include/nav.php:153 msgid "Mark all channel notifications seen" msgstr "Segna come lette le notifiche dei canali" -#: ../../include/nav.php:158 +#: ../../include/nav.php:156 msgid "Intros" msgstr "Richieste" -#: ../../include/nav.php:158 ../../mod/connections.php:585 +#: ../../include/nav.php:156 ../../mod/connections.php:589 msgid "New Connections" msgstr "Nuovi contatti" #: ../../include/nav.php:159 -msgid "See all channel introductions" -msgstr "Guarda tutte le richieste di amicizia" - -#: ../../include/nav.php:162 msgid "Notices" msgstr "Notifiche" -#: ../../include/nav.php:162 ../../mod/notifications.php:218 +#: ../../include/nav.php:159 msgid "Notifications" msgstr "Notifiche" -#: ../../include/nav.php:163 +#: ../../include/nav.php:160 msgid "See all notifications" msgstr "Vedi tutte le notifiche" -#: ../../include/nav.php:164 +#: ../../include/nav.php:161 msgid "Mark all system notifications seen" msgstr "Segna come lette le notifiche di sistema" -#: ../../include/nav.php:166 +#: ../../include/nav.php:163 msgid "Mail" msgstr "Messaggi" -#: ../../include/nav.php:166 +#: ../../include/nav.php:163 msgid "Private mail" msgstr "Messaggi privati" -#: ../../include/nav.php:167 +#: ../../include/nav.php:164 msgid "See all private messages" msgstr "Guarda tutti i messaggi privati" -#: ../../include/nav.php:168 +#: ../../include/nav.php:165 msgid "Mark all private messages seen" msgstr "Segna come letti tutti i messaggi privati" -#: ../../include/nav.php:169 +#: ../../include/nav.php:166 msgid "Inbox" msgstr "In arrivo" -#: ../../include/nav.php:170 +#: ../../include/nav.php:167 msgid "Outbox" msgstr "Inviati" -#: ../../include/nav.php:171 ../../mod/message.php:24 +#: ../../include/nav.php:168 ../../mod/message.php:24 msgid "New Message" msgstr "Nuovo messaggio" -#: ../../include/nav.php:174 ../../include/conversation.php:1461 -#: ../../mod/events.php:353 +#: ../../include/nav.php:171 ../../include/conversation.php:1465 +#: ../../mod/events.php:354 msgid "Events" msgstr "Eventi" -#: ../../include/nav.php:174 +#: ../../include/nav.php:171 msgid "Event Calendar" msgstr "Calendario" -#: ../../include/nav.php:175 +#: ../../include/nav.php:172 msgid "See all events" msgstr "Guarda tutti gli eventi" -#: ../../include/nav.php:176 +#: ../../include/nav.php:173 msgid "Mark all events seen" msgstr "Marca come letti tutti gli eventi" -#: ../../include/nav.php:178 +#: ../../include/nav.php:175 msgid "Channel Select" msgstr "Gestisci i canali" -#: ../../include/nav.php:178 +#: ../../include/nav.php:175 msgid "Manage Your Channels" msgstr "Gestisci i contatti dei tuoi canali" -#: ../../include/nav.php:180 ../../mod/settings.php:131 -#: ../../mod/admin.php:782 ../../mod/admin.php:987 +#: ../../include/nav.php:177 ../../mod/settings.php:131 +#: ../../mod/admin.php:785 ../../mod/admin.php:990 msgid "Settings" msgstr "Impostazioni" -#: ../../include/nav.php:180 +#: ../../include/nav.php:177 msgid "Account/Channel Settings" msgstr "Impostazioni account e canali" -#: ../../include/nav.php:182 ../../mod/connections.php:690 +#: ../../include/nav.php:179 ../../mod/connections.php:694 msgid "Connections" msgstr "Contatti" -#: ../../include/nav.php:182 +#: ../../include/nav.php:179 msgid "Manage/Edit Friends and Connections" msgstr "Modifica amici e contatti" -#: ../../include/nav.php:189 ../../mod/admin.php:111 +#: ../../include/nav.php:186 ../../mod/admin.php:111 msgid "Admin" msgstr "Amministrazione" -#: ../../include/nav.php:189 +#: ../../include/nav.php:186 msgid "Site Setup and Configuration" msgstr "Configurazione del sito" -#: ../../include/nav.php:215 +#: ../../include/nav.php:212 msgid "Nothing new here" msgstr "Niente di nuovo qui" -#: ../../include/nav.php:220 +#: ../../include/nav.php:217 msgid "Please wait..." msgstr "Attendere..." +#: ../../include/taxonomy.php:210 +msgid "Tags" +msgstr "Tag" + +#: ../../include/taxonomy.php:224 +msgid "Keywords" +msgstr "Parole chiave" + +#: ../../include/taxonomy.php:249 +msgid "have" +msgstr "ho" + +#: ../../include/taxonomy.php:249 +msgid "has" +msgstr "ha" + +#: ../../include/taxonomy.php:250 +msgid "want" +msgstr "voglio" + +#: ../../include/taxonomy.php:250 +msgid "wants" +msgstr "vuole" + +#: ../../include/taxonomy.php:251 +msgid "likes" +msgstr "ama" + +#: ../../include/taxonomy.php:252 +msgid "dislikes" +msgstr "non ama" + #: ../../include/account.php:23 msgid "Not a valid email address" msgstr "Email non valida" @@ -1737,12 +1903,12 @@ msgstr "Account approvato." msgid "Registration revoked for %s" msgstr "Registrazione revocata per %s" -#: ../../include/conversation.php:117 ../../include/text.php:1609 +#: ../../include/conversation.php:117 ../../include/text.php:1621 #: ../../mod/like.php:103 ../../mod/subthread.php:89 ../../mod/tagger.php:45 msgid "photo" msgstr "la foto" -#: ../../include/conversation.php:120 ../../include/text.php:1612 +#: ../../include/conversation.php:120 ../../include/text.php:1624 #: ../../mod/tagger.php:49 msgid "event" msgstr "l'evento" @@ -1751,12 +1917,12 @@ msgstr "l'evento" msgid "channel" msgstr "canale" -#: ../../include/conversation.php:145 ../../include/text.php:1615 +#: ../../include/conversation.php:145 ../../include/text.php:1627 #: ../../mod/like.php:103 ../../mod/subthread.php:89 ../../mod/tagger.php:53 msgid "status" msgstr "il messaggio di stato" -#: ../../include/conversation.php:147 ../../include/text.php:1617 +#: ../../include/conversation.php:147 ../../include/text.php:1629 #: ../../mod/tagger.php:55 msgid "comment" msgstr "il commento" @@ -1776,352 +1942,352 @@ msgstr "A %1$s non piace %3$s di %2$s" msgid "%1$s is now connected with %2$s" msgstr "%1$s adesso è connesso con %2$s" -#: ../../include/conversation.php:232 +#: ../../include/conversation.php:236 #, php-format msgid "%1$s poked %2$s" msgstr "%1$s ha mandato un poke a %2$s" -#: ../../include/conversation.php:236 ../../include/text.php:776 +#: ../../include/conversation.php:240 ../../include/text.php:790 msgid "poked" msgstr "ha ricevuto un poke" -#: ../../include/conversation.php:254 ../../mod/mood.php:63 +#: ../../include/conversation.php:258 ../../mod/mood.php:63 #, php-format msgid "%1$s is currently %2$s" msgstr "%1$s al momento è %2$s" -#: ../../include/conversation.php:658 +#: ../../include/conversation.php:662 #, php-format msgid "View %s's profile @ %s" msgstr "Vedi il profilo di %s @ %s" -#: ../../include/conversation.php:672 +#: ../../include/conversation.php:676 msgid "Categories:" msgstr "Categorie:" -#: ../../include/conversation.php:673 +#: ../../include/conversation.php:677 msgid "Filed under:" msgstr "Classificato come:" -#: ../../include/conversation.php:700 +#: ../../include/conversation.php:704 msgid "View in context" msgstr "Vedi nel contesto" -#: ../../include/conversation.php:826 +#: ../../include/conversation.php:830 msgid "remove" msgstr "rimuovi" -#: ../../include/conversation.php:830 +#: ../../include/conversation.php:834 msgid "Loading..." msgstr "Caricamento in corso..." -#: ../../include/conversation.php:831 +#: ../../include/conversation.php:835 msgid "Delete Selected Items" msgstr "Elimina gli oggetti selezionati" -#: ../../include/conversation.php:922 +#: ../../include/conversation.php:926 msgid "View Source" msgstr "Vedi il sorgente" -#: ../../include/conversation.php:923 +#: ../../include/conversation.php:927 msgid "Follow Thread" msgstr "Segui la discussione" -#: ../../include/conversation.php:924 +#: ../../include/conversation.php:928 msgid "View Status" msgstr "Guarda il messaggio di stato" -#: ../../include/conversation.php:926 +#: ../../include/conversation.php:930 msgid "View Photos" msgstr "Guarda le foto" -#: ../../include/conversation.php:927 +#: ../../include/conversation.php:931 msgid "Matrix Activity" msgstr "Attività nella tua rete" -#: ../../include/conversation.php:928 +#: ../../include/conversation.php:932 msgid "Edit Contact" msgstr "Modifica il contatto" -#: ../../include/conversation.php:929 +#: ../../include/conversation.php:933 msgid "Send PM" msgstr "Invia messaggio privato" -#: ../../include/conversation.php:930 +#: ../../include/conversation.php:934 msgid "Poke" msgstr "Poke" -#: ../../include/conversation.php:992 +#: ../../include/conversation.php:996 #, php-format msgid "%s likes this." msgstr "Piace a %s." -#: ../../include/conversation.php:992 +#: ../../include/conversation.php:996 #, php-format msgid "%s doesn't like this." msgstr "Non piace a %s." -#: ../../include/conversation.php:996 +#: ../../include/conversation.php:1000 #, php-format msgid "%2$d people like this." msgid_plural "%2$d people like this." msgstr[0] "" msgstr[1] "Piace a %2$d persone." -#: ../../include/conversation.php:998 +#: ../../include/conversation.php:1002 #, php-format msgid "%2$d people don't like this." msgid_plural "%2$d people don't like this." msgstr[0] "" msgstr[1] "Non piace a %2$d persone." -#: ../../include/conversation.php:1004 +#: ../../include/conversation.php:1008 msgid "and" msgstr "e" -#: ../../include/conversation.php:1007 +#: ../../include/conversation.php:1011 #, php-format msgid ", and %d other people" msgid_plural ", and %d other people" msgstr[0] "" msgstr[1] "e altre %d persone" -#: ../../include/conversation.php:1008 +#: ../../include/conversation.php:1012 #, php-format msgid "%s like this." msgstr "Piace a %s." -#: ../../include/conversation.php:1008 +#: ../../include/conversation.php:1012 #, php-format msgid "%s don't like this." msgstr "Non piace a %s." -#: ../../include/conversation.php:1058 +#: ../../include/conversation.php:1062 msgid "Visible to everybody" msgstr "Visibile a tutti" -#: ../../include/conversation.php:1059 ../../mod/message.php:281 +#: ../../include/conversation.php:1063 ../../mod/message.php:281 #: ../../mod/message.php:417 msgid "Please enter a link URL:" msgstr "Inserisci l'indirizzo del link:" -#: ../../include/conversation.php:1060 +#: ../../include/conversation.php:1064 msgid "Please enter a video link/URL:" msgstr "Inserisci l'indirizzo del video:" -#: ../../include/conversation.php:1061 +#: ../../include/conversation.php:1065 msgid "Please enter an audio link/URL:" msgstr "Inserisci l'indirizzo dell'audio:" -#: ../../include/conversation.php:1062 +#: ../../include/conversation.php:1066 msgid "Tag term:" msgstr "Tag:" -#: ../../include/conversation.php:1063 ../../mod/filer.php:35 +#: ../../include/conversation.php:1067 ../../mod/filer.php:35 msgid "Save to Folder:" msgstr "Salva nella cartella:" -#: ../../include/conversation.php:1064 +#: ../../include/conversation.php:1068 msgid "Where are you right now?" msgstr "Dove sei ora?" -#: ../../include/conversation.php:1065 ../../mod/message.php:282 +#: ../../include/conversation.php:1069 ../../mod/message.php:282 #: ../../mod/message.php:418 ../../mod/editpost.php:52 msgid "Expires YYYY-MM-DD HH:MM" msgstr "Scadenza il AAAA-MM-GG OO:MM" -#: ../../include/conversation.php:1089 ../../mod/photos.php:1071 +#: ../../include/conversation.php:1093 ../../mod/photos.php:1071 msgid "Share" msgstr "Condividi" -#: ../../include/conversation.php:1091 +#: ../../include/conversation.php:1095 ../../mod/editwebpage.php:139 msgid "Page link title" msgstr "Link del titolo" -#: ../../include/conversation.php:1093 ../../mod/message.php:329 -#: ../../mod/message.php:512 ../../mod/editlayout.php:101 -#: ../../mod/editwebpage.php:120 ../../mod/editpost.php:98 +#: ../../include/conversation.php:1097 ../../mod/message.php:329 +#: ../../mod/message.php:480 ../../mod/editlayout.php:101 +#: ../../mod/editwebpage.php:144 ../../mod/editpost.php:98 #: ../../mod/editblock.php:115 msgid "Upload photo" msgstr "Carica foto" -#: ../../include/conversation.php:1094 +#: ../../include/conversation.php:1098 msgid "upload photo" msgstr "carica foto" -#: ../../include/conversation.php:1095 ../../mod/message.php:330 -#: ../../mod/message.php:513 ../../mod/editlayout.php:102 -#: ../../mod/editwebpage.php:121 ../../mod/editpost.php:99 +#: ../../include/conversation.php:1099 ../../mod/message.php:330 +#: ../../mod/message.php:481 ../../mod/editlayout.php:102 +#: ../../mod/editwebpage.php:145 ../../mod/editpost.php:99 #: ../../mod/editblock.php:116 msgid "Attach file" msgstr "Allega file" -#: ../../include/conversation.php:1096 +#: ../../include/conversation.php:1100 msgid "attach file" msgstr "allega file" -#: ../../include/conversation.php:1097 ../../mod/message.php:331 -#: ../../mod/message.php:514 ../../mod/editlayout.php:103 -#: ../../mod/editwebpage.php:122 ../../mod/editpost.php:100 +#: ../../include/conversation.php:1101 ../../mod/message.php:331 +#: ../../mod/message.php:482 ../../mod/editlayout.php:103 +#: ../../mod/editwebpage.php:146 ../../mod/editpost.php:100 #: ../../mod/editblock.php:117 msgid "Insert web link" msgstr "Inserisci un indirizzo web" -#: ../../include/conversation.php:1098 +#: ../../include/conversation.php:1102 msgid "web link" msgstr "link web" -#: ../../include/conversation.php:1099 +#: ../../include/conversation.php:1103 msgid "Insert video link" msgstr "Inserisci l'indirizzo di un video" -#: ../../include/conversation.php:1100 +#: ../../include/conversation.php:1104 msgid "video link" msgstr "link video" -#: ../../include/conversation.php:1101 +#: ../../include/conversation.php:1105 msgid "Insert audio link" msgstr "Inserisci l'indirizzo di un audio" -#: ../../include/conversation.php:1102 +#: ../../include/conversation.php:1106 msgid "audio link" msgstr "link audio" -#: ../../include/conversation.php:1103 ../../mod/editlayout.php:107 -#: ../../mod/editwebpage.php:126 ../../mod/editpost.php:104 +#: ../../include/conversation.php:1107 ../../mod/editlayout.php:107 +#: ../../mod/editwebpage.php:150 ../../mod/editpost.php:104 #: ../../mod/editblock.php:121 msgid "Set your location" msgstr "La tua località" -#: ../../include/conversation.php:1104 +#: ../../include/conversation.php:1108 msgid "set location" msgstr "la tua località" -#: ../../include/conversation.php:1105 ../../mod/editlayout.php:108 -#: ../../mod/editwebpage.php:127 ../../mod/editpost.php:105 +#: ../../include/conversation.php:1109 ../../mod/editlayout.php:108 +#: ../../mod/editwebpage.php:151 ../../mod/editpost.php:105 #: ../../mod/editblock.php:122 msgid "Clear browser location" msgstr "Rimuovi la località data dal browser" -#: ../../include/conversation.php:1106 +#: ../../include/conversation.php:1110 msgid "clear location" msgstr "rimuovi la località" -#: ../../include/conversation.php:1108 ../../mod/editlayout.php:121 -#: ../../mod/editwebpage.php:142 ../../mod/editpost.php:118 +#: ../../include/conversation.php:1112 ../../mod/editlayout.php:121 +#: ../../mod/editwebpage.php:168 ../../mod/editpost.php:118 #: ../../mod/editblock.php:136 msgid "Set title" msgstr "Scegli un titolo" -#: ../../include/conversation.php:1111 ../../mod/editlayout.php:123 -#: ../../mod/editwebpage.php:144 ../../mod/editpost.php:120 +#: ../../include/conversation.php:1115 ../../mod/editlayout.php:123 +#: ../../mod/editwebpage.php:170 ../../mod/editpost.php:120 #: ../../mod/editblock.php:138 msgid "Categories (comma-separated list)" msgstr "Categorie (separate da virgola)" -#: ../../include/conversation.php:1113 ../../mod/editlayout.php:110 -#: ../../mod/editwebpage.php:129 ../../mod/editpost.php:107 +#: ../../include/conversation.php:1117 ../../mod/editlayout.php:110 +#: ../../mod/editwebpage.php:153 ../../mod/editpost.php:107 #: ../../mod/editblock.php:124 msgid "Permission settings" msgstr "Impostazioni permessi" -#: ../../include/conversation.php:1114 +#: ../../include/conversation.php:1118 msgid "permissions" msgstr "permessi" -#: ../../include/conversation.php:1122 ../../mod/editlayout.php:118 -#: ../../mod/editwebpage.php:137 ../../mod/editpost.php:115 +#: ../../include/conversation.php:1126 ../../mod/editlayout.php:118 +#: ../../mod/editwebpage.php:163 ../../mod/editpost.php:115 #: ../../mod/editblock.php:133 msgid "Public post" msgstr "Articolo pubblico" -#: ../../include/conversation.php:1124 ../../mod/editlayout.php:124 -#: ../../mod/editwebpage.php:145 ../../mod/editpost.php:121 +#: ../../include/conversation.php:1128 ../../mod/editlayout.php:124 +#: ../../mod/editwebpage.php:171 ../../mod/editpost.php:121 #: ../../mod/editblock.php:139 msgid "Example: bob@example.com, mary@example.com" msgstr "Per esempio: mario@esempio.com, simona@esempio.com" -#: ../../include/conversation.php:1137 ../../mod/message.php:336 -#: ../../mod/message.php:519 ../../mod/editlayout.php:134 -#: ../../mod/editwebpage.php:155 ../../mod/editpost.php:132 +#: ../../include/conversation.php:1141 ../../mod/message.php:336 +#: ../../mod/message.php:487 ../../mod/editlayout.php:134 +#: ../../mod/editwebpage.php:181 ../../mod/editpost.php:132 #: ../../mod/editblock.php:149 msgid "Set expiration date" msgstr "Data di scadenza" -#: ../../include/conversation.php:1364 +#: ../../include/conversation.php:1368 msgid "Commented Order" msgstr "Ultimi commenti" -#: ../../include/conversation.php:1367 +#: ../../include/conversation.php:1371 msgid "Sort by Comment Date" msgstr "Per data del commento" -#: ../../include/conversation.php:1370 +#: ../../include/conversation.php:1374 msgid "Posted Order" msgstr "Ultimi articoli" -#: ../../include/conversation.php:1373 +#: ../../include/conversation.php:1377 msgid "Sort by Post Date" msgstr "Per data di creazione" -#: ../../include/conversation.php:1377 ../../mod/notifications.php:86 +#: ../../include/conversation.php:1381 msgid "Personal" msgstr "Personali" -#: ../../include/conversation.php:1380 +#: ../../include/conversation.php:1384 msgid "Posts that mention or involve you" msgstr "Articoli che ti riguardano o ti menzionano" -#: ../../include/conversation.php:1383 ../../mod/menu.php:57 -#: ../../mod/connections.php:552 +#: ../../include/conversation.php:1387 ../../mod/menu.php:57 +#: ../../mod/connections.php:556 msgid "New" msgstr "Novità" -#: ../../include/conversation.php:1386 +#: ../../include/conversation.php:1390 msgid "Activity Stream - by date" msgstr "Elenco attività - per data" -#: ../../include/conversation.php:1393 +#: ../../include/conversation.php:1397 msgid "Starred" msgstr "Preferiti" -#: ../../include/conversation.php:1396 +#: ../../include/conversation.php:1400 msgid "Favourite Posts" msgstr "Articoli preferiti" -#: ../../include/conversation.php:1403 +#: ../../include/conversation.php:1407 msgid "Spam" msgstr "Spam" -#: ../../include/conversation.php:1406 +#: ../../include/conversation.php:1410 msgid "Posts flagged as SPAM" msgstr "Articoli marcati come spam" -#: ../../include/conversation.php:1436 +#: ../../include/conversation.php:1440 msgid "Channel" msgstr "Canale" -#: ../../include/conversation.php:1439 +#: ../../include/conversation.php:1443 msgid "Status Messages and Posts" msgstr "Articoli e messaggi di stato" -#: ../../include/conversation.php:1443 +#: ../../include/conversation.php:1447 msgid "About" msgstr "Informazioni" -#: ../../include/conversation.php:1446 +#: ../../include/conversation.php:1450 msgid "Profile Details" msgstr "Dettagli del profilo" -#: ../../include/conversation.php:1464 +#: ../../include/conversation.php:1468 msgid "Events and Calendar" msgstr "Calendario eventi" -#: ../../include/conversation.php:1469 +#: ../../include/conversation.php:1473 msgid "Webpages" msgstr "Pagine web" -#: ../../include/conversation.php:1472 +#: ../../include/conversation.php:1476 msgid "Manage Webpages" msgstr "Gestisci le pagine web" @@ -2139,70 +2305,45 @@ msgstr "Accesso fallito." #: ../../include/contact_widgets.php:14 #, php-format -msgid "You have %1$.0f of %2$.0f allowed connections." -msgstr "Hai attivato %1$.0f delle %2$.0f connessioni permesse." - -#: ../../include/contact_widgets.php:20 -msgid "Add New Connection" -msgstr "Aggiungi un contatto" - -#: ../../include/contact_widgets.php:21 -msgid "Enter the channel address" -msgstr "Scrivi l'indirizzo del canale" - -#: ../../include/contact_widgets.php:22 -msgid "Example: bob@example.com, http://example.com/barbara" -msgstr "Per esempio: mario@pippo.it oppure http://pluto.com/barbara" - -#: ../../include/contact_widgets.php:38 -#, php-format msgid "%d invitation available" msgid_plural "%d invitations available" msgstr[0] "%d invito disponibile" msgstr[1] "%d inviti disponibili" -#: ../../include/contact_widgets.php:44 +#: ../../include/contact_widgets.php:20 msgid "Find Channels" msgstr "Ricerca canali" -#: ../../include/contact_widgets.php:45 +#: ../../include/contact_widgets.php:21 msgid "Enter name or interest" msgstr "Scrivi un nome o un interesse" -#: ../../include/contact_widgets.php:46 +#: ../../include/contact_widgets.php:22 msgid "Connect/Follow" -msgstr "Entra in contatto/segui" +msgstr "Entra in contatto" -#: ../../include/contact_widgets.php:47 +#: ../../include/contact_widgets.php:23 msgid "Examples: Robert Morgenstein, Fishing" msgstr "Per esempio: Mario Rossi, Pesca" -#: ../../include/contact_widgets.php:48 ../../mod/connections.php:696 -#: ../../mod/directory.php:221 ../../mod/directory.php:226 +#: ../../include/contact_widgets.php:24 ../../mod/connections.php:700 +#: ../../mod/directory.php:224 ../../mod/directory.php:229 msgid "Find" msgstr "Cerca" -#: ../../include/contact_widgets.php:49 ../../mod/suggest.php:64 +#: ../../include/contact_widgets.php:25 ../../mod/suggest.php:66 msgid "Channel Suggestions" msgstr "Canali suggeriti" -#: ../../include/contact_widgets.php:51 +#: ../../include/contact_widgets.php:27 msgid "Random Profile" msgstr "Profilo casuale" -#: ../../include/contact_widgets.php:52 +#: ../../include/contact_widgets.php:28 msgid "Invite Friends" msgstr "Invita amici" -#: ../../include/contact_widgets.php:79 ../../include/contact_widgets.php:113 -msgid "Everything" -msgstr "Tutto" - -#: ../../include/contact_widgets.php:110 ../../include/widgets.php:26 -msgid "Categories" -msgstr "Categorie" - -#: ../../include/contact_widgets.php:143 +#: ../../include/contact_widgets.php:119 #, php-format msgid "%d connection in common" msgid_plural "%d connections in common" @@ -2252,274 +2393,282 @@ msgstr[1] "%d contatti" msgid "View Connections" msgstr "Elenco contatti" -#: ../../include/text.php:738 ../../mod/filer.php:36 -msgid "Save" -msgstr "Salva" - -#: ../../include/text.php:776 +#: ../../include/text.php:790 msgid "poke" msgstr "poke" -#: ../../include/text.php:777 +#: ../../include/text.php:791 msgid "ping" msgstr "ping" -#: ../../include/text.php:777 +#: ../../include/text.php:791 msgid "pinged" msgstr "ha ricevuto un ping" -#: ../../include/text.php:778 +#: ../../include/text.php:792 msgid "prod" msgstr "prod" -#: ../../include/text.php:778 +#: ../../include/text.php:792 msgid "prodded" msgstr "ha ricevuto un prod" -#: ../../include/text.php:779 +#: ../../include/text.php:793 msgid "slap" msgstr "schiaffo" -#: ../../include/text.php:779 +#: ../../include/text.php:793 msgid "slapped" msgstr "ha ricevuto uno schiaffo" -#: ../../include/text.php:780 +#: ../../include/text.php:794 msgid "finger" msgstr "finger" -#: ../../include/text.php:780 +#: ../../include/text.php:794 msgid "fingered" msgstr "ha ricevuto un finger" -#: ../../include/text.php:781 +#: ../../include/text.php:795 msgid "rebuff" msgstr "rifiuto" -#: ../../include/text.php:781 +#: ../../include/text.php:795 msgid "rebuffed" msgstr "ha ricevuto un rifiuto" -#: ../../include/text.php:793 +#: ../../include/text.php:807 msgid "happy" msgstr "allegro" -#: ../../include/text.php:794 +#: ../../include/text.php:808 msgid "sad" msgstr "triste" -#: ../../include/text.php:795 +#: ../../include/text.php:809 msgid "mellow" msgstr "calmo" -#: ../../include/text.php:796 +#: ../../include/text.php:810 msgid "tired" msgstr "stanco" -#: ../../include/text.php:797 +#: ../../include/text.php:811 msgid "perky" msgstr "vivace" -#: ../../include/text.php:798 +#: ../../include/text.php:812 msgid "angry" msgstr "arrabbiato" -#: ../../include/text.php:799 +#: ../../include/text.php:813 msgid "stupified" msgstr "stordito" -#: ../../include/text.php:800 +#: ../../include/text.php:814 msgid "puzzled" msgstr "confuso" -#: ../../include/text.php:801 +#: ../../include/text.php:815 msgid "interested" msgstr "attento" -#: ../../include/text.php:802 +#: ../../include/text.php:816 msgid "bitter" msgstr "amaro" -#: ../../include/text.php:803 +#: ../../include/text.php:817 msgid "cheerful" msgstr "allegro" -#: ../../include/text.php:804 +#: ../../include/text.php:818 msgid "alive" msgstr "vivace" -#: ../../include/text.php:805 +#: ../../include/text.php:819 msgid "annoyed" msgstr "seccato" -#: ../../include/text.php:806 +#: ../../include/text.php:820 msgid "anxious" msgstr "ansioso" -#: ../../include/text.php:807 +#: ../../include/text.php:821 msgid "cranky" msgstr "irritabile" -#: ../../include/text.php:808 +#: ../../include/text.php:822 msgid "disturbed" msgstr "turbato" -#: ../../include/text.php:809 +#: ../../include/text.php:823 msgid "frustrated" msgstr "frustrato" -#: ../../include/text.php:810 +#: ../../include/text.php:824 msgid "motivated" msgstr "motivato" -#: ../../include/text.php:811 +#: ../../include/text.php:825 msgid "relaxed" msgstr "rilassato" -#: ../../include/text.php:812 +#: ../../include/text.php:826 msgid "surprised" msgstr "sorpreso" -#: ../../include/text.php:976 +#: ../../include/text.php:988 msgid "Monday" msgstr "lunedì" -#: ../../include/text.php:976 +#: ../../include/text.php:988 msgid "Tuesday" msgstr "martedì" -#: ../../include/text.php:976 +#: ../../include/text.php:988 msgid "Wednesday" msgstr "mercoledì" -#: ../../include/text.php:976 +#: ../../include/text.php:988 msgid "Thursday" msgstr "giovedì" -#: ../../include/text.php:976 +#: ../../include/text.php:988 msgid "Friday" msgstr "venerdì" -#: ../../include/text.php:976 +#: ../../include/text.php:988 msgid "Saturday" msgstr "sabato" -#: ../../include/text.php:976 +#: ../../include/text.php:988 msgid "Sunday" msgstr "domenica" -#: ../../include/text.php:980 +#: ../../include/text.php:992 msgid "January" msgstr "gennaio" -#: ../../include/text.php:980 +#: ../../include/text.php:992 msgid "February" msgstr "febbraio" -#: ../../include/text.php:980 +#: ../../include/text.php:992 msgid "March" msgstr "marzo" -#: ../../include/text.php:980 +#: ../../include/text.php:992 msgid "April" msgstr "aprile" -#: ../../include/text.php:980 +#: ../../include/text.php:992 msgid "May" msgstr "maggio" -#: ../../include/text.php:980 +#: ../../include/text.php:992 msgid "June" msgstr "giugno" -#: ../../include/text.php:980 +#: ../../include/text.php:992 msgid "July" msgstr "luglio" -#: ../../include/text.php:980 +#: ../../include/text.php:992 msgid "August" msgstr "agosto" -#: ../../include/text.php:980 +#: ../../include/text.php:992 msgid "September" msgstr "settembre" -#: ../../include/text.php:980 +#: ../../include/text.php:992 msgid "October" msgstr "ottobre" -#: ../../include/text.php:980 +#: ../../include/text.php:992 msgid "November" msgstr "novembre" -#: ../../include/text.php:980 +#: ../../include/text.php:992 msgid "December" msgstr "dicembre" -#: ../../include/text.php:1058 ../../mod/message.php:453 +#: ../../include/text.php:1070 msgid "unknown.???" msgstr "sconosciuto???" -#: ../../include/text.php:1059 ../../mod/message.php:454 +#: ../../include/text.php:1071 msgid "bytes" msgstr "byte" -#: ../../include/text.php:1094 +#: ../../include/text.php:1106 msgid "remove category" msgstr "rimuovi la categoria" -#: ../../include/text.php:1116 +#: ../../include/text.php:1128 msgid "remove from file" msgstr "rimuovi dal file" -#: ../../include/text.php:1170 ../../include/text.php:1182 +#: ../../include/text.php:1182 ../../include/text.php:1194 msgid "Click to open/close" msgstr "Clicca per aprire/chiudere" -#: ../../include/text.php:1358 ../../mod/events.php:331 +#: ../../include/text.php:1370 ../../mod/events.php:332 msgid "link to source" msgstr "Link all'originale" -#: ../../include/text.php:1377 +#: ../../include/text.php:1389 msgid "Select a page layout: " msgstr "Scegli il layout della pagina:" -#: ../../include/text.php:1380 ../../include/text.php:1445 +#: ../../include/text.php:1392 ../../include/text.php:1457 msgid "default" msgstr "predefinito" -#: ../../include/text.php:1416 +#: ../../include/text.php:1428 msgid "Page content type: " msgstr "Contenuto della pagina:" -#: ../../include/text.php:1457 +#: ../../include/text.php:1469 msgid "Select an alternate language" msgstr "Seleziona una lingua diversa" -#: ../../include/text.php:1622 +#: ../../include/text.php:1634 msgid "activity" msgstr "l'attività" -#: ../../include/text.php:1884 +#: ../../include/text.php:1896 msgid "Design" msgstr "Design" -#: ../../include/text.php:1886 +#: ../../include/text.php:1898 msgid "Blocks" msgstr "Riquadri" -#: ../../include/text.php:1887 +#: ../../include/text.php:1899 msgid "Menus" msgstr "Menù" -#: ../../include/text.php:1888 +#: ../../include/text.php:1900 msgid "Layouts" msgstr "Layout" -#: ../../include/text.php:1889 +#: ../../include/text.php:1901 msgid "Pages" msgstr "Pagine" +#: ../../include/plugin.php:475 ../../include/plugin.php:477 +msgid "Click here to upgrade." +msgstr "Clicca qui per aggiornare." + +#: ../../include/plugin.php:483 +msgid "This action exceeds the limits set by your subscription plan." +msgstr "Questa operazione esce dai termini del tuo abbonamento." + +#: ../../include/plugin.php:488 +msgid "This action is not available under your subscription plan." +msgstr "Questa operazione non è prevista dal tuo abbonamento." + #: ../../include/follow.php:21 msgid "Channel is blocked on this site." msgstr "Il canale è bloccato per questo sito." @@ -2574,7 +2723,7 @@ msgstr "Può vedere le mie pagine web \"pubbliche\"" #: ../../include/permissions.php:21 msgid "Can send me their channel stream and posts" -msgstr "Può mostrarmi i contenuti del canale e gli articoli" +msgstr "Seguo i contenuti e gli articoli del suo canale" #: ../../include/permissions.php:22 msgid "Can post on my channel page (\"wall\")" @@ -2633,56 +2782,12 @@ msgid "" "Extremely advanced. Leave this alone unless you know what you are doing" msgstr "Impostazione pericolosa - lasciare il valore predefinito se non si è assolutamente sicuri" -#: ../../include/taxonomy.php:210 -msgid "Tags" -msgstr "Tag" - -#: ../../include/taxonomy.php:224 -msgid "Keywords" -msgstr "Parole chiave" - -#: ../../include/taxonomy.php:249 -msgid "have" -msgstr "ho" - -#: ../../include/taxonomy.php:249 -msgid "has" -msgstr "ha" - -#: ../../include/taxonomy.php:250 -msgid "want" -msgstr "voglio" - -#: ../../include/taxonomy.php:250 -msgid "wants" -msgstr "vuole" - -#: ../../include/taxonomy.php:251 -msgid "likes" -msgstr "ama" - -#: ../../include/taxonomy.php:252 -msgid "dislikes" -msgstr "non ama" - -#: ../../include/plugin.php:475 ../../include/plugin.php:477 -msgid "Click here to upgrade." -msgstr "Clicca qui per aggiornare." - -#: ../../include/plugin.php:483 -msgid "This action exceeds the limits set by your subscription plan." -msgstr "Questa operazione esce dai termini del tuo abbonamento." - -#: ../../include/plugin.php:488 -msgid "This action is not available under your subscription plan." -msgstr "Questa operazione non è prevista dal tuo abbonamento." - #: ../../include/comanche.php:35 ../../view/theme/redbasic/php/config.php:62 #: ../../view/theme/apw/php/config.php:176 msgid "Default" msgstr "Predefinito" -#: ../../include/identity.php:29 ../../mod/item.php:1148 +#: ../../include/identity.php:29 ../../mod/item.php:1151 msgid "Unable to obtain identity information from database" msgstr "Impossibile ottenere le informazioni di identificazione dal database" @@ -2730,7 +2835,7 @@ msgstr "Purtroppo non hai il permesso di vedere questo profilo." msgid "Requested profile is not available." msgstr "Il profilo richiesto non è disponibile." -#: ../../include/identity.php:627 ../../mod/profiles.php:624 +#: ../../include/identity.php:627 ../../mod/profiles.php:613 msgid "Change profile photo" msgstr "Cambia la foto del profilo" @@ -2742,7 +2847,7 @@ msgstr "Profili" msgid "Manage/edit profiles" msgstr "Gestisci/modifica i profili" -#: ../../include/identity.php:634 ../../mod/profiles.php:625 +#: ../../include/identity.php:634 ../../mod/profiles.php:614 msgid "Create New Profile" msgstr "Crea un nuovo profilo" @@ -2750,162 +2855,162 @@ msgstr "Crea un nuovo profilo" msgid "Edit Profile" msgstr "Modifica il profilo" -#: ../../include/identity.php:648 ../../mod/profiles.php:636 +#: ../../include/identity.php:648 ../../mod/profiles.php:625 msgid "Profile Image" msgstr "Immagine del profilo" -#: ../../include/identity.php:651 ../../mod/profiles.php:639 +#: ../../include/identity.php:651 ../../mod/profiles.php:628 msgid "visible to everybody" msgstr "visibile a tutti" -#: ../../include/identity.php:652 ../../mod/profiles.php:640 +#: ../../include/identity.php:652 ../../mod/profiles.php:629 msgid "Edit visibility" msgstr "Cambia la visibilità" -#: ../../include/identity.php:665 ../../include/identity.php:883 -#: ../../mod/directory.php:175 +#: ../../include/identity.php:666 ../../include/identity.php:891 +#: ../../mod/directory.php:176 msgid "Gender:" msgstr "Sesso:" -#: ../../include/identity.php:666 ../../include/identity.php:903 -#: ../../mod/directory.php:177 +#: ../../include/identity.php:667 ../../include/identity.php:911 +#: ../../mod/directory.php:178 msgid "Status:" msgstr "Stato:" -#: ../../include/identity.php:667 ../../include/identity.php:914 -#: ../../mod/directory.php:179 +#: ../../include/identity.php:668 ../../include/identity.php:922 +#: ../../mod/directory.php:180 msgid "Homepage:" msgstr "Home page:" -#: ../../include/identity.php:730 ../../include/identity.php:810 +#: ../../include/identity.php:735 ../../include/identity.php:815 #: ../../mod/ping.php:230 msgid "g A l F d" msgstr "g A l d F" -#: ../../include/identity.php:731 ../../include/identity.php:811 +#: ../../include/identity.php:736 ../../include/identity.php:816 msgid "F d" msgstr "d F" -#: ../../include/identity.php:776 ../../include/identity.php:851 +#: ../../include/identity.php:781 ../../include/identity.php:856 #: ../../mod/ping.php:252 msgid "[today]" msgstr "[oggi]" -#: ../../include/identity.php:788 +#: ../../include/identity.php:793 msgid "Birthday Reminders" msgstr "Promemoria compleanni" -#: ../../include/identity.php:789 +#: ../../include/identity.php:794 msgid "Birthdays this week:" msgstr "Compleanni questa settimana:" -#: ../../include/identity.php:844 +#: ../../include/identity.php:849 msgid "[No description]" msgstr "[Nessuna descrizione]" -#: ../../include/identity.php:862 +#: ../../include/identity.php:867 msgid "Event Reminders" msgstr "Promemoria" -#: ../../include/identity.php:863 +#: ../../include/identity.php:868 msgid "Events this week:" msgstr "Eventi di questa settimana:" -#: ../../include/identity.php:873 ../../include/identity.php:984 -#: ../../mod/profperm.php:112 +#: ../../include/identity.php:881 ../../include/identity.php:992 +#: ../../mod/profperm.php:103 msgid "Profile" msgstr "Profilo" -#: ../../include/identity.php:881 ../../mod/settings.php:1013 +#: ../../include/identity.php:889 ../../mod/settings.php:1013 msgid "Full Name:" msgstr "Nome completo:" -#: ../../include/identity.php:888 +#: ../../include/identity.php:896 msgid "j F, Y" msgstr "j F Y" -#: ../../include/identity.php:889 +#: ../../include/identity.php:897 msgid "j F" msgstr "j F" -#: ../../include/identity.php:896 +#: ../../include/identity.php:904 msgid "Birthday:" msgstr "Compleanno:" -#: ../../include/identity.php:900 +#: ../../include/identity.php:908 msgid "Age:" msgstr "Età:" -#: ../../include/identity.php:909 +#: ../../include/identity.php:917 #, php-format msgid "for %1$d %2$s" msgstr "per %1$d %2$s" -#: ../../include/identity.php:912 ../../mod/profiles.php:549 +#: ../../include/identity.php:920 ../../mod/profiles.php:538 msgid "Sexual Preference:" msgstr "Preferenze sessuali:" -#: ../../include/identity.php:916 ../../mod/profiles.php:551 +#: ../../include/identity.php:924 ../../mod/profiles.php:540 msgid "Hometown:" msgstr "Città dove vivo:" -#: ../../include/identity.php:918 +#: ../../include/identity.php:926 msgid "Tags:" msgstr "Tag:" -#: ../../include/identity.php:920 ../../mod/profiles.php:552 +#: ../../include/identity.php:928 ../../mod/profiles.php:541 msgid "Political Views:" msgstr "Orientamento politico:" -#: ../../include/identity.php:922 +#: ../../include/identity.php:930 msgid "Religion:" msgstr "Religione:" -#: ../../include/identity.php:924 ../../mod/directory.php:181 +#: ../../include/identity.php:932 ../../mod/directory.php:182 msgid "About:" msgstr "Informazioni:" -#: ../../include/identity.php:926 +#: ../../include/identity.php:934 msgid "Hobbies/Interests:" msgstr "Interessi e hobby:" -#: ../../include/identity.php:928 ../../mod/profiles.php:555 +#: ../../include/identity.php:936 ../../mod/profiles.php:544 msgid "Likes:" msgstr "Mi piace:" -#: ../../include/identity.php:930 ../../mod/profiles.php:556 +#: ../../include/identity.php:938 ../../mod/profiles.php:545 msgid "Dislikes:" msgstr "Non mi piace:" -#: ../../include/identity.php:933 +#: ../../include/identity.php:941 msgid "Contact information and Social Networks:" msgstr "Contatti e social network:" -#: ../../include/identity.php:935 +#: ../../include/identity.php:943 msgid "Musical interests:" msgstr "Gusti musicali:" -#: ../../include/identity.php:937 +#: ../../include/identity.php:945 msgid "Books, literature:" msgstr "Libri, letteratura:" -#: ../../include/identity.php:939 +#: ../../include/identity.php:947 msgid "Television:" msgstr "Televisione:" -#: ../../include/identity.php:941 +#: ../../include/identity.php:949 msgid "Film/dance/culture/entertainment:" msgstr "Film, danza, cultura, intrattenimento:" -#: ../../include/identity.php:943 +#: ../../include/identity.php:951 msgid "Love/Romance:" msgstr "Amore:" -#: ../../include/identity.php:945 +#: ../../include/identity.php:953 msgid "Work/employment:" msgstr "Lavoro:" -#: ../../include/identity.php:947 +#: ../../include/identity.php:955 msgid "School/education:" msgstr "Scuola:" @@ -2928,138 +3033,116 @@ msgid "" msgstr "L'identificativo di sicurezza del modulo che hai riempito non è corretto. Probabilmente è accaduto perché la pagina è stata tenuta aperta troppo a lungo (ore?) prima di inviare il contenuto." #: ../../include/items.php:201 ../../mod/like.php:55 ../../mod/group.php:74 -#: ../../mod/profperm.php:28 ../../index.php:339 +#: ../../mod/profperm.php:19 ../../index.php:345 msgid "Permission denied" msgstr "Permesso negato" -#: ../../include/items.php:3350 ../../mod/admin.php:150 -#: ../../mod/admin.php:727 ../../mod/admin.php:930 ../../mod/viewsrc.php:18 +#: ../../include/items.php:3367 ../../mod/admin.php:150 +#: ../../mod/admin.php:730 ../../mod/admin.php:933 ../../mod/viewsrc.php:18 #: ../../mod/home.php:64 ../../mod/display.php:32 msgid "Item not found." msgstr "Elemento non trovato." -#: ../../include/items.php:3533 -msgid "Archives" -msgstr "Archivi" - -#: ../../include/items.php:3699 ../../mod/group.php:44 ../../mod/group.php:146 +#: ../../include/items.php:3718 ../../mod/group.php:44 ../../mod/group.php:146 msgid "Collection not found." msgstr "Insieme non trovato." -#: ../../include/items.php:3715 ../../mod/network.php:288 -msgid "Group is empty" -msgstr "L'insieme è vuoto" +#: ../../include/items.php:3733 +msgid "Collection is empty." +msgstr "L'insieme di canali è vuoto." -#: ../../include/items.php:3731 +#: ../../include/items.php:3740 +#, php-format +msgid "Collection: %s" +msgstr "Insieme: %s" + +#: ../../include/items.php:3751 +#, php-format +msgid "Connection: %s" +msgstr "Contatto: %s" + +#: ../../include/items.php:3754 msgid "Connection not found." msgstr "Contatto non trovato." -#: ../../include/dir_fns.php:15 -msgid "Sort Options" -msgstr "Opzioni di ordinamento" - -#: ../../include/dir_fns.php:16 -msgid "Alphabetic" -msgstr "Alfabetico" - -#: ../../include/dir_fns.php:17 -msgid "Reverse Alphabetic" -msgstr "Alfabetico inverso" - -#: ../../include/dir_fns.php:18 -msgid "Newest to Oldest" -msgstr "Dal più nuovo al più vecchio" - -#: ../../include/dir_fns.php:29 -msgid "Enable Safe Search" -msgstr "Abilita SafeSearch" - -#: ../../include/dir_fns.php:31 -msgid "Disable Safe Search" -msgstr "Disabilita SafeSearch" - -#: ../../include/dir_fns.php:33 -msgid "Safe Mode" -msgstr "Modalità SafeSearch" - #: ../../mod/common.php:10 msgid "No channel." msgstr "Nessun canale." -#: ../../mod/common.php:47 +#: ../../mod/common.php:39 msgid "Common connections" msgstr "Contatti in comune" -#: ../../mod/common.php:52 +#: ../../mod/common.php:44 msgid "No connections in common." msgstr "Nessun contatto in comune." -#: ../../mod/events.php:71 +#: ../../mod/events.php:72 msgid "Event title and start time are required." msgstr "Sono necessari il titolo e l'ora d'inizio dell'evento." -#: ../../mod/events.php:286 +#: ../../mod/events.php:287 msgid "l, F j" msgstr "l j F" -#: ../../mod/events.php:308 +#: ../../mod/events.php:309 msgid "Edit event" msgstr "Modifica l'evento" -#: ../../mod/events.php:354 +#: ../../mod/events.php:355 msgid "Create New Event" msgstr "Crea un nuovo evento" -#: ../../mod/events.php:355 +#: ../../mod/events.php:356 msgid "Previous" msgstr "Precendente" -#: ../../mod/events.php:356 ../../mod/setup.php:256 +#: ../../mod/events.php:357 ../../mod/setup.php:256 msgid "Next" msgstr "Successivo" -#: ../../mod/events.php:428 +#: ../../mod/events.php:429 msgid "hour:minute" msgstr "ora:minuti" -#: ../../mod/events.php:447 +#: ../../mod/events.php:448 msgid "Event details" msgstr "Dettagli evento" -#: ../../mod/events.php:448 +#: ../../mod/events.php:449 #, php-format msgid "Format is %s %s. Starting date and Title are required." msgstr "Il formato è %s %s. L'inizio e il titolo sono obbligatori." -#: ../../mod/events.php:450 +#: ../../mod/events.php:451 msgid "Event Starts:" msgstr "Inizio:" -#: ../../mod/events.php:450 ../../mod/events.php:464 +#: ../../mod/events.php:451 ../../mod/events.php:465 msgid "Required" msgstr "Obbligatorio" -#: ../../mod/events.php:453 +#: ../../mod/events.php:454 msgid "Finish date/time is not known or not relevant" msgstr "La data/ora di fine non è rilevante" -#: ../../mod/events.php:455 +#: ../../mod/events.php:456 msgid "Event Finishes:" msgstr "Fine:" -#: ../../mod/events.php:458 +#: ../../mod/events.php:459 msgid "Adjust for viewer timezone" msgstr "Adatta al fuso orario di chi legge" -#: ../../mod/events.php:460 +#: ../../mod/events.php:461 msgid "Description:" msgstr "Descrizione:" -#: ../../mod/events.php:464 +#: ../../mod/events.php:465 msgid "Title:" msgstr "Titolo:" -#: ../../mod/events.php:466 +#: ../../mod/events.php:467 msgid "Share this event" msgstr "Condividi questo evento" @@ -3146,7 +3229,7 @@ msgid "Enter email addresses, one per line:" msgstr "Inserisci gli indirizzi email, uno per riga:" #: ../../mod/invite.php:141 ../../mod/message.php:326 -#: ../../mod/message.php:508 +#: ../../mod/message.php:476 msgid "Your message:" msgstr "Il tuo messaggio:" @@ -3191,7 +3274,7 @@ msgstr "Amici di %s" msgid "No friends to display." msgstr "Nessun amico da visualizzare." -#: ../../mod/webpages.php:104 ../../mod/layouts.php:105 +#: ../../mod/webpages.php:121 ../../mod/layouts.php:105 #: ../../mod/blocks.php:96 msgid "View" msgstr "Guarda" @@ -3215,19 +3298,15 @@ msgid "" msgstr "Vuoi autorizzare questa app ad accedere ai messaggi e ai contatti o creare nuovi messaggi per te?" #: ../../mod/api.php:105 ../../mod/settings.php:967 ../../mod/settings.php:972 -#: ../../mod/profiles.php:506 +#: ../../mod/profiles.php:495 msgid "Yes" msgstr "Si" #: ../../mod/api.php:106 ../../mod/settings.php:967 ../../mod/settings.php:972 -#: ../../mod/profiles.php:507 +#: ../../mod/profiles.php:496 msgid "No" msgstr "No" -#: ../../mod/lastpost.php:16 ../../mod/channel.php:25 -msgid "You must be logged in to see this page." -msgstr "Devi aver effettuato l'accesso per vedere questa pagina." - #: ../../mod/apps.php:8 msgid "No installed applications." msgstr "Nessuna app installata." @@ -3705,7 +3784,7 @@ msgid "Cancel" msgstr "Annulla" #: ../../mod/settings.php:611 ../../mod/settings.php:637 -#: ../../mod/admin.php:686 ../../mod/crepair.php:148 +#: ../../mod/admin.php:689 msgid "Name" msgstr "Nome" @@ -3819,7 +3898,7 @@ msgstr "Funzionalità aggiuntive" msgid "Connector Settings" msgstr "Impostazioni del connettore" -#: ../../mod/settings.php:802 ../../mod/admin.php:369 +#: ../../mod/settings.php:802 ../../mod/admin.php:371 msgid "No special theme for mobile devices" msgstr "Nessun tema per dispositivi mobili" @@ -3887,7 +3966,7 @@ msgstr "Pubblica il mio profilo predefinito sull'elenco pubblico dei canali" msgid "Allow us to suggest you as a potential friend to new members?" msgstr "Vuoi essere suggerito come potenziale amico ai nuovi membri?" -#: ../../mod/settings.php:976 ../../mod/profile_photo.php:298 +#: ../../mod/settings.php:976 ../../mod/profile_photo.php:288 msgid "or" msgstr "o" @@ -3959,7 +4038,7 @@ msgstr "Serve e ridurre lo spam" msgid "Default Post Permissions" msgstr "Permessi predefiniti per gli articoli" -#: ../../mod/settings.php:1032 +#: ../../mod/settings.php:1032 ../../mod/mitem.php:137 ../../mod/mitem.php:180 msgid "(click to open/close)" msgstr "(clicca per aprire/chiudere)" @@ -4035,22 +4114,22 @@ msgstr "Impostazioni avanzate" msgid "Change the behaviour of this account for special situations" msgstr "Cambia il funzionamento di questo account in situazioni particolari" -#: ../../mod/viewconnections.php:28 ../../mod/search.php:80 +#: ../../mod/viewconnections.php:17 ../../mod/search.php:80 #: ../../mod/photos.php:576 ../../mod/display.php:9 ../../mod/community.php:18 -#: ../../mod/directory.php:32 +#: ../../mod/directory.php:33 msgid "Public access denied." msgstr "Accesso pubblico negato." -#: ../../mod/viewconnections.php:57 +#: ../../mod/viewconnections.php:43 msgid "No connections." msgstr "Nessun contatto." -#: ../../mod/viewconnections.php:69 +#: ../../mod/viewconnections.php:55 #, php-format msgid "Visit %s's profile [%s]" msgstr "Visita il profilo di %s [%s]" -#: ../../mod/viewconnections.php:84 +#: ../../mod/viewconnections.php:70 msgid "View Connnections" msgstr "Guarda i contatti" @@ -4207,23 +4286,23 @@ msgstr "Impossibile rimuovere la sorgente." msgid "Theme settings updated." msgstr "Le impostazioni del tema sono state aggiornate." -#: ../../mod/admin.php:87 ../../mod/admin.php:417 +#: ../../mod/admin.php:87 ../../mod/admin.php:419 msgid "Site" msgstr "Sito" -#: ../../mod/admin.php:88 ../../mod/admin.php:682 ../../mod/admin.php:694 +#: ../../mod/admin.php:88 ../../mod/admin.php:685 ../../mod/admin.php:697 msgid "Users" msgstr "Utenti" -#: ../../mod/admin.php:89 ../../mod/admin.php:780 ../../mod/admin.php:822 +#: ../../mod/admin.php:89 ../../mod/admin.php:783 ../../mod/admin.php:825 msgid "Plugins" msgstr "Plugin" -#: ../../mod/admin.php:90 ../../mod/admin.php:985 ../../mod/admin.php:1021 +#: ../../mod/admin.php:90 ../../mod/admin.php:988 ../../mod/admin.php:1024 msgid "Themes" msgstr "Temi" -#: ../../mod/admin.php:91 ../../mod/admin.php:475 +#: ../../mod/admin.php:91 ../../mod/admin.php:478 msgid "Server" msgstr "Server" @@ -4231,7 +4310,7 @@ msgstr "Server" msgid "DB updates" msgstr "Aggiornamenti al DB" -#: ../../mod/admin.php:106 ../../mod/admin.php:113 ../../mod/admin.php:1108 +#: ../../mod/admin.php:106 ../../mod/admin.php:113 ../../mod/admin.php:1111 msgid "Logs" msgstr "Log" @@ -4247,9 +4326,9 @@ msgstr "Registrazioni in attesa" msgid "Message queues" msgstr "Messaggi in attesa di recapito" -#: ../../mod/admin.php:193 ../../mod/admin.php:416 ../../mod/admin.php:474 -#: ../../mod/admin.php:681 ../../mod/admin.php:779 ../../mod/admin.php:821 -#: ../../mod/admin.php:984 ../../mod/admin.php:1020 ../../mod/admin.php:1107 +#: ../../mod/admin.php:193 ../../mod/admin.php:418 ../../mod/admin.php:477 +#: ../../mod/admin.php:684 ../../mod/admin.php:782 ../../mod/admin.php:824 +#: ../../mod/admin.php:987 ../../mod/admin.php:1023 ../../mod/admin.php:1110 msgid "Administration" msgstr "Amministrazione" @@ -4261,7 +4340,7 @@ msgstr "Riepilogo" msgid "Registered users" msgstr "Utenti registrati" -#: ../../mod/admin.php:198 ../../mod/admin.php:478 +#: ../../mod/admin.php:198 ../../mod/admin.php:481 msgid "Pending registrations" msgstr "Registrazioni da approvare" @@ -4269,567 +4348,581 @@ msgstr "Registrazioni da approvare" msgid "Version" msgstr "Versione" -#: ../../mod/admin.php:201 ../../mod/admin.php:479 +#: ../../mod/admin.php:201 ../../mod/admin.php:482 msgid "Active plugins" msgstr "Plugin attivi" -#: ../../mod/admin.php:340 +#: ../../mod/admin.php:342 msgid "Site settings updated." msgstr "Impostazioni del sito aggiornate." -#: ../../mod/admin.php:371 +#: ../../mod/admin.php:373 msgid "No special theme for accessibility" msgstr "Nessun tema speciale per l'accessibilità" -#: ../../mod/admin.php:396 +#: ../../mod/admin.php:398 msgid "Closed" msgstr "Chiusa" -#: ../../mod/admin.php:397 +#: ../../mod/admin.php:399 msgid "Requires approval" msgstr "Richiede l'approvazione" -#: ../../mod/admin.php:398 +#: ../../mod/admin.php:400 msgid "Open" msgstr "Aperta" -#: ../../mod/admin.php:403 +#: ../../mod/admin.php:405 msgid "Private" msgstr "Privato" -#: ../../mod/admin.php:404 +#: ../../mod/admin.php:406 msgid "Paid Access" msgstr "Servizio a pagamento" -#: ../../mod/admin.php:405 +#: ../../mod/admin.php:407 msgid "Free Access" msgstr "Servizio gratuito" -#: ../../mod/admin.php:406 +#: ../../mod/admin.php:408 msgid "Tiered Access" msgstr "Accesso multilivello" -#: ../../mod/admin.php:419 ../../mod/register.php:180 +#: ../../mod/admin.php:421 ../../mod/register.php:180 msgid "Registration" msgstr "Registrazione" -#: ../../mod/admin.php:420 +#: ../../mod/admin.php:422 msgid "File upload" msgstr "Caricamento file" -#: ../../mod/admin.php:421 +#: ../../mod/admin.php:423 msgid "Policies" msgstr "Politiche" -#: ../../mod/admin.php:422 +#: ../../mod/admin.php:424 msgid "Advanced" msgstr "Avanzate" -#: ../../mod/admin.php:426 +#: ../../mod/admin.php:428 msgid "Site name" msgstr "Nome del sito" -#: ../../mod/admin.php:427 +#: ../../mod/admin.php:429 msgid "Banner/Logo" msgstr "Banner o logo" -#: ../../mod/admin.php:428 +#: ../../mod/admin.php:430 msgid "System language" msgstr "Lingua di sistema" -#: ../../mod/admin.php:429 +#: ../../mod/admin.php:431 msgid "System theme" msgstr "Tema di sistema" -#: ../../mod/admin.php:429 +#: ../../mod/admin.php:431 msgid "" "Default system theme - may be over-ridden by user profiles - change theme settings" msgstr "Il tema di sistema può essere cambiato dai profili dei singoli utenti - Cambia le impostazioni del tema" -#: ../../mod/admin.php:430 +#: ../../mod/admin.php:432 msgid "Mobile system theme" msgstr "Tema di sistema per dispositivi mobili" -#: ../../mod/admin.php:430 +#: ../../mod/admin.php:432 msgid "Theme for mobile devices" msgstr "Tema per i dispositivi mobili" -#: ../../mod/admin.php:431 +#: ../../mod/admin.php:433 msgid "Accessibility system theme" msgstr "Tema di sistema ad alta accessibilità" -#: ../../mod/admin.php:431 +#: ../../mod/admin.php:433 msgid "Accessibility theme" msgstr "Tema ad alta accessibilità" -#: ../../mod/admin.php:432 +#: ../../mod/admin.php:434 msgid "Channel to use for this website's static pages" msgstr "Canale da usare per le pagine statiche di questo sito" -#: ../../mod/admin.php:432 +#: ../../mod/admin.php:434 msgid "Site Channel" msgstr "Canale del sito" -#: ../../mod/admin.php:434 +#: ../../mod/admin.php:436 msgid "Maximum image size" msgstr "Dimensione massima immagini" -#: ../../mod/admin.php:434 +#: ../../mod/admin.php:436 msgid "" "Maximum size in bytes of uploaded images. Default is 0, which means no " "limits." msgstr "Massima dimensione in byte delle immagini caricate. Il default è 0, cioè nessun limite." -#: ../../mod/admin.php:435 +#: ../../mod/admin.php:437 msgid "Register policy" msgstr "Politica di registrazione" -#: ../../mod/admin.php:436 +#: ../../mod/admin.php:438 msgid "Access policy" msgstr "Tipo di accesso" -#: ../../mod/admin.php:437 +#: ../../mod/admin.php:439 msgid "Register text" msgstr "Testo diregistrazione" -#: ../../mod/admin.php:437 +#: ../../mod/admin.php:439 msgid "Will be displayed prominently on the registration page." msgstr "Sarà mostrato ben visibile nella pagina di registrazione." -#: ../../mod/admin.php:438 +#: ../../mod/admin.php:440 msgid "Accounts abandoned after x days" msgstr "Account abbandonati dopo X giorni" -#: ../../mod/admin.php:438 +#: ../../mod/admin.php:440 msgid "" "Will not waste system resources polling external sites for abandonded " "accounts. Enter 0 for no time limit." msgstr "Eviterà di sprecare risorse di sistema controllando se i siti esterni hanno account abbandonati. Immettere 0 per non imporre nessun limite di tempo." -#: ../../mod/admin.php:439 +#: ../../mod/admin.php:441 msgid "Allowed friend domains" msgstr "Domini fidati e consentiti" -#: ../../mod/admin.php:439 +#: ../../mod/admin.php:441 msgid "" "Comma separated list of domains which are allowed to establish friendships " "with this site. Wildcards are accepted. Empty to allow any domains" msgstr "Elenco separato da virglola dei domini che possono stabilire amicizie con questo sito. Sono accettati caratteri jolly. Lascia vuoto per accettare connessioni da qualsiasi dominio." -#: ../../mod/admin.php:440 +#: ../../mod/admin.php:442 msgid "Allowed email domains" msgstr "Domini email consentiti" -#: ../../mod/admin.php:440 +#: ../../mod/admin.php:442 msgid "" "Comma separated list of domains which are allowed in email addresses for " "registrations to this site. Wildcards are accepted. Empty to allow any " "domains" msgstr "Elenco separato da virgola dei domini permessi come indirizzi email in fase di registrazione. Sono accettati caratteri jolly. Lascia vuoto per accettare qualsiasi dominio." -#: ../../mod/admin.php:441 +#: ../../mod/admin.php:443 msgid "Block public" msgstr "Blocca pagine pubbliche" -#: ../../mod/admin.php:441 +#: ../../mod/admin.php:443 msgid "" "Check to block public access to all otherwise public personal pages on this " "site unless you are currently logged in." msgstr "Seleziona per impedire di vedere le pagine personali di questo sito a chi non ha effettuato l'accesso." -#: ../../mod/admin.php:442 +#: ../../mod/admin.php:444 msgid "Force publish" msgstr "Forza la publicazione del profilo" -#: ../../mod/admin.php:442 +#: ../../mod/admin.php:444 msgid "" "Check to force all profiles on this site to be listed in the site directory." msgstr "Seleziona per mostrare nell'elenco dei canali del sito tutti i profili registrati." -#: ../../mod/admin.php:444 +#: ../../mod/admin.php:445 +msgid "No login on Homepage" +msgstr "Non mostrare il login sulla homepage" + +#: ../../mod/admin.php:445 +msgid "" +"Check to hide the login form from your sites homepage when visitors arrive " +"who are not logged in (e.g. when you put the content of the homepage in via " +"the site channel)." +msgstr "Per nascondere la possibilità di fare login ai visitatori (per esempio, quando il contenuto della homepage del sito è alimentato dal canale)." + +#: ../../mod/admin.php:447 msgid "Proxy user" msgstr "Utente proxy" -#: ../../mod/admin.php:445 +#: ../../mod/admin.php:448 msgid "Proxy URL" msgstr "URL proxy" -#: ../../mod/admin.php:446 +#: ../../mod/admin.php:449 msgid "Network timeout" msgstr "Timeout rete" -#: ../../mod/admin.php:446 +#: ../../mod/admin.php:449 msgid "Value is in seconds. Set to 0 for unlimited (not recommended)." msgstr "Valore in secondi. Imposta a 0 per illimitato (sconsigliato)." -#: ../../mod/admin.php:447 +#: ../../mod/admin.php:450 msgid "Delivery interval" msgstr "Recapito ritardato" -#: ../../mod/admin.php:447 +#: ../../mod/admin.php:450 msgid "" "Delay background delivery processes by this many seconds to reduce system " "load. Recommend: 4-5 for shared hosts, 2-3 for virtual private servers. 0-1 " "for large dedicated servers." msgstr "RItarda il processo di recapito di questo numero di secondi per ridurre il carico di sistema. Consigliati: 4-5 secondi per hosting condiviso, 2-3 per i VPS, 0-1 per grandi server dedicati." -#: ../../mod/admin.php:448 +#: ../../mod/admin.php:451 msgid "Poll interval" msgstr "Intervallo di polling" -#: ../../mod/admin.php:448 +#: ../../mod/admin.php:451 msgid "" "Delay background polling processes by this many seconds to reduce system " "load. If 0, use delivery interval." msgstr "Ritarda i processi di polling in background di questo numero di secondi per ridurre il carico del sistema. Se 0, verrà usato lo stesso valore del 'Recapito ritardato'." -#: ../../mod/admin.php:449 +#: ../../mod/admin.php:452 msgid "Maximum Load Average" msgstr "Carico massimo medio" -#: ../../mod/admin.php:449 +#: ../../mod/admin.php:452 msgid "" "Maximum system load before delivery and poll processes are deferred - " "default 50." msgstr "Carico di sistema massimo perché i processi di recapito e polling siano ritardati - il valore predefinito è 50." -#: ../../mod/admin.php:466 +#: ../../mod/admin.php:469 msgid "No server found" msgstr "Server non trovato" -#: ../../mod/admin.php:473 ../../mod/admin.php:695 +#: ../../mod/admin.php:476 ../../mod/admin.php:698 msgid "ID" msgstr "ID" -#: ../../mod/admin.php:473 +#: ../../mod/admin.php:476 msgid "for channel" msgstr "per canale" -#: ../../mod/admin.php:473 +#: ../../mod/admin.php:476 msgid "on server" msgstr "sul server" -#: ../../mod/admin.php:473 +#: ../../mod/admin.php:476 msgid "Status" msgstr "Stato" -#: ../../mod/admin.php:493 +#: ../../mod/admin.php:496 msgid "Update has been marked successful" msgstr "L'aggiornamento è stato marcato come eseguito." -#: ../../mod/admin.php:503 +#: ../../mod/admin.php:506 #, php-format msgid "Executing %s failed. Check system logs." msgstr "Fallita l'esecuzione di %s. Maggiori informazioni sui log di sistema." -#: ../../mod/admin.php:506 +#: ../../mod/admin.php:509 #, php-format msgid "Update %s was successfully applied." msgstr "L'aggiornamento %s è terminato correttamente." -#: ../../mod/admin.php:510 +#: ../../mod/admin.php:513 #, php-format msgid "Update %s did not return a status. Unknown if it succeeded." msgstr "L'aggiornamento %s non ha dato risposta. Impossibile determinare se è terminato correttamente." -#: ../../mod/admin.php:513 +#: ../../mod/admin.php:516 #, php-format msgid "Update function %s could not be found." msgstr "Impossibile trovare la funzione di aggiornamento %s" -#: ../../mod/admin.php:528 +#: ../../mod/admin.php:531 msgid "No failed updates." msgstr "Nessun aggiornamento fallito." -#: ../../mod/admin.php:532 +#: ../../mod/admin.php:535 msgid "Failed Updates" msgstr "Aggiornamenti falliti." -#: ../../mod/admin.php:534 +#: ../../mod/admin.php:537 msgid "Mark success (if update was manually applied)" msgstr "Marca come eseguito (se applicato manualmente)." -#: ../../mod/admin.php:535 +#: ../../mod/admin.php:538 msgid "Attempt to execute this update step automatically" msgstr "Tenta di eseguire in automatico questo passaggio dell'aggiornamento." -#: ../../mod/admin.php:561 +#: ../../mod/admin.php:564 #, php-format msgid "%s user blocked/unblocked" msgid_plural "%s users blocked/unblocked" msgstr[0] "%s utente bloccato/sbloccato" msgstr[1] "%s utenti bloccati/sbloccati" -#: ../../mod/admin.php:568 +#: ../../mod/admin.php:571 #, php-format msgid "%s user deleted" msgid_plural "%s users deleted" msgstr[0] "%s utente cancellato" msgstr[1] "%s utenti cancellati" -#: ../../mod/admin.php:599 +#: ../../mod/admin.php:602 msgid "Account not found" msgstr "Account non trovato" -#: ../../mod/admin.php:610 +#: ../../mod/admin.php:613 #, php-format msgid "User '%s' deleted" msgstr "Utente '%s' eliminato" -#: ../../mod/admin.php:619 +#: ../../mod/admin.php:622 #, php-format msgid "User '%s' unblocked" msgstr "Utente '%s' sbloccato" -#: ../../mod/admin.php:619 +#: ../../mod/admin.php:622 #, php-format msgid "User '%s' blocked" msgstr "Utente '%s' bloccato" -#: ../../mod/admin.php:684 +#: ../../mod/admin.php:687 msgid "select all" msgstr "seleziona tutti" -#: ../../mod/admin.php:685 +#: ../../mod/admin.php:688 msgid "User registrations waiting for confirm" msgstr "Richieste di registrazione in attesa di conferma" -#: ../../mod/admin.php:686 +#: ../../mod/admin.php:689 msgid "Request date" msgstr "Data richiesta" -#: ../../mod/admin.php:687 +#: ../../mod/admin.php:690 msgid "No registrations." msgstr "Nessuna registrazione." -#: ../../mod/admin.php:688 ../../mod/intro.php:11 ../../mod/intro.php:98 -#: ../../mod/notifications.php:159 ../../mod/notifications.php:206 +#: ../../mod/admin.php:691 msgid "Approve" msgstr "Approva" -#: ../../mod/admin.php:689 +#: ../../mod/admin.php:692 msgid "Deny" msgstr "Nega" -#: ../../mod/admin.php:691 ../../mod/intro.php:14 ../../mod/intro.php:99 -#: ../../mod/connections.php:348 ../../mod/connections.php:490 +#: ../../mod/admin.php:694 ../../mod/connections.php:352 +#: ../../mod/connections.php:494 msgid "Block" msgstr "Blocca" -#: ../../mod/admin.php:692 ../../mod/connections.php:348 -#: ../../mod/connections.php:490 +#: ../../mod/admin.php:695 ../../mod/connections.php:352 +#: ../../mod/connections.php:494 msgid "Unblock" msgstr "Sblocca" -#: ../../mod/admin.php:695 +#: ../../mod/admin.php:698 msgid "Register date" msgstr "Data registrazione" -#: ../../mod/admin.php:695 +#: ../../mod/admin.php:698 msgid "Last login" msgstr "Ultimo accesso" -#: ../../mod/admin.php:695 +#: ../../mod/admin.php:698 msgid "Expires" msgstr "Scadenza" -#: ../../mod/admin.php:695 +#: ../../mod/admin.php:698 msgid "Service Class" msgstr "Service Class" -#: ../../mod/admin.php:697 +#: ../../mod/admin.php:700 msgid "" "Selected users will be deleted!\\n\\nEverything these users had posted on " "this site will be permanently deleted!\\n\\nAre you sure?" msgstr "Gli utenti selezionati saranno eliminati!\\n\\nTutto quello che gli utenti hanno pubblicato su questo sito sarà permanentemente eliminato!\\n\\nConfermi?" -#: ../../mod/admin.php:698 +#: ../../mod/admin.php:701 msgid "" "The user {0} will be deleted!\\n\\nEverything this user has posted on this " "site will be permanently deleted!\\n\\nAre you sure?" msgstr "L'utente {0} sarà eliminato!\\n\\nTutto quello che ha pubblicato su questo sito sarà permanentemente eliminato!\\n\\nConfermi?" -#: ../../mod/admin.php:739 +#: ../../mod/admin.php:742 #, php-format msgid "Plugin %s disabled." msgstr "Plugin %s non attivo." -#: ../../mod/admin.php:743 +#: ../../mod/admin.php:746 #, php-format msgid "Plugin %s enabled." msgstr "Plugin %s attivo." -#: ../../mod/admin.php:753 ../../mod/admin.php:955 +#: ../../mod/admin.php:756 ../../mod/admin.php:958 msgid "Disable" msgstr "Disattiva" -#: ../../mod/admin.php:755 ../../mod/admin.php:957 +#: ../../mod/admin.php:758 ../../mod/admin.php:960 msgid "Enable" msgstr "Attiva" -#: ../../mod/admin.php:781 ../../mod/admin.php:986 +#: ../../mod/admin.php:784 ../../mod/admin.php:989 msgid "Toggle" msgstr "Attiva/disattiva" -#: ../../mod/admin.php:789 ../../mod/admin.php:996 +#: ../../mod/admin.php:792 ../../mod/admin.php:999 msgid "Author: " msgstr "Autore:" -#: ../../mod/admin.php:790 ../../mod/admin.php:997 +#: ../../mod/admin.php:793 ../../mod/admin.php:1000 msgid "Maintainer: " msgstr "Gestore:" -#: ../../mod/admin.php:919 +#: ../../mod/admin.php:922 msgid "No themes found." msgstr "Nessun tema trovato." -#: ../../mod/admin.php:978 +#: ../../mod/admin.php:981 msgid "Screenshot" msgstr "Istantanea dello schermo" -#: ../../mod/admin.php:1026 +#: ../../mod/admin.php:1029 msgid "[Experimental]" msgstr "[Sperimentale]" -#: ../../mod/admin.php:1027 +#: ../../mod/admin.php:1030 msgid "[Unsupported]" msgstr "[Non supportato]" -#: ../../mod/admin.php:1054 +#: ../../mod/admin.php:1057 msgid "Log settings updated." msgstr "Impostazioni di log aggiornate." -#: ../../mod/admin.php:1110 +#: ../../mod/admin.php:1113 msgid "Clear" msgstr "Pulisci" -#: ../../mod/admin.php:1116 +#: ../../mod/admin.php:1119 msgid "Debugging" msgstr "Debugging" -#: ../../mod/admin.php:1117 +#: ../../mod/admin.php:1120 msgid "Log file" msgstr "File di log" -#: ../../mod/admin.php:1117 +#: ../../mod/admin.php:1120 msgid "" "Must be writable by web server. Relative to your Red top-level directory." msgstr "Deve essere scrivibile dal web server. È relativa alla cartella dove è installato Red." -#: ../../mod/admin.php:1118 +#: ../../mod/admin.php:1121 msgid "Log level" msgstr "Livello di log" -#: ../../mod/mitem.php:13 ../../mod/menu.php:87 +#: ../../mod/mitem.php:14 ../../mod/menu.php:87 msgid "Menu not found." msgstr "Menù non trovato." -#: ../../mod/mitem.php:66 +#: ../../mod/mitem.php:47 msgid "Menu element updated." msgstr "L'elemento del menù è stato aggiornato." -#: ../../mod/mitem.php:70 +#: ../../mod/mitem.php:51 msgid "Unable to update menu element." msgstr "Non è possibile aggiornare l'elemento del menù." -#: ../../mod/mitem.php:76 +#: ../../mod/mitem.php:57 msgid "Menu element added." msgstr "Elemento aggiunto al menù." -#: ../../mod/mitem.php:80 +#: ../../mod/mitem.php:61 msgid "Unable to add menu element." msgstr "Impossibile aggiungere l'elemento al menù." -#: ../../mod/mitem.php:97 ../../mod/xchan.php:25 ../../mod/menu.php:113 +#: ../../mod/mitem.php:78 ../../mod/xchan.php:25 ../../mod/menu.php:113 msgid "Not found." msgstr "Non trovato." -#: ../../mod/mitem.php:116 +#: ../../mod/mitem.php:99 msgid "Manage Menu Elements" msgstr "Gestione elementi del menù" -#: ../../mod/mitem.php:119 +#: ../../mod/mitem.php:102 msgid "Edit menu" msgstr "Modifica il menù" -#: ../../mod/mitem.php:122 +#: ../../mod/mitem.php:105 msgid "Edit element" msgstr "Modifica l'elemento" -#: ../../mod/mitem.php:123 +#: ../../mod/mitem.php:106 msgid "Drop element" msgstr "Elimina l'elemento" -#: ../../mod/mitem.php:124 +#: ../../mod/mitem.php:107 msgid "New element" msgstr "Nuovo elemento" -#: ../../mod/mitem.php:125 +#: ../../mod/mitem.php:108 msgid "Edit this menu container" msgstr "Modifica il contenitore del menù" -#: ../../mod/mitem.php:126 +#: ../../mod/mitem.php:109 msgid "Add menu element" msgstr "Aggiungi un elemento al menù" -#: ../../mod/mitem.php:127 +#: ../../mod/mitem.php:110 msgid "Delete this menu item" msgstr "Elimina questo elemento del menù" -#: ../../mod/mitem.php:128 +#: ../../mod/mitem.php:111 msgid "Edit this menu item" msgstr "Modifica questo elemento del menù" -#: ../../mod/mitem.php:141 +#: ../../mod/mitem.php:134 msgid "New Menu Element" msgstr "Nuovo elemento del menù" -#: ../../mod/mitem.php:143 ../../mod/mitem.php:184 +#: ../../mod/mitem.php:136 ../../mod/mitem.php:179 +msgid "Menu Item Permissions" +msgstr "Permessi del menu" + +#: ../../mod/mitem.php:139 ../../mod/mitem.php:183 msgid "Link text" msgstr "Testo del link" -#: ../../mod/mitem.php:144 ../../mod/mitem.php:185 +#: ../../mod/mitem.php:140 ../../mod/mitem.php:184 msgid "URL of link" msgstr "Indirizzo del link" -#: ../../mod/mitem.php:145 ../../mod/mitem.php:186 +#: ../../mod/mitem.php:141 ../../mod/mitem.php:185 msgid "Use Red magic-auth if available" msgstr "Usa l'autenticazione magica di Red, se disponibile" -#: ../../mod/mitem.php:146 ../../mod/mitem.php:187 +#: ../../mod/mitem.php:142 ../../mod/mitem.php:186 msgid "Open link in new window" msgstr "Apri il link in una nuova finestra" -#: ../../mod/mitem.php:148 ../../mod/mitem.php:189 +#: ../../mod/mitem.php:144 ../../mod/mitem.php:188 msgid "Order in list" msgstr "Ordine dell'elenco" -#: ../../mod/mitem.php:148 ../../mod/mitem.php:189 +#: ../../mod/mitem.php:144 ../../mod/mitem.php:188 msgid "Higher numbers will sink to bottom of listing" msgstr "I numeri più alti andranno in fondo all'elenco" -#: ../../mod/mitem.php:149 ../../mod/menu.php:79 ../../mod/new_channel.php:117 +#: ../../mod/mitem.php:145 ../../mod/menu.php:79 ../../mod/new_channel.php:117 msgid "Create" msgstr "Crea" -#: ../../mod/mitem.php:161 +#: ../../mod/mitem.php:157 msgid "Menu item not found." msgstr "L'elemento del menù non è stato trovato." -#: ../../mod/mitem.php:170 +#: ../../mod/mitem.php:166 msgid "Menu item deleted." msgstr "L'elemento del menù è stato eliminato." -#: ../../mod/mitem.php:172 +#: ../../mod/mitem.php:168 msgid "Menu item could not be deleted." msgstr "L'elemento del menù non può essere eliminato." -#: ../../mod/mitem.php:181 +#: ../../mod/mitem.php:177 msgid "Edit Menu Element" msgstr "Modifica l'elemento del menù" -#: ../../mod/mitem.php:190 ../../mod/menu.php:107 +#: ../../mod/mitem.php:189 ../../mod/menu.php:107 msgid "Modify" msgstr "Modifica" @@ -4881,10 +4974,6 @@ msgstr "Tutti i canali connessi" msgid "Click on a channel to add or remove." msgstr "Clicca su un canale per aggiungerlo o rimuoverlo." -#: ../../mod/search.php:20 ../../mod/network.php:113 -msgid "Remove term" -msgstr "Rimuovi termine" - #: ../../mod/photos.php:83 msgid "Page owner information could not be retrieved." msgstr "Impossibile ottenere informazioni sul proprietario della pagina." @@ -5139,7 +5228,7 @@ msgstr "Impossibile verificare il canale richiesto." msgid "Selected channel has private message restrictions. Send failed." msgstr "Il canale ha delle regole restrittive per la ricezione dei messaggi privati. Invio fallito." -#: ../../mod/message.php:223 ../../mod/notifications.php:101 +#: ../../mod/message.php:223 msgid "Messages" msgstr "Messaggi" @@ -5159,11 +5248,11 @@ msgstr "Messaggio revocato." msgid "Send Private Message" msgstr "Invia un messaggio privato" -#: ../../mod/message.php:317 ../../mod/message.php:503 +#: ../../mod/message.php:317 ../../mod/message.php:471 msgid "To:" msgstr "A:" -#: ../../mod/message.php:322 ../../mod/message.php:505 +#: ../../mod/message.php:322 ../../mod/message.php:473 msgid "Subject:" msgstr "Oggetto:" @@ -5171,7 +5260,7 @@ msgstr "Oggetto:" msgid "No messages." msgstr "Nessun messaggio." -#: ../../mod/message.php:375 ../../mod/message.php:472 +#: ../../mod/message.php:375 ../../mod/message.php:440 msgid "Delete message" msgstr "Elimina il messaggio" @@ -5183,36 +5272,32 @@ msgstr "D d M Y - G:i" msgid "Message not found." msgstr "Messaggio non trovato." -#: ../../mod/message.php:473 +#: ../../mod/message.php:441 msgid "Recall message" msgstr "Revoca il messaggio" -#: ../../mod/message.php:475 +#: ../../mod/message.php:443 msgid "Message has been recalled." msgstr "Il messaggio è stato revocato." -#: ../../mod/message.php:492 +#: ../../mod/message.php:460 msgid "Private Conversation" msgstr "Conversazione privata" -#: ../../mod/message.php:496 +#: ../../mod/message.php:464 msgid "Delete conversation" msgstr "Elimina la conversazione" -#: ../../mod/message.php:498 +#: ../../mod/message.php:466 msgid "" "No secure communications available. You may be able to " "respond from the sender's profile page." msgstr "Non è disponibile alcun sistema per comunicare in modo sicuro. Puoi verificare se eventualmente è possibile rispondere dalla pagina del profilo del mittente." -#: ../../mod/message.php:502 +#: ../../mod/message.php:470 msgid "Send Reply" msgstr "Invia la risposta" -#: ../../mod/hcard.php:10 -msgid "No profile" -msgstr "Nessun profilo" - #: ../../mod/layouts.php:52 msgid "Layout Help" msgstr "Guida al layout" @@ -5245,101 +5330,30 @@ msgstr "Inserisci l'indirizzo del tuo canale (ad esempio lucia@esempio.com)" msgid "Authenticate" msgstr "Autenticazione" -#: ../../mod/network.php:172 +#: ../../mod/network.php:79 msgid "No such group" msgstr "Impossibile trovare l'insieme" -#: ../../mod/network.php:212 -msgid "Refresh" -msgstr "Aggiorna" - -#: ../../mod/network.php:213 ../../mod/connections.php:404 -msgid "Me" -msgstr "Io" - -#: ../../mod/network.php:214 ../../mod/connections.php:406 -msgid "Best Friends" -msgstr "Buoni amici" - -#: ../../mod/network.php:216 -msgid "Co-workers" -msgstr "Colleghi" - -#: ../../mod/network.php:217 ../../mod/connections.php:408 -msgid "Former Friends" -msgstr "Ex amici" - -#: ../../mod/network.php:218 ../../mod/connections.php:409 -msgid "Acquaintances" -msgstr "Conoscenti" - -#: ../../mod/network.php:219 -msgid "Everybody" -msgstr "Tutti" - -#: ../../mod/network.php:234 +#: ../../mod/network.php:118 msgid "Search Results For:" msgstr "Cerca risultati con:" -#: ../../mod/network.php:296 +#: ../../mod/network.php:172 +msgid "Collection is empty" +msgstr "L'insieme di canali è vuoto" + +#: ../../mod/network.php:180 msgid "Collection: " msgstr "Insieme:" -#: ../../mod/network.php:309 +#: ../../mod/network.php:193 msgid "Connection: " msgstr "Connessione:" -#: ../../mod/network.php:312 +#: ../../mod/network.php:196 msgid "Invalid connection." msgstr "Connessione non valida." -#: ../../mod/intro.php:17 ../../mod/intro.php:100 -#: ../../mod/connections.php:355 ../../mod/connections.php:491 -#: ../../mod/notifications.php:51 ../../mod/notifications.php:162 -#: ../../mod/notifications.php:208 -msgid "Ignore" -msgstr "Ignora" - -#: ../../mod/intro.php:29 ../../mod/connections.php:122 -msgid "Connection updated." -msgstr "Contatto aggiornato." - -#: ../../mod/intro.php:31 -msgid "Connection update failed." -msgstr "Impossibile aggiornare il contatto." - -#: ../../mod/intro.php:56 -msgid "Introductions and Connection Requests" -msgstr "Richieste di entrare in contatto" - -#: ../../mod/intro.php:67 -msgid "No pending introductions." -msgstr "Nessuna richiesta in attesa." - -#: ../../mod/intro.php:72 -msgid "System error. Please try again later." -msgstr "Errore di sistema. Riprovare più tardi." - -#: ../../mod/intro.php:95 ../../mod/connections.php:496 -#: ../../mod/notifications.php:155 ../../mod/notifications.php:202 -msgid "Hide this contact from others" -msgstr "Nascondi questo contatto agli altri" - -#: ../../mod/intro.php:96 ../../mod/notifications.php:156 -#: ../../mod/notifications.php:203 -msgid "Post a new friend activity" -msgstr "Pubblica sulla bacheca che hai un nuovo contatto" - -#: ../../mod/intro.php:96 ../../mod/notifications.php:156 -#: ../../mod/notifications.php:203 -msgid "if applicable" -msgstr "se possibile" - -#: ../../mod/intro.php:101 ../../mod/notifications.php:35 -#: ../../mod/notifications.php:163 ../../mod/notifications.php:209 -msgid "Discard" -msgstr "Rifiuta" - #: ../../mod/post.php:222 msgid "" "Remote authentication blocked. You are logged into this site locally. Please" @@ -5368,7 +5382,7 @@ msgid "Hub not found." msgstr "Server non trovato." #: ../../mod/profiles.php:18 ../../mod/profiles.php:138 -#: ../../mod/profiles.php:179 ../../mod/profiles.php:486 +#: ../../mod/profiles.php:168 ../../mod/profiles.php:475 msgid "Profile not found." msgstr "Profilo non trovato." @@ -5388,226 +5402,226 @@ msgstr "Il nuovo profilo è stato creato." msgid "Profile unavailable to clone." msgstr "Impossibile duplicare il profilo." -#: ../../mod/profiles.php:189 +#: ../../mod/profiles.php:178 msgid "Profile Name is required." msgstr "Il nome del profilo è obbligatorio ." -#: ../../mod/profiles.php:317 +#: ../../mod/profiles.php:306 msgid "Marital Status" msgstr "Stato sentimentale" -#: ../../mod/profiles.php:321 +#: ../../mod/profiles.php:310 msgid "Romantic Partner" msgstr "Partner affettivo" -#: ../../mod/profiles.php:325 +#: ../../mod/profiles.php:314 msgid "Likes" msgstr "Cosa gli piace" -#: ../../mod/profiles.php:329 +#: ../../mod/profiles.php:318 msgid "Dislikes" msgstr "Cosa non gli piace" -#: ../../mod/profiles.php:333 +#: ../../mod/profiles.php:322 msgid "Work/Employment" msgstr "Lavoro/impiego" -#: ../../mod/profiles.php:336 +#: ../../mod/profiles.php:325 msgid "Religion" msgstr "Religione" -#: ../../mod/profiles.php:340 +#: ../../mod/profiles.php:329 msgid "Political Views" msgstr "Orientamento politico" -#: ../../mod/profiles.php:344 +#: ../../mod/profiles.php:333 msgid "Gender" msgstr "Sesso" -#: ../../mod/profiles.php:348 +#: ../../mod/profiles.php:337 msgid "Sexual Preference" msgstr "Preferenze sessuali" -#: ../../mod/profiles.php:352 +#: ../../mod/profiles.php:341 msgid "Homepage" msgstr "Home page" -#: ../../mod/profiles.php:356 +#: ../../mod/profiles.php:345 msgid "Interests" msgstr "Interessi" -#: ../../mod/profiles.php:360 +#: ../../mod/profiles.php:349 msgid "Address" msgstr "Indirizzo" -#: ../../mod/profiles.php:367 ../../mod/pubsites.php:31 +#: ../../mod/profiles.php:356 ../../mod/pubsites.php:31 msgid "Location" msgstr "Luogo attuale" -#: ../../mod/profiles.php:450 +#: ../../mod/profiles.php:439 msgid "Profile updated." msgstr "Profilo aggiornato." -#: ../../mod/profiles.php:505 +#: ../../mod/profiles.php:494 msgid "Hide your contact/friend list from viewers of this profile?" msgstr "Nascondi la tua lista di contatti/amici ai visitatori di questo profilo?" -#: ../../mod/profiles.php:528 +#: ../../mod/profiles.php:517 msgid "Edit Profile Details" msgstr "Modifica i dettagli del profilo" -#: ../../mod/profiles.php:530 +#: ../../mod/profiles.php:519 msgid "View this profile" msgstr "Guarda questo profilo" -#: ../../mod/profiles.php:531 +#: ../../mod/profiles.php:520 msgid "Change Profile Photo" msgstr "Cambia la foto del profilo" -#: ../../mod/profiles.php:532 +#: ../../mod/profiles.php:521 msgid "Create a new profile using these settings" msgstr "Crea un nuovo profilo usando queste impostazioni" -#: ../../mod/profiles.php:533 +#: ../../mod/profiles.php:522 msgid "Clone this profile" msgstr "Clona questo profilo" -#: ../../mod/profiles.php:534 +#: ../../mod/profiles.php:523 msgid "Delete this profile" msgstr "Elimina questo profilo" -#: ../../mod/profiles.php:535 +#: ../../mod/profiles.php:524 msgid "Profile Name:" msgstr "Nome del profilo:" -#: ../../mod/profiles.php:536 +#: ../../mod/profiles.php:525 msgid "Your Full Name:" msgstr "Il tuo nome completo:" -#: ../../mod/profiles.php:537 +#: ../../mod/profiles.php:526 msgid "Title/Description:" msgstr "Titolo/descrizione:" -#: ../../mod/profiles.php:538 +#: ../../mod/profiles.php:527 msgid "Your Gender:" msgstr "Sesso:" -#: ../../mod/profiles.php:539 +#: ../../mod/profiles.php:528 #, php-format msgid "Birthday (%s):" msgstr "Compleanno (%s):" -#: ../../mod/profiles.php:540 +#: ../../mod/profiles.php:529 msgid "Street Address:" msgstr "Indirizzo (via/piazza):" -#: ../../mod/profiles.php:541 +#: ../../mod/profiles.php:530 msgid "Locality/City:" msgstr "Località:" -#: ../../mod/profiles.php:542 +#: ../../mod/profiles.php:531 msgid "Postal/Zip Code:" msgstr "CAP:" -#: ../../mod/profiles.php:543 +#: ../../mod/profiles.php:532 msgid "Country:" msgstr "Nazione:" -#: ../../mod/profiles.php:544 +#: ../../mod/profiles.php:533 msgid "Region/State:" msgstr "Regione/stato:" -#: ../../mod/profiles.php:545 +#: ../../mod/profiles.php:534 msgid " Marital Status:" msgstr " Stato sentimentale:" -#: ../../mod/profiles.php:546 +#: ../../mod/profiles.php:535 msgid "Who: (if applicable)" msgstr "Con chi: (se possibile)" -#: ../../mod/profiles.php:547 +#: ../../mod/profiles.php:536 msgid "Examples: cathy123, Cathy Williams, cathy@example.com" msgstr "Per esempio: cathy123, Cathy Williams, cathy@example.com" -#: ../../mod/profiles.php:548 +#: ../../mod/profiles.php:537 msgid "Since [date]:" msgstr "dal [data]:" -#: ../../mod/profiles.php:550 +#: ../../mod/profiles.php:539 msgid "Homepage URL:" msgstr "Indirizzo home page:" -#: ../../mod/profiles.php:553 +#: ../../mod/profiles.php:542 msgid "Religious Views:" msgstr "Orientamento religioso:" -#: ../../mod/profiles.php:554 +#: ../../mod/profiles.php:543 msgid "Keywords:" msgstr "Parole chiave, tag:" -#: ../../mod/profiles.php:557 +#: ../../mod/profiles.php:546 msgid "Example: fishing photography software" msgstr "Per esempio: pesca fotografia programmazione" -#: ../../mod/profiles.php:558 +#: ../../mod/profiles.php:547 msgid "Used in directory listings" msgstr "Visibile nell'elenco pubblico di canali" -#: ../../mod/profiles.php:559 +#: ../../mod/profiles.php:548 msgid "Tell us about yourself..." msgstr "Raccontaci di te..." -#: ../../mod/profiles.php:560 +#: ../../mod/profiles.php:549 msgid "Hobbies/Interests" msgstr "Hobby/interessi" -#: ../../mod/profiles.php:561 +#: ../../mod/profiles.php:550 msgid "Contact information and Social Networks" msgstr "Contatti personali e i tuoi social network" -#: ../../mod/profiles.php:562 +#: ../../mod/profiles.php:551 msgid "My other channels" msgstr "I miei altri canali" -#: ../../mod/profiles.php:563 +#: ../../mod/profiles.php:552 msgid "Musical interests" msgstr "Interessi musicali" -#: ../../mod/profiles.php:564 +#: ../../mod/profiles.php:553 msgid "Books, literature" msgstr "Libri, letteratura" -#: ../../mod/profiles.php:565 +#: ../../mod/profiles.php:554 msgid "Television" msgstr "Televisione" -#: ../../mod/profiles.php:566 +#: ../../mod/profiles.php:555 msgid "Film/dance/culture/entertainment" msgstr "Film/danza/cultura/intrattenimento" -#: ../../mod/profiles.php:567 +#: ../../mod/profiles.php:556 msgid "Love/romance" msgstr "Amore" -#: ../../mod/profiles.php:568 +#: ../../mod/profiles.php:557 msgid "Work/employment" msgstr "Lavoro/impiego" -#: ../../mod/profiles.php:569 +#: ../../mod/profiles.php:558 msgid "School/education" msgstr "Scuola/educazione" -#: ../../mod/profiles.php:574 +#: ../../mod/profiles.php:563 msgid "" "This is your public profile.
    It may " "be visible to anybody using the internet." msgstr "Questo è il tuo profilo publico.
    Potrebbe essere visto da chiunque attraverso internet." -#: ../../mod/profiles.php:584 ../../mod/directory.php:160 +#: ../../mod/profiles.php:573 ../../mod/directory.php:161 msgid "Age: " msgstr "Età:" -#: ../../mod/profiles.php:623 +#: ../../mod/profiles.php:612 msgid "Edit/Manage Profiles" msgstr "Modifica/gestisci i profili" @@ -5641,385 +5655,394 @@ msgstr "Il nome breve sarà usato per creare un indirizzo facile da ricordare pe msgid "Or import an existing channel from another location" msgstr "Oppure importa un tuo canale esistente da un altro server/hub" -#: ../../mod/connections.php:67 +#: ../../mod/connections.php:71 msgid "Could not access contact record." msgstr "Non è possibile accedere alle informazioni sul contatto." -#: ../../mod/connections.php:81 +#: ../../mod/connections.php:85 msgid "Could not locate selected profile." msgstr "Non riesco a trovare il profilo selezionato." -#: ../../mod/connections.php:124 +#: ../../mod/connections.php:126 +msgid "Connection updated." +msgstr "Contatto aggiornato." + +#: ../../mod/connections.php:128 msgid "Failed to update connection record." msgstr "Impossibile aggiornare le informazioni del contatto." -#: ../../mod/connections.php:219 +#: ../../mod/connections.php:223 msgid "Could not access address book record." msgstr "Impossibile accedere alle informazioni della rubrica." -#: ../../mod/connections.php:233 +#: ../../mod/connections.php:237 msgid "Refresh failed - channel is currently unavailable." msgstr "Il canale non è disponibile - impossibile aggiornare." -#: ../../mod/connections.php:240 +#: ../../mod/connections.php:244 msgid "Channel has been unblocked" msgstr "Il canale è stato sbloccato" -#: ../../mod/connections.php:241 +#: ../../mod/connections.php:245 msgid "Channel has been blocked" msgstr "Il canale è stato bloccato" -#: ../../mod/connections.php:245 ../../mod/connections.php:257 -#: ../../mod/connections.php:269 ../../mod/connections.php:281 -#: ../../mod/connections.php:296 +#: ../../mod/connections.php:249 ../../mod/connections.php:261 +#: ../../mod/connections.php:273 ../../mod/connections.php:285 +#: ../../mod/connections.php:300 msgid "Unable to set address book parameters." msgstr "Impossibile impostare i parametri della rubrica." -#: ../../mod/connections.php:252 +#: ../../mod/connections.php:256 msgid "Channel has been unignored" msgstr "Il canale non sarà più ignorato" -#: ../../mod/connections.php:253 +#: ../../mod/connections.php:257 msgid "Channel has been ignored" msgstr "Il canale sarà ignorato" -#: ../../mod/connections.php:264 +#: ../../mod/connections.php:268 msgid "Channel has been unarchived" msgstr "Il canale non è più archiviato" -#: ../../mod/connections.php:265 +#: ../../mod/connections.php:269 msgid "Channel has been archived" msgstr "Il canale è stato archiviato" -#: ../../mod/connections.php:276 +#: ../../mod/connections.php:280 msgid "Channel has been unhidden" msgstr "Il canale non è più nascosto" -#: ../../mod/connections.php:277 +#: ../../mod/connections.php:281 msgid "Channel has been hidden" msgstr "Il canale è stato nascosto" -#: ../../mod/connections.php:291 +#: ../../mod/connections.php:295 msgid "Channel has been approved" msgstr "Il canale è stato approvato" -#: ../../mod/connections.php:292 +#: ../../mod/connections.php:296 msgid "Channel has been unapproved" msgstr "Il canale non è più approvato" -#: ../../mod/connections.php:310 +#: ../../mod/connections.php:314 msgid "Contact has been removed." msgstr "Il contatto è stato rimosso." -#: ../../mod/connections.php:330 +#: ../../mod/connections.php:334 #, php-format msgid "View %s's profile" msgstr "Guarda il profilo di %s" -#: ../../mod/connections.php:334 +#: ../../mod/connections.php:338 msgid "Refresh Permissions" msgstr "Aggiorna i permessi" -#: ../../mod/connections.php:337 +#: ../../mod/connections.php:341 msgid "Fetch updated permissions" msgstr "Scarica i permessi aggiornati" -#: ../../mod/connections.php:341 +#: ../../mod/connections.php:345 msgid "Recent Activity" msgstr "Attività recenti" -#: ../../mod/connections.php:344 +#: ../../mod/connections.php:348 msgid "View recent posts and comments" msgstr "Leggi i post recenti e i commenti" -#: ../../mod/connections.php:351 +#: ../../mod/connections.php:355 msgid "Block or Unblock this connection" msgstr "Per bloccare o meno questo contatto" -#: ../../mod/connections.php:355 ../../mod/connections.php:491 +#: ../../mod/connections.php:359 ../../mod/connections.php:495 msgid "Unignore" msgstr "Non ignorare" -#: ../../mod/connections.php:358 +#: ../../mod/connections.php:359 ../../mod/connections.php:495 +#: ../../mod/notifications.php:51 +msgid "Ignore" +msgstr "Ignora" + +#: ../../mod/connections.php:362 msgid "Ignore or Unignore this connection" msgstr "Per ignorare o meno questo contatto" -#: ../../mod/connections.php:361 +#: ../../mod/connections.php:365 msgid "Unarchive" msgstr "Non archiviare" -#: ../../mod/connections.php:361 +#: ../../mod/connections.php:365 msgid "Archive" msgstr "Archivia" -#: ../../mod/connections.php:364 +#: ../../mod/connections.php:368 msgid "Archive or Unarchive this connection" msgstr "Per archiviare o meno questo contatto" -#: ../../mod/connections.php:367 +#: ../../mod/connections.php:371 msgid "Unhide" msgstr "Non nascondere" -#: ../../mod/connections.php:367 +#: ../../mod/connections.php:371 msgid "Hide" msgstr "Nascondi" -#: ../../mod/connections.php:370 +#: ../../mod/connections.php:374 msgid "Hide or Unhide this connection" msgstr "Per nascondere o meno questo contatto" -#: ../../mod/connections.php:377 +#: ../../mod/connections.php:381 msgid "Delete this connection" msgstr "Elimina questo contatto" -#: ../../mod/connections.php:410 +#: ../../mod/connections.php:414 msgid "Unknown" msgstr "Sconosciuto" -#: ../../mod/connections.php:420 ../../mod/connections.php:449 +#: ../../mod/connections.php:424 ../../mod/connections.php:453 msgid "Approve this connection" msgstr "Approva questo contatto" -#: ../../mod/connections.php:420 +#: ../../mod/connections.php:424 msgid "Accept connection to allow communication" msgstr "Entra in contatto per poter comunicare" -#: ../../mod/connections.php:436 +#: ../../mod/connections.php:440 msgid "Automatic Permissions Settings" msgstr "Permessi predefiniti" -#: ../../mod/connections.php:436 +#: ../../mod/connections.php:440 #, php-format msgid "Connections: settings for %s" msgstr "Contatti: impostazioni per %s" -#: ../../mod/connections.php:440 +#: ../../mod/connections.php:444 msgid "" "When receiving a channel introduction, any permissions provided here will be" " applied to the new connection automatically and the introduction approved. " "Leave this page if you do not wish to use this feature." msgstr "Hai ricevuto da un canale una richiesta di entrare in contatto, se prosegui la richiesta sarà approvata e saranno applicati i permessi mostrati. Lascia questa pagina se non vuoi proseguire." -#: ../../mod/connections.php:442 +#: ../../mod/connections.php:446 msgid "Slide to adjust your degree of friendship" msgstr "Trascina per restringere il grado di amicizia da mostrare" -#: ../../mod/connections.php:448 +#: ../../mod/connections.php:452 msgid "inherited" msgstr "derivato" -#: ../../mod/connections.php:450 +#: ../../mod/connections.php:454 msgid "Connection has no individual permissions!" msgstr "Non hai assegnato permessi individuali a questo contatto!" -#: ../../mod/connections.php:451 +#: ../../mod/connections.php:455 msgid "" "This may be appropriate based on your privacy " "settings, though you may wish to review the \"Advanced Permissions\"." msgstr "Questo corrisponde alle tue impostazioni di privacy, ma puoi anche dare un'occhiata ai 'Permessi avanzati' per opzioni più dettagliate." -#: ../../mod/connections.php:453 +#: ../../mod/connections.php:457 msgid "Profile Visibility" msgstr "Visibilità del profilo" -#: ../../mod/connections.php:454 +#: ../../mod/connections.php:458 #, php-format msgid "" "Please choose the profile you would like to display to %s when viewing your " "profile securely." msgstr "Seleziona il profilo che vuoi mostrare a %s quando visita il tuo profilo in modo sicuro." -#: ../../mod/connections.php:455 +#: ../../mod/connections.php:459 msgid "Contact Information / Notes" msgstr "Informazioni e annotazioni sul contatto" -#: ../../mod/connections.php:456 +#: ../../mod/connections.php:460 msgid "Edit contact notes" msgstr "Modifica le informazioni sul contatto" -#: ../../mod/connections.php:458 +#: ../../mod/connections.php:462 msgid "Their Settings" msgstr "Permessi concessi a te" -#: ../../mod/connections.php:459 +#: ../../mod/connections.php:463 msgid "My Settings" msgstr "I permessi che concedo" -#: ../../mod/connections.php:461 +#: ../../mod/connections.php:465 msgid "Forum Members" msgstr "Membro di un forum" -#: ../../mod/connections.php:462 +#: ../../mod/connections.php:466 msgid "Soapbox" msgstr "Comunicati e annunci" -#: ../../mod/connections.php:463 +#: ../../mod/connections.php:467 msgid "Full Sharing" msgstr "Condivisione totale" -#: ../../mod/connections.php:464 +#: ../../mod/connections.php:468 msgid "Cautious Sharing" msgstr "Condivisione prudente" -#: ../../mod/connections.php:465 +#: ../../mod/connections.php:469 msgid "Follow Only" msgstr "Follower" -#: ../../mod/connections.php:466 +#: ../../mod/connections.php:470 msgid "Individual Permissions" msgstr "Permessi individuali" -#: ../../mod/connections.php:467 +#: ../../mod/connections.php:471 msgid "" "Some permissions may be inherited from your channel privacy settings, which have higher priority. Changing" " those inherited settings on this page will have no effect." msgstr "Alcuni permessi derivano dalle impostazioni di privacy, che hanno una priorità maggiore. Cambiarli in questa pagina non avrà alcun effetto." -#: ../../mod/connections.php:468 +#: ../../mod/connections.php:472 msgid "Advanced Permissions" msgstr "Permessi avanzati" -#: ../../mod/connections.php:469 +#: ../../mod/connections.php:473 msgid "Quick Links" msgstr "Impostazioni veloci" -#: ../../mod/connections.php:473 +#: ../../mod/connections.php:477 #, php-format msgid "Visit %s's profile - %s" msgstr "Guarda il profilo di %s - %s" -#: ../../mod/connections.php:474 +#: ../../mod/connections.php:478 msgid "Block/Unblock contact" msgstr "Blocca/sblocca contatto" -#: ../../mod/connections.php:475 +#: ../../mod/connections.php:479 msgid "Ignore contact" msgstr "Ignora il contatto" -#: ../../mod/connections.php:476 +#: ../../mod/connections.php:480 msgid "Repair URL settings" msgstr "Ripara le impostazioni URL" -#: ../../mod/connections.php:477 +#: ../../mod/connections.php:481 msgid "View conversations" msgstr "Leggi le conversazioni" -#: ../../mod/connections.php:479 +#: ../../mod/connections.php:483 msgid "Delete contact" msgstr "Elimina contatto" -#: ../../mod/connections.php:482 +#: ../../mod/connections.php:486 msgid "Last update:" msgstr "Ultimo aggiornamento:" -#: ../../mod/connections.php:484 +#: ../../mod/connections.php:488 msgid "Update public posts" msgstr "Aggiorna gli articoli pubblici" -#: ../../mod/connections.php:486 +#: ../../mod/connections.php:490 msgid "Update now" msgstr "Aggiorna adesso" -#: ../../mod/connections.php:492 +#: ../../mod/connections.php:496 msgid "Currently blocked" msgstr "Attualmente bloccato" -#: ../../mod/connections.php:493 +#: ../../mod/connections.php:497 msgid "Currently ignored" msgstr "Attualmente ignorato" -#: ../../mod/connections.php:494 +#: ../../mod/connections.php:498 msgid "Currently archived" msgstr "Attualmente archiviato" -#: ../../mod/connections.php:495 +#: ../../mod/connections.php:499 msgid "Currently pending" msgstr "Attualmente da approvare" -#: ../../mod/connections.php:496 +#: ../../mod/connections.php:500 +msgid "Hide this contact from others" +msgstr "Nascondi questo contatto agli altri" + +#: ../../mod/connections.php:500 msgid "" "Replies/likes to your public posts may still be visible" msgstr "Le risposte ai tuoi articoli pubblici potrebbero restare comunque visibili" -#: ../../mod/connections.php:532 ../../mod/connections.php:604 +#: ../../mod/connections.php:536 ../../mod/connections.php:608 msgid "Blocked" msgstr "Bloccati" -#: ../../mod/connections.php:537 ../../mod/connections.php:611 +#: ../../mod/connections.php:541 ../../mod/connections.php:615 msgid "Ignored" msgstr "Ignorati" -#: ../../mod/connections.php:542 ../../mod/connections.php:625 +#: ../../mod/connections.php:546 ../../mod/connections.php:629 msgid "Hidden" msgstr "Nascosti" -#: ../../mod/connections.php:547 ../../mod/connections.php:618 +#: ../../mod/connections.php:551 ../../mod/connections.php:622 msgid "Archived" msgstr "Archiviati" -#: ../../mod/connections.php:558 +#: ../../mod/connections.php:562 msgid "All" msgstr "Tutti" -#: ../../mod/connections.php:579 -msgid "Suggestions" -msgstr "Suggerimenti" - -#: ../../mod/connections.php:582 +#: ../../mod/connections.php:586 msgid "Suggest new connections" msgstr "Suggerisci nuovi contatti" -#: ../../mod/connections.php:588 +#: ../../mod/connections.php:592 msgid "Show pending (new) connections" -msgstr "Richieste di entrare in contatto" +msgstr "Richieste di contatto in attesa" -#: ../../mod/connections.php:591 +#: ../../mod/connections.php:595 msgid "All Connections" msgstr "Tutti i contatti" -#: ../../mod/connections.php:594 +#: ../../mod/connections.php:598 msgid "Show all connections" msgstr "Mostra tutti i contatti" -#: ../../mod/connections.php:597 +#: ../../mod/connections.php:601 msgid "Unblocked" msgstr "Non bloccati" -#: ../../mod/connections.php:600 +#: ../../mod/connections.php:604 msgid "Only show unblocked connections" msgstr "Mostra solo i contatti non bloccati" -#: ../../mod/connections.php:607 +#: ../../mod/connections.php:611 msgid "Only show blocked connections" msgstr "Mostra solo i contatti bloccati" -#: ../../mod/connections.php:614 +#: ../../mod/connections.php:618 msgid "Only show ignored connections" msgstr "Mostra solo i contatti ignorati" -#: ../../mod/connections.php:621 +#: ../../mod/connections.php:625 msgid "Only show archived connections" msgstr "Mostra solo i contatti archiviati" -#: ../../mod/connections.php:628 +#: ../../mod/connections.php:632 msgid "Only show hidden connections" msgstr "Mostra solo i contatti nascosti" -#: ../../mod/connections.php:670 +#: ../../mod/connections.php:674 #, php-format msgid "%1$s [%2$s]" msgstr "%1$s [%2$s]" -#: ../../mod/connections.php:671 +#: ../../mod/connections.php:675 msgid "Edit contact" msgstr "Modifica il contatto" -#: ../../mod/connections.php:694 +#: ../../mod/connections.php:698 msgid "Search your connections" msgstr "Cerca tra i contatti" -#: ../../mod/connections.php:695 +#: ../../mod/connections.php:699 msgid "Finding: " msgstr "Ricerca: " @@ -6246,71 +6269,6 @@ msgstr "interessi personali:" msgid "No matches" msgstr "Nessun risultato" -#: ../../mod/crepair.php:102 -msgid "Contact settings applied." -msgstr "Contatto modificato." - -#: ../../mod/crepair.php:104 -msgid "Contact update failed." -msgstr "Le modifiche al contatto non sono state salvate." - -#: ../../mod/crepair.php:129 ../../mod/fsuggest.php:20 -#: ../../mod/fsuggest.php:92 -msgid "Contact not found." -msgstr "Contatto non trovato." - -#: ../../mod/crepair.php:135 -msgid "Repair Contact Settings" -msgstr "Ripara le impostazioni del contatto" - -#: ../../mod/crepair.php:137 -msgid "" -"WARNING: This is highly advanced and if you enter incorrect" -" information your communications with this contact may stop working." -msgstr "ATTENZIONE: Queste sono impostazioni avanzate e se inserisci informazioni errate le tue comunicazioni con questo contatto potrebbero non funzionare più" - -#: ../../mod/crepair.php:138 -msgid "" -"Please use your browser 'Back' button now if you are " -"uncertain what to do on this page." -msgstr "Clicca adesso il tasto 'Indietro' del browser se non hai la certezza assoluta di quel che stai facendo." - -#: ../../mod/crepair.php:144 -msgid "Return to contact editor" -msgstr "Ritorna alla modifica del contatto" - -#: ../../mod/crepair.php:149 -msgid "Account Nickname" -msgstr "Nome utente" - -#: ../../mod/crepair.php:150 -msgid "@Tagname - overrides Name/Nickname" -msgstr "@TagName - sostituirà il nome utente" - -#: ../../mod/crepair.php:151 -msgid "Account URL" -msgstr "URL dell'utente" - -#: ../../mod/crepair.php:152 -msgid "Friend Request URL" -msgstr "URL di richiesta amicizia" - -#: ../../mod/crepair.php:153 -msgid "Friend Confirm URL" -msgstr "URL di conferma amicizia" - -#: ../../mod/crepair.php:154 -msgid "Notification Endpoint URL" -msgstr "URL per le notifiche" - -#: ../../mod/crepair.php:155 -msgid "Poll/Feed URL" -msgstr "URL del feed" - -#: ../../mod/crepair.php:156 -msgid "New photo from this URL" -msgstr "Nuova foto da questo URL" - #: ../../mod/zfinger.php:23 msgid "invalid target signature" msgstr "la firma riscontrata non è valida" @@ -6319,7 +6277,7 @@ msgstr "la firma riscontrata non è valida" msgid "Channel added." msgstr "Canale aggiunto." -#: ../../mod/editlayout.php:36 ../../mod/editwebpage.php:30 +#: ../../mod/editlayout.php:36 ../../mod/editwebpage.php:32 #: ../../mod/editpost.php:20 ../../mod/editblock.php:36 msgid "Item not found" msgstr "Elemento non trovato" @@ -6328,17 +6286,17 @@ msgstr "Elemento non trovato" msgid "Edit Layout" msgstr "Modifica il layout" -#: ../../mod/editlayout.php:104 ../../mod/editwebpage.php:123 +#: ../../mod/editlayout.php:104 ../../mod/editwebpage.php:147 #: ../../mod/editpost.php:101 ../../mod/editblock.php:118 msgid "Insert YouTube video" msgstr "Inserisci video da YouTube" -#: ../../mod/editlayout.php:105 ../../mod/editwebpage.php:124 +#: ../../mod/editlayout.php:105 ../../mod/editwebpage.php:148 #: ../../mod/editpost.php:102 ../../mod/editblock.php:119 msgid "Insert Vorbis [.ogg] video" msgstr "Inserisci video Vorbis [.ogg]" -#: ../../mod/editlayout.php:106 ../../mod/editwebpage.php:125 +#: ../../mod/editlayout.php:106 ../../mod/editwebpage.php:149 #: ../../mod/editpost.php:103 ../../mod/editblock.php:120 msgid "Insert Vorbis [.ogg] audio" msgstr "Inserisci audio Vorbis [.ogg]" @@ -6347,87 +6305,87 @@ msgstr "Inserisci audio Vorbis [.ogg]" msgid "Delete Layout" msgstr "Elimina il layout" -#: ../../mod/profile_photo.php:54 +#: ../../mod/profile_photo.php:44 msgid "Image uploaded but image cropping failed." msgstr "L'immagine è stata caricata, ma il non è stato possibile ritagliarla." -#: ../../mod/profile_photo.php:107 +#: ../../mod/profile_photo.php:97 msgid "Image resize failed." msgstr "Il ridimensionamento dell'immagine è fallito." -#: ../../mod/profile_photo.php:151 +#: ../../mod/profile_photo.php:141 msgid "" "Shift-reload the page or clear browser cache if the new photo does not " "display immediately." msgstr "Ricarica la pagina con shift+F5 o cancella la cache del browser se la nuova foto non viene mostrata immediatamente." -#: ../../mod/profile_photo.php:173 +#: ../../mod/profile_photo.php:163 #, php-format msgid "Image exceeds size limit of %d" msgstr "La dimensione dell'immagine supera il limite di %d" -#: ../../mod/profile_photo.php:182 +#: ../../mod/profile_photo.php:172 msgid "Unable to process image." msgstr "Impossibile elaborare l'immagine." -#: ../../mod/profile_photo.php:224 ../../mod/profile_photo.php:272 +#: ../../mod/profile_photo.php:214 ../../mod/profile_photo.php:262 msgid "Photo not available." msgstr "Foto non disponibile." -#: ../../mod/profile_photo.php:291 +#: ../../mod/profile_photo.php:281 msgid "Upload File:" msgstr "Carica un file:" -#: ../../mod/profile_photo.php:292 +#: ../../mod/profile_photo.php:282 msgid "Select a profile:" msgstr "Seleziona un profilo:" -#: ../../mod/profile_photo.php:293 +#: ../../mod/profile_photo.php:283 msgid "Upload Profile Photo" msgstr "Carica la foto del profilo" -#: ../../mod/profile_photo.php:294 +#: ../../mod/profile_photo.php:284 msgid "Upload" msgstr "Carica" -#: ../../mod/profile_photo.php:298 +#: ../../mod/profile_photo.php:288 msgid "skip this step" msgstr "salta questo passaggio" -#: ../../mod/profile_photo.php:298 +#: ../../mod/profile_photo.php:288 msgid "select a photo from your photo albums" msgstr "seleziona una foto dai tuoi album" -#: ../../mod/profile_photo.php:312 +#: ../../mod/profile_photo.php:302 msgid "Crop Image" msgstr "Ritaglia immagine" -#: ../../mod/profile_photo.php:313 +#: ../../mod/profile_photo.php:303 msgid "Please adjust the image cropping for optimum viewing." msgstr "Ritaglia l'immagine per migliorarne la visualizzazione." -#: ../../mod/profile_photo.php:315 +#: ../../mod/profile_photo.php:305 msgid "Done Editing" msgstr "Modifica terminata" -#: ../../mod/profile_photo.php:350 +#: ../../mod/profile_photo.php:340 msgid "Image uploaded successfully." msgstr "Immagine caricata con successo." -#: ../../mod/profile_photo.php:352 +#: ../../mod/profile_photo.php:342 msgid "Image upload failed." msgstr "Il caricamento dell'immagine è fallito." -#: ../../mod/profile_photo.php:361 +#: ../../mod/profile_photo.php:351 #, php-format msgid "Image size reduction [%s] failed." msgstr "Il ridimensionamento del'immagine [%s] è fallito." -#: ../../mod/editwebpage.php:87 +#: ../../mod/editwebpage.php:106 msgid "Edit Webpage" msgstr "Modifica la pagina web" -#: ../../mod/editwebpage.php:162 +#: ../../mod/editwebpage.php:188 msgid "Delete Webpage" msgstr "Elimina la pagina web" @@ -6435,136 +6393,18 @@ msgstr "Elimina la pagina web" msgid "Invalid request identifier." msgstr "L'identificativo della richiesta non è valido." -#: ../../mod/notifications.php:76 -msgid "System" -msgstr "Sistema" +#: ../../mod/notifications.php:35 +msgid "Discard" +msgstr "Rifiuta" -#: ../../mod/notifications.php:96 -msgid "Introductions" -msgstr "Richieste di amicizia" - -#: ../../mod/notifications.php:121 -msgid "Show Ignored Requests" -msgstr "Mostra le richieste ignorate" - -#: ../../mod/notifications.php:121 -msgid "Hide Ignored Requests" -msgstr "Nascondi le richieste ignorate" - -#: ../../mod/notifications.php:147 ../../mod/notifications.php:193 -msgid "Notification type: " -msgstr "Tipo di notifica: " - -#: ../../mod/notifications.php:148 -msgid "Friend Suggestion" -msgstr "Suggerimento di amicizia" - -#: ../../mod/notifications.php:150 -#, php-format -msgid "suggested by %s" -msgstr "suggerito da %s" - -#: ../../mod/notifications.php:179 -msgid "Claims to be known to you: " -msgstr "Dice di conoscerti: " - -#: ../../mod/notifications.php:179 -msgid "yes" -msgstr "si" - -#: ../../mod/notifications.php:179 -msgid "no" -msgstr "no" - -#: ../../mod/notifications.php:186 -msgid "Approve as: " -msgstr "Approva come: " - -#: ../../mod/notifications.php:187 -msgid "Friend" -msgstr "Amico" - -#: ../../mod/notifications.php:188 -msgid "Sharer" -msgstr "Sharer" - -#: ../../mod/notifications.php:188 -msgid "Fan/Admirer" -msgstr "Fan/Ammiratore" - -#: ../../mod/notifications.php:194 -msgid "Friend/Connect Request" -msgstr "Richiesta di entrare in contatto" - -#: ../../mod/notifications.php:194 -msgid "New Follower" -msgstr "Nuovo follower" - -#: ../../mod/notifications.php:215 -msgid "No introductions." -msgstr "Nessuna richiesta di amicizia." - -#: ../../mod/notifications.php:257 ../../mod/notifications.php:382 -#: ../../mod/notifications.php:465 -#, php-format -msgid "%s liked %s's post" -msgstr "A %s è piaciuto l'articolo di %s" - -#: ../../mod/notifications.php:266 ../../mod/notifications.php:391 -#: ../../mod/notifications.php:474 -#, php-format -msgid "%s disliked %s's post" -msgstr "A %s non è piaciuto l'articolo di %s" - -#: ../../mod/notifications.php:280 ../../mod/notifications.php:405 -#: ../../mod/notifications.php:488 -#, php-format -msgid "%s is now friends with %s" -msgstr "%s è ora amico di %s" - -#: ../../mod/notifications.php:287 ../../mod/notifications.php:412 -#, php-format -msgid "%s created a new post" -msgstr "%s ha creato un nuovo articolo" - -#: ../../mod/notifications.php:288 ../../mod/notifications.php:413 -#: ../../mod/notifications.php:497 -#, php-format -msgid "%s commented on %s's post" -msgstr "%s ha commentato l'articolo di %s" - -#: ../../mod/notifications.php:302 -msgid "No more network notifications." -msgstr "Non ci sono nuove notifiche dalla rete." - -#: ../../mod/notifications.php:306 -msgid "Network Notifications" -msgstr "Notifiche dalla rete" - -#: ../../mod/notifications.php:332 ../../mod/notify.php:54 +#: ../../mod/notifications.php:93 ../../mod/notify.php:54 msgid "No more system notifications." msgstr "Non ci sono nuove notifiche di sistema." -#: ../../mod/notifications.php:336 ../../mod/notify.php:58 +#: ../../mod/notifications.php:97 ../../mod/notify.php:58 msgid "System Notifications" msgstr "Notifiche di sistema" -#: ../../mod/notifications.php:427 -msgid "No more personal notifications." -msgstr "Non ci sono nuove notifiche personali." - -#: ../../mod/notifications.php:431 -msgid "Personal Notifications" -msgstr "Notifiche personali" - -#: ../../mod/notifications.php:504 -msgid "No more home notifications." -msgstr "Non ci sono nuove notifiche dalla bacheca." - -#: ../../mod/notifications.php:508 -msgid "Home Notifications" -msgstr "Notifiche dalla bacheca" - #: ../../mod/blocks.php:65 msgid "Block Name" msgstr "Nome del riquadro" @@ -6581,7 +6421,7 @@ msgstr "Inviato!" msgid "Item is not editable" msgstr "L'elemento non è modificabile" -#: ../../mod/profile.php:112 +#: ../../mod/profile.php:64 ../../mod/profile.php:72 msgid "Access to this profile has been restricted." msgstr "L'accesso a questo profilo è stato limitato." @@ -6605,11 +6445,15 @@ msgstr "Scegli cosa vuoi inviare al destinatario" msgid "Make this post private" msgstr "Rendi privato questo articolo" -#: ../../mod/wall_upload.php:41 ../../mod/item.php:1074 +#: ../../mod/wall_upload.php:41 ../../mod/item.php:1077 msgid "Wall Photos" msgstr "Foto della bacheca" -#: ../../mod/channel.php:107 +#: ../../mod/channel.php:25 +msgid "You must be logged in to see this page." +msgstr "Devi aver effettuato l'accesso per vedere questa pagina." + +#: ../../mod/channel.php:83 msgid "Insufficient permissions. Request redirected to profile page." msgstr "Permessi insufficienti. Sarà visualizzata la pagina del profilo." @@ -6629,6 +6473,10 @@ msgstr "Nessun risultato." msgid "Files" msgstr "Elenco file" +#: ../../mod/fsuggest.php:20 ../../mod/fsuggest.php:92 +msgid "Contact not found." +msgstr "Contatto non trovato." + #: ../../mod/fsuggest.php:63 msgid "Friend suggestion sent." msgstr "Suggerimento di amicizia inviato." @@ -6650,23 +6498,23 @@ msgstr "Modifica il riquadro" msgid "Delete Block" msgstr "Elimina il riquadro" -#: ../../mod/profperm.php:34 ../../mod/profperm.php:64 +#: ../../mod/profperm.php:25 ../../mod/profperm.php:55 msgid "Invalid profile identifier." msgstr "Indentificativo del profilo non valido." -#: ../../mod/profperm.php:110 +#: ../../mod/profperm.php:101 msgid "Profile Visibility Editor" msgstr "Modifica la visibilità del profilo" -#: ../../mod/profperm.php:114 +#: ../../mod/profperm.php:105 msgid "Click on a contact to add or remove." msgstr "Clicca su un contatto per aggiungerlo o rimuoverlo." -#: ../../mod/profperm.php:123 +#: ../../mod/profperm.php:114 msgid "Visible To" msgstr "Visibile a" -#: ../../mod/profperm.php:139 +#: ../../mod/profperm.php:130 msgid "All Contacts (with secure profile access)" msgstr "Tutti i contatti (con accesso fidato al profilo)" @@ -6686,12 +6534,12 @@ msgstr "I contenuti eseguibili non sono permessi su questo canale." msgid "System error. Post not saved." msgstr "Errore di sistema. Articolo non salvato." -#: ../../mod/item.php:1153 +#: ../../mod/item.php:1156 #, php-format msgid "You have reached your limit of %1$.0f top level posts." msgstr "Hai raggiunto il limite massimo di %1$.0f articoli sulla pagina principale." -#: ../../mod/item.php:1159 +#: ../../mod/item.php:1162 #, php-format msgid "You have reached your limit of %1$.0f webpages." msgstr "Hai raggiunto il limite massimo di %1$.0f pagine web." @@ -6739,16 +6587,12 @@ msgid "" "librelist - dot com" msgstr "Per consigli, ringraziamenti, donazioni, ecc. - scrivi a \"redmatrix\" at librelist - dot com" -#: ../../mod/suggest.php:41 +#: ../../mod/suggest.php:42 msgid "" "No suggestions available. If this is a new site, please try again in 24 " "hours." msgstr "Nessun suggerimento disponibile. Se questo è un sito nuovo, riprova tra 24 ore." -#: ../../mod/suggest.php:58 -msgid "Ignore/Hide" -msgstr "Ignora/nascondi" - #: ../../mod/pubsites.php:22 msgid "Public Sites" msgstr "Siti pubblici" @@ -6873,23 +6717,23 @@ msgstr "L'impostazione predefinita è che sia eliminata solo l'istanza del canal msgid "Remove My Account" msgstr "Elimina il mio account" -#: ../../mod/directory.php:163 +#: ../../mod/directory.php:164 msgid "Gender: " msgstr "Sesso:" -#: ../../mod/directory.php:222 +#: ../../mod/directory.php:225 msgid "Finding:" msgstr "Ricerca:" -#: ../../mod/directory.php:230 +#: ../../mod/directory.php:233 msgid "next page" msgstr "pagina succ." -#: ../../mod/directory.php:230 +#: ../../mod/directory.php:233 msgid "previous page" msgstr "pagina prec." -#: ../../mod/directory.php:237 +#: ../../mod/directory.php:240 msgid "No entries (some entries may be hidden)." msgstr "Nessun risultato (qualcosa potrebbe essere nascosto)." @@ -7181,6 +7025,6 @@ msgstr "permesso negato" msgid "Got Zot?" msgstr "Hai Zot?" -#: ../../boot.php:1902 +#: ../../boot.php:1907 msgid "toggle mobile" msgstr "attiva/disattiva versione mobile" diff --git a/view/it/strings.php b/view/it/strings.php index dde964c00..5a3279eda 100644 --- a/view/it/strings.php +++ b/view/it/strings.php @@ -12,6 +12,13 @@ $a->strings["public profile"] = "profilo pubblico"; $a->strings["%1\$s changed %2\$s to “%3\$s”"] = "%1\$s ha cambiato %2\$s in “%3\$s”"; $a->strings["Visit %1\$s's %2\$s"] = "Guarda %2\$s di %1\$s "; $a->strings["%1\$s has an updated %2\$s, changing %3\$s."] = "%1\$s ha aggiornato %2\$s cambiando %3\$s."; +$a->strings["Sort Options"] = "Opzioni di ordinamento"; +$a->strings["Alphabetic"] = "Alfabetico"; +$a->strings["Reverse Alphabetic"] = "Alfabetico inverso"; +$a->strings["Newest to Oldest"] = "Dal più nuovo al più vecchio"; +$a->strings["Enable Safe Search"] = "Abilita SafeSearch"; +$a->strings["Disable Safe Search"] = "Disabilita SafeSearch"; +$a->strings["Safe Mode"] = "Modalità SafeSearch"; $a->strings["Red Matrix Notification"] = "Notifica di Red Matrix"; $a->strings["redmatrix"] = "redmatrix"; $a->strings["Thank You,"] = "Grazie,"; @@ -94,9 +101,38 @@ $a->strings["Link"] = "Link"; $a->strings["Video"] = "Video"; $a->strings["Preview"] = "Anteprima"; $a->strings["Encrypt text"] = "Crittografia del testo"; -$a->strings["Connect"] = "Entra in contatto/segui"; +$a->strings["Connect"] = "Entra in contatto"; $a->strings["New window"] = "Nuova finestra"; $a->strings["Open the selected location in a different window or browser tab"] = "Apri l'indirizzo selezionato in una nuova scheda o finestra"; +$a->strings["Displays a full channel profile"] = "Mostra il profilo completo del canale"; +$a->strings["Tag cloud of webpage categories"] = "Nuvola dei tag"; +$a->strings["List and filter by collection"] = "Filtra per insiemi di canali"; +$a->strings["Show a couple of channel suggestion"] = "Mostra i canali suggeriti"; +$a->strings["Provide a channel follow form"] = "Mostra il link connettersi al canale"; +$a->strings["Categories"] = "Categorie"; +$a->strings["Ignore/Hide"] = "Ignora/nascondi"; +$a->strings["Suggestions"] = "Suggerimenti"; +$a->strings["See more..."] = "Altro..."; +$a->strings["You have %1$.0f of %2$.0f allowed connections."] = "Hai attivato %1$.0f delle %2$.0f connessioni permesse."; +$a->strings["Add New Connection"] = "Aggiungi un contatto"; +$a->strings["Enter the channel address"] = "Scrivi l'indirizzo del canale"; +$a->strings["Example: bob@example.com, http://example.com/barbara"] = "Per esempio: mario@pippo.it oppure http://pluto.com/barbara"; +$a->strings["Notes"] = "Note"; +$a->strings["Save"] = "Salva"; +$a->strings["Remove term"] = "Rimuovi termine"; +$a->strings["Saved Searches"] = "Ricerche salvate"; +$a->strings["add"] = "aggiungi"; +$a->strings["Saved Folders"] = "Cartelle salvate"; +$a->strings["Everything"] = "Tutto"; +$a->strings["Archives"] = "Archivi"; +$a->strings["Refresh"] = "Aggiorna"; +$a->strings["Me"] = "Io"; +$a->strings["Best Friends"] = "Buoni amici"; +$a->strings["Friends"] = "Amici"; +$a->strings["Co-workers"] = "Colleghi"; +$a->strings["Former Friends"] = "Ex amici"; +$a->strings["Acquaintances"] = "Conoscenti"; +$a->strings["Everybody"] = "Tutti"; $a->strings["Unknown | Not categorised"] = "Sconosciuto | Senza categoria"; $a->strings["Block immediately"] = "Blocca subito"; $a->strings["Shady, spammer, self-marketer"] = "Spammer o dedito al marketing"; @@ -142,58 +178,6 @@ $a->strings["l F d, Y \\@ g:i A"] = "l d F Y \\@ G:i"; $a->strings["Starts:"] = "Inizio:"; $a->strings["Finishes:"] = "Fine:"; $a->strings["Location:"] = "Luogo:"; -$a->strings["General Features"] = "Funzionalità generali"; -$a->strings["Content Expiration"] = "Scadenza"; -$a->strings["Remove posts/comments and/or private messages at a future time"] = "Elimina gli articoli, i commenti o i messaggi privati dopo che è trascorso del tempo"; -$a->strings["Multiple Profiles"] = "Profili multipli"; -$a->strings["Ability to create multiple profiles"] = "Abilitazione a creare profili multipli"; -$a->strings["Web Pages"] = "Pagine web"; -$a->strings["Provide managed web pages on your channel"] = "Attiva la creazione di pagine web sul tuo canale"; -$a->strings["Enhanced Photo Albums"] = "Album fotografici avanzati"; -$a->strings["Enable photo album with enhanced features"] = "Abilita gli album fotografici con funzionalità avanzate"; -$a->strings["Extended Identity Sharing"] = "Condivisione avanzata dell'identità"; -$a->strings[" "] = " "; -$a->strings["Expert Mode"] = "Modalità esperto"; -$a->strings["Enable Expert Mode to provide advanced configuration options"] = "Abilita la modalità esperto per vedere le opzioni di configurazione avanzate"; -$a->strings["Premium Channel"] = "Canale premium"; -$a->strings["Allows you to set restrictions and terms on those that connect with your channel"] = "Ti permette di imporre delle restrizioni e dei termini d'uso a chi segue il canale"; -$a->strings["Post Composition Features"] = "Modalità di scrittura articoli"; -$a->strings["Richtext Editor"] = "Editor grafico"; -$a->strings["Enable richtext editor"] = "Abilita l'editor grafico"; -$a->strings["Post Preview"] = "Anteprima articolo"; -$a->strings["Allow previewing posts and comments before publishing them"] = "Abilita l'anteprima degli articoli e dei commenti prima di pubblicarli"; -$a->strings["Channel Sources"] = "Sorgenti del canale"; -$a->strings["Automatically import channel content from other channels or feeds"] = "Importa automaticamente il contenuto del canale da altri canali o feed"; -$a->strings["Even More Encryption"] = "Crittografia addizionale"; -$a->strings["Allow encryption of content end-to-end with a shared secret key"] = "Abilita la crittografia dei contenuti tra il mittente e i destinatari con una chiave segreta"; -$a->strings["Network and Stream Filtering"] = "Filtraggio dei contenuti"; -$a->strings["Search by Date"] = "Ricerca per data"; -$a->strings["Ability to select posts by date ranges"] = "Per selezionare gli articoli in un intervallo tra date"; -$a->strings["Collections Filter"] = "Filtra per insiemi di canali"; -$a->strings["Enable widget to display Network posts only from selected collections"] = "Mostra il riquadro per filtrare gli articoli di certi insiemi di canali"; -$a->strings["Saved Searches"] = "Ricerche salvate"; -$a->strings["Save search terms for re-use"] = "Salva i termini delle ricerche per poterle ripetere"; -$a->strings["Network Personal Tab"] = "Attività personale"; -$a->strings["Enable tab to display only Network posts that you've interacted on"] = "Abilita il link per mostrare solamente i contenuti con cui hai interagito"; -$a->strings["Network New Tab"] = "Contenuti nuovi"; -$a->strings["Enable tab to display all new Network activity"] = "Abilita il link per visualizzare solo i nuovi contenuti"; -$a->strings["Affinity Tool"] = "Filtro per affinità"; -$a->strings["Filter stream activity by depth of relationships"] = "Permette di selezionare i contenuti in base al livello di amicizia"; -$a->strings["Post/Comment Tools"] = "Gestione articoli e commenti"; -$a->strings["Edit Sent Posts"] = "Modifica gli articoli già inviati"; -$a->strings["Edit and correct posts and comments after sending"] = "Modifica e correggi gli articoli o i commenti anche dopo l'invio"; -$a->strings["Tagging"] = "Tag"; -$a->strings["Ability to tag existing posts"] = "Permetti l'aggiunta di tag su articoli già esistenti"; -$a->strings["Post Categories"] = "Categorie degli articoli"; -$a->strings["Add categories to your posts"] = "Abilita le categorie per i tuoi articoli"; -$a->strings["Saved Folders"] = "Cartelle salvate"; -$a->strings["Ability to file posts under folders"] = "Abilita la raccolta dei tuoi articoli in cartelle"; -$a->strings["Dislike Posts"] = "Non mi piace"; -$a->strings["Ability to dislike posts/comments"] = "Abilità la funzionalità \"non mi piace\" per i tuoi articoli"; -$a->strings["Star Posts"] = "Articoli stella (preferiti)"; -$a->strings["Ability to mark special posts with a star indicator"] = "Mostra la stella per scegliere gli articoli preferiti"; -$a->strings["Tag Cloud"] = "Nuvola di tag"; -$a->strings["Provide a personal tag cloud on your channel page"] = "Mostra la nuvola dei tag che usi di più sulla pagina del tuo canale"; $a->strings["A deleted group with this name was revived. Existing item permissions may apply to this group and any future members. If this is not what you intended, please create another group with a different name."] = "È stato ripristinato un insieme con lo stesso nome che era stato eliminato in precedenza. I permessi già presenti potrebbero rimanere validi per i nuovi canali. Se non vuoi che ciò accada, devi creare un altro insieme con un nome diverso."; $a->strings["Default privacy group for new contacts"] = "Insieme predefinito per i nuovi canali che aggiungi"; $a->strings["All Channels"] = "Tutti i canali"; @@ -202,7 +186,6 @@ $a->strings["Collections"] = "Insiemi di canali"; $a->strings["Edit collection"] = "Modifica l'insieme di canali"; $a->strings["Create a new collection"] = "Crea un nuovo insieme"; $a->strings["Channels not in any collection"] = "Canali che non sono in un insieme"; -$a->strings["add"] = "aggiungi"; $a->strings["Delete this item?"] = "Eliminare questo elemento?"; $a->strings["show fewer"] = "riduci"; $a->strings["Password too short"] = "Password troppo corta"; @@ -225,6 +208,7 @@ $a->strings["about a month"] = "circa un mese"; $a->strings["%d months"] = "%d mesi"; $a->strings["about a year"] = "circa un anno"; $a->strings["%d years"] = "%d anni"; +$a->strings[" "] = " "; $a->strings["timeago.numbers"] = "timeago.numbers"; $a->strings["No recipient provided."] = "Devi scegliere un destinatario."; $a->strings["[no subject]"] = "[nessun titolo]"; @@ -240,6 +224,59 @@ $a->strings["post"] = "l'articolo"; $a->strings["$1 wrote:"] = "$1 ha scritto:"; $a->strings["Embedded content"] = "Contenuti incorporati"; $a->strings["Embedding disabled"] = "Contenuti incorporati - funzione disabilitata"; +$a->strings["General Features"] = "Funzionalità generali"; +$a->strings["Content Expiration"] = "Scadenza"; +$a->strings["Remove posts/comments and/or private messages at a future time"] = "Elimina gli articoli, i commenti o i messaggi privati dopo che è trascorso del tempo"; +$a->strings["Multiple Profiles"] = "Profili multipli"; +$a->strings["Ability to create multiple profiles"] = "Abilitazione a creare profili multipli"; +$a->strings["Web Pages"] = "Pagine web"; +$a->strings["Provide managed web pages on your channel"] = "Attiva la creazione di pagine web sul tuo canale"; +$a->strings["Private Notes"] = "Note private"; +$a->strings["Enables a tool to store notes and reminders"] = "Abilita il riquadro per scrivere annotazioni"; +$a->strings["Enhanced Photo Albums"] = "Album fotografici avanzati"; +$a->strings["Enable photo album with enhanced features"] = "Abilita gli album fotografici con funzionalità avanzate"; +$a->strings["Extended Identity Sharing"] = "Condivisione avanzata dell'identità"; +$a->strings["Expert Mode"] = "Modalità esperto"; +$a->strings["Enable Expert Mode to provide advanced configuration options"] = "Abilita la modalità esperto per vedere le opzioni di configurazione avanzate"; +$a->strings["Premium Channel"] = "Canale premium"; +$a->strings["Allows you to set restrictions and terms on those that connect with your channel"] = "Ti permette di imporre delle restrizioni e dei termini d'uso a chi segue il canale"; +$a->strings["Post Composition Features"] = "Modalità di scrittura articoli"; +$a->strings["Richtext Editor"] = "Editor grafico"; +$a->strings["Enable richtext editor"] = "Abilita l'editor grafico"; +$a->strings["Post Preview"] = "Anteprima articolo"; +$a->strings["Allow previewing posts and comments before publishing them"] = "Abilita l'anteprima degli articoli e dei commenti prima di pubblicarli"; +$a->strings["Channel Sources"] = "Sorgenti del canale"; +$a->strings["Automatically import channel content from other channels or feeds"] = "Importa automaticamente il contenuto del canale da altri canali o feed"; +$a->strings["Even More Encryption"] = "Crittografia addizionale"; +$a->strings["Allow encryption of content end-to-end with a shared secret key"] = "Abilita la crittografia dei contenuti tra il mittente e i destinatari con una chiave segreta"; +$a->strings["Network and Stream Filtering"] = "Filtraggio dei contenuti"; +$a->strings["Search by Date"] = "Ricerca per data"; +$a->strings["Ability to select posts by date ranges"] = "Per selezionare gli articoli in un intervallo tra date"; +$a->strings["Collections Filter"] = "Filtra per insiemi di canali"; +$a->strings["Enable widget to display Network posts only from selected collections"] = "Mostra il riquadro per filtrare gli articoli di certi insiemi di canali"; +$a->strings["Save search terms for re-use"] = "Salva i termini delle ricerche per poterle ripetere"; +$a->strings["Network Personal Tab"] = "Attività personale"; +$a->strings["Enable tab to display only Network posts that you've interacted on"] = "Abilita il link per mostrare solamente i contenuti con cui hai interagito"; +$a->strings["Network New Tab"] = "Contenuti nuovi"; +$a->strings["Enable tab to display all new Network activity"] = "Abilita il link per visualizzare solo i nuovi contenuti"; +$a->strings["Affinity Tool"] = "Filtro per affinità"; +$a->strings["Filter stream activity by depth of relationships"] = "Permette di selezionare i contenuti in base al livello di amicizia"; +$a->strings["Suggest Channels"] = "Suggerisci canali"; +$a->strings["Show channel suggestions"] = "Mostra alcuni canali che potrebbero interessarti"; +$a->strings["Post/Comment Tools"] = "Gestione articoli e commenti"; +$a->strings["Edit Sent Posts"] = "Modifica gli articoli già inviati"; +$a->strings["Edit and correct posts and comments after sending"] = "Modifica e correggi gli articoli o i commenti anche dopo l'invio"; +$a->strings["Tagging"] = "Tag"; +$a->strings["Ability to tag existing posts"] = "Permetti l'aggiunta di tag su articoli già esistenti"; +$a->strings["Post Categories"] = "Categorie degli articoli"; +$a->strings["Add categories to your posts"] = "Abilita le categorie per i tuoi articoli"; +$a->strings["Ability to file posts under folders"] = "Abilita la raccolta dei tuoi articoli in cartelle"; +$a->strings["Dislike Posts"] = "Non mi piace"; +$a->strings["Ability to dislike posts/comments"] = "Abilità la funzionalità \"non mi piace\" per i tuoi articoli"; +$a->strings["Star Posts"] = "Articoli stella (preferiti)"; +$a->strings["Ability to mark special posts with a star indicator"] = "Mostra la stella per scegliere gli articoli preferiti"; +$a->strings["Tag Cloud"] = "Nuvola di tag"; +$a->strings["Provide a personal tag cloud on your channel page"] = "Mostra la nuvola dei tag che usi di più sulla pagina del tuo canale"; $a->strings["created a new post"] = "Ha creato un nuovo articolo"; $a->strings["commented on %s's post"] = "ha commentato l'articolo di %s"; $a->strings["Permission denied."] = "Permesso negato."; @@ -285,7 +322,6 @@ $a->strings["Infatuated"] = "Infatuato/a"; $a->strings["Dating"] = "Disponibile a un incontro"; $a->strings["Unfaithful"] = "Infedele"; $a->strings["Sex Addict"] = "Sesso-dipendente"; -$a->strings["Friends"] = "Amici"; $a->strings["Friends/Benefits"] = "Amici piccanti"; $a->strings["Casual"] = "Casual"; $a->strings["Engaged"] = "Impegnato"; @@ -351,15 +387,12 @@ $a->strings["Directory"] = "Tutti i canali"; $a->strings["Channel Locator"] = "Ricerca canali"; $a->strings["Matrix"] = "La tua rete"; $a->strings["Your matrix"] = "La tua rete"; -$a->strings["See all matrix notifications"] = "Notifiche dalla tua rete"; $a->strings["Mark all matrix notifications seen"] = "Segna come lette le notifiche della tua rete"; $a->strings["Channel Home"] = "Bacheca del canale"; $a->strings["Channel home"] = "Bacheca del canale"; -$a->strings["See all channel notifications"] = "Guarda le notifiche dei canali"; $a->strings["Mark all channel notifications seen"] = "Segna come lette le notifiche dei canali"; $a->strings["Intros"] = "Richieste"; $a->strings["New Connections"] = "Nuovi contatti"; -$a->strings["See all channel introductions"] = "Guarda tutte le richieste di amicizia"; $a->strings["Notices"] = "Notifiche"; $a->strings["Notifications"] = "Notifiche"; $a->strings["See all notifications"] = "Vedi tutte le notifiche"; @@ -385,6 +418,14 @@ $a->strings["Admin"] = "Amministrazione"; $a->strings["Site Setup and Configuration"] = "Configurazione del sito"; $a->strings["Nothing new here"] = "Niente di nuovo qui"; $a->strings["Please wait..."] = "Attendere..."; +$a->strings["Tags"] = "Tag"; +$a->strings["Keywords"] = "Parole chiave"; +$a->strings["have"] = "ho"; +$a->strings["has"] = "ha"; +$a->strings["want"] = "voglio"; +$a->strings["wants"] = "vuole"; +$a->strings["likes"] = "ama"; +$a->strings["dislikes"] = "non ama"; $a->strings["Not a valid email address"] = "Email non valida"; $a->strings["Your email domain is not among those allowed on this site"] = "Il dominio della tua email attualmente non è permesso su questo sito"; $a->strings["Your email address is already registered at this site."] = "La tua email è già registrata su questo sito."; @@ -494,24 +535,18 @@ $a->strings["Manage Webpages"] = "Gestisci le pagine web"; $a->strings["Logged out."] = "Uscita effettuata."; $a->strings["Failed authentication"] = "Autenticazione fallita"; $a->strings["Login failed."] = "Accesso fallito."; -$a->strings["You have %1$.0f of %2$.0f allowed connections."] = "Hai attivato %1$.0f delle %2$.0f connessioni permesse."; -$a->strings["Add New Connection"] = "Aggiungi un contatto"; -$a->strings["Enter the channel address"] = "Scrivi l'indirizzo del canale"; -$a->strings["Example: bob@example.com, http://example.com/barbara"] = "Per esempio: mario@pippo.it oppure http://pluto.com/barbara"; $a->strings["%d invitation available"] = array( 0 => "%d invito disponibile", 1 => "%d inviti disponibili", ); $a->strings["Find Channels"] = "Ricerca canali"; $a->strings["Enter name or interest"] = "Scrivi un nome o un interesse"; -$a->strings["Connect/Follow"] = "Entra in contatto/segui"; +$a->strings["Connect/Follow"] = "Entra in contatto"; $a->strings["Examples: Robert Morgenstein, Fishing"] = "Per esempio: Mario Rossi, Pesca"; $a->strings["Find"] = "Cerca"; $a->strings["Channel Suggestions"] = "Canali suggeriti"; $a->strings["Random Profile"] = "Profilo casuale"; $a->strings["Invite Friends"] = "Invita amici"; -$a->strings["Everything"] = "Tutto"; -$a->strings["Categories"] = "Categorie"; $a->strings["%d connection in common"] = array( 0 => "%d contatto in comune", 1 => "%d contatti in comune", @@ -529,7 +564,6 @@ $a->strings["%d Connection"] = array( 1 => "%d contatti", ); $a->strings["View Connections"] = "Elenco contatti"; -$a->strings["Save"] = "Salva"; $a->strings["poke"] = "poke"; $a->strings["ping"] = "ping"; $a->strings["pinged"] = "ha ricevuto un ping"; @@ -596,6 +630,9 @@ $a->strings["Blocks"] = "Riquadri"; $a->strings["Menus"] = "Menù"; $a->strings["Layouts"] = "Layout"; $a->strings["Pages"] = "Pagine"; +$a->strings["Click here to upgrade."] = "Clicca qui per aggiornare."; +$a->strings["This action exceeds the limits set by your subscription plan."] = "Questa operazione esce dai termini del tuo abbonamento."; +$a->strings["This action is not available under your subscription plan."] = "Questa operazione non è prevista dal tuo abbonamento."; $a->strings["Channel is blocked on this site."] = "Il canale è bloccato per questo sito."; $a->strings["Channel location missing."] = "Manca l'indirizzo del canale."; $a->strings["Channel discovery failed. Website may be down or misconfigured."] = "La ricerca del canale è fallita. Il sito potrebbe avere problemi o una configurazione sbagliata."; @@ -609,7 +646,7 @@ $a->strings["Can view my \"public\" photo albums"] = "Può vedere il mio album f $a->strings["Can view my \"public\" address book"] = "Può vedere il mio elenco contatti \"pubblico\""; $a->strings["Can view my \"public\" file storage"] = "Può vedere il mio archivio file \"pubblico\""; $a->strings["Can view my \"public\" pages"] = "Può vedere le mie pagine web \"pubbliche\""; -$a->strings["Can send me their channel stream and posts"] = "Può mostrarmi i contenuti del canale e gli articoli"; +$a->strings["Can send me their channel stream and posts"] = "Seguo i contenuti e gli articoli del suo canale"; $a->strings["Can post on my channel page (\"wall\")"] = "Può scrivere sulla bacheca del mio canale"; $a->strings["Can comment on my posts"] = "Può commentare i miei articoli"; $a->strings["Can send me private mail messages"] = "Può inviarmi messaggi privati"; @@ -624,17 +661,6 @@ $a->strings["Can source my \"public\" posts in derived channels"] = "Può aggiun $a->strings["Somewhat advanced - very useful in open communities"] = "Piuttosto avanzato - molto utile nelle comunità aperte"; $a->strings["Can administer my channel resources"] = "Può amministrare i contenuti del mio canale"; $a->strings["Extremely advanced. Leave this alone unless you know what you are doing"] = "Impostazione pericolosa - lasciare il valore predefinito se non si è assolutamente sicuri"; -$a->strings["Tags"] = "Tag"; -$a->strings["Keywords"] = "Parole chiave"; -$a->strings["have"] = "ho"; -$a->strings["has"] = "ha"; -$a->strings["want"] = "voglio"; -$a->strings["wants"] = "vuole"; -$a->strings["likes"] = "ama"; -$a->strings["dislikes"] = "non ama"; -$a->strings["Click here to upgrade."] = "Clicca qui per aggiornare."; -$a->strings["This action exceeds the limits set by your subscription plan."] = "Questa operazione esce dai termini del tuo abbonamento."; -$a->strings["This action is not available under your subscription plan."] = "Questa operazione non è prevista dal tuo abbonamento."; $a->strings["Default"] = "Predefinito"; $a->strings["Unable to obtain identity information from database"] = "Impossibile ottenere le informazioni di identificazione dal database"; $a->strings["Empty name"] = "Nome vuoto"; @@ -696,17 +722,11 @@ $a->strings["Welcome back "] = "Ciao, è bello rivederti"; $a->strings["The form security token was not correct. This probably happened because the form has been opened for too long (>3 hours) before submitting it."] = "L'identificativo di sicurezza del modulo che hai riempito non è corretto. Probabilmente è accaduto perché la pagina è stata tenuta aperta troppo a lungo (ore?) prima di inviare il contenuto."; $a->strings["Permission denied"] = "Permesso negato"; $a->strings["Item not found."] = "Elemento non trovato."; -$a->strings["Archives"] = "Archivi"; $a->strings["Collection not found."] = "Insieme non trovato."; -$a->strings["Group is empty"] = "L'insieme è vuoto"; +$a->strings["Collection is empty."] = "L'insieme di canali è vuoto."; +$a->strings["Collection: %s"] = "Insieme: %s"; +$a->strings["Connection: %s"] = "Contatto: %s"; $a->strings["Connection not found."] = "Contatto non trovato."; -$a->strings["Sort Options"] = "Opzioni di ordinamento"; -$a->strings["Alphabetic"] = "Alfabetico"; -$a->strings["Reverse Alphabetic"] = "Alfabetico inverso"; -$a->strings["Newest to Oldest"] = "Dal più nuovo al più vecchio"; -$a->strings["Enable Safe Search"] = "Abilita SafeSearch"; -$a->strings["Disable Safe Search"] = "Disabilita SafeSearch"; -$a->strings["Safe Mode"] = "Modalità SafeSearch"; $a->strings["No channel."] = "Nessun canale."; $a->strings["Common connections"] = "Contatti in comune"; $a->strings["No connections in common."] = "Nessun contatto in comune."; @@ -765,7 +785,6 @@ $a->strings["Please login to continue."] = "Accedi al sito per continuare."; $a->strings["Do you want to authorize this application to access your posts and contacts, and/or create new posts for you?"] = "Vuoi autorizzare questa app ad accedere ai messaggi e ai contatti o creare nuovi messaggi per te?"; $a->strings["Yes"] = "Si"; $a->strings["No"] = "No"; -$a->strings["You must be logged in to see this page."] = "Devi aver effettuato l'accesso per vedere questa pagina."; $a->strings["No installed applications."] = "Nessuna app installata."; $a->strings["Applications"] = "Applicazioni"; $a->strings["Invalid item."] = "Elemento non valido."; @@ -1047,6 +1066,8 @@ $a->strings["Block public"] = "Blocca pagine pubbliche"; $a->strings["Check to block public access to all otherwise public personal pages on this site unless you are currently logged in."] = "Seleziona per impedire di vedere le pagine personali di questo sito a chi non ha effettuato l'accesso."; $a->strings["Force publish"] = "Forza la publicazione del profilo"; $a->strings["Check to force all profiles on this site to be listed in the site directory."] = "Seleziona per mostrare nell'elenco dei canali del sito tutti i profili registrati."; +$a->strings["No login on Homepage"] = "Non mostrare il login sulla homepage"; +$a->strings["Check to hide the login form from your sites homepage when visitors arrive who are not logged in (e.g. when you put the content of the homepage in via the site channel)."] = "Per nascondere la possibilità di fare login ai visitatori (per esempio, quando il contenuto della homepage del sito è alimentato dal canale)."; $a->strings["Proxy user"] = "Utente proxy"; $a->strings["Proxy URL"] = "URL proxy"; $a->strings["Network timeout"] = "Timeout rete"; @@ -1130,6 +1151,7 @@ $a->strings["Add menu element"] = "Aggiungi un elemento al menù"; $a->strings["Delete this menu item"] = "Elimina questo elemento del menù"; $a->strings["Edit this menu item"] = "Modifica questo elemento del menù"; $a->strings["New Menu Element"] = "Nuovo elemento del menù"; +$a->strings["Menu Item Permissions"] = "Permessi del menu"; $a->strings["Link text"] = "Testo del link"; $a->strings["URL of link"] = "Indirizzo del link"; $a->strings["Use Red magic-auth if available"] = "Usa l'autenticazione magica di Red, se disponibile"; @@ -1154,7 +1176,6 @@ $a->strings["Collection Editor"] = "Modifica l'insieme"; $a->strings["Members"] = "Membri"; $a->strings["All Connected Channels"] = "Tutti i canali connessi"; $a->strings["Click on a channel to add or remove."] = "Clicca su un canale per aggiungerlo o rimuoverlo."; -$a->strings["Remove term"] = "Rimuovi termine"; $a->strings["Page owner information could not be retrieved."] = "Impossibile ottenere informazioni sul proprietario della pagina."; $a->strings["Album not found."] = "Album non trovato."; $a->strings["Delete Album"] = "Elimina album"; @@ -1234,7 +1255,6 @@ $a->strings["Private Conversation"] = "Conversazione privata"; $a->strings["Delete conversation"] = "Elimina la conversazione"; $a->strings["No secure communications available. You may be able to respond from the sender's profile page."] = "Non è disponibile alcun sistema per comunicare in modo sicuro. Puoi verificare se eventualmente è possibile rispondere dalla pagina del profilo del mittente."; $a->strings["Send Reply"] = "Invia la risposta"; -$a->strings["No profile"] = "Nessun profilo"; $a->strings["Layout Help"] = "Guida al layout"; $a->strings["Help with this feature"] = "La guida per questa funzionalità"; $a->strings["Layout Name"] = "Nome layout"; @@ -1244,27 +1264,11 @@ $a->strings["Remote Authentication"] = "Autenticazione a distanza"; $a->strings["Enter your channel address (e.g. channel@example.com)"] = "Inserisci l'indirizzo del tuo canale (ad esempio lucia@esempio.com)"; $a->strings["Authenticate"] = "Autenticazione"; $a->strings["No such group"] = "Impossibile trovare l'insieme"; -$a->strings["Refresh"] = "Aggiorna"; -$a->strings["Me"] = "Io"; -$a->strings["Best Friends"] = "Buoni amici"; -$a->strings["Co-workers"] = "Colleghi"; -$a->strings["Former Friends"] = "Ex amici"; -$a->strings["Acquaintances"] = "Conoscenti"; -$a->strings["Everybody"] = "Tutti"; $a->strings["Search Results For:"] = "Cerca risultati con:"; +$a->strings["Collection is empty"] = "L'insieme di canali è vuoto"; $a->strings["Collection: "] = "Insieme:"; $a->strings["Connection: "] = "Connessione:"; $a->strings["Invalid connection."] = "Connessione non valida."; -$a->strings["Ignore"] = "Ignora"; -$a->strings["Connection updated."] = "Contatto aggiornato."; -$a->strings["Connection update failed."] = "Impossibile aggiornare il contatto."; -$a->strings["Introductions and Connection Requests"] = "Richieste di entrare in contatto"; -$a->strings["No pending introductions."] = "Nessuna richiesta in attesa."; -$a->strings["System error. Please try again later."] = "Errore di sistema. Riprovare più tardi."; -$a->strings["Hide this contact from others"] = "Nascondi questo contatto agli altri"; -$a->strings["Post a new friend activity"] = "Pubblica sulla bacheca che hai un nuovo contatto"; -$a->strings["if applicable"] = "se possibile"; -$a->strings["Discard"] = "Rifiuta"; $a->strings["Remote authentication blocked. You are logged into this site locally. Please logout and retry."] = "L'autenticazione remota non è disponibile. Hai accesso solamente a questo sito. Puoi provare ad uscire per tentare di nuovo."; $a->strings["Welcome %s. Remote authentication successful."] = "Ciao %s. La tua autenticazione da remoto è avvenuta con successo."; $a->strings["This site is not a directory server"] = "Questo sito non fornisce l'elenco generale dei canali"; @@ -1339,6 +1343,7 @@ $a->strings["Your nickname will be used to create an easily remembered channel a $a->strings["Or import an existing channel from another location"] = "Oppure importa un tuo canale esistente da un altro server/hub"; $a->strings["Could not access contact record."] = "Non è possibile accedere alle informazioni sul contatto."; $a->strings["Could not locate selected profile."] = "Non riesco a trovare il profilo selezionato."; +$a->strings["Connection updated."] = "Contatto aggiornato."; $a->strings["Failed to update connection record."] = "Impossibile aggiornare le informazioni del contatto."; $a->strings["Could not access address book record."] = "Impossibile accedere alle informazioni della rubrica."; $a->strings["Refresh failed - channel is currently unavailable."] = "Il canale non è disponibile - impossibile aggiornare."; @@ -1361,6 +1366,7 @@ $a->strings["Recent Activity"] = "Attività recenti"; $a->strings["View recent posts and comments"] = "Leggi i post recenti e i commenti"; $a->strings["Block or Unblock this connection"] = "Per bloccare o meno questo contatto"; $a->strings["Unignore"] = "Non ignorare"; +$a->strings["Ignore"] = "Ignora"; $a->strings["Ignore or Unignore this connection"] = "Per ignorare o meno questo contatto"; $a->strings["Unarchive"] = "Non archiviare"; $a->strings["Archive"] = "Archivia"; @@ -1407,15 +1413,15 @@ $a->strings["Currently blocked"] = "Attualmente bloccato"; $a->strings["Currently ignored"] = "Attualmente ignorato"; $a->strings["Currently archived"] = "Attualmente archiviato"; $a->strings["Currently pending"] = "Attualmente da approvare"; +$a->strings["Hide this contact from others"] = "Nascondi questo contatto agli altri"; $a->strings["Replies/likes to your public posts may still be visible"] = "Le risposte ai tuoi articoli pubblici potrebbero restare comunque visibili"; $a->strings["Blocked"] = "Bloccati"; $a->strings["Ignored"] = "Ignorati"; $a->strings["Hidden"] = "Nascosti"; $a->strings["Archived"] = "Archiviati"; $a->strings["All"] = "Tutti"; -$a->strings["Suggestions"] = "Suggerimenti"; $a->strings["Suggest new connections"] = "Suggerisci nuovi contatti"; -$a->strings["Show pending (new) connections"] = "Richieste di entrare in contatto"; +$a->strings["Show pending (new) connections"] = "Richieste di contatto in attesa"; $a->strings["All Connections"] = "Tutti i contatti"; $a->strings["Show all connections"] = "Mostra tutti i contatti"; $a->strings["Unblocked"] = "Non bloccati"; @@ -1479,21 +1485,6 @@ $a->strings["Profile Match"] = "Profili corrispondenti"; $a->strings["No keywords to match. Please add keywords to your default profile."] = "Nessuna parola chiave per le ricerche. Aggiungi parole chiave al tuo profilo predefinito."; $a->strings["is interested in:"] = "interessi personali:"; $a->strings["No matches"] = "Nessun risultato"; -$a->strings["Contact settings applied."] = "Contatto modificato."; -$a->strings["Contact update failed."] = "Le modifiche al contatto non sono state salvate."; -$a->strings["Contact not found."] = "Contatto non trovato."; -$a->strings["Repair Contact Settings"] = "Ripara le impostazioni del contatto"; -$a->strings["WARNING: This is highly advanced and if you enter incorrect information your communications with this contact may stop working."] = "ATTENZIONE: Queste sono impostazioni avanzate e se inserisci informazioni errate le tue comunicazioni con questo contatto potrebbero non funzionare più"; -$a->strings["Please use your browser 'Back' button now if you are uncertain what to do on this page."] = "Clicca adesso il tasto 'Indietro' del browser se non hai la certezza assoluta di quel che stai facendo."; -$a->strings["Return to contact editor"] = "Ritorna alla modifica del contatto"; -$a->strings["Account Nickname"] = "Nome utente"; -$a->strings["@Tagname - overrides Name/Nickname"] = "@TagName - sostituirà il nome utente"; -$a->strings["Account URL"] = "URL dell'utente"; -$a->strings["Friend Request URL"] = "URL di richiesta amicizia"; -$a->strings["Friend Confirm URL"] = "URL di conferma amicizia"; -$a->strings["Notification Endpoint URL"] = "URL per le notifiche"; -$a->strings["Poll/Feed URL"] = "URL del feed"; -$a->strings["New photo from this URL"] = "Nuova foto da questo URL"; $a->strings["invalid target signature"] = "la firma riscontrata non è valida"; $a->strings["Channel added."] = "Canale aggiunto."; $a->strings["Item not found"] = "Elemento non trovato"; @@ -1523,36 +1514,9 @@ $a->strings["Image size reduction [%s] failed."] = "Il ridimensionamento del'imm $a->strings["Edit Webpage"] = "Modifica la pagina web"; $a->strings["Delete Webpage"] = "Elimina la pagina web"; $a->strings["Invalid request identifier."] = "L'identificativo della richiesta non è valido."; -$a->strings["System"] = "Sistema"; -$a->strings["Introductions"] = "Richieste di amicizia"; -$a->strings["Show Ignored Requests"] = "Mostra le richieste ignorate"; -$a->strings["Hide Ignored Requests"] = "Nascondi le richieste ignorate"; -$a->strings["Notification type: "] = "Tipo di notifica: "; -$a->strings["Friend Suggestion"] = "Suggerimento di amicizia"; -$a->strings["suggested by %s"] = "suggerito da %s"; -$a->strings["Claims to be known to you: "] = "Dice di conoscerti: "; -$a->strings["yes"] = "si"; -$a->strings["no"] = "no"; -$a->strings["Approve as: "] = "Approva come: "; -$a->strings["Friend"] = "Amico"; -$a->strings["Sharer"] = "Sharer"; -$a->strings["Fan/Admirer"] = "Fan/Ammiratore"; -$a->strings["Friend/Connect Request"] = "Richiesta di entrare in contatto"; -$a->strings["New Follower"] = "Nuovo follower"; -$a->strings["No introductions."] = "Nessuna richiesta di amicizia."; -$a->strings["%s liked %s's post"] = "A %s è piaciuto l'articolo di %s"; -$a->strings["%s disliked %s's post"] = "A %s non è piaciuto l'articolo di %s"; -$a->strings["%s is now friends with %s"] = "%s è ora amico di %s"; -$a->strings["%s created a new post"] = "%s ha creato un nuovo articolo"; -$a->strings["%s commented on %s's post"] = "%s ha commentato l'articolo di %s"; -$a->strings["No more network notifications."] = "Non ci sono nuove notifiche dalla rete."; -$a->strings["Network Notifications"] = "Notifiche dalla rete"; +$a->strings["Discard"] = "Rifiuta"; $a->strings["No more system notifications."] = "Non ci sono nuove notifiche di sistema."; $a->strings["System Notifications"] = "Notifiche di sistema"; -$a->strings["No more personal notifications."] = "Non ci sono nuove notifiche personali."; -$a->strings["Personal Notifications"] = "Notifiche personali"; -$a->strings["No more home notifications."] = "Non ci sono nuove notifiche dalla bacheca."; -$a->strings["Home Notifications"] = "Notifiche dalla bacheca"; $a->strings["Block Name"] = "Nome del riquadro"; $a->strings["Unable to find your hub."] = "Impossibile raggiungere il tuo hub."; $a->strings["Post successful."] = "Inviato!"; @@ -1564,11 +1528,13 @@ $a->strings["Recipient"] = "Destinatario"; $a->strings["Choose what you wish to do to recipient"] = "Scegli cosa vuoi inviare al destinatario"; $a->strings["Make this post private"] = "Rendi privato questo articolo"; $a->strings["Wall Photos"] = "Foto della bacheca"; +$a->strings["You must be logged in to see this page."] = "Devi aver effettuato l'accesso per vedere questa pagina."; $a->strings["Insufficient permissions. Request redirected to profile page."] = "Permessi insufficienti. Sarà visualizzata la pagina del profilo."; $a->strings["Not available."] = "Non disponibile."; $a->strings["Community"] = "Comunità"; $a->strings["No results."] = "Nessun risultato."; $a->strings["Files"] = "Elenco file"; +$a->strings["Contact not found."] = "Contatto non trovato."; $a->strings["Friend suggestion sent."] = "Suggerimento di amicizia inviato."; $a->strings["Suggest Friends"] = "Suggerisci amici"; $a->strings["Suggest a friend for %s"] = "Suggerisci un amico a %s"; @@ -1595,7 +1561,6 @@ $a->strings["Please visit GetZot.com to learn $a->strings["Bug reports and issues: please visit"] = "Per segnalare bug e problemi: visita"; $a->strings["Suggestions, praise, donations, etc. - please email \"redmatrix\" at librelist - dot com"] = "Per consigli, ringraziamenti, donazioni, ecc. - scrivi a \"redmatrix\" at librelist - dot com"; $a->strings["No suggestions available. If this is a new site, please try again in 24 hours."] = "Nessun suggerimento disponibile. Se questo è un sito nuovo, riprova tra 24 ore."; -$a->strings["Ignore/Hide"] = "Ignora/nascondi"; $a->strings["Public Sites"] = "Siti pubblici"; $a->strings["The listed sites allow public registration into the Red Matrix. All sites in the matrix are interlinked so membership on any of them conveys membership in the matrix as a whole. Some sites may require subscription or provide tiered service plans. The provider links may provide additional details."] = "Gli indirizzi elencati permettono la registrazione su Red Matrix. Tutti i siti di questa rete sono interconnessi, quindi essere registrati su uno è come essere registrati ovunque. Alcuni potrebbero richiedere un'iscrizione a pagamento o prevedere tipi diversi di abbonamento. Potrai trovare maggiori informazioni al riguardo visitando ciascun sito."; $a->strings["Site URL"] = "URL del sito";

    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�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ΝJsXQUpPF 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 z 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 JO2zKc{{bpEFZBQb literal 0 HcmV?d00001 diff --git a/assets/home.html b/assets/home.html new file mode 100644 index 000000000..978139893 --- /dev/null +++ b/assets/home.html @@ -0,0 +1,204 @@ + + + + + + +

  • - + {{$p.2.name}} - {{$p.2.version}} {{if $p.2.experimental}} {{$experimental}} {{/if}}{{if $p.2.unsupported}} {{$unsupported}} {{/if}} diff --git a/view/tpl/admin_plugins_details.tpl b/view/tpl/admin_plugins_details.tpl index f72142e41..1c1a59879 100755 --- a/view/tpl/admin_plugins_details.tpl +++ b/view/tpl/admin_plugins_details.tpl @@ -1,7 +1,7 @@

    {{$title}} - {{$page}}

    -

    {{$info.name}} - {{$info.version}} : {{$action}}

    +

    {{$info.name}} - {{$info.version}} : {{$action}}

    {{$info.description}}

    {{$str_author}} From 1593c83728884acda952661890354736a7eca105 Mon Sep 17 00:00:00 2001 From: friendica Date: Mon, 18 Nov 2013 19:00:33 -0800 Subject: [PATCH 031/271] update to reflect that account and channel removal is now possible, though bugs likely remain. --- doc/Remove-Account.md | 19 ++++++++++++++++++- 1 file changed, 18 insertions(+), 1 deletion(-) diff --git a/doc/Remove-Account.md b/doc/Remove-Account.md index 5759378a3..4591bbdad 100644 --- a/doc/Remove-Account.md +++ b/doc/Remove-Account.md @@ -1,4 +1,21 @@ Remove Account ============== -It is presently not possible to remove an account. We'll have better doco when somebody finishes that bit. \ No newline at end of file +It is presently not possible to remove an account without asking your site administrator for assistance. +We'll have better doco when somebody finishes that bit. + + +Remove Channel +============== + +Visit the URL + + https://yoursite/removeme + +(replace 'yoursite' with the domain name of your Red Matrix site). +You will need to confirm your password and the channel will be removed. This is irreversible. + +If you have identity clones on other sites this only removes the channel instance which exists +on this site. + + From d049df8fa50f256f5c88547fe448e8a1f3bb9ab4 Mon Sep 17 00:00:00 2001 From: friendica Date: Mon, 18 Nov 2013 19:02:38 -0800 Subject: [PATCH 032/271] wordsmithing --- doc/Remove-Account.md | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/doc/Remove-Account.md b/doc/Remove-Account.md index 4591bbdad..bc1301b16 100644 --- a/doc/Remove-Account.md +++ b/doc/Remove-Account.md @@ -13,7 +13,9 @@ Visit the URL https://yoursite/removeme (replace 'yoursite' with the domain name of your Red Matrix site). -You will need to confirm your password and the channel will be removed. This is irreversible. +You will need to confirm your password and the channel you are currently logged into will be removed. + +This is irreversible. If you have identity clones on other sites this only removes the channel instance which exists on this site. From be0197a3a035f7676a37ee766462d7a36a3043bb Mon Sep 17 00:00:00 2001 From: friendica Date: Mon, 18 Nov 2013 19:17:25 -0800 Subject: [PATCH 033/271] pull in some doco from the project wiki, keep it with the code --- doc/Home.md | 8 +- doc/Intro-for-Developers.md | 105 ++++++++++++++++++++++++++ doc/README.md | 38 ++++++++++ doc/api_functions.md | 138 +++++++++++++++++++++++++++++++++++ doc/dev-function-overview.md | 52 +++++++++++++ 5 files changed, 340 insertions(+), 1 deletion(-) create mode 100644 doc/Intro-for-Developers.md create mode 100644 doc/README.md create mode 100644 doc/api_functions.md create mode 100644 doc/dev-function-overview.md diff --git a/doc/Home.md b/doc/Home.md index f97f987da..0034c4aa9 100644 --- a/doc/Home.md +++ b/doc/Home.md @@ -20,13 +20,19 @@ Red Matrix Documentation and Resources * [Comanche Page Descriptions](help/Comanche) * [Plugins](help/Plugins) * [Developers](help/Developers) -* [Code](doc/html) +* [Intro for Developers](help/Intro-for-Developers.md) +* [API functions](help/api_functions.md) +* [Red Functions 101](help/dev-function-overview.md) +* [Code Reference (doxygen generated)](doc/html) * [To-Do list for the Red Documentation Project](help/To-Do) * [To-Do list for Developers](help/To-Do-Code) **External Resources** * [Main Website](https://github.com/friendica/red) +* [Plugin/Addon Website](https://github.com/friendica/red-addons) +* [Assets Website](https://github.com/friendica/red-assets) + * [Development Channel](http://zothub.com/channel/one) **About** diff --git a/doc/Intro-for-Developers.md b/doc/Intro-for-Developers.md new file mode 100644 index 000000000..bf74cb7c1 --- /dev/null +++ b/doc/Intro-for-Developers.md @@ -0,0 +1,105 @@ +File system layout: +=================== + +[addon] optional addons/plugins + +[boot.php] Every process uses this to bootstrap the application structure + +[doc] Help Files + +[images] core required images + +[include] The "model" in MVC - (back-end functions), also contains PHP "executables" for background processing + +[index.php] The front-end controller for web access + +[install] Installation and upgrade files and DB schema + +[js] core required javascript + +[library] Third party modules (must be license compatible) + +[mod] Controller modules based on URL pathname (e.g. http://sitename/foo loads mod/foo.php) + +[spec] protocol specifications + +[util] translation tools, main English string database and other miscellaneous utilities + +[version.inc] contains current version (auto-updated via cron for the master repository and distributed via git) + +[view] theming and language files + + +[view/(css,js,img,php,tpl)] default theme files + +[view/(en,it,es ...)] language strings and resources + +[view/theme/] individual named themes containing (css,js,img,php,tpl) over-rides + + +The Database: +============= + +* abook - contact table, replaces Friendica 'contact' +* account - service provider account +* addon - registered plugins +* attach - file attachments +* auth_codes - OAuth usage +* cache - TBD +* challenge - old DFRN structure, may re-use or may deprecate +* channel - replaces Friendica 'user' +* clients - OAuth usage +* config - main configuration storage +* event - Events +* fcontact - friend suggestion stuff +* ffinder - friend suggestion stuff +* fserver - obsolete +* fsuggest - friend suggestion stuff +* gcign - ignored friend suggestions +* gcontact - social graph storage, obsolete +* glink - social graph storage - obsolete +* group - privacy groups +* group_member - privacy groups +* hook - plugin hook registry +* hubloc - Red location storage, ties a location to an xchan +* intro - DFRN introductions, may be obsolete +* item - posts +* item_id - other identifiers on other services for posts +* mail - private messages +* manage - may be unused in Red, table of accounts that can "su" each other +* notify - notifications +* notify-threads - need to factor this out and use item thread info on notifications +* outq - Red output queue +* pconfig - personal (per channel) configuration storage +* photo - photo storage +* profile - channel profiles +* profile_check - DFRN remote auth use, may be obsolete +* queue - old Friendica queue, obsolete +* register - registrations requiring admin approval +* session - web session storage +* site - site table to find directory peers +* spam - unfinished +* term - item taxonomy (categories, tags, etc.) table +* tokens - OAuth usage +* verify - general purpose verification structure +* xchan - replaces 'gcontact', list of known channels in the universe +* xlink - "friends of friends" linkages derived from poco +* xprof - if this hub is a directory server, contains basic public profile info of everybody in the network +* xtag - if this hub is a directory server, contains tags or interests of everybody in the network + + +How to theme Red - by Olivier Migeot +==================================== + +This is a short documentation on what I found while trying to modify Red's appearance. + +First, you'll need to create a new theme. This is in /view/theme, and I chose to copy 'redbasic' since it's the only available for now. Let's assume I named it . + +Oh, and don't forget to rename the _init function in /php/theme.php to be _init() instead of redbasic_init(). + +At that point, if you need to add javascript or css files, add them to /js or /css, and then "register" them in _init() through head_add_js('file.js') and head_add_css('file.css'). + +Now you'll probably want to alter a template. These can be found in in /view/tpl OR view//tpl. All you should have to do is copy whatever you want to tweak from the first place to your theme's own tpl directory. + + + diff --git a/doc/README.md b/doc/README.md new file mode 100644 index 000000000..3fbfedae7 --- /dev/null +++ b/doc/README.md @@ -0,0 +1,38 @@ +The Red Matrix +============== + +***"Connected Websites"*** + +The modern web is "missing" a few important pieces which would make it much more useful. Many corporations have stepped in with products to supply these missing pieces, but with a loss of freedom and privacy and increased **centralisation**. + +Centralisation is generally considered a bad thing in network design as the loss of one critical node or centralised service could seriously impact the entire network - possibly taking a long time to recover. Recognising this, the original web was based on decentralised services. Over the years, this fundamental design strength has been largely overlooked, as people congregate into centralised services which provide the missing pieces. + +These missing pieces are (in no particular order): + +- Secure and private "spam free" communications + +- Identity and "single-signon" across the entire network + +- Privacy controls and permissions which extend to the entire network + +- Directory services (like a phone book) + + + +The Red Matrix (sometimes referred to as just "Red") is a collection of web servers and services which provides these missing pieces, but within a decentralised identity and messaging framework (known as "Zot"). Red operates as an independent network within the larger internet where all the nodes or servers (we call them "hubs") are able to fully interact with each other in ways that are simply not possible using other services. Additionally the owners of each network hub have the ability to set their own rules with regard to communications privacy and data ownership, because each operates with complete independence. These hubs require only slightly more resources than a blog or content management system, and the software is being designed with the ability to natively incorporate both kinds of functionality, as well as cloud storage. + +![The Red Matrix model](images/red_antiprism.png) + + +Whilst other decentralised communications networks exist, an additional weakness we've found in the implementation of these systems is the binding of network identity with the physical server where it resides; for example if you are "eric@example.website", your identity is often tied permanently to "example.website". We see this as a problem. Many hubs on the Indie Web are run by enthusiasts with varying skill levels and financial resources - and the technology is changing quite rapidly. Often the cost or workload involved in maintaining these services becomes a burden (or hardware fails) and people or entire social communities are left stranded when their server goes offline. Their identity no longer exists. They may have to "start over" building their social circle from scratch when this happens. In some cases communities are unable to recover from this kind of disruption and the entire community dissolves. + +We've been working on decentralisation for several years and have seen this happen time and time again. +Within the Red Matrix, identity is nomadic. It defines you and it belongs to you - and is not locked to a particular network address. You can take your identity, and all your friends and associates with you - to any other hub in the network, at any time. If your hub goes offline for any reason, you have the ability to relocate to any other hub and carry on as if nothing happened. You still have all your friends and associations. + + +The Red Matrix is free and open source distributed under the MIT license. + + +Currently the project is in "Developer Preview". A lot of work remains, but many important bits are functioning. Please connect with one of the developer channels ("Channel One" would be a good choice) if you are interested in helping us out. + +[Please help us change the world by providing a small donation.](http://pledgie.com/campaigns/18417) (Large donations are also graciously accepted). \ No newline at end of file diff --git a/doc/api_functions.md b/doc/api_functions.md new file mode 100644 index 000000000..8c63770e6 --- /dev/null +++ b/doc/api_functions.md @@ -0,0 +1,138 @@ +Red Twitter API +=============== + +The "basic" Red web API is based on the Twitter API, as this provides instant compatibility with a huge number of third-party clients and applications without requiring any code changes on their part. It is also a super-set of the StatusNet version of the Twitter API, as this also has existing wide support. + +Red has a lot more capability that isn't exposed in the Twitter interfaces or where we are forced to "dumb-down" the API functions to work with the primitive Twitter/StatusNet communications and privacy model. So we plan to extend the Twitter API in ways that will allow Red-specific clients to make full use of Red features without being crippled. + +A dedicated Red API is also being developed to work with native data structures and permissions and which do not require translating to different privacy and permission models and storage formats. This will be described in other documents. The prefix for all of the native endpoints is 'api/red'. + +Red provides multiple channels accesible via the same login account. With Red, any API function which requires authentication will accept a parameter &channel={channel_nickname} - and will select that channel and make it current before executing the API command. By default, the default channel associated with an account is selected. + +Red also provides an extended permission model. In the absence of any Red specific API calls to set permissions, they will be set to the default permissions settings which are associated with the current channel. + +Red will probably never be able to support the Twitter 'api/friendships' functions fully because Red is not a social network and has no concept of "friendships" - it only recognises permissions to do stuff (or not do stuff as the case may be). + +Legend: T= Twitter, S= StatusNet, F= Friendica, R= Red, ()=Not yet working, J= JSON only (XML formats deprecated) + + + +Twitter API compatible functions: + +* api/account/verify_credentials T,S,F,R +* api/statuses/update T,S,F,R +* api/users/show T,S,F,R +* api/statuses/home_timeline T,S,F,R +* api/statuses/friends_timeline T,S,F,R +* api/statuses/public_timeline T,S,F,R +* api/statuses/show T,S,F,R +* api/statuses/retweet T,S,F,R +* api/statuses/destroy T,S,F,(R) +* api/statuses/mentions T,S,F,(R) +* api/statuses/replies T,S,F,(R) +* api/statuses/user_timeline T,S,F,(R) +* api/favorites T,S,F,(R) +* api/account/rate_limit_status T,S,F,R +* api/help/test T,S,F,R +* api/statuses/friends T,S,F,R +* api/statuses/followers T,S,F,R +* api/friends/ids T,S,F,R +* api/followers/ids T,S,F,R +* api/direct_messages/new T,S,F,(R) +* api/direct_messages/conversation T,S,F,(R) +* api/direct_messages/all T,S,F,(R) +* api/direct_messages/sent T,S,F,(R) +* api/direct_messages T,S,F,(R) +* api/oauth/request_token T,S,F,R +* api/oauth/access_token T,S,F,R + + +Twitter API functions supported by StatusNet but not currently by Friendica or Red + +* api/favorites T,S +* api/favorites/create T,S +* api/favorites/destroy T,S +* api/statuses/retweets_of_me T,S +* api/friendships/create T,S +* api/friendships/destroy T,S +* api/friendships/exists T,S +* api/friendships/show T,S +* api/account/update_location T,S +* api/account/update_profile_background_image T,S +* api/account/update_profile_image T,S +* api/blocks/create T,S +* api/blocks/destroy T,S + +Twitter API functions not currently supported by StatusNet + +* api/statuses/retweeted_to_me T +* api/statuses/retweeted_by_me T +* api/direct_messages/destroy T +* api/account/end_session T,(R) +* api/account/update_delivery_device T +* api/notifications/follow T +* api/notifications/leave T +* api/blocks/exists T +* api/blocks/blocking T +* api/lists T + + +Statusnet compatible extensions to the Twitter API supported in both Friendica and Red + +* api/statusnet/version S,F,R +* api/statusnet/config S,F,R + +Friendica API extensions to the Twitter API supported in both Friendica and Red + +* api/statuses/mediap F,R + + +Red specific API extensions to the Twitter API not supported in Friendica + +* api/account/logout R +* api/export/basic R,J +* api/friendica/config R +* api/red/config R +* api/friendica/version R +* api/red/version R + +* api/red/channel/export/basic R,J +* api/red/channel/stream R,J (currently post only) +* api/red/albums R,J +* api/red/photos R,J (option album=xxxx) + + +Red proposed API extensions to the Twitter API + +* api/statuses/edit (R),J +* api/statuses/permissions (R),J +* api/statuses/permissions/update (R),J +* api/statuses/ids (R),J # search for existing message_id before importing a foreign post +* api/files/show (R),J +* api/files/destroy (R),J +* api/files/update (R),J +* api/files/permissions (R),J +* api/files/permissions/update (R),J +* api/pages/show (R),J +* api/pages/destroy (R),J +* api/pages/update (R),J +* api/pages/permissions (R),J +* api/pages/permissions/update (R),J +* api/events/show (R),J +* api/events/update (R),J +* api/events/permissions (R),J +* api/events/permissions/update (R),J +* api/events/destroy (R),J +* api/photos/show (R),J +* api/photos/update (R),J +* api/photos/permissions (R),J +* api/photos/permissions/update (R),J +* api/albums/destroy (R),J +* api/albums/show (R),J +* api/albums/update (R),J +* api/albums/permissions (R),J +* api/albums/permissions/update (R),J +* api/albums/destroy (R),J +* api/friends/permissions (R),J + + diff --git a/doc/dev-function-overview.md b/doc/dev-function-overview.md new file mode 100644 index 000000000..445b4823b --- /dev/null +++ b/doc/dev-function-overview.md @@ -0,0 +1,52 @@ +Red development - some useful basic functions +============================================= + + + +* get_account_id() + +Returns numeric account_id if authenticated or 0. It is possible to be authenticated and not connected to a channel. + +* local_user() + +Returns authenticated numeric channel_id if authenticated and connected to a channel or 0. Sometimes referred to as $uid in the code. + +* remote_user() + +Returns authenticated string hash of Red global identifier, if authenticated via remote auth, or an empty string. + +* get_app() + +Returns the global app structure ($a). + +* App::get_observer() + +(App:: is usually assigned to the global $a), so $a->get_observer() or get_app()->get_observer() - returns an xchan structure representing the current viewer if authenticated (locally or remotely). + +* get_config($family,$key), get_pconfig($uid,$family,$key) + +Returns the config setting for $family and $key or false if unset. + +* set_config($family,$key,$value), set_pconfig($uid,$family,$key,$value) + +Sets the value of config setting for $family and $key to $value. Returns $value. The config versions operate on system-wide settings. The pconfig versions get/set the values for a specific integer uid (channel_id). + +* dbesc() + +Always escape strings being used in DB queries. This function returns the escaped string. Integer DB parameters should all be proven integers by wrapping with intval() + +* q($sql,$var1...) + +Perform a DB query with the SQL statement $sql. printf style arguments %s and %d are replaced with variable arguments, which should each be appropriately dbesc() or intval(). SELECT queries return an array of results or false if SQL or DB error. Other queries return true if the command was successful or false if it wasn't. + +* t($string) + +Returns the translated variant of $string for the current language or $string (default 'en' language) if the language is unrecognised or a translated version of the string does not exist. + +* x($var), $x($array,$key) + +Shorthand test to see if variable $var is set and is not empty. Tests vary by type. Returns false if $var or $key is not set. +If variable is set, returns 1 if has 'non-zero' value, otherwise returns 0. -- e.g. x('') or x(0) returns 0; + + + From 5cf5cbd193258936515a487f9259e960a76e4106 Mon Sep 17 00:00:00 2001 From: friendica Date: Mon, 18 Nov 2013 19:20:11 -0800 Subject: [PATCH 034/271] leave off the file extension --- doc/Home.md | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/doc/Home.md b/doc/Home.md index 0034c4aa9..307c24229 100644 --- a/doc/Home.md +++ b/doc/Home.md @@ -20,9 +20,9 @@ Red Matrix Documentation and Resources * [Comanche Page Descriptions](help/Comanche) * [Plugins](help/Plugins) * [Developers](help/Developers) -* [Intro for Developers](help/Intro-for-Developers.md) -* [API functions](help/api_functions.md) -* [Red Functions 101](help/dev-function-overview.md) +* [Intro for Developers](help/Intro-for-Developers) +* [API functions](help/api_functions) +* [Red Functions 101](help/dev-function-overview) * [Code Reference (doxygen generated)](doc/html) * [To-Do list for the Red Documentation Project](help/To-Do) * [To-Do list for Developers](help/To-Do-Code) From bbd69c1e815c8c8be8265b4dc0554ae60e1ca7f6 Mon Sep 17 00:00:00 2001 From: friendica Date: Mon, 18 Nov 2013 19:54:02 -0800 Subject: [PATCH 035/271] drop the queue table which we no longer use --- boot.php | 2 +- install/database.sql | 16 ---------------- install/update.php | 9 ++++++++- 3 files changed, 9 insertions(+), 18 deletions(-) diff --git a/boot.php b/boot.php index 2a214e5c2..df729a52a 100755 --- a/boot.php +++ b/boot.php @@ -45,7 +45,7 @@ define ( 'RED_PLATFORM', 'Red Matrix' ); define ( 'RED_VERSION', trim(file_get_contents('version.inc')) . 'R'); define ( 'ZOT_REVISION', 1 ); -define ( 'DB_UPDATE_VERSION', 1081 ); +define ( 'DB_UPDATE_VERSION', 1082 ); define ( 'EOL', '
    ' . "\r\n" ); define ( 'ATOM_TIME', 'Y-m-d\TH:i:s\Z' ); diff --git a/install/database.sql b/install/database.sql index 3a05c28ec..60e17c900 100644 --- a/install/database.sql +++ b/install/database.sql @@ -775,22 +775,6 @@ CREATE TABLE IF NOT EXISTS `profile_check` ( KEY `expire` (`expire`) ) ENGINE=MyISAM DEFAULT CHARSET=utf8; -CREATE TABLE IF NOT EXISTS `queue` ( - `id` int(11) NOT NULL AUTO_INCREMENT, - `cid` int(11) NOT NULL, - `network` char(32) NOT NULL, - `created` datetime NOT NULL, - `last` datetime NOT NULL, - `content` mediumtext NOT NULL, - `batch` tinyint(1) NOT NULL DEFAULT '0', - PRIMARY KEY (`id`), - KEY `cid` (`cid`), - KEY `network` (`network`), - KEY `created` (`created`), - KEY `last` (`last`), - KEY `batch` (`batch`) -) ENGINE=MyISAM DEFAULT CHARSET=utf8; - CREATE TABLE IF NOT EXISTS `register` ( `id` int(10) unsigned NOT NULL AUTO_INCREMENT, `hash` char(255) NOT NULL, diff --git a/install/update.php b/install/update.php index e1fd8c7a4..f608075fc 100644 --- a/install/update.php +++ b/install/update.php @@ -1,6 +1,6 @@ Date: Mon, 18 Nov 2013 20:10:53 -0800 Subject: [PATCH 036/271] remove the challenge table as well --- boot.php | 2 +- install/database.sql | 10 ---------- install/update.php | 9 ++++++++- 3 files changed, 9 insertions(+), 12 deletions(-) diff --git a/boot.php b/boot.php index df729a52a..ed96ca4c1 100755 --- a/boot.php +++ b/boot.php @@ -45,7 +45,7 @@ define ( 'RED_PLATFORM', 'Red Matrix' ); define ( 'RED_VERSION', trim(file_get_contents('version.inc')) . 'R'); define ( 'ZOT_REVISION', 1 ); -define ( 'DB_UPDATE_VERSION', 1082 ); +define ( 'DB_UPDATE_VERSION', 1083 ); define ( 'EOL', '
    ' . "\r\n" ); define ( 'ATOM_TIME', 'Y-m-d\TH:i:s\Z' ); diff --git a/install/database.sql b/install/database.sql index 60e17c900..5496072a9 100644 --- a/install/database.sql +++ b/install/database.sql @@ -128,16 +128,6 @@ CREATE TABLE IF NOT EXISTS `cache` ( PRIMARY KEY (`k`) ) ENGINE=MyISAM DEFAULT CHARSET=utf8; -CREATE TABLE IF NOT EXISTS `challenge` ( - `id` int(10) unsigned NOT NULL AUTO_INCREMENT, - `challenge` char(255) NOT NULL, - `dfrn-id` char(255) NOT NULL, - `expire` int(11) NOT NULL, - `type` char(255) NOT NULL, - `last_update` char(255) NOT NULL, - PRIMARY KEY (`id`) -) ENGINE=MyISAM DEFAULT CHARSET=utf8; - CREATE TABLE IF NOT EXISTS `channel` ( `channel_id` int(10) unsigned NOT NULL AUTO_INCREMENT, `channel_account_id` int(10) unsigned NOT NULL DEFAULT '0', diff --git a/install/update.php b/install/update.php index f608075fc..31eac2963 100644 --- a/install/update.php +++ b/install/update.php @@ -1,6 +1,6 @@ Date: Wed, 20 Nov 2013 00:25:04 -0800 Subject: [PATCH 037/271] add logo to readme --- README.md | 3 +-- images/rm300.png | Bin 0 -> 7389 bytes version.inc | 2 +- 3 files changed, 2 insertions(+), 3 deletions(-) create mode 100644 images/rm300.png diff --git a/README.md b/README.md index ef1b8c892..8bc45e55e 100644 --- a/README.md +++ b/README.md @@ -1,5 +1,4 @@ -The Red Matrix -============== +![the Red Matrix](images/rm300.png) ***"Connected Websites"*** diff --git a/images/rm300.png b/images/rm300.png new file mode 100644 index 0000000000000000000000000000000000000000..52c234dc2881db5b4184ca89e1411f5dac3ed441 GIT binary patch literal 7389 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 P00000NkvXXu0mjf3uREM literal 0 HcmV?d00001 diff --git a/version.inc b/version.inc index cda99cbcd..ab46c45fd 100644 --- a/version.inc +++ b/version.inc @@ -1 +1 @@ -2013-11-18.501 +2013-11-20.503 From d7ee552c570f4fca760c3d1573f32c005cf73bb8 Mon Sep 17 00:00:00 2001 From: friendica Date: Wed, 20 Nov 2013 15:20:12 -0800 Subject: [PATCH 038/271] Protocol: now set data['alg'] on all encapsulated encrypted packets, so that we can more easily retire 'aes256cbc' once it is no longer viable. --- boot.php | 10 +++------- include/crypto.php | 16 ++++++++++++++++ include/follow.php | 2 +- include/items.php | 26 +++++++++++++------------- include/message.php | 16 ++++++++-------- include/text.php | 4 ++-- include/zot.php | 10 +++++----- mod/editpost.php | 4 ++-- mod/message.php | 2 +- mod/post.php | 4 ++-- mod/probe.php | 2 +- mod/register.php | 8 ++++++++ 12 files changed, 62 insertions(+), 42 deletions(-) diff --git a/boot.php b/boot.php index ed96ca4c1..c84604dc1 100755 --- a/boot.php +++ b/boot.php @@ -803,12 +803,6 @@ class App { $scheme = $this->scheme; -// if((x($this->config,'system')) && (x($this->config['system'],'ssl_policy'))) { -// if(intval($this->config['system']['ssl_policy']) === intval(SSL_POLICY_FULL)) { -// $scheme = 'https'; -// } -// } - $this->baseurl = $scheme . "://" . $this->hostname . ((isset($this->path) && strlen($this->path)) ? '/' . $this->path : '' ); return $this->baseurl; } @@ -995,6 +989,9 @@ class App { )) . $this->page['htmlhead']; } + // The following curl functions will go away once we've converted + // all instances of (fetch|post)_url() to z_(fetch|post)_url() + function set_curl_code($code) { $this->curl_code = $code; } @@ -1186,7 +1183,6 @@ function is_ajax() { // $_SERVER variables, and synchronising the state of installed plugins. - function check_config(&$a) { $build = get_config('system','db_version'); diff --git a/include/crypto.php b/include/crypto.php index a0268ef93..ca01814da 100644 --- a/include/crypto.php +++ b/include/crypto.php @@ -49,6 +49,13 @@ function AES256CBC_decrypt($data,$key,$iv) { str_pad($iv,16,"\0"))); } +function crypto_encapsulate($data,$pubkey,$alg='aes256cbc') { + if($alg === 'aes256cbc') + return aes_encapsulate($data,$pubkey); + +} + + function aes_encapsulate($data,$pubkey) { if(! $pubkey) logger('aes_encapsulate: no key. data: ' . $data); @@ -60,12 +67,21 @@ function aes_encapsulate($data,$pubkey) { $x = debug_backtrace(); logger('aes_encapsulate: RSA failed. ' . print_r($x[0],true)); } + $result['alg'] = 'aes256cbc'; $result['key'] = base64url_encode($k,true); openssl_public_encrypt($iv,$i,$pubkey); $result['iv'] = base64url_encode($i,true); return $result; } +function crypto_unencapsulate($data,$prvkey) { + $alg = ((array_key_exists('alg',$data)) ? $data['alg'] : 'aes256cbc'); + if($alg === 'aes256cbc') + return aes_unencapsulate($data,$prvkey); + +} + + function aes_unencapsulate($data,$prvkey) { openssl_private_decrypt(base64url_decode($data['key']),$k,$prvkey); openssl_private_decrypt(base64url_decode($data['iv']),$i,$prvkey); diff --git a/include/follow.php b/include/follow.php index 10bcddf2b..5cf161304 100644 --- a/include/follow.php +++ b/include/follow.php @@ -96,7 +96,7 @@ function new_contact($uid,$url,$channel,$interactive = false, $confirm = false) $global_perms = get_perms(); if( array_key_exists('permissions',$j) && array_key_exists('data',$j['permissions'])) { - $permissions = aes_unencapsulate(array( + $permissions = crypto_unencapsulate(array( 'data' => $j['permissions']['data'], 'key' => $j['permissions']['key'], 'iv' => $j['permissions']['iv']), diff --git a/include/items.php b/include/items.php index 7e21b9c4d..fabad6a63 100755 --- a/include/items.php +++ b/include/items.php @@ -644,9 +644,9 @@ function get_item_elements($x) { $arr['item_flags'] = $arr['item_flags'] | ITEM_OBSCURED; $key = get_config('system','pubkey'); if($arr['title']) - $arr['title'] = json_encode(aes_encapsulate($arr['title'],$key)); + $arr['title'] = json_encode(crypto_encapsulate($arr['title'],$key)); if($arr['body']) - $arr['body'] = json_encode(aes_encapsulate($arr['body'],$key)); + $arr['body'] = json_encode(crypto_encapsulate($arr['body'],$key)); } @@ -699,9 +699,9 @@ function encode_item($item) { if(array_key_exists('item_flags',$item) && ($item['item_flags'] & ITEM_OBSCURED)) { $key = get_config('system','prvkey'); if($item['title']) - $item['title'] = aes_unencapsulate(json_decode_plus($item['title']),$key); + $item['title'] = crypto_unencapsulate(json_decode_plus($item['title']),$key); if($item['body']) - $item['body'] = aes_unencapsulate(json_decode_plus($item['body']),$key); + $item['body'] = crypto_unencapsulate(json_decode_plus($item['body']),$key); } if($item['item_restrict'] & ITEM_DELETED) { @@ -908,9 +908,9 @@ function encode_mail($item) { if(array_key_exists('mail_flags',$item) && ($item['mail_flags'] & MAIL_OBSCURED)) { $key = get_config('system','prvkey'); if($item['title']) - $item['title'] = aes_unencapsulate(json_decode_plus($item['title']),$key); + $item['title'] = crypto_unencapsulate(json_decode_plus($item['title']),$key); if($item['body']) - $item['body'] = aes_unencapsulate(json_decode_plus($item['body']),$key); + $item['body'] = crypto_unencapsulate(json_decode_plus($item['body']),$key); } $x['message_id'] = $item['mid']; @@ -963,10 +963,10 @@ function get_mail_elements($x) { $arr['mail_flags'] |= MAIL_OBSCURED; $arr['body'] = htmlentities($arr['body'],ENT_COMPAT,'UTF-8',false); if($arr['body']) - $arr['body'] = json_encode(aes_encapsulate($arr['body'],$key)); + $arr['body'] = json_encode(crypto_encapsulate($arr['body'],$key)); $arr['title'] = htmlentities($arr['title'],ENT_COMPAT,'UTF-8',false); if($arr['title']) - $arr['title'] = json_encode(aes_encapsulate($arr['title'],$key)); + $arr['title'] = json_encode(crypto_encapsulate($arr['title'],$key)); if($arr['created'] > datetime_convert()) $arr['created'] = datetime_convert(); @@ -1516,9 +1516,9 @@ function item_store($arr,$allow_exec = false) { $key = get_config('system','pubkey'); $arr['item_flags'] = $arr['item_flags'] | ITEM_OBSCURED; if($arr['title']) - $arr['title'] = json_encode(aes_encapsulate($arr['title'],$key)); + $arr['title'] = json_encode(crypto_encapsulate($arr['title'],$key)); if($arr['body']) - $arr['body'] = json_encode(aes_encapsulate($arr['body'],$key)); + $arr['body'] = json_encode(crypto_encapsulate($arr['body'],$key)); } } @@ -1887,9 +1887,9 @@ function item_store_update($arr,$allow_exec = false) { $key = get_config('system','pubkey'); $arr['item_flags'] = $arr['item_flags'] | ITEM_OBSCURED; if($arr['title']) - $arr['title'] = json_encode(aes_encapsulate($arr['title'],$key)); + $arr['title'] = json_encode(crypto_encapsulate($arr['title'],$key)); if($arr['body']) - $arr['body'] = json_encode(aes_encapsulate($arr['body'],$key)); + $arr['body'] = json_encode(crypto_encapsulate($arr['body'],$key)); } } @@ -2243,7 +2243,7 @@ function tag_deliver($uid,$item_id) { if($item['item_flags'] & ITEM_OBSCURED) { $key = get_config('system','prvkey'); if($item['body']) - $body = aes_unencapsulate(json_decode_plus($item['body']),$key); + $body = crypto_unencapsulate(json_decode_plus($item['body']),$key); } else $body = $item['body']; diff --git a/include/message.php b/include/message.php index 2fca9bef0..a95021583 100644 --- a/include/message.php +++ b/include/message.php @@ -109,9 +109,9 @@ function send_message($uid = 0, $recipient='', $body='', $subject='', $replyto=' $key = get_config('system','pubkey'); if($subject) - $subject = json_encode(aes_encapsulate($subject,$key)); + $subject = json_encode(crypto_encapsulate($subject,$key)); if($body) - $body = json_encode(aes_encapsulate($body,$key)); + $body = json_encode(crypto_encapsulate($body,$key)); @@ -231,9 +231,9 @@ function private_messages_list($uid, $mailbox = '', $start = 0, $numitems = 0) { $key = get_config('system','prvkey'); if($r[$k]['title']) - $r[$k]['title'] = aes_unencapsulate(json_decode_plus($r[$k]['title']),$key); + $r[$k]['title'] = crypto_unencapsulate(json_decode_plus($r[$k]['title']),$key); if($r[$k]['body']) - $r[$k]['body'] = aes_unencapsulate(json_decode_plus($r[$k]['body']),$key); + $r[$k]['body'] = crypto_unencapsulate(json_decode_plus($r[$k]['body']),$key); } } @@ -270,9 +270,9 @@ function private_messages_fetch_message($channel_id, $messageitem_id, $updatesee if($messages[$k]['mail_flags'] & MAIL_OBSCURED) { $key = get_config('system','prvkey'); if($messages[$k]['title']) - $messages[$k]['title'] = aes_unencapsulate(json_decode_plus($messages[$k]['title']),$key); + $messages[$k]['title'] = crypto_unencapsulate(json_decode_plus($messages[$k]['title']),$key); if($messages[$k]['body']) - $messages[$k]['body'] = aes_unencapsulate(json_decode_plus($messages[$k]['body']),$key); + $messages[$k]['body'] = crypto_unencapsulate(json_decode_plus($messages[$k]['body']),$key); } } @@ -358,9 +358,9 @@ function private_messages_fetch_conversation($channel_id, $messageitem_id, $upda if($messages[$k]['mail_flags'] & MAIL_OBSCURED) { $key = get_config('system','prvkey'); if($messages[$k]['title']) - $messages[$k]['title'] = aes_unencapsulate(json_decode_plus($messages[$k]['title']),$key); + $messages[$k]['title'] = crypto_unencapsulate(json_decode_plus($messages[$k]['title']),$key); if($messages[$k]['body']) - $messages[$k]['body'] = aes_unencapsulate(json_decode_plus($messages[$k]['body']),$key); + $messages[$k]['body'] = crypto_unencapsulate(json_decode_plus($messages[$k]['body']),$key); } } diff --git a/include/text.php b/include/text.php index fc70e3509..780992f4a 100755 --- a/include/text.php +++ b/include/text.php @@ -1010,9 +1010,9 @@ function unobscure(&$item) { if(array_key_exists('item_flags',$item) && ($item['item_flags'] & ITEM_OBSCURED)) { $key = get_config('system','prvkey'); if($item['title']) - $item['title'] = aes_unencapsulate(json_decode_plus($item['title']),$key); + $item['title'] = crypto_unencapsulate(json_decode_plus($item['title']),$key); if($item['body']) - $item['body'] = aes_unencapsulate(json_decode_plus($item['body']),$key); + $item['body'] = crypto_unencapsulate(json_decode_plus($item['body']),$key); } } diff --git a/include/zot.php b/include/zot.php index 1191cc221..a4a27ce9c 100644 --- a/include/zot.php +++ b/include/zot.php @@ -82,7 +82,7 @@ function zot_build_packet($channel,$type = 'notify',$recipients = null, $remote_ // Hush-hush ultra top-secret mode if($remote_key) { - $data = aes_encapsulate(json_encode($data),$remote_key); + $data = crypto_encapsulate(json_encode($data),$remote_key); } return json_encode($data); @@ -269,7 +269,7 @@ function zot_refresh($them,$channel = null) { if($channel) { $global_perms = get_perms(); if($j['permissions']['data']) { - $permissions = aes_unencapsulate(array( + $permissions = crypto_unencapsulate(array( 'data' => $j['permissions']['data'], 'key' => $j['permissions']['key'], 'iv' => $j['permissions']['iv']), @@ -823,7 +823,7 @@ function zot_fetch($arr) { 'secret_sig' => base64url_encode(rsa_sign($arr['secret'],get_config('system','prvkey'))) ); - $datatosend = json_encode(aes_encapsulate(json_encode($data),$ret_hub['hubloc_sitekey'])); + $datatosend = json_encode(crypto_encapsulate(json_encode($data),$ret_hub['hubloc_sitekey'])); $fetch = zot_zot($url,$datatosend); $result = zot_import($fetch, $arr['sender']['url']); @@ -849,7 +849,7 @@ function zot_import($arr, $sender_url) { } if(array_key_exists('iv',$data)) { - $data = json_decode(aes_unencapsulate($data,get_config('system','prvkey')),true); + $data = json_decode(crypto_unencapsulate($data,get_config('system','prvkey')),true); } $incoming = $data['pickup']; @@ -861,7 +861,7 @@ function zot_import($arr, $sender_url) { $result = null; if(array_key_exists('iv',$i['notify'])) { - $i['notify'] = json_decode(aes_unencapsulate($i['notify'],get_config('system','prvkey')),true); + $i['notify'] = json_decode(crypto_unencapsulate($i['notify'],get_config('system','prvkey')),true); } logger('zot_import: notify: ' . print_r($i['notify'],true), LOGGER_DATA); diff --git a/mod/editpost.php b/mod/editpost.php index b01afe9b3..f25d6d21d 100644 --- a/mod/editpost.php +++ b/mod/editpost.php @@ -57,9 +57,9 @@ function editpost_content(&$a) { if($itm[0]['item_flags'] & ITEM_OBSCURED) { $key = get_config('system','prvkey'); if($itm[0]['title']) - $itm[0]['title'] = aes_unencapsulate(json_decode_plus($itm[0]['title']),$key); + $itm[0]['title'] = crypto_unencapsulate(json_decode_plus($itm[0]['title']),$key); if($itm[0]['body']) - $itm[0]['body'] = aes_unencapsulate(json_decode_plus($itm[0]['body']),$key); + $itm[0]['body'] = crypto_unencapsulate(json_decode_plus($itm[0]['body']),$key); } $tpl = get_markup_template("jot.tpl"); diff --git a/mod/message.php b/mod/message.php index f992a6fa1..a0382f63d 100644 --- a/mod/message.php +++ b/mod/message.php @@ -79,7 +79,7 @@ function message_post(&$a) { $global_perms = get_perms(); if($j['permissions']['data']) { - $permissions = aes_unencapsulate($j['permissions'],$channel['channel_prvkey']); + $permissions = crypto_unencapsulate($j['permissions'],$channel['channel_prvkey']); if($permissions) $permissions = json_decode($permissions); logger('decrypted permissions: ' . print_r($permissions,true), LOGGER_DATA); diff --git a/mod/post.php b/mod/post.php index 2778621d3..64e08e632 100644 --- a/mod/post.php +++ b/mod/post.php @@ -172,7 +172,7 @@ function post_post(&$a) { */ if(array_key_exists('iv',$data)) { - $data = aes_unencapsulate($data,get_config('system','prvkey')); + $data = crypto_unencapsulate($data,get_config('system','prvkey')); logger('mod_zot: decrypt1: ' . $data, LOGGER_DATA); // susceptible to Bleichenbacher's attack @@ -312,7 +312,7 @@ function post_post(&$a) { ); } } - $encrypted = aes_encapsulate(json_encode($ret),$sitekey); + $encrypted = crypto_encapsulate(json_encode($ret),$sitekey); json_return_and_die($encrypted); /** pickup: end */ diff --git a/mod/probe.php b/mod/probe.php index bd792d52e..e2dd4ef77 100644 --- a/mod/probe.php +++ b/mod/probe.php @@ -26,7 +26,7 @@ function probe_content(&$a) { $j = json_decode($res['body'],true); } if($j && $j['permissions'] && $j['permissions']['iv']) - $j['permissions'] = json_decode(aes_unencapsulate($j['permissions'],$channel['channel_prvkey']),true); + $j['permissions'] = json_decode(crypto_unencapsulate($j['permissions'],$channel['channel_prvkey']),true); $o .= str_replace("\n",'
    ',print_r($j,true)); $o .= ''; } diff --git a/mod/register.php b/mod/register.php index bc1603f25..2040732ff 100644 --- a/mod/register.php +++ b/mod/register.php @@ -7,6 +7,14 @@ function register_init(&$a) { $result = null; $cmd = ((argc() > 1) ? argv(1) : ''); + // Provide a stored request for somebody desiring a connection + // when they first need to register someplace. Once they've + // created a channel, we'll try to revive the connection request + // and process it. + + if($_REQUEST['connect']) + $_SESSION['connect'] = $_REQUEST['connect']; + switch($cmd) { case 'invite_check.json': $result = check_account_invite($_REQUEST['invite_code']); From 5315c88621719c93235f4d2d8a93eed29d7ae851 Mon Sep 17 00:00:00 2001 From: friendica Date: Wed, 20 Nov 2013 16:20:32 -0800 Subject: [PATCH 039/271] webpage edit - losing the ability to pass unfiltered html and perhaps some php due to unsetting uid too early in item_store_update() --- include/items.php | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) diff --git a/include/items.php b/include/items.php index fabad6a63..9fbd3fd8a 100755 --- a/include/items.php +++ b/include/items.php @@ -1844,8 +1844,6 @@ function item_store_update($arr,$allow_exec = false) { $arr['item_flags'] = intval($arr['item_flags']) | $orig[0]['item_flags']; $arr['item_restrict'] = intval($arr['item_restrict']) | $orig[0]['item_restrict']; - unset($arr['id']); - unset($arr['uid']); if(array_key_exists('edit',$arr)) unset($arr['edit']); @@ -1911,7 +1909,8 @@ function item_store_update($arr,$allow_exec = false) { } - + unset($arr['id']); + unset($arr['uid']); unset($arr['aid']); unset($arr['mid']); unset($arr['parent']); From eb3d8e2cd7e2bd51035918b4106d1c29b6605505 Mon Sep 17 00:00:00 2001 From: friendica Date: Wed, 20 Nov 2013 16:28:17 -0800 Subject: [PATCH 040/271] provide a page template "none" which lets a webpage take over the entire page. Everything. The application is essentially bypassed. You'll need doctype and html and head and body tags in your content as none of them are supplied. There are no page regions. Nada. We should probably restrict this to those who have code exec in their account_roles but other folks won't be able to do very much useful with it anyway as their HTML is filtered. --- view/php/none.php | 1 + 1 file changed, 1 insertion(+) create mode 100644 view/php/none.php diff --git a/view/php/none.php b/view/php/none.php new file mode 100644 index 000000000..51d0e83dc --- /dev/null +++ b/view/php/none.php @@ -0,0 +1 @@ + From 4791b2fd9c6dabc9ebb1f42a4993185d85493261 Mon Sep 17 00:00:00 2001 From: friendica Date: Wed, 20 Nov 2013 21:09:13 -0800 Subject: [PATCH 041/271] add aid to notifiy table which we may need to supress duplicate notify emails across your channels also try to handle the wretched mess of broken and duplicated hublocs that fred.cepheus.uberspace.de typically reports --- boot.php | 2 +- include/enotify.php | 8 +++++--- include/notifier.php | 12 ++++++++---- include/zot.php | 16 +++++++++++++--- install/database.sql | 4 +++- install/update.php | 11 ++++++++++- 6 files changed, 40 insertions(+), 13 deletions(-) diff --git a/boot.php b/boot.php index c84604dc1..3fabff55a 100755 --- a/boot.php +++ b/boot.php @@ -45,7 +45,7 @@ define ( 'RED_PLATFORM', 'Red Matrix' ); define ( 'RED_VERSION', trim(file_get_contents('version.inc')) . 'R'); define ( 'ZOT_REVISION', 1 ); -define ( 'DB_UPDATE_VERSION', 1083 ); +define ( 'DB_UPDATE_VERSION', 1084 ); define ( 'EOL', '
    ' . "\r\n" ); define ( 'ATOM_TIME', 'Y-m-d\TH:i:s\Z' ); diff --git a/include/enotify.php b/include/enotify.php index 67fe748d1..91b37a913 100644 --- a/include/enotify.php +++ b/include/enotify.php @@ -322,6 +322,7 @@ function notification($params) { $datarray['url'] = $sender['xchan_url']; $datarray['photo'] = $sender['xchan_photo_s']; $datarray['date'] = datetime_convert(); + $datarray['aid'] = $recip['channel_account_id']; $datarray['uid'] = $recip['channel_id']; $datarray['link'] = $itemlink; $datarray['parent'] = $parent_id; @@ -340,13 +341,14 @@ function notification($params) { // create notification entry in DB - $r = q("insert into notify (hash,name,url,photo,date,uid,link,parent,type,verb,otype) - values('%s','%s','%s','%s','%s',%d,'%s',%d,%d,'%s','%s')", + $r = q("insert into notify (hash,name,url,photo,date,aid,uid,link,parent,type,verb,otype) + values('%s','%s','%s','%s','%s',%d,%d,'%s',%d,%d,'%s','%s')", dbesc($datarray['hash']), dbesc($datarray['name']), dbesc($datarray['url']), dbesc($datarray['photo']), dbesc($datarray['date']), + intval($datarray['aid']), intval($datarray['uid']), dbesc($datarray['link']), intval($datarray['parent']), @@ -559,7 +561,7 @@ class enotify { // send the message $res = mail( - $params['toEmail'], // send to address + $params['toEmail'], // send to address $messageSubject, // subject $multipartMessageBody, // message body $messageHeader // message headers diff --git a/include/notifier.php b/include/notifier.php index 1407be4b3..2ca3531d6 100644 --- a/include/notifier.php +++ b/include/notifier.php @@ -408,9 +408,9 @@ function notifier_run($argv, $argc){ // for public posts always include our own hub - $sql_extra = (($private) ? "" : " or hubloc_url = '" . z_root() . "' "); + $sql_extra = (($private) ? "" : " or hubloc_url = '" . dbesc(z_root()) . "' "); - $r = q("select distinct hubloc_sitekey, hubloc_flags, hubloc_callback, hubloc_host from hubloc + $r = q("select hubloc_sitekey, hubloc_flags, hubloc_callback, hubloc_host from hubloc where hubloc_hash in (" . implode(',',$recipients) . ") $sql_extra group by hubloc_sitekey"); if(! $r) { logger('notifier: no hubs'); @@ -419,10 +419,14 @@ function notifier_run($argv, $argc){ $hubs = $r; $hublist = array(); + $keys = array(); + foreach($hubs as $hub) { - // don't try to deliver to deleted hublocs - if(! ($hub['hubloc_flags'] & HUBLOC_FLAGS_DELETED)) { + // don't try to deliver to deleted hublocs - and inexplicably SQL "distinct" and "group by" + // both return records with duplicate keys in rare circumstances + if((! ($hub['hubloc_flags'] & HUBLOC_FLAGS_DELETED)) && (! in_array($hub['hubloc_sitekey'],$keys))) { $hublist[] = $hub['hubloc_host']; + $keys[] = $hub['hubloc_sitekey']; } } diff --git a/include/zot.php b/include/zot.php index a4a27ce9c..9906b7ec8 100644 --- a/include/zot.php +++ b/include/zot.php @@ -584,7 +584,7 @@ function import_xchan($arr,$ud_flags = 1) { if($arr['locations']) { - $xisting = q("select hubloc_id, hubloc_url from hubloc where hubloc_hash = '%s'", + $xisting = q("select hubloc_id, hubloc_url, hubloc_sitekey from hubloc where hubloc_hash = '%s'", dbesc($xchan_hash) ); @@ -596,14 +596,14 @@ function import_xchan($arr,$ud_flags = 1) { } for($x = 0; $x < count($xisting); $x ++) { - if($xisting[$x]['hubloc_url'] == $location['url']) { + if(($xisting[$x]['hubloc_url'] === $location['url']) && ($xisting[$x]['hubloc_sitekey'] === $location['sitekey'])) { $xisting[$x]['updated'] = true; } } // match as many fields as possible in case anything at all changed. - $r = q("select * from hubloc where hubloc_hash = '%s' and hubloc_guid = '%s' and hubloc_guid_sig = '%s' and hubloc_url = '%s' and hubloc_url_sig = '%s' and hubloc_host = '%s' and hubloc_addr = '%s' and hubloc_callback = '%s' and hubloc_sitekey = '%s' limit 1", + $r = q("select * from hubloc where hubloc_hash = '%s' and hubloc_guid = '%s' and hubloc_guid_sig = '%s' and hubloc_url = '%s' and hubloc_url_sig = '%s' and hubloc_host = '%s' and hubloc_addr = '%s' and hubloc_callback = '%s' and hubloc_sitekey = '%s' ", dbesc($xchan_hash), dbesc($arr['guid']), dbesc($arr['guid_sig']), @@ -624,6 +624,16 @@ function import_xchan($arr,$ud_flags = 1) { intval($r[0]['hubloc_id']) ); } + + // Remove pure duplicates + if($count($r) > 1) { + for($h = 1; $h < count($r); $h ++) { + q("delete from hubloc where hubloc_id = %d limit 1", + intval($r[$h]['hubloc_id']) + ); + } + } + if((($r[0]['hubloc_flags'] & HUBLOC_FLAGS_PRIMARY) && (! $location['primary'])) || ((! ($r[0]['hubloc_flags'] & HUBLOC_FLAGS_PRIMARY)) && ($location['primary']))) { $r = q("update hubloc set hubloc_flags = (hubloc_flags ^ %d), hubloc_updated = '%s' where hubloc_id = %d limit 1", diff --git a/install/database.sql b/install/database.sql index 5496072a9..ef79862c3 100644 --- a/install/database.sql +++ b/install/database.sql @@ -563,6 +563,7 @@ CREATE TABLE IF NOT EXISTS `notify` ( `photo` char(255) NOT NULL, `date` datetime NOT NULL, `msg` mediumtext NOT NULL, + `aid` int(11) NOT NULL, `uid` int(11) NOT NULL, `link` char(255) NOT NULL, `parent` int(11) NOT NULL, @@ -578,7 +579,8 @@ CREATE TABLE IF NOT EXISTS `notify` ( KEY `hash` (`hash`), KEY `parent` (`parent`), KEY `link` (`link`), - KEY `otype` (`otype`) + KEY `otype` (`otype`), + KEY `aid` (`aid`) ) ENGINE=MyISAM DEFAULT CHARSET=utf8; CREATE TABLE IF NOT EXISTS `obj` ( diff --git a/install/update.php b/install/update.php index 31eac2963..f498ec042 100644 --- a/install/update.php +++ b/install/update.php @@ -1,6 +1,6 @@ Date: Thu, 21 Nov 2013 15:18:18 +0100 Subject: [PATCH 042/271] not needed anymore with new defaults --- view/theme/redbasic/css/style.css | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/view/theme/redbasic/css/style.css b/view/theme/redbasic/css/style.css index d3779152d..f5e99bdf7 100644 --- a/view/theme/redbasic/css/style.css +++ b/view/theme/redbasic/css/style.css @@ -2067,7 +2067,6 @@ a.mail-list-link { #nav-search-text { height: 20px; padding: 0px 5px 0px 5px; - font-size: 0.9em; border-radius: 10px; border: none; background-color: $search_background; @@ -3569,4 +3568,4 @@ text-decoration: none; .admin-icons { color: $toolicon_colour; margin-right: 10px; -} \ No newline at end of file +} From 35c465d4b7459b4cce40f50c53515b9061b484cd Mon Sep 17 00:00:00 2001 From: Thomas Willingham Date: Thu, 21 Nov 2013 19:41:09 +0000 Subject: [PATCH 043/271] Document schemas --- doc/Home.md | 1 + doc/Schema-development.md | 79 +++++++++++++++++++++++++++++++++++++++ 2 files changed, 80 insertions(+) create mode 100644 doc/Schema-development.md diff --git a/doc/Home.md b/doc/Home.md index 307c24229..4a37e6c82 100644 --- a/doc/Home.md +++ b/doc/Home.md @@ -19,6 +19,7 @@ Red Matrix Documentation and Resources * [Install](help/Install) * [Comanche Page Descriptions](help/Comanche) * [Plugins](help/Plugins) +* [Schemas](help/Schema-development) * [Developers](help/Developers) * [Intro for Developers](help/Intro-for-Developers) * [API functions](help/api_functions) diff --git a/doc/Schema-development.md b/doc/Schema-development.md new file mode 100644 index 000000000..f3e6b97f4 --- /dev/null +++ b/doc/Schema-development.md @@ -0,0 +1,79 @@ +Red development - a guide to the schema system +============================================== + + +A schema, in a nutshell, is a collection of settings for a bunch of variables to define +certain elements of a theme. A schema is loaded as though it were part of config.php +and has access to all the same information. Importantly, this means it is identity aware, +and can be used to do some interesting things. One could, for example, restrict options +by service class, or present different options to different users. + +By default, we filter only by whether or not expert mode is enabled. If expert mode is +enabled, all options are presented to the user. If it is not, only scheme, background +image, font face, and iconset are available as choices. + +A schema is loaded *after* the user settings. Therefore, to allow a user to overwrite a +particular aspect of a schmea you would use the following syntax: + + if (! $foo) + $foo = 'bar'; + +However, there are circumstances - particularly with positional elements - where it +may be desirable (or necessary) to override a users settings. In this case, the syntax +is even simpler: + + $foo = 'bar'; + +Users will not thank you for this, however, so only use it when it is required. + +If no user options are set, and no schema is selected, we will first try to load a schema +with the file name "default.php". This file should never be included with a theme. If it +is, merge conflicts will occur as people update their code. Rather, this should be defined +by administrators on a site by site basis. + +The canonical default schema is darkness.php. Any bugs should be tested with this schema +first, in order to determine whether we're dealing with a theme bug or a schema bug. + +You schema does not need to - and should not - contain all of these values. Only the values +that differ from the defaults should be listed. This gives you some very powerful options +with very few lines of code. + +Note the options available differ with each theme. The options available with the Redbasic +theme are as follows: + +* nav_colour + The colour of the navigation bar. Options are red, black and silver. Alternatively, + one can set $nav_bg_1, $nav_bg_2, $nav_bg_3 and $nav_bg_4 to provide gradient and + hover effects. +* banner_colour + The font colour of the banner element. Accepts an RGB or Hex value. +* bgcolour + Set the body background colour. Accepts an RGB or Hex value. +* background_image + Sets a background image. Accepts a URL or path. +* item_colour + Set the background colour of items. Accepts an RGB or Hex value. +* item_opacity + Set the opacity of items. Accepts a value from 0.01 to 1 +* toolicon_colour + Set the colour of tool icons. Accepts an RGB or Hex value. +* toolicon_activecolour + Set the colour of active or hovered icon tools. +* font_size + Set the size of fonts in items and posts. Accepts px or em. +* body_font_size + Sets the size of fonts at the body level. Accepts px or em. +* font_colour + Sets the font colour. Accepts an RGB or Hex value. +* radius + Set the radius of corners. Accepts a numeral, and is always in px. +* shadow + Set the size of shadows shown with inline images. Accepts a numerical + value. Note shadows are not applied to smileys. +* converse_width + Set the maximum width of conversations. Accepts px, or %. +* nav_min_opacity +* top_photo +* reply_photo +* sloppy_photos + Determins whether photos are "sloppy" or aligned. Set or unset (1 or '') From b170d8047153a9c9f0f0f16d39e0ecb45d17b0b6 Mon Sep 17 00:00:00 2001 From: Thomas Willingham Date: Thu, 21 Nov 2013 19:42:04 +0000 Subject: [PATCH 044/271] Remove telltale signs the doco was mostly stolen from APW --- doc/Schema-development.md | 3 --- 1 file changed, 3 deletions(-) diff --git a/doc/Schema-development.md b/doc/Schema-development.md index f3e6b97f4..415c68efa 100644 --- a/doc/Schema-development.md +++ b/doc/Schema-development.md @@ -31,9 +31,6 @@ with the file name "default.php". This file should never be included with a the is, merge conflicts will occur as people update their code. Rather, this should be defined by administrators on a site by site basis. -The canonical default schema is darkness.php. Any bugs should be tested with this schema -first, in order to determine whether we're dealing with a theme bug or a schema bug. - You schema does not need to - and should not - contain all of these values. Only the values that differ from the defaults should be listed. This gives you some very powerful options with very few lines of code. From 6ddb57e0da54b291504638247a77889f5b631caa Mon Sep 17 00:00:00 2001 From: friendica Date: Thu, 21 Nov 2013 14:19:31 -0800 Subject: [PATCH 045/271] mod/help - load Site.md (if it exists) before Home.md. Site.md will typically provide local resources. Site.md can either include the complete contents of Help.md or link to it, as you choose. --- mod/help.php | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/mod/help.php b/mod/help.php index 770a0a8af..10061b851 100644 --- a/mod/help.php +++ b/mod/help.php @@ -25,9 +25,13 @@ function help_content(&$a) { $text = ''; - if($a->argc > 1) { + if(argc() > 1) { $text = load_doc_file('doc/' . $a->argv[1] . '.md'); - $a->page['title'] = t('Help:') . ' ' . str_replace('-',' ',notags($a->argv[1])); + $a->page['title'] = t('Help:') . ' ' . str_replace('-',' ',notags(argv(1))); + } + if(! $text) { + $text = load_doc_file('doc/Site.md'); + $a->page['title'] = t('Help'); } if(! $text) { $text = load_doc_file('doc/Home.md'); From 7f4e4ab688be440a3efae2e0b0af7b9bbc6b7053 Mon Sep 17 00:00:00 2001 From: friendica Date: Thu, 21 Nov 2013 14:41:31 -0800 Subject: [PATCH 046/271] Add #include mechanism for help pages - see the top of mod/help.php for details --- mod/help.php | 24 ++++++++++++++++++++++++ 1 file changed, 24 insertions(+) diff --git a/mod/help.php b/mod/help.php index 10061b851..e78f9e61c 100644 --- a/mod/help.php +++ b/mod/help.php @@ -1,5 +1,16 @@ language; @@ -45,7 +56,20 @@ function help_content(&$a) { '$message' => t('Page not found.' ) )); } + + $text = preg_replace_callback("/#include (.*?)\;/ism", 'preg_callback_help_include', $text); + return Markdown($text); } + + +function preg_callback_help_include($matches) { + print_r($matches); + + if($matches[1]) + return str_replace($matches[0],load_doc_file($matches[1]),$matches[0]); + +} + From 8f236771c675ba18fa053182c4d25199e3f98277 Mon Sep 17 00:00:00 2001 From: friendica Date: Thu, 21 Nov 2013 14:42:48 -0800 Subject: [PATCH 047/271] mark hublocs with incorrect sitekeys deleted --- mod/post.php | 14 ++++++++++++++ version.inc | 2 +- 2 files changed, 15 insertions(+), 1 deletion(-) diff --git a/mod/post.php b/mod/post.php index 64e08e632..0ce58ec9f 100644 --- a/mod/post.php +++ b/mod/post.php @@ -265,6 +265,7 @@ function post_post(&$a) { if((! $forgery) && (! $secret_fail)) break; } + if($forgery) { $ret['message'] = 'possible site forgery'; logger('mod_zot: pickup: ' . $ret['message']); @@ -312,6 +313,7 @@ function post_post(&$a) { ); } } + $encrypted = crypto_encapsulate(json_encode($ret),$sitekey); json_return_and_die($encrypted); @@ -355,6 +357,18 @@ function post_post(&$a) { intval($hub['hubloc_id']) ); + /** + * This hub has now been proven to be valid. + * Any hub with the same URL and a different sitekey cannot be valid. + * Get rid of them (mark them deleted). There's a good chance they were re-installs. + * + */ + + q("update hubloc set hubloc_flags = ( hubloc_flags | %d ) where hubloc_url = '%s' and hubloc_sitekey != '%s' ", + intval(HUBLOC_FLAGS_DELETED), + dbesc($hub['hubloc_url']), + dbesc($hub['hubloc_sitekey']) + ); // TODO: check which hub is primary and take action if mismatched diff --git a/version.inc b/version.inc index ab46c45fd..3e026cef2 100644 --- a/version.inc +++ b/version.inc @@ -1 +1 @@ -2013-11-20.503 +2013-11-21.504 From f896819c781807612318ad389ea5fe655926cc2a Mon Sep 17 00:00:00 2001 From: friendica Date: Thu, 21 Nov 2013 14:51:12 -0800 Subject: [PATCH 048/271] There was one small typo - and I'm trying with great difficulty not to use the word "user" to refer to site members - especially in public documentation. In dev forums is another matter. It does exist in function names and the string "username" isn't considered derogatory, but most other times it's considered derogatory to site members. Channel is often another acceptable replacement. --- doc/Schema-development.md | 14 +++++++------- 1 file changed, 7 insertions(+), 7 deletions(-) diff --git a/doc/Schema-development.md b/doc/Schema-development.md index 415c68efa..481792fcc 100644 --- a/doc/Schema-development.md +++ b/doc/Schema-development.md @@ -6,27 +6,27 @@ A schema, in a nutshell, is a collection of settings for a bunch of variables to certain elements of a theme. A schema is loaded as though it were part of config.php and has access to all the same information. Importantly, this means it is identity aware, and can be used to do some interesting things. One could, for example, restrict options -by service class, or present different options to different users. +by service class, or present different options to different members. By default, we filter only by whether or not expert mode is enabled. If expert mode is -enabled, all options are presented to the user. If it is not, only scheme, background +enabled, all options are presented to the member. If it is not, only scheme, background image, font face, and iconset are available as choices. -A schema is loaded *after* the user settings. Therefore, to allow a user to overwrite a -particular aspect of a schmea you would use the following syntax: +A schema is loaded *after* the member's personal settings. Therefore, to allow a member +to overwrite a particular aspect of a schema you would use the following syntax: if (! $foo) $foo = 'bar'; However, there are circumstances - particularly with positional elements - where it -may be desirable (or necessary) to override a users settings. In this case, the syntax +may be desirable (or necessary) to override a member's settings. In this case, the syntax is even simpler: $foo = 'bar'; -Users will not thank you for this, however, so only use it when it is required. +Members will not thank you for this, however, so only use it when it is required. -If no user options are set, and no schema is selected, we will first try to load a schema +If no personal options are set, and no schema is selected, we will first try to load a schema with the file name "default.php". This file should never be included with a theme. If it is, merge conflicts will occur as people update their code. Rather, this should be defined by administrators on a site by site basis. From be8a7e2de6326ea9fb16bebbafeaeaf6fa52a767 Mon Sep 17 00:00:00 2001 From: friendica Date: Thu, 21 Nov 2013 15:58:42 -0800 Subject: [PATCH 049/271] this is necessary for any possibility of a federated future. --- include/notifier.php | 17 ++++++++++++++++- 1 file changed, 16 insertions(+), 1 deletion(-) diff --git a/include/notifier.php b/include/notifier.php index 2ca3531d6..0868ac77e 100644 --- a/include/notifier.php +++ b/include/notifier.php @@ -382,12 +382,27 @@ function notifier_run($argv, $argc){ $env_recips = (($private) ? array() : null); - $details = q("select xchan_hash, xchan_addr, xchan_guid, xchan_guid_sig from xchan where xchan_hash in (" . implode(',',$recipients) . ")"); + $details = q("select xchan_hash, xchan_instance_url, xchan_addr, xchan_guid, xchan_guid_sig from xchan where xchan_hash in (" . implode(',',$recipients) . ")"); $recip_list = array(); if($details) { foreach($details as $d) { + + // If the recipient is federated from a traditional network they won't be able to + // handle nomadic identity. If we're publishing from a site that they aren't + // directly connected with, ignore them. + + // FIXME: make sure we run through a notifier loop on the hub they're connected + // with if this post comes in from a different hub - so that we will deliver to them. + + // On the down side, these channels will stop working if the hub they connected with + // goes down permanently, as they are (doh) not nomadic. + + if(($d['xchan_instance_url']) && ($d['xchan_instance_url'] != z_root())) + continue; + + $recip_list[] = $d['xchan_addr'] . ' (' . $d['xchan_hash'] . ')'; if($private) $env_recips[] = array('guid' => $d['xchan_guid'],'guid_sig' => $d['xchan_guid_sig']); From 3e0ac769aad2ae15934c32eef2f4992bde73e178 Mon Sep 17 00:00:00 2001 From: friendica Date: Thu, 21 Nov 2013 17:23:14 -0800 Subject: [PATCH 050/271] white screen --- include/group.php | 6 +++--- include/zot.php | 2 +- mod/settings.php | 15 ++++++++------- 3 files changed, 12 insertions(+), 11 deletions(-) diff --git a/include/group.php b/include/group.php index eece07983..d339301b4 100644 --- a/include/group.php +++ b/include/group.php @@ -202,7 +202,7 @@ function group_get_members($gid) { return $ret; } -function mini_group_select($uid,$gid = 0) { +function mini_group_select($uid,$group = '') { $grps = array(); $o = ''; @@ -210,10 +210,10 @@ function mini_group_select($uid,$gid = 0) { $r = q("SELECT * FROM `group` WHERE `deleted` = 0 AND `uid` = %d ORDER BY `name` ASC", intval($uid) ); - $grps[] = array('name' => '', 'id' => '0', 'selected' => ''); + $grps[] = array('name' => '', 'hash' => '0', 'selected' => ''); if(count($r)) { foreach($r as $rr) { - $grps[] = array('name' => $rr['name'], 'id' => $rr['id'], 'selected' => (($gid == $rr['id']) ? 'true' : '')); + $grps[] = array('name' => $rr['name'], 'id' => $rr['hash'], 'selected' => (($group == $rr['hash']) ? 'true' : '')); } } diff --git a/include/zot.php b/include/zot.php index 9906b7ec8..65f3b606f 100644 --- a/include/zot.php +++ b/include/zot.php @@ -626,7 +626,7 @@ function import_xchan($arr,$ud_flags = 1) { } // Remove pure duplicates - if($count($r) > 1) { + if(count($r) > 1) { for($h = 1; $h < count($r); $h ++) { q("delete from hubloc where hubloc_id = %d limit 1", intval($r[$h]['hubloc_id']) diff --git a/mod/settings.php b/mod/settings.php index ba7540b91..af9113202 100644 --- a/mod/settings.php +++ b/mod/settings.php @@ -357,7 +357,7 @@ function settings_post(&$a) { $openid = ((x($_POST,'openid_url')) ? notags(trim($_POST['openid_url'])) : ''); $maxreq = ((x($_POST,'maxreq')) ? intval($_POST['maxreq']) : 0); $expire = ((x($_POST,'expire')) ? intval($_POST['expire']) : 0); - $def_gid = ((x($_POST,'group-selection')) ? intval($_POST['group-selection']) : 0); + $def_group = ((x($_POST,'group-selection')) ? notags(trim($_POST['group-selection'])) : ''); $expire_items = ((x($_POST,'expire_items')) ? intval($_POST['expire_items']) : 0); @@ -506,9 +506,9 @@ function settings_post(&$a) { if($page_flags == PAGE_PRVGROUP) { $hidewall = 1; if((! $str_contact_allow) && (! $str_group_allow) && (! $str_contact_deny) && (! $str_group_deny)) { - if($def_gid) { + if($def_group) { info( t('Private forum has no privacy permissions. Using default privacy group.'). EOL); - $str_group_allow = '<' . $def_gid . '>'; + $str_group_allow = '<' . $def_group . '>'; } else { notice( t('Private forum has no privacy permissions and no default privacy group.') . EOL); @@ -519,7 +519,7 @@ function settings_post(&$a) { */ /* - $r = q("UPDATE `user` SET `username` = '%s', `email` = '%s', `openid` = '%s', `timezone` = '%s', `allow_cid` = '%s', `allow_gid` = '%s', `deny_cid` = '%s', `deny_gid` = '%s', `notify-flags` = %d, `page-flags` = %d, `default-location` = '%s', `allow_location` = %d, `maxreq` = %d, `expire` = %d, `openidserver` = '%s', `def_gid` = %d, `blockwall` = %d, `hidewall` = %d, `blocktags` = %d, `unkmail` = %d, `cntunkmail` = %d WHERE `uid` = %d LIMIT 1", + $r = q("UPDATE `user` SET `username` = '%s', `email` = '%s', `openid` = '%s', `timezone` = '%s', `allow_cid` = '%s', `allow_gid` = '%s', `deny_cid` = '%s', `deny_gid` = '%s', `notify-flags` = %d, `page-flags` = %d, `default-location` = '%s', `allow_location` = %d, `maxreq` = %d, `expire` = %d, `openidserver` = '%s', `def_group` = %d, `blockwall` = %d, `hidewall` = %d, `blocktags` = %d, `unkmail` = %d, `cntunkmail` = %d WHERE `uid` = %d LIMIT 1", dbesc($username), dbesc($email), dbesc($openid), @@ -535,7 +535,7 @@ function settings_post(&$a) { intval($maxreq), intval($expire), dbesc($openidserver), - intval($def_gid), + intval($def_group), intval($blockwall), intval($hidewall), intval($blocktags), @@ -545,7 +545,7 @@ function settings_post(&$a) { ); */ - $r = q("update channel set channel_name = '%s', channel_pageflags = %d, channel_timezone = '%s', channel_location = '%s', channel_notifyflags = %d, channel_max_anon_mail = %d, channel_max_friend_req = %d, channel_expire_days = %d, channel_r_stream = %d, channel_r_profile = %d, channel_r_photos = %d, channel_r_abook = %d, channel_w_stream = %d, channel_w_wall = %d, channel_w_tagwall = %d, channel_w_comment = %d, channel_w_mail = %d, channel_w_photos = %d, channel_w_chat = %d, channel_a_delegate = %d, channel_r_storage = %d, channel_w_storage = %d, channel_r_pages = %d, channel_w_pages = %d, channel_a_republish = %d where channel_id = %d limit 1", + $r = q("update channel set channel_name = '%s', channel_pageflags = %d, channel_timezone = '%s', channel_location = '%s', channel_notifyflags = %d, channel_max_anon_mail = %d, channel_max_friend_req = %d, channel_expire_days = %d, channel_default_group = '%s', channel_r_stream = %d, channel_r_profile = %d, channel_r_photos = %d, channel_r_abook = %d, channel_w_stream = %d, channel_w_wall = %d, channel_w_tagwall = %d, channel_w_comment = %d, channel_w_mail = %d, channel_w_photos = %d, channel_w_chat = %d, channel_a_delegate = %d, channel_r_storage = %d, channel_w_storage = %d, channel_r_pages = %d, channel_w_pages = %d, channel_a_republish = %d where channel_id = %d limit 1", dbesc($username), intval($pageflags), dbesc($timezone), @@ -554,6 +554,7 @@ function settings_post(&$a) { intval($unkmail), intval($maxreq), intval($expire), + dbesc($def_group), intval($arr['channel_r_stream']), intval($arr['channel_r_profile']), intval($arr['channel_r_photos']), @@ -1045,7 +1046,7 @@ function settings_content(&$a) { require_once('include/group.php'); - $group_select = mini_group_select(local_user(),$a->user['def_gid']); + $group_select = mini_group_select(local_user(),$channel['channel_default_group']); $o .= replace_macros($stpl,array( '$ptitle' => t('Channel Settings'), From 8cdbd0e2a65cac16a5bad0fca1c3e2e5ec91e348 Mon Sep 17 00:00:00 2001 From: friendica Date: Thu, 21 Nov 2013 17:31:37 -0800 Subject: [PATCH 051/271] make default group for new connections work --- mod/connections.php | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/mod/connections.php b/mod/connections.php index a40a8fa90..ba5e8920e 100644 --- a/mod/connections.php +++ b/mod/connections.php @@ -129,6 +129,15 @@ function connections_post(&$a) { } if($new_friend) { + $channel = $a->get_channel(); + $default_group = $channel['channel_default_group']; + if($default_group) { + require_once('include/group.php'); + $g = group_rec_byhash(local_user(),$default_group); + if($g) + group_add_member(local_user(),'',$a->data['abook_xchan'],$g['id']); + } + // Check if settings permit ("post new friend activity" is allowed, and // friends in general or this friend in particular aren't hidden) // and send out a new friend activity From f2435ed4cdee6e20a92f2acfd60399cb92b2c1e3 Mon Sep 17 00:00:00 2001 From: friendica Date: Thu, 21 Nov 2013 17:49:14 -0800 Subject: [PATCH 052/271] follow and accept_follow hooks --- include/follow.php | 4 ++++ mod/connections.php | 8 ++++++++ 2 files changed, 12 insertions(+) diff --git a/include/follow.php b/include/follow.php index 5cf161304..845ce11da 100644 --- a/include/follow.php +++ b/include/follow.php @@ -175,6 +175,10 @@ function new_contact($uid,$url,$channel,$interactive = false, $confirm = false) proc_run('php', 'include/notifier.php', 'permission_update', $result['abook']['abook_id']); } + $arr = array('channel_id' => $uid, 'abook' => $result['abook']); + + call_hooks('follow', $arr); + /** If there is a default group for this channel, add this member to it */ if($default_group) { diff --git a/mod/connections.php b/mod/connections.php index ba5e8920e..d7adf775b 100644 --- a/mod/connections.php +++ b/mod/connections.php @@ -138,6 +138,8 @@ function connections_post(&$a) { group_add_member(local_user(),'',$a->data['abook_xchan'],$g['id']); } + + // Check if settings permit ("post new friend activity" is allowed, and // friends in general or this friend in particular aren't hidden) // and send out a new friend activity @@ -145,6 +147,7 @@ function connections_post(&$a) { // pull in a bit of content if there is any to pull in proc_run('php','include/onepoll.php',$contact_id); + } // Refresh the structure in memory with the new data @@ -159,6 +162,11 @@ function connections_post(&$a) { $a->data['abook'] = $r[0]; } + if($new_friend) { + $arr = array('channel_id' => local_user(), 'abook' => $a->data['abook']); + call_hooks('accept_follow', $arr); + } + connections_clone($a); return; From e4c64c7167c9566a01c9382f774f4e9a184ea4e0 Mon Sep 17 00:00:00 2001 From: friendica Date: Thu, 21 Nov 2013 20:08:04 -0800 Subject: [PATCH 053/271] e2ee algorithms are now pluggable so if you want to roll your own algorithm or do something like swap_bytes(rabbit(left_shift(3,triple_aes256(right_shift(base64(text)))))) - go for it. As long as the person at the other end can reverse it, you can do pretty much whatever you want. I'd like to see the NSA crack that one - especially if the algorithm was called something like "dishwasher" or something which didn't provide a lot of clues. --- js/crypto.js | 46 +++++++++++++++++++++++++++++++++------------- 1 file changed, 33 insertions(+), 13 deletions(-) diff --git a/js/crypto.js b/js/crypto.js index a7b278537..df4c26dfd 100644 --- a/js/crypto.js +++ b/js/crypto.js @@ -18,6 +18,11 @@ function str_rot13 (str) { } +// Arrays for pluggable encryptors/decryptors + +var red_encryptors = new Array(); +var red_decryptors = new Array(); + // We probably just want the element where the text is and find it ourself. e.g. if // there is highlighted text use it, otherwise use the entire text. // So the third element may be useless. Fix also in view/tpl/jot.tpl before @@ -86,6 +91,13 @@ function red_encrypt(alg, elem,text) { newdiv = "[crypt alg='3des' hint='" + enc_hint + "']" + encrypted + '[/crypt]'; } + if((red_encryptors.length) && (! newdiv.length)) { + for(var i = 0; i < red_encryptors.length; i ++) { + newdiv = red_encryptors[i](alg,text); + if(newdiv.length) + break; + } + } enc_key = ''; @@ -118,22 +130,30 @@ function red_encrypt(alg, elem,text) { function red_decrypt(alg,hint,text,elem) { - var enc_text = ''; + var dec_text = ''; if(alg == 'rot13' || alg == 'triple-rot13') - enc_text = str_rot13(text); + dec_text = str_rot13(text); + else { + var enc_key = prompt((hint.length) ? hint : aStr['passphrase']); + } if(alg == 'aes256') { - var enc_key = prompt((hint.length) ? hint : aStr['passphrase']); - enc_text = CryptoJS.AES.decrypt(text,enc_key); + dec_text = CryptoJS.AES.decrypt(text,enc_key); } if(alg == 'rabbit') { - var enc_key = prompt((hint.length) ? hint : aStr['passphrase']); - enc_text = CryptoJS.Rabbit.decrypt(text,enc_key); + dec_text = CryptoJS.Rabbit.decrypt(text,enc_key); } if(alg == '3des') { - var enc_key = prompt((hint.length) ? hint : aStr['passphrase']); - enc_text = CryptoJS.TripleDES.decrypt(text,enc_key); + dec_text = CryptoJS.TripleDES.decrypt(text,enc_key); + } + + if((red_decryptors.length) && (! dec_text.length)) { + for(var i = 0; i < red_decryptors.length; i ++) { + dec_text = red_decryptors[i](text,enc_key); + if(dec_text.length) + break; + } } enc_key = ''; @@ -144,16 +164,16 @@ function red_decrypt(alg,hint,text,elem) { // wipe out the text and make you re-enter the key if it was in the // conversation. For now we do that so you can read it. - var enc_result = enc_text.toString(CryptoJS.enc.Utf8); - delete enc_text; + var dec_result = dec_text.toString(CryptoJS.enc.Utf8); + delete dec_text; // incorrect decryptions *usually* but don't always have zero length // If the person typo'd let them try again without reloading the page // otherwise they'll have no "padlock" to click to try again. - if(enc_result.length) { - $(elem).html(b2h(enc_result)); - enc_result = ''; + if(dec_result.length) { + $(elem).html(b2h(dec_result)); + dec_result = ''; } } From df14825b49ce0dd3a4575fcf8772b8d18b2a4852 Mon Sep 17 00:00:00 2001 From: friendica Date: Thu, 21 Nov 2013 20:23:02 -0800 Subject: [PATCH 054/271] pass algorithm to the decryptor so we know if our plugin is allowed to run --- js/crypto.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/js/crypto.js b/js/crypto.js index df4c26dfd..a144e03ea 100644 --- a/js/crypto.js +++ b/js/crypto.js @@ -150,7 +150,7 @@ function red_decrypt(alg,hint,text,elem) { if((red_decryptors.length) && (! dec_text.length)) { for(var i = 0; i < red_decryptors.length; i ++) { - dec_text = red_decryptors[i](text,enc_key); + dec_text = red_decryptors[i](alg,text,enc_key); if(dec_text.length) break; } From 4be581494e03aa7c79c5691e64b75bee313d778f Mon Sep 17 00:00:00 2001 From: friendica Date: Thu, 21 Nov 2013 20:40:31 -0800 Subject: [PATCH 055/271] add recipient name to some of the notification emails for those who have a lot of channels and it isn't always obvious which channel is getting the notification. If this works out we should probably add this to the rest of them. --- include/enotify.php | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/include/enotify.php b/include/enotify.php index 91b37a913..cfa8c25ae 100644 --- a/include/enotify.php +++ b/include/enotify.php @@ -79,7 +79,7 @@ function notification($params) { logger('notification: mail'); $subject = sprintf( t('[Red:Notify] New mail received at %s'),$sitename); - $preamble = sprintf( t('%1$s sent you a new private message at %2$s.'),$sender['xchan_name'],$sitename); + $preamble = sprintf( t('%1$s, %2$s sent you a new private message at %3$s.'),$recip['channel_name'], $sender['xchan_name'],$sitename); $epreamble = sprintf( t('%1$s sent you %2$s.'),'[zrl=' . $sender['xchan_url'] . ']' . $sender['xchan_name'] . '[/zrl]', '[zrl=$itemlink]' . t('a private message') . '[/zrl]'); $sitelink = t('Please visit %s to view and/or reply to your private messages.'); $tsitelink = sprintf( $sitelink, $siteurl . '/message/' . $params['item']['id'] ); @@ -198,7 +198,7 @@ function notification($params) { } $subject = sprintf( t('[Red:Notify] %s tagged you') , $sender['xchan_name']); - $preamble = sprintf( t('%1$s tagged you at %2$s') , $sender['xchan_name'], $sitename); + $preamble = sprintf( t('%1$s, %2$s tagged you at %3$s') , $recip['channel_name'], $sender['xchan_name'], $sitename); $epreamble = sprintf( t('%1$s [zrl=%2$s]tagged you[/zrl].') , '[zrl=' . $sender['xchan_url'] . ']' . $sender['xchan_name'] . '[/zrl]', $params['link']); @@ -212,7 +212,7 @@ function notification($params) { if($params['type'] == NOTIFY_POKE) { $subject = sprintf( t('[Red:Notify] %1$s poked you') , $sender['xchan_name']); - $preamble = sprintf( t('%1$s poked you at %2$s') , $sender['xchan_name'], $sitename); + $preamble = sprintf( t('%1$s, %2$s poked you at %3$s') , $recip['channel_name'], $sender['xchan_name'], $sitename); $epreamble = sprintf( t('%1$s [zrl=%2$s]poked you[/zrl].') , '[zrl=' . $sender['xchan_url'] . ']' . $sender['xchan_name'] . '[/zrl]', $params['link']); From 353f5f049e5a42149cce2133f48b38529eeec678 Mon Sep 17 00:00:00 2001 From: friendica Date: Thu, 21 Nov 2013 23:11:50 -0800 Subject: [PATCH 056/271] Empty commit message. --- view/php/theme_init.php | 11 +++++++++++ 1 file changed, 11 insertions(+) diff --git a/view/php/theme_init.php b/view/php/theme_init.php index 0867c989d..1fefa110e 100644 --- a/view/php/theme_init.php +++ b/view/php/theme_init.php @@ -1,6 +1,7 @@ get_channel(); +if($channel && file_exists($channel['channel_address'] . '.js')) + head_add_js('/' . $channel['channel_address'] . '.js'); + From 3a4c32475e33e1cad6610c8e4fa0e9cc18bbc31a Mon Sep 17 00:00:00 2001 From: marijus Date: Fri, 22 Nov 2013 14:17:47 +0100 Subject: [PATCH 057/271] search should respect max items to load as well --- mod/search.php | 2 ++ 1 file changed, 2 insertions(+) diff --git a/mod/search.php b/mod/search.php index 539241268..bad071936 100644 --- a/mod/search.php +++ b/mod/search.php @@ -186,6 +186,8 @@ function search_content(&$a,$update = 0, $load = false) { $pub_sql = public_permissions_sql(get_observer_hash()); if(($update) && ($load)) { + $itemspage = get_pconfig(local_user(),'system','itemspage'); + $a->set_pager_itemspage(((intval($itemspage)) ? $itemspage : 20)); $pager_sql = sprintf(" LIMIT %d, %d ",intval($a->pager['start']), intval($a->pager['itemspage'])); if($load) { From f6b43a0a7bc96e199fad8ad65e0aa63bd9a04f8b Mon Sep 17 00:00:00 2001 From: friendica Date: Fri, 22 Nov 2013 11:52:26 -0800 Subject: [PATCH 058/271] doc updates --- doc/html/Contact_8php.html | 4 +- doc/html/apw_2php_2style_8php.html | 2 +- doc/html/boot_8php.html | 26 +- doc/html/conversation_8php.html | 2 + doc/html/crypto_8php.html | 68 ++- doc/html/crypto_8php.js | 2 + doc/html/datetime_8php.html | 2 +- doc/html/dba__driver_8php.html | 4 +- .../dir_23ec12649285f9fabf3a6b7380226c28.html | 2 + .../dir_23ec12649285f9fabf3a6b7380226c28.js | 1 + .../dir_720432dea4a717197ae070dbc42b8f20.html | 112 +++++ .../dir_720432dea4a717197ae070dbc42b8f20.js | 4 + .../dir_817f6d302394b98e59575acdb59998bc.html | 2 + .../dir_817f6d302394b98e59575acdb59998bc.js | 3 +- doc/html/extract_8php.html | 2 +- doc/html/files.html | 25 +- doc/html/globals.html | 34 +- doc/html/globals_0x63.html | 6 + doc/html/globals_0x6d.html | 2 +- doc/html/globals_0x70.html | 51 ++ doc/html/globals_0x78.html | 3 + doc/html/globals_func_0x63.html | 6 + doc/html/globals_func_0x6d.html | 2 +- doc/html/globals_func_0x70.html | 42 ++ doc/html/globals_func_0x78.html | 3 + doc/html/globals_vars.html | 34 +- doc/html/globals_vars_0x70.html | 9 + doc/html/help_8php.html | 21 + doc/html/help_8php.js | 3 +- doc/html/include_2group_8php.html | 12 +- doc/html/include_2group_8php.js | 2 +- doc/html/items_8php.html | 2 +- doc/html/language_8php.html | 2 +- doc/html/navtree.js | 8 +- doc/html/navtreeindex3.js | 86 ++-- doc/html/navtreeindex4.js | 16 +- doc/html/navtreeindex5.js | 14 +- doc/html/navtreeindex6.js | 118 ++--- doc/html/navtreeindex7.js | 75 ++- doc/html/none_8php.html | 112 +++++ doc/html/plugin_8php.html | 2 +- doc/html/post_8php.html | 3 +- doc/html/post__to__red_8php.html | 453 ++++++++++++++++++ doc/html/post__to__red_8php.js | 22 + doc/html/redbasic_2php_2style_8php.html | 98 ++++ doc/html/redbasic_2php_2style_8php.js | 7 + doc/html/redbasic_2php_2theme_8php.html | 8 + doc/html/rpost_8php.html | 2 +- doc/html/search/all_24.js | 11 +- doc/html/search/all_63.js | 2 + doc/html/search/all_6d.js | 2 +- doc/html/search/all_6e.js | 1 + doc/html/search/all_70.js | 18 + doc/html/search/all_78.js | 1 + doc/html/search/files_6e.js | 1 + doc/html/search/files_70.js | 3 +- doc/html/search/functions_63.js | 2 + doc/html/search/functions_6d.js | 2 +- doc/html/search/functions_70.js | 14 + doc/html/search/functions_78.js | 1 + doc/html/search/variables_24.js | 11 +- doc/html/search/variables_70.js | 5 +- doc/html/text_8php.html | 6 +- doc/html/theme__init_8php.html | 24 + doc/html/theme__init_8php.js | 4 + 65 files changed, 1423 insertions(+), 204 deletions(-) create mode 100644 doc/html/dir_720432dea4a717197ae070dbc42b8f20.html create mode 100644 doc/html/dir_720432dea4a717197ae070dbc42b8f20.js create mode 100644 doc/html/none_8php.html create mode 100644 doc/html/post__to__red_8php.html create mode 100644 doc/html/post__to__red_8php.js create mode 100644 doc/html/theme__init_8php.js diff --git a/doc/html/Contact_8php.html b/doc/html/Contact_8php.html index 0926c675e..88019706d 100644 --- a/doc/html/Contact_8php.html +++ b/doc/html/Contact_8php.html @@ -244,7 +244,7 @@ Functions

    @@ -507,8 +507,6 @@ Functions diff --git a/doc/html/apw_2php_2style_8php.html b/doc/html/apw_2php_2style_8php.html index 4d05fd68d..610640439 100644 --- a/doc/html/apw_2php_2style_8php.html +++ b/doc/html/apw_2php_2style_8php.html @@ -128,7 +128,7 @@ Variables
    -

    Referenced by admin_page_users(), admin_page_users_post(), all_friends(), build_sync_packet(), check_item_source(), check_list_permissions(), common_friends(), common_friends_zcid(), contacts_not_grouped(), count_all_friends(), count_common_friends(), count_common_friends_zcid(), current_theme_url(), del_pconfig(), delete_imported_item(), drop_items(), events_post(), feature_enabled(), first_post_date(), fix_attached_photo_permissions(), fix_private_photos(), follow_init(), follow_widget(), get_all_perms(), get_pconfig(), get_theme_uid(), group_add(), group_add_member(), group_byname(), group_rec_byhash(), group_rmv(), group_rmv_member(), groups_containing(), import_channel_photo(), item_expire(), item_post(), item_store_update(), items_fetch(), load_contact_links(), load_pconfig(), FKOAuth1\loginUser(), menu_add_item(), menu_del_item(), menu_delete(), menu_delete_id(), menu_edit_item(), menu_fetch(), mini_group_select(), mood_init(), new_contact(), notifier_run(), pdl_selector(), perm_is_allowed(), photo_init(), poke_init(), posted_date_widget(), posted_dates(), private_messages_list(), remove_community_tag(), send_message(), service_class_allows(), service_class_fetch(), set_pconfig(), Conversation\set_profile_owner(), photo_driver\store(), store_item_tag(), suggestion_query(), syncdirs(), tag_deliver(), tagadelic(), tagblock(), tgroup_check(), widget_tagcloud(), and zot_feed().

    +

    Referenced by admin_page_users(), admin_page_users_post(), all_friends(), build_sync_packet(), check_item_source(), check_list_permissions(), common_friends(), common_friends_zcid(), contacts_not_grouped(), count_all_friends(), count_common_friends(), count_common_friends_zcid(), current_theme_url(), del_pconfig(), delete_imported_item(), drop_items(), events_post(), feature_enabled(), first_post_date(), fix_attached_photo_permissions(), fix_private_photos(), follow_init(), follow_widget(), get_all_perms(), get_pconfig(), get_theme_uid(), group_add(), group_add_member(), group_byname(), group_rec_byhash(), group_rmv(), group_rmv_member(), groups_containing(), import_channel_photo(), item_expire(), item_post(), item_store_update(), items_fetch(), load_contact_links(), load_pconfig(), FKOAuth1\loginUser(), menu_add_item(), menu_del_item(), menu_delete(), menu_delete_id(), menu_edit_item(), menu_fetch(), mini_group_select(), mood_init(), new_contact(), notifier_run(), pdl_selector(), perm_is_allowed(), photo_init(), poke_init(), posted_date_widget(), posted_dates(), private_messages_list(), remove_community_tag(), send_message(), service_class_allows(), service_class_fetch(), set_pconfig(), Conversation\set_profile_owner(), photo_driver\store(), store_item_tag(), suggestion_query(), syncdirs(), tag_deliver(), tagadelic(), tagblock(), tgroup_check(), widget_tagcloud(), and zot_feed().

    diff --git a/doc/html/boot_8php.html b/doc/html/boot_8php.html index f361dcaec..b0f57fa96 100644 --- a/doc/html/boot_8php.html +++ b/doc/html/boot_8php.html @@ -224,7 +224,7 @@ Variables   const ZOT_REVISION 1   -const DB_UPDATE_VERSION 1081 +const DB_UPDATE_VERSION 1084   const EOL '<br />' . "\r\n"   @@ -722,7 +722,7 @@ Variables
    -

    Referenced by App\__construct(), _well_known_init(), admin_content(), admin_page_dbsync(), admin_page_users(), admin_post(), allfriends_content(), api_get_user(), attach_init(), blocks_content(), channel_init(), common_init(), connect_init(), connections_content(), connections_init(), contactgroup_content(), dirsearch_content(), display_content(), editblock_content(), editlayout_content(), editpost_content(), editwebpage_content(), events_content(), feed_init(), filestorage_content(), group_content(), group_post(), lastpost_init(), layouts_content(), like_content(), lockview_content(), manage_content(), menu_content(), menu_post(), message_content(), mitem_content(), mitem_init(), mitem_post(), new_channel_init(), notify_init(), oembed_init(), oexchange_content(), oexchange_init(), page_content(), photo_init(), photos_content(), photos_init(), photos_post(), ping_init(), poco_init(), post_init(), profile_init(), profile_photo_post(), profiles_aside(), profiles_content(), profiles_init(), profiles_post(), queue_run(), register_init(), regmod_content(), rpost_content(), settings_aside(), settings_post(), setup_init(), share_init(), sources_content(), starred_init(), subthread_content(), tagger_content(), thing_content(), uexport_init(), update_channel_content(), update_display_content(), update_network_content(), update_search_content(), viewconnections_init(), viewsrc_content(), wall_attach_post(), wall_upload_post(), webpages_content(), and zotfeed_init().

    +

    Referenced by App\__construct(), _well_known_init(), admin_content(), admin_page_dbsync(), admin_page_users(), admin_post(), allfriends_content(), api_get_user(), attach_init(), blocks_content(), channel_init(), common_init(), connect_init(), connections_content(), connections_init(), contactgroup_content(), dirsearch_content(), display_content(), editblock_content(), editlayout_content(), editpost_content(), editwebpage_content(), events_content(), feed_init(), filestorage_content(), group_content(), group_post(), help_content(), lastpost_init(), layouts_content(), like_content(), lockview_content(), manage_content(), menu_content(), menu_post(), message_content(), mitem_content(), mitem_init(), mitem_post(), new_channel_init(), notify_init(), oembed_init(), oexchange_content(), oexchange_init(), page_content(), photo_init(), photos_content(), photos_init(), photos_post(), ping_init(), poco_init(), post_init(), profile_init(), profile_photo_post(), profiles_aside(), profiles_content(), profiles_init(), profiles_post(), queue_run(), register_init(), regmod_content(), rpost_content(), settings_aside(), settings_post(), setup_init(), share_init(), sources_content(), starred_init(), subthread_content(), tagger_content(), thing_content(), uexport_init(), update_channel_content(), update_display_content(), update_network_content(), update_search_content(), viewconnections_init(), viewsrc_content(), wall_attach_post(), wall_upload_post(), webpages_content(), and zotfeed_init().

    @@ -740,7 +740,7 @@ Variables
    -

    Referenced by App\__construct(), _well_known_init(), admin_content(), admin_page_dbsync(), admin_page_users(), admin_post(), allfriends_content(), api_get_user(), api_statuses_destroy(), api_statuses_repeat(), api_statuses_show(), attach_init(), blocks_content(), channel_init(), common_init(), connect_init(), connections_content(), connections_init(), connections_post(), contactgroup_content(), dirsearch_content(), display_content(), editblock_content(), editlayout_content(), editpost_content(), editwebpage_content(), events_content(), feed_init(), filestorage_content(), group_content(), group_post(), lastpost_init(), layouts_content(), like_content(), lockview_content(), manage_content(), menu_content(), menu_post(), message_aside(), message_content(), mitem_content(), mitem_init(), mitem_post(), new_channel_init(), notify_init(), oembed_init(), oexchange_content(), oexchange_init(), page_content(), page_init(), photo_init(), photos_content(), photos_init(), photos_post(), ping_init(), poco_init(), post_init(), profile_init(), profile_photo_post(), profile_tabs(), profiles_aside(), profiles_content(), profiles_init(), profiles_post(), queue_run(), register_init(), regmod_content(), rpost_content(), settings_aside(), settings_post(), setup_init(), share_init(), sources_content(), starred_init(), subthread_content(), tagger_content(), uexport_init(), update_channel_content(), update_display_content(), update_network_content(), update_search_content(), view_init(), viewconnections_init(), viewsrc_content(), wall_attach_post(), wall_upload_post(), webpages_content(), and zotfeed_init().

    +

    Referenced by App\__construct(), _well_known_init(), admin_content(), admin_page_dbsync(), admin_page_users(), admin_post(), allfriends_content(), api_get_user(), api_statuses_destroy(), api_statuses_repeat(), api_statuses_show(), attach_init(), blocks_content(), channel_init(), common_init(), connect_init(), connections_content(), connections_init(), connections_post(), contactgroup_content(), dirsearch_content(), display_content(), editblock_content(), editlayout_content(), editpost_content(), editwebpage_content(), events_content(), feed_init(), filestorage_content(), group_content(), group_post(), help_content(), lastpost_init(), layouts_content(), like_content(), lockview_content(), manage_content(), menu_content(), menu_post(), message_aside(), message_content(), mitem_content(), mitem_init(), mitem_post(), new_channel_init(), notify_init(), oembed_init(), oexchange_content(), oexchange_init(), page_content(), page_init(), photo_init(), photos_content(), photos_init(), photos_post(), ping_init(), poco_init(), post_init(), profile_init(), profile_photo_post(), profile_tabs(), profiles_aside(), profiles_content(), profiles_init(), profiles_post(), queue_run(), register_init(), regmod_content(), rpost_content(), settings_aside(), settings_post(), setup_init(), share_init(), sources_content(), starred_init(), subthread_content(), tagger_content(), uexport_init(), update_channel_content(), update_display_content(), update_network_content(), update_search_content(), view_init(), viewconnections_init(), viewsrc_content(), wall_attach_post(), wall_upload_post(), webpages_content(), and zotfeed_init().

    @@ -1223,7 +1223,7 @@ Variables
    -

    Referenced by FriendicaSmartyEngine\__construct(), acl_init(), admin_content(), api_content(), api_ff_ids(), api_friendica_version(), api_oauth_access_token(), api_oauth_request_token(), api_statusnet_version(), attach_init(), check_form_security_token_ForbiddenOnErr(), cloud_init(), contactgroup_content(), events_content(), fbrowser_content(), feed_init(), filer_content(), filerm_content(), goaway(), http_status_exit(), item_post(), json_return_and_die(), like_content(), lockview_content(), msearch_post(), network_content(), oembed_init(), oexchange_init(), opensearch_init(), parse_url_content(), photo_init(), photos_post(), php_init(), ping_init(), poco_init(), poller_run(), post_init(), pretheme_init(), qsearch_init(), App\register_template_engine(), regmod_content(), search_ac_init(), setup_init(), setup_post(), share_init(), siteinfo_init(), sitelist_init(), starred_init(), subthread_content(), system_unavailable(), tagger_content(), App\template_engine(), uexport_init(), update_channel_content(), update_community_content(), update_display_content(), update_network_content(), update_search_content(), view_init(), viewsrc_content(), wall_attach_post(), wall_upload_post(), wfinger_init(), xml_status(), and xrd_init().

    +

    Referenced by FriendicaSmartyEngine\__construct(), acl_init(), admin_content(), api_content(), api_ff_ids(), api_friendica_version(), api_oauth_access_token(), api_oauth_request_token(), api_statusnet_version(), attach_init(), check_form_security_token_ForbiddenOnErr(), cloud_init(), contactgroup_content(), events_content(), fbrowser_content(), feed_init(), filer_content(), filerm_content(), goaway(), http_status_exit(), item_post(), json_return_and_die(), like_content(), lockview_content(), msearch_post(), network_content(), oembed_init(), oexchange_init(), opensearch_init(), parse_url_content(), photo_init(), photos_post(), php_init(), ping_init(), poco_init(), poller_run(), pretheme_init(), qsearch_init(), App\register_template_engine(), regmod_content(), search_ac_init(), setup_init(), setup_post(), share_init(), siteinfo_init(), sitelist_init(), starred_init(), subthread_content(), system_unavailable(), tagger_content(), App\template_engine(), uexport_init(), update_channel_content(), update_community_content(), update_display_content(), update_network_content(), update_search_content(), view_init(), viewsrc_content(), wall_attach_post(), wall_upload_post(), wfinger_init(), xml_status(), and xrd_init().

    @@ -1332,7 +1332,7 @@ Variables

    e.g.: proc_run("ls","-la","/tmp");

    $cmd and string args are surrounded with ""

    -

    Referenced by build_sync_packet(), channel_remove(), connect_post(), connections_content(), connections_post(), create_identity(), directory_run(), drop_item(), drop_items(), events_post(), fix_system_urls(), fsuggest_post(), import_post(), item_expire(), item_post(), like_content(), message_content(), mood_init(), new_contact(), notifier_run(), photo_upload(), photos_post(), poller_run(), post_activity_item(), process_delivery(), profile_activity(), profile_photo_post(), profiles_post(), send_message(), settings_post(), tag_deliver(), tagger_content(), thing_init(), zid_init(), and zot_refresh().

    +

    Referenced by build_sync_packet(), channel_remove(), connect_post(), connections_content(), connections_post(), create_identity(), directory_run(), drop_item(), drop_items(), events_post(), fix_system_urls(), follow_init(), fsuggest_post(), import_post(), item_expire(), item_post(), like_content(), message_content(), mood_init(), new_contact(), notifier_run(), photo_upload(), photos_post(), poller_run(), post_activity_item(), process_delivery(), profile_activity(), profile_photo_post(), profiles_post(), send_message(), settings_post(), tag_deliver(), tagger_content(), thing_init(), zid_init(), and zot_refresh().

    @@ -1549,7 +1549,7 @@ Variables
    -

    Referenced by FriendicaSmarty\__construct(), App\__construct(), acl_init(), admin_page_logs_post(), admin_page_plugins(), admin_page_site(), admin_page_site_post(), admin_page_themes(), admin_page_users_post(), api_content(), api_direct_messages_box(), api_direct_messages_new(), api_favorites(), api_format_messages(), api_get_user(), api_login(), api_post(), api_statuses_f(), api_statuses_home_timeline(), api_statuses_mentions(), api_statuses_public_timeline(), api_statuses_show(), api_statuses_update(), api_statuses_user_timeline(), api_user(), attach_store(), authenticate_success(), bbcode(), bbtoevent(), best_link_url(), App\build_pagehead(), channel_aside(), channel_content(), check_form_security_token(), community_content(), connections_aside(), connections_content(), connections_post(), construct_page(), consume_feed(), conversation(), create_account(), create_identity(), crepair_init(), crepair_post(), current_theme(), del_pconfig(), del_xconfig(), delegate_content(), detect_language(), directory_content(), dirsearch_content(), encode_rel_links(), events_content(), events_post(), feed_init(), filerm_content(), get_atom_elements(), get_browser_language(), get_item_elements(), get_max_import_size(), get_my_address(), get_my_url(), get_plink(), get_public_feed(), Item\get_template_data(), group_add(), group_rmv(), hcard_init(), import_post(), import_xchan(), info(), intro_content(), invite_post(), item_post(), item_store(), item_store_update(), lang_selector(), lastpost_aside(), lastpost_content(), load_contact_links(), local_user(), lostpass_content(), lrdd(), magic_init(), mail_store(), message_content(), message_post(), mood_content(), mood_init(), nav(), navbar_complete(), network_content(), network_init(), network_query_get_sel_tab(), new_channel_content(), nogroup_init(), notice(), notifications_content(), oexchange_content(), parse_url_content(), photo_upload(), photos_content(), photos_post(), ping_init(), poco_init(), poco_load(), poke_content(), poke_init(), post_activity_item(), printable(), probe_content(), proc_run(), process_delivery(), profile_photo_post(), profile_sidebar(), profile_tabs(), profiles_post(), qsearch_init(), redir_init(), ref_session_read(), register_content(), register_post(), App\register_template_engine(), regmod_content(), remote_user(), removeme_post(), saved_searches(), search_ac_init(), search_content(), search_init(), search_post(), service_class_allows(), service_class_fetch(), App\set_baseurl(), settings_post(), setup_content(), setup_init(), siteinfo_init(), suggest_init(), t(), tagrm_post(), App\template_engine(), tt(), validate_channelname(), wall_upload_post(), webfinger_content(), wfinger_init(), widget_tagcloud(), xchan_content(), z_fetch_url(), z_post_url(), and zfinger_init().

    +

    Referenced by FriendicaSmarty\__construct(), App\__construct(), acl_init(), admin_page_logs_post(), admin_page_plugins(), admin_page_site(), admin_page_site_post(), admin_page_themes(), admin_page_users_post(), api_content(), api_direct_messages_box(), api_direct_messages_new(), api_favorites(), api_format_messages(), api_get_user(), api_login(), api_post(), api_statuses_f(), api_statuses_home_timeline(), api_statuses_mentions(), api_statuses_public_timeline(), api_statuses_show(), api_statuses_update(), api_statuses_user_timeline(), api_user(), attach_store(), authenticate_success(), bbcode(), bbtoevent(), best_link_url(), App\build_pagehead(), channel_aside(), channel_content(), check_form_security_token(), community_content(), connections_aside(), connections_content(), connections_post(), construct_page(), consume_feed(), conversation(), create_account(), create_identity(), crepair_init(), crepair_post(), current_theme(), del_pconfig(), del_xconfig(), delegate_content(), detect_language(), directory_content(), dirsearch_content(), encode_rel_links(), events_content(), events_post(), feed_init(), filerm_content(), get_atom_elements(), get_browser_language(), get_item_elements(), get_max_import_size(), get_my_address(), get_my_url(), get_plink(), get_public_feed(), Item\get_template_data(), group_add(), group_rmv(), hcard_init(), import_post(), import_xchan(), info(), intro_content(), invite_post(), item_post(), item_store(), item_store_update(), lang_selector(), lastpost_aside(), lastpost_content(), load_contact_links(), local_user(), lostpass_content(), lrdd(), magic_init(), mail_store(), message_content(), message_post(), mood_content(), mood_init(), nav(), navbar_complete(), network_content(), network_init(), network_query_get_sel_tab(), new_channel_content(), nogroup_init(), notice(), notifications_content(), oexchange_content(), parse_url_content(), photo_upload(), photos_content(), photos_post(), ping_init(), poco_init(), poco_load(), poke_content(), poke_init(), post_activity_item(), printable(), probe_content(), proc_run(), process_delivery(), profile_photo_post(), profile_sidebar(), profile_tabs(), profiles_post(), qsearch_init(), redir_init(), ref_session_read(), register_content(), register_post(), App\register_template_engine(), regmod_content(), remote_user(), removeme_post(), rpost_content(), saved_searches(), search_ac_init(), search_content(), search_init(), search_post(), service_class_allows(), service_class_fetch(), App\set_baseurl(), settings_post(), setup_content(), setup_init(), siteinfo_init(), suggest_init(), t(), tagrm_post(), App\template_engine(), tt(), validate_channelname(), wall_upload_post(), webfinger_content(), wfinger_init(), widget_tagcloud(), xchan_content(), z_fetch_url(), z_post_url(), and zfinger_init().

    @@ -1744,7 +1744,7 @@ Variables @@ -2412,7 +2412,7 @@ Variables
    - +
    const DB_UPDATE_VERSION 1081const DB_UPDATE_VERSION 1084
    @@ -2579,7 +2579,7 @@ Variables
    @@ -3083,7 +3083,7 @@ Variables
    -

    Referenced by admin_page_logs(), advanced_profile(), build_sync_packet(), check_form_security_token_ForbiddenOnErr(), check_form_security_token_redirectOnErr(), detect_language(), dfrn_deliver(), directory_content(), fetch_xrd_links(), fix_private_photos(), import_xchan(), item_store(), item_store_update(), lrdd(), magic_init(), mail_store(), message_post(), mini_group_select(), network_content(), new_contact(), notifier_run(), parse_xml_string(), photos_post(), poco_load(), post_post(), public_recips(), sync_directories(), tag_deliver(), tgroup_check(), update_directory_entry(), webfinger_dfrn(), xml2array(), z_fetch_url(), z_post_url(), zot_build_packet(), zot_fetch(), zot_import(), zot_process_response(), zot_refresh(), and zot_register_hub().

    +

    Referenced by admin_page_logs(), advanced_profile(), build_sync_packet(), check_form_security_token_ForbiddenOnErr(), check_form_security_token_redirectOnErr(), detect_language(), dfrn_deliver(), directory_content(), fetch_xrd_links(), fix_private_photos(), import_xchan(), item_store(), item_store_update(), lrdd(), magic_init(), mail_store(), message_post(), mini_group_select(), new_contact(), notifier_run(), onepoll_run(), parse_xml_string(), photos_post(), poco_load(), post_post(), public_recips(), sync_directories(), tag_deliver(), tgroup_check(), update_directory_entry(), webfinger_dfrn(), xml2array(), z_fetch_url(), z_post_url(), zot_build_packet(), zot_fetch(), zot_import(), zot_process_response(), zot_refresh(), and zot_register_hub().

    @@ -3097,7 +3097,7 @@ Variables
    -

    Referenced by Item\add_child(), Conversation\add_thread(), admin_page_logs(), api_login(), api_statuses_user_timeline(), authenticate_success(), avatar_img(), consume_feed(), conversation(), delete_imported_item(), deliver_run(), dfrn_deliver(), directory_content(), directory_run(), expire_run(), fix_private_photos(), Conversation\get_template_data(), group_content(), guess_image_type(), import_author_xchan(), import_channel_photo(), import_directory_profile(), import_profile_photo(), import_xchan(), item_post(), item_store(), item_store_update(), like_content(), limit_body_size(), FKOAuth1\loginUser(), lrdd(), magic_init(), mail_store(), mood_init(), notification(), notifier_run(), parse_url_content(), photo_upload(), photos_post(), poco_init(), poco_load(), poke_init(), post_post(), process_delivery(), process_profile_delivery(), profile_load(), redir_init(), Item\remove_child(), scale_external_images(), enotify\send(), Conversation\set_mode(), syncdirs(), unload_plugin(), zot_finger(), zot_gethub(), and zot_register_hub().

    +

    Referenced by Item\add_child(), Conversation\add_thread(), admin_page_logs(), api_login(), api_statuses_user_timeline(), authenticate_success(), avatar_img(), consume_feed(), conversation(), delete_imported_item(), deliver_run(), dfrn_deliver(), directory_content(), directory_run(), expire_run(), fix_private_photos(), Conversation\get_template_data(), group_content(), guess_image_type(), import_author_xchan(), import_channel_photo(), import_directory_profile(), import_profile_photo(), import_xchan(), item_post(), item_store(), item_store_update(), like_content(), limit_body_size(), FKOAuth1\loginUser(), lrdd(), magic_init(), mail_store(), mood_init(), notification(), notifier_run(), parse_url_content(), photo_upload(), photos_post(), poco_init(), poco_load(), poke_init(), post_post(), process_delivery(), process_profile_delivery(), profile_load(), redir_init(), Item\remove_child(), scale_external_images(), enotify\send(), Conversation\set_mode(), syncdirs(), unload_plugin(), zot_finger(), zot_gethub(), zot_register_hub(), and zotfeed_init().

    @@ -4058,7 +4058,7 @@ Variables

    Permissions

    -

    Referenced by get_perms().

    +

    Referenced by follow_init(), get_perms(), onepoll_run(), and zot_refresh().

    @@ -4353,7 +4353,7 @@ Variables

    This allows any individual website to participate in a matrix of linked sites and people and media sharing which is far greater than the reach of an individual site.

    If you are reading the source code and come across a function or code block which is not documented, but you have a good idea what it does, please add some descriptive comments and push it to the main project. Even if your description isn't perfect, it gives us a base which we can build on and correct - so that eventually everything is fully documented.

    -

    Referenced by api_statusnet_config(), App\build_pagehead(), get_feed_for(), identity_basic_export(), notification(), parse_url_content(), siteinfo_init(), and zfinger_init().

    +

    Referenced by api_statusnet_config(), App\build_pagehead(), get_feed_for(), identity_basic_export(), parse_url_content(), siteinfo_init(), and zfinger_init().

    diff --git a/doc/html/conversation_8php.html b/doc/html/conversation_8php.html index d6cb96481..2f91c0913 100644 --- a/doc/html/conversation_8php.html +++ b/doc/html/conversation_8php.html @@ -553,6 +553,8 @@ Functions
    +

    Referenced by page_content().

    +
    diff --git a/doc/html/crypto_8php.html b/doc/html/crypto_8php.html index 450cd42bd..2d52b3526 100644 --- a/doc/html/crypto_8php.html +++ b/doc/html/crypto_8php.html @@ -124,8 +124,12 @@ Functions    AES256CBC_decrypt ($data, $key, $iv)   + crypto_encapsulate ($data, $pubkey, $alg='aes256cbc') +   aes_encapsulate ($data, $pubkey)   + crypto_unencapsulate ($data, $prvkey) +   aes_unencapsulate ($data, $prvkey)    new_keypair ($bits) @@ -224,7 +228,7 @@ Functions @@ -252,6 +256,68 @@ Functions
    +

    Referenced by crypto_unencapsulate().

    + +
    + + +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + +
    crypto_encapsulate ( $data,
     $pubkey,
     $alg = 'aes256cbc' 
    )
    +
    +
    + +
    +
    + + + + + + + + + + + + + + + + + + +
    crypto_unencapsulate ( $data,
     $prvkey 
    )
    +
    diff --git a/doc/html/crypto_8php.js b/doc/html/crypto_8php.js index bcbc2cc4d..8894f46c6 100644 --- a/doc/html/crypto_8php.js +++ b/doc/html/crypto_8php.js @@ -4,6 +4,8 @@ var crypto_8php = [ "AES256CBC_encrypt", "crypto_8php.html#a5c61821d205f95f127114159cbffa764", null ], [ "aes_encapsulate", "crypto_8php.html#a2148d7aac7b30c720f7ebda7e9790286", null ], [ "aes_unencapsulate", "crypto_8php.html#aca7c3a574bfb6c6ef1f2403a56823914", null ], + [ "crypto_encapsulate", "crypto_8php.html#a32fc08d57a5694f94d8543ecbb03323c", null ], + [ "crypto_unencapsulate", "crypto_8php.html#a0781202b0a43b82426929cc87c2fa2b5", null ], [ "new_keypair", "crypto_8php.html#aae0ab70d6a199b29555b1ac3cf250d6a", null ], [ "pkcs5_pad", "crypto_8php.html#ad5e51fd44cff93cfaa07a37e24a5edec", null ], [ "pkcs5_unpad", "crypto_8php.html#ac95ac3b1b23b65b04a86613d4206ae85", null ], diff --git a/doc/html/datetime_8php.html b/doc/html/datetime_8php.html index 184b75a65..1937b9b6b 100644 --- a/doc/html/datetime_8php.html +++ b/doc/html/datetime_8php.html @@ -474,7 +474,7 @@ Functions
    diff --git a/doc/html/dba__driver_8php.html b/doc/html/dba__driver_8php.html index e41295ea0..1f4931492 100644 --- a/doc/html/dba__driver_8php.html +++ b/doc/html/dba__driver_8php.html @@ -202,7 +202,7 @@ Functions
    -

    Referenced by account_verify_password(), acl_init(), add_fcontact(), advanced_profile(), allowed_public_recips(), api_direct_messages_new(), api_get_user(), api_status_show(), api_statuses_mentions(), api_user(), api_users_show(), attach_by_hash(), attach_by_hash_nodata(), attach_count_files(), attach_list_files(), attach_mkdir(), attach_store(), authenticate_success(), blocks_content(), build_sync_packet(), call_hooks(), categories_widget(), change_channel(), channel_content(), channel_remove(), channelx_by_hash(), channelx_by_n(), channelx_by_nick(), chanview_content(), check_account_email(), check_account_invite(), check_item_source(), check_webbie(), RedDirectory\childExists(), Cache\clear(), comanche_block(), common_friends(), connect_init(), connect_post(), connections_content(), connections_post(), consume_feed(), contact_remove(), contactgroup_content(), count_common_friends(), create_account(), create_identity(), crepair_post(), dbesc_array_cb(), del_config(), del_pconfig(), del_xconfig(), delegate_content(), delete_imported_item(), delete_item_lowlevel(), deliver_run(), directory_run(), dirsearch_content(), display_content(), editblock_content(), editlayout_content(), editpost_content(), editwebpage_content(), event_store(), events_content(), fbrowser_content(), feed_init(), fetch_post_tags(), file_tag_file_query(), filerm_content(), filestorage_content(), fix_attached_photo_permissions(), fix_contact_ssl_policy(), fix_private_photos(), fix_system_urls(), fsuggest_post(), generate_user_guid(), Cache\get(), get_all_perms(), get_birthdays(), get_config_from_storage(), get_events(), get_item_elements(), RedDirectory\getChild(), RedDirectory\getChildren(), gprobe_run(), group_add(), group_add_member(), group_byname(), group_content(), group_post(), group_rec_byhash(), group_rmv(), group_rmv_member(), groups_containing(), handle_tag(), import_author_xchan(), import_directory_keywords(), import_directory_profile(), import_post(), import_profile_photo(), import_site(), import_xchan(), install_plugin(), invite_post(), item_message_id(), item_permissions_sql(), item_post(), item_store(), item_store_update(), items_fetch(), lastpost_content(), layouts_content(), like_content(), load_config(), load_plugin(), load_xconfig(), lockview_content(), FKOAuthDataStore\lookup_consumer(), FKOAuthDataStore\lookup_nonce(), FKOAuthDataStore\lookup_token(), lostpass_content(), lostpass_post(), magic_init(), mail_store(), member_of(), menu_add_item(), menu_create(), menu_delete(), menu_edit(), menu_edit_item(), menu_fetch(), msearch_post(), network_content(), network_init(), FKOAuthDataStore\new_access_token(), new_contact(), new_cookie(), FKOAuthDataStore\new_request_token(), notification(), notifications_content(), notifier_run(), notify_init(), oauth_get_client(), onedirsync_run(), onepoll_run(), page_content(), perm_is_allowed(), permissions_sql(), photo_init(), photo_new_resource(), photo_upload(), photos_album_exists(), photos_album_get_db_idstr(), photos_album_rename(), photos_content(), photos_list_photos(), photos_post(), ping_init(), poco_init(), poco_load(), poller_run(), post_init(), post_post(), private_messages_drop(), private_messages_fetch_conversation(), private_messages_fetch_message(), private_messages_list(), process_channel_sync_delivery(), process_delivery(), process_mail_delivery(), process_profile_delivery(), profile_init(), profile_load(), profile_photo_post(), profiles_init(), profiles_post(), public_permissions_sql(), public_recips(), qsearch_init(), queue_run(), rconnect_url(), red_zrl_callback(), redir_init(), ref_session_destroy(), ref_session_gc(), ref_session_read(), ref_session_write(), register_hook(), register_post(), remove_all_xchan_resources(), remove_community_tag(), remove_queue_item(), rmagic_init(), rmagic_post(), photo_driver\save(), search_ac_init(), search_content(), search_init(), send_message(), send_reg_approval_email(), send_status_notifications(), Cache\set(), set_config(), set_pconfig(), set_xconfig(), RedInode\setName(), settings_post(), siteinfo_init(), sources_post(), photo_driver\store(), store_item_tag(), stream_perms_xchans(), stringify_array_elms(), subthread_content(), suggest_init(), sync_directories(), syncdirs(), tag_deliver(), tagger_content(), tagrm_post(), term_query(), tgroup_check(), thing_init(), uninstall_plugin(), unregister_hook(), update_directory_entry(), update_modtime(), update_queue_time(), user_allow(), user_deny(), RedBasicAuth\validateUserPass(), vcard_from_xchan(), vote_post(), wall_attach_post(), wall_upload_post(), webpages_content(), wfinger_init(), xchan_content(), xchan_mail_query(), xchan_query(), xrd_init(), z_readdir(), zfinger_init(), zid_init(), zot_feed(), zot_finger(), zot_get_hubloc(), zot_gethub(), zot_process_response(), zot_refresh(), and zotfeed_init().

    +

    Referenced by account_verify_password(), acl_init(), add_fcontact(), admin_page_users(), advanced_profile(), allowed_public_recips(), api_direct_messages_new(), api_get_user(), api_status_show(), api_statuses_mentions(), api_user(), api_users_show(), attach_by_hash(), attach_by_hash_nodata(), attach_count_files(), attach_list_files(), attach_mkdir(), attach_store(), authenticate_success(), blocks_content(), build_sync_packet(), call_hooks(), categories_widget(), change_channel(), channel_content(), channel_remove(), channelx_by_hash(), channelx_by_n(), channelx_by_nick(), chanview_content(), check_account_email(), check_account_invite(), check_item_source(), check_webbie(), RedDirectory\childExists(), Cache\clear(), comanche_block(), common_friends(), connect_init(), connect_post(), connections_content(), connections_post(), consume_feed(), contact_remove(), contactgroup_content(), count_common_friends(), create_account(), create_identity(), crepair_post(), dbesc_array_cb(), del_config(), del_pconfig(), del_xconfig(), delegate_content(), delete_imported_item(), delete_item_lowlevel(), deliver_run(), directory_run(), dirsearch_content(), display_content(), editblock_content(), editlayout_content(), editpost_content(), editwebpage_content(), event_store(), events_content(), fbrowser_content(), feed_init(), fetch_post_tags(), file_tag_file_query(), filerm_content(), filestorage_content(), fix_attached_photo_permissions(), fix_contact_ssl_policy(), fix_private_photos(), fix_system_urls(), fsuggest_post(), generate_user_guid(), Cache\get(), get_all_perms(), get_birthdays(), get_config_from_storage(), get_events(), get_item_elements(), RedDirectory\getChild(), RedDirectory\getChildren(), gprobe_run(), group_add(), group_add_member(), group_byname(), group_content(), group_post(), group_rec_byhash(), group_rmv(), group_rmv_member(), groups_containing(), handle_tag(), import_author_xchan(), import_directory_keywords(), import_directory_profile(), import_post(), import_profile_photo(), import_site(), import_xchan(), install_plugin(), invite_post(), item_message_id(), item_permissions_sql(), item_post(), item_store(), item_store_update(), items_fetch(), lastpost_content(), layouts_content(), like_content(), load_config(), load_plugin(), load_xconfig(), lockview_content(), FKOAuthDataStore\lookup_consumer(), FKOAuthDataStore\lookup_nonce(), FKOAuthDataStore\lookup_token(), lostpass_content(), lostpass_post(), magic_init(), mail_store(), member_of(), menu_add_item(), menu_create(), menu_delete(), menu_edit(), menu_edit_item(), menu_fetch(), msearch_post(), network_content(), network_init(), FKOAuthDataStore\new_access_token(), new_contact(), new_cookie(), FKOAuthDataStore\new_request_token(), notification(), notifications_content(), notifier_run(), notify_init(), oauth_get_client(), onedirsync_run(), onepoll_run(), page_content(), perm_is_allowed(), permissions_sql(), photo_init(), photo_new_resource(), photo_upload(), photos_album_exists(), photos_album_get_db_idstr(), photos_album_rename(), photos_content(), photos_list_photos(), photos_post(), ping_init(), poco_init(), poco_load(), poller_run(), post_init(), post_post(), private_messages_drop(), private_messages_fetch_conversation(), private_messages_fetch_message(), private_messages_list(), process_channel_sync_delivery(), process_delivery(), process_mail_delivery(), process_profile_delivery(), profile_init(), profile_load(), profile_photo_post(), profiles_init(), profiles_post(), public_permissions_sql(), public_recips(), qsearch_init(), queue_run(), rconnect_url(), red_zrl_callback(), redir_init(), ref_session_destroy(), ref_session_gc(), ref_session_read(), ref_session_write(), register_hook(), register_post(), remove_all_xchan_resources(), remove_community_tag(), remove_queue_item(), rmagic_init(), rmagic_post(), photo_driver\save(), search_ac_init(), search_content(), search_init(), send_message(), send_reg_approval_email(), send_status_notifications(), Cache\set(), set_config(), set_pconfig(), set_xconfig(), RedInode\setName(), settings_post(), siteinfo_init(), sources_post(), photo_driver\store(), store_item_tag(), stream_perms_xchans(), stringify_array_elms(), subthread_content(), suggest_init(), sync_directories(), syncdirs(), tag_deliver(), tagger_content(), tagrm_post(), term_query(), tgroup_check(), thing_init(), uninstall_plugin(), unregister_hook(), update_directory_entry(), update_modtime(), update_queue_time(), user_allow(), user_deny(), RedBasicAuth\validateUserPass(), vcard_from_xchan(), vote_post(), wall_attach_post(), wall_upload_post(), webpages_content(), wfinger_init(), xchan_content(), xchan_mail_query(), xchan_query(), xrd_init(), z_readdir(), zfinger_init(), zid_init(), zot_feed(), zot_finger(), zot_get_hubloc(), zot_gethub(), zot_process_response(), zot_refresh(), and zotfeed_init().

    @@ -320,7 +320,7 @@ Functions

    This will happen occasionally trying to store the session data after abnormal program termination

    -

    Referenced by abook_connections(), abook_self(), abook_toggle_flag(), account_remove(), account_total(), account_verify_password(), acl_init(), add_fcontact(), admin_content(), admin_page_dbsync(), admin_page_hubloc(), admin_page_summary(), admin_page_users(), admin_page_users_post(), advanced_profile(), all_friends(), allfriends_content(), allowed_public_recips(), api_direct_messages_box(), api_direct_messages_new(), api_favorites(), api_ff_ids(), api_format_items(), api_get_user(), api_status_show(), api_statuses_f(), api_statuses_home_timeline(), api_statuses_mentions(), api_statuses_public_timeline(), api_statuses_repeat(), api_statuses_show(), api_statuses_user_timeline(), api_user(), api_users_show(), attach_by_hash(), attach_by_hash_nodata(), attach_count_files(), attach_list_files(), attach_mkdir(), attach_store(), authenticate_success(), blocks_content(), build_sync_packet(), call_hooks(), categories_widget(), change_channel(), chanman_remove_everything_from_network(), channel_content(), channel_remove(), channel_total(), channelx_by_hash(), channelx_by_n(), channelx_by_nick(), chanview_content(), check_account_email(), check_account_invite(), check_config(), check_item_source(), check_webbie(), RedDirectory\childExists(), Cache\clear(), collect_recipients(), comanche_block(), common_friends(), common_friends_zcid(), common_init(), community_content(), connect_init(), connect_post(), connections_content(), connections_init(), connections_post(), consume_feed(), contact_block(), contact_profile_assign(), contact_remove(), contact_select(), contactgroup_content(), contacts_not_grouped(), count_all_friends(), count_common_friends(), count_common_friends_zcid(), create_account(), create_identity(), crepair_content(), crepair_init(), crepair_post(), current_theme(), del_config(), del_pconfig(), del_xconfig(), delegate_content(), RedInode\delete(), delete_imported_item(), delete_item_lowlevel(), deliver_run(), dfrn_deliver(), dir_tagadelic(), directory_content(), directory_run(), dirsearch_content(), display_content(), drop_item(), editblock_content(), editlayout_content(), editpost_content(), editwebpage_content(), encode_item(), event_store(), events_content(), expand_groups(), expire_run(), fbrowser_content(), feed_init(), fetch_post_tags(), fileas_widget(), filer_content(), filerm_content(), filestorage_content(), first_post_date(), fix_attached_photo_permissions(), fix_contact_ssl_policy(), fix_private_photos(), fix_system_urls(), follow_widget(), fsuggest_content(), fsuggest_post(), generate_user_guid(), Cache\get(), get_all_perms(), get_birthdays(), get_config_from_storage(), get_events(), get_item_elements(), RedDirectory\getChild(), RedDirectory\getChildren(), gprobe_run(), group_add(), group_add_member(), group_byname(), group_content(), group_get_members(), group_post(), group_rec_byhash(), group_rmv(), group_rmv_member(), group_select(), group_side(), groups_containing(), handle_tag(), identity_basic_export(), identity_check_service_class(), import_author_xchan(), import_directory_keywords(), import_directory_profile(), import_post(), import_profile_photo(), import_site(), import_xchan(), install_plugin(), intro_content(), intro_post(), invite_post(), item_check_service_class(), item_expire(), item_message_id(), item_post(), item_store(), item_store_update(), items_fetch(), lastpost_content(), layout_select(), layouts_content(), like_content(), list_public_sites(), load_config(), load_contact_links(), load_hooks(), load_pconfig(), load_plugin(), load_translation_table(), load_xconfig(), lockview_content(), FKOAuth1\loginUser(), FKOAuthDataStore\lookup_consumer(), FKOAuthDataStore\lookup_nonce(), FKOAuthDataStore\lookup_token(), lostpass_content(), lostpass_post(), magic_init(), mail_store(), manage_content(), match_content(), member_of(), menu_add_item(), menu_create(), menu_del_item(), menu_delete(), menu_delete_id(), menu_edit(), menu_edit_item(), menu_fetch(), menu_fetch_id(), menu_list(), message_content(), mimetype_select(), mini_group_select(), mitem_content(), mood_init(), msearch_post(), network_content(), network_init(), FKOAuthDataStore\new_access_token(), new_contact(), new_cookie(), FKOAuthDataStore\new_request_token(), notification(), notifications_content(), notifications_post(), notifier_run(), notify_content(), notify_init(), oauth_get_client(), onedirsync_run(), onepoll_run(), page_content(), pagelist_widget(), pdl_selector(), perm_is_allowed(), photo_init(), photo_new_resource(), photo_upload(), photos_album_exists(), photos_album_get_db_idstr(), photos_album_rename(), photos_albums_list(), photos_content(), photos_list_photos(), photos_post(), ping_init(), poco_init(), poco_load(), poke_content(), poke_init(), poller_run(), post_activity_item(), post_init(), post_post(), private_messages_drop(), private_messages_fetch_conversation(), private_messages_fetch_message(), private_messages_list(), process_channel_sync_delivery(), process_delivery(), process_mail_delivery(), process_profile_delivery(), profile_content(), profile_init(), profile_load(), profile_photo_post(), profile_sidebar(), profiles_content(), profiles_init(), profiles_post(), profperm_content(), public_recips(), qsearch_init(), queue_run(), random_profile(), rconnect_url(), red_zrl_callback(), redir_init(), ref_session_destroy(), ref_session_gc(), ref_session_read(), ref_session_write(), register_content(), register_hook(), register_post(), reload_plugins(), remove_all_xchan_resources(), remove_community_tag(), remove_queue_item(), rmagic_init(), rmagic_post(), photo_driver\save(), saved_searches(), search_ac_init(), search_content(), search_init(), search_saved_searches(), send_message(), send_reg_approval_email(), send_status_notifications(), service_class_allows(), service_class_fetch(), Cache\set(), set_config(), set_default_login_identity(), set_pconfig(), set_xconfig(), RedInode\setName(), settings_aside(), settings_post(), setup_content(), share_init(), siteinfo_content(), siteinfo_init(), sitelist_init(), sources_content(), sources_post(), starred_init(), photo_driver\store(), store_item_tag(), stream_perms_api_uids(), stream_perms_xchans(), subthread_content(), suggest_init(), suggestion_query(), sync_directories(), syncdirs(), tag_deliver(), tagadelic(), tagger_content(), tagrm_content(), tagrm_post(), tgroup_check(), thing_init(), uninstall_plugin(), unregister_hook(), update_directory_entry(), update_modtime(), update_queue_time(), update_suggestions(), user_allow(), user_deny(), RedBasicAuth\validateUserPass(), vcard_from_xchan(), viewconnections_content(), viewsrc_content(), vote_content(), vote_init(), vote_post(), wall_attach_post(), wall_upload_post(), webpages_content(), wfinger_init(), xchan_content(), xchan_mail_query(), xchan_query(), xrd_init(), z_input_filter(), z_readdir(), zfinger_init(), zid_init(), zot_feed(), zot_finger(), zot_get_hubloc(), zot_gethub(), zot_import(), zot_process_response(), zot_refresh(), and zotfeed_init().

    +

    Referenced by abook_connections(), abook_self(), abook_toggle_flag(), account_remove(), account_total(), account_verify_password(), acl_init(), add_fcontact(), admin_content(), admin_page_dbsync(), admin_page_hubloc(), admin_page_summary(), admin_page_users(), admin_page_users_post(), advanced_profile(), all_friends(), allfriends_content(), allowed_public_recips(), api_direct_messages_box(), api_direct_messages_new(), api_favorites(), api_ff_ids(), api_format_items(), api_get_user(), api_status_show(), api_statuses_f(), api_statuses_home_timeline(), api_statuses_mentions(), api_statuses_public_timeline(), api_statuses_repeat(), api_statuses_show(), api_statuses_user_timeline(), api_user(), api_users_show(), attach_by_hash(), attach_by_hash_nodata(), attach_count_files(), attach_list_files(), attach_mkdir(), attach_store(), authenticate_success(), blocks_content(), build_sync_packet(), call_hooks(), categories_widget(), change_channel(), chanman_remove_everything_from_network(), channel_content(), channel_remove(), channel_total(), channelx_by_hash(), channelx_by_n(), channelx_by_nick(), chanview_content(), check_account_email(), check_account_invite(), check_config(), check_item_source(), check_webbie(), RedDirectory\childExists(), Cache\clear(), collect_recipients(), comanche_block(), common_friends(), common_friends_zcid(), common_init(), community_content(), connect_init(), connect_post(), connections_content(), connections_init(), connections_post(), consume_feed(), contact_block(), contact_profile_assign(), contact_remove(), contact_select(), contactgroup_content(), contacts_not_grouped(), count_all_friends(), count_common_friends(), count_common_friends_zcid(), create_account(), create_identity(), crepair_content(), crepair_init(), crepair_post(), current_theme(), del_config(), del_pconfig(), del_xconfig(), delegate_content(), RedInode\delete(), delete_imported_item(), delete_item_lowlevel(), deliver_run(), dfrn_deliver(), dir_tagadelic(), directory_content(), directory_run(), dirsearch_content(), display_content(), drop_item(), editblock_content(), editlayout_content(), editpost_content(), editwebpage_content(), encode_item(), event_store(), events_content(), expand_groups(), expire_run(), fbrowser_content(), feed_init(), fetch_post_tags(), fileas_widget(), filer_content(), filerm_content(), filestorage_content(), first_post_date(), fix_attached_photo_permissions(), fix_contact_ssl_policy(), fix_private_photos(), fix_system_urls(), follow_widget(), fsuggest_content(), fsuggest_post(), generate_user_guid(), Cache\get(), get_all_perms(), get_birthdays(), get_config_from_storage(), get_events(), get_item_elements(), RedDirectory\getChild(), RedDirectory\getChildren(), gprobe_run(), group_add(), group_add_member(), group_byname(), group_content(), group_get_members(), group_post(), group_rec_byhash(), group_rmv(), group_rmv_member(), group_select(), group_side(), groups_containing(), handle_tag(), identity_basic_export(), identity_check_service_class(), import_author_xchan(), import_directory_keywords(), import_directory_profile(), import_post(), import_profile_photo(), import_site(), import_xchan(), install_plugin(), intro_content(), intro_post(), invite_post(), item_check_service_class(), item_expire(), item_message_id(), item_post(), item_store(), item_store_update(), items_fetch(), lastpost_content(), layout_select(), layouts_content(), like_content(), list_public_sites(), load_config(), load_contact_links(), load_hooks(), load_pconfig(), load_plugin(), load_translation_table(), load_xconfig(), lockview_content(), FKOAuth1\loginUser(), FKOAuthDataStore\lookup_consumer(), FKOAuthDataStore\lookup_nonce(), FKOAuthDataStore\lookup_token(), lostpass_content(), lostpass_post(), magic_init(), mail_store(), manage_content(), match_content(), member_of(), menu_add_item(), menu_create(), menu_del_item(), menu_delete(), menu_delete_id(), menu_edit(), menu_edit_item(), menu_fetch(), menu_fetch_id(), menu_list(), message_content(), mimetype_select(), mini_group_select(), mitem_content(), mood_init(), msearch_post(), network_content(), network_init(), FKOAuthDataStore\new_access_token(), new_contact(), new_cookie(), FKOAuthDataStore\new_request_token(), notification(), notifications_content(), notifications_post(), notifier_run(), notify_content(), notify_init(), oauth_get_client(), onedirsync_run(), onepoll_run(), page_content(), pagelist_widget(), pdl_selector(), perm_is_allowed(), photo_init(), photo_new_resource(), photo_upload(), photos_album_exists(), photos_album_get_db_idstr(), photos_album_rename(), photos_albums_list(), photos_content(), photos_list_photos(), photos_post(), ping_init(), poco_init(), poco_load(), poke_content(), poke_init(), poller_run(), post_activity_item(), post_init(), post_post(), private_messages_drop(), private_messages_fetch_conversation(), private_messages_fetch_message(), private_messages_list(), process_channel_sync_delivery(), process_delivery(), process_mail_delivery(), process_profile_delivery(), profile_content(), profile_init(), profile_load(), profile_photo_post(), profile_sidebar(), profiles_content(), profiles_init(), profiles_post(), profperm_content(), public_recips(), qsearch_init(), queue_run(), random_profile(), rconnect_url(), red_zrl_callback(), redir_init(), ref_session_destroy(), ref_session_gc(), ref_session_read(), ref_session_write(), register_content(), register_hook(), register_post(), reload_plugins(), remove_all_xchan_resources(), remove_community_tag(), remove_queue_item(), rmagic_init(), rmagic_post(), photo_driver\save(), saved_searches(), search_ac_init(), search_content(), search_init(), search_saved_searches(), send_message(), send_reg_approval_email(), send_status_notifications(), service_class_allows(), service_class_fetch(), Cache\set(), set_config(), set_default_login_identity(), set_pconfig(), set_xconfig(), RedInode\setName(), settings_aside(), settings_post(), setup_content(), share_init(), siteinfo_content(), siteinfo_init(), sitelist_init(), sources_content(), sources_post(), starred_init(), photo_driver\store(), store_item_tag(), stream_perms_api_uids(), stream_perms_xchans(), subthread_content(), suggest_init(), suggestion_query(), sync_directories(), syncdirs(), tag_deliver(), tagadelic(), tagger_content(), tagrm_content(), tagrm_post(), tgroup_check(), thing_init(), uninstall_plugin(), unregister_hook(), update_directory_entry(), update_modtime(), update_queue_time(), update_suggestions(), user_allow(), user_deny(), RedBasicAuth\validateUserPass(), vcard_from_xchan(), viewconnections_content(), viewsrc_content(), vote_content(), vote_init(), vote_post(), wall_attach_post(), wall_upload_post(), webpages_content(), wfinger_init(), xchan_content(), xchan_mail_query(), xchan_query(), xrd_init(), z_input_filter(), z_readdir(), zfinger_init(), zid_init(), zot_feed(), zot_finger(), zot_get_hubloc(), zot_gethub(), zot_import(), zot_process_response(), zot_refresh(), and zotfeed_init().

    diff --git a/doc/html/dir_23ec12649285f9fabf3a6b7380226c28.html b/doc/html/dir_23ec12649285f9fabf3a6b7380226c28.html index 4c21b0927..0b859ac31 100644 --- a/doc/html/dir_23ec12649285f9fabf3a6b7380226c28.html +++ b/doc/html/dir_23ec12649285f9fabf3a6b7380226c28.html @@ -106,6 +106,8 @@ $(document).ready(function(){initNavTree('dir_23ec12649285f9fabf3a6b7380226c28.h Directories directory  fpostit   +directory  wp +  diff --git a/doc/html/dir_23ec12649285f9fabf3a6b7380226c28.js b/doc/html/dir_23ec12649285f9fabf3a6b7380226c28.js index 1ea37ec69..e59a2a7c4 100644 --- a/doc/html/dir_23ec12649285f9fabf3a6b7380226c28.js +++ b/doc/html/dir_23ec12649285f9fabf3a6b7380226c28.js @@ -1,6 +1,7 @@ var dir_23ec12649285f9fabf3a6b7380226c28 = [ [ "fpostit", "dir_0eaa4a0adae8ba4811e133c6e594aeee.html", "dir_0eaa4a0adae8ba4811e133c6e594aeee" ], + [ "wp", "dir_720432dea4a717197ae070dbc42b8f20.html", "dir_720432dea4a717197ae070dbc42b8f20" ], [ "db_update.php", "db__update_8php.html", null ], [ "docblox_errorchecker.php", "docblox__errorchecker_8php.html", "docblox__errorchecker_8php" ], [ "extract.php", "extract_8php.html", "extract_8php" ], diff --git a/doc/html/dir_720432dea4a717197ae070dbc42b8f20.html b/doc/html/dir_720432dea4a717197ae070dbc42b8f20.html new file mode 100644 index 000000000..a61c006b5 --- /dev/null +++ b/doc/html/dir_720432dea4a717197ae070dbc42b8f20.html @@ -0,0 +1,112 @@ + + + + + + +The Red Matrix: util/wp Directory Reference + + + + + + + + + + + + + +
    +
    +

    Files

    + + + + + + +
    +
    The Red Matrix +
    +
    + + + + + + +
    + +
    +
    +
    + +
    + + + + +
    + +
    + +
    +
    +
    wp Directory Reference
    +
    +
    + + + + +

    +Files

    file  post_to_red.php
     
    +
    +
    + diff --git a/doc/html/dir_720432dea4a717197ae070dbc42b8f20.js b/doc/html/dir_720432dea4a717197ae070dbc42b8f20.js new file mode 100644 index 000000000..8d76d72be --- /dev/null +++ b/doc/html/dir_720432dea4a717197ae070dbc42b8f20.js @@ -0,0 +1,4 @@ +var dir_720432dea4a717197ae070dbc42b8f20 = +[ + [ "post_to_red.php", "post__to__red_8php.html", "post__to__red_8php" ] +]; \ No newline at end of file diff --git a/doc/html/dir_817f6d302394b98e59575acdb59998bc.html b/doc/html/dir_817f6d302394b98e59575acdb59998bc.html index 5c55343df..0140685a8 100644 --- a/doc/html/dir_817f6d302394b98e59575acdb59998bc.html +++ b/doc/html/dir_817f6d302394b98e59575acdb59998bc.html @@ -116,6 +116,8 @@ Files   file  mod_register.php   +file  none.php +  file  theme_init.php   diff --git a/doc/html/dir_817f6d302394b98e59575acdb59998bc.js b/doc/html/dir_817f6d302394b98e59575acdb59998bc.js index f42b8d444..c7289c3d1 100644 --- a/doc/html/dir_817f6d302394b98e59575acdb59998bc.js +++ b/doc/html/dir_817f6d302394b98e59575acdb59998bc.js @@ -6,5 +6,6 @@ var dir_817f6d302394b98e59575acdb59998bc = [ "mod_import.php", "mod__import_8php.html", "mod__import_8php" ], [ "mod_new_channel.php", "mod__new__channel_8php.html", "mod__new__channel_8php" ], [ "mod_register.php", "mod__register_8php.html", "mod__register_8php" ], - [ "theme_init.php", "theme__init_8php.html", null ] + [ "none.php", "none_8php.html", null ], + [ "theme_init.php", "theme__init_8php.html", "theme__init_8php" ] ]; \ No newline at end of file diff --git a/doc/html/extract_8php.html b/doc/html/extract_8php.html index 20e95c86d..0c6a3452b 100644 --- a/doc/html/extract_8php.html +++ b/doc/html/extract_8php.html @@ -132,7 +132,7 @@ Variables
    -

    Referenced by activity_sanitise(), add_fcontact(), api_rss_extra(), array_sanitise(), attach_mkdir(), attach_store(), check_account_admin(), check_account_email(), check_account_invite(), check_account_password(), check_list_permissions(), check_webbie(), connect_content(), connections_content(), construct_page(), contact_block(), contact_select(), conversation(), create_account(), create_identity(), dbesc_array(), directory_content(), event_store(), feature_enabled(), fetch_xrd_links(), find_xchan_in_array(), format_like(), get_all_perms(), get_atom_elements(), get_features(), get_item_elements(), get_mail_elements(), get_mood_verbs(), get_poke_verbs(), get_profile_elements(), Item\get_template_data(), get_terms_oftype(), App\get_widgets(), group_select(), identity_basic_import(), ids_to_querystr(), import_directory_profile(), import_post(), import_site(), import_xchan(), item_getfeedattach(), item_store(), item_store_update(), items_fetch(), like_content(), like_puller(), load_database(), lrdd(), magic_init(), mail_store(), menu_add_item(), menu_create(), menu_edit(), menu_edit_item(), message_content(), mood_init(), network_content(), new_channel_post(), new_contact(), obj_verbs(), parse_url_content(), pdl_selector(), perm_is_allowed(), photo_upload(), photos_album_get_db_idstr(), photos_create_item(), photos_post(), ping_init(), po2php_run(), poke_init(), post_activity_item(), post_init(), post_post(), proc_run(), process_channel_sync_delivery(), process_delivery(), process_mail_delivery(), process_profile_delivery(), profile_activity(), profile_sidebar(), profile_tabs(), profiles_content(), redbasic_form(), register_post(), remove_community_tag(), photo_driver\save(), send_reg_approval_email(), service_class_allows(), service_class_fetch(), App\set_apps(), settings_post(), sort_by_date(), stringify_array_elms(), subthread_content(), suggest_content(), tagger_content(), tagrm_content(), tagrm_post(), theme_attachments(), theme_content(), thing_init(), validate_channelname(), wfinger_init(), xchan_mail_query(), xchan_query(), xml2array(), xrd_init(), zfinger_init(), zid(), zid_init(), zot_fetch(), zot_get_hubloc(), zot_gethub(), zot_import(), zot_process_response(), and zot_register_hub().

    +

    Referenced by activity_sanitise(), add_fcontact(), api_rss_extra(), array_sanitise(), attach_mkdir(), attach_store(), check_account_admin(), check_account_email(), check_account_invite(), check_account_password(), check_list_permissions(), check_webbie(), connect_content(), connections_content(), connections_post(), construct_page(), contact_block(), contact_select(), conversation(), create_account(), create_identity(), dbesc_array(), directory_content(), event_store(), feature_enabled(), fetch_xrd_links(), find_xchan_in_array(), format_like(), get_all_perms(), get_atom_elements(), get_features(), get_item_elements(), get_mail_elements(), get_mood_verbs(), get_poke_verbs(), get_profile_elements(), Item\get_template_data(), get_terms_oftype(), App\get_widgets(), group_select(), identity_basic_import(), ids_to_querystr(), import_directory_profile(), import_post(), import_site(), import_xchan(), item_getfeedattach(), item_store(), item_store_update(), items_fetch(), like_content(), like_puller(), load_database(), lrdd(), magic_init(), mail_store(), menu_add_item(), menu_create(), menu_edit(), menu_edit_item(), message_content(), mood_init(), network_content(), new_channel_post(), new_contact(), obj_verbs(), parse_url_content(), pdl_selector(), perm_is_allowed(), photo_upload(), photos_album_get_db_idstr(), photos_create_item(), photos_post(), ping_init(), po2php_run(), poke_init(), post_activity_item(), post_init(), post_post(), proc_run(), process_channel_sync_delivery(), process_delivery(), process_mail_delivery(), process_profile_delivery(), profile_activity(), profile_sidebar(), profile_tabs(), profiles_content(), redbasic_form(), register_post(), remove_community_tag(), photo_driver\save(), send_reg_approval_email(), service_class_allows(), service_class_fetch(), App\set_apps(), settings_post(), sort_by_date(), stringify_array_elms(), subthread_content(), suggest_content(), tagger_content(), tagrm_content(), tagrm_post(), theme_attachments(), theme_content(), thing_init(), validate_channelname(), wfinger_init(), xchan_mail_query(), xchan_query(), xml2array(), xrd_init(), zfinger_init(), zid(), zid_init(), zot_fetch(), zot_get_hubloc(), zot_gethub(), zot_import(), zot_process_response(), and zot_register_hub().

    diff --git a/doc/html/files.html b/doc/html/files.html index 36eb1a64a..88f5ddabe 100644 --- a/doc/html/files.html +++ b/doc/html/files.html @@ -320,16 +320,18 @@ $(document).ready(function(){initNavTree('files.html','');}); o+util |o+fpostit ||\*fpostit.php -|o*db_update.php -|o*docblox_errorchecker.php -|o*extract.php -|o*friendica-to-smarty-tpl.py -|o*php2po.php -|o*po2php.php -|o*tpldebug.php -|o*typo.php -|o*typohelper.php -|\*updatetpl.py +|o+wp +||\*post_to_red.php +|o*db_update.php +|o*docblox_errorchecker.php +|o*extract.php +|o*friendica-to-smarty-tpl.py +|o*php2po.php +|o*po2php.php +|o*tpldebug.php +|o*typo.php +|o*typohelper.php +|\*updatetpl.py o+view |o+php ||o*default.php @@ -338,7 +340,8 @@ $(document).ready(function(){initNavTree('files.html','');}); ||o*mod_import.php ||o*mod_new_channel.php ||o*mod_register.php -||\*theme_init.php +||o*none.php +||\*theme_init.php |\+theme | o+apw | |o+php diff --git a/doc/html/globals.html b/doc/html/globals.html index 730f50fcb..ec31017c1 100644 --- a/doc/html/globals.html +++ b/doc/html/globals.html @@ -165,9 +165,18 @@ $(document).ready(function(){initNavTree('globals.html','');});