Merge remote branch 'mike/master'

This commit is contained in:
olivierm 2011-03-08 14:39:26 +01:00
commit 25c674b73a
49 changed files with 678 additions and 524 deletions

View file

@ -138,7 +138,7 @@ function twitter_settings(&$a,&$s) {
* which the user can request a PIN to connect the account to a
* account at Twitter.
*/
require_once('addon/twitter/twitteroauth.php');
require_once('library/twitteroauth.php');
$connection = new TwitterOAuth($ckey, $csecret);
$request_token = $connection->getRequestToken();
$token = $request_token['oauth_token'];

View file

@ -3,7 +3,7 @@
set_time_limit(0);
define ( 'BUILD_ID', 1039 );
define ( 'FRIENDIKA_VERSION', '2.10.0908' );
define ( 'FRIENDIKA_VERSION', '2.10.0909' );
define ( 'DFRN_PROTOCOL_VERSION', '2.1' );
define ( 'EOL', "<br />\r\n" );
@ -40,6 +40,8 @@ define ( 'REGISTER_OPEN', 2 );
/**
* relationship types
* When used in contact records, this indicates that 'uid' has
* this relationship with contact['name']
*/
define ( 'REL_VIP', 1);
@ -2417,10 +2419,15 @@ function link_compare($a,$b) {
if(! function_exists('prepare_body')) {
function prepare_body($item) {
return prepare_text($item['body']);
}}
if(! function_exists('prepare_text')) {
function prepare_text($text) {
require_once('include/bbcode.php');
$s = smilies(bbcode($item['body']));
$s = smilies(bbcode($text));
return $s;
}}
@ -2584,3 +2591,29 @@ function unamp($s) {
return str_replace('&amp;', '&', $s);
}}
if(! function_exists('extract_item_authors')) {
function extract_item_authors($arr,$uid) {
if((! $uid) || (! is_array($arr)) || (! count($arr)))
return array();
$urls = array();
foreach($arr as $rr) {
if(! in_array("'" . dbesc($rr['author-link']) . "'",$urls))
$urls[] = "'" . dbesc($rr['author-link']) . "'";
}
// pre-quoted, don't put quotes on %s
if(count($urls)) {
$r = q("SELECT `id`,`url` FROM `contact` WHERE `uid` = %d AND `url` IN ( %s ) AND `network` = 'dfrn' AND `self` = 0 AND `blocked` = 0 ",
intval($uid),
implode(',',$urls)
);
if(count($r)) {
$ret = array();
foreach($r as $rr)
$ret[$rr['url']] = $rr['id'];
return $ret;
}
}
return array();
}}

BIN
images/friendika-128.jpg Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 8.2 KiB

BIN
images/friendika-128.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 6.9 KiB

BIN
images/friendika-16.jpg Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 659 B

BIN
images/friendika-16.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 699 B

BIN
images/friendika-256.jpg Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 17 KiB

BIN
images/friendika-256.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 12 KiB

BIN
images/friendika-32.jpg Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.5 KiB

BIN
images/friendika-32.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.4 KiB

BIN
images/friendika-64.jpg Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.4 KiB

BIN
images/friendika-64.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.1 KiB

240
images/friendika.svg Normal file
View file

@ -0,0 +1,240 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<!-- Created with Inkscape (http://www.inkscape.org/) -->
<svg
xmlns:dc="http://purl.org/dc/elements/1.1/"
xmlns:cc="http://creativecommons.org/ns#"
xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
xmlns:svg="http://www.w3.org/2000/svg"
xmlns="http://www.w3.org/2000/svg"
xmlns:xlink="http://www.w3.org/1999/xlink"
xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
width="96"
height="96"
id="svg2"
version="1.1"
inkscape:version="0.48.0 r9654"
sodipodi:docname="friendika.svg"
inkscape:export-filename="/home/meta/Documents/My random images/friendika.png"
inkscape:export-xdpi="80.552788"
inkscape:export-ydpi="80.552788">
<defs
id="defs4">
<linearGradient
id="highlightgradient">
<stop
id="stop3833"
offset="0"
style="stop-color:#ffffff;stop-opacity:0.74374998;" />
<stop
style="stop-color:#ffffff;stop-opacity:0;"
offset="1"
id="stop3829" />
</linearGradient>
<linearGradient
id="shadowgradient">
<stop
id="stop3833-5"
offset="0"
style="stop-color:#000000;stop-opacity:0.5;" />
<stop
style="stop-color:#818080;stop-opacity:0;"
offset="1"
id="stop3829-9" />
</linearGradient>
<linearGradient
inkscape:collect="always"
xlink:href="#highlightgradient"
id="linearGradient4011"
x1="44.948269"
y1="0"
x2="54.103466"
y2="46.797421"
gradientUnits="userSpaceOnUse"
gradientTransform="scale(1,0.54545455)" />
<linearGradient
inkscape:collect="always"
xlink:href="#shadowgradient"
id="linearGradient4021"
x1="52.016712"
y1="96"
x2="42.867535"
y2="41.837971"
gradientUnits="userSpaceOnUse"
gradientTransform="matrix(1,0,0,0.5,0,48)" />
<filter
inkscape:collect="always"
id="filter4055"
x="-0.03"
width="1.06"
y="-0.12"
height="1.24">
<feGaussianBlur
inkscape:collect="always"
stdDeviation="1.2"
id="feGaussianBlur4057" />
</filter>
<filter
inkscape:collect="always"
id="filter4059"
x="-0.029877551"
width="1.0597551"
y="-0.122"
height="1.244">
<feGaussianBlur
inkscape:collect="always"
stdDeviation="1.22"
id="feGaussianBlur4061" />
</filter>
</defs>
<sodipodi:namedview
id="base"
pagecolor="#ffffff"
bordercolor="#666666"
borderopacity="1.0"
inkscape:pageopacity="0.0"
inkscape:pageshadow="2"
inkscape:zoom="2.9132799"
inkscape:cx="53.033009"
inkscape:cy="2.8284271"
inkscape:document-units="px"
inkscape:current-layer="layer1"
showgrid="true"
width="256px"
inkscape:snap-global="true"
inkscape:window-width="1680"
inkscape:window-height="1010"
inkscape:window-x="194"
inkscape:window-y="0"
inkscape:window-maximized="0">
<inkscape:grid
type="xygrid"
id="grid2985"
empspacing="3"
visible="true"
enabled="true"
snapvisiblegridlinesonly="true"
spacingx="2px"
spacingy="2px" />
</sodipodi:namedview>
<metadata
id="metadata7">
<rdf:RDF>
<cc:Work
rdf:about="">
<dc:format>image/svg+xml</dc:format>
<dc:type
rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
<dc:title />
</cc:Work>
</rdf:RDF>
</metadata>
<g
inkscape:label="Colors"
inkscape:groupmode="layer"
id="layer1"
transform="translate(0,-956.3622)"
style="display:inline">
<path
style="fill:#ffc019;fill-opacity:1;stroke:none"
d="M 16,0 C 7.0091019,0.04308252 0,7.0521845 0,16 0,16 0,57.499123 0,80 0,89.120146 7.0091019,96 16,96 L 32,96 32,70 64,70 63.916016,46.068359 32,46.236328 32,26 64,26 64,0 C 64,0 24,0 16,0 z"
transform="translate(0,956.3622)"
id="rect2993"
inkscape:connector-curvature="0"
sodipodi:nodetypes="cccsccccccccc" />
<path
style="fill:#1872a2;fill-opacity:1;stroke:none"
d="m 80,1052.3622 c 8.990898,0 16.086165,-6.966 16,-16 0,0 0,-41.4991 0,-64 0.07767,-9.01639 -7.067354,-16 -16,-16 l -16,0 0,26 -32,0 0,22 32,0 0,22 -32,0 0,26 c 0,0 32,0 48,0 z"
id="rect2993-6"
inkscape:connector-curvature="0"
sodipodi:nodetypes="cccsccccccccc" />
</g>
<g
style="display:inline"
inkscape:label="Lines as original logo"
id="g3997"
inkscape:groupmode="layer">
<path
sodipodi:nodetypes="cccccccc"
inkscape:connector-curvature="0"
id="path3999"
d="m 64,0 0,26 -32,0 0,22 m 32,0 0,22 -32,0 0,26"
style="fill:none;stroke:#000000;stroke-width:4;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none" />
<rect
ry="16"
rx="16"
y="0"
x="0"
height="96"
width="96"
id="rect4001"
style="fill:none;stroke:#000000;stroke-width:4;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none" />
</g>
<g
inkscape:groupmode="layer"
id="layer3"
inkscape:label="Lines with center break"
style="display:none">
<path
style="fill:none;stroke:#000000;stroke-width:4;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none"
d="m 64,0 0,26 -32,0 0,22 32,0 0,22 -32,0 0,26"
id="path3926"
inkscape:connector-curvature="0"
sodipodi:nodetypes="cccccccc" />
<rect
style="fill:none;stroke:#000000;stroke-width:4;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none"
id="rect3928"
width="96"
height="96"
x="0"
y="0"
rx="16"
ry="16" />
</g>
<g
inkscape:groupmode="layer"
id="layer2"
inkscape:label="Effects"
style="display:inline">
<rect
style="fill:url(#linearGradient3930);fill-opacity:1;stroke:none"
id="rect3823"
width="96"
height="48.04369"
x="-3.1086245e-15"
y="1.8024861e-14"
ry="15.215644"
rx="15.214664" />
<rect
style="fill:url(#linearGradient3904);fill-opacity:1;stroke:none"
id="rect3823-8"
width="96"
height="47.86721"
x="1.5376101e-14"
y="-96"
ry="15.159752"
rx="15.214664"
transform="scale(1,-1)" />
<rect
style="fill:url(#linearGradient4011);fill-opacity:1;stroke:none;filter:url(#filter4059)"
id="rect4003"
width="98"
height="24"
x="0"
y="0"
rx="15.214664"
ry="8.2994423"
transform="matrix(1.0296115,0,0,1.1963836,-2.901924,-4.7132067)" />
<rect
style="opacity:0.56746030000000003;fill:url(#linearGradient4021);fill-opacity:1;stroke:none;filter:url(#filter4055)"
id="rect4013"
width="96"
height="24"
x="0"
y="72"
rx="14.008356"
ry="12"
transform="matrix(0.9768331,0,0,0.91974646,1.1649641,8.098115)" />
</g>
</svg>

After

Width:  |  Height:  |  Size: 7.2 KiB

View file

@ -20,12 +20,14 @@ class dba {
function __construct($server,$user,$pass,$db,$install = false) {
$this->db = @new mysqli($server,$user,$pass,$db);
if((mysqli_connect_errno()) && (! $install)) {
$this->db = null;
system_unavailable();
if(! mysqli_connect_errno()) {
$this->connected = true;
}
else {
$this->db = null;
if(! $install)
system_unavailable();
}
else
$this->connected = true;
}
public function getdb() {
@ -34,7 +36,7 @@ class dba {
public function q($sql) {
if(! $this->db )
if((! $this->db) || (! $this->connected))
return false;
$result = @$this->db->query($sql);
@ -92,7 +94,8 @@ class dba {
}
public function escape($str) {
return @$this->db->real_escape_string($str);
if($this->db && $this->connected)
return @$this->db->real_escape_string($str);
}
function __destruct() {

View file

@ -124,7 +124,7 @@ function nav(&$a) {
$banner = get_config('system','banner');
if($banner === false)
$banner .= '<a href="http://friendika.com"><img id="logo-img" src="images/ff-32.jpg" alt="logo" /></a><span id="logo-text"><a href="http://friendika.com">Friendika</a></span>';
$banner .= '<a href="http://friendika.com"><img id="logo-img" src="images/friendika-32.png" alt="logo" /></a><span id="logo-text"><a href="http://friendika.com">Friendika</a></span>';
$a->page['nav'] .= '<span id="banner">' . $banner . '</span>';

View file

@ -2,18 +2,18 @@
require_once("boot.php");
function poller_run($argv, $argc){
global $a, $db;
global $a, $db;
if(is_null($a)){
$a = new App;
}
if(is_null($a)) {
$a = new App;
}
if(is_null($db)){
@include(".htconfig.php");
require_once("dba.php");
$db = new dba($db_host, $db_user, $db_pass, $db_data);
unset($db_host, $db_user, $db_pass, $db_data);
};
if(is_null($db)) {
@include(".htconfig.php");
require_once("dba.php");
$db = new dba($db_host, $db_user, $db_pass, $db_data);
unset($db_host, $db_user, $db_pass, $db_data);
};
require_once('session.php');
require_once('datetime.php');
@ -30,7 +30,7 @@ function poller_run($argv, $argc){
proc_run('php',"include/queue.php");
// clear old cache
q("DELETE FROM `cache` WHERE `updated`<'%s'",
q("DELETE FROM `cache` WHERE `updated` < '%s'",
dbesc(datetime_convert('UTC','UTC',"now - 30 days")));
$manual_id = 0;
@ -47,130 +47,214 @@ function poller_run($argv, $argc){
$sql_extra = (($manual_id) ? " AND `id` = $manual_id " : "");
// 'stat' clause is a temporary measure until we have federation subscriptions working both directions
$contacts = q("SELECT * FROM `contact`
WHERE ( ( `network` = 'dfrn' AND ( `dfrn-id` != '' OR (`issued-id` != '' AND `duplex` = 1)))
OR ( `network` IN ( 'stat', 'feed' ) AND `poll` != '' ))
$contacts = q("SELECT `id` FROM `contact`
WHERE ( `rel` = %d OR `rel` = %d ) AND `poll` != ''
$sql_extra
AND `self` = 0 AND `blocked` = 0 AND `readonly` = 0 ORDER BY RAND()");
AND `self` = 0 AND `blocked` = 0 AND `readonly` = 0 ORDER BY RAND()",
intval(REL_FAN),
intval(REL_BUD)
);
if(! count($contacts)){
if(! count($contacts)) {
return;
}
foreach($contacts as $contact) {
foreach($contacts as $c) {
if($manual_id)
$contact['last-update'] = '0000-00-00 00:00:00';
if($contact['priority'] || $contact['subhub']) {
$hub_update = true;
$update = false;
$t = $contact['last-update'];
// We should be getting everything via a hub. But just to be sure, let's check once a day.
// (You can make this more or less frequent if desired by setting 'pushpoll_frequency' appropriately)
// This also lets us update our subscription to the hub, and add or replace hubs in case it
// changed. We will only update hubs once a day, regardless of 'pushpoll_frequency'.
if($contact['subhub']) {
$interval = get_config('system','pushpoll_frequency');
$contact['priority'] = (($interval !== false) ? intval($interval) : 3);
$hub_update = false;
if((datetime_convert('UTC','UTC', 'now') > datetime_convert('UTC','UTC', $t . " + 1 day")) || $force)
$hub_update = true;
}
/**
* Based on $contact['priority'], should we poll this site now? Or later?
*/
switch ($contact['priority']) {
case 5:
if(datetime_convert('UTC','UTC', 'now') > datetime_convert('UTC','UTC', $t . " + 1 month"))
$update = true;
break;
case 4:
if(datetime_convert('UTC','UTC', 'now') > datetime_convert('UTC','UTC', $t . " + 1 week"))
$update = true;
break;
case 3:
if(datetime_convert('UTC','UTC', 'now') > datetime_convert('UTC','UTC', $t . " + 1 day"))
$update = true;
break;
case 2:
if(datetime_convert('UTC','UTC', 'now') > datetime_convert('UTC','UTC', $t . " + 12 hour"))
$update = true;
break;
case 1:
default:
if(datetime_convert('UTC','UTC', 'now') > datetime_convert('UTC','UTC', $t . " + 1 hour"))
$update = true;
break;
}
if((! $update) && (! $force))
continue;
}
$importer_uid = $contact['uid'];
$r = q("SELECT * FROM `contact` WHERE `uid` = %d AND `self` = 1 LIMIT 1",
intval($importer_uid)
$res = q("SELECT * FROM `contact` WHERE `id` = %d LIMIT 1",
intval($c['id'])
);
if(! count($r))
if(! count($res))
continue;
$importer = $r[0];
foreach($res as $contact) {
if($manual_id)
$contact['last-update'] = '0000-00-00 00:00:00';
logger("poller: poll: IMPORTER: {$importer['name']}, CONTACT: {$contact['name']}");
if($contact['priority'] || $contact['subhub']) {
$last_update = (($contact['last-update'] === '0000-00-00 00:00:00')
? datetime_convert('UTC','UTC','now - 30 days', ATOM_TIME)
: datetime_convert('UTC','UTC',$contact['last-update'], ATOM_TIME)
);
$hub_update = true;
$update = false;
if($contact['network'] === 'dfrn') {
$t = $contact['last-update'];
$idtosend = $orig_id = (($contact['dfrn-id']) ? $contact['dfrn-id'] : $contact['issued-id']);
// We should be getting everything via a hub. But just to be sure, let's check once a day.
// (You can make this more or less frequent if desired by setting 'pushpoll_frequency' appropriately)
// This also lets us update our subscription to the hub, and add or replace hubs in case it
// changed. We will only update hubs once a day, regardless of 'pushpoll_frequency'.
if(intval($contact['duplex']) && $contact['dfrn-id'])
$idtosend = '0:' . $orig_id;
if(intval($contact['duplex']) && $contact['issued-id'])
$idtosend = '1:' . $orig_id;
$url = $contact['poll'] . '?dfrn_id=' . $idtosend
. '&dfrn_version=' . DFRN_PROTOCOL_VERSION
. '&type=data&last_update=' . $last_update ;
if($contact['subhub']) {
$interval = get_config('system','pushpoll_frequency');
$contact['priority'] = (($interval !== false) ? intval($interval) : 3);
$hub_update = false;
$xml = fetch_url($url);
if((datetime_convert('UTC','UTC', 'now') > datetime_convert('UTC','UTC', $t . " + 1 day")) || $force)
$hub_update = true;
}
logger('poller: handshake with url ' . $url . ' returns xml: ' . $xml, LOGGER_DATA);
/**
* Based on $contact['priority'], should we poll this site now? Or later?
*/
if(! $xml) {
logger("poller: $url appears to be dead - marking for death ");
// dead connection - might be a transient event, or this might
// mean the software was uninstalled or the domain expired.
// Will keep trying for one month.
mark_for_death($contact);
// set the last-update so we don't keep polling
$r = q("UPDATE `contact` SET `last-update` = '%s' WHERE `id` = %d LIMIT 1",
dbesc(datetime_convert()),
intval($contact['id'])
);
continue;
switch ($contact['priority']) {
case 5:
if(datetime_convert('UTC','UTC', 'now') > datetime_convert('UTC','UTC', $t . " + 1 month"))
$update = true;
break;
case 4:
if(datetime_convert('UTC','UTC', 'now') > datetime_convert('UTC','UTC', $t . " + 1 week"))
$update = true;
break;
case 3:
if(datetime_convert('UTC','UTC', 'now') > datetime_convert('UTC','UTC', $t . " + 1 day"))
$update = true;
break;
case 2:
if(datetime_convert('UTC','UTC', 'now') > datetime_convert('UTC','UTC', $t . " + 12 hour"))
$update = true;
break;
case 1:
default:
if(datetime_convert('UTC','UTC', 'now') > datetime_convert('UTC','UTC', $t . " + 1 hour"))
$update = true;
break;
}
if((! $update) && (! $force))
continue;
}
$importer_uid = $contact['uid'];
$r = q("SELECT * FROM `contact` WHERE `uid` = %d AND `self` = 1 LIMIT 1",
intval($importer_uid)
);
if(! count($r))
continue;
$importer = $r[0];
logger("poller: poll: IMPORTER: {$importer['name']}, CONTACT: {$contact['name']}");
$last_update = (($contact['last-update'] === '0000-00-00 00:00:00')
? datetime_convert('UTC','UTC','now - 30 days', ATOM_TIME)
: datetime_convert('UTC','UTC',$contact['last-update'], ATOM_TIME)
);
if($contact['network'] === 'dfrn') {
$idtosend = $orig_id = (($contact['dfrn-id']) ? $contact['dfrn-id'] : $contact['issued-id']);
if(intval($contact['duplex']) && $contact['dfrn-id'])
$idtosend = '0:' . $orig_id;
if(intval($contact['duplex']) && $contact['issued-id'])
$idtosend = '1:' . $orig_id;
$url = $contact['poll'] . '?dfrn_id=' . $idtosend
. '&dfrn_version=' . DFRN_PROTOCOL_VERSION
. '&type=data&last_update=' . $last_update ;
$xml = fetch_url($url);
logger('poller: handshake with url ' . $url . ' returns xml: ' . $xml, LOGGER_DATA);
if(! $xml) {
logger("poller: $url appears to be dead - marking for death ");
// dead connection - might be a transient event, or this might
// mean the software was uninstalled or the domain expired.
// Will keep trying for one month.
mark_for_death($contact);
// set the last-update so we don't keep polling
$r = q("UPDATE `contact` SET `last-update` = '%s' WHERE `id` = %d LIMIT 1",
dbesc(datetime_convert()),
intval($contact['id'])
);
continue;
}
if(! strstr($xml,'<?xml')) {
logger('poller: response from ' . $url . ' did not contain XML.');
$r = q("UPDATE `contact` SET `last-update` = '%s' WHERE `id` = %d LIMIT 1",
dbesc(datetime_convert()),
intval($contact['id'])
);
continue;
}
$res = simplexml_load_string($xml);
if(intval($res->status) == 1) {
logger("poller: $url replied status 1 - marking for death ");
// we may not be friends anymore. Will keep trying for one month.
// set the last-update so we don't keep polling
$r = q("UPDATE `contact` SET `last-update` = '%s' WHERE `id` = %d LIMIT 1",
dbesc(datetime_convert()),
intval($contact['id'])
);
mark_for_death($contact);
}
else {
if($contact['term-date'] != '0000-00-00 00:00:00') {
logger("poller: $url back from the dead - removing mark for death");
unmark_for_death($contact);
}
}
if((intval($res->status) != 0) || (! strlen($res->challenge)) || (! strlen($res->dfrn_id)))
continue;
$postvars = array();
$sent_dfrn_id = hex2bin((string) $res->dfrn_id);
$challenge = hex2bin((string) $res->challenge);
$final_dfrn_id = '';
if(($contact['duplex']) && strlen($contact['prvkey'])) {
openssl_private_decrypt($sent_dfrn_id,$final_dfrn_id,$contact['prvkey']);
openssl_private_decrypt($challenge,$postvars['challenge'],$contact['prvkey']);
}
else {
openssl_public_decrypt($sent_dfrn_id,$final_dfrn_id,$contact['pubkey']);
openssl_public_decrypt($challenge,$postvars['challenge'],$contact['pubkey']);
}
$final_dfrn_id = substr($final_dfrn_id, 0, strpos($final_dfrn_id, '.'));
if(strpos($final_dfrn_id,':') == 1)
$final_dfrn_id = substr($final_dfrn_id,2);
if($final_dfrn_id != $orig_id) {
// did not decode properly - cannot trust this site
continue;
}
$postvars['dfrn_id'] = $idtosend;
$postvars['dfrn_version'] = DFRN_PROTOCOL_VERSION;
$xml = post_url($contact['poll'],$postvars);
}
else {
// $contact['network'] !== 'dfrn'
$xml = fetch_url($contact['poll']);
}
logger('poller: received xml : ' . $xml, LOGGER_DATA);
if(! strstr($xml,'<?xml')) {
logger('poller: response from ' . $url . ' did not contain XML.');
logger('poller: post_handshake: response from ' . $url . ' did not contain XML.');
$r = q("UPDATE `contact` SET `last-update` = '%s' WHERE `id` = %d LIMIT 1",
dbesc(datetime_convert()),
intval($contact['id'])
@ -178,114 +262,39 @@ function poller_run($argv, $argc){
continue;
}
consume_feed($xml,$importer,$contact,$hub,1);
$res = simplexml_load_string($xml);
// do it twice. Ensures that children of parents which may be later in the stream aren't tossed
if(intval($res->status) == 1) {
logger("poller: $url replied status 1 - marking for death ");
consume_feed($xml,$importer,$contact,$hub,1);
// we may not be friends anymore. Will keep trying for one month.
// set the last-update so we don't keep polling
$r = q("UPDATE `contact` SET `last-update` = '%s' WHERE `id` = %d LIMIT 1",
dbesc(datetime_convert()),
intval($contact['id'])
);
mark_for_death($contact);
}
else {
if($contact['term-date'] != '0000-00-00 00:00:00') {
logger("poller: $url back from the dead - removing mark for death");
unmark_for_death($contact);
if((strlen($hub)) && ($hub_update)
&& (($contact['rel'] == REL_BUD) || (($contact['network'] === 'stat') && (! $contact['readonly'])))) {
logger('poller: subscribing to hub(s) : ' . $hub . ' contact name : ' . $contact['name'] . ' local user : ' . $importer['name']);
$hubs = explode(',', $hub);
if(count($hubs)) {
foreach($hubs as $h) {
$h = trim($h);
if(! strlen($h))
continue;
subscribe_to_hub($h,$importer,$contact);
}
}
}
if((intval($res->status) != 0) || (! strlen($res->challenge)) || (! strlen($res->dfrn_id)))
continue;
$postvars = array();
$updated = datetime_convert();
$sent_dfrn_id = hex2bin((string) $res->dfrn_id);
$challenge = hex2bin((string) $res->challenge);
$final_dfrn_id = '';
if(($contact['duplex']) && strlen($contact['prvkey'])) {
openssl_private_decrypt($sent_dfrn_id,$final_dfrn_id,$contact['prvkey']);
openssl_private_decrypt($challenge,$postvars['challenge'],$contact['prvkey']);
}
else {
openssl_public_decrypt($sent_dfrn_id,$final_dfrn_id,$contact['pubkey']);
openssl_public_decrypt($challenge,$postvars['challenge'],$contact['pubkey']);
}
$final_dfrn_id = substr($final_dfrn_id, 0, strpos($final_dfrn_id, '.'));
if(strpos($final_dfrn_id,':') == 1)
$final_dfrn_id = substr($final_dfrn_id,2);
if($final_dfrn_id != $orig_id) {
// did not decode properly - cannot trust this site
continue;
}
$postvars['dfrn_id'] = $idtosend;
$postvars['dfrn_version'] = DFRN_PROTOCOL_VERSION;
$xml = post_url($contact['poll'],$postvars);
}
else {
// $contact['network'] !== 'dfrn'
$xml = fetch_url($contact['poll']);
}
logger('poller: received xml : ' . $xml, LOGGER_DATA);
if(! strstr($xml,'<?xml')) {
logger('poller: post_handshake: response from ' . $url . ' did not contain XML.');
$r = q("UPDATE `contact` SET `last-update` = '%s' WHERE `id` = %d LIMIT 1",
dbesc(datetime_convert()),
$r = q("UPDATE `contact` SET `last-update` = '%s', `success_update` = '%s' WHERE `id` = %d LIMIT 1",
dbesc($updated),
dbesc($updated),
intval($contact['id'])
);
continue;
// loop - next contact
}
consume_feed($xml,$importer,$contact,$hub,1);
// do it twice. Ensures that children of parents which may be later in the stream aren't tossed
consume_feed($xml,$importer,$contact,$hub,1);
if((strlen($hub)) && ($hub_update)
&& (($contact['rel'] == REL_BUD) || (($contact['network'] === 'stat') && (! $contact['readonly'])))) {
logger('poller: subscribing to hub(s) : ' . $hub . ' contact name : ' . $contact['name'] . ' local user : ' . $importer['name']);
$hubs = explode(',', $hub);
if(count($hubs)) {
foreach($hubs as $h) {
$h = trim($h);
if(! strlen($h))
continue;
subscribe_to_hub($h,$importer,$contact);
}
}
}
$updated = datetime_convert();
$r = q("UPDATE `contact` SET `last-update` = '%s', `success_update` = '%s' WHERE `id` = %d LIMIT 1",
dbesc($updated),
dbesc($updated),
intval($contact['id'])
);
// loop - next contact
}
}
return;
}

View file

@ -127,6 +127,8 @@ function display_content(&$a) {
like_puller($a,$item,$dlike,'dislike');
}
$author_contacts = extract_item_authors($r,$a->profile['uid']);
foreach($r as $item) {
$template = $tpl;
@ -172,17 +174,6 @@ function display_content(&$a) {
$sparkle = '';
$redirect_url = $a->get_baseurl() . '/redir/' . $item['cid'] ;
// I think this is redundant now but too chicken to remove it unless
// I've had six cups of coffee and tested it completely
if(($item['network'] === 'dfrn') && (! $item['self'] )) {
$profile_url = $redirect_url;
$sparkle = ' sparkle';
}
// Top-level wall post not written by the wall owner (wall-to-wall)
// First figure out who owns it.
@ -223,13 +214,14 @@ function display_content(&$a) {
// Can we use our special contact URL for this author?
if(strlen($item['author-link'])) {
if((link_compare($item['author-link'],$item['url'])) && ($item['network'] === 'dfrn') && (! $item['self'])) {
$profile_link = $item['author-link'];
if(link_compare($item['author-link'],$item['url']) && ($item['network'] === 'dfrn') && (! $item['self'])) {
$profile_link = $redirect_url;
$sparkle = ' sparkle';
}
else {
$profile_link = $item['author-link'];
$sparkle = '';
elseif(isset($author_contacts[$item['author-link']])) {
$profile_link = $a->get_baseurl() . '/redir/' . $author_contacts[$item['author-link']];
$sparkle = ' sparkle';
}
}

View file

@ -165,9 +165,12 @@ function message_content(&$a) {
if(($a->argc > 1) && ($a->argv[1] === 'new')) {
$tpl = load_view_file('view/msg-header.tpl');
$a->page['htmlhead'] .= replace_macros($tpl, array('$baseurl' => $a->get_baseurl()));
$a->page['htmlhead'] .= replace_macros($tpl, array(
'$baseurl' => $a->get_baseurl(),
'$nickname' => $a->user['nickname']
));
$select = contact_select('messageto','message-to-select', false, 4, true);
$tpl = load_view_file('view/prv_message.tpl');
$o .= replace_macros($tpl,array(

View file

@ -87,6 +87,17 @@ function network_content(&$a, $update = 0) {
$o .= replace_macros($tpl,array(
'$return_path' => $a->cmd,
'$action' => 'item',
'$share' => t('Share'),
'$upload' => t('Upload photo'),
'$weblink' => t('Insert web link'),
'$youtube' => t('Insert YouTube video'),
'$setloc' => t('Set your location'),
'$noloc' => t('Clear browser location'),
'$wait' => t('Please wait'),
'$permset' => t('Permission settings'),
'$content' => '',
'$post_id' => '',
'$baseurl' => $a->get_baseurl(),
'$defloc' => $a->user['default-location'],
'$visitor' => 'block',
@ -196,12 +207,13 @@ function network_content(&$a, $update = 0) {
AND `item`.`parent` = `parentitem`.`id`
$sql_extra
ORDER BY `parentitem`.`created` DESC, `item`.`gravity` ASC, `item`.`created` ASC LIMIT %d ,%d ",
intval($_SESSION['uid']),
intval(local_user()),
intval($a->pager['start']),
intval($a->pager['itemspage'])
);
}
$author_contacts = extract_item_authors($r,local_user());
$cmnt_tpl = load_view_file('view/comment_item.tpl');
$like_tpl = load_view_file('view/like.tpl');
@ -230,10 +242,17 @@ function network_content(&$a, $update = 0) {
$profile_avatar = ((strlen($item['author-avatar'])) ? $item['author-avatar'] : $item['thumb']);
$profile_link = ((strlen($item['author-link'])) ? $item['author-link'] : $item['url']);
if(strlen($item['author-link']) && link_compare($item['author-link'],$item['url'])
&& ($item['network'] === 'dfrn') && (! $item['self'])) {
$profile_link = $redirect_url;
$sparkle = ' sparkle';
$redirect_url = $a->get_baseurl() . '/redir/' . $item['cid'] ;
if(strlen($item['author-link'])) {
if(link_compare($item['author-link'],$item['url']) && ($item['network'] === 'dfrn') && (! $item['self'])) {
$profile_link = $redirect_url;
$sparkle = ' sparkle';
}
elseif(isset($author_contacts[$item['author-link']])) {
$profile_link = $a->get_baseurl() . '/redir/' . $author_contacts[$item['author-link']];
$sparkle = ' sparkle';
}
}
$location = (($item['location']) ? '<a target="map" href="http://maps.google.com/?q=' . urlencode($item['location']) . '">' . $item['location'] . '</a>' : '');
@ -287,15 +306,15 @@ function network_content(&$a, $update = 0) {
$comment = '';
$template = $tpl;
$commentww = '';
$sparkle = '';
$owner_url = $owner_photo = $owner_name = '';
$profile_url = $item['url'];
$redirect_url = $a->get_baseurl() . '/redir/' . $item['cid'] ;
if(((activity_match($item['verb'],ACTIVITY_LIKE)) || (activity_match($item['verb'],ACTIVITY_DISLIKE))) && ($item['id'] != $item['parent']))
continue;
$redirect_url = $a->get_baseurl() . '/redir/' . $item['cid'] ;
$lock = ((($item['private']) || (($item['uid'] == local_user()) && (strlen($item['allow_cid']) || strlen($item['allow_gid'])
|| strlen($item['deny_cid']) || strlen($item['deny_gid']))))
@ -331,7 +350,6 @@ function network_content(&$a, $update = 0) {
$owner_url = $redirect_url;
$osparkle = ' sparkle';
}
}
}
@ -362,13 +380,6 @@ function network_content(&$a, $update = 0) {
$drop = replace_macros(load_view_file('view/wall_item_drop.tpl'), array('$id' => $item['id'], '$delete' => t('Delete')));
if(($item['network'] === 'dfrn') && (! $item['self'] )) {
$profile_url = $redirect_url;
$sparkle = ' sparkle';
}
$photo = $item['photo'];
$thumb = $item['thumb'];
@ -379,22 +390,19 @@ function network_content(&$a, $update = 0) {
$profile_name = (((strlen($item['author-name'])) && $diff_author) ? $item['author-name'] : $item['name']);
$profile_avatar = (((strlen($item['author-avatar'])) && $diff_author) ? $item['author-avatar'] : $thumb);
$profile_link = $profile_url;
// Can we use our special contact URL for this author?
if(strlen($item['author-link'])) {
if((link_compare($item['author-link'],$item['url'])) && ($item['network'] === 'dfrn') && (! $item['self'])) {
$profile_link = $item['author-link'];
if(link_compare($item['author-link'],$item['url']) && ($item['network'] === 'dfrn') && (! $item['self'])) {
$profile_link = $redirect_url;
$sparkle = ' sparkle';
}
else {
$profile_link = $item['author-link'];
$sparkle = '';
elseif(isset($author_contacts[$item['author-link']])) {
$profile_link = $a->get_baseurl() . '/redir/' . $author_contacts[$item['author-link']];
$sparkle = ' sparkle';
}
}
else
$profile_link = $item['url'];
$like = ((x($alike,$item['id'])) ? format_like($alike[$item['id']],$alike[$item['id'] . '-l'],'like',$item['id']) : '');
$dislike = ((x($dlike,$item['id'])) ? format_like($dlike[$item['id']],$dlike[$item['id'] . '-l'],'dislike',$item['id']) : '');

View file

@ -147,6 +147,17 @@ function profile_content(&$a, $update = 0) {
$o .= replace_macros($tpl,array(
'$baseurl' => $a->get_baseurl(),
'$action' => 'item',
'$share' => t('Share'),
'$upload' => t('Upload photo'),
'$weblink' => t('Insert web link'),
'$youtube' => t('Insert YouTube video'),
'$setloc' => t('Set your location'),
'$noloc' => t('Clear browser location'),
'$wait' => t('Please wait'),
'$permset' => t('Permission settings'),
'$content' => '',
'$post_id' => '',
'$defloc' => (($is_owner) ? $a->user['default-location'] : ''),
'$return_path' => $a->cmd,
'$visitor' => (($is_owner || $commvisitor) ? 'block' : 'none'),

View file

@ -226,7 +226,7 @@ function profiles_content(&$a) {
}
if(($a->argc > 2) && ($a->argv[1] === "drop") && intval($a->argv[2])) {
$r = q("SELECT * FROM `profile` WHERE `id` = %d AND `uid` = %d AND `is-default` = 0 AND `self` = 0 LIMIT 1",
$r = q("SELECT * FROM `profile` WHERE `id` = %d AND `uid` = %d AND `is-default` = 0 LIMIT 1",
intval($a->argv[2]),
intval(local_user())
);
@ -243,8 +243,9 @@ function profiles_content(&$a) {
intval($a->argv[2]),
intval(local_user())
);
$r = q("DELETE FROM `profile` WHERE `id` = %d LIMIT 1",
intval($a->argv[2])
$r = q("DELETE FROM `profile` WHERE `id` = %d AND `uid` = %d LIMIT 1",
intval($a->argv[2]),
intval(local_user())
);
if($r)
notice( t('Profile deleted.') . EOL);

View file

@ -55,7 +55,8 @@ function pubsub_init(&$a) {
$sql_extra = ((strlen($hub_verify)) ? sprintf(" AND `hub-verify` = '%s' ", dbesc($hub_verify)) : '');
$r = q("SELECT * FROM `contact` WHERE `poll` = '%s' AND `id` = %d AND `uid` = %d AND `blocked` = 0 $sql_extra LIMIT 1",
$r = q("SELECT * FROM `contact` WHERE `poll` = '%s' AND `id` = %d AND `uid` = %d
AND `blocked` = 0 AND `pending` = 0 $sql_extra LIMIT 1",
dbesc($hub_topic),
intval($contact_id),
intval($owner['uid'])
@ -101,10 +102,14 @@ function pubsub_post(&$a) {
$importer = $r[0];
$r = q("SELECT * FROM `contact` WHERE `subhub` = 1 AND `id` = %d AND `uid` = %d AND `blocked` = 0 AND `readonly` = 0 LIMIT 1",
$r = q("SELECT * FROM `contact` WHERE `subhub` = 1 AND `id` = %d AND `uid` = %d
AND ( `rel` = %d OR `rel` = %d ) AND `blocked` = 0 AND `readonly` = 0 LIMIT 1",
intval($contact_id),
intval($importer['uid'])
intval($importer['uid']),
intval(REL_FAN),
intval(REL_BUD)
);
if(! count($r)) {
logger('pubsub: no contact record - ignored');
hub_post_return();

View file

@ -401,6 +401,8 @@ function register_content(&$a) {
$oidlabel = t("Your OpenID \x28optional\x29: ");
}
$realpeople = t('Members of this network prefer to communicate with real people who use their real names.');
if(get_config('system','publish_all')) {
$profile_publish_reg = '<input type="hidden" name="profile_publish_reg" value="1" />';
}
@ -423,6 +425,7 @@ function register_content(&$a) {
$o = load_view_file("view/register.tpl");
$o = replace_macros($o, array(
'$oidhtml' => $oidhtml,
'$realpeople' => $realpeople,
'$regtitle' => t('Registration'),
'$registertext' =>((x($a->config,'register_text'))
? '<div class="error-message">' . $a->config['register_text'] . '</div>'
@ -433,7 +436,7 @@ function register_content(&$a) {
'$openid' => $openid_url,
'$namelabel' => t('Your Full Name ' . "\x28" . 'e.g. Joe Smith' . "\x29" . ': '),
'$addrlabel' => t('Your Email Address: '),
'$nickdesc' => t('Choose a profile nickname. This must begin with a text character. Your global profile locator will then be \'<strong>nickname@$sitename</strong>\'.'),
'$nickdesc' => t('Choose a profile nickname. This must begin with a text character. Your profile address on this site will then be \'<strong>nickname@$sitename</strong>\'.'),
'$nicklabel' => t('Choose a nickname: '),
'$photo' => $photo,
'$publish' => $profile_publish,

View file

@ -101,5 +101,5 @@ function wall_upload_post(&$a) {
echo '<br /><br /><a href="' . $a->get_baseurl() . '/photos/' . $page_owner_nick . '/image/' . $hash . '" ><img src="' . $a->get_baseurl() . "/photo/{$hash}-{$smallest}.jpg\" alt=\"$basename\" /></a><br /><br />";
killme();
return; // NOTREACHED
}
// NOTREACHED
}

View file

@ -87,7 +87,7 @@ $a->strings['Delete message'] = 'Delete message';
$a->strings['Send Reply'] = 'Send Reply';
$a->strings['Applications'] = 'Applications';
$a->strings["Invite Friends"] = "Invite Friends";
$a->strings['Connect/Follow [profile address]'] = 'Connect/Follow [profile address]';
$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['Follow'] = 'Follow';
$a->strings['Could not access contact record.'] = 'Could not access contact record.';
@ -193,6 +193,7 @@ $a->strings['Global Directory'] = 'Global Directory';
$a->strings['Item not found.'] = 'Item not found.';
$a->strings['Private Message'] = 'Private Message';
$a->strings['This is you'] = 'This is you';
$a->strings['Delete'] = 'Delete';
$a->strings['View $name\'s profile'] = 'View $name\'s profile';
$a->strings['View $owner_name\'s profile'] = 'View $owner_name\'s profile';
$a->strings['to'] = 'to';
@ -200,6 +201,8 @@ $a->strings['Wall-to-Wall'] = 'Wall-to-Wall';
$a->strings['via Wall-To-Wall:'] = 'via Wall-To-Wall:';
$a->strings['Item has been removed.'] = 'Item has been removed.';
$a->strings['Shared content is covered by the <a href="http://creativecommons.org/licenses/by/3.0/">Creative Commons Attribution 3.0</a> license.'] = 'Shared content is covered by the <a href="http://creativecommons.org/licenses/by/3.0/">Creative Commons Attribution 3.0</a> license.';
$a->strings['CC: email addresses'] = 'CC: email addresses';
$a->strings['Example: bob@example.com, mary@example.com'] = 'Example: bob@example.com, mary@example.com';
$a->strings['The profile address specified does not provide adequate information.'] = 'The profile address specified does not provide adequate information.';
$a->strings['Limited profile. This person will be unable to receive direct/personal notifications from you.'] = 'Limited profile. This person will be unable to receive direct/personal notifications from you.';
$a->strings['Unable to retrieve contact information.'] = 'Unable to retrieve contact information.';
@ -211,7 +214,6 @@ $a->strings['Group name changed.'] = 'Group name changed.';
$a->strings['Membership list updated.'] = 'Membership list updated.';
$a->strings['Group removed.'] = 'Group removed.';
$a->strings['Unable to remove group.'] = 'Unable to remove group.';
$a->strings['Delete'] = 'Delete';
$a->strings["Welcome to "] = "Welcome to ";
$a->strings['Could not create/connect to database.'] = 'Could not create/connect to database.';
$a->strings['Connected to database.'] = 'Connected to database.';
@ -267,10 +269,17 @@ $a->strings['\'s'] = '\'s';
$a->strings['Remote privacy information not available.'] = 'Remote privacy information not available.';
$a->strings['Visible to:'] = 'Visible to:';
$a->strings['Password reset requested at '] = 'Password reset requested at ';
$a->strings["Welcome back "] = "Welcome back ";
$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['Select an identity to manage: '] = 'Select an identity to manage: ';
$a->strings['Normal View'] = 'Normal View';
$a->strings['New Item View'] = 'New Item View';
$a->strings['CC: email addresses'] = 'CC: email addresses';
$a->strings['Example: bob@example.com, mary@example.com'] = 'Example: bob@example.com, mary@example.com';
$a->strings['Share'] = 'Share';
$a->strings['Insert YouTube video'] = 'Insert YouTube video';
$a->strings['Set your location'] = 'Set your location';
$a->strings['Clear browser location'] = 'Clear browser location';
$a->strings['Permission settings'] = 'Permission settings';
$a->strings['No such group'] = 'No such group';
$a->strings['Group is empty'] = 'Group is empty';
$a->strings['Group: '] = 'Group: ';
@ -293,7 +302,6 @@ $a->strings['Approve'] = 'Approve';
$a->strings['No notifications.'] = 'No notifications.';
$a->strings['No registrations.'] = 'No registrations.';
$a->strings['Login failed.'] = 'Login failed.';
$a->strings["Welcome back "] = "Welcome back ";
$a->strings['Photo Albums'] = 'Photo Albums';
$a->strings['Contact Photos'] = 'Contact Photos';
$a->strings['Contact information unavailable'] = 'Contact information unavailable';
@ -436,6 +444,7 @@ $a->strings['Apps'] = 'Apps';
$a->strings['Directory'] = 'Directory';
$a->strings['Network'] = 'Network';
$a->strings['Notifications'] = 'Notifications';
$a->strings['Manage'] = 'Manage';
$a->strings['Settings'] = 'Settings';
$a->strings['Profiles'] = 'Profiles';
$a->strings['Embedding disabled'] = 'Embedding disabled';
@ -527,9 +536,10 @@ $a->strings['If enabled all your <strong>public</strong> postings will be posted
$a->strings['Send public postings to StatusNet'] = 'Send public postings to StatusNet';
$a->strings['Clear OAuth configuration'] = 'Clear OAuth configuration';
$a->strings['Three Dimensional Tic-Tac-Toe'] = 'Three Dimensional Tic-Tac-Toe';
$a->strings['3D Tic-Tac-Toe'] = '3D Tic-Tac-Toe';
$a->strings['New game'] = 'New game';
$a->strings['New game with handicap'] = 'New game with handicap';
$a->strings['Three dimensional tic-tac-toe is just like the traditional game except that it is played on multiple levels simultaneously.'] = 'Three dimensional tic-tac-toe is just like the traditional game except that it is played on multiple levels simultaneously.';
$a->strings['Three dimensional tic-tac-toe is just like the traditional game except that it is played on multiple levels simultaneously. '] = 'Three dimensional tic-tac-toe is just like the traditional game except that it is played on multiple levels simultaneously. ';
$a->strings['In this case there are three levels. You win by getting three in a row on any level, as well as up, down, and diagonally across the different levels.'] = 'In this case there are three levels. You win by getting three in a row on any level, as well as up, down, and diagonally across the different levels.';
$a->strings['The handicap game disables the center position on the middle level because the player claiming this square often has an unfair advantage.'] = 'The handicap game disables the center position on the middle level because the player claiming this square often has an unfair advantage.';
$a->strings['You go first...'] = 'You go first...';

View file

@ -1,7 +1,7 @@
<meta http-equiv="Content-Type" content="text/html;charset=utf-8" />
<base href="$baseurl" />
<link rel="stylesheet" type="text/css" href="$stylesheet" media="all" />
<link rel="shortcut icon" href="$baseurl/images/ff-32.jpg" />
<link rel="shortcut icon" href="$baseurl/images/friendika-32.png" />
<!--[if IE]>
<script type="text/javascript" src="http://html5shiv.googlecode.com/svn/trunk/html5.js"></script>

View file

@ -1,60 +0,0 @@
<div id="profile-jot-wrapper" >
<div id="profile-jot-banner-wrapper">
<div id="profile-jot-desc" >&nbsp;</div>
<div id="character-counter" class="grey"></div>
</div>
<div id="profile-jot-banner-end"></div>
<form id="profile-jot-form" action="item" method="post" >
<input type="hidden" name="type" value="wall" />
<input type="hidden" name="profile_uid" value="$profile_uid" />
<input type="hidden" name="return" value="$return_path" />
<input type="hidden" name="location" id="jot-location" value="$defloc" />
<input type="hidden" name="coord" id="jot-coord" value="" />
<textarea rows="5" cols="64" class="profile-jot-text" id="profile-jot-text" name="body" ></textarea>
<div id="profile-jot-submit-wrapper" >
<input type="submit" id="profile-jot-submit" name="submit" value="Share" />
<div id="profile-upload-wrapper" style="display: $visitor;" >
<div id="wall-image-upload-div" ><img id="wall-image-upload" src="images/camera-icon.gif" alt="Foto hochladen" title="Foto hochladen" /></div>
</div>
<div id="profile-link-wrapper" style="display: $visitor;" ondragenter="linkdropper(event);" ondragover="linkdropper(event);" ondrop="linkdrop(event);" >
<img id="profile-link" src="images/link-icon.gif" alt="Weblink einfügen" title="Weblink einfügen" ondragenter="return linkdropper(event);" ondragover="return linkdropper(event);" ondrop="linkdrop(event);" onclick="jotGetLink();" />
</div>
<div id="profile-youtube-wrapper" style="display: $visitor;" >
<img id="profile-video" src="images/youtube_icon.gif" alt="YouTube Video einfügen" title="YouTube Video einfügen" onclick="jotGetVideo();" />
</div>
<div id="profile-location-wrapper" style="display: $visitor;" >
<img id="profile-location" src="images/globe.gif" alt="Deinen Standort festlegen" title="Deinen Standort festlegen" onclick="jotGetLocation();" />
</div>
<div id="profile-nolocation-wrapper" style="display: none;" >
<img id="profile-nolocation" src="images/noglobe.gif" alt="Browser Standort leeren" title="Browser Standort leeren" onclick="jotClearLocation();" />
</div>
<div id="profile-jot-plugin-wrapper" >
$jotplugins
</div>
<div id="profile-rotator-wrapper" style="display: $visitor;" >
<img id="profile-rotator" src="images/rotator.gif" alt="Bitte warten" title="Bitte warten" style="display: none;" />
</div>
<div id="profile-jot-perms" class="profile-jot-perms" style="display: $visitor;" ><img id="jot-perms-icon" src="images/$lockstate_icon.gif" alt="Berechtigungseinstellungen" title="Berechtigungseinstellungen" onClick="openClose('profile-jot-acl-wrapper'); openClose('profile-jot-email-wrapper'); openClose('profile-jot-networks');" />$bang</div>
<div id="profile-jot-perms-end"></div>
<div id="profile-jot-email-wrapper" style="display: none;" >
<div id="profile-jot-email-label">$emailcc</div><input type="text" name="emailcc" id="profile-jot-email" title="$emtitle">
<div id="profile-jot-email-end"></div>
</div>
<div id="profile-jot-networks" style="display: none;" >
$jotnets
</div>
<div id="profile-jot-networks-end"></div>
<div id="profile-jot-acl-wrapper" style="display: none;" >$acl</div>
</div>
<div id="profile-jot-end"></div>
</form>
</div>

View file

@ -7,7 +7,7 @@
<body>
<table style="border:1px solid #ccc">
<tbody>
<tr><td colspan="2" style="background:#3b5998; color:#FFFFFF; font-weight:bold; font-family:'lucida grande', tahoma, verdana,arial, sans-serif; padding: 4px 8px; vertical-align: middle; font-size:16px; letter-spacing: -0.03em; text-align: left;"><img style="width:32px;height:32px;" src='$siteurl/images/ff-32.jpg'><span style="padding:7px;">Friendika</span></td></tr>
<tr><td colspan="2" style="background:#3b5998; color:#FFFFFF; font-weight:bold; font-family:'lucida grande', tahoma, verdana,arial, sans-serif; padding: 4px 8px; vertical-align: middle; font-size:16px; letter-spacing: -0.03em; text-align: left;"><img style="width:32px;height:32px;" src='$siteurl/images/freindika-32.png'><span style="padding:7px;">Friendika</span></td></tr>
<tr><td style="padding-top:22px;" colspan="2">Du hast eine neue private Nachricht von '$from' auf '$siteName' erhhalten.</td></tr>

View file

@ -113,7 +113,7 @@ $o .= <<< EOT
EOT;
}
if($txt = bbcode($a->profile['about'])) {
if($txt = prepare_text($a->profile['about'])) {
$o .= <<< EOT
<div id="advanced-profile-about-wrapper" >
<div id="advanced-profile-about-text">About:</div>
@ -124,7 +124,7 @@ $o .= <<< EOT
EOT;
}
if($txt = bbcode($a->profile['interest'])) {
if($txt = prepare_text($a->profile['interest'])) {
$o .= <<< EOT
<div id="advanced-profile-interest-wrapper" >
<div id="advanced-profile-interest-text">Hobbies/Interests:</div>
@ -135,7 +135,7 @@ $o .= <<< EOT
EOT;
}
if($txt = bbcode($a->profile['contact'])) {
if($txt = prepare_text($a->profile['contact'])) {
$o .= <<< EOT
<div id="advanced-profile-contact-wrapper" >
<div id="advanced-profile-contact-text">Contact information and Social Networks:</div>
@ -146,7 +146,7 @@ $o .= <<< EOT
EOT;
}
if($txt = bbcode($a->profile['music'])) {
if($txt = prepare_text($a->profile['music'])) {
$o .= <<< EOT
<div id="advanced-profile-music-wrapper" >
<div id="advanced-profile-music-text">Musical interests:</div>
@ -157,7 +157,7 @@ $o .= <<< EOT
EOT;
}
if($txt = bbcode($a->profile['book'])) {
if($txt = prepare_text($a->profile['book'])) {
$o .= <<< EOT
<div id="advanced-profile-book-wrapper" >
<div id="advanced-profile-book-text">Books, literature:</div>
@ -168,7 +168,7 @@ $o .= <<< EOT
EOT;
}
if($txt = bbcode($a->profile['tv'])) {
if($txt = prepare_text($a->profile['tv'])) {
$o .= <<< EOT
<div id="advanced-profile-tv-wrapper" >
<div id="advanced-profile-tv-text">Television:</div>
@ -179,7 +179,7 @@ $o .= <<< EOT
EOT;
}
if($txt = bbcode($a->profile['film'])) {
if($txt = prepare_text($a->profile['film'])) {
$o .= <<< EOT
<div id="advanced-profile-film-wrapper" >
<div id="advanced-profile-film-text">Film/dance/culture/entertainment:</div>
@ -190,7 +190,7 @@ $o .= <<< EOT
EOT;
}
if($txt = bbcode($a->profile['romance'])) {
if($txt = prepare_text($a->profile['romance'])) {
$o .= <<< EOT
<div id="advanced-profile-romance-wrapper" >
<div id="advanced-profile-romance-text">Love/romance:</div>
@ -201,7 +201,7 @@ $o .= <<< EOT
EOT;
}
if($txt = bbcode($a->profile['work'])) {
if($txt = prepare_text($a->profile['work'])) {
$o .= <<< EOT
<div id="advanced-profile-work-wrapper" >
<div id="advanced-profile-work-text">Work/employment:</div>
@ -212,7 +212,7 @@ $o .= <<< EOT
EOT;
}
if($txt = bbcode($a->profile['education'])) {
if($txt = prepare_text($a->profile['education'])) {
$o .= <<< EOT
<div id="advanced-profile-education-wrapper" >
<div id="advanced-profile-education-text">School/education:</div>

View file

@ -263,6 +263,11 @@ $a->strings['Delete message'] = 'Nachricht löschen';
$a->strings['Send Reply'] = 'Antwort senden';
$a->strings['Normal View'] = 'Normale Ansicht';
$a->strings['New Item View'] = 'Neue Einträge';
$a->strings['Share'] = 'Share';
$a->strings['Insert YouTube video'] = 'YouTube Video einfügen';
$a->strings['Set your location'] = 'Deinen Standort festlegen';
$a->strings['Clear browser location'] = 'Browser Standort leeren';
$a->strings['Permission settings'] = 'Berechtigungseinstellungen';
$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['No such group'] = 'Es gibt keine solche Gruppe';

View file

@ -2,7 +2,7 @@
<base href="$baseurl" />
<meta name="generator" content="$generator" />
<link rel="stylesheet" type="text/css" href="$stylesheet" media="all" />
<link rel="shortcut icon" href="$baseurl/images/ff-32.jpg" />
<link rel="shortcut icon" href="$baseurl/images/friendika-32.png" />
<!--[if IE]>
<script type="text/javascript" src="http://html5shiv.googlecode.com/svn/trunk/html5.js"></script>

View file

@ -7,7 +7,7 @@
<body>
<table style="border:1px solid #ccc">
<tbody>
<tr><td colspan="2" style="background:#3b5998; color:#FFFFFF; font-weight:bold; font-family:'lucida grande', tahoma, verdana,arial, sans-serif; padding: 4px 8px; vertical-align: middle; font-size:16px; letter-spacing: -0.03em; text-align: left;"><img style="width:32px;height:32px;" src='$siteurl/images/ff-32.jpg'><span style="padding:7px;">Friendika</span></td></tr>
<tr><td colspan="2" style="background:#3b5998; color:#FFFFFF; font-weight:bold; font-family:'lucida grande', tahoma, verdana,arial, sans-serif; padding: 4px 8px; vertical-align: middle; font-size:16px; letter-spacing: -0.03em; text-align: left;"><img style="width:32px;height:32px;" src='$siteurl/images/friendika-32.png'><span style="padding:7px;">Friendika</span></td></tr>
<tr><td style="padding-top:22px;" colspan="2">$from sent you a new private message at $siteName.</td></tr>

View file

@ -112,8 +112,7 @@ $o .= <<< EOT
<div id="advanced-profile-religion-end"></div>
EOT;
}
if($txt = bbcode($a->profile['about'])) {
if($txt = prepare_text($a->profile['about'])) {
$o .= <<< EOT
<div id="advanced-profile-about-wrapper" >
<div id="advanced-profile-about-text">About:</div>
@ -124,7 +123,7 @@ $o .= <<< EOT
EOT;
}
if($txt = bbcode($a->profile['interest'])) {
if($txt = prepare_text($a->profile['interest'])) {
$o .= <<< EOT
<div id="advanced-profile-interest-wrapper" >
<div id="advanced-profile-interest-text">Hobbies/Interests:</div>
@ -135,7 +134,7 @@ $o .= <<< EOT
EOT;
}
if($txt = bbcode($a->profile['contact'])) {
if($txt = prepare_text($a->profile['contact'])) {
$o .= <<< EOT
<div id="advanced-profile-contact-wrapper" >
<div id="advanced-profile-contact-text">Contact information and Social Networks:</div>
@ -146,7 +145,7 @@ $o .= <<< EOT
EOT;
}
if($txt = bbcode($a->profile['music'])) {
if($txt = prepare_text($a->profile['music'])) {
$o .= <<< EOT
<div id="advanced-profile-music-wrapper" >
<div id="advanced-profile-music-text">Musical interests:</div>
@ -157,7 +156,7 @@ $o .= <<< EOT
EOT;
}
if($txt = bbcode($a->profile['book'])) {
if($txt = prepare_text($a->profile['book'])) {
$o .= <<< EOT
<div id="advanced-profile-book-wrapper" >
<div id="advanced-profile-book-text">Books, literature:</div>
@ -168,7 +167,7 @@ $o .= <<< EOT
EOT;
}
if($txt = bbcode($a->profile['tv'])) {
if($txt = prepare_text($a->profile['tv'])) {
$o .= <<< EOT
<div id="advanced-profile-tv-wrapper" >
<div id="advanced-profile-tv-text">Television:</div>
@ -179,7 +178,7 @@ $o .= <<< EOT
EOT;
}
if($txt = bbcode($a->profile['film'])) {
if($txt = prepare_text($a->profile['film'])) {
$o .= <<< EOT
<div id="advanced-profile-film-wrapper" >
<div id="advanced-profile-film-text">Film/dance/culture/entertainment:</div>
@ -190,7 +189,7 @@ $o .= <<< EOT
EOT;
}
if($txt = bbcode($a->profile['romance'])) {
if($txt = prepare_text($a->profile['romance'])) {
$o .= <<< EOT
<div id="advanced-profile-romance-wrapper" >
<div id="advanced-profile-romance-text">Love/romance:</div>
@ -201,7 +200,7 @@ $o .= <<< EOT
EOT;
}
if($txt = bbcode($a->profile['work'])) {
if($txt = prepare_text($a->profile['work'])) {
$o .= <<< EOT
<div id="advanced-profile-work-wrapper" >
<div id="advanced-profile-work-text">Work/employment:</div>
@ -212,7 +211,7 @@ $o .= <<< EOT
EOT;
}
if($txt = bbcode($a->profile['education'])) {
if($txt = prepare_text($a->profile['education'])) {
$o .= <<< EOT
<div id="advanced-profile-education-wrapper" >
<div id="advanced-profile-education-text">School/education:</div>

View file

@ -2,7 +2,7 @@
<base href="$baseurl" />
<meta name="generator" content="$generator" />
<link rel="stylesheet" type="text/css" href="$stylesheet" media="all" />
<link rel="shortcut icon" href="$baseurl/images/ff-32.jpg" />
<link rel="shortcut icon" href="$baseurl/images/friendika-32.png" />
<!--[if IE]>
<script type="text/javascript" src="http://html5shiv.googlecode.com/svn/trunk/html5.js"></script>

View file

@ -1,60 +0,0 @@
<div id="profile-jot-wrapper" >
<div id="profile-jot-banner-wrapper">
<div id="profile-jot-desc" >&nbsp;</div>
<div id="character-counter" class="grey"></div>
</div>
<div id="profile-jot-banner-end"></div>
<form id="profile-jot-form" action="item" method="post" >
<input type="hidden" name="type" value="wall" />
<input type="hidden" name="profile_uid" value="$profile_uid" />
<input type="hidden" name="return" value="$return_path" />
<input type="hidden" name="location" id="jot-location" value="$defloc" />
<input type="hidden" name="coord" id="jot-coord" value="" />
<textarea rows="5" cols="64" class="profile-jot-text" id="profile-jot-text" name="body" ></textarea>
<div id="profile-jot-submit-wrapper" >
<input type="submit" id="profile-jot-submit" name="submit" value="Share" />
<div id="profile-upload-wrapper" style="display: $visitor;" >
<div id="wall-image-upload-div" ><img id="wall-image-upload" src="images/camera-icon.gif" alt="Upload Photo" title="Upload Photo" /></div>
</div>
<div id="profile-link-wrapper" style="display: $visitor;" ondragenter="linkdropper(event);" ondragover="linkdropper(event);" ondrop="linkdrop(event);" >
<img id="profile-link" src="images/link-icon.gif" alt="Insert web link" title="Insert web link" ondragenter="return linkdropper(event);" ondragover="return linkdropper(event);" ondrop="linkdrop(event);" onclick="jotGetLink();" />
</div>
<div id="profile-youtube-wrapper" style="display: $visitor;" >
<img id="profile-video" src="images/youtube_icon.gif" alt="Insert YouTube video" title="Insert YouTube video" onclick="jotGetVideo();" />
</div>
<div id="profile-location-wrapper" style="display: $visitor;" >
<img id="profile-location" src="images/globe.gif" alt="Set your location" title="Set your location" onclick="jotGetLocation();" />
</div>
<div id="profile-nolocation-wrapper" style="display: none;" >
<img id="profile-nolocation" src="images/noglobe.gif" alt="Clear Browser Location" title="Clear Browser Location" onclick="jotClearLocation();" />
</div>
<div id="profile-jot-plugin-wrapper" >
$jotplugins
</div>
<div id="profile-rotator-wrapper" style="display: $visitor;" >
<img id="profile-rotator" src="images/rotator.gif" alt="Please wait" title="Please wait" style="display: none;" />
</div>
<div id="profile-jot-perms" class="profile-jot-perms" style="display: $visitor;" ><img id="jot-perms-icon" src="images/$lockstate_icon.gif" alt="Permission Settings" title="Permission Settings" onClick="openClose('profile-jot-acl-wrapper'); openClose('profile-jot-email-wrapper'); openClose('profile-jot-networks');" />$bang</div>
<div id="profile-jot-perms-end"></div>
<div id="profile-jot-email-wrapper" style="display: none;" >
<div id="profile-jot-email-label">$emailcc</div><input type="text" name="emailcc" id="profile-jot-email" title="$emtitle">
<div id="profile-jot-email-end"></div>
</div>
<div id="profile-jot-networks" style="display: none;" >
$jotnets
</div>
<div id="profile-jot-networks-end"></div>
<div id="profile-jot-acl-wrapper" style="display: none;" >$acl</div>
</div>
<div id="profile-jot-end"></div>
</form>
</div>

View file

@ -7,7 +7,7 @@
<body>
<table style="border:1px solid #ccc">
<tbody>
<tr><td colspan="2" style="background:#3b5998; color:#FFFFFF; font-weight:bold; font-family:'lucida grande', tahoma, verdana,arial, sans-serif; padding: 4px 8px; vertical-align: middle; font-size:16px; letter-spacing: -0.03em; text-align: left;"><img style="width:32px;height:32px;" src='$siteurl/images/ff-32.jpg'><span style="padding:7px;">Friendika</span></td></tr>
<tr><td colspan="2" style="background:#3b5998; color:#FFFFFF; font-weight:bold; font-family:'lucida grande', tahoma, verdana,arial, sans-serif; padding: 4px 8px; vertical-align: middle; font-size:16px; letter-spacing: -0.03em; text-align: left;"><img style="width:32px;height:32px;" src='$siteurl/images/friendika-32.png'><span style="padding:7px;">Friendika</span></td></tr>
<tr><td style="padding-top:22px;" colspan="2">$from t'a envoyŽ un message ˆ $siteName.</td></tr>

View file

@ -113,7 +113,7 @@ $o .= <<< EOT
EOT;
}
if($txt = bbcode($a->profile['about'])) {
if($txt = prepare_text($a->profile['about'])) {
$o .= <<< EOT
<div id="advanced-profile-about-wrapper" >
<div id="advanced-profile-about-text">About:</div>
@ -124,7 +124,7 @@ $o .= <<< EOT
EOT;
}
if($txt = bbcode($a->profile['interest'])) {
if($txt = prepare_text($a->profile['interest'])) {
$o .= <<< EOT
<div id="advanced-profile-interest-wrapper" >
<div id="advanced-profile-interest-text">Hobbies/Interests:</div>
@ -135,7 +135,7 @@ $o .= <<< EOT
EOT;
}
if($txt = bbcode($a->profile['contact'])) {
if($txt = prepare_text($a->profile['contact'])) {
$o .= <<< EOT
<div id="advanced-profile-contact-wrapper" >
<div id="advanced-profile-contact-text">Contact information and Social Networks:</div>
@ -146,7 +146,7 @@ $o .= <<< EOT
EOT;
}
if($txt = bbcode($a->profile['music'])) {
if($txt = prepare_text($a->profile['music'])) {
$o .= <<< EOT
<div id="advanced-profile-music-wrapper" >
<div id="advanced-profile-music-text">Musical interests:</div>
@ -157,7 +157,7 @@ $o .= <<< EOT
EOT;
}
if($txt = bbcode($a->profile['book'])) {
if($txt = prepare_text($a->profile['book'])) {
$o .= <<< EOT
<div id="advanced-profile-book-wrapper" >
<div id="advanced-profile-book-text">Books, literature:</div>
@ -168,7 +168,7 @@ $o .= <<< EOT
EOT;
}
if($txt = bbcode($a->profile['tv'])) {
if($txt = prepare_text($a->profile['tv'])) {
$o .= <<< EOT
<div id="advanced-profile-tv-wrapper" >
<div id="advanced-profile-tv-text">Television:</div>
@ -179,7 +179,7 @@ $o .= <<< EOT
EOT;
}
if($txt = bbcode($a->profile['film'])) {
if($txt = prepare_text($a->profile['film'])) {
$o .= <<< EOT
<div id="advanced-profile-film-wrapper" >
<div id="advanced-profile-film-text">Film/dance/culture/entertainment:</div>
@ -190,7 +190,7 @@ $o .= <<< EOT
EOT;
}
if($txt = bbcode($a->profile['romance'])) {
if($txt = prepare_text($a->profile['romance'])) {
$o .= <<< EOT
<div id="advanced-profile-romance-wrapper" >
<div id="advanced-profile-romance-text">Love/romance:</div>
@ -201,7 +201,7 @@ $o .= <<< EOT
EOT;
}
if($txt = bbcode($a->profile['work'])) {
if($txt = prepare_text($a->profile['work'])) {
$o .= <<< EOT
<div id="advanced-profile-work-wrapper" >
<div id="advanced-profile-work-text">Work/employment:</div>
@ -212,7 +212,7 @@ $o .= <<< EOT
EOT;
}
if($txt = bbcode($a->profile['education'])) {
if($txt = prepare_text($a->profile['education'])) {
$o .= <<< EOT
<div id="advanced-profile-education-wrapper" >
<div id="advanced-profile-education-text">School/education:</div>

View file

@ -250,6 +250,11 @@ $a->strings['Delete message'] = 'Effacer message';
$a->strings['Send Reply'] = 'Répondre';
$a->strings['Normal View'] = 'Vue normale';
$a->strings['New Item View'] = 'Vue des nouveautés';
$a->strings['Share'] = 'Share';
$a->strings['Insert YouTube video'] = 'Insert YouTube video';
$a->strings['Set your location'] = 'Set your location';
$a->strings['Clear browser location'] = 'Clear browser location';
$a->strings['Permission settings'] = 'Permission settings';
$a->strings['No such group'] = 'Groupe inexistant';
$a->strings['Group is empty'] = 'Groupe vide';
$a->strings['Group: '] = 'Groupe: ';

View file

@ -2,7 +2,7 @@
<base href="$baseurl" />
<meta name="generator" content="$generator" />
<link rel="stylesheet" type="text/css" href="$stylesheet" media="all" />
<link rel="shortcut icon" href="$baseurl/images/ff-32.jpg" />
<link rel="shortcut icon" href="$baseurl/images/friendika-32.png" />
<!--[if IE]>
<script type="text/javascript" src="http://html5shiv.googlecode.com/svn/trunk/html5.js"></script>

View file

@ -1,61 +0,0 @@
<div id="profile-jot-wrapper" >
<div id="profile-jot-banner-wrapper">
<div id="profile-jot-desc" >&nbsp;</div>
<div id="character-counter" class="grey"></div>
</div>
<div id="profile-jot-banner-end"></div>
<form id="profile-jot-form" action="item" method="post" >
<input type="hidden" name="type" value="wall" />
<input type="hidden" name="profile_uid" value="$profile_uid" />
<input type="hidden" name="return" value="$return_path" />
<input type="hidden" name="location" id="jot-location" value="$defloc" />
<input type="hidden" name="coord" id="jot-coord" value="" />
<textarea rows="5" cols="64" class="profile-jot-text" id="profile-jot-text" name="body" ></textarea>
<div id="profile-jot-submit-wrapper" >
<input type="submit" id="profile-jot-submit" name="submit" value="Condividi" />
<div id="profile-upload-wrapper" style="display: $visitor;" >
<div id="wall-image-upload-div" ><img id="wall-image-upload" src="images/camera-icon.gif" alt="Carica foto" title="Carica foto" /></div>
</div>
<div id="profile-link-wrapper" style="display: $visitor;" ondragenter="linkdropper(event);" ondragover="linkdropper(event);" ondrop="linkdrop(event);" >
<img id="profile-link" src="images/link-icon.gif" alt="Inserisci collegamento" title="Inserisci collegamento" ondragenter="return linkdropper(event);" ondragover="return linkdropper(event);" ondrop="linkdrop(event);" onclick="jotGetLink();" />
</div>
<div id="profile-youtube-wrapper" style="display: $visitor;" >
<img id="profile-video" src="images/youtube_icon.gif" alt="Inserisci video da YouTube" title="Inserisci video da YouTube" onclick="jotGetVideo();" />
</div>
<div id="profile-location-wrapper" style="display: $visitor;" >
<img id="profile-location" src="images/globe.gif" alt="Imposta la tua posizione" title="Imposta la tua posizione" onclick="jotGetLocation();" />
</div>
<div id="profile-nolocation-wrapper" style="display: none;" >
<img id="profile-nolocation" src="images/noglobe.gif" alt="Cancella la tua posizione data dal browser" title="Cancella la tua posizione data dal browser" onclick="jotClearLocation();" />
</div>
<div id="profile-jot-plugin-wrapper" >
$jotplugins
</div>
<div id="profile-rotator-wrapper" style="display: $visitor;" >
<img id="profile-rotator" src="images/rotator.gif" alt="Attendi" title="Attendi" style="display: none;" />
</div>
<div id="profile-jot-perms" class="profile-jot-perms" style="display: $visitor;" ><img id="jot-perms-icon" src="images/$lockstate_icon.gif" alt="Impostazione permessi" title="Impostazione permessi" onClick="openClose('profile-jot-acl-wrapper'); openClose('profile-jot-email-wrapper'); openClose('profile-jot-networks');" />$bang</div>
<div id="profile-jot-perms-end"></div>
<div id="profile-jot-email-wrapper" style="display: none;" >
<div id="profile-jot-email-label">$emailcc</div><input type="text" name="emailcc" id="profile-jot-email" title="$emtitle">
<div id="profile-jot-email-end"></div>
</div>
<div id="profile-jot-networks" style="display: none;" >
$jotnets
</div>
<div id="profile-jot-networks-end"></div>
<div id="profile-jot-acl-wrapper" style="display: none;" >$acl</div>
</div>
<div id="profile-jot-end"></div>
</form>
</div>

View file

@ -7,7 +7,7 @@
<body>
<table style="border:1px solid #ccc">
<tbody>
<tr><td colspan="2" style="background:#3b5998; color:#FFFFFF; font-weight:bold; font-family:'lucida grande', tahoma, verdana,arial, sans-serif; padding: 4px 8px; vertical-align: middle; font-size:16px; letter-spacing: -0.03em; text-align: left;"><img style="width:32px;height:32px;" src='$siteurl/images/ff-32.jpg'><span style="padding:7px;">Friendika</span></td></tr>
<tr><td colspan="2" style="background:#3b5998; color:#FFFFFF; font-weight:bold; font-family:'lucida grande', tahoma, verdana,arial, sans-serif; padding: 4px 8px; vertical-align: middle; font-size:16px; letter-spacing: -0.03em; text-align: left;"><img style="width:32px;height:32px;" src='$siteurl/images/friendika-32.png'><span style="padding:7px;">Friendika</span></td></tr>
<tr><td style="padding-top:22px;" colspan="2">Hai ricevuto un nuovo messsaggio privato su $siteName da '$from'.</td></tr>

View file

@ -113,7 +113,7 @@ $o .= <<< EOT
EOT;
}
if($txt = bbcode($a->profile['about'])) {
if($txt = prepare_text($a->profile['about'])) {
$o .= <<< EOT
<div id="advanced-profile-about-wrapper" >
<div id="advanced-profile-about-text">Informazioni varie:</div>
@ -124,7 +124,7 @@ $o .= <<< EOT
EOT;
}
if($txt = bbcode($a->profile['interest'])) {
if($txt = prepare_text($a->profile['interest'])) {
$o .= <<< EOT
<div id="advanced-profile-interest-wrapper" >
<div id="advanced-profile-interest-text">Hobbie/Interessi:</div>
@ -135,7 +135,7 @@ $o .= <<< EOT
EOT;
}
if($txt = bbcode($a->profile['contact'])) {
if($txt = prepare_text($a->profile['contact'])) {
$o .= <<< EOT
<div id="advanced-profile-contact-wrapper" >
<div id="advanced-profile-contact-text">Informazioni su contatti e Social Networks:</div>
@ -146,7 +146,7 @@ $o .= <<< EOT
EOT;
}
if($txt = bbcode($a->profile['music'])) {
if($txt = prepare_text($a->profile['music'])) {
$o .= <<< EOT
<div id="advanced-profile-music-wrapper" >
<div id="advanced-profile-music-text">Interessi musicali:</div>
@ -157,7 +157,7 @@ $o .= <<< EOT
EOT;
}
if($txt = bbcode($a->profile['book'])) {
if($txt = prepare_text($a->profile['book'])) {
$o .= <<< EOT
<div id="advanced-profile-book-wrapper" >
<div id="advanced-profile-book-text">Libri, letteratura:</div>
@ -168,7 +168,7 @@ $o .= <<< EOT
EOT;
}
if($txt = bbcode($a->profile['tv'])) {
if($txt = prepare_text($a->profile['tv'])) {
$o .= <<< EOT
<div id="advanced-profile-tv-wrapper" >
<div id="advanced-profile-tv-text">Televisione:</div>
@ -179,7 +179,7 @@ $o .= <<< EOT
EOT;
}
if($txt = bbcode($a->profile['film'])) {
if($txt = prepare_text($a->profile['film'])) {
$o .= <<< EOT
<div id="advanced-profile-film-wrapper" >
<div id="advanced-profile-film-text">Film/danza/cultura/intrattenimento:</div>
@ -190,7 +190,7 @@ $o .= <<< EOT
EOT;
}
if($txt = bbcode($a->profile['romance'])) {
if($txt = prepare_text($a->profile['romance'])) {
$o .= <<< EOT
<div id="advanced-profile-romance-wrapper" >
<div id="advanced-profile-romance-text">Amore/romanticismo:</div>
@ -201,7 +201,7 @@ $o .= <<< EOT
EOT;
}
if($txt = bbcode($a->profile['work'])) {
if($txt = prepare_text($a->profile['work'])) {
$o .= <<< EOT
<div id="advanced-profile-work-wrapper" >
<div id="advanced-profile-work-text">Lavoro/impiego:</div>
@ -212,7 +212,7 @@ $o .= <<< EOT
EOT;
}
if($txt = bbcode($a->profile['education'])) {
if($txt = prepare_text($a->profile['education'])) {
$o .= <<< EOT
<div id="advanced-profile-education-wrapper" >
<div id="advanced-profile-education-text">Scuola/educazione:</div>

View file

@ -1038,6 +1038,11 @@ $a->strings['Invalid OpenID url'] = 'Url OpenID non valido';
$a->strings['Cannot use that email.'] = 'Questa email non si puo\' usare.';
$a->strings['Normal View'] = 'Vista normale';
$a->strings['New Item View'] = 'Vista Nuovi Elementi';
$a->strings['Share'] = 'Condividi';
$a->strings['Insert YouTube video'] = 'Inserisci video da YouTube';
$a->strings['Set your location'] = 'Imposta la tua posizione';
$a->strings['Clear browser location'] = 'Cancella la tua posizione data dal browser';
$a->strings['Permission settings'] = 'Impostazione permessi';
$a->strings[' Cannot change to that email.'] = 'Non puoi cambiare a quella email.';
$a->strings['Birthday:'] = 'Compleanno:';
$a->strings['Update now'] = 'Aggiorna adesso';

View file

@ -6,41 +6,42 @@
</div>
<div id="profile-jot-banner-end"></div>
<form id="profile-jot-form" action="item" method="post" >
<form id="profile-jot-form" action="$action" method="post" >
<input type="hidden" name="type" value="wall" />
<input type="hidden" name="profile_uid" value="$profile_uid" />
<input type="hidden" name="return" value="$return_path" />
<input type="hidden" name="location" id="jot-location" value="$defloc" />
<input type="hidden" name="coord" id="jot-coord" value="" />
<input type="hidden" name="post_id" value="$post_id" />
<textarea rows="5" cols="64" class="profile-jot-text" id="profile-jot-text" name="body" ></textarea>
<textarea rows="5" cols="64" class="profile-jot-text" id="profile-jot-text" name="body" >$content</textarea>
<div id="profile-jot-submit-wrapper" >
<input type="submit" id="profile-jot-submit" name="submit" value="Share" />
<input type="submit" id="profile-jot-submit" name="submit" value="$share" />
<div id="profile-upload-wrapper" style="display: $visitor;" >
<div id="wall-image-upload-div" ><img id="wall-image-upload" src="images/camera-icon.gif" alt="Upload Photo" title="Upload Photo" /></div>
<div id="wall-image-upload-div" ><img id="wall-image-upload" src="images/camera-icon.gif" alt="$upload" title="$upload" /></div>
</div>
<div id="profile-link-wrapper" style="display: $visitor;" ondragenter="linkdropper(event);" ondragover="linkdropper(event);" ondrop="linkdrop(event);" >
<img id="profile-link" src="images/link-icon.gif" alt="Insert web link" title="Insert web link" ondragenter="return linkdropper(event);" ondragover="return linkdropper(event);" ondrop="linkdrop(event);" onclick="jotGetLink();" />
<img id="profile-link" src="images/link-icon.gif" alt="$weblink" title="$weblink" ondragenter="return linkdropper(event);" ondragover="return linkdropper(event);" ondrop="linkdrop(event);" onclick="jotGetLink();" />
</div>
<div id="profile-youtube-wrapper" style="display: $visitor;" >
<img id="profile-video" src="images/youtube_icon.gif" alt="Insert YouTube video" title="Insert YouTube video" onclick="jotGetVideo();" />
<img id="profile-video" src="images/youtube_icon.gif" alt="$youtube" title="$youtube" onclick="jotGetVideo();" />
</div>
<div id="profile-location-wrapper" style="display: $visitor;" >
<img id="profile-location" src="images/globe.gif" alt="Set your location" title="Set your location" onclick="jotGetLocation();" />
<img id="profile-location" src="images/globe.gif" alt="$setloc" title="$setloc" onclick="jotGetLocation();" />
</div>
<div id="profile-nolocation-wrapper" style="display: none;" >
<img id="profile-nolocation" src="images/noglobe.gif" alt="Clear Browser Location" title="Clear Browser Location" onclick="jotClearLocation();" />
<img id="profile-nolocation" src="images/noglobe.gif" alt="$noloc" title="$noloc" onclick="jotClearLocation();" />
</div>
<div id="profile-jot-plugin-wrapper">
$jotplugins
</div>
<div id="profile-rotator-wrapper" style="display: $visitor;" >
<img id="profile-rotator" src="images/rotator.gif" alt="Please wait" title="Please wait" style="display: none;" />
<img id="profile-rotator" src="images/rotator.gif" alt="$wait" title="$wait" style="display: none;" />
</div>
<div id="profile-jot-perms" class="profile-jot-perms" style="display: $visitor;" ><img id="jot-perms-icon" src="images/$lockstate_icon.gif" alt="Permission Settings" title="Permission Settings" onClick="openClose('profile-jot-acl-wrapper'); openClose('profile-jot-email-wrapper'); openClose('profile-jot-networks');" />$bang</div>
<div id="profile-jot-perms" class="profile-jot-perms" style="display: $visitor;" ><img id="jot-perms-icon" src="images/$lockstate_icon.gif" alt="$permset" title="$permset" onClick="openClose('profile-jot-acl-wrapper'); openClose('profile-jot-email-wrapper'); openClose('profile-jot-networks');" />$bang</div>
<div id="profile-jot-perms-end"></div>
<div id="profile-jot-email-wrapper" style="display: none;" >
<div id="profile-jot-email-label">$emailcc</div><input type="text" name="emailcc" id="profile-jot-email" title="$emtitle">

View file

@ -6,6 +6,7 @@
$registertext
<p id="register-realpeople">$realpeople</p>
<p id="register-fill-desc">$fillwith</p>
<p id="register-fill-ext">$fillext</p>

Binary file not shown.

After

Width:  |  Height:  |  Size: 699 B

View file

@ -91,12 +91,13 @@ nav #site-location {
nav #banner {
display: block;
padding-top: 10px;
padding-top: 14px;
position: absolute;
}
nav #banner #logo-text a {
font-size: 44px;
font-size: 40px;
font-weight: bold;
margin-left: 3px;
color: #000000;
}
@ -318,7 +319,7 @@ div.wall-item-content-wrapper.shiny {
input#dfrn-url {
float: left;
background: url(ff-16.jpg) no-repeat;
background: url(friendika-16.png) no-repeat;
background-position: 2px center;
font-size: 17px;
padding-left: 21px;

Binary file not shown.

After

Width:  |  Height:  |  Size: 699 B

View file

@ -452,7 +452,7 @@ nav {
input#dfrn-url {
float: left;
background: url(ff-16.jpg) no-repeat;
background: url(friendika-16.png) no-repeat;
background-position: 2px center;
font-size: 17px;
padding-left: 21px;