1
0
Fork 0

Merge remote-tracking branch 'friendika-master/master' into iconpopup

This commit is contained in:
Fabio Comuni 2011-04-04 09:31:12 +02:00
commit 92156cd840
21 changed files with 401 additions and 130 deletions

View file

@ -2,9 +2,9 @@
set_time_limit(0); set_time_limit(0);
define ( 'FRIENDIKA_VERSION', '2.1.933' ); define ( 'FRIENDIKA_VERSION', '2.1.938' );
define ( 'DFRN_PROTOCOL_VERSION', '2.1' ); define ( 'DFRN_PROTOCOL_VERSION', '2.2' );
define ( 'DB_UPDATE_VERSION', 1045 ); define ( 'DB_UPDATE_VERSION', 1046 );
define ( 'EOL', "<br />\r\n" ); define ( 'EOL', "<br />\r\n" );
define ( 'ATOM_TIME', 'Y-m-d\TH:i:s\Z' ); define ( 'ATOM_TIME', 'Y-m-d\TH:i:s\Z' );
@ -2022,7 +2022,7 @@ function contact_block() {
intval($shown) intval($shown)
); );
if(count($r)) { if(count($r)) {
$o .= '<h4 class="contact-h4">' . sprintf(tt('%d Contact','%d Contacts', $total),$total) . '</h4><div id="contact-block">'; $o .= '<h4 class="contact-h4">' . sprintf( tt('%d Contact','%d Contacts', $total),$total) . '</h4><div id="contact-block">';
foreach($r as $rr) { foreach($r as $rr) {
$redirect_url = $a->get_baseurl() . '/redir/' . $rr['id']; $redirect_url = $a->get_baseurl() . '/redir/' . $rr['id'];
if(local_user() && ($rr['uid'] == local_user()) if(local_user() && ($rr['uid'] == local_user())
@ -2405,9 +2405,7 @@ function get_birthdays() {
if(! local_user()) if(! local_user())
return $o; return $o;
$bd_format = get_config('system','birthday_format'); $bd_format = t('g A l F d') ; // 8 AM Friday January 18
if(! $bd_format)
$bd_format = 'g A l F d' ; // 8 AM Friday January 18
$r = q("SELECT `event`.*, `event`.`id` AS `eid`, `contact`.* FROM `event` $r = q("SELECT `event`.*, `event`.`id` AS `eid`, `contact`.* FROM `event`
LEFT JOIN `contact` ON `contact`.`id` = `event`.`cid` LEFT JOIN `contact` ON `contact`.`id` = `event`.`cid`
@ -2670,7 +2668,6 @@ function extract_item_authors($arr,$uid) {
return array(); return array();
}} }}
if(! function_exists('item_photo_menu')){ if(! function_exists('item_photo_menu')){
function item_photo_menu($item){ function item_photo_menu($item){
$a = get_app(); $a = get_app();
@ -2721,3 +2718,23 @@ function item_photo_menu($item){
} }
return $o; return $o;
}} }}
if(! function_exists('lang_selector')) {
function lang_selector() {
global $lang;
$o .= '<div id="language-selector" style="display: none;" >';
$o .= '<form action="" method="post" ><select name="system_language" onchange="this.form.submit();" >';
$langs = glob('view/*/strings.php');
if(is_array($langs) && count($langs)) {
if(! in_array('view/en/strings.php',$langs))
$langs[] = 'view/en/';
foreach($langs as $l) {
$ll = substr($l,5);
$ll = substr($ll,0,strrpos($ll,'/'));
$selected = (($ll === $lang) ? ' selected="selected" ' : '');
$o .= '<option value="' . $ll . '"' . $selected . '>' . $ll . '</option>';
}
}
$o .= '</select></form></div>';
return $o;
}}

View file

@ -366,6 +366,7 @@ CREATE TABLE IF NOT EXISTS `user` (
`email` char(255) NOT NULL, `email` char(255) NOT NULL,
`openid` char(255) NOT NULL, `openid` char(255) NOT NULL,
`timezone` char(128) NOT NULL, `timezone` char(128) NOT NULL,
`language` char(32) NOT NULL DEFAULT 'en',
`register_date` datetime NOT NULL DEFAULT '0000-00-00 00:00:00', `register_date` datetime NOT NULL DEFAULT '0000-00-00 00:00:00',
`login_date` datetime NOT NULL DEFAULT '0000-00-00 00:00:00', `login_date` datetime NOT NULL DEFAULT '0000-00-00 00:00:00',
`default-location` char(255) NOT NULL, `default-location` char(255) NOT NULL,

View file

@ -22,7 +22,7 @@ function bbcode($Text) {
// Perform URL Search // Perform URL Search
$Text = preg_replace("/([^\]\=]|^)(https?\:\/\/[a-zA-Z0-9\:\/\-\?\&\.\=\_\~\#\'\%\$\!\+]+)/", ' <a href="$2" target="external-link">$2</a>', $Text); $Text = preg_replace("/([^\]\=]|^)(https?\:\/\/[a-zA-Z0-9\:\/\-\?\&\.\=\_\~\#\'\%\$\!\+\,]+)/", ' <a href="$2" target="external-link">$2</a>', $Text);
$Text = preg_replace("/\[url\]([$URLSearchString]*)\[\/url\]/", '<a href="$1" target="external-link">$1</a>', $Text); $Text = preg_replace("/\[url\]([$URLSearchString]*)\[\/url\]/", '<a href="$1" target="external-link">$1</a>', $Text);
$Text = preg_replace("(\[url\=([$URLSearchString]*)\](.+?)\[/url\])", '<a href="$1" target="external-link">$2</a>', $Text); $Text = preg_replace("(\[url\=([$URLSearchString]*)\](.+?)\[/url\])", '<a href="$1" target="external-link">$2</a>', $Text);

View file

@ -110,7 +110,7 @@ function group_get_members($gid) {
LEFT JOIN `contact` ON `contact`.`id` = `group_member`.`contact-id` LEFT JOIN `contact` ON `contact`.`id` = `group_member`.`contact-id`
WHERE `gid` = %d AND `group_member`.`uid` = %d", WHERE `gid` = %d AND `group_member`.`uid` = %d",
intval($gid), intval($gid),
intval($_SESSION['uid']) intval(local_user())
); );
if(count($r)) if(count($r))
$ret = $r; $ret = $r;
@ -118,6 +118,21 @@ function group_get_members($gid) {
return $ret; return $ret;
} }
function group_public_members($gid) {
$ret = 0;
if(intval($gid)) {
$r = q("SELECT `contact`.`id` AS `contact-id` FROM `group_member`
LEFT JOIN `contact` ON `contact`.`id` = `group_member`.`contact-id`
WHERE `gid` = %d AND `group_member`.`uid` = %d AND `contact`.`network` != 'dfrn' ",
intval($gid),
intval(local_user())
);
if(count($r))
$ret = count($r);
}
return $ret;
}
function group_side($every="contacts",$each="group") { function group_side($every="contacts",$each="group") {

View file

@ -762,7 +762,7 @@ function dfrn_deliver($owner,$contact,$atom, $dissolve = false) {
if(! $rino_enable) if(! $rino_enable)
$rino = 0; $rino = 0;
$url = $contact['notify'] . '?f=&dfrn_id=' . $idtosend . '&dfrn_version=' . DFRN_PROTOCOL_VERSION . (($rino) ? '&rino=1' : ''); $url = $contact['notify'] . '&dfrn_id=' . $idtosend . '&dfrn_version=' . DFRN_PROTOCOL_VERSION . (($rino) ? '&rino=1' : '');
logger('dfrn_deliver: ' . $url); logger('dfrn_deliver: ' . $url);

View file

@ -26,6 +26,7 @@
var pr = 0; var pr = 0;
var liking = 0; var liking = 0;
var in_progress = false; var in_progress = false;
var langSelect = false;
$(document).ready(function() { $(document).ready(function() {
$.ajaxSetup({cache: false}); $.ajaxSetup({cache: false});
@ -45,6 +46,18 @@
$('#pause').html(''); $('#pause').html('');
} }
} }
// F8 - show/hide language selector
if(event.keyCode == '119') {
if(langSelect) {
langSelect = false;
$('#language-selector').hide();
}
else {
langSelect = true;
$('#language-selector').show();
}
}
// this is shift-home on FF, but $ on IE, disabling until I figure out why the diff. // this is shift-home on FF, but $ on IE, disabling until I figure out why the diff.
// update: incompatible usage of onKeyDown vs onKeyPress // update: incompatible usage of onKeyDown vs onKeyPress
// if(event.keyCode == '36' && event.shiftKey == true) { // if(event.keyCode == '36' && event.shiftKey == true) {

View file

@ -16,6 +16,7 @@ function nav(&$a) {
*/ */
$a->page['nav'] .= '<div id="panel" style="display: none;"></div>' ; $a->page['nav'] .= '<div id="panel" style="display: none;"></div>' ;
$a->page['nav'] .= lang_selector();
/** /**
* *

View file

@ -167,7 +167,7 @@ function poller_run($argv, $argc){
if(intval($contact['duplex']) && $contact['issued-id']) if(intval($contact['duplex']) && $contact['issued-id'])
$idtosend = '1:' . $orig_id; $idtosend = '1:' . $orig_id;
$url = $contact['poll'] . '?f=&dfrn_id=' . $idtosend $url = $contact['poll'] . '?dfrn_id=' . $idtosend
. '&dfrn_version=' . DFRN_PROTOCOL_VERSION . '&dfrn_version=' . DFRN_PROTOCOL_VERSION
. '&type=data&last_update=' . $last_update ; . '&type=data&last_update=' . $last_update ;

View file

@ -43,6 +43,7 @@ if (isset($_SERVER['HTTP_ACCEPT_LANGUAGE'])) {
$lang = ((isset($a->config['system']['language'])) ? $a->config['system']['language'] : 'en'); $lang = ((isset($a->config['system']['language'])) ? $a->config['system']['language'] : 'en');
} }
load_translation_table($lang); load_translation_table($lang);
/** /**
@ -86,6 +87,19 @@ $a->init_pagehead();
session_start(); session_start();
/**
* Language was set earlier, but we can over-ride it in the session.
* We have to do it here because the session was just now opened.
*/
if(x($_POST,'system_language'))
$_SESSION['language'] = $_POST['system_language'];
if((x($_SESSION,'language')) && ($_SESSION['language'] !== $lang)) {
$lang = $_SESSION['language'];
load_translation_table($lang);
}
/** /**
* *
* For Mozilla auth manager - still needs sorting, and this might conflict with LRDD header. * For Mozilla auth manager - still needs sorting, and this might conflict with LRDD header.

View file

@ -262,10 +262,13 @@ function dfrn_notify_post(&$a) {
$when = datetime_convert('UTC','UTC','now','Y-m-d H:i:s'); $when = datetime_convert('UTC','UTC','now','Y-m-d H:i:s');
} }
if($deleted) { if($deleted) {
$r = q("SELECT * FROM `item` WHERE `uri` = '%s' AND `uid` = %d LIMIT 1",
$r = q("SELECT * FROM `item` WHERE `uri` = '%s' AND `uid` = %d AND `contact-id` = %d LIMIT 1",
dbesc($uri), dbesc($uri),
intval($importer['importer_uid']) intval($importer['importer_uid']),
intval($importer['id'])
); );
if(count($r)) { if(count($r)) {
$item = $r[0]; $item = $r[0];

View file

@ -63,7 +63,7 @@ function dfrn_poll_init(&$a) {
if(count($r)) { if(count($r)) {
$s = fetch_url($r[0]['poll'] . '?f=&dfrn_id=' . $my_id . '&type=profile-check'); $s = fetch_url($r[0]['poll'] . '?dfrn_id=' . $my_id . '&type=profile-check');
logger("dfrn_poll: old profile returns " . $s, LOGGER_DATA); logger("dfrn_poll: old profile returns " . $s, LOGGER_DATA);
@ -92,7 +92,7 @@ function dfrn_poll_init(&$a) {
} }
if($type === 'profile-check') { if($type === 'profile-check' && $dfrn_version < 2.2 ) {
if((strlen($challenge)) && (strlen($sec))) { if((strlen($challenge)) && (strlen($sec))) {
@ -182,8 +182,69 @@ function dfrn_poll_post(&$a) {
$dfrn_id = ((x($_POST,'dfrn_id')) ? $_POST['dfrn_id'] : ''); $dfrn_id = ((x($_POST,'dfrn_id')) ? $_POST['dfrn_id'] : '');
$challenge = ((x($_POST,'challenge')) ? $_POST['challenge'] : ''); $challenge = ((x($_POST,'challenge')) ? $_POST['challenge'] : '');
$url = ((x($_POST,'url')) ? $_POST['url'] : ''); $url = ((x($_POST,'url')) ? $_POST['url'] : '');
$sec = ((x($_POST,'sec')) ? $_POST['sec'] : '');
$ptype = ((x($_POST,'type')) ? $_POST['type'] : '');
$dfrn_version = ((x($_POST,'dfrn_version')) ? (float) $_POST['dfrn_version'] : 2.0); $dfrn_version = ((x($_POST,'dfrn_version')) ? (float) $_POST['dfrn_version'] : 2.0);
if($ptype === 'profile-check') {
if((strlen($challenge)) && (strlen($sec))) {
logger('dfrn_poll: POST: profile-check');
q("DELETE FROM `profile_check` WHERE `expire` < " . intval(time()));
$r = q("SELECT * FROM `profile_check` WHERE `sec` = '%s' ORDER BY `expire` DESC LIMIT 1",
dbesc($sec)
);
if(! count($r)) {
xml_status(3, 'No ticket');
// NOTREACHED
}
$orig_id = $r[0]['dfrn_id'];
if(strpos($orig_id, ':'))
$orig_id = substr($orig_id,2);
$c = q("SELECT * FROM `contact` WHERE `id` = %d LIMIT 1",
intval($r[0]['cid'])
);
if(! count($c)) {
xml_status(3, 'No profile');
}
$contact = $c[0];
$sent_dfrn_id = hex2bin($dfrn_id);
$challenge = hex2bin($challenge);
$final_dfrn_id = '';
if(($contact['duplex']) && strlen($contact['prvkey'])) {
openssl_private_decrypt($sent_dfrn_id,$final_dfrn_id,$contact['prvkey']);
openssl_private_decrypt($challenge,$decoded_challenge,$contact['prvkey']);
}
else {
openssl_public_decrypt($sent_dfrn_id,$final_dfrn_id,$contact['pubkey']);
openssl_public_decrypt($challenge,$decoded_challenge,$contact['pubkey']);
}
$final_dfrn_id = substr($final_dfrn_id, 0, strpos($final_dfrn_id, '.'));
if(strpos($final_dfrn_id,':') == 1)
$final_dfrn_id = substr($final_dfrn_id,2);
if($final_dfrn_id != $orig_id) {
logger('profile_check: ' . $final_dfrn_id . ' != ' . $orig_id, LOGGER_DEBUG);
// did not decode properly - cannot trust this site
xml_status(3, 'Bad decryption');
}
header("Content-type: text/xml");
echo "<?xml version=\"1.0\" encoding=\"UTF-8\"?><dfrn_poll><status>0</status><challenge>$decoded_challenge</challenge><sec>$sec</sec></dfrn_poll>";
killme();
// NOTREACHED
}
}
$direction = (-1); $direction = (-1);
if(strpos($dfrn_id,':') == 1) { if(strpos($dfrn_id,':') == 1) {
$direction = intval(substr($dfrn_id,0,1)); $direction = intval(substr($dfrn_id,0,1));
@ -363,15 +424,43 @@ function dfrn_poll_content(&$a) {
} }
if(($type === 'profile') && (strlen($sec))) { if(($type === 'profile') && (strlen($sec))) {
// URL reply // URL reply
if($dfrn_version < 2.2) {
$s = fetch_url($r[0]['poll'] $s = fetch_url($r[0]['poll']
. '?f=&dfrn_id=' . $encrypted_id . '?dfrn_id=' . $encrypted_id
. '&type=profile-check' . '&type=profile-check'
. '&dfrn_version=' . DFRN_PROTOCOL_VERSION . '&dfrn_version=' . DFRN_PROTOCOL_VERSION
. '&challenge=' . $challenge . '&challenge=' . $challenge
. '&sec=' . $sec . '&sec=' . $sec
); );
}
else {
$s = post_url($r[0]['poll'], array(
'dfrn_id' => $encrypted_id,
'type' => 'profile-check',
'dfrn_version' => DFRN_PROTOCOL_VERSION,
'challenge' => $challenge,
'sec' => $sec
));
}
switch($destination_url) {
case 'profile':
$dest = $a->get_baseurl() . '/profile/' . $profile . '?tab=profile';
break;
case 'photos':
$dest = $a->get_baseurl() . '/photos/' . $profile;
break;
case 'status':
case '':
$dest = $a->get_baseurl() . '/profile/' . $profile;
break;
default:
$dest = $destination_url;
break;
}
logger("dfrn_poll: sec profile: " . $s, LOGGER_DATA); logger("dfrn_poll: sec profile: " . $s, LOGGER_DATA);
@ -399,9 +488,10 @@ function dfrn_poll_content(&$a) {
); );
} }
$profile = $r[0]['nickname']; $profile = $r[0]['nickname'];
goaway((strlen($destination_url)) ? $destination_url : $a->get_baseurl() . '/profile/' . $profile);
goaway($dest);
} }
goaway($a->get_baseurl()); goaway($dest);
// NOTREACHED // NOTREACHED
} }

View file

@ -172,7 +172,7 @@ function dfrn_request_post(&$a) {
$dfrn_request = $contact_record['request']; $dfrn_request = $contact_record['request'];
if(strlen($dfrn_request) && strlen($confirm_key)) if(strlen($dfrn_request) && strlen($confirm_key))
$s = fetch_url($dfrn_request . '?f=&confirm_key=' . $confirm_key); $s = fetch_url($dfrn_request . '?confirm_key=' . $confirm_key);
// (ignore reply, nothing we can do it failed) // (ignore reply, nothing we can do it failed)

View file

@ -237,7 +237,7 @@ function message_content(&$a) {
'$delete' => t('Delete conversation'), '$delete' => t('Delete conversation'),
'$body' => $rr['body'], '$body' => $rr['body'],
'$to_name' => $rr['name'], '$to_name' => $rr['name'],
'$date' => datetime_convert('UTC',date_default_timezone_get(),$rr['mailcreated'],'D, d M Y - g:i A') '$date' => datetime_convert('UTC',date_default_timezone_get(),$rr['mailcreated'], t('D, d M Y - g:i A'))
)); ));
} }
$o .= paginate($a); $o .= paginate($a);

View file

@ -54,6 +54,14 @@ function network_content(&$a, $update = 0) {
} }
if(! $update) { if(! $update) {
if(group) {
if(($t = group_public_members($group)) && (! get_pconfig(local_user(),'system','nowarn_insecure'))) {
$plural_form = sprintf( tt('%d member', '%d members', $t), $t);
notice( sprintf( t('Warning: This group contains %s from an insecure network.'), $plural_form ) . EOL);
notice( t('Private messages to this group are at risk of public disclosure.') . EOL);
}
}
$o .= '<script> $(document).ready(function() { $(\'#nav-network-link\').addClass(\'nav-selected\'); });</script>'; $o .= '<script> $(document).ready(function() { $(\'#nav-network-link\').addClass(\'nav-selected\'); });</script>';
$_SESSION['return_url'] = $a->cmd; $_SESSION['return_url'] = $a->cmd;

View file

@ -5,6 +5,7 @@ function redir_init(&$a) {
if((! local_user()) || (! ($a->argc == 2)) || (! intval($a->argv[1]))) if((! local_user()) || (! ($a->argc == 2)) || (! intval($a->argv[1])))
goaway($a->get_baseurl()); goaway($a->get_baseurl());
$cid = $a->argv[1]; $cid = $a->argv[1];
$url = ((x($_GET,'url')) ? $_GET['url'] : '');
$r = q("SELECT * FROM `contact` WHERE `id` = %d AND `uid` = %d LIMIT 1", $r = q("SELECT * FROM `contact` WHERE `id` = %d AND `uid` = %d LIMIT 1",
intval($cid), intval($cid),
@ -37,8 +38,8 @@ function redir_init(&$a) {
); );
logger('mod_redir: ' . $r[0]['name'] . ' ' . $sec, LOGGER_DEBUG); logger('mod_redir: ' . $r[0]['name'] . ' ' . $sec, LOGGER_DEBUG);
$dest = (($url) ? '&destination_url=' . $url : '');
goaway ($r[0]['poll'] . '?dfrn_id=' . $dfrn_id goaway ($r[0]['poll'] . '?dfrn_id=' . $dfrn_id
. '&dfrn_version=' . DFRN_PROTOCOL_VERSION . '&type=profile&sec=' . $sec); . '&dfrn_version=' . DFRN_PROTOCOL_VERSION . '&type=profile&sec=' . $sec . $dest );
} }

View file

@ -416,5 +416,6 @@ function update_1044() {
q("ALTER TABLE `profile` ADD FULLTEXT ( `prv_keywords` ) "); q("ALTER TABLE `profile` ADD FULLTEXT ( `prv_keywords` ) ");
} }
function update_1045() {
q("ALTER TABLE `user` ADD `language` CHAR( 16 ) NOT NULL DEFAULT 'en' AFTER `timezone` ");
}

View file

@ -111,8 +111,8 @@ Xgettext and .po workflow
to create the strings.php file to create the strings.php file
When strings are added or modified in source, you could run When strings are added or modified in source, you could run
$ util/run_xgettext.sh view/<language>/messages.po $ cd util; ./run_xgettext.sh ../view/<language>/messages.po
to extraxt strings from source files and join them with the existing .po file: to extract strings from source files and join them with the existing .po file:
new strings are added, the existing are not overwritten. new strings are added, the existing are not overwritten.
If you already translated Friendika using strings.php, you could import your old If you already translated Friendika using strings.php, you could import your old

View file

@ -1,4 +1,4 @@
# FRIENDIKA Distribuited Social Network # FRIENDIKA Distributed Social Network
# Copyright (C) 2010, 2011 Mike Macgirvin # Copyright (C) 2010, 2011 Mike Macgirvin
# This file is distributed under the same license as the Friendika package. # This file is distributed under the same license as the Friendika package.
# Mike Macgirvin, 2010 # Mike Macgirvin, 2010
@ -6,9 +6,9 @@
#, fuzzy #, fuzzy
msgid "" msgid ""
msgstr "" msgstr ""
"Project-Id-Version: 2.1.931\n" "Project-Id-Version: 2.1.933\n"
"Report-Msgid-Bugs-To: \n" "Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2011-03-28 19:42+0200\n" "POT-Creation-Date: 2011-03-30 14:40+0000\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n" "Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: LANGUAGE <LL@li.org>\n" "Language-Team: LANGUAGE <LL@li.org>\n"
@ -429,11 +429,12 @@ msgstr ""
"Impossible de localiser les informations DNS pour le serveur de base de " "Impossible de localiser les informations DNS pour le serveur de base de "
"données '%s'" "données '%s'"
#: ../../include/nav.php:38 ../../boot.php:837 #: ../../include/nav.php:38 ../../boot.php:837 ../../boot.php:839
msgid "Logout" msgid "Logout"
msgstr "Se déconnecter" msgstr "Se déconnecter"
#: ../../include/nav.php:44 ../../boot.php:817 ../../boot.php:823 #: ../../include/nav.php:44 ../../boot.php:817 ../../boot.php:823
#: ../../boot.php:819 ../../boot.php:825
msgid "Login" msgid "Login"
msgstr "Connexion" msgstr "Connexion"
@ -442,7 +443,7 @@ msgid "Home"
msgstr "Accueil" msgstr "Accueil"
#: ../../include/nav.php:61 ../../mod/register.php:445 ../../boot.php:809 #: ../../include/nav.php:61 ../../mod/register.php:445 ../../boot.php:809
#: ../../mod/register.php:463 #: ../../mod/register.php:463 ../../boot.php:811
msgid "Register" msgid "Register"
msgstr "S'inscrire" msgstr "S'inscrire"
@ -452,7 +453,7 @@ msgid "Apps"
msgstr "Applications" msgstr "Applications"
#: ../../include/nav.php:67 ../../mod/search.php:17 ../../boot.php:2055 #: ../../include/nav.php:67 ../../mod/search.php:17 ../../boot.php:2055
#: ../../boot.php:2056 #: ../../boot.php:2056 ../../boot.php:2058
msgid "Search" msgid "Search"
msgstr "Recherche" msgstr "Recherche"
@ -916,7 +917,7 @@ msgid "Wall Photos"
msgstr "Photos du mur" msgstr "Photos du mur"
#: ../../mod/wall_upload.php:82 ../../mod/profile_photo.php:230 #: ../../mod/wall_upload.php:82 ../../mod/profile_photo.php:230
#: ../../mod/photos.php:589 #: ../../mod/photos.php:589 ../../mod/profile_photo.php:232
#, fuzzy #, fuzzy
msgid "Image upload failed." msgid "Image upload failed."
msgstr "Le téléversement de l'image a échoué." msgstr "Le téléversement de l'image a échoué."
@ -990,7 +991,8 @@ msgstr ""
#: ../../mod/profile_photo.php:234 ../../mod/photos.php:106 #: ../../mod/profile_photo.php:234 ../../mod/photos.php:106
#: ../../mod/photos.php:531 ../../mod/photos.php:850 ../../mod/photos.php:865 #: ../../mod/photos.php:531 ../../mod/photos.php:850 ../../mod/photos.php:865
#: ../../mod/register.php:285 ../../mod/register.php:292 #: ../../mod/register.php:285 ../../mod/register.php:292
#: ../../mod/register.php:299 #: ../../mod/register.php:299 ../../mod/profile_photo.php:227
#: ../../mod/profile_photo.php:236
msgid "Profile Photos" msgid "Profile Photos"
msgstr "Photos du profil" msgstr "Photos du profil"
@ -1062,7 +1064,8 @@ msgstr "Non"
#: ../../mod/register.php:424 ../../mod/network.php:484 #: ../../mod/register.php:424 ../../mod/network.php:484
#: ../../mod/display.php:317 ../../mod/profile.php:435 #: ../../mod/display.php:317 ../../mod/profile.php:435
#: ../../mod/register.php:442 ../../mod/network.php:554 #: ../../mod/register.php:442 ../../mod/network.php:554
#: ../../mod/profile.php:490 #: ../../mod/profile.php:490 ../../mod/network.php:595
#: ../../mod/mprofile.php:283 ../../mod/profile.php:492
msgid "" msgid ""
"Shared content is covered by the <a href=\"http://creativecommons.org/" "Shared content is covered by the <a href=\"http://creativecommons.org/"
"licenses/by/3.0/\">Creative Commons Attribution 3.0</a> license." "licenses/by/3.0/\">Creative Commons Attribution 3.0</a> license."
@ -1113,30 +1116,31 @@ msgstr "Vue des nouveautés"
#: ../../mod/network.php:69 ../../mod/message.php:172 #: ../../mod/network.php:69 ../../mod/message.php:172
#: ../../mod/profile.php:134 ../../mod/profile.php:137 #: ../../mod/profile.php:134 ../../mod/profile.php:137
#: ../../mod/mprofile.php:136
#, fuzzy #, fuzzy
msgid "Please enter a link URL:" msgid "Please enter a link URL:"
msgstr "Entrez un lien web:" msgstr "Entrez un lien web:"
#: ../../mod/network.php:70 ../../mod/profile.php:135 #: ../../mod/network.php:70 ../../mod/profile.php:135
#: ../../mod/profile.php:138 #: ../../mod/profile.php:138 ../../mod/mprofile.php:137
#, fuzzy #, fuzzy
msgid "Please enter a YouTube link:" msgid "Please enter a YouTube link:"
msgstr "Entrez un lien Youtube:" msgstr "Entrez un lien Youtube:"
#: ../../mod/network.php:71 ../../mod/profile.php:136 #: ../../mod/network.php:71 ../../mod/profile.php:136
#: ../../mod/profile.php:139 #: ../../mod/profile.php:139 ../../mod/mprofile.php:138
#, fuzzy #, fuzzy
msgid "Please enter a video(.ogg) link/URL:" msgid "Please enter a video(.ogg) link/URL:"
msgstr "Entrez un lien vidéo (.ogg):" msgstr "Entrez un lien vidéo (.ogg):"
#: ../../mod/network.php:72 ../../mod/profile.php:137 #: ../../mod/network.php:72 ../../mod/profile.php:137
#: ../../mod/profile.php:140 #: ../../mod/profile.php:140 ../../mod/mprofile.php:139
#, fuzzy #, fuzzy
msgid "Please enter an audio(.ogg) link/URL:" msgid "Please enter an audio(.ogg) link/URL:"
msgstr "Entrez un lien audio (.ogg):" msgstr "Entrez un lien audio (.ogg):"
#: ../../mod/network.php:73 ../../mod/profile.php:138 #: ../../mod/network.php:73 ../../mod/profile.php:138
#: ../../mod/profile.php:141 #: ../../mod/profile.php:141 ../../mod/mprofile.php:140
#, fuzzy #, fuzzy
msgid "Where are you right now?" msgid "Where are you right now?"
msgstr "Où êtes-vous présentemment?" msgstr "Où êtes-vous présentemment?"
@ -1145,7 +1149,9 @@ msgstr "Où êtes-vous présentemment?"
#: ../../mod/display.php:158 ../../mod/profile.php:161 #: ../../mod/display.php:158 ../../mod/profile.php:161
#: ../../mod/profile.php:322 ../../mod/photos.php:1086 #: ../../mod/profile.php:322 ../../mod/photos.php:1086
#: ../../mod/network.php:441 ../../mod/profile.php:164 #: ../../mod/network.php:441 ../../mod/profile.php:164
#: ../../mod/profile.php:377 #: ../../mod/profile.php:377 ../../mod/network.php:97
#: ../../mod/network.php:479 ../../mod/mprofile.php:163
#: ../../mod/profile.php:165 ../../mod/profile.php:379
#, fuzzy #, fuzzy
msgid "Share" msgid "Share"
msgstr "Partager" msgstr "Partager"
@ -1153,41 +1159,55 @@ msgstr "Partager"
#: ../../mod/network.php:97 ../../mod/message.php:186 #: ../../mod/network.php:97 ../../mod/message.php:186
#: ../../mod/message.php:320 ../../mod/profile.php:162 #: ../../mod/message.php:320 ../../mod/profile.php:162
#: ../../mod/editpost.php:63 ../../mod/profile.php:165 #: ../../mod/editpost.php:63 ../../mod/profile.php:165
#: ../../mod/network.php:98 ../../mod/mprofile.php:164
#: ../../mod/profile.php:166
msgid "Upload photo" msgid "Upload photo"
msgstr "Joindre photo" msgstr "Joindre photo"
#: ../../mod/network.php:98 ../../mod/message.php:187 #: ../../mod/network.php:98 ../../mod/message.php:187
#: ../../mod/message.php:321 ../../mod/profile.php:163 #: ../../mod/message.php:321 ../../mod/profile.php:163
#: ../../mod/editpost.php:64 ../../mod/profile.php:166 #: ../../mod/editpost.php:64 ../../mod/profile.php:166
#: ../../mod/network.php:99 ../../mod/mprofile.php:165
#: ../../mod/profile.php:167
msgid "Insert web link" msgid "Insert web link"
msgstr "Insérer lien web" msgstr "Insérer lien web"
#: ../../mod/network.php:99 ../../mod/profile.php:164 #: ../../mod/network.php:99 ../../mod/profile.php:164
#: ../../mod/editpost.php:65 ../../mod/profile.php:167 #: ../../mod/editpost.php:65 ../../mod/profile.php:167
#: ../../mod/network.php:100 ../../mod/mprofile.php:166
#: ../../mod/profile.php:168
#, fuzzy #, fuzzy
msgid "Insert YouTube video" msgid "Insert YouTube video"
msgstr "Insérer une vidéo Youtube" msgstr "Insérer une vidéo Youtube"
#: ../../mod/network.php:100 ../../mod/profile.php:165 #: ../../mod/network.php:100 ../../mod/profile.php:165
#: ../../mod/editpost.php:66 ../../mod/profile.php:168 #: ../../mod/editpost.php:66 ../../mod/profile.php:168
#: ../../mod/network.php:101 ../../mod/mprofile.php:167
#: ../../mod/profile.php:169
#, fuzzy #, fuzzy
msgid "Insert Vorbis [.ogg] video" msgid "Insert Vorbis [.ogg] video"
msgstr "Insérer un lien vidéo Vorbis [.ogg]" msgstr "Insérer un lien vidéo Vorbis [.ogg]"
#: ../../mod/network.php:101 ../../mod/profile.php:166 #: ../../mod/network.php:101 ../../mod/profile.php:166
#: ../../mod/editpost.php:67 ../../mod/profile.php:169 #: ../../mod/editpost.php:67 ../../mod/profile.php:169
#: ../../mod/network.php:102 ../../mod/mprofile.php:168
#: ../../mod/profile.php:170
#, fuzzy #, fuzzy
msgid "Insert Vorbis [.ogg] audio" msgid "Insert Vorbis [.ogg] audio"
msgstr "Insérer un lien audio Vorbis [.ogg]" msgstr "Insérer un lien audio Vorbis [.ogg]"
#: ../../mod/network.php:102 ../../mod/profile.php:167 #: ../../mod/network.php:102 ../../mod/profile.php:167
#: ../../mod/editpost.php:68 ../../mod/profile.php:170 #: ../../mod/editpost.php:68 ../../mod/profile.php:170
#: ../../mod/network.php:103 ../../mod/mprofile.php:169
#: ../../mod/profile.php:171
#, fuzzy #, fuzzy
msgid "Set your location" msgid "Set your location"
msgstr "Définir votre localisation" msgstr "Définir votre localisation"
#: ../../mod/network.php:103 ../../mod/profile.php:168 #: ../../mod/network.php:103 ../../mod/profile.php:168
#: ../../mod/editpost.php:69 ../../mod/profile.php:171 #: ../../mod/editpost.php:69 ../../mod/profile.php:171
#: ../../mod/network.php:104 ../../mod/mprofile.php:170
#: ../../mod/profile.php:172
#, fuzzy #, fuzzy
msgid "Clear browser location" msgid "Clear browser location"
msgstr "Effacer la localisation du navigateur" msgstr "Effacer la localisation du navigateur"
@ -1198,36 +1218,45 @@ msgstr "Effacer la localisation du navigateur"
#: ../../mod/profile.php:323 ../../mod/photos.php:1087 #: ../../mod/profile.php:323 ../../mod/photos.php:1087
#: ../../mod/editpost.php:70 ../../mod/network.php:442 #: ../../mod/editpost.php:70 ../../mod/network.php:442
#: ../../mod/profile.php:172 ../../mod/profile.php:378 #: ../../mod/profile.php:172 ../../mod/profile.php:378
#: ../../mod/network.php:106 ../../mod/network.php:480
#: ../../mod/mprofile.php:171 ../../mod/profile.php:174
#: ../../mod/profile.php:380
msgid "Please wait" msgid "Please wait"
msgstr "Patientez" msgstr "Patientez"
#: ../../mod/network.php:105 ../../mod/profile.php:170 #: ../../mod/network.php:105 ../../mod/profile.php:170
#: ../../mod/editpost.php:71 ../../mod/profile.php:173 #: ../../mod/editpost.php:71 ../../mod/profile.php:173
#: ../../mod/network.php:107 ../../mod/mprofile.php:172
#: ../../mod/profile.php:175
#, fuzzy #, fuzzy
msgid "Permission settings" msgid "Permission settings"
msgstr "Réglages des permissions" msgstr "Réglages des permissions"
#: ../../mod/network.php:111 ../../mod/profile.php:177 #: ../../mod/network.php:111 ../../mod/profile.php:177
#: ../../mod/editpost.php:77 ../../mod/profile.php:180 #: ../../mod/editpost.php:77 ../../mod/profile.php:180
#: ../../mod/network.php:113 ../../mod/mprofile.php:179
#: ../../mod/profile.php:182
#, fuzzy #, fuzzy
msgid "CC: email addresses" msgid "CC: email addresses"
msgstr "CC: adresse de courriel" msgstr "CC: adresse de courriel"
#: ../../mod/network.php:113 ../../mod/profile.php:179 #: ../../mod/network.php:113 ../../mod/profile.php:179
#: ../../mod/editpost.php:79 ../../mod/profile.php:182 #: ../../mod/editpost.php:79 ../../mod/profile.php:182
#: ../../mod/network.php:115 ../../mod/mprofile.php:181
#: ../../mod/profile.php:184
#, fuzzy #, fuzzy
msgid "Example: bob@example.com, mary@example.com" msgid "Example: bob@example.com, mary@example.com"
msgstr "Exemple: bob@exemple.com, mary@exemple.com" msgstr "Exemple: bob@exemple.com, mary@exemple.com"
#: ../../mod/network.php:156 #: ../../mod/network.php:156 ../../mod/network.php:158
msgid "No such group" msgid "No such group"
msgstr "Groupe inexistant" msgstr "Groupe inexistant"
#: ../../mod/network.php:167 #: ../../mod/network.php:167 ../../mod/network.php:169
msgid "Group is empty" msgid "Group is empty"
msgstr "Groupe vide" msgstr "Groupe vide"
#: ../../mod/network.php:171 #: ../../mod/network.php:171 ../../mod/network.php:173
msgid "Group: " msgid "Group: "
msgstr "Groupe: " msgstr "Groupe: "
@ -1235,23 +1264,27 @@ msgstr "Groupe: "
#: ../../mod/display.php:262 ../../mod/profile.php:402 #: ../../mod/display.php:262 ../../mod/profile.php:402
#: ../../mod/search.php:116 ../../mod/network.php:303 #: ../../mod/search.php:116 ../../mod/network.php:303
#: ../../mod/network.php:512 ../../mod/profile.php:457 #: ../../mod/network.php:512 ../../mod/profile.php:457
#: ../../mod/network.php:321 ../../mod/network.php:550
#: ../../mod/profile.php:459
msgid "View $name's profile" msgid "View $name's profile"
msgstr "Voir le profil de $name" msgstr "Voir le profil de $name"
#: ../../mod/network.php:295 ../../mod/search.php:131 #: ../../mod/network.php:295 ../../mod/search.php:131
#: ../../mod/network.php:318 #: ../../mod/network.php:318 ../../mod/network.php:336
msgid "View in context" msgid "View in context"
msgstr "Voir dans le contexte" msgstr "Voir dans le contexte"
#: ../../mod/network.php:329 ../../mod/display.php:149 #: ../../mod/network.php:329 ../../mod/display.php:149
#: ../../mod/profile.php:313 ../../mod/photos.php:962 #: ../../mod/profile.php:313 ../../mod/photos.php:962
#: ../../mod/network.php:395 ../../mod/profile.php:368 #: ../../mod/network.php:395 ../../mod/profile.php:368
#: ../../mod/network.php:433 ../../mod/profile.php:370
msgid "Private Message" msgid "Private Message"
msgstr "Message privé" msgstr "Message privé"
#: ../../mod/network.php:373 ../../mod/display.php:156 #: ../../mod/network.php:373 ../../mod/display.php:156
#: ../../mod/profile.php:320 ../../mod/photos.php:1084 #: ../../mod/profile.php:320 ../../mod/photos.php:1084
#: ../../mod/network.php:439 ../../mod/profile.php:375 #: ../../mod/network.php:439 ../../mod/profile.php:375
#: ../../mod/network.php:477 ../../mod/profile.php:377
#, fuzzy #, fuzzy
msgid "I like this (toggle)" msgid "I like this (toggle)"
msgstr "I like this (bascule)" msgstr "I like this (bascule)"
@ -1259,6 +1292,7 @@ msgstr "I like this (bascule)"
#: ../../mod/network.php:374 ../../mod/display.php:157 #: ../../mod/network.php:374 ../../mod/display.php:157
#: ../../mod/profile.php:321 ../../mod/photos.php:1085 #: ../../mod/profile.php:321 ../../mod/photos.php:1085
#: ../../mod/network.php:440 ../../mod/profile.php:376 #: ../../mod/network.php:440 ../../mod/profile.php:376
#: ../../mod/network.php:478 ../../mod/profile.php:378
#, fuzzy #, fuzzy
msgid "I don't like this (toggle)" msgid "I don't like this (toggle)"
msgstr "I don't like this (bascule)" msgstr "I don't like this (bascule)"
@ -1267,12 +1301,14 @@ msgstr "I don't like this (bascule)"
#: ../../mod/profile.php:335 ../../mod/photos.php:1106 #: ../../mod/profile.php:335 ../../mod/photos.php:1106
#: ../../mod/photos.php:1146 ../../mod/photos.php:1175 #: ../../mod/photos.php:1146 ../../mod/photos.php:1175
#: ../../mod/network.php:455 ../../mod/profile.php:390 #: ../../mod/network.php:455 ../../mod/profile.php:390
#: ../../mod/network.php:493 ../../mod/profile.php:392
msgid "This is you" msgid "This is you"
msgstr "C'est vous" msgstr "C'est vous"
#: ../../mod/network.php:397 ../../mod/display.php:222 #: ../../mod/network.php:397 ../../mod/display.php:222
#: ../../mod/profile.php:359 ../../mod/editpost.php:62 #: ../../mod/profile.php:359 ../../mod/editpost.php:62
#: ../../mod/network.php:463 ../../mod/profile.php:414 #: ../../mod/network.php:463 ../../mod/profile.php:414
#: ../../mod/network.php:501 ../../mod/profile.php:416
#, fuzzy #, fuzzy
msgid "Edit" msgid "Edit"
msgstr "Éditer" msgstr "Éditer"
@ -1280,30 +1316,31 @@ msgstr "Éditer"
#: ../../mod/network.php:398 ../../mod/display.php:238 ../../mod/group.php:137 #: ../../mod/network.php:398 ../../mod/display.php:238 ../../mod/group.php:137
#: ../../mod/profile.php:381 ../../mod/photos.php:1203 #: ../../mod/profile.php:381 ../../mod/photos.php:1203
#: ../../mod/network.php:464 ../../mod/profile.php:436 #: ../../mod/network.php:464 ../../mod/profile.php:436
#: ../../mod/network.php:502 ../../mod/profile.php:438
#, fuzzy #, fuzzy
msgid "Delete" msgid "Delete"
msgstr "Supprimer" msgstr "Supprimer"
#: ../../mod/network.php:447 ../../mod/display.php:263 #: ../../mod/network.php:447 ../../mod/display.php:263
#: ../../mod/network.php:513 #: ../../mod/network.php:513 ../../mod/network.php:551
#, fuzzy #, fuzzy
msgid "View $owner_name's profile" msgid "View $owner_name's profile"
msgstr "Voir le profil de $owner_name" msgstr "Voir le profil de $owner_name"
#: ../../mod/network.php:448 ../../mod/display.php:264 #: ../../mod/network.php:448 ../../mod/display.php:264
#: ../../mod/network.php:514 #: ../../mod/network.php:514 ../../mod/network.php:552
#, fuzzy #, fuzzy
msgid "to" msgid "to"
msgstr "à" msgstr "à"
#: ../../mod/network.php:449 ../../mod/display.php:265 #: ../../mod/network.php:449 ../../mod/display.php:265
#: ../../mod/network.php:515 #: ../../mod/network.php:515 ../../mod/network.php:553
#, fuzzy #, fuzzy
msgid "Wall-to-Wall" msgid "Wall-to-Wall"
msgstr "Inter-mur" msgstr "Inter-mur"
#: ../../mod/network.php:450 ../../mod/display.php:266 #: ../../mod/network.php:450 ../../mod/display.php:266
#: ../../mod/network.php:516 #: ../../mod/network.php:516 ../../mod/network.php:554
#, fuzzy #, fuzzy
msgid "via Wall-To-Wall:" msgid "via Wall-To-Wall:"
msgstr "en Inter-mur:" msgstr "en Inter-mur:"
@ -1814,6 +1851,7 @@ msgstr "Image envoyée, mais impossible de la retailler."
#: ../../mod/profile_photo.php:61 ../../mod/profile_photo.php:68 #: ../../mod/profile_photo.php:61 ../../mod/profile_photo.php:68
#: ../../mod/profile_photo.php:75 ../../mod/profile_photo.php:237 #: ../../mod/profile_photo.php:75 ../../mod/profile_photo.php:237
#: ../../mod/profile_photo.php:239
#, fuzzy, php-format #, fuzzy, php-format
msgid "Image size reduction [%s] failed." msgid "Image size reduction [%s] failed."
msgstr "Réduction de la taille de l'image [%s] échouée." msgstr "Réduction de la taille de l'image [%s] échouée."
@ -1822,7 +1860,7 @@ msgstr "Réduction de la taille de l'image [%s] échouée."
msgid "Unable to process image" msgid "Unable to process image"
msgstr "Impossible de traiter l'image" msgstr "Impossible de traiter l'image"
#: ../../mod/profile_photo.php:228 #: ../../mod/profile_photo.php:228 ../../mod/profile_photo.php:230
#, fuzzy #, fuzzy
msgid "Image uploaded successfully." msgid "Image uploaded successfully."
msgstr "Image téléversée avec succès." msgstr "Image téléversée avec succès."
@ -1837,6 +1875,7 @@ msgid "Finding: "
msgstr "Trouvé: " msgstr "Trouvé: "
#: ../../mod/viewcontacts.php:17 ../../boot.php:2038 ../../boot.php:2039 #: ../../mod/viewcontacts.php:17 ../../boot.php:2038 ../../boot.php:2039
#: ../../boot.php:2041
msgid "View Contacts" msgid "View Contacts"
msgstr "Voir les contacts" msgstr "Voir les contacts"
@ -1851,6 +1890,7 @@ msgid "Visit $username's profile"
msgstr "Visiter le profil de %s" msgstr "Visiter le profil de %s"
#: ../../mod/profile.php:8 ../../boot.php:2210 ../../boot.php:2211 #: ../../mod/profile.php:8 ../../boot.php:2210 ../../boot.php:2211
#: ../../mod/mprofile.php:8 ../../boot.php:2213
msgid "No profile" msgid "No profile"
msgstr "Aucun profil" msgstr "Aucun profil"
@ -1966,6 +2006,7 @@ msgid "%s commented on an item at %s"
msgstr "%s a commanté sur une publication : %s" msgstr "%s a commanté sur une publication : %s"
#: ../../mod/dfrn_poll.php:78 ../../mod/dfrn_poll.php:392 #: ../../mod/dfrn_poll.php:78 ../../mod/dfrn_poll.php:392
#: ../../mod/dfrn_poll.php:77 ../../mod/dfrn_poll.php:391
#, fuzzy, php-format #, fuzzy, php-format
msgid "%s welcomes %s" msgid "%s welcomes %s"
msgstr "%s accueille %s" msgstr "%s accueille %s"
@ -2265,10 +2306,12 @@ msgid "Invalid request identifier."
msgstr "Identifiant de demande invalide." msgstr "Identifiant de demande invalide."
#: ../../mod/notifications.php:31 ../../mod/notifications.php:134 #: ../../mod/notifications.php:31 ../../mod/notifications.php:134
#: ../../mod/notifications.php:133
msgid "Discard" msgid "Discard"
msgstr "Défausser" msgstr "Défausser"
#: ../../mod/notifications.php:41 ../../mod/notifications.php:133 #: ../../mod/notifications.php:41 ../../mod/notifications.php:133
#: ../../mod/notifications.php:132
msgid "Ignore" msgid "Ignore"
msgstr "Ignorer" msgstr "Ignorer"
@ -2280,51 +2323,51 @@ msgstr "Voir les demandes ignorées"
msgid "Hide Ignored Requests" msgid "Hide Ignored Requests"
msgstr "Cacher les demandes ignorées" msgstr "Cacher les demandes ignorées"
#: ../../mod/notifications.php:105 #: ../../mod/notifications.php:105 ../../mod/notifications.php:104
msgid "Claims to be known to you: " msgid "Claims to be known to you: "
msgstr "Prétend que vous le connaissez: " msgstr "Prétend que vous le connaissez: "
#: ../../mod/notifications.php:105 #: ../../mod/notifications.php:105 ../../mod/notifications.php:104
msgid "yes" msgid "yes"
msgstr "oui" msgstr "oui"
#: ../../mod/notifications.php:105 #: ../../mod/notifications.php:105 ../../mod/notifications.php:104
msgid "no" msgid "no"
msgstr "non" msgstr "non"
#: ../../mod/notifications.php:111 #: ../../mod/notifications.php:111 ../../mod/notifications.php:110
msgid "Approve as: " msgid "Approve as: "
msgstr "Approuver en tant que: " msgstr "Approuver en tant que: "
#: ../../mod/notifications.php:112 #: ../../mod/notifications.php:112 ../../mod/notifications.php:111
msgid "Friend" msgid "Friend"
msgstr "Ami" msgstr "Ami"
#: ../../mod/notifications.php:113 #: ../../mod/notifications.php:113 ../../mod/notifications.php:112
msgid "Fan/Admirer" msgid "Fan/Admirer"
msgstr "Fan/Admirateur" msgstr "Fan/Admirateur"
#: ../../mod/notifications.php:120 #: ../../mod/notifications.php:120 ../../mod/notifications.php:119
msgid "Notification type: " msgid "Notification type: "
msgstr "Type de notification: " msgstr "Type de notification: "
#: ../../mod/notifications.php:121 #: ../../mod/notifications.php:121 ../../mod/notifications.php:120
msgid "Friend/Connect Request" msgid "Friend/Connect Request"
msgstr "Demande de connexion/relation" msgstr "Demande de connexion/relation"
#: ../../mod/notifications.php:121 #: ../../mod/notifications.php:121 ../../mod/notifications.php:120
msgid "New Follower" msgid "New Follower"
msgstr "Nouvel abonné" msgstr "Nouvel abonné"
#: ../../mod/notifications.php:131 #: ../../mod/notifications.php:131 ../../mod/notifications.php:130
msgid "Approve" msgid "Approve"
msgstr "Approuver" msgstr "Approuver"
#: ../../mod/notifications.php:140 #: ../../mod/notifications.php:140 ../../mod/notifications.php:139
msgid "No notifications." msgid "No notifications."
msgstr "Pas de notification." msgstr "Pas de notification."
#: ../../mod/notifications.php:164 #: ../../mod/notifications.php:164 ../../mod/notifications.php:163
msgid "No registrations." msgid "No registrations."
msgstr "Pas d'inscriptions." msgstr "Pas d'inscriptions."
@ -2529,218 +2572,218 @@ msgstr ""
msgid "Please enter your password for verification:" msgid "Please enter your password for verification:"
msgstr "Merci de saisir votre mot de passe pour vérification:" msgstr "Merci de saisir votre mot de passe pour vérification:"
#: ../../boot.php:808 #: ../../boot.php:808 ../../boot.php:810
#, fuzzy #, fuzzy
msgid "Create a New Account" msgid "Create a New Account"
msgstr "Créer un nouveau compte" msgstr "Créer un nouveau compte"
#: ../../boot.php:815 #: ../../boot.php:815 ../../boot.php:817
#, fuzzy #, fuzzy
msgid "Nickname or Email address: " msgid "Nickname or Email address: "
msgstr "Pseudo ou courriel: " msgstr "Pseudo ou courriel: "
#: ../../boot.php:816 #: ../../boot.php:816 ../../boot.php:818
msgid "Password: " msgid "Password: "
msgstr "Mot de passe: " msgstr "Mot de passe: "
#: ../../boot.php:821 #: ../../boot.php:821 ../../boot.php:823
#, fuzzy #, fuzzy
msgid "Nickname/Email/OpenID: " msgid "Nickname/Email/OpenID: "
msgstr "Pseudo/Courriel/OpenID: " msgstr "Pseudo/Courriel/OpenID: "
#: ../../boot.php:822 #: ../../boot.php:822 ../../boot.php:824
msgid "Password (if not OpenID): " msgid "Password (if not OpenID): "
msgstr "Mot de passe (sauf pour OpenID): " msgstr "Mot de passe (sauf pour OpenID): "
#: ../../boot.php:825 #: ../../boot.php:825 ../../boot.php:827
msgid "Forgot your password?" msgid "Forgot your password?"
msgstr "Mot de passe oublié?" msgstr "Mot de passe oublié?"
#: ../../boot.php:826 #: ../../boot.php:826 ../../boot.php:828
msgid "Password Reset" msgid "Password Reset"
msgstr "Réinitialiser le mot de passe" msgstr "Réinitialiser le mot de passe"
#: ../../boot.php:1077 ../../boot.php:1078 #: ../../boot.php:1077 ../../boot.php:1078 ../../boot.php:1080
#, fuzzy #, fuzzy
msgid "prev" msgid "prev"
msgstr "précédent" msgstr "précédent"
#: ../../boot.php:1079 ../../boot.php:1080 #: ../../boot.php:1079 ../../boot.php:1080 ../../boot.php:1082
#, fuzzy #, fuzzy
msgid "first" msgid "first"
msgstr "premier" msgstr "premier"
#: ../../boot.php:1108 ../../boot.php:1109 #: ../../boot.php:1108 ../../boot.php:1109 ../../boot.php:1111
#, fuzzy #, fuzzy
msgid "last" msgid "last"
msgstr "dernier" msgstr "dernier"
#: ../../boot.php:1111 ../../boot.php:1112 #: ../../boot.php:1111 ../../boot.php:1112 ../../boot.php:1114
#, fuzzy #, fuzzy
msgid "next" msgid "next"
msgstr "suivant" msgstr "suivant"
#: ../../boot.php:1837 ../../boot.php:1838 #: ../../boot.php:1837 ../../boot.php:1838 ../../boot.php:1840
#, fuzzy, php-format #, fuzzy, php-format
msgid "%s likes this." msgid "%s likes this."
msgstr "%s aime ça." msgstr "%s aime ça."
#: ../../boot.php:1837 ../../boot.php:1838 #: ../../boot.php:1837 ../../boot.php:1838 ../../boot.php:1840
#, fuzzy, php-format #, fuzzy, php-format
msgid "%s doesn't like this." msgid "%s doesn't like this."
msgstr "%s n'aime pas ça." msgstr "%s n'aime pas ça."
#: ../../boot.php:1841 ../../boot.php:1842 #: ../../boot.php:1841 ../../boot.php:1842 ../../boot.php:1844
#, fuzzy, php-format #, fuzzy, php-format
msgid "<span %1$s>%2$d people</span> like this." msgid "<span %1$s>%2$d people</span> like this."
msgstr "<span %1$s>%2$d personnes</span> aiment ça." msgstr "<span %1$s>%2$d personnes</span> aiment ça."
#: ../../boot.php:1843 ../../boot.php:1844 #: ../../boot.php:1843 ../../boot.php:1844 ../../boot.php:1846
#, fuzzy, php-format #, fuzzy, php-format
msgid "<span %1$s>%2$d people</span> don't like this." msgid "<span %1$s>%2$d people</span> don't like this."
msgstr "<span %1$s>%2$d personnes</span> ,n'aiment pas ça." msgstr "<span %1$s>%2$d personnes</span> ,n'aiment pas ça."
#: ../../boot.php:1849 ../../boot.php:1850 #: ../../boot.php:1849 ../../boot.php:1850 ../../boot.php:1852
msgid "and" msgid "and"
msgstr "et" msgstr "et"
#: ../../boot.php:1852 ../../boot.php:1853 #: ../../boot.php:1852 ../../boot.php:1853 ../../boot.php:1855
#, fuzzy, php-format #, fuzzy, php-format
msgid ", and %d other people" msgid ", and %d other people"
msgstr ", et %d autres personnes" msgstr ", et %d autres personnes"
#: ../../boot.php:1853 ../../boot.php:1854 #: ../../boot.php:1853 ../../boot.php:1854 ../../boot.php:1856
#, fuzzy, php-format #, fuzzy, php-format
msgid "%s like this." msgid "%s like this."
msgstr "%s aiment ça." msgstr "%s aiment ça."
#: ../../boot.php:1853 ../../boot.php:1854 #: ../../boot.php:1853 ../../boot.php:1854 ../../boot.php:1856
#, fuzzy, php-format #, fuzzy, php-format
msgid "%s don't like this." msgid "%s don't like this."
msgstr "%s n'aiment pas ça." msgstr "%s n'aiment pas ça."
#: ../../boot.php:2014 ../../boot.php:2015 #: ../../boot.php:2014 ../../boot.php:2015 ../../boot.php:2017
msgid "No contacts" msgid "No contacts"
msgstr "Aucun contact" msgstr "Aucun contact"
#: ../../boot.php:2267 ../../boot.php:2268 #: ../../boot.php:2267 ../../boot.php:2268 ../../boot.php:2270
msgid "Connect" msgid "Connect"
msgstr "Relier" msgstr "Relier"
#: ../../boot.php:2277 ../../boot.php:2278 #: ../../boot.php:2277 ../../boot.php:2278 ../../boot.php:2280
msgid "Location:" msgid "Location:"
msgstr "Localisation:" msgstr "Localisation:"
#: ../../boot.php:2281 ../../boot.php:2282 #: ../../boot.php:2281 ../../boot.php:2282 ../../boot.php:2284
msgid ", " msgid ", "
msgstr ", " msgstr ", "
#: ../../boot.php:2289 ../../boot.php:2290 #: ../../boot.php:2289 ../../boot.php:2290 ../../boot.php:2292
msgid "Gender:" msgid "Gender:"
msgstr "Genre:" msgstr "Genre:"
#: ../../boot.php:2293 ../../boot.php:2294 #: ../../boot.php:2293 ../../boot.php:2294 ../../boot.php:2296
msgid "Status:" msgid "Status:"
msgstr "Statut:" msgstr "Statut:"
#: ../../boot.php:2295 ../../boot.php:2296 #: ../../boot.php:2295 ../../boot.php:2296 ../../boot.php:2298
msgid "Homepage:" msgid "Homepage:"
msgstr "Page personnelle:" msgstr "Page personnelle:"
#: ../../boot.php:2386 ../../boot.php:2387 #: ../../boot.php:2386 ../../boot.php:2387 ../../boot.php:2389
msgid "Monday" msgid "Monday"
msgstr "Lundi" msgstr "Lundi"
#: ../../boot.php:2386 ../../boot.php:2387 #: ../../boot.php:2386 ../../boot.php:2387 ../../boot.php:2389
msgid "Tuesday" msgid "Tuesday"
msgstr "Mardi" msgstr "Mardi"
#: ../../boot.php:2386 ../../boot.php:2387 #: ../../boot.php:2386 ../../boot.php:2387 ../../boot.php:2389
msgid "Wednesday" msgid "Wednesday"
msgstr "Mercredi" msgstr "Mercredi"
#: ../../boot.php:2386 ../../boot.php:2387 #: ../../boot.php:2386 ../../boot.php:2387 ../../boot.php:2389
msgid "Thursday" msgid "Thursday"
msgstr "Jeudi" msgstr "Jeudi"
#: ../../boot.php:2386 ../../boot.php:2387 #: ../../boot.php:2386 ../../boot.php:2387 ../../boot.php:2389
msgid "Friday" msgid "Friday"
msgstr "Vendredi" msgstr "Vendredi"
#: ../../boot.php:2386 ../../boot.php:2387 #: ../../boot.php:2386 ../../boot.php:2387 ../../boot.php:2389
msgid "Saturday" msgid "Saturday"
msgstr "Samedi" msgstr "Samedi"
#: ../../boot.php:2386 ../../boot.php:2387 #: ../../boot.php:2386 ../../boot.php:2387 ../../boot.php:2389
msgid "Sunday" msgid "Sunday"
msgstr "Dimanche" msgstr "Dimanche"
#: ../../boot.php:2390 ../../boot.php:2391 #: ../../boot.php:2390 ../../boot.php:2391 ../../boot.php:2393
msgid "January" msgid "January"
msgstr "Janvier" msgstr "Janvier"
#: ../../boot.php:2390 ../../boot.php:2391 #: ../../boot.php:2390 ../../boot.php:2391 ../../boot.php:2393
msgid "February" msgid "February"
msgstr "Février" msgstr "Février"
#: ../../boot.php:2390 ../../boot.php:2391 #: ../../boot.php:2390 ../../boot.php:2391 ../../boot.php:2393
msgid "March" msgid "March"
msgstr "Mars" msgstr "Mars"
#: ../../boot.php:2390 ../../boot.php:2391 #: ../../boot.php:2390 ../../boot.php:2391 ../../boot.php:2393
msgid "April" msgid "April"
msgstr "Avril" msgstr "Avril"
#: ../../boot.php:2390 ../../boot.php:2391 #: ../../boot.php:2390 ../../boot.php:2391 ../../boot.php:2393
msgid "May" msgid "May"
msgstr "Mai" msgstr "Mai"
#: ../../boot.php:2390 ../../boot.php:2391 #: ../../boot.php:2390 ../../boot.php:2391 ../../boot.php:2393
msgid "June" msgid "June"
msgstr "Juin" msgstr "Juin"
#: ../../boot.php:2390 ../../boot.php:2391 #: ../../boot.php:2390 ../../boot.php:2391 ../../boot.php:2393
msgid "July" msgid "July"
msgstr "Juillet" msgstr "Juillet"
#: ../../boot.php:2390 ../../boot.php:2391 #: ../../boot.php:2390 ../../boot.php:2391 ../../boot.php:2393
msgid "August" msgid "August"
msgstr "Août" msgstr "Août"
#: ../../boot.php:2390 ../../boot.php:2391 #: ../../boot.php:2390 ../../boot.php:2391 ../../boot.php:2393
msgid "September" msgid "September"
msgstr "Septembre" msgstr "Septembre"
#: ../../boot.php:2390 ../../boot.php:2391 #: ../../boot.php:2390 ../../boot.php:2391 ../../boot.php:2393
msgid "October" msgid "October"
msgstr "Octobre" msgstr "Octobre"
#: ../../boot.php:2390 ../../boot.php:2391 #: ../../boot.php:2390 ../../boot.php:2391 ../../boot.php:2393
msgid "November" msgid "November"
msgstr "Novembre" msgstr "Novembre"
#: ../../boot.php:2390 ../../boot.php:2391 #: ../../boot.php:2390 ../../boot.php:2391 ../../boot.php:2393
msgid "December" msgid "December"
msgstr "Décembre" msgstr "Décembre"
#: ../../boot.php:2424 ../../boot.php:2425 #: ../../boot.php:2424 ../../boot.php:2425 ../../boot.php:2427
#, fuzzy #, fuzzy
msgid "Birthday Reminders" msgid "Birthday Reminders"
msgstr "Rappels d'anniversaires" msgstr "Rappels d'anniversaires"
#: ../../boot.php:2425 ../../boot.php:2426 #: ../../boot.php:2425 ../../boot.php:2426 ../../boot.php:2428
msgid "Birthdays this week:" msgid "Birthdays this week:"
msgstr "Anniversaires cette semaine:" msgstr "Anniversaires cette semaine:"
#: ../../boot.php:2426 ../../boot.php:2427 #: ../../boot.php:2426 ../../boot.php:2427 ../../boot.php:2429
msgid "(Adjusted for local time)" msgid "(Adjusted for local time)"
msgstr "(Ajustés pour le fuseau horaire local)" msgstr "(Ajustés pour le fuseau horaire local)"
#: ../../boot.php:2437 ../../boot.php:2438 #: ../../boot.php:2437 ../../boot.php:2438 ../../boot.php:2440
msgid "[today]" msgid "[today]"
msgstr "[aujourd'hui]" msgstr "[aujourd'hui]"
#: ../../boot.php:2634 ../../boot.php:2635 #: ../../boot.php:2634 ../../boot.php:2635 ../../boot.php:2637
#, fuzzy #, fuzzy
msgid "link to source" msgid "link to source"
msgstr "lien original" msgstr "lien original"
@ -2767,16 +2810,17 @@ msgid ""
"\"http://creativecommons.org/licenses/by/3.0/\">Creative Commons Attribution " "\"http://creativecommons.org/licenses/by/3.0/\">Creative Commons Attribution "
"3.0 license</a>" "3.0 license</a>"
msgstr "" msgstr ""
"Les contenus partagés au sein du réseau Friendika le sont sous la licence <a href=" "Les contenus partagés au sein du réseau Friendika le sont sous la licence <a "
"\"http://creativecommons.org/licenses/by/3.0/\">Creative Commons Attribution " "href=\"http://creativecommons.org/licenses/by/3.0/\">Creative Commons "
"3.0</a>" "Attribution 3.0</a>"
#: ../../mod/friendika.php:17 #: ../../mod/friendika.php:17
msgid "" msgid ""
"Please visit <a href=\"http://project.friendika.com\">Project.Friendika.com</" "Please visit <a href=\"http://project.friendika.com\">Project.Friendika.com</"
"a> to learn more about the Friendika project." "a> to learn more about the Friendika project."
msgstr "Pour en savoir plus, vous pouvez nous rendre visite sur <a href=" msgstr ""
"\"http://project.friendika.com\">Project.Friendika.com</a>" "Pour en savoir plus, vous pouvez nous rendre visite sur <a href=\"http://"
"project.friendika.com\">Project.Friendika.com</a>"
#: ../../mod/friendika.php:19 #: ../../mod/friendika.php:19
msgid "Bug reports and issues: please visit" msgid "Bug reports and issues: please visit"
@ -2787,8 +2831,8 @@ msgid ""
"Suggestions, praise, donations, etc. - please email \"Info\" at Friendika - " "Suggestions, praise, donations, etc. - please email \"Info\" at Friendika - "
"dot com" "dot com"
msgstr "" msgstr ""
"Suggestions, remerciements, donations, etc. - écrivez à \"Info\" arob. Friendika - " "Suggestions, remerciements, donations, etc. - écrivez à \"Info\" arob. "
"point com" "Friendika - point com"
#: ../../mod/friendika.php:25 #: ../../mod/friendika.php:25
msgid "Installed plugins/addons/apps" msgid "Installed plugins/addons/apps"
@ -2806,11 +2850,12 @@ msgstr "Correpondance de profils"
msgid "No matches" msgid "No matches"
msgstr "Aucune correspondance" msgstr "Aucune correspondance"
#: ../../mod/network.php:363 #: ../../mod/network.php:363 ../../mod/network.php:399
msgid "See more posts like this" msgid "See more posts like this"
msgstr "Davantage de publications similaires" msgstr "Davantage de publications similaires"
#: ../../mod/network.php:382 ../../mod/profile.php:357 #: ../../mod/network.php:382 ../../mod/profile.php:357
#: ../../mod/network.php:418 ../../mod/profile.php:359
#, php-format #, php-format
msgid "See all %d comments" msgid "See all %d comments"
msgstr "Voir les %d commentaires" msgstr "Voir les %d commentaires"
@ -2839,15 +2884,15 @@ msgstr "Genre: "
msgid "No entries (some entries may be hidden)." msgid "No entries (some entries may be hidden)."
msgstr "Aucune entrée (certaines peuvent être cachées)." msgstr "Aucune entrée (certaines peuvent être cachées)."
#: ../../mod/profile.php:102 #: ../../mod/profile.php:102 ../../mod/mprofile.php:101
msgid "Status" msgid "Status"
msgstr "Statut" msgstr "Statut"
#: ../../mod/profile.php:103 #: ../../mod/profile.php:103 ../../mod/mprofile.php:102
msgid "Profile" msgid "Profile"
msgstr "Profil" msgstr "Profil"
#: ../../mod/profile.php:104 #: ../../mod/profile.php:104 ../../mod/mprofile.php:103
msgid "Photos" msgid "Photos"
msgstr "Photos" msgstr "Photos"
@ -2855,9 +2900,49 @@ msgstr "Photos"
msgid "Find People With Shared Interests" msgid "Find People With Shared Interests"
msgstr "Trouver des gens d'intérêts communs" msgstr "Trouver des gens d'intérêts communs"
#: ../../boot.php:2023 #: ../../boot.php:2023 ../../boot.php:2025
#, php-format #, php-format
msgid "%d Contact" msgid "%d Contact"
msgid_plural "%d Contacts" msgid_plural "%d Contacts"
msgstr[0] "%d contact" msgstr[0] "%d contact"
msgstr[1] "%d contacts" msgstr[1] "%d contacts"
#: ../../mod/oexchange.php:27
msgid "Post successful."
msgstr "Publication réussie."
#: ../../mod/network.php:74 ../../mod/profile.php:142
msgid "Enter a title for this item"
msgstr "Saisissez un titre pour cet élément"
#: ../../mod/network.php:105 ../../mod/profile.php:173
msgid "Set title"
msgstr "Définir un titre"
#: ../../mod/profile_photo.php:200
msgid "Crop Image"
msgstr "(Re)cadrer l'image"
#: ../../mod/profile_photo.php:201
msgid "Please adjust the image cropping for optimum viewing."
msgstr "Ajustez le cadre de l'image pour une visualisation optimale."
#: ../../mod/profile_photo.php:202
msgid "Done Editing"
msgstr "Édition terminée"
#: ../../mod/notifications.php:68
msgid "Pending Friend/Connect Notifications"
msgstr "Notifications de relation/amitié enattente"
#: ../../mod/notifications.php:143
msgid "User registrations waiting for confirm"
msgstr "Inscriptions d'utilisateurs en attente de confirmation"
#: ../../boot.php:359
msgid "Delete this item?"
msgstr "Effacer cet élément?"
#: ../../boot.php:360
msgid "Comment"
msgstr "Commenter"

View file

@ -605,3 +605,13 @@ $a->strings["%d Contact"] = array(
0 => "%d contact", 0 => "%d contact",
1 => "%d contacts", 1 => "%d contacts",
); );
$a->strings["Post successful."] = "Publication réussie.";
$a->strings["Enter a title for this item"] = "Saisissez un titre pour cet élément";
$a->strings["Set title"] = "Définir un titre";
$a->strings["Crop Image"] = "(Re)cadrer l'image";
$a->strings["Please adjust the image cropping for optimum viewing."] = "Ajustez le cadre de l'image pour une visualisation optimale.";
$a->strings["Done Editing"] = "Édition terminée";
$a->strings["Pending Friend/Connect Notifications"] = "Notifications de relation/amitié enattente";
$a->strings["User registrations waiting for confirm"] = "Inscriptions d'utilisateurs en attente de confirmation";
$a->strings["Delete this item?"] = "Effacer cet élément?";
$a->strings["Comment"] = "Commenter";

View file

@ -2215,3 +2215,9 @@ a.mail-list-link {
.side-link { .side-link {
margin-bottom: 15px; margin-bottom: 15px;
} }
#language-selector {
position: absolute;
top: 0;
left: 0;
)

View file

@ -2235,3 +2235,9 @@ a.mail-list-link {
.side-link { .side-link {
margin-bottom: 15px; margin-bottom: 15px;
} }
#language-selector {
position: absolute;
top: 0;
left: 0;
)