Merge branch 'master' of github.com:fabrixxm/friendika

This commit is contained in:
Fabio Comuni 2011-03-23 14:04:35 +01:00
commit 1f1fe4d5be
56 changed files with 3955 additions and 2550 deletions

View File

@ -2,9 +2,9 @@
set_time_limit(0); set_time_limit(0);
define ( 'FRIENDIKA_VERSION', '2.1.921' ); define ( 'FRIENDIKA_VERSION', '2.1.925' );
define ( 'DFRN_PROTOCOL_VERSION', '2.1' ); define ( 'DFRN_PROTOCOL_VERSION', '2.1' );
define ( 'DB_UPDATE_VERSION', 1043 ); define ( 'DB_UPDATE_VERSION', 1044 );
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' );
@ -1603,9 +1603,15 @@ function lrdd($uri) {
if(! function_exists('fetch_lrdd_template')) { if(! function_exists('fetch_lrdd_template')) {
function fetch_lrdd_template($host) { function fetch_lrdd_template($host) {
$tpl = ''; $tpl = '';
$url = 'http://' . $host . '/.well-known/host-meta' ;
$links = fetch_xrd_links($url); $url1 = 'https://' . $host . '/.well-known/host-meta' ;
logger('template: ' . print_r($links,true)); $url2 = 'http://' . $host . '/.well-known/host-meta' ;
$links = fetch_xrd_links($url1);
logger('template (https): ' . print_r($links,true));
if(! count($links)) {
$links = fetch_xrd_links($url2);
logger('template (http): ' . print_r($links,true));
}
if(count($links)) { if(count($links)) {
foreach($links as $link) foreach($links as $link)
if($link['@attributes']['rel'] && $link['@attributes']['rel'] === 'lrdd') if($link['@attributes']['rel'] && $link['@attributes']['rel'] === 'lrdd')
@ -1856,11 +1862,11 @@ function format_like($cnt,$arr,$type,$id) {
if(! function_exists('load_view_file')) { if(! function_exists('load_view_file')) {
function load_view_file($s) { function load_view_file($s) {
global $lang;
if(! isset($lang))
$lang = 'en';
$b = basename($s); $b = basename($s);
$d = dirname($s); $d = dirname($s);
$lang = get_config('system','language');
if($lang === false)
$lang = 'en';
if(file_exists("$d/$lang/$b")) if(file_exists("$d/$lang/$b"))
return file_get_contents("$d/$lang/$b"); return file_get_contents("$d/$lang/$b");
return file_get_contents($s); return file_get_contents($s);

View File

@ -375,6 +375,7 @@ CREATE TABLE IF NOT EXISTS `user` (
`sprvkey` text NOT NULL, `sprvkey` text NOT NULL,
`verified` tinyint(1) unsigned NOT NULL DEFAULT '0', `verified` tinyint(1) unsigned NOT NULL DEFAULT '0',
`blocked` tinyint(1) unsigned NOT NULL DEFAULT '0', `blocked` tinyint(1) unsigned NOT NULL DEFAULT '0',
`blockwall` tinyint(1) unsigned NOT NULL DEFAULT '0',
`notify-flags` int(11) unsigned NOT NULL DEFAULT '65535', `notify-flags` int(11) unsigned NOT NULL DEFAULT '65535',
`page-flags` int(11) unsigned NOT NULL DEFAULT '0', `page-flags` int(11) unsigned NOT NULL DEFAULT '0',
`pwdreset` char(255) NOT NULL, `pwdreset` char(255) NOT NULL,

View File

@ -28,7 +28,7 @@ class dba {
if($install) { if($install) {
if(strlen($server) && ($server !== 'localhost') && ($server !== '127.0.0.1')) { if(strlen($server) && ($server !== 'localhost') && ($server !== '127.0.0.1')) {
if(! dns_get_record($server, DNS_A + DNS_CNAME + DNS_PTR)) { if(! dns_get_record($server, DNS_A + DNS_CNAME + DNS_PTR)) {
notice( sprintf( t('Cannot locate DNS info for database server \'%s\'',$server))); notice( sprintf( t('Cannot locate DNS info for database server \'%s\''), $server));
$this->connected = false; $this->connected = false;
$this->db = null; $this->db = null;
return; return;

View File

@ -25,7 +25,7 @@ function can_write_wall(&$a,$owner) {
else { else {
$r = q("SELECT `contact`.*, `user`.`page-flags` FROM `contact` LEFT JOIN `user` on `user`.`uid` = `contact`.`uid` $r = q("SELECT `contact`.*, `user`.`page-flags` FROM `contact` LEFT JOIN `user` on `user`.`uid` = `contact`.`uid`
WHERE `contact`.`uid` = %d AND `contact`.`id` = %d AND `contact`.`blocked` = 0 AND `contact`.`pending` = 0 WHERE `contact`.`uid` = %d AND `contact`.`id` = %d AND `contact`.`blocked` = 0 AND `contact`.`pending` = 0
AND `readonly` = 0 AND ( `contact`.`rel` IN ( %d , %d ) OR `user`.`page-flags` = %d ) LIMIT 1", AND `user`.`blockwall` = 0 AND `readonly` = 0 AND ( `contact`.`rel` IN ( %d , %d ) OR `user`.`page-flags` = %d ) LIMIT 1",
intval($owner), intval($owner),
intval(remote_user()), intval(remote_user()),
intval(REL_VIP), intval(REL_VIP),

View File

@ -9,7 +9,10 @@ function contacts_init(&$a) {
$a->page['aside'] .= group_side(); $a->page['aside'] .= group_side();
if($a->config['register_policy'] != REGISTER_CLOSED) if($a->config['register_policy'] != REGISTER_CLOSED)
$a->page['aside'] .= '<div class="side-invite-link-wrapper" id="side-invite-link-wrapper" ><a href="invite" class="side-invite-link" id="side-invite-link">' . t("Invite Friends") . '</a></div>'; $a->page['aside'] .= '<div class="side-link" id="side-invite-link" ><a href="invite" >' . t("Invite Friends") . '</a></div>';
if(strlen(get_config('system','directory_submit_url')))
$a->page['aside'] .= '<div class="side-link" id="side-match-link"><a href="match" >' . t('Find People With Shared Interests') . '</a></div>';
$tpl = load_view_file('view/follow.tpl'); $tpl = load_view_file('view/follow.tpl');
$a->page['aside'] .= replace_macros($tpl,array( $a->page['aside'] .= replace_macros($tpl,array(
@ -18,6 +21,8 @@ function contacts_init(&$a) {
'$follow' => t('Follow') '$follow' => t('Follow')
)); ));
} }
function contacts_post(&$a) { function contacts_post(&$a) {
@ -244,6 +249,9 @@ function contacts_content(&$a) {
$sparkle = ''; $sparkle = '';
} }
$insecure = '<div id="profile-edit-insecure"><p><img src="images/unlock_icon.gif" alt="' . t('Privacy Unavailable') . '" />&nbsp;'
. t('Private communications are not available for this contact.') . '</p></div>';
$last_update = (($r[0]['last-update'] == '0000-00-00 00:00:00') $last_update = (($r[0]['last-update'] == '0000-00-00 00:00:00')
? t('Never') ? t('Never')
: datetime_convert('UTC',date_default_timezone_get(),$r[0]['last-update'],'D, j M Y, g:i A')); : datetime_convert('UTC',date_default_timezone_get(),$r[0]['last-update'],'D, j M Y, g:i A'));
@ -266,7 +274,7 @@ function contacts_content(&$a) {
'$contact_id' => $r[0]['id'], '$contact_id' => $r[0]['id'],
'$block_text' => (($r[0]['blocked']) ? t('Unblock this contact') : t('Block this contact') ), '$block_text' => (($r[0]['blocked']) ? t('Unblock this contact') : t('Block this contact') ),
'$ignore_text' => (($r[0]['readonly']) ? t('Unignore this contact') : t('Ignore this contact') ), '$ignore_text' => (($r[0]['readonly']) ? t('Unignore this contact') : t('Ignore this contact') ),
'$insecure' => (($r[0]['network'] === 'stat') ? load_view_file('view/insecure_net.tpl') : ''), '$insecure' => (($r[0]['network'] !== 'dfrn') ? $insecure : ''),
'$info' => $r[0]['info'], '$info' => $r[0]['info'],
'$blocked' => (($r[0]['blocked']) ? '<div id="block-message">' . t('Currently blocked') . '</div>' : ''), '$blocked' => (($r[0]['blocked']) ? '<div id="block-message">' . t('Currently blocked') . '</div>' : ''),
'$ignored' => (($r[0]['readonly']) ? '<div id="ignore-message">' . t('Currently ignored') . '</div>' : ''), '$ignored' => (($r[0]['readonly']) ? '<div id="ignore-message">' . t('Currently ignored') . '</div>' : ''),

View File

@ -11,7 +11,7 @@ function follow_post(&$a) {
} }
$url = $orig_url = notags(trim($_POST['url'])); $url = $orig_url = notags(trim($_POST['url']));
$diaspora = false;
$email_conversant = false; $email_conversant = false;
if($url) { if($url) {
@ -28,6 +28,9 @@ function follow_post(&$a) {
$hcard = unamp($link['@attributes']['href']); $hcard = unamp($link['@attributes']['href']);
if($link['@attributes']['rel'] === 'http://webfinger.net/rel/profile-page') if($link['@attributes']['rel'] === 'http://webfinger.net/rel/profile-page')
$profile = unamp($link['@attributes']['href']); $profile = unamp($link['@attributes']['href']);
if($link['@attributes']['rel'] === 'http://joindiaspora.com/seed_location')
$diaspora = true;
} }
@ -90,9 +93,12 @@ function follow_post(&$a) {
} }
} }
if(! $profile) if(! $profile) {
$profile = $url; if($diaspora)
$profile = $hcard;
else
$profile = $url;
}
if(! x($vcard,'fn')) if(! x($vcard,'fn'))
if(x($vcard,'nick')) if(x($vcard,'nick'))

View File

@ -14,17 +14,20 @@ function install_post(&$a) {
$phpath = notags(trim($_POST['phpath'])); $phpath = notags(trim($_POST['phpath']));
require_once("dba.php"); require_once("dba.php");
unset($db);
$db = new dba($dbhost, $dbuser, $dbpass, $dbdata, true); $db = new dba($dbhost, $dbuser, $dbpass, $dbdata, true);
if(mysqli_connect_errno()) { if(mysqli_connect_errno()) {
unset($db);
$db = new dba($dbhost, $dbuser, $dbpass, '', true); $db = new dba($dbhost, $dbuser, $dbpass, '', true);
if(! mysqli_connect_errno()) { if(! mysqli_connect_errno()) {
$r = q("CREATE DATABASE '%s'", $r = q("CREATE DATABASE '%s'",
dbesc($dbdata) dbesc($dbdata)
); );
if($r) if($r) {
unset($db);
$db = new dba($dbhost, $dbuser, $dbpass, $dbdata, true); $db = new dba($dbhost, $dbuser, $dbpass, $dbdata, true);
}
} }
if(mysqli_connect_errno()) { if(mysqli_connect_errno()) {
notice( t('Could not create/connect to database.') . EOL); notice( t('Could not create/connect to database.') . EOL);
@ -50,36 +53,47 @@ function install_post(&$a) {
} }
$errors = load_database($db); $errors = load_database($db);
if(! $errors) {
// Our sessions normally are stored in the database. But as we have only managed
// to get it bootstrapped milliseconds ago, we have to apply a bit of trickery so
// that you'll see the following important notice (which is stored in the session).
session_write_close(); if($errors)
$a->data['db_failed'] = true;
else
$a->data['db_installed'] = true;
require_once('session.php'); return;
session_start();
session_regenerate_id();
$_SESSION['sysmsg'] = '';
notice( t('Database import succeeded.') . EOL
. t('IMPORTANT: You will need to [manually] setup a scheduled task for the poller.') . EOL
. t('Please see the file "INSTALL.txt".') . EOL );
goaway($a->get_baseurl() . '/register' );
}
else {
$db = null; // start fresh
notice( t('Database import failed.') . EOL
. t('You may need to import the file "database.sql" manually using phpmyadmin or mysql.') . EOL
. t('Please see the file "INSTALL.txt".') . EOL );
}
} }
function install_content(&$a) { function install_content(&$a) {
global $db;
$o = ''; $o = '';
if(x($a->data,'db_installed')) {
$o .= '<h2>' . t('Proceed with Installation') . '</h2>';
$o .= '<p style="font-size: 130%;">';
$o .= t('Your Friendika site database has been installed.') . EOL;
$o .= t('IMPORTANT: You will need to [manually] setup a scheduled task for the poller.') . EOL ;
$o .= t('Please see the file "INSTALL.txt".') . EOL ;
$o .= '<br />';
$o .= '<a href="' . $a->get_baseurl() . '/register' . '">' . t('Proceed to registration') . '</a>' ;
$o .= '</p>';
return $o;
}
if(x($a->data,'db_failed')) {
$o .= t('Database import failed.') . EOL;
$o .= t('You may need to import the file "database.sql" manually using phpmyadmin or mysql.') . EOL;
$o .= t('Please see the file "INSTALL.txt".') . EOL ;
return $o;
}
if($db && $db->connected) {
$r = q("SELECT COUNT(*) as `total` FROM `user`");
if($r && count($r) && $r[0]['total']) {
notice( t('Permission denied.') . EOL);
return '';
}
}
notice( t('Welcome to Friendika.') . EOL); notice( t('Welcome to Friendika.') . EOL);

56
mod/match.php Normal file
View File

@ -0,0 +1,56 @@
<?php
function match_content(&$a) {
$o = '';
if(! local_user())
return;
$o .= '<h2>' . t('Profile Match') . '</h2>';
$r = q("SELECT `pub_keywords`, `prv_keywords` FROM `profile` WHERE `is-default` = 1 AND `uid` = %d LIMIT 1",
intval(local_user())
);
if(! count($r))
return;
if(! $r[0]['pub_keywords'] && (! $r[0]['prv_keywords'])) {
notice('No keywords to match. Please add keywords to your default profile.');
return;
}
$params = array();
$tags = trim($r[0]['pub_keywords'] . ' ' . $r[0]['prv_keywords']);
if($tags) {
$params['s'] = $tags;
if($a->pager['page'] != 1)
$params['p'] = $a->pager['page'];
$x = post_url('http://dir.friendika.com/msearch', $params);
$j = json_decode($x);
if($j->total) {
$a->set_pager_total($j->total);
$a->set_pager_itemspage($j->items_page);
}
if(count($j->results)) {
foreach($j->results as $jj) {
$o .= '<div class="profile-match-wrapper"><div class="profile-match-photo">';
$o .= '<a href="' . $jj->url . '">' . '<img src="' . $jj->photo . '" alt="' . $jj->name . '" /></a></div>';
$o .= '<div class="profile-match-break"></div>';
$o .= '<div class="profile-match-name"><a href="' . $jj->url . '">' . $jj->name . '</a></div>';
$o .= '<div class="profile-match-end"></div></div>';
}
}
else {
notice( t('No matches') . EOL);
}
}
$o .= paginate($a);
return $o;
}

View File

@ -168,7 +168,8 @@ function message_content(&$a) {
$a->page['htmlhead'] .= replace_macros($tpl, array( $a->page['htmlhead'] .= replace_macros($tpl, array(
'$baseurl' => $a->get_baseurl(), '$baseurl' => $a->get_baseurl(),
'$nickname' => $a->user['nickname'] '$nickname' => $a->user['nickname'],
'$linkurl' => t('Please enter a link URL:')
)); ));
$select = contact_select('messageto','message-to-select', false, 4, true); $select = contact_select('messageto','message-to-select', false, 4, true);

View File

@ -65,7 +65,12 @@ function network_content(&$a, $update = 0) {
$a->page['htmlhead'] .= replace_macros($tpl, array( $a->page['htmlhead'] .= replace_macros($tpl, array(
'$baseurl' => $a->get_baseurl(), '$baseurl' => $a->get_baseurl(),
'$geotag' => $geotag, '$geotag' => $geotag,
'$nickname' => $a->user['nickname'] '$nickname' => $a->user['nickname'],
'$linkurl' => t('Please enter a link URL:'),
'$utubeurl' => t('Please enter a YouTube link:'),
'$vidurl' => t("Please enter a video\x28.ogg\x29 link/URL:"),
'$audurl' => t("Please enter an audio\x28.ogg\x29 link/URL:"),
'$whereareu' => t('Where are you right now?')
)); ));

View File

@ -1074,7 +1074,7 @@ function photos_content(&$a) {
$tpl = load_view_file('view/photo_item.tpl'); $tpl = load_view_file('view/photo_item.tpl');
$return_url = $a->cmd; $return_url = $a->cmd;
$like_tpl = load_view_file('view/lik_noshare.tpl'); $like_tpl = load_view_file('view/like_noshare.tpl');
$likebuttons = ''; $likebuttons = '';

View File

@ -98,7 +98,10 @@ function profile_content(&$a, $update = 0) {
$o .= replace_macros($tpl,array( $o .= replace_macros($tpl,array(
'$url' => $a->get_baseurl() . '/' . $a->cmd, '$url' => $a->get_baseurl() . '/' . $a->cmd,
'$phototab' => $a->get_baseurl() . '/photos/' . $a->profile['nickname'] '$phototab' => $a->get_baseurl() . '/photos/' . $a->profile['nickname'],
'$status' => t('Status'),
'$profile' => t('Profile'),
'$photos' => t('Photos')
)); ));
@ -130,7 +133,12 @@ function profile_content(&$a, $update = 0) {
$a->page['htmlhead'] .= replace_macros($tpl, array( $a->page['htmlhead'] .= replace_macros($tpl, array(
'$baseurl' => $a->get_baseurl(), '$baseurl' => $a->get_baseurl(),
'$geotag' => $geotag, '$geotag' => $geotag,
'$nickname' => $a->profile['nickname'] '$nickname' => $a->profile['nickname'],
'$linkurl' => t('Please enter a link URL:'),
'$utubeurl' => t('Please enter a YouTube link:'),
'$vidurl' => t("Please enter a video\x28.ogg\x29 link/URL:"),
'$audurl' => t("Please enter an audio\x28.ogg\x29 link/URL:"),
'$whereareu' => t('Where are you right now?')
)); ));
require_once('include/acl_selectors.php'); require_once('include/acl_selectors.php');

View File

@ -70,6 +70,7 @@ function settings_post(&$a) {
$net_publish = (((x($_POST,'profile_in_netdirectory')) && (intval($_POST['profile_in_netdirectory']) == 1)) ? 1: 0); $net_publish = (((x($_POST,'profile_in_netdirectory')) && (intval($_POST['profile_in_netdirectory']) == 1)) ? 1: 0);
$old_visibility = (((x($_POST,'visibility')) && (intval($_POST['visibility']) == 1)) ? 1 : 0); $old_visibility = (((x($_POST,'visibility')) && (intval($_POST['visibility']) == 1)) ? 1 : 0);
$page_flags = (((x($_POST,'page-flags')) && (intval($_POST['page-flags']))) ? intval($_POST['page-flags']) : 0); $page_flags = (((x($_POST,'page-flags')) && (intval($_POST['page-flags']))) ? intval($_POST['page-flags']) : 0);
$blockwall = (((x($_POST,'blockwall')) && (intval($_POST['blockwall']) == 1)) ? 0: 1); // this setting is inverted!
$notify = 0; $notify = 0;
@ -140,7 +141,7 @@ function settings_post(&$a) {
$openidserver = ''; $openidserver = '';
} }
$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, `theme` = '%s', `maxreq` = %d, `expire` = %d, `openidserver` = '%s' 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, `theme` = '%s', `maxreq` = %d, `expire` = %d, `openidserver` = '%s', `blockwall` = %d WHERE `uid` = %d LIMIT 1",
dbesc($username), dbesc($username),
dbesc($email), dbesc($email),
dbesc($openid), dbesc($openid),
@ -157,6 +158,7 @@ function settings_post(&$a) {
intval($maxreq), intval($maxreq),
intval($expire), intval($expire),
dbesc($openidserver), dbesc($openidserver),
intval($blockwall),
intval(local_user()) intval(local_user())
); );
if($r) if($r)
@ -241,6 +243,7 @@ function settings_content(&$a) {
$openid = $a->user['openid']; $openid = $a->user['openid'];
$maxreq = $a->user['maxreq']; $maxreq = $a->user['maxreq'];
$expire = ((intval($a->user['expire'])) ? $a->user['expire'] : ''); $expire = ((intval($a->user['expire'])) ? $a->user['expire'] : '');
$blockwall = $a->user['blockwall'];
if(! strlen($a->user['timezone'])) if(! strlen($a->user['timezone']))
$timezone = date_default_timezone_get(); $timezone = date_default_timezone_get();
@ -362,6 +365,7 @@ function settings_content(&$a) {
'$sel_notify5' => (($notify & NOTIFY_MAIL) ? ' checked="checked" ' : ''), '$sel_notify5' => (($notify & NOTIFY_MAIL) ? ' checked="checked" ' : ''),
'$maxreq' => $maxreq, '$maxreq' => $maxreq,
'$expire' => $expire, '$expire' => $expire,
'$blockw_checked' => (($blockwall) ? '' : ' checked="checked" ' ),
'$theme' => $theme_selector, '$theme' => $theme_selector,
'$pagetype' => $pagetype '$pagetype' => $pagetype
)); ));

View File

@ -407,3 +407,6 @@ function update_1042() {
} }
function update_1043() {
q("ALTER TABLE `user` ADD `blockwall` TINYINT( 1 ) NOT NULL DEFAULT '0' AFTER `blocked` ");
}

5
util/.htaccess Normal file
View File

@ -0,0 +1,5 @@
Options -Indexes
# Remove the following line or modify it to run the string translator utility
Deny from all

View File

@ -49,8 +49,8 @@ Placeholders
Do not translate placeholders in strings! Things like %s, %d, %1$s and $somename Do not translate placeholders in strings! Things like %s, %d, %1$s and $somename
are used to add dynamic content to the string. are used to add dynamic content to the string.
%s rappresent a dynamic string, like in "Welcome to %s" %s represents a dynamic string, like in "Welcome to %s"
%d rappresent a dynamic number, like in "%d new messages" %d represents a dynamic number, like in "%d new messages"
$somename is a variable like in php $somename is a variable like in php
In %1$s %2$s, the numbers are the position index of multiple dynamic content. In %1$s %2$s, the numbers are the position index of multiple dynamic content.
You could swap position in string of indexed placeholders. You could swap position in string of indexed placeholders.
@ -78,11 +78,11 @@ More info at http://www.gnu.org/software/hello/manual/gettext/Plural-forms.html
Xgettext and .po workflow Xgettext and .po workflow
1. Run utils/run_xgettext.sh script (on *unix sistems, with GNU xgettext installed) 1. Run util/run_xgettext.sh script (on *unix sistems, with GNU xgettext installed)
This script runs xgettext on source tree, extracting strings from t() and tt() This script runs xgettext on source tree, extracting strings from t() and tt()
functions, and creates a utils/messages.po file. functions, and creates a util/messages.po file.
2. copy utils/messages.po to views/<langauage>/messages.po 2. copy util/messages.po to view/<langauage>/messages.po
3. open views/<langauage>/messages.po with a text editor and fill in infos in 3. open view/<langauage>/messages.po with a text editor and fill in infos in
"Last-Translator: FULL NAME <EMAIL@ADDRESS>" "Last-Translator: FULL NAME <EMAIL@ADDRESS>"
"Language-Team: LANGUAGE <LL@li.org>\n" "Language-Team: LANGUAGE <LL@li.org>\n"
"Language: \n" "Language: \n"
@ -102,19 +102,20 @@ Xgettext and .po workflow
of the many .po editors out there, like QtLinguist of the many .po editors out there, like QtLinguist
5. run 5. run
$ php utils/po2php.php views/<language>/messages.po $ php util/po2php.php view/<language>/messages.po
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
$ utils/run_xgettext.sh views/<language>/messages.po $ util/run_xgettext.sh view/<language>/messages.po
to extraxt strings from source files and join them with the existing .po file: to extraxt 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
translation to messages.po. Run: translation to messages.po. Run:
$ php utils/php2po.php views/<language>/strings.php $ php util/php2po.php view/<language>/strings.php
You may also use the util/string_translator.php web interface to translate the string file, but it is disabled for website security reasons. The web server will need write permission to your language directories and the "Deny ..." line in util/.htaccess will need to be modified or commented to use the utility.

File diff suppressed because it is too large Load Diff

View File

@ -99,7 +99,7 @@ if (isset($_GET['lang'])){
$n2 = count($strings[$lang]); $n2 = count($strings[$lang]);
echo "<pre>"; echo "<pre>";
echo "Tranlsate en to $lang<br>"; echo "Translate en to $lang<br>";
//echo "Translated $n2 over $n1 strings<br>"; //echo "Translated $n2 over $n1 strings<br>";
echo "</pre><hr/>"; echo "</pre><hr/>";

View File

@ -66,6 +66,7 @@ $a->strings['[today]'] = '[today]';
$a->strings['link to source'] = 'link to source'; $a->strings['link to source'] = 'link to source';
$a->strings['Applications'] = 'Applications'; $a->strings['Applications'] = 'Applications';
$a->strings["Invite Friends"] = "Invite Friends"; $a->strings["Invite Friends"] = "Invite Friends";
$a->strings['Find People With Shared Interests'] = 'Find People With Shared Interests';
$a->strings['Connect/Follow'] = 'Connect/Follow'; $a->strings['Connect/Follow'] = 'Connect/Follow';
$a->strings['Example: bob@example.com, http://example.com/barbara'] = 'Example: bob@example.com, http://example.com/barbara'; $a->strings['Example: bob@example.com, http://example.com/barbara'] = 'Example: bob@example.com, http://example.com/barbara';
$a->strings['Follow'] = 'Follow'; $a->strings['Follow'] = 'Follow';
@ -86,6 +87,8 @@ $a->strings['Contact not found.'] = 'Contact not found.';
$a->strings['Mutual Friendship'] = 'Mutual Friendship'; $a->strings['Mutual Friendship'] = 'Mutual Friendship';
$a->strings['is a fan of yours'] = 'is a fan of yours'; $a->strings['is a fan of yours'] = 'is a fan of yours';
$a->strings['you are a fan of'] = 'you are a fan of'; $a->strings['you are a fan of'] = 'you are a fan of';
$a->strings['Privacy Unavailable'] = 'Privacy Unavailable';
$a->strings['Private communications are not available for this contact.'] = 'Private communications are not available for this contact.';
$a->strings['Never'] = 'Never'; $a->strings['Never'] = 'Never';
$a->strings["\x28Update was successful\x29"] = "\x28Update was successful\x29"; $a->strings["\x28Update was successful\x29"] = "\x28Update was successful\x29";
$a->strings["\x28Update was not successful\x29"] = "\x28Update was not successful\x29"; $a->strings["\x28Update was not successful\x29"] = "\x28Update was not successful\x29";
@ -211,9 +214,11 @@ $a->strings['Unable to remove group.'] = 'Unable to remove group.';
$a->strings["Welcome to %s"] = "Welcome to %s"; $a->strings["Welcome to %s"] = "Welcome to %s";
$a->strings['Could not create/connect to database.'] = 'Could not create/connect to database.'; $a->strings['Could not create/connect to database.'] = 'Could not create/connect to database.';
$a->strings['Connected to database.'] = 'Connected to database.'; $a->strings['Connected to database.'] = 'Connected to database.';
$a->strings['Database import succeeded.'] = 'Database import succeeded.'; $a->strings['Proceed with Installation'] = 'Proceed with Installation';
$a->strings['Your Friendika site database has been installed.'] = 'Your Friendika site database has been installed.';
$a->strings['IMPORTANT: You will need to [manually] setup a scheduled task for the poller.'] = 'IMPORTANT: You will need to [manually] setup a scheduled task for the poller.'; $a->strings['IMPORTANT: You will need to [manually] setup a scheduled task for the poller.'] = 'IMPORTANT: You will need to [manually] setup a scheduled task for the poller.';
$a->strings['Please see the file "INSTALL.txt".'] = 'Please see the file "INSTALL.txt".'; $a->strings['Please see the file "INSTALL.txt".'] = 'Please see the file "INSTALL.txt".';
$a->strings['Proceed to registration'] = 'Proceed to registration';
$a->strings['Database import failed.'] = 'Database import failed.'; $a->strings['Database import failed.'] = 'Database import failed.';
$a->strings['You may need to import the file "database.sql" manually using phpmyadmin or mysql.'] = 'You may need to import the file "database.sql" manually using phpmyadmin or mysql.'; $a->strings['You may need to import the file "database.sql" manually using phpmyadmin or mysql.'] = 'You may need to import the file "database.sql" manually using phpmyadmin or mysql.';
$a->strings['Welcome to Friendika.'] = 'Welcome to Friendika.'; $a->strings['Welcome to Friendika.'] = 'Welcome to Friendika.';
@ -266,6 +271,8 @@ $a->strings["Welcome back %s"] = "Welcome back %s";
$a->strings['Manage Identities and/or Pages'] = 'Manage Identities and/or Pages'; $a->strings['Manage Identities and/or Pages'] = 'Manage Identities and/or Pages';
$a->strings["\x28Toggle between different identities or community/group pages which share your account details.\x29"] = "\x28Toggle between different identities or community/group pages which share your account details.\x29"; $a->strings["\x28Toggle between different identities or community/group pages which share your account details.\x29"] = "\x28Toggle between different identities or community/group pages which share your account details.\x29";
$a->strings['Select an identity to manage: '] = 'Select an identity to manage: '; $a->strings['Select an identity to manage: '] = 'Select an identity to manage: ';
$a->strings['Profile Match'] = 'Profile Match';
$a->strings['No matches'] = 'No matches';
$a->strings['No recipient selected.'] = 'No recipient selected.'; $a->strings['No recipient selected.'] = 'No recipient selected.';
$a->strings['[no subject]'] = '[no subject]'; $a->strings['[no subject]'] = '[no subject]';
$a->strings['Unable to locate contact information.'] = 'Unable to locate contact information.'; $a->strings['Unable to locate contact information.'] = 'Unable to locate contact information.';
@ -277,6 +284,7 @@ $a->strings['Outbox'] = 'Outbox';
$a->strings['New Message'] = 'New Message'; $a->strings['New Message'] = 'New Message';
$a->strings['Message deleted.'] = 'Message deleted.'; $a->strings['Message deleted.'] = 'Message deleted.';
$a->strings['Conversation removed.'] = 'Conversation removed.'; $a->strings['Conversation removed.'] = 'Conversation removed.';
$a->strings['Please enter a link URL:'] = 'Please enter a link URL:';
$a->strings['Send Private Message'] = 'Send Private Message'; $a->strings['Send Private Message'] = 'Send Private Message';
$a->strings['To:'] = 'To:'; $a->strings['To:'] = 'To:';
$a->strings['Subject:'] = 'Subject:'; $a->strings['Subject:'] = 'Subject:';
@ -287,6 +295,10 @@ $a->strings['Delete message'] = 'Delete message';
$a->strings['Send Reply'] = 'Send Reply'; $a->strings['Send Reply'] = 'Send Reply';
$a->strings['Normal View'] = 'Normal View'; $a->strings['Normal View'] = 'Normal View';
$a->strings['New Item View'] = 'New Item View'; $a->strings['New Item View'] = 'New Item View';
$a->strings['Please enter a YouTube link:'] = 'Please enter a YouTube link:';
$a->strings["Please enter a video\x28.ogg\x29 link/URL:"] = "Please enter a video\x28.ogg\x29 link/URL:";
$a->strings["Please enter an audio\x28.ogg\x29 link/URL:"] = "Please enter an audio\x28.ogg\x29 link/URL:";
$a->strings['Where are you right now?'] = 'Where are you right now?';
$a->strings['No such group'] = 'No such group'; $a->strings['No such group'] = 'No such group';
$a->strings['Group is empty'] = 'Group is empty'; $a->strings['Group is empty'] = 'Group is empty';
$a->strings['Group: '] = 'Group: '; $a->strings['Group: '] = 'Group: ';
@ -343,6 +355,9 @@ $a->strings['Example: @bob, @Barbara_Jensen, @jim@example.com, #California, #cam
$a->strings['Recent Photos'] = 'Recent Photos'; $a->strings['Recent Photos'] = 'Recent Photos';
$a->strings['Upload New Photos'] = 'Upload New Photos'; $a->strings['Upload New Photos'] = 'Upload New Photos';
$a->strings['View Album'] = 'View Album'; $a->strings['View Album'] = 'View Album';
$a->strings['Status'] = 'Status';
$a->strings['Profile'] = 'Profile';
$a->strings['Photos'] = 'Photos';
$a->strings['Image uploaded but image cropping failed.'] = 'Image uploaded but image cropping failed.'; $a->strings['Image uploaded but image cropping failed.'] = 'Image uploaded but image cropping failed.';
$a->strings['Unable to process image'] = 'Unable to process image'; $a->strings['Unable to process image'] = 'Unable to process image';
$a->strings['Image uploaded successfully.'] = 'Image uploaded successfully.'; $a->strings['Image uploaded successfully.'] = 'Image uploaded successfully.';
@ -442,7 +457,7 @@ $a->strings['minutes'] = 'minutes';
$a->strings['second'] = 'second'; $a->strings['second'] = 'second';
$a->strings['seconds'] = 'seconds'; $a->strings['seconds'] = 'seconds';
$a->strings[' ago'] = ' ago'; $a->strings[' ago'] = ' ago';
$a->strings['Cannot locate DNS info for database server \'%s\'',$server] = 'Cannot locate DNS info for database server \'%s\'',$server; $a->strings['Cannot locate DNS info for database server \'%s\''] = 'Cannot locate DNS info for database server \'%s\'';
$a->strings['Create a new group'] = 'Create a new group'; $a->strings['Create a new group'] = 'Create a new group';
$a->strings['Everybody'] = 'Everybody'; $a->strings['Everybody'] = 'Everybody';
$a->strings['Birthday:'] = 'Birthday:'; $a->strings['Birthday:'] = 'Birthday:';

View File

@ -41,7 +41,10 @@
echo 'util/strings.php' . "\n"; echo 'util/strings.php' . "\n";
include_once('util/strings.php'); include_once('util/strings.php');
echo count($a->strings) . ' strings' . "\n";
$files = glob('view/*/strings.php'); $files = glob('view/*/strings.php');
foreach($files as $file) { foreach($files as $file) {
echo $file . "\n"; echo $file . "\n";
include_once($file); include_once($file);

View File

@ -1,8 +0,0 @@
<div id="profile-edit-insecure">
<p>
Das Soziale Netzwerk dem $name angehört ist ein offenes Netzwerk das nur
eingeschränkte oder nicht existente Privatspäreneinstellungen bietet.
Bitte verhalte dich entsprechend diskret.
</p>
</div>

View File

@ -1,166 +0,0 @@
<script language="javascript" type="text/javascript" src="$baseurl/tinymce/jscripts/tiny_mce/tiny_mce_src.js"></script>
<script language="javascript" type="text/javascript">
var editor;
tinyMCE.init({
theme : "advanced",
mode : "specific_textareas",
editor_selector: /(profile-jot-text|prvmail-text)/,
plugins : "bbcode,paste",
theme_advanced_buttons1 : "bold,italic,underline,undo,redo,link,unlink,image,forecolor,formatselect,code",
theme_advanced_buttons2 : "",
theme_advanced_buttons3 : "",
theme_advanced_toolbar_location : "top",
theme_advanced_toolbar_align : "center",
theme_advanced_blockformats : "blockquote,code",
paste_text_sticky : true,
entity_encoding : "raw",
add_unload_trigger : false,
remove_linebreaks : false,
force_p_newlines : false,
force_br_newlines : true,
forced_root_block : '',
convert_urls: false,
content_css: "$baseurl/view/custom_tinymce.css",
//Character count
theme_advanced_path : false,
setup : function(ed) {
ed.onKeyUp.add(function(ed, e) {
var txt = tinyMCE.activeEditor.getContent();
var text = txt.length;
if(txt.length <= 140) {
$('#character-counter').removeClass('red');
$('#character-counter').removeClass('orange');
$('#character-counter').addClass('grey');
}
if((txt.length > 140) && (txt .length <= 420)) {
$('#character-counter').removeClass('grey');
$('#character-counter').removeClass('red');
$('#character-counter').addClass('orange');
}
if(txt.length > 420) {
$('#character-counter').removeClass('grey');
$('#character-counter').removeClass('orange');
$('#character-counter').addClass('red');
}
$('#character-counter').text(text);
});
ed.onInit.add(function(ed) {
ed.pasteAsPlainText = true;
});
}
});
</script>
<script type="text/javascript" src="include/ajaxupload.js" ></script>
<script>
$(document).ready(function() {
var uploader = new window.AjaxUpload(
'wall-image-upload',
{ action: 'wall_upload/$nickname',
name: 'userfile',
onSubmit: function(file,ext) { $('#profile-rotator').show(); },
onComplete: function(file,response) {
tinyMCE.execCommand('mceInsertRawHTML',false,response);
$('#profile-rotator').hide();
}
}
);
$('#contact_allow, #contact_deny, #group_allow, #group_deny').change(function() {
var selstr;
$('#contact_allow option:selected, #contact_deny option:selected, #group_allow option:selected, #group_deny option:selected').each( function() {
selstr = $(this).text();
$('#profile-jot-perms img').attr('src', 'images/lock_icon.gif');
$('.profile-jot-net input').attr('disabled', 'disabled');
});
if(selstr == null) {
$('#profile-jot-perms img').attr('src', 'images/unlock_icon.gif');
$('.profile-jot-net input').attr('disabled', false);
}
}).trigger('change');
});
function jotGetLink() {
reply = prompt("Bitte URL des Links angeben:");
if(reply && reply.length) {
$('#profile-rotator').show();
$.get('parse_url?url=' + reply, function(data) {
tinyMCE.execCommand('mceInsertRawHTML',false,data);
$('#profile-rotator').hide();
});
}
}
function jotGetVideo() {
reply = prompt("Bitte den YouTube Link angeben:");
if(reply && reply.length) {
tinyMCE.execCommand('mceInsertRawHTML',false,'[youtube]' + reply + '[/youtube]');
}
}
function jotVideoURL() {
reply = prompt("Please enter a video(.ogg) link/URL:");
if(reply && reply.length) {
tinyMCE.execCommand('mceInsertRawHTML',false,'[video]' + reply + '[/video]');
}
}
function jotAudioURL() {
reply = prompt("Please enter an audio(.ogg) link/URL:");
if(reply && reply.length) {
tinyMCE.execCommand('mceInsertRawHTML',false,'[audio]' + reply + '[/audio]');
}
}
function jotGetLocation() {
reply = prompt("Wo bist du im Moment?", $('#jot-location').val());
if(reply && reply.length) {
$('#jot-location').val(reply);
}
}
function jotShare(id) {
$('#like-rotator-' + id).show();
$.get('share/' + id, function(data) {
tinyMCE.execCommand('mceInsertRawHTML',false,data);
$('#like-rotator-' + id).hide();
$(window).scrollTop(0);
});
}
function linkdropper(event) {
var linkFound = event.dataTransfer.types.contains("text/uri-list");
if(linkFound)
event.preventDefault();
}
function linkdrop(event) {
var reply = event.dataTransfer.getData("text/uri-list");
event.target.textContent = reply;
event.preventDefault();
if(reply && reply.length) {
$('#profile-rotator').show();
$.get('parse_url?url=' + reply, function(data) {
tinyMCE.execCommand('mceInsertRawHTML',false,data);
$('#profile-rotator').hide();
});
}
}
function jotClearLocation() {
$('#jot-coord').val('');
$('#profile-nolocation-wrapper').hide();
}
$geotag
</script>

View File

@ -1,104 +0,0 @@
<script language="javascript" type="text/javascript" src="$baseurl/tinymce/jscripts/tiny_mce/tiny_mce_src.js"></script>
<script language="javascript" type="text/javascript">
tinyMCE.init({
theme : "advanced",
mode : "specific_textareas",
editor_selector: /(profile-jot-text|prvmail-text)/,
plugins : "bbcode,paste",
theme_advanced_buttons1 : "bold,italic,underline,undo,redo,link,unlink,image,forecolor",
theme_advanced_buttons2 : "",
theme_advanced_buttons3 : "",
theme_advanced_toolbar_location : "top",
theme_advanced_toolbar_align : "center",
theme_advanced_blockformats : "blockquote,code",
paste_text_sticky : true,
entity_encoding : "raw",
add_unload_trigger : false,
remove_linebreaks : false,
force_p_newlines : false,
force_br_newlines : true,
forced_root_block : '',
convert_urls: false,
content_css: "$baseurl/view/custom_tinymce.css",
//Character count
theme_advanced_path : false,
setup : function(ed) {
ed.onKeyUp.add(function(ed, e) {
var txt = tinyMCE.activeEditor.getContent();
var text = txt.length;
if(txt.length <= 140) {
$('#character-counter').removeClass('red');
$('#character-counter').removeClass('orange');
$('#character-counter').addClass('grey');
}
if((txt.length > 140) && (txt .length <= 420)) {
$('#character-counter').removeClass('grey');
$('#character-counter').removeClass('red');
$('#character-counter').addClass('orange');
}
if(txt.length > 420) {
$('#character-counter').removeClass('grey');
$('#character-counter').removeClass('orange');
$('#character-counter').addClass('red');
}
$('#character-counter').text(text);
});
ed.onInit.add(function(ed) {
ed.pasteAsPlainText = true;
});
}
});
</script>
<script type="text/javascript" src="include/ajaxupload.js" ></script>
<script>
$(document).ready(function() {
var uploader = new window.AjaxUpload(
'prvmail-upload',
{ action: 'wall_upload/$nickname',
name: 'userfile',
onSubmit: function(file,ext) { $('#profile-rotator').show(); },
onComplete: function(file,response) {
tinyMCE.execCommand('mceInsertRawHTML',false,response);
$('#profile-rotator').hide();
}
}
);
});
function jotGetLink() {
reply = prompt("Please enter a link URL:");
if(reply && reply.length) {
$('#profile-rotator').show();
$.get('parse_url?url=' + reply, function(data) {
tinyMCE.execCommand('mceInsertRawHTML',false,data);
$('#profile-rotator').hide();
});
}
}
function linkdropper(event) {
var linkFound = event.dataTransfer.types.contains("text/uri-list");
if(linkFound)
event.preventDefault();
}
function linkdrop(event) {
var reply = event.dataTransfer.getData("text/uri-list");
event.target.textContent = reply;
event.preventDefault();
if(reply && reply.length) {
$('#profile-rotator').show();
$.get('parse_url?url=' + reply, function(data) {
tinyMCE.execCommand('mceInsertRawHTML',false,data);
$('#profile-rotator').hide();
});
}
}
</script>

View File

@ -136,13 +136,13 @@ $sexual
<div id="profile-edit-pubkeywords-wrapper" > <div id="profile-edit-pubkeywords-wrapper" >
<label id="profile-edit-pubkeywords-label" for="profile-edit-pubkeywords" >Public Keywords: </label> <label id="profile-edit-pubkeywords-label" for="profile-edit-pubkeywords" >Public Keywords: </label>
<input type="text" size="32" name="pubkeywords" id="profile-edit-pubkeywords" title="Example: fishing photography software" value="$pub_keywords" /> <input type="text" size="32" name="pub_keywords" id="profile-edit-pubkeywords" title="Example: fishing photography software" value="$pub_keywords" />
</div><div id="profile-edit-pubkeywords-desc">(Used for suggesting potential friends, can be seen by others)</div> </div><div id="profile-edit-pubkeywords-desc">(Used for suggesting potential friends, can be seen by others)</div>
<div id="profile-edit-pubkeywords-end"></div> <div id="profile-edit-pubkeywords-end"></div>
<div id="profile-edit-prvkeywords-wrapper" > <div id="profile-edit-prvkeywords-wrapper" >
<label id="profile-edit-prvkeywords-label" for="profile-edit-prvkeywords" >Private Keywords: </label> <label id="profile-edit-prvkeywords-label" for="profile-edit-prvkeywords" >Private Keywords: </label>
<input type="text" size="32" name="prvkeywords" id="profile-edit-prvkeywords" title="Example: fishing photography software" value="$prv_keywords" /> <input type="text" size="32" name="prv_keywords" id="profile-edit-prvkeywords" title="Example: fishing photography software" value="$prv_keywords" />
</div><div id="profile-edit-prvkeywords-desc">(Used for searching profiles, never shown to others)</div> </div><div id="profile-edit-prvkeywords-desc">(Used for searching profiles, never shown to others)</div>
<div id="profile-edit-prvkeywords-end"></div> <div id="profile-edit-prvkeywords-end"></div>

View File

@ -1,7 +0,0 @@
<div id="profile-tabs-wrapper" >
<a href="$url" id="profile-tab-status-link" class="profile-tabs" >Status</a>
<a href="$url?tab=profile" id="profile-tab-profile-link" class="profile-tabs" >Profil</a>
<a href="$phototab" id="profile-tab-photos-link" class="profile-tabs" >Fotos</a>
<div id="profile-tabs-end"></div>
</div>

View File

@ -89,6 +89,14 @@ $profile_in_net_dir
</div> </div>
<div id="settings-default-perms-end"></div> <div id="settings-default-perms-end"></div>
<div id="settings-blockw-wrapper" >
<label id="settings-blockw-label" for="settings-blockw" >Allow friends to post to your profile: </label>
<input type="checkbox" name="blockwall" id="settings-blockw" value="1" $blockw_checked />
</div>
<div id="settings-blockw-end" ></div>
<div id="settings-expire-desc">Automatically expire (delete) posts older than <input type="text" size="3" name="expire" value="$expire" /> days</div> <div id="settings-expire-desc">Automatically expire (delete) posts older than <input type="text" size="3" name="expire" value="$expire" /> days</div>
<div id="settings-expire-end"></div> <div id="settings-expire-end"></div>

View File

@ -272,6 +272,11 @@ $a->strings['Clear browser location'] = 'Browser Standort leeren';
$a->strings['Permission settings'] = 'Berechtigungseinstellungen'; $a->strings['Permission settings'] = 'Berechtigungseinstellungen';
$a->strings['CC: email addresses'] = 'CC: EMail Addresse'; $a->strings['CC: email addresses'] = 'CC: EMail Addresse';
$a->strings['Example: bob@example.com, mary@example.com'] = 'Z.B.: bob@example.com, mary@example.com'; $a->strings['Example: bob@example.com, mary@example.com'] = 'Z.B.: bob@example.com, mary@example.com';
$a->strings['Please enter a link URL:'] = 'Bitte URL des Links angeben:';
$a->strings['Please enter a YouTube link:'] = 'Bitte den YouTube Link angeben:';
$a->strings["Please enter a video\x28.ogg\x29 link/URL:"] = "Please enter a video\x28.ogg\x29 link/URL:";
$a->strings["Please enter an audio\x28.ogg\x29 link/URL:"] = "Please enter an audio\x28.ogg\x29 link/URL:";
$a->strings['Where are you right now?'] = 'Wo bist du im Moment?';
$a->strings['No such group'] = 'Es gibt keine solche Gruppe'; $a->strings['No such group'] = 'Es gibt keine solche Gruppe';
$a->strings['Group is empty'] = 'Gruppe ist leer'; $a->strings['Group is empty'] = 'Gruppe ist leer';
$a->strings['Group: '] = 'Gruppe: '; $a->strings['Group: '] = 'Gruppe: ';
@ -326,6 +331,9 @@ $a->strings['Example: @bob, @Barbara_Jensen, @jim@example.com, #California, #cam
$a->strings['Recent Photos'] = 'Neuste Fotos'; $a->strings['Recent Photos'] = 'Neuste Fotos';
$a->strings['Upload New Photos'] = 'Weitere Fotos hochladen'; $a->strings['Upload New Photos'] = 'Weitere Fotos hochladen';
$a->strings['View Album'] = 'Album betrachten'; $a->strings['View Album'] = 'Album betrachten';
$a->strings['Status'] = 'Status';
$a->strings['Profile'] = 'Profil';
$a->strings['Photos'] = 'Fotos';
$a->strings['Image uploaded but image cropping failed.'] = 'Bilder hochgeladen aber das Zuschneiden ist fehlgeschlagen.'; $a->strings['Image uploaded but image cropping failed.'] = 'Bilder hochgeladen aber das Zuschneiden ist fehlgeschlagen.';
$a->strings['Image size reduction [175] failed.'] = 'Image size reduction [175] failed.'; $a->strings['Image size reduction [175] failed.'] = 'Image size reduction [175] failed.';
$a->strings['Image size reduction [80] failed.'] = 'Image size reduction [80] failed.'; $a->strings['Image size reduction [80] failed.'] = 'Image size reduction [80] failed.';

View File

@ -1,6 +0,0 @@
<div id="profile-edit-insecure">
<p>
The social network that $name belongs to is an open network with limited or non-existent privacy controls.
Please use appropriate discretion.
</p>
</div>

View File

@ -1,104 +0,0 @@
<script language="javascript" type="text/javascript" src="$baseurl/tinymce/jscripts/tiny_mce/tiny_mce_src.js"></script>
<script language="javascript" type="text/javascript">
tinyMCE.init({
theme : "advanced",
mode : "specific_textareas",
editor_selector: /(profile-jot-text|prvmail-text)/,
plugins : "bbcode,paste",
theme_advanced_buttons1 : "bold,italic,underline,undo,redo,link,unlink,image,forecolor",
theme_advanced_buttons2 : "",
theme_advanced_buttons3 : "",
theme_advanced_toolbar_location : "top",
theme_advanced_toolbar_align : "center",
theme_advanced_blockformats : "blockquote,code",
paste_text_sticky : true,
entity_encoding : "raw",
add_unload_trigger : false,
remove_linebreaks : false,
force_p_newlines : false,
force_br_newlines : true,
forced_root_block : '',
convert_urls: false,
content_css: "$baseurl/view/custom_tinymce.css",
//Character count
theme_advanced_path : false,
setup : function(ed) {
ed.onKeyUp.add(function(ed, e) {
var txt = tinyMCE.activeEditor.getContent();
var text = txt.length;
if(txt.length <= 140) {
$('#character-counter').removeClass('red');
$('#character-counter').removeClass('orange');
$('#character-counter').addClass('grey');
}
if((txt.length > 140) && (txt .length <= 420)) {
$('#character-counter').removeClass('grey');
$('#character-counter').removeClass('red');
$('#character-counter').addClass('orange');
}
if(txt.length > 420) {
$('#character-counter').removeClass('grey');
$('#character-counter').removeClass('orange');
$('#character-counter').addClass('red');
}
$('#character-counter').text(text);
});
ed.onInit.add(function(ed) {
ed.pasteAsPlainText = true;
});
}
});
</script>
<script type="text/javascript" src="include/ajaxupload.js" ></script>
<script>
$(document).ready(function() {
var uploader = new window.AjaxUpload(
'prvmail-upload',
{ action: 'wall_upload/$nickname',
name: 'userfile',
onSubmit: function(file,ext) { $('#profile-rotator').show(); },
onComplete: function(file,response) {
tinyMCE.execCommand('mceInsertRawHTML',false,response);
$('#profile-rotator').hide();
}
}
);
});
function jotGetLink() {
reply = prompt("Please enter a link URL:");
if(reply && reply.length) {
$('#profile-rotator').show();
$.get('parse_url?url=' + reply, function(data) {
tinyMCE.execCommand('mceInsertRawHTML',false,data);
$('#profile-rotator').hide();
});
}
}
function linkdropper(event) {
var linkFound = event.dataTransfer.types.contains("text/uri-list");
if(linkFound)
event.preventDefault();
}
function linkdrop(event) {
var reply = event.dataTransfer.getData("text/uri-list");
event.target.textContent = reply;
event.preventDefault();
if(reply && reply.length) {
$('#profile-rotator').show();
$.get('parse_url?url=' + reply, function(data) {
tinyMCE.execCommand('mceInsertRawHTML',false,data);
$('#profile-rotator').hide();
});
}
}
</script>

View File

@ -1,7 +0,0 @@
<div id="profile-tabs-wrapper" >
<a href="$url" id="profile-tab-status-link" class="profile-tabs" >Status</a>
<a href="$url?tab=profile" id="profile-tab-profile-link" class="profile-tabs" >Profile</a>
<a href="$phototab" id="profile-tab-photos-link" class="profile-tabs" >Photos</a>
<div id="profile-tabs-end"></div>
</div>

View File

@ -88,6 +88,14 @@ $profile_in_net_dir
</div> </div>
<div id="settings-default-perms-end"></div> <div id="settings-default-perms-end"></div>
<div id="settings-blockw-wrapper" >
<label id="settings-blockw-label" for="settings-blockw" >Allow friends to post to your profile: </label>
<input type="checkbox" name="blockwall" id="settings-blockw" value="1" $blockw_checked />
</div>
<div id="settings-blockw-end" ></div>
<div id="settings-expire-desc">Automatically expire (delete) posts older than <input type="text" size="3" name="expire" value="$expire" /> days</div> <div id="settings-expire-desc">Automatically expire (delete) posts older than <input type="text" size="3" name="expire" value="$expire" /> days</div>
<div id="settings-expire-end"></div> <div id="settings-expire-end"></div>

View File

@ -1,6 +0,0 @@
<div id="profile-edit-insecure">
<p>
Le réseau social auquel $name appartient est un réseau ouvert ne disposant que d'un contrôle limité sur les éléments de la vie privée.
Gardez ceci à l'esprit, en fonction de vos besoins de discrétion.
</p>
</div>

View File

@ -1,164 +0,0 @@
<script language="javascript" type="text/javascript" src="$baseurl/tinymce/jscripts/tiny_mce/tiny_mce_src.js"></script>
<script language="javascript" type="text/javascript">
var editor;
tinyMCE.init({
theme : "advanced",
mode : "specific_textareas",
editor_selector: /(profile-jot-text|prvmail-text)/,
plugins : "bbcode,paste",
theme_advanced_buttons1 : "bold,italic,underline,undo,redo,link,unlink,image,forecolor,formatselect,code",
theme_advanced_buttons2 : "",
theme_advanced_buttons3 : "",
theme_advanced_toolbar_location : "top",
theme_advanced_toolbar_align : "center",
theme_advanced_blockformats : "blockquote,code",
paste_text_sticky : true,
entity_encoding : "raw",
add_unload_trigger : false,
remove_linebreaks : false,
force_p_newlines : false,
force_br_newlines : true,
forced_root_block : '',
convert_urls: false,
content_css: "$baseurl/view/custom_tinymce.css",
//Character count
theme_advanced_path : false,
setup : function(ed) {
ed.onKeyUp.add(function(ed, e) {
var txt = tinyMCE.activeEditor.getContent();
var text = txt.length;
if(txt.length <= 140) {
$('#character-counter').removeClass('red');
$('#character-counter').removeClass('orange');
$('#character-counter').addClass('grey');
}
if((txt.length > 140) && (txt .length <= 420)) {
$('#character-counter').removeClass('grey');
$('#character-counter').removeClass('red');
$('#character-counter').addClass('orange');
}
if(txt.length > 420) {
$('#character-counter').removeClass('grey');
$('#character-counter').removeClass('orange');
$('#character-counter').addClass('red');
}
$('#character-counter').text(text);
});
ed.onInit.add(function(ed) {
ed.pasteAsPlainText = true;
});
}
});
</script>
<script type="text/javascript" src="include/ajaxupload.js" ></script>
<script>
$(document).ready(function() {
var uploader = new window.AjaxUpload(
'wall-image-upload',
{ action: 'wall_upload/$nickname',
name: 'userfile',
onSubmit: function(file,ext) { $('#profile-rotator').show(); },
onComplete: function(file,response) {
tinyMCE.execCommand('mceInsertRawHTML',false,response);
$('#profile-rotator').hide();
}
}
);
$('#contact_allow, #contact_deny, #group_allow, #group_deny').change(function() {
var selstr;
$('#contact_allow option:selected, #contact_deny option:selected, #group_allow option:selected, #group_deny option:selected').each( function() {
selstr = $(this).text();
$('#profile-jot-perms img').attr('src', 'images/lock_icon.gif');
$('.profile-jot-net input').attr('disabled', 'disabled');
});
if(selstr == null) {
$('#profile-jot-perms img').attr('src', 'images/unlock_icon.gif');
$('.profile-jot-net input').attr('disabled', false);
}
}).trigger('change');
});
function jotGetLink() {
reply = prompt("Please enter a link URL:");
if(reply && reply.length) {
$('#profile-rotator').show();
$.get('parse_url?url=' + reply, function(data) {
tinyMCE.execCommand('mceInsertRawHTML',false,data);
$('#profile-rotator').hide();
});
}
}
function jotGetVideo() {
reply = prompt("Please enter a YouTube link:");
if(reply && reply.length) {
tinyMCE.execCommand('mceInsertRawHTML',false,'[youtube]' + reply + '[/youtube]');
}
}
function jotVideoURL() {
reply = prompt("Please enter a video(.ogg) link/URL:");
if(reply && reply.length) {
tinyMCE.execCommand('mceInsertRawHTML',false,'[video]' + reply + '[/video]');
}
}
function jotAudioURL() {
reply = prompt("Please enter an audio(.ogg) link/URL:");
if(reply && reply.length) {
tinyMCE.execCommand('mceInsertRawHTML',false,'[audio]' + reply + '[/audio]');
}
}
function jotGetLocation() {
reply = prompt("Where are you right now?", $('#jot-location').val());
if(reply && reply.length) {
$('#jot-location').val(reply);
}
}
function jotShare(id) {
$('#like-rotator-' + id).show();
$.get('share/' + id, function(data) {
tinyMCE.execCommand('mceInsertRawHTML',false,data);
$('#like-rotator-' + id).hide();
$(window).scrollTop(0);
});
}
function linkdropper(event) {
var linkFound = event.dataTransfer.types.contains("text/uri-list");
if(linkFound)
event.preventDefault();
}
function linkdrop(event) {
var reply = event.dataTransfer.getData("text/uri-list");
event.target.textContent = reply;
event.preventDefault();
if(reply && reply.length) {
$('#profile-rotator').show();
$.get('parse_url?url=' + reply, function(data) {
tinyMCE.execCommand('mceInsertRawHTML',false,data);
$('#profile-rotator').hide();
});
}
}
function jotClearLocation() {
$('#jot-coord').val('');
$('#profile-nolocation-wrapper').hide();
}
$geotag
</script>

2699
view/fr/messages.po Normal file

File diff suppressed because it is too large Load Diff

View File

@ -2,24 +2,24 @@
<div id="settings-normal-wrapper"> <div id="settings-normal-wrapper">
<label id="settings-normal-label" for="settings-normal">Normal Profile</label> <label id="settings-normal-label" for="settings-normal">Normal Profile</label>
<input type="radio" name="page-flags" id="settings-normal" $normal_selected value="$page_normal" /> <input type="radio" name="page-flags" id="settings-normal" $normal_selected value="$page_normal" />
<span id="settings-normal-desc">This account is a normal personal profile</span> <span id="settings-normal-desc">Ce compte est un profil personnel normal</span>
</div> </div>
<div id="settings-normal-break" ></div> <div id="settings-normal-break" ></div>
<div id="settings-soapbox-wrapper"> <div id="settings-soapbox-wrapper">
<label id="settings-soapbox-label" for="settings-soapbox">Soapbox Profile</label> <label id="settings-soapbox-label" for="settings-soapbox">Soapbox Profile</label>
<input type="radio" name="page-flags" id="settings-soapbox" $soapbox_selected value="$page_soapbox" /> <input type="radio" name="page-flags" id="settings-soapbox" $soapbox_selected value="$page_soapbox" />
<span id="settings-soapbox-desc">Automatically approve all connection/friend requests as read-only fans</span> <span id="settings-soapbox-desc">Approbation automatique de toutes les requêtes de connexion comme étant des fans en lecture seule</span>
</div> </div>
<div id="settings-soapbox-break" ></div> <div id="settings-soapbox-break" ></div>
<div id="settings-community-wrapper"> <div id="settings-community-wrapper">
<label id="settings-community-label" for="settings-community">Community/Celebrity Profile</label> <label id="settings-community-label" for="settings-community">Community/Celebrity Profile</label>
<input type="radio" name="page-flags" id="settings-community" $community_selected value="$page_community" /> <input type="radio" name="page-flags" id="settings-community" $community_selected value="$page_community" />
<span id="settings-community-desc">Automatically approve all connection/friend requests as read-write fans</span> <span id="settings-community-desc">Approbation automatique de toutes les requêtes de connexion comme étant des fans en lecture-écriture</span>
</div> </div>
<div id="settings-community-break" ></div> <div id="settings-community-break" ></div>
<div id="settings-freelove-wrapper"> <div id="settings-freelove-wrapper">
<label id="settings-freelove-label" for="settings-freelove">Automatic Friend Profile</label> <label id="settings-freelove-label" for="settings-freelove">Automatic Friend Profile</label>
<input type="radio" name="page-flags" id="settings-freelove" $freelove_selected value="$page_freelove" /> <input type="radio" name="page-flags" id="settings-freelove" $freelove_selected value="$page_freelove" />
<span id="settings-freelove-desc">Automatically approve all connection/friend requests as friends</span> <span id="settings-freelove-desc">Approbation automatique de toutes les requêtes de connexion comme étant des amis</span>
</div> </div>
<div id="settings-freelove-break" ></div> <div id="settings-freelove-break" ></div>

View File

@ -4,7 +4,7 @@ $o .= '';
$o .= <<< EOT $o .= <<< EOT
<h2>Profile</h2> <h2>Profil</h2>
EOT; EOT;
@ -12,7 +12,7 @@ EOT;
if($a->profile['name']) { if($a->profile['name']) {
$o .= <<< EOT $o .= <<< EOT
<div id="advanced-profile-name-wrapper" > <div id="advanced-profile-name-wrapper" >
<div id="advanced-profile-name-text">Full Name:</div> <div id="advanced-profile-name-text">Nom complet:</div>
<div id="advanced-profile-name">{$a->profile['name']}</div> <div id="advanced-profile-name">{$a->profile['name']}</div>
</div> </div>
<div id="advanced-profile-name-end"></div> <div id="advanced-profile-name-end"></div>
@ -22,7 +22,7 @@ EOT;
if($a->profile['gender']) { if($a->profile['gender']) {
$o .= <<< EOT $o .= <<< EOT
<div id="advanced-profile-gender-wrapper" > <div id="advanced-profile-gender-wrapper" >
<div id="advanced-profile-gender-text">Gender:</div> <div id="advanced-profile-gender-text">Genre:</div>
<div id="advanced-profile-gender">{$a->profile['gender']}</div> <div id="advanced-profile-gender">{$a->profile['gender']}</div>
</div> </div>
<div id="advanced-profile-gender-end"></div> <div id="advanced-profile-gender-end"></div>
@ -32,14 +32,14 @@ EOT;
if(($a->profile['dob']) && ($a->profile['dob'] != '0000-00-00')) { if(($a->profile['dob']) && ($a->profile['dob'] != '0000-00-00')) {
$o .= <<< EOT $o .= <<< EOT
<div id="advanced-profile-dob-wrapper" > <div id="advanced-profile-dob-wrapper" >
<div id="advanced-profile-dob-text">Birthday:</div> <div id="advanced-profile-dob-text">Date de naissance/anniversaire:</div>
EOT; EOT;
// If no year, add an arbitrary one so just we can parse the month and day. // If no year, add an arbitrary one so just we can parse the month and day.
$o .= '<div id="advanced-profile-dob">' $o .= '<div id="advanced-profile-dob">'
. ((intval($a->profile['dob'])) . ((intval($a->profile['dob']))
? day_translate(datetime_convert('UTC','UTC',$a->profile['dob'],'j F, Y')) ? day_translate(datetime_convert('UTC','UTC',$a->profile['dob'],'j F Y'))
: day_translate(datetime_convert('UTC','UTC','2001-' . substr($a->profile['dob'],6),'j F'))) : day_translate(datetime_convert('UTC','UTC','2001-' . substr($a->profile['dob'],6),'j F')))
. "</div>\r\n</div>"; . "</div>\r\n</div>";
@ -60,7 +60,7 @@ EOT;
if($a->profile['marital']) { if($a->profile['marital']) {
$o .= <<< EOT $o .= <<< EOT
<div id="advanced-profile-marital-wrapper" > <div id="advanced-profile-marital-wrapper" >
<div id="advanced-profile-marital-text"><span class="heart">&hearts;</span> Status:</div> <div id="advanced-profile-marital-text"><span class="heart">&hearts;</span> Statut:</div>
<div id="advanced-profile-marital">{$a->profile['marital']}</div> <div id="advanced-profile-marital">{$a->profile['marital']}</div>
EOT; EOT;
@ -75,7 +75,7 @@ EOT;
if($a->profile['sexual']) { if($a->profile['sexual']) {
$o .= <<< EOT $o .= <<< EOT
<div id="advanced-profile-sexual-wrapper" > <div id="advanced-profile-sexual-wrapper" >
<div id="advanced-profile-sexual-text">Sexual Preference:</div> <div id="advanced-profile-sexual-text">Attirances sexuelles:</div>
<div id="advanced-profile-sexual">{$a->profile['sexual']}</div> <div id="advanced-profile-sexual">{$a->profile['sexual']}</div>
</div> </div>
<div id="advanced-profile-sexual-end"></div> <div id="advanced-profile-sexual-end"></div>
@ -86,7 +86,7 @@ if($a->profile['homepage']) {
$homepage = linkify($a->profile['homepage']); $homepage = linkify($a->profile['homepage']);
$o .= <<< EOT $o .= <<< EOT
<div id="advanced-profile-homepage-wrapper" > <div id="advanced-profile-homepage-wrapper" >
<div id="advanced-profile-homepage-text">Homepage:</div> <div id="advanced-profile-homepage-text">Site web:</div>
<div id="advanced-profile-homepage">$homepage</div> <div id="advanced-profile-homepage">$homepage</div>
</div> </div>
<div id="advanced-profile-homepage-end"></div> <div id="advanced-profile-homepage-end"></div>
@ -96,7 +96,7 @@ EOT;
if($a->profile['politic']) { if($a->profile['politic']) {
$o .= <<< EOT $o .= <<< EOT
<div id="advanced-profile-politic-wrapper" > <div id="advanced-profile-politic-wrapper" >
<div id="advanced-profile-politic-text">Political Views:</div> <div id="advanced-profile-politic-text">Opinions politiques:</div>
<div id="advanced-profile-politic">{$a->profile['politic']}</div> <div id="advanced-profile-politic">{$a->profile['politic']}</div>
</div> </div>
<div id="advanced-profile-politic-end"></div> <div id="advanced-profile-politic-end"></div>
@ -116,7 +116,7 @@ EOT;
if($txt = prepare_text($a->profile['about'])) { if($txt = prepare_text($a->profile['about'])) {
$o .= <<< EOT $o .= <<< EOT
<div id="advanced-profile-about-wrapper" > <div id="advanced-profile-about-wrapper" >
<div id="advanced-profile-about-text">About:</div> <div id="advanced-profile-about-text">À propos:</div>
<br /> <br />
<div id="advanced-profile-about">$txt</div> <div id="advanced-profile-about">$txt</div>
</div> </div>
@ -127,7 +127,7 @@ EOT;
if($txt = prepare_text($a->profile['interest'])) { if($txt = prepare_text($a->profile['interest'])) {
$o .= <<< EOT $o .= <<< EOT
<div id="advanced-profile-interest-wrapper" > <div id="advanced-profile-interest-wrapper" >
<div id="advanced-profile-interest-text">Hobbies/Interests:</div> <div id="advanced-profile-interest-text">Marottes/Centres d'intérêt:</div>
<br /> <br />
<div id="advanced-profile-interest">$txt</div> <div id="advanced-profile-interest">$txt</div>
</div> </div>
@ -138,7 +138,7 @@ EOT;
if($txt = prepare_text($a->profile['contact'])) { if($txt = prepare_text($a->profile['contact'])) {
$o .= <<< EOT $o .= <<< EOT
<div id="advanced-profile-contact-wrapper" > <div id="advanced-profile-contact-wrapper" >
<div id="advanced-profile-contact-text">Contact information and Social Networks:</div> <div id="advanced-profile-contact-text">Coordonées et réseaux sociaux:</div>
<br /> <br />
<div id="advanced-profile-contact">$txt</div> <div id="advanced-profile-contact">$txt</div>
</div> </div>
@ -149,7 +149,7 @@ EOT;
if($txt = prepare_text($a->profile['music'])) { if($txt = prepare_text($a->profile['music'])) {
$o .= <<< EOT $o .= <<< EOT
<div id="advanced-profile-music-wrapper" > <div id="advanced-profile-music-wrapper" >
<div id="advanced-profile-music-text">Musical interests:</div> <div id="advanced-profile-music-text">Goûts musicaux:</div>
<br /> <br />
<div id="advanced-profile-music">$txt</div> <div id="advanced-profile-music">$txt</div>
</div> </div>
@ -160,7 +160,7 @@ EOT;
if($txt = prepare_text($a->profile['book'])) { if($txt = prepare_text($a->profile['book'])) {
$o .= <<< EOT $o .= <<< EOT
<div id="advanced-profile-book-wrapper" > <div id="advanced-profile-book-wrapper" >
<div id="advanced-profile-book-text">Books, literature:</div> <div id="advanced-profile-book-text">Livres, littérature:</div>
<br /> <br />
<div id="advanced-profile-book">$txt</div> <div id="advanced-profile-book">$txt</div>
</div> </div>
@ -171,7 +171,7 @@ EOT;
if($txt = prepare_text($a->profile['tv'])) { if($txt = prepare_text($a->profile['tv'])) {
$o .= <<< EOT $o .= <<< EOT
<div id="advanced-profile-tv-wrapper" > <div id="advanced-profile-tv-wrapper" >
<div id="advanced-profile-tv-text">Television:</div> <div id="advanced-profile-tv-text">Télévision:</div>
<br /> <br />
<div id="advanced-profile-tv">$txt</div> <div id="advanced-profile-tv">$txt</div>
</div> </div>
@ -182,7 +182,7 @@ EOT;
if($txt = prepare_text($a->profile['film'])) { if($txt = prepare_text($a->profile['film'])) {
$o .= <<< EOT $o .= <<< EOT
<div id="advanced-profile-film-wrapper" > <div id="advanced-profile-film-wrapper" >
<div id="advanced-profile-film-text">Film/dance/culture/entertainment:</div> <div id="advanced-profile-film-text">Cinéma/Danse/Culture/Divertissement:</div>
<br /> <br />
<div id="advanced-profile-film">$txt</div> <div id="advanced-profile-film">$txt</div>
</div> </div>
@ -193,7 +193,7 @@ EOT;
if($txt = prepare_text($a->profile['romance'])) { if($txt = prepare_text($a->profile['romance'])) {
$o .= <<< EOT $o .= <<< EOT
<div id="advanced-profile-romance-wrapper" > <div id="advanced-profile-romance-wrapper" >
<div id="advanced-profile-romance-text">Love/romance:</div> <div id="advanced-profile-romance-text">Amour/Passion:</div>
<br /> <br />
<div id="advanced-profile-romance">$txt</div> <div id="advanced-profile-romance">$txt</div>
</div> </div>
@ -204,7 +204,7 @@ EOT;
if($txt = prepare_text($a->profile['work'])) { if($txt = prepare_text($a->profile['work'])) {
$o .= <<< EOT $o .= <<< EOT
<div id="advanced-profile-work-wrapper" > <div id="advanced-profile-work-wrapper" >
<div id="advanced-profile-work-text">Work/employment:</div> <div id="advanced-profile-work-text">Travail/Activité professionnelle:</div>
<br /> <br />
<div id="advanced-profile-work">$txt</div> <div id="advanced-profile-work">$txt</div>
</div> </div>
@ -215,7 +215,7 @@ EOT;
if($txt = prepare_text($a->profile['education'])) { if($txt = prepare_text($a->profile['education'])) {
$o .= <<< EOT $o .= <<< EOT
<div id="advanced-profile-education-wrapper" > <div id="advanced-profile-education-wrapper" >
<div id="advanced-profile-education-text">School/education:</div> <div id="advanced-profile-education-text">École/études:</div>
<br /> <br />
<div id="advanced-profile-education">$txt</div> <div id="advanced-profile-education">$txt</div>
</div> </div>

View File

@ -1,11 +1,11 @@
<h1>Edit Profile Details</h1> <h1>Éditer les détails du profil</h1>
<div id="profile-edit-links"> <div id="profile-edit-links">
<ul> <ul>
<li><a href="profile/$profile_id/view?tab=profile" id="profile-edit-view-link" title="View this profile">View this profile</a></li> <li><a href="profile/$profile_id/view?tab=profile" id="profile-edit-view-link" title="Voir ce profil">Voir ce profil</a></li>
<li><a href="profiles/clone/$profile_id" id="profile-edit-clone-link" title="Create a new profile using these settings">Clone this profile</a></li> <li><a href="profiles/clone/$profile_id" id="profile-edit-clone-link" title="Créer un nouveau profil en utilisant les réglages de celui-ci">Cloner ce profil</a></li>
<li></li> <li></li>
<li><a href="profiles/drop/$profile_id" id="profile-edit-drop-link" title="Delete this profile" $disabled >Delete this profile</a></li> <li><a href="profiles/drop/$profile_id" id="profile-edit-drop-link" title="Supprimer ce profil" $disabled >Supprimer ce profil</a></li>
</ul> </ul>
</div> </div>
@ -18,32 +18,32 @@ $default
<form id="profile-edit-form" name="form1" action="profiles/$profile_id" method="post" > <form id="profile-edit-form" name="form1" action="profiles/$profile_id" method="post" >
<div id="profile-edit-profile-name-wrapper" > <div id="profile-edit-profile-name-wrapper" >
<label id="profile-edit-profile-name-label" for="profile-edit-profile-name" >Profile Name: </label> <label id="profile-edit-profile-name-label" for="profile-edit-profile-name" >Nom du profil: </label>
<input type="text" size="32" name="profile_name" id="profile-edit-profile-name" value="$profile_name" /><div class="required">*</div> <input type="text" size="32" name="profile_name" id="profile-edit-profile-name" value="$profile_name" /><div class="required">*</div>
</div> </div>
<div id="profile-edit-profile-name-end"></div> <div id="profile-edit-profile-name-end"></div>
<div id="profile-edit-name-wrapper" > <div id="profile-edit-name-wrapper" >
<label id="profile-edit-name-label" for="profile-edit-name" >Your Full Name: </label> <label id="profile-edit-name-label" for="profile-edit-name" >Votre nom complet: </label>
<input type="text" size="32" name="name" id="profile-edit-name" value="$name" /> <input type="text" size="32" name="name" id="profile-edit-name" value="$name" />
</div> </div>
<div id="profile-edit-name-end"></div> <div id="profile-edit-name-end"></div>
<div id="profile-edit-pdesc-wrapper" > <div id="profile-edit-pdesc-wrapper" >
<label id="profile-edit-pdesc-label" for="profile-edit-pdesc" >Title/Description: </label> <label id="profile-edit-pdesc-label" for="profile-edit-pdesc" >Titre/descriptif: </label>
<input type="text" size="32" name="pdesc" id="profile-edit-pdesc" value="$pdesc" /> <input type="text" size="32" name="pdesc" id="profile-edit-pdesc" value="$pdesc" />
</div> </div>
<div id="profile-edit-pdesc-end"></div> <div id="profile-edit-pdesc-end"></div>
<div id="profile-edit-gender-wrapper" > <div id="profile-edit-gender-wrapper" >
<label id="profile-edit-gender-label" for="gender-select" >Your Gender: </label> <label id="profile-edit-gender-label" for="gender-select" >Votre genre: </label>
$gender $gender
</div> </div>
<div id="profile-edit-gender-end"></div> <div id="profile-edit-gender-end"></div>
<div id="profile-edit-dob-wrapper" > <div id="profile-edit-dob-wrapper" >
<label id="profile-edit-dob-label" for="dob-select" >Birthday (y/m/d): </label> <label id="profile-edit-dob-label" for="dob-select" >Votre anniversaire (j/m/a): </label>
<div id="profile-edit-dob" > <div id="profile-edit-dob" >
$dob $age $dob $age
</div> </div>
@ -53,32 +53,32 @@ $dob $age
$hide_friends $hide_friends
<div class="profile-edit-submit-wrapper" > <div class="profile-edit-submit-wrapper" >
<input type="submit" name="submit" class="profile-edit-submit-button" value="Submit" /> <input type="submit" name="submit" class="profile-edit-submit-button" value="Soumettre" />
</div> </div>
<div class="profile-edit-submit-end"></div> <div class="profile-edit-submit-end"></div>
<div id="profile-edit-address-wrapper" > <div id="profile-edit-address-wrapper" >
<label id="profile-edit-address-label" for="profile-edit-address" >Street Address: </label> <label id="profile-edit-address-label" for="profile-edit-address" >Adresse postale: </label>
<input type="text" size="32" name="address" id="profile-edit-address" value="$address" /> <input type="text" size="32" name="address" id="profile-edit-address" value="$address" />
</div> </div>
<div id="profile-edit-address-end"></div> <div id="profile-edit-address-end"></div>
<div id="profile-edit-locality-wrapper" > <div id="profile-edit-locality-wrapper" >
<label id="profile-edit-locality-label" for="profile-edit-locality" >Locality/City: </label> <label id="profile-edit-locality-label" for="profile-edit-locality" >Localité/Ville: </label>
<input type="text" size="32" name="locality" id="profile-edit-locality" value="$locality" /> <input type="text" size="32" name="locality" id="profile-edit-locality" value="$locality" />
</div> </div>
<div id="profile-edit-locality-end"></div> <div id="profile-edit-locality-end"></div>
<div id="profile-edit-postal-code-wrapper" > <div id="profile-edit-postal-code-wrapper" >
<label id="profile-edit-postal-code-label" for="profile-edit-postal-code" >Postal/Zip Code: </label> <label id="profile-edit-postal-code-label" for="profile-edit-postal-code" >Code postal: </label>
<input type="text" size="32" name="postal_code" id="profile-edit-postal-code" value="$postal_code" /> <input type="text" size="32" name="postal_code" id="profile-edit-postal-code" value="$postal_code" />
</div> </div>
<div id="profile-edit-postal-code-end"></div> <div id="profile-edit-postal-code-end"></div>
<div id="profile-edit-country-name-wrapper" > <div id="profile-edit-country-name-wrapper" >
<label id="profile-edit-country-name-label" for="profile-edit-country-name" >Country: </label> <label id="profile-edit-country-name-label" for="profile-edit-country-name" >Pays: </label>
<select name="country_name" id="profile-edit-country-name" onChange="Fill_States('$region');"> <select name="country_name" id="profile-edit-country-name" onChange="Fill_States('$region');">
<option selected="selected" >$country_name</option> <option selected="selected" >$country_name</option>
<option>temp</option> <option>temp</option>
@ -87,7 +87,7 @@ $hide_friends
<div id="profile-edit-country-name-end"></div> <div id="profile-edit-country-name-end"></div>
<div id="profile-edit-region-wrapper" > <div id="profile-edit-region-wrapper" >
<label id="profile-edit-region-label" for="profile-edit-region" >Region/State: </label> <label id="profile-edit-region-label" for="profile-edit-region" >Région/état: </label>
<select name="region" id="profile-edit-region" onChange="Update_Globals();" > <select name="region" id="profile-edit-region" onChange="Update_Globals();" >
<option selected="selected" >$region</option> <option selected="selected" >$region</option>
<option>temp</option> <option>temp</option>
@ -96,20 +96,20 @@ $hide_friends
<div id="profile-edit-region-end"></div> <div id="profile-edit-region-end"></div>
<div class="profile-edit-submit-wrapper" > <div class="profile-edit-submit-wrapper" >
<input type="submit" name="submit" class="profile-edit-submit-button" value="Submit" /> <input type="submit" name="submit" class="profile-edit-submit-button" value="Soumettre" />
</div> </div>
<div class="profile-edit-submit-end"></div> <div class="profile-edit-submit-end"></div>
<div id="profile-edit-marital-wrapper" > <div id="profile-edit-marital-wrapper" >
<label id="profile-edit-marital-label" for="profile-edit-marital" ><span class="heart">&hearts;</span> (Marital) Status: </label> <label id="profile-edit-marital-label" for="profile-edit-marital" ><span class="heart">&hearts;</span>Statut (marital): </label>
$marital $marital
</div> </div>
<label id="profile-edit-with-label" for="profile-edit-with" > Who: (if applicable) </label> <label id="profile-edit-with-label" for="profile-edit-with" > Qui: (si pertinent) </label>
<input type="text" size="32" name="with" id="profile-edit-with" value="$with" /> <input type="text" size="32" name="with" id="profile-edit-with" value="$with" />
<div id="profile-edit-marital-end"></div> <div id="profile-edit-marital-end"></div>
<div id="profile-edit-sexual-wrapper" > <div id="profile-edit-sexual-wrapper" >
<label id="profile-edit-sexual-label" for="sexual-select" >Sexual Preference: </label> <label id="profile-edit-sexual-label" for="sexual-select" >Attirance sexuelle: </label>
$sexual $sexual
</div> </div>
<div id="profile-edit-sexual-end"></div> <div id="profile-edit-sexual-end"></div>
@ -117,13 +117,13 @@ $sexual
<div id="profile-edit-homepage-wrapper" > <div id="profile-edit-homepage-wrapper" >
<label id="profile-edit-homepage-label" for="profile-edit-homepage" >Homepage URL: </label> <label id="profile-edit-homepage-label" for="profile-edit-homepage" >Site web personnel: </label>
<input type="text" size="32" name="homepage" id="profile-edit-homepage" value="$homepage" /> <input type="text" size="32" name="homepage" id="profile-edit-homepage" value="$homepage" />
</div> </div>
<div id="profile-edit-homepage-end"></div> <div id="profile-edit-homepage-end"></div>
<div id="profile-edit-politic-wrapper" > <div id="profile-edit-politic-wrapper" >
<label id="profile-edit-politic-label" for="profile-edit-politic" >Political Views: </label> <label id="profile-edit-politic-label" for="profile-edit-politic" >Opinions politiques: </label>
<input type="text" size="32" name="politic" id="profile-edit-politic" value="$politic" /> <input type="text" size="32" name="politic" id="profile-edit-politic" value="$politic" />
</div> </div>
<div id="profile-edit-politic-end"></div> <div id="profile-edit-politic-end"></div>
@ -135,26 +135,26 @@ $sexual
<div id="profile-edit-religion-end"></div> <div id="profile-edit-religion-end"></div>
<div id="profile-edit-pubkeywords-wrapper" > <div id="profile-edit-pubkeywords-wrapper" >
<label id="profile-edit-pubkeywords-label" for="profile-edit-pubkeywords" >Public Keywords: </label> <label id="profile-edit-pubkeywords-label" for="profile-edit-pubkeywords" >Mots clés publics: </label>
<input type="text" size="32" name="pub_keywords" id="profile-edit-pubkeywords" title="Example: fishing photography software" value="$pub_keywords" /> <input type="text" size="32" name="pub_keywords" id="profile-edit-pubkeywords" title="Exemple: football photographie programmation" value="$pub_keywords" />
</div><div id="profile-edit-pubkeywords-desc">(Used for suggesting potential friends, can be seen by others)</div> </div><div id="profile-edit-pubkeywords-desc">(Utilisés pour les amis potentiels, peuvent être vus)</div>
<div id="profile-edit-pubkeywords-end"></div> <div id="profile-edit-pubkeywords-end"></div>
<div id="profile-edit-prvkeywords-wrapper" > <div id="profile-edit-prvkeywords-wrapper" >
<label id="profile-edit-prvkeywords-label" for="profile-edit-prvkeywords" >Private Keywords: </label> <label id="profile-edit-prvkeywords-label" for="profile-edit-prvkeywords" >Mots clés privés: </label>
<input type="text" size="32" name="prv_keywords" id="profile-edit-prvkeywords" title="Example: fishing photography software" value="$prv_keywords" /> <input type="text" size="32" name="prv_keywords" id="profile-edit-prvkeywords" title="Exemple: football photographie programmation" value="$prv_keywords" />
</div><div id="profile-edit-prvkeywords-desc">(Used for searching profiles, never shown to others)</div> </div><div id="profile-edit-prvkeywords-desc">(Utilisés lors des recherches, ne sont jamais montrés à personne)</div>
<div id="profile-edit-prvkeywords-end"></div> <div id="profile-edit-prvkeywords-end"></div>
<div class="profile-edit-submit-wrapper" > <div class="profile-edit-submit-wrapper" >
<input type="submit" name="submit" class="profile-edit-submit-button" value="Submit" /> <input type="submit" name="submit" class="profile-edit-submit-button" value="Soumettre" />
</div> </div>
<div class="profile-edit-submit-end"></div> <div class="profile-edit-submit-end"></div>
<div id="about-jot-wrapper" > <div id="about-jot-wrapper" >
<p id="about-jot-desc" > <p id="about-jot-desc" >
Tell us about yourself... Parlez nous de vous...
</p> </p>
<textarea rows="10" cols="72" id="profile-jot-text" name="about" >$about</textarea> <textarea rows="10" cols="72" id="profile-jot-text" name="about" >$about</textarea>
@ -166,7 +166,7 @@ Tell us about yourself...
<div id="interest-jot-wrapper" > <div id="interest-jot-wrapper" >
<p id="interest-jot-desc" > <p id="interest-jot-desc" >
Hobbies/Interests Marottes/Centre d'intérêts
</p> </p>
<textarea rows="10" cols="72" id="interest-jot-text" name="interest" >$interest</textarea> <textarea rows="10" cols="72" id="interest-jot-text" name="interest" >$interest</textarea>
@ -178,7 +178,7 @@ Hobbies/Interests
<div id="contact-jot-wrapper" > <div id="contact-jot-wrapper" >
<p id="contact-jot-desc" > <p id="contact-jot-desc" >
Contact information and Social Networks Coordonnées et réseau sociaux
</p> </p>
<textarea rows="10" cols="72" id="contact-jot-text" name="contact" >$contact</textarea> <textarea rows="10" cols="72" id="contact-jot-text" name="contact" >$contact</textarea>
@ -189,14 +189,14 @@ Contact information and Social Networks
<div class="profile-edit-submit-wrapper" > <div class="profile-edit-submit-wrapper" >
<input type="submit" name="submit" class="profile-edit-submit-button" value="Submit" /> <input type="submit" name="submit" class="profile-edit-submit-button" value="Soumettre" />
</div> </div>
<div class="profile-edit-submit-end"></div> <div class="profile-edit-submit-end"></div>
<div id="music-jot-wrapper" > <div id="music-jot-wrapper" >
<p id="music-jot-desc" > <p id="music-jot-desc" >
Musical interests Goûts musicaux
</p> </p>
<textarea rows="10" cols="72" id="music-jot-text" name="music" >$music</textarea> <textarea rows="10" cols="72" id="music-jot-text" name="music" >$music</textarea>
@ -207,7 +207,7 @@ Musical interests
<div id="book-jot-wrapper" > <div id="book-jot-wrapper" >
<p id="book-jot-desc" > <p id="book-jot-desc" >
Books, literature Livres, littérature
</p> </p>
<textarea rows="10" cols="72" id="book-jot-text" name="book" >$book</textarea> <textarea rows="10" cols="72" id="book-jot-text" name="book" >$book</textarea>
@ -220,7 +220,7 @@ Books, literature
<div id="tv-jot-wrapper" > <div id="tv-jot-wrapper" >
<p id="tv-jot-desc" > <p id="tv-jot-desc" >
Television Télévision
</p> </p>
<textarea rows="10" cols="72" id="tv-jot-text" name="tv" >$tv</textarea> <textarea rows="10" cols="72" id="tv-jot-text" name="tv" >$tv</textarea>
@ -233,7 +233,7 @@ Television
<div id="film-jot-wrapper" > <div id="film-jot-wrapper" >
<p id="film-jot-desc" > <p id="film-jot-desc" >
Film/dance/culture/entertainment Cinéma/Danse/Culture/Divertissement
</p> </p>
<textarea rows="10" cols="72" id="film-jot-text" name="film" >$film</textarea> <textarea rows="10" cols="72" id="film-jot-text" name="film" >$film</textarea>
@ -244,14 +244,14 @@ Film/dance/culture/entertainment
<div class="profile-edit-submit-wrapper" > <div class="profile-edit-submit-wrapper" >
<input type="submit" name="submit" class="profile-edit-submit-button" value="Submit" /> <input type="submit" name="submit" class="profile-edit-submit-button" value="Soumettre" />
</div> </div>
<div class="profile-edit-submit-end"></div> <div class="profile-edit-submit-end"></div>
<div id="romance-jot-wrapper" > <div id="romance-jot-wrapper" >
<p id="romance-jot-desc" > <p id="romance-jot-desc" >
Love/romance Amour/Passion
</p> </p>
<textarea rows="10" cols="72" id="romance-jot-text" name="romance" >$romance</textarea> <textarea rows="10" cols="72" id="romance-jot-text" name="romance" >$romance</textarea>
@ -264,7 +264,7 @@ Love/romance
<div id="work-jot-wrapper" > <div id="work-jot-wrapper" >
<p id="work-jot-desc" > <p id="work-jot-desc" >
Work/employment Travail/activité professionnelle
</p> </p>
<textarea rows="10" cols="72" id="work-jot-text" name="work" >$work</textarea> <textarea rows="10" cols="72" id="work-jot-text" name="work" >$work</textarea>
@ -277,7 +277,7 @@ Work/employment
<div id="education-jot-wrapper" > <div id="education-jot-wrapper" >
<p id="education-jot-desc" > <p id="education-jot-desc" >
School/education École/études
</p> </p>
<textarea rows="10" cols="72" id="education-jot-text" name="education" >$education</textarea> <textarea rows="10" cols="72" id="education-jot-text" name="education" >$education</textarea>
@ -289,11 +289,11 @@ School/education
<div class="profile-edit-submit-wrapper" > <div class="profile-edit-submit-wrapper" >
<input type="submit" name="submit" class="profile-edit-submit-button" value="Submit" /> <input type="submit" name="submit" class="profile-edit-submit-button" value="Soumettre" />
</div> </div>
<div class="profile-edit-submit-end"></div> <div class="profile-edit-submit-end"></div>
</form> </form>
</div> </div>
<script type="text/javascript">Fill_Country('$country_name');Fill_States('$region');</script> <script type="text/javascript">Fill_Country('$country_name');Fill_States('$region');</script>

View File

@ -1,7 +0,0 @@
<div id="profile-tabs-wrapper" >
<a href="$url" id="profile-tab-status-link" class="profile-tabs" >Status</a>
<a href="$url?tab=profile" id="profile-tab-profile-link" class="profile-tabs" >Profile</a>
<a href="$phototab" id="profile-tab-photos-link" class="profile-tabs" >Photos</a>
<div id="profile-tabs-end"></div>
</div>

View File

@ -89,6 +89,13 @@ $profile_in_net_dir
</div> </div>
<div id="settings-default-perms-end"></div> <div id="settings-default-perms-end"></div>
<div id="settings-blockw-wrapper" >
<label id="settings-blockw-label" for="settings-blockw" >Allow friends to post to your profile: </label>
<input type="checkbox" name="blockwall" id="settings-blockw" value="1" $blockw_checked />
</div>
<div id="settings-blockw-end" ></div>
<div id="settings-expire-desc">Automatically expire (delete) posts older than <input type="text" size="3" name="expire" value="$expire" /> days</div> <div id="settings-expire-desc">Automatically expire (delete) posts older than <input type="text" size="3" name="expire" value="$expire" /> days</div>
<div id="settings-expire-end"></div> <div id="settings-expire-end"></div>

File diff suppressed because it is too large Load Diff

View File

@ -1,6 +0,0 @@
<div id="profile-edit-insecure">
<p>
Il social network a cui $name appartiene &egrave; una rete aperta con limitati o non esistenti controlli di privacy.
Usa la necessaria discrezione.
</p>
</div>

View File

@ -1,165 +0,0 @@
<script language="javascript" type="text/javascript" src="$baseurl/tinymce/jscripts/tiny_mce/tiny_mce_src.js"></script>
<script language="javascript" type="text/javascript">
var editor;
tinyMCE.init({
theme : "advanced",
mode : "specific_textareas",
editor_selector: /(profile-jot-text|prvmail-text)/,
plugins : "bbcode,paste",
theme_advanced_buttons1 : "bold,italic,underline,undo,redo,link,unlink,image,forecolor,formatselect,code",
theme_advanced_buttons2 : "",
theme_advanced_buttons3 : "",
theme_advanced_toolbar_location : "top",
theme_advanced_toolbar_align : "center",
theme_advanced_blockformats : "blockquote,code",
paste_text_sticky : true,
entity_encoding : "raw",
add_unload_trigger : false,
remove_linebreaks : false,
force_p_newlines : false,
force_br_newlines : true,
forced_root_block : '',
convert_urls: false,
content_css: "$baseurl/view/custom_tinymce.css",
//Character count
theme_advanced_path : false,
setup : function(ed) {
ed.onKeyUp.add(function(ed, e) {
var txt = tinyMCE.activeEditor.getContent();
var text = txt.length;
if(txt.length <= 140) {
$('#character-counter').removeClass('red');
$('#character-counter').removeClass('orange');
$('#character-counter').addClass('grey');
}
if((txt.length > 140) && (txt .length <= 420)) {
$('#character-counter').removeClass('grey');
$('#character-counter').removeClass('red');
$('#character-counter').addClass('orange');
}
if(txt.length > 420) {
$('#character-counter').removeClass('grey');
$('#character-counter').removeClass('orange');
$('#character-counter').addClass('red');
}
$('#character-counter').text(text);
});
ed.onInit.add(function(ed) {
ed.pasteAsPlainText = true;
});
}
});
</script>
<script type="text/javascript" src="include/ajaxupload.js" ></script>
<script>
$(document).ready(function() {
var uploader = new window.AjaxUpload(
'wall-image-upload',
{ action: 'wall_upload/$nickname',
name: 'userfile',
onSubmit: function(file,ext) { $('#profile-rotator').show(); },
onComplete: function(file,response) {
tinyMCE.execCommand('mceInsertRawHTML',false,response);
$('#profile-rotator').hide();
}
}
);
$('#contact_allow, #contact_deny, #group_allow, #group_deny').change(function() {
var selstr;
$('#contact_allow option:selected, #contact_deny option:selected, #group_allow option:selected, #group_deny option:selected').each( function() {
selstr = $(this).text();
$('#profile-jot-perms img').attr('src', 'images/lock_icon.gif');
$('.profile-jot-net input').attr('disabled', 'disabled');
});
if(selstr == null) {
$('#profile-jot-perms img').attr('src', 'images/unlock_icon.gif');
$('.profile-jot-net input').attr('disabled', false);
}
}).trigger('change');
});
function jotGetLink() {
reply = prompt("Inserisci l'indirizzo del collegamento:");
if(reply && reply.length) {
$('#profile-rotator').show();
$.get('parse_url?url=' + reply, function(data) {
tinyMCE.execCommand('mceInsertRawHTML',false,data);
$('#profile-rotator').hide();
});
}
}
function jotGetVideo() {
reply = prompt("Inserisci un collegamento a YouTube:");
if(reply && reply.length) {
tinyMCE.execCommand('mceInsertRawHTML',false,'[youtube]' + reply + '[/youtube]');
}
}
function jotVideoURL() {
reply = prompt("Please enter a video(.ogg) link/URL:");
if(reply && reply.length) {
tinyMCE.execCommand('mceInsertRawHTML',false,'[video]' + reply + '[/video]');
}
}
function jotAudioURL() {
reply = prompt("Please enter an audio(.ogg) link/URL:");
if(reply && reply.length) {
tinyMCE.execCommand('mceInsertRawHTML',false,'[audio]' + reply + '[/audio]');
}
}
function jotGetLocation() {
reply = prompt("Dove ti trovi ora?", $('#jot-location').val());
if(reply && reply.length) {
$('#jot-location').val(reply);
}
}
function jotShare(id) {
$('#like-rotator-' + id).show();
$.get('share/' + id, function(data) {
tinyMCE.execCommand('mceInsertRawHTML',false,data);
$('#like-rotator-' + id).hide();
$(window).scrollTop(0);
});
}
function linkdropper(event) {
var linkFound = event.dataTransfer.types.contains("text/uri-list");
if(linkFound)
event.preventDefault();
}
function linkdrop(event) {
var reply = event.dataTransfer.getData("text/uri-list");
event.target.textContent = reply;
event.preventDefault();
if(reply && reply.length) {
$('#profile-rotator').show();
$.get('parse_url?url=' + reply, function(data) {
tinyMCE.execCommand('mceInsertRawHTML',false,data);
$('#profile-rotator').hide();
});
}
}
function jotClearLocation() {
$('#jot-coord').val('');
$('#profile-nolocation-wrapper').hide();
}
$geotag
</script>

View File

@ -1,104 +0,0 @@
<script language="javascript" type="text/javascript" src="$baseurl/tinymce/jscripts/tiny_mce/tiny_mce_src.js"></script>
<script language="javascript" type="text/javascript">
tinyMCE.init({
theme : "advanced",
mode : "specific_textareas",
editor_selector: /(profile-jot-text|prvmail-text)/,
plugins : "bbcode,paste",
theme_advanced_buttons1 : "bold,italic,underline,undo,redo,link,unlink,image,forecolor",
theme_advanced_buttons2 : "",
theme_advanced_buttons3 : "",
theme_advanced_toolbar_location : "top",
theme_advanced_toolbar_align : "center",
theme_advanced_blockformats : "blockquote,code",
paste_text_sticky : true,
entity_encoding : "raw",
add_unload_trigger : false,
remove_linebreaks : false,
force_p_newlines : false,
force_br_newlines : true,
forced_root_block : '',
convert_urls: false,
content_css: "$baseurl/view/custom_tinymce.css",
//Character count
theme_advanced_path : false,
setup : function(ed) {
ed.onKeyUp.add(function(ed, e) {
var txt = tinyMCE.activeEditor.getContent();
var text = txt.length;
if(txt.length <= 140) {
$('#character-counter').removeClass('red');
$('#character-counter').removeClass('orange');
$('#character-counter').addClass('grey');
}
if((txt.length > 140) && (txt .length <= 420)) {
$('#character-counter').removeClass('grey');
$('#character-counter').removeClass('red');
$('#character-counter').addClass('orange');
}
if(txt.length > 420) {
$('#character-counter').removeClass('grey');
$('#character-counter').removeClass('orange');
$('#character-counter').addClass('red');
}
$('#character-counter').text(text);
});
ed.onInit.add(function(ed) {
ed.pasteAsPlainText = true;
});
}
});
</script>
<script type="text/javascript" src="include/ajaxupload.js" ></script>
<script>
$(document).ready(function() {
var uploader = new window.AjaxUpload(
'prvmail-upload',
{ action: 'wall_upload/$nickname',
name: 'userfile',
onSubmit: function(file,ext) { $('#profile-rotator').show(); },
onComplete: function(file,response) {
tinyMCE.execCommand('mceInsertRawHTML',false,response);
$('#profile-rotator').hide();
}
}
);
});
function jotGetLink() {
reply = prompt("Inserisci l'indirizzo del collegamento:");
if(reply && reply.length) {
$('#profile-rotator').show();
$.get('parse_url?url=' + reply, function(data) {
tinyMCE.execCommand('mceInsertRawHTML',false,data);
$('#profile-rotator').hide();
});
}
}
function linkdropper(event) {
var linkFound = event.dataTransfer.types.contains("text/uri-list");
if(linkFound)
event.preventDefault();
}
function linkdrop(event) {
var reply = event.dataTransfer.getData("text/uri-list");
event.target.textContent = reply;
event.preventDefault();
if(reply && reply.length) {
$('#profile-rotator').show();
$.get('parse_url?url=' + reply, function(data) {
tinyMCE.execCommand('mceInsertRawHTML',false,data);
$('#profile-rotator').hide();
});
}
}
</script>

View File

@ -90,6 +90,13 @@ $profile_in_net_dir
</div> </div>
<div id="settings-default-perms-end"></div> <div id="settings-default-perms-end"></div>
<div id="settings-blockw-wrapper" >
<label id="settings-blockw-label" for="settings-blockw" >Allow friends to post to your profile: </label>
<input type="checkbox" name="blockwall" id="settings-blockw" value="1" $blockw_checked />
</div>
<div id="settings-blockw-end" ></div>
<div id="settings-expire-desc">Automatically expire (delete) posts older than <input type="text" size="3" name="expire" value="$expire" /> days</div> <div id="settings-expire-desc">Automatically expire (delete) posts older than <input type="text" size="3" name="expire" value="$expire" /> days</div>
<div id="settings-expire-end"></div> <div id="settings-expire-end"></div>

View File

@ -165,6 +165,9 @@ $a->strings["Example: @bob, @Barbara_Jensen, @jim@example.com, #California, #cam
$a->strings["Recent Photos"] = "Foto recenti"; $a->strings["Recent Photos"] = "Foto recenti";
$a->strings["Upload New Photos"] = "Carica nuova foto"; $a->strings["Upload New Photos"] = "Carica nuova foto";
$a->strings["View Album"] = "Vedi album"; $a->strings["View Album"] = "Vedi album";
$a->strings['Status'] = 'Stato';
$a->strings['Profile'] = 'Profilo';
$a->strings['Photos'] = 'Foto';
$a->strings["Item not found."] = "Elemento non trovato."; $a->strings["Item not found."] = "Elemento non trovato.";
$a->strings["View \$owner_name's profile"] = "Guarda il profilo di \$owner_name"; $a->strings["View \$owner_name's profile"] = "Guarda il profilo di \$owner_name";
$a->strings["to"] = "a"; $a->strings["to"] = "a";
@ -284,6 +287,11 @@ $a->strings["The database configuration file \".htconfig.php\" could not be writ
$a->strings["Errors encountered creating database tables."] = "Errori creando le tabelle nel database."; $a->strings["Errors encountered creating database tables."] = "Errori creando le tabelle nel database.";
$a->strings["Normal View"] = "Vista normale"; $a->strings["Normal View"] = "Vista normale";
$a->strings["New Item View"] = "Vista Nuovi Elementi"; $a->strings["New Item View"] = "Vista Nuovi Elementi";
$a->strings['Please enter a link URL:'] = 'Inserisci l\'indirizzo del collegamento:';
$a->strings['Please enter a YouTube link:'] = 'Inserisci un collegamento a YouTube:';
$a->strings["Please enter a video\x28.ogg\x29 link/URL:"] = "Please enter a video\x28.ogg\x29 link/URL:";
$a->strings["Please enter an audio\x28.ogg\x29 link/URL:"] = "Please enter an audio\x28.ogg\x29 link/URL:";
$a->strings['Where are you right now?'] = 'Dove ti trovi ora?';
$a->strings["No such group"] = "Nessun gruppo"; $a->strings["No such group"] = "Nessun gruppo";
$a->strings["Group is empty"] = "Il gruppo è vuoto"; $a->strings["Group is empty"] = "Il gruppo è vuoto";
$a->strings["Group: "] = "Gruppo: "; $a->strings["Group: "] = "Gruppo: ";

View File

@ -24,9 +24,9 @@ tinyMCE.init({
forced_root_block : '', forced_root_block : '',
convert_urls: false, convert_urls: false,
content_css: "$baseurl/view/custom_tinymce.css", content_css: "$baseurl/view/custom_tinymce.css",
//Character count
theme_advanced_path : false, theme_advanced_path : false,
setup : function(ed) { setup : function(ed) {
//Character count
ed.onKeyUp.add(function(ed, e) { ed.onKeyUp.add(function(ed, e) {
var txt = tinyMCE.activeEditor.getContent(); var txt = tinyMCE.activeEditor.getContent();
var text = txt.length; var text = txt.length;
@ -87,7 +87,7 @@ tinyMCE.init({
}); });
function jotGetLink() { function jotGetLink() {
reply = prompt("Please enter a link URL:"); reply = prompt("$linkurl");
if(reply && reply.length) { if(reply && reply.length) {
$('#profile-rotator').show(); $('#profile-rotator').show();
$.get('parse_url?url=' + reply, function(data) { $.get('parse_url?url=' + reply, function(data) {
@ -98,21 +98,21 @@ tinyMCE.init({
} }
function jotGetVideo() { function jotGetVideo() {
reply = prompt("Please enter a YouTube link:"); reply = prompt("$utubeurl");
if(reply && reply.length) { if(reply && reply.length) {
tinyMCE.execCommand('mceInsertRawHTML',false,'[youtube]' + reply + '[/youtube]'); tinyMCE.execCommand('mceInsertRawHTML',false,'[youtube]' + reply + '[/youtube]');
} }
} }
function jotVideoURL() { function jotVideoURL() {
reply = prompt("Please enter a video(.ogg) link/URL:"); reply = prompt("$vidurl");
if(reply && reply.length) { if(reply && reply.length) {
tinyMCE.execCommand('mceInsertRawHTML',false,'[video]' + reply + '[/video]'); tinyMCE.execCommand('mceInsertRawHTML',false,'[video]' + reply + '[/video]');
} }
} }
function jotAudioURL() { function jotAudioURL() {
reply = prompt("Please enter an audio(.ogg) link/URL:"); reply = prompt("$audurl");
if(reply && reply.length) { if(reply && reply.length) {
tinyMCE.execCommand('mceInsertRawHTML',false,'[audio]' + reply + '[/audio]'); tinyMCE.execCommand('mceInsertRawHTML',false,'[audio]' + reply + '[/audio]');
} }
@ -120,7 +120,7 @@ tinyMCE.init({
function jotGetLocation() { function jotGetLocation() {
reply = prompt("Where are you right now?", $('#jot-location').val()); reply = prompt("$whereareu", $('#jot-location').val());
if(reply && reply.length) { if(reply && reply.length) {
$('#jot-location').val(reply); $('#jot-location').val(reply);
} }

View File

@ -71,7 +71,7 @@ tinyMCE.init({
}); });
function jotGetLink() { function jotGetLink() {
reply = prompt("Please enter a link URL:"); reply = prompt("$linkurl");
if(reply && reply.length) { if(reply && reply.length) {
$('#profile-rotator').show(); $('#profile-rotator').show();
$.get('parse_url?url=' + reply, function(data) { $.get('parse_url?url=' + reply, function(data) {

View File

@ -6,22 +6,27 @@
tinyMCE.init({ tinyMCE.init({
theme : "advanced", theme : "advanced",
mode : "textareas", mode : "textareas",
plugins : "bbcode", plugins : "bbcode,paste",
theme_advanced_buttons1 : "bold,italic,underline,undo,redo,link,unlink,image,forecolor", theme_advanced_buttons1 : "bold,italic,underline,undo,redo,link,unlink,image,forecolor,formatselect,code",
theme_advanced_buttons2 : "", theme_advanced_buttons2 : "",
theme_advanced_buttons3 : "", theme_advanced_buttons3 : "",
theme_advanced_toolbar_location : "top", theme_advanced_toolbar_location : "top",
theme_advanced_toolbar_align : "center", theme_advanced_toolbar_align : "center",
theme_advanced_styles : "Code=codeStyle;Quote=quoteStyle", theme_advanced_blockformats : "blockquote,code",
content_css : "bbcode.css", paste_text_sticky : true,
entity_encoding : "raw", entity_encoding : "raw",
add_unload_trigger : false, add_unload_trigger : false,
remove_linebreaks : false, remove_linebreaks : false,
force_p_newlines : false, force_p_newlines : false,
force_br_newlines : true, force_br_newlines : true,
forced_root_block : '', forced_root_block : '',
content_css: "$baseurl/view/custom_tinymce.css" content_css: "$baseurl/view/custom_tinymce.css",
theme_advanced_path : false,
setup : function(ed) {
ed.onInit.add(function(ed) {
ed.pasteAsPlainText = true;
});
}
}); });

View File

@ -1,7 +1,7 @@
<div id="profile-tabs-wrapper" > <div id="profile-tabs-wrapper" >
<a href="$url" id="profile-tab-status-link" class="profile-tabs" >Stato</a> <a href="$url" id="profile-tab-status-link" class="profile-tabs" >$status</a>
<a href="$url?tab=profile" id="profile-tab-profile-link" class="profile-tabs" >Profilo</a> <a href="$url?tab=profile" id="profile-tab-profile-link" class="profile-tabs" >$profile</a>
<a href="$phototab" id="profile-tab-photos-link" class="profile-tabs" >Foto</a> <a href="$phototab" id="profile-tab-photos-link" class="profile-tabs" >$photos</a>
<div id="profile-tabs-end"></div> <div id="profile-tabs-end"></div>
</div> </div>

View File

@ -1,6 +0,0 @@
<div id="profile-edit-insecure">
<p>
The social network that $name belongs to is an open network with limited or non-existent privacy controls.
Please use appropriate discretion.
</p>
</div>

View File

@ -1,172 +0,0 @@
<script language="javascript" type="text/javascript" src="$baseurl/tinymce/jscripts/tiny_mce/tiny_mce_src.js"></script>
<script language="javascript" type="text/javascript">
var editor;
tinyMCE.init({
theme : "advanced",
mode : "specific_textareas",
editor_selector: /(profile-jot-text|prvmail-text)/,
plugins : "bbcode,paste",
theme_advanced_buttons1 : "bold,italic,underline,undo,redo,link,unlink,image,forecolor,formatselect,code",
theme_advanced_buttons2 : "",
theme_advanced_buttons3 : "",
theme_advanced_toolbar_location : "top",
theme_advanced_toolbar_align : "center",
theme_advanced_blockformats : "blockquote,code",
paste_text_sticky : true,
entity_encoding : "raw",
add_unload_trigger : false,
remove_linebreaks : false,
force_p_newlines : false,
force_br_newlines : true,
forced_root_block : '',
convert_urls: false,
content_css: "$baseurl/view/custom_tinymce.css",
//Character count
theme_advanced_path : false,
setup : function(ed) {
ed.onKeyUp.add(function(ed, e) {
var txt = tinyMCE.activeEditor.getContent();
var text = txt.length;
if(txt.length <= 140) {
$('#character-counter').removeClass('red');
$('#character-counter').removeClass('orange');
$('#character-counter').addClass('grey');
}
if((txt.length > 140) && (txt .length <= 420)) {
$('#character-counter').removeClass('grey');
$('#character-counter').removeClass('red');
$('#character-counter').addClass('orange');
}
if(txt.length > 420) {
$('#character-counter').removeClass('grey');
$('#character-counter').removeClass('orange');
$('#character-counter').addClass('red');
}
$('#character-counter').text(text);
});
ed.onInit.add(function(ed) {
ed.pasteAsPlainText = true;
});
}
});
</script>
<script type="text/javascript" src="include/ajaxupload.js" ></script>
<script>
$(document).ready(function() {
var uploader = new window.AjaxUpload(
'wall-image-upload',
{ action: 'wall_upload/$nickname',
name: 'userfile',
onSubmit: function(file,ext) { $('#profile-rotator').show(); },
onComplete: function(file,response) {
tinyMCE.execCommand('mceInsertRawHTML',false,response);
$('#profile-rotator').hide();
}
}
);
$('#contact_allow, #contact_deny, #group_allow, #group_deny').change(function() {
var selstr;
$('#contact_allow option:selected, #contact_deny option:selected, #group_allow option:selected, #group_deny option:selected').each( function() {
selstr = $(this).text();
$('#profile-jot-perms img').attr('src', 'images/lock_icon.gif');
$('.profile-jot-net input').attr('disabled', 'disabled');
});
if(selstr == null) {
$('#profile-jot-perms img').attr('src', 'images/unlock_icon.gif');
$('.profile-jot-net input').attr('disabled', false);
}
}).trigger('change');
});
function jotGetLink() {
reply = prompt("Please enter a link URL:");
if(reply && reply.length) {
$('#profile-rotator').show();
$.get('parse_url?url=' + reply, function(data) {
tinyMCE.execCommand('mceInsertRawHTML',false,data);
$('#profile-rotator').hide();
});
}
}
function jotGetVideo() {
reply = prompt("Please enter a YouTube link:");
if(reply && reply.length) {
tinyMCE.execCommand('mceInsertRawHTML',false,'[youtube]' + reply + '[/youtube]');
}
}
function jotGetVideo() {
reply = prompt("Please enter a YouTube link:");
if(reply && reply.length) {
tinyMCE.execCommand('mceInsertRawHTML',false,'[youtube]' + reply + '[/youtube]');
}
}
function jotVideoURL() {
reply = prompt("Please enter a video(.ogg) link/URL:");
if(reply && reply.length) {
tinyMCE.execCommand('mceInsertRawHTML',false,'[video]' + reply + '[/video]');
}
}
function jotAudioURL() {
reply = prompt("Please enter an audio(.ogg) link/URL:");
if(reply && reply.length) {
tinyMCE.execCommand('mceInsertRawHTML',false,'[audio]' + reply + '[/audio]');
}
}
function jotGetLocation() {
reply = prompt("Where are you right now?", $('#jot-location').val());
if(reply && reply.length) {
$('#jot-location').val(reply);
}
}
function jotShare(id) {
$('#like-rotator-' + id).show();
$.get('share/' + id, function(data) {
tinyMCE.execCommand('mceInsertRawHTML',false,data);
$('#like-rotator-' + id).hide();
$(window).scrollTop(0);
});
}
function linkdropper(event) {
var linkFound = event.dataTransfer.types.contains("text/uri-list");
if(linkFound)
event.preventDefault();
}
function linkdrop(event) {
var reply = event.dataTransfer.getData("text/uri-list");
event.target.textContent = reply;
event.preventDefault();
if(reply && reply.length) {
$('#profile-rotator').show();
$.get('parse_url?url=' + reply, function(data) {
tinyMCE.execCommand('mceInsertRawHTML',false,data);
$('#profile-rotator').hide();
});
}
}
function jotClearLocation() {
$('#jot-coord').val('');
$('#profile-nolocation-wrapper').hide();
}
$geotag
</script>

View File

@ -1,104 +0,0 @@
<script language="javascript" type="text/javascript" src="$baseurl/tinymce/jscripts/tiny_mce/tiny_mce_src.js"></script>
<script language="javascript" type="text/javascript">
tinyMCE.init({
theme : "advanced",
mode : "specific_textareas",
editor_selector: /(profile-jot-text|prvmail-text)/,
plugins : "bbcode,paste",
theme_advanced_buttons1 : "bold,italic,underline,undo,redo,link,unlink,image,forecolor",
theme_advanced_buttons2 : "",
theme_advanced_buttons3 : "",
theme_advanced_toolbar_location : "top",
theme_advanced_toolbar_align : "center",
theme_advanced_blockformats : "blockquote,code",
paste_text_sticky : true,
entity_encoding : "raw",
add_unload_trigger : false,
remove_linebreaks : false,
force_p_newlines : false,
force_br_newlines : true,
forced_root_block : '',
convert_urls: false,
content_css: "$baseurl/view/custom_tinymce.css",
//Character count
theme_advanced_path : false,
setup : function(ed) {
ed.onKeyUp.add(function(ed, e) {
var txt = tinyMCE.activeEditor.getContent();
var text = txt.length;
if(txt.length <= 140) {
$('#character-counter').removeClass('red');
$('#character-counter').removeClass('orange');
$('#character-counter').addClass('grey');
}
if((txt.length > 140) && (txt .length <= 420)) {
$('#character-counter').removeClass('grey');
$('#character-counter').removeClass('red');
$('#character-counter').addClass('orange');
}
if(txt.length > 420) {
$('#character-counter').removeClass('grey');
$('#character-counter').removeClass('orange');
$('#character-counter').addClass('red');
}
$('#character-counter').text(text);
});
ed.onInit.add(function(ed) {
ed.pasteAsPlainText = true;
});
}
});
</script>
<script type="text/javascript" src="include/ajaxupload.js" ></script>
<script>
$(document).ready(function() {
var uploader = new window.AjaxUpload(
'prvmail-upload',
{ action: 'wall_upload/$nickname',
name: 'userfile',
onSubmit: function(file,ext) { $('#profile-rotator').show(); },
onComplete: function(file,response) {
tinyMCE.execCommand('mceInsertRawHTML',false,response);
$('#profile-rotator').hide();
}
}
);
});
function jotGetLink() {
reply = prompt("Please enter a link URL:");
if(reply && reply.length) {
$('#profile-rotator').show();
$.get('parse_url?url=' + reply, function(data) {
tinyMCE.execCommand('mceInsertRawHTML',false,data);
$('#profile-rotator').hide();
});
}
}
function linkdropper(event) {
var linkFound = event.dataTransfer.types.contains("text/uri-list");
if(linkFound)
event.preventDefault();
}
function linkdrop(event) {
var reply = event.dataTransfer.getData("text/uri-list");
event.target.textContent = reply;
event.preventDefault();
if(reply && reply.length) {
$('#profile-rotator').show();
$.get('parse_url?url=' + reply, function(data) {
tinyMCE.execCommand('mceInsertRawHTML',false,data);
$('#profile-rotator').hide();
});
}
}
</script>

View File

@ -1,7 +0,0 @@
<div id="profile-tabs-wrapper" >
<a href="$url" id="profile-tab-status-link" class="profile-tabs" >Status</a>
<a href="$url?tab=profile" id="profile-tab-profile-link" class="profile-tabs" >Profile</a>
<a href="$phototab" id="profile-tab-photos-link" class="profile-tabs" >Photos</a>
<div id="profile-tabs-end"></div>
</div>

View File

@ -89,6 +89,14 @@ $profile_in_net_dir
</div> </div>
<div id="settings-default-perms-end"></div> <div id="settings-default-perms-end"></div>
<div id="settings-blockw-wrapper" >
<label id="settings-blockw-label" for="settings-blockw" >Allow friends to post to your profile: </label>
<input type="checkbox" name="blockwall" id="settings-blockw" value="1" $blockw_checked />
</div>
<div id="settings-blockw-end" ></div>
<div id="settings-expire-desc">Automatically expire (delete) posts older than <input type="text" size="3" name="expire" value="$expire" /> days</div> <div id="settings-expire-desc">Automatically expire (delete) posts older than <input type="text" size="3" name="expire" value="$expire" /> days</div>
<div id="settings-expire-end"></div> <div id="settings-expire-end"></div>

View File

@ -384,6 +384,7 @@ input#dfrn-url {
#settings-nick-end, #settings-nick-end,
#settings-defloc-end, #settings-defloc-end,
#settings-allowloc-end, #settings-allowloc-end,
#settings-blockw-end,
#settings-timezone-end, #settings-timezone-end,
#settings-theme-end, #settings-theme-end,
#settings-password-end, #settings-password-end,
@ -404,6 +405,7 @@ input#dfrn-url {
#settings-nick-label, #settings-nick-label,
#settings-defloc-label, #settings-defloc-label,
#settings-allowloc-label, #settings-allowloc-label,
#settings-blockw-label,
#settings-timezone-label, #settings-timezone-label,
#settings-theme-label, #settings-theme-label,
#settings-password-label, #settings-password-label,
@ -424,6 +426,7 @@ input#dfrn-url {
#settings-nick, #settings-nick,
#settings-defloc, #settings-defloc,
#settings-allowloc, #settings-allowloc,
#settings-blockw,
#timezone-select, #timezone-select,
#theme-select, #theme-select,
#settings-password, #settings-password,
@ -1431,7 +1434,7 @@ input#dfrn-url {
/*margin-left: 50px;*/ /*margin-left: 50px;*/
} }
#block-message, #ignore-message, #profile-edit-insecure { #block-message, #ignore-message {
margin-top: 20px; margin-top: 20px;
color: #FF0000; color: #FF0000;
font-size: 1.1em; font-size: 1.1em;
@ -1440,13 +1443,21 @@ input#dfrn-url {
padding: 10px; padding: 10px;
} }
#profile-edit-insecure {
margin-top: 20px;
color: #FF0000;
font-size: 1.1em;
border: 1px solid #FF8888;
background-color: #FFEEEE;
padding-left: 5px;
/*: 3px 3px 3px 5px; */
width: 587px;
}
#block-message, #ignore-message { #block-message, #ignore-message {
width: 180px; width: 180px;
} }
#profile-edit-insecure {
width: 600px;
}
/* /*
.profile-tabs { .profile-tabs {
@ -2133,3 +2144,24 @@ a.mail-list-link {
clear: both; clear: both;
} }
.profile-match-photo {
float: left;
text-align: center;
width: 120px;
}
.profile-match-name {
float: left;
text-align: center;
width: 120px;
overflow: hidden;
}
.profile-match-break,
.profile-match-end {
clear: both;
}
.side-link {
margin-bottom: 15px;
}

View File

@ -517,6 +517,7 @@ input#dfrn-url {
#settings-nick-end, #settings-nick-end,
#settings-defloc-end, #settings-defloc-end,
#settings-allowloc-end, #settings-allowloc-end,
#settings-blockw-end,
#settings-timezone-end, #settings-timezone-end,
#settings-theme-end, #settings-theme-end,
#settings-password-end, #settings-password-end,
@ -537,6 +538,7 @@ input#dfrn-url {
#settings-nick-label, #settings-nick-label,
#settings-defloc-label, #settings-defloc-label,
#settings-allowloc-label, #settings-allowloc-label,
#settings-blockw-label,
#settings-timezone-label, #settings-timezone-label,
#settings-theme-label, #settings-theme-label,
#settings-password-label, #settings-password-label,
@ -557,6 +559,7 @@ input#dfrn-url {
#settings-nick, #settings-nick,
#settings-defloc, #settings-defloc,
#settings-allowloc, #settings-allowloc,
#settings-blockw,
#timezone-select, #timezone-select,
#theme-select, #theme-select,
#settings-password, #settings-password,
@ -2166,3 +2169,25 @@ a.mail-list-link {
clear: both; clear: both;
} }
.profile-match-photo {
float: left;
text-align: center;
width: 120px;
}
.profile-match-name {
float: left;
text-align: center;
width: 120px;
overflow: hidden;
}
.profile-match-break,
.profile-match-end {
clear: both;
}
.side-link {
margin-bottom: 15px;
}