Merge remote-tracking branch 'remotes/upstream/master'

* remotes/upstream/master: (21 commits)
  more logging on pubsub callbacks
  provide ability to autofriend ostatus accounts
  ostatus hub subscription issues
  better events-reminder theming
  png support for embedded private photos
  rev update
  png support: update database.sql, fix some typos, fix tinymce image browser
  Add support for PNG images with alpha
  fix a random profile error message
  events: fix select events query select events that starts before display start date and/or ends after display end date.
  more logging on subscribe_to_hub
  admin page untranslated strings, remove empty list element for update
  A few corrections in German translations.
  rev update
  set minchars to 2 for PM lookups too
  set minchars to 2 for contacts search
  contacts search autocomplete
  add email probe logging, limit typo check to main addon files and skip additional support files
  rev update
  named anchors on display page
  ...
This commit is contained in:
Simon L'nu 2012-06-08 23:58:46 -04:00
commit 62e9047b8d
37 changed files with 940 additions and 469 deletions

View file

@ -9,9 +9,9 @@ require_once('include/nav.php');
require_once('include/cache.php');
define ( 'FRIENDICA_PLATFORM', 'Friendica');
define ( 'FRIENDICA_VERSION', '3.0.1363' );
define ( 'FRIENDICA_VERSION', '3.0.1367' );
define ( 'DFRN_PROTOCOL_VERSION', '2.23' );
define ( 'DB_UPDATE_VERSION', 1148 );
define ( 'DB_UPDATE_VERSION', 1149 );
define ( 'EOL', "<br />\r\n" );
define ( 'ATOM_TIME', 'Y-m-d\TH:i:s\Z' );
@ -28,6 +28,11 @@ define ( 'ATOM_TIME', 'Y-m-d\TH:i:s\Z' );
*/
define ( 'JPEG_QUALITY', 100 );
/**
* $a->config['system']['png_quality'] from 0 (uncompressed) to 9
*/
define ( 'PNG_QUALITY', 8 );
/**
* Not yet used

View file

@ -745,6 +745,7 @@ CREATE TABLE IF NOT EXISTS `photo` (
`desc` text NOT NULL,
`album` char(255) NOT NULL,
`filename` char(255) NOT NULL,
`type` CHAR(128) NOT NULL DEFAULT 'image/jpeg',
`height` smallint(6) NOT NULL,
`width` smallint(6) NOT NULL,
`data` mediumblob NOT NULL,

View file

@ -7,14 +7,34 @@ class Photo {
private $width;
private $height;
private $valid;
private $type;
private $types;
public function __construct($data) {
/**
* supported mimetypes and corresponding file extensions
*/
static function supportedTypes() {
$t = array();
$t['image/jpeg'] ='jpg';
if (imagetypes() & IMG_PNG) $t['image/png'] = 'png';
return $t;
}
public function __construct($data, $type="image/jpeg") {
$this->types = $this->supportedTypes();
if (!array_key_exists($type,$this->types)){
$type='image/jpeg';
}
$this->valid = false;
$this->type = $type;
$this->image = @imagecreatefromstring($data);
if($this->image !== FALSE) {
$this->width = imagesx($this->image);
$this->height = imagesy($this->image);
$this->valid = true;
imagealphablending($this->image, false);
imagesavealpha($this->image, true);
}
}
@ -38,6 +58,13 @@ class Photo {
public function getImage() {
return $this->image;
}
public function getType() {
return $this->type;
}
public function getExt() {
return $this->types[$this->type];
}
public function scaleImage($max) {
@ -78,6 +105,9 @@ class Photo {
$dest = imagecreatetruecolor( $dest_width, $dest_height );
imagealphablending($dest, false);
imagesavealpha($dest, true);
if ($this->type=='image/png') imagefill($dest, 0, 0, imagecolorallocatealpha($dest, 0, 0, 0, 127)); // fill with alpha
imagecopyresampled($dest, $this->image, 0, 0, 0, 0, $dest_width, $dest_height, $width, $height);
if($this->image)
imagedestroy($this->image);
@ -134,6 +164,9 @@ class Photo {
$dest = imagecreatetruecolor( $dest_width, $dest_height );
imagealphablending($dest, false);
imagesavealpha($dest, true);
if ($this->type=='image/png') imagefill($dest, 0, 0, imagecolorallocatealpha($dest, 0, 0, 0, 127)); // fill with alpha
imagecopyresampled($dest, $this->image, 0, 0, 0, 0, $dest_width, $dest_height, $width, $height);
if($this->image)
imagedestroy($this->image);
@ -148,6 +181,9 @@ class Photo {
public function scaleImageSquare($dim) {
$dest = imagecreatetruecolor( $dim, $dim );
imagealphablending($dest, false);
imagesavealpha($dest, true);
if ($this->type=='image/png') imagefill($dest, 0, 0, imagecolorallocatealpha($dest, 0, 0, 0, 127)); // fill with alpha
imagecopyresampled($dest, $this->image, 0, 0, 0, 0, $dim, $dim, $this->width, $this->height);
if($this->image)
imagedestroy($this->image);
@ -159,6 +195,9 @@ class Photo {
public function cropImage($max,$x,$y,$w,$h) {
$dest = imagecreatetruecolor( $max, $max );
imagealphablending($dest, false);
imagesavealpha($dest, true);
if ($this->type=='image/png') imagefill($dest, 0, 0, imagecolorallocatealpha($dest, 0, 0, 0, 127)); // fill with alpha
imagecopyresampled($dest, $this->image, 0, 0, $x, $y, $max, $max, $w, $h);
if($this->image)
imagedestroy($this->image);
@ -168,20 +207,38 @@ class Photo {
}
public function saveImage($path) {
$quality = get_config('system','jpeg_quality');
if((! $quality) || ($quality > 100))
$quality = JPEG_QUALITY;
imagejpeg($this->image,$path,$quality);
switch($this->type){
case "image/png":
$quality = get_config('system','png_quality');
if((! $quality) || ($quality > 9))
$quality = PNG_QUALITY;
imagepng($this->image, $path, $quality);
break;
default:
$quality = get_config('system','jpeg_quality');
if((! $quality) || ($quality > 100))
$quality = JPEG_QUALITY;
imagejpeg($this->image,$path,$quality);
}
}
public function imageString() {
ob_start();
switch($this->type){
case "image/png":
$quality = get_config('system','png_quality');
if((! $quality) || ($quality > 9))
$quality = PNG_QUALITY;
imagepng($this->image,NULL, $quality);
break;
default:
$quality = get_config('system','jpeg_quality');
if((! $quality) || ($quality > 100))
$quality = JPEG_QUALITY;
$quality = get_config('system','jpeg_quality');
if((! $quality) || ($quality > 100))
$quality = JPEG_QUALITY;
imagejpeg($this->image,NULL,$quality);
imagejpeg($this->image,NULL,$quality);
}
$s = ob_get_contents();
ob_end_clean();
return $s;
@ -200,8 +257,8 @@ class Photo {
$guid = get_guid();
$r = q("INSERT INTO `photo`
( `uid`, `contact-id`, `guid`, `resource-id`, `created`, `edited`, `filename`, `album`, `height`, `width`, `data`, `scale`, `profile`, `allow_cid`, `allow_gid`, `deny_cid`, `deny_gid` )
VALUES ( %d, %d, '%s', '%s', '%s', '%s', '%s', '%s', %d, %d, '%s', %d, %d, '%s', '%s', '%s', '%s' )",
( `uid`, `contact-id`, `guid`, `resource-id`, `created`, `edited`, `filename`, type, `album`, `height`, `width`, `data`, `scale`, `profile`, `allow_cid`, `allow_gid`, `deny_cid`, `deny_gid` )
VALUES ( %d, %d, '%s', '%s', '%s', '%s', '%s', '%s', '%s', %d, %d, '%s', %d, %d, '%s', '%s', '%s', '%s' )",
intval($uid),
intval($cid),
dbesc($guid),
@ -209,6 +266,7 @@ class Photo {
dbesc(datetime_convert()),
dbesc(datetime_convert()),
dbesc(basename($filename)),
dbesc($this->type),
dbesc($album),
intval($this->height),
intval($this->width),
@ -230,6 +288,40 @@ class Photo {
}}
/**
* Guess image mimetype from filename or from Content-Type header
*
* @arg $filename string Image filename
* @arg $fromcurl boolean Check Content-Type header from curl request
*/
function guess_image_type($filename, $fromcurl=false) {
logger('Photo: guess_image_type: '.$filename . ($fromcurl?' from curl headers':''), LOGGER_DEBUG);
$type = null;
if ($fromcurl) {
$a = get_app();
$headers=array();
$h = explode("\n",$a->get_curl_headers());
foreach ($h as $l) {
list($k,$v) = array_map("trim", explode(":", trim($l), 2));
$headers[$k] = $v;
}
if (array_key_exists('Content-Type', $headers))
$type = $headers['Content-Type'];
}
if (is_null($type)){
$ext = pathinfo($filename, PATHINFO_EXTENSION);
$types = Photo::supportedTypes();
$type = "image/jpeg";
foreach ($types as $m=>$e){
if ($ext==$e) $type = $m;
}
}
logger('Photo: guess_image_type: type='.$type, LOGGER_DEBUG);
return $type;
}
function import_profile_photo($photo,$uid,$cid) {
$a = get_app();
@ -238,7 +330,12 @@ function import_profile_photo($photo,$uid,$cid) {
$filename = basename($photo);
$img_str = fetch_url($photo,true);
$img = new Photo($img_str);
// guess mimetype from headers or filename
$type = guess_image_type($photo,true);
$img = new Photo($img_str, $type);
if($img->is_valid()) {
$img->scaleImageSquare(175);
@ -266,9 +363,9 @@ function import_profile_photo($photo,$uid,$cid) {
$photo = $a->get_baseurl() . '/photo/' . $hash . '-4.jpg';
$thumb = $a->get_baseurl() . '/photo/' . $hash . '-5.jpg';
$micro = $a->get_baseurl() . '/photo/' . $hash . '-6.jpg';
$photo = $a->get_baseurl() . '/photo/' . $hash . '-4.' . $img->getExt();
$thumb = $a->get_baseurl() . '/photo/' . $hash . '-5.' . $img->getExt();
$micro = $a->get_baseurl() . '/photo/' . $hash . '-6.' . $img->getExt();
}
else
$photo_failure = true;

View file

@ -435,10 +435,13 @@ function probe_url($url, $mode = PROBE_NORMAL) {
$password = '';
openssl_private_decrypt(hex2bin($r[0]['pass']),$password,$x[0]['prvkey']);
$mbox = email_connect($mailbox,$r[0]['user'],$password);
if(! $mbox)
logger('probe_url: email_connect failed.');
unset($password);
}
if($mbox) {
$msgs = email_poll($mbox,$orig_url);
logger('probe_url: searching ' . $orig_url . ', ' . count($msgs) . ' messages found.', LOGGER_DEBUG);
if(count($msgs)) {
$addr = $orig_url;
$network = NETWORK_MAIL;

View file

@ -898,7 +898,7 @@
// params
$id = intval($a->argv[3]);
logger('API: api_statuses_repeat: '.$id);
logger('API: api_statuses_repeat: '.$id);
//$include_entities = (x($_REQUEST,'include_entities')?$_REQUEST['include_entities']:false);
@ -915,13 +915,15 @@
intval($id)
);
$_REQUEST['body'] = html_entity_decode("&#x2672; ", ENT_QUOTES, 'UTF-8')."[url=".$r[0]['reply_url']."]".$r[0]['reply_author']."[/url] \n".$r[0]['body'];
$_REQUEST['profile_uid'] = local_user();
$_REQUEST['type'] = 'wall';
$_REQUEST['api_source'] = true;
if ($r[0]['body'] != "") {
$_REQUEST['body'] = html_entity_decode("&#x2672; ", ENT_QUOTES, 'UTF-8')."[url=".$r[0]['reply_url']."]".$r[0]['reply_author']."[/url] \n".$r[0]['body'];
$_REQUEST['profile_uid'] = local_user();
$_REQUEST['type'] = 'wall';
$_REQUEST['api_source'] = true;
require_once('mod/item.php');
item_post($a);
require_once('mod/item.php');
item_post($a);
}
if ($type == 'xml')
$ok = "true";
@ -943,7 +945,7 @@
// params
$id = intval($a->argv[3]);
logger('API: api_statuses_destroy: '.$id);
logger('API: api_statuses_destroy: '.$id);
require_once('include/items.php');
drop_item($id, false);

View file

@ -94,6 +94,9 @@ function new_contact($uid,$url,$interactive = false) {
}
$writeable = ((($ret['network'] === NETWORK_OSTATUS) && ($ret['notify'])) ? 1 : 0);
$subhub = (($ret['network'] === NETWORK_OSTATUS) ? true : false);
$hidden = (($ret['network'] === NETWORK_MAIL) ? 1 : 0);
if($ret['network'] === NETWORK_MAIL) {
@ -116,8 +119,9 @@ function new_contact($uid,$url,$interactive = false) {
if(count($r)) {
// update contact
if($r[0]['rel'] == CONTACT_IS_FOLLOWER || ($network === NETWORK_DIASPORA && $r[0]['rel'] == CONTACT_IS_SHARING)) {
q("UPDATE `contact` SET `rel` = %d , `readonly` = 0 WHERE `id` = %d AND `uid` = %d LIMIT 1",
q("UPDATE `contact` SET `rel` = %d , `subhub` = %d, `readonly` = 0 WHERE `id` = %d AND `uid` = %d LIMIT 1",
intval(CONTACT_IS_FRIEND),
intval($subhub),
intval($r[0]['id']),
intval($uid)
);
@ -131,8 +135,8 @@ function new_contact($uid,$url,$interactive = false) {
// create contact record
$r = q("INSERT INTO `contact` ( `uid`, `created`, `url`, `nurl`, `addr`, `alias`, `batch`, `notify`, `poll`, `poco`, `name`, `nick`, `photo`, `network`, `pubkey`, `rel`, `priority`,
`writable`, `hidden`, `blocked`, `readonly`, `pending` )
VALUES ( %d, '%s', '%s', '%s', '%s', '%s', '%s', '%s', '%s', '%s', '%s', '%s', '%s', '%s', '%s', %d, %d, %d, %d, 0, 0, 0 ) ",
`writable`, `hidden`, `blocked`, `readonly`, `pending`, `subhub` )
VALUES ( %d, '%s', '%s', '%s', '%s', '%s', '%s', '%s', '%s', '%s', '%s', '%s', '%s', '%s', '%s', %d, %d, %d, %d, 0, 0, 0, %d ) ",
intval($uid),
dbesc(datetime_convert()),
dbesc($ret['url']),
@ -151,7 +155,8 @@ function new_contact($uid,$url,$interactive = false) {
intval($new_relation),
intval($ret['priority']),
intval($writeable),
intval($hidden)
intval($hidden),
intval($subhub)
);
}

View file

@ -1304,6 +1304,7 @@ function consume_feed($xml,$importer,&$contact, &$hub, $datedir = 0, $pass = 0)
$birthday = '';
$hubs = $feed->get_links('hub');
logger('consume_feed: hubs: ' . print_r($hubs,true), LOGGER_DATA);
if(count($hubs))
$hub = implode(',', $hubs);
@ -1346,7 +1347,11 @@ function consume_feed($xml,$importer,&$contact, &$hub, $datedir = 0, $pass = 0)
}
$img_str = fetch_url($photo_url,true);
$img = new Photo($img_str);
// guess mimetype from headers or filename
$type = guess_image_type($photo_url,true);
$img = new Photo($img_str, $type);
if($img->is_valid()) {
if($have_photo) {
q("DELETE FROM `photo` WHERE `resource-id` = '%s' AND `contact-id` = %d AND `uid` = %d",
@ -1372,9 +1377,9 @@ function consume_feed($xml,$importer,&$contact, &$hub, $datedir = 0, $pass = 0)
q("UPDATE `contact` SET `avatar-date` = '%s', `photo` = '%s', `thumb` = '%s', `micro` = '%s'
WHERE `uid` = %d AND `id` = %d LIMIT 1",
dbesc(datetime_convert()),
dbesc($a->get_baseurl() . '/photo/' . $hash . '-4.jpg'),
dbesc($a->get_baseurl() . '/photo/' . $hash . '-5.jpg'),
dbesc($a->get_baseurl() . '/photo/' . $hash . '-6.jpg'),
dbesc($a->get_baseurl() . '/photo/' . $hash . '-4.'.$img->getExt()),
dbesc($a->get_baseurl() . '/photo/' . $hash . '-5.'.$img->getExt()),
dbesc($a->get_baseurl() . '/photo/' . $hash . '-6.'.$img->getExt()),
intval($contact['uid']),
intval($contact['id'])
);
@ -2777,6 +2782,8 @@ function lose_sharer($importer,$contact,$datarray,$item) {
function subscribe_to_hub($url,$importer,$contact,$hubmode = 'subscribe') {
$a = get_app();
if(is_array($importer)) {
$r = q("SELECT `nickname` FROM `user` WHERE `uid` = %d LIMIT 1",
intval($importer['uid'])
@ -2807,7 +2814,10 @@ function subscribe_to_hub($url,$importer,$contact,$hubmode = 'subscribe') {
);
}
post_url($url,$params);
post_url($url,$params);
logger('subscribe_to_hub: returns: ' . $a->get_curl_code(), LOGGER_DEBUG);
return;
}
@ -2943,7 +2953,7 @@ function fix_private_photos($s,$uid, $item = null, $cid = 0) {
if(stristr($image , $site . '/photo/')) {
$replace = false;
$i = basename($image);
$i = str_replace('.jpg','',$i);
$i = str_replace(array('.jpg','.png'),array('',''),$i);
$x = strpos($i,'-');
if($x) {
$res = substr($i,$x+1);
@ -2985,7 +2995,7 @@ function fix_private_photos($s,$uid, $item = null, $cid = 0) {
}
if($replace) {
logger('fix_private_photos: replacing photo', LOGGER_DEBUG);
$s = str_replace($image, 'data:image/jpg;base64,' . base64_encode($r[0]['data']), $s);
$s = str_replace($image, 'data:' . $r[0]['type'] . ';base64,' . base64_encode($r[0]['data']), $s);
logger('fix_private_photos: replaced: ' . $s, LOGGER_DATA);
}
}

View file

@ -807,8 +807,11 @@ function scale_external_images($s,$include_link = true) {
if(stristr($mtch[1],$hostname))
continue;
$i = fetch_url($mtch[1]);
// guess mimetype from headers or filename
$type = guess_image_type($mtch[1],true);
if($i) {
$ph = new Photo($i);
$ph = new Photo($i, $type);
if($ph->is_valid()) {
$orig_width = $ph->getWidth();
$orig_height = $ph->getHeight();

4
include/oembed.php Normal file → Executable file
View file

@ -65,7 +65,8 @@ function oembed_fetch_url($embedurl){
}
function oembed_format_object($j){
$embedurl = $j->embedurl;
$a = get_app();
$embedurl = $j->embedurl;
$jhtml = oembed_iframe($j->embedurl,(isset($j->width) ? $j->width : null), (isset($j->height) ? $j->height : null) );
$ret="<span class='oembed ".$j->type."'>";
switch ($j->type) {
@ -78,6 +79,7 @@ function oembed_format_object($j){
$th=120; $tw = $th*$tr;
$tpl=get_markup_template('oembed_video.tpl');
$ret.=replace_macros($tpl, array(
'$baseurl' => $a->get_baseurl(),
'$embedurl'=>$embedurl,
'$escapedhtml'=>base64_encode($jhtml),
'$tw'=>$tw,

View file

@ -477,6 +477,9 @@ function onepoll_run($argv, $argc){
if($contact['network'] === NETWORK_DFRN || $contact['blocked'] || $contact['readonly'])
$hubmode = 'unsubscribe';
if($contact['network'] === NETWORK_OSTATUS && (! $contact['hub-verify']))
$hub_update = true;
if((strlen($hub)) && ($hub_update) && ($contact['rel'] != CONTACT_IS_FOLLOWER)) {
logger('poller: hub ' . $hubmode . ' : ' . $hub . ' contact name : ' . $contact['name'] . ' local user : ' . $importer['name']);
$hubs = explode(',', $hub);

View file

@ -284,7 +284,11 @@ function create_user($arr) {
$filename = basename($photo);
$img_str = fetch_url($photo,true);
$img = new Photo($img_str);
// guess mimetype from headers or filename
$type = guess_image_type($photo,true);
$img = new Photo($img_str, $type);
if($img->is_valid()) {
$img->scaleImageSquare(175);
@ -324,4 +328,4 @@ function create_user($arr) {
$result['user'] = $u;
return $result;
}
}

View file

@ -1,5 +1,6 @@
<?php
/* ACL selector json backend */
require_once("include/acl_selectors.php");
function acl_init(&$a){
@ -16,7 +17,8 @@ function acl_init(&$a){
// For use with jquery.autocomplete for private mail completion
if(x($_REQUEST,'query') && strlen($_REQUEST['query'])) {
$type = 'm';
if(! $type)
$type = 'm';
$search = $_REQUEST['query'];
}
@ -62,6 +64,18 @@ function acl_init(&$a){
);
$contact_count = (int)$r[0]['c'];
}
elseif ($type == 'a') {
// autocomplete for Contacts
$r = q("SELECT COUNT(`id`) AS c FROM `contact`
WHERE `uid` = %d AND `self` = 0
AND `pending` = 0 $sql_extra2" ,
intval(local_user())
);
$contact_count = (int)$r[0]['c'];
} else {
$contact_count = 0;
}
@ -120,11 +134,19 @@ function acl_init(&$a){
dbesc(NETWORK_DIASPORA)
);
}
elseif($type == 'a') {
$r = q("SELECT `id`, `name`, `nick`, `micro`, `network`, `url`, `attag` FROM `contact`
WHERE `uid` = %d AND `pending` = 0
$sql_extra2
ORDER BY `name` ASC ",
intval(local_user())
);
}
else
$r = array();
if($type == 'm') {
if($type == 'm' || $type == 'a') {
$x = array();
$x['query'] = $search;
$x['photos'] = array();

View file

@ -117,6 +117,9 @@ function admin_content(&$a) {
$t = get_markup_template("admin_aside.tpl");
$a->page['aside'] .= replace_macros( $t, array(
'$admin' => $aside,
'$admtxt' => t('Admin'),
'$plugadmtxt' => t('Plugin Features'),
'$logtxt' => t('Logs'),
'$h_pending' => t('User registrations waiting for confirmation'),
'$admurl'=> $a->get_baseurl(true)."/admin/"
));

View file

@ -43,6 +43,26 @@ function contacts_init(&$a) {
$a->page['aside'] .= findpeople_widget();
$a->page['aside'] .= networks_widget('contacts',$_GET['nets']);
$base = $a->get_baseurl();
$a->page['htmlhead'] .= '<script src="' . $a->get_baseurl(true) . '/library/jquery_ac/friendica.complete.js" ></script>';
$a->page['htmlhead'] .= <<< EOT
<script>$(document).ready(function() {
var a;
a = $("#contacts-search").autocomplete({
serviceUrl: '$base/acl',
minChars: 2,
width: 350,
});
a.setOptions({ params: { type: 'a' }});
});
</script>
EOT;
}
function contacts_post(&$a) {

4
mod/events.php Normal file → Executable file
View file

@ -230,8 +230,8 @@ function events_content(&$a) {
$r = q("SELECT `event`.*, `item`.`id` AS `itemid`,`item`.`plink`,
`item`.`author-name`, `item`.`author-avatar`, `item`.`author-link` FROM `event` LEFT JOIN `item` ON `item`.`event-id` = `event`.`id`
WHERE `event`.`uid` = %d
AND (( `adjust` = 0 AND `start` >= '%s' AND `start` <= '%s' )
OR ( `adjust` = 1 AND `start` >= '%s' AND `start` <= '%s' )) ",
AND (( `adjust` = 0 AND `finish` >= '%s' AND `start` <= '%s' )
OR ( `adjust` = 1 AND `finish` >= '%s' AND `start` <= '%s' )) ",
intval(local_user()),
dbesc($start),
dbesc($finish),

View file

@ -4,7 +4,9 @@
* @subpackage FileBrowser
* @author Fabio Comuni <fabrixxm@kirgroup.com>
*/
require_once('include/Photo.php');
/**
* @param App $a
*/
@ -43,14 +45,22 @@ function fbrowser_content($a){
$path[]=array($a->get_baseurl()."/fbrowser/image/".$a->argv[2]."/", $album);
}
$r = q("SELECT `resource-id`, `id`, `filename`, min(`scale`) AS `hiq`,max(`scale`) AS `loq`, `desc`
$r = q("SELECT `resource-id`, `id`, `filename`, type, min(`scale`) AS `hiq`,max(`scale`) AS `loq`, `desc`
FROM `photo` WHERE `uid` = %d $sql_extra
GROUP BY `resource-id` $sql_extra2",
intval(local_user())
);
function files1($rr){ global $a; return array( $a->get_baseurl() . '/photo/' . $rr['resource-id'] . '-' . $rr['hiq'] . '.jpg', template_escape($rr['filename']), $a->get_baseurl() . '/photo/' . $rr['resource-id'] . '-' . $rr['loq'] . '.jpg'); }
function files1($rr){
global $a;
$types = Photo::supportedTypes();
$ext = $types[$rr['type']];
return array(
$a->get_baseurl() . '/photo/' . $rr['resource-id'] . '-' . $rr['hiq'] . '.' .$ext,
template_escape($rr['filename']),
$a->get_baseurl() . '/photo/' . $rr['resource-id'] . '-' . $rr['loq'] . '.'. $ext
);
}
$files = array_map("files1", $r);
$tpl = get_markup_template("filebrowser.tpl");

View file

@ -25,6 +25,7 @@ function message_init(&$a) {
var a;
a = $("#recip").autocomplete({
serviceUrl: '$base/acl',
minChars: 2,
width: 350,
onSelect: function(value,data) {
$("#recip-complete").val(data);

View file

@ -28,7 +28,7 @@ function msearch_post(&$a) {
$results[] = array(
'name' => $rr['name'],
'url' => $a->get_baseurl() . '/profile/' . $rr['nickname'],
'photo' => $a->get_baseurl() . '/photo/avatar/' . $rr['uid'] . 'jpg',
'photo' => $a->get_baseurl() . '/photo/avatar/' . $rr['uid'] . '.jpg',
'tags' => str_replace(array(',',' '),array(' ',' '),$rr['pub_keywords'])
);
}

View file

@ -215,8 +215,11 @@ function parse_url_content(&$a) {
$i = fetch_url($image);
if($i) {
// guess mimetype from headers or filename
$type = guess_image_type($image,true);
require_once('include/Photo.php');
$ph = new Photo($i);
$ph = new Photo($i, $type);
if($ph->is_valid()) {
if($ph->getWidth() > 300 || $ph->getHeight() > 300) {
$ph->scaleImage(300);

View file

@ -1,6 +1,7 @@
<?php
require_once('include/security.php');
require_once('include/Photo.php');
function photo_init(&$a) {
@ -75,7 +76,7 @@ function photo_init(&$a) {
break;
}
$uid = str_replace('.jpg', '', $person);
$uid = str_replace(array('.jpg','.png'),array('',''), $person);
$r = q("SELECT * FROM `photo` WHERE `scale` = %d AND `uid` = %d AND `profile` = 1 LIMIT 1",
intval($resolution),
@ -83,9 +84,11 @@ function photo_init(&$a) {
);
if(count($r)) {
$data = $r[0]['data'];
$mimetype = $r[0]['type'];
}
if(! isset($data)) {
$data = file_get_contents($default);
$mimetype = 'image/jpeg';
}
}
else {
@ -95,7 +98,9 @@ function photo_init(&$a) {
*/
$resolution = 0;
$photo = str_replace('.jpg','',$photo);
foreach( Photo::supportedTypes() as $m=>$e){
$photo = str_replace(".$e",'',$photo);
}
if(substr($photo,-2,1) == '-') {
$resolution = intval(substr($photo,-1,1));
@ -119,6 +124,7 @@ function photo_init(&$a) {
if(count($r)) {
$data = $r[0]['data'];
$mimetype = $r[0]['type'];
}
else {
@ -136,6 +142,7 @@ function photo_init(&$a) {
);
if(count($r)) {
$data = file_get_contents('images/nosign.jpg');
$mimetype = 'image/jpeg';
$prvcachecontrol = true;
}
}
@ -148,12 +155,15 @@ function photo_init(&$a) {
case 4:
$data = file_get_contents('images/person-175.jpg');
$mimetype = 'image/jpeg';
break;
case 5:
$data = file_get_contents('images/person-80.jpg');
$mimetype = 'image/jpeg';
break;
case 6:
$data = file_get_contents('images/person-48.jpg');
$mimetype = 'image/jpeg';
break;
default:
killme();
@ -164,11 +174,11 @@ function photo_init(&$a) {
}
if(isset($customres) && $customres > 0 && $customres < 500) {
require_once('include/Photo.php');
$ph = new Photo($data);
$ph = new Photo($data, $mimetype);
if($ph->is_valid()) {
$ph->scaleImageSquare($customres);
$data = $ph->imageString();
$mimetype = $ph->getType();
}
}
@ -181,7 +191,7 @@ function photo_init(&$a) {
header_remove('pragma');
}
header("Content-type: image/jpeg");
header("Content-type: ".$mimetype);
if($prvcachecontrol) {

View file

@ -5,6 +5,7 @@ require_once('include/acl_selectors.php');
require_once('include/bbcode.php');
require_once('include/security.php');
function photos_init(&$a) {
@ -105,6 +106,8 @@ function photos_post(&$a) {
logger('mod_photos: REQUEST ' . print_r($_REQUEST,true), LOGGER_DATA);
logger('mod_photos: FILES ' . print_r($_FILES,true), LOGGER_DATA);
$phototypes = Photo::supportedTypes();
$can_post = false;
$visitor = 0;
@ -311,7 +314,7 @@ function photos_post(&$a) {
intval($page_owner_uid)
);
if(count($r)) {
$ph = new Photo($r[0]['data']);
$ph = new Photo($r[0]['data'], $r[0]['type']);
if($ph->is_valid()) {
$ph->rotate(270);
@ -362,6 +365,7 @@ function photos_post(&$a) {
intval($page_owner_uid)
);
if(count($p)) {
$ext = $phototypes[$p[0]['type']];
$r = q("UPDATE `photo` SET `desc` = '%s', `album` = '%s', `allow_cid` = '%s', `allow_gid` = '%s', `deny_cid` = '%s', `deny_gid` = '%s' WHERE `resource-id` = '%s' AND `uid` = %d",
dbesc($desc),
dbesc($albname),
@ -386,7 +390,7 @@ function photos_post(&$a) {
$title = '';
$uri = item_new_uri($a->get_hostname(),$page_owner_uid);
$arr = array();
$arr['uid'] = $page_owner_uid;
@ -412,7 +416,7 @@ function photos_post(&$a) {
$arr['origin'] = 1;
$arr['body'] = '[url=' . $a->get_baseurl() . '/photos/' . $a->data['user']['nickname'] . '/image/' . $p[0]['resource-id'] . ']'
. '[img]' . $a->get_baseurl() . '/photo/' . $p[0]['resource-id'] . '-' . $p[0]['scale'] . '.jpg' . '[/img]'
. '[img]' . $a->get_baseurl() . '/photo/' . $p[0]['resource-id'] . '-' . $p[0]['scale'] . '.'. $ext . '[/img]'
. '[/url]';
$item_id = item_store($arr);
@ -581,17 +585,17 @@ function photos_post(&$a) {
$arr['inform'] = $tagged[2];
$arr['origin'] = 1;
$arr['body'] = '[url=' . $tagged[1] . ']' . $tagged[0] . '[/url]' . ' ' . t('was tagged in a') . ' ' . '[url=' . $a->get_baseurl() . '/photos/' . $owner_record['nickname'] . '/image/' . $p[0]['resource-id'] . ']' . t('photo') . '[/url]' . ' ' . t('by') . ' ' . '[url=' . $owner_record['url'] . ']' . $owner_record['name'] . '[/url]' ;
$arr['body'] .= "\n\n" . '[url=' . $a->get_baseurl() . '/photos/' . $owner_record['nickname'] . '/image/' . $p[0]['resource-id'] . ']' . '[img]' . $a->get_baseurl() . "/photo/" . $p[0]['resource-id'] . '-' . $best . '.jpg' . '[/img][/url]' . "\n" ;
$arr['body'] .= "\n\n" . '[url=' . $a->get_baseurl() . '/photos/' . $owner_record['nickname'] . '/image/' . $p[0]['resource-id'] . ']' . '[img]' . $a->get_baseurl() . "/photo/" . $p[0]['resource-id'] . '-' . $best . '.' . $ext . '[/img][/url]' . "\n" ;
$arr['object'] = '<object><type>' . ACTIVITY_OBJ_PERSON . '</type><title>' . $tagged[0] . '</title><id>' . $tagged[1] . '/' . $tagged[0] . '</id>';
$arr['object'] .= '<link>' . xmlify('<link rel="alternate" type="text/html" href="' . $tagged[1] . '" />' . "\n");
if($tagged[3])
$arr['object'] .= xmlify('<link rel="photo" type="image/jpeg" href="' . $tagged[3]['photo'] . '" />' . "\n");
$arr['object'] .= xmlify('<link rel="photo" type="'.$p[0]['type'].'" href="' . $tagged[3]['photo'] . '" />' . "\n");
$arr['object'] .= '</link></object>' . "\n";
$arr['target'] = '<target><type>' . ACTIVITY_OBJ_PHOTO . '</type><title>' . $p[0]['desc'] . '</title><id>'
. $a->get_baseurl() . '/photos/' . $owner_record['nickname'] . '/image/' . $p[0]['resource-id'] . '</id>';
$arr['target'] .= '<link>' . xmlify('<link rel="alternate" type="text/html" href="' . $a->get_baseurl() . '/photos/' . $owner_record['nickname'] . '/image/' . $p[0]['resource-id'] . '" />' . "\n" . '<link rel="preview" type="image/jpeg" href="' . $a->get_baseurl() . "/photo/" . $p[0]['resource-id'] . '-' . $best . '.jpg' . '" />') . '</link></target>';
$arr['target'] .= '<link>' . xmlify('<link rel="alternate" type="text/html" href="' . $a->get_baseurl() . '/photos/' . $owner_record['nickname'] . '/image/' . $p[0]['resource-id'] . '" />' . "\n" . '<link rel="preview" type="'.$p[0]['type'].'" href="' . $a->get_baseurl() . "/photo/" . $p[0]['resource-id'] . '-' . $best . '.' . $ext . '" />') . '</link></target>';
$item_id = item_store($arr);
if($item_id) {
@ -662,7 +666,7 @@ function photos_post(&$a) {
$str_group_deny = perms2str(((is_array($_REQUEST['group_deny'])) ? $_REQUEST['group_deny'] : explode(',',$_REQUEST['group_deny'])));
$str_contact_deny = perms2str(((is_array($_REQUEST['contact_deny'])) ? $_REQUEST['contact_deny'] : explode(',',$_REQUEST['contact_deny'])));
$ret = array('src' => '', 'filename' => '', 'filesize' => 0);
$ret = array('src' => '', 'filename' => '', 'filesize' => 0, 'type' => '');
call_hooks('photo_post_file',$ret);
@ -670,15 +674,17 @@ function photos_post(&$a) {
$src = $ret['src'];
$filename = $ret['filename'];
$filesize = $ret['filesize'];
$type = $ret['type'];
}
else {
$src = $_FILES['userfile']['tmp_name'];
$filename = basename($_FILES['userfile']['name']);
$filesize = intval($_FILES['userfile']['size']);
$type = $_FILES['userfile']['type'];
}
if ($type=="") $type=guess_image_type($filename);
logger('photos: upload: received file: ' . $filename . ' as ' . $src . ' ' . $filesize . ' bytes', LOGGER_DEBUG);
logger('photos: upload: received file: ' . $filename . ' as ' . $src . ' ('. $type . ') ' . $filesize . ' bytes', LOGGER_DEBUG);
$maximagesize = get_config('system','maximagesize');
@ -701,7 +707,7 @@ function photos_post(&$a) {
logger('mod/photos.php: photos_post(): loading the contents of ' . $src , LOGGER_DEBUG);
$imagedata = @file_get_contents($src);
$ph = new Photo($imagedata);
$ph = new Photo($imagedata, $type);
if(! $ph->is_valid()) {
logger('mod/photos.php: photos_post(): unable to process image' , LOGGER_DEBUG);
@ -771,7 +777,7 @@ function photos_post(&$a) {
$arr['origin'] = 1;
$arr['body'] = '[url=' . $a->get_baseurl() . '/photos/' . $owner_record['nickname'] . '/image/' . $photo_hash . ']'
. '[img]' . $a->get_baseurl() . "/photo/{$photo_hash}-{$smallest}.jpg" . '[/img]'
. '[img]' . $a->get_baseurl() . "/photo/{$photo_hash}-{$smallest}.".$ph->getExt() . '[/img]'
. '[/url]';
$item_id = item_store($arr);
@ -814,8 +820,8 @@ function photos_content(&$a) {
notice( t('Public access denied.') . EOL);
return;
}
require_once('include/bbcode.php');
require_once('include/security.php');
require_once('include/conversation.php');
@ -825,6 +831,8 @@ function photos_content(&$a) {
return;
}
$phototypes = Photo::supportedTypes();
$_SESSION['photo_return'] = $a->cmd;
//
@ -991,7 +999,7 @@ function photos_content(&$a) {
$a->set_pager_itemspage(20);
}
$r = q("SELECT `resource-id`, `id`, `filename`, max(`scale`) AS `scale`, `desc` FROM `photo` WHERE `uid` = %d AND `album` = '%s'
$r = q("SELECT `resource-id`, `id`, `filename`, type, max(`scale`) AS `scale`, `desc` FROM `photo` WHERE `uid` = %d AND `album` = '%s'
AND `scale` <= 4 $sql_extra GROUP BY `resource-id` ORDER BY `created` DESC LIMIT %d , %d",
intval($owner_uid),
dbesc($album),
@ -1038,13 +1046,15 @@ function photos_content(&$a) {
$twist = 'rotleft';
else
$twist = 'rotright';
$ext = $phototypes[$rr['type']];
$o .= replace_macros($tpl,array(
'$id' => $rr['id'],
'$twist' => ' ' . $twist . rand(2,4),
'$photolink' => $a->get_baseurl() . '/photos/' . $a->data['user']['nickname'] . '/image/' . $rr['resource-id'],
'$phototitle' => t('View Photo'),
'$imgsrc' => $a->get_baseurl() . '/photo/' . $rr['resource-id'] . '-' . $rr['scale'] . '.jpg',
'$imgsrc' => $a->get_baseurl() . '/photo/' . $rr['resource-id'] . '-' . $rr['scale'] . '.' .$ext,
'$imgalt' => template_escape($rr['filename']),
'$desc'=> template_escape($rr['desc'])
));
@ -1158,9 +1168,9 @@ function photos_content(&$a) {
$prevlink = array($prevlink, '<div class="icon prev"></div>') ;
$photo = array(
'href' => $a->get_baseurl() . '/photo/' . $hires['resource-id'] . '-' . $hires['scale'] . '.jpg',
'href' => $a->get_baseurl() . '/photo/' . $hires['resource-id'] . '-' . $hires['scale'] . '.' . $phototypes[$hires['type']],
'title'=> t('View Full Size'),
'src' => $a->get_baseurl() . '/photo/' . $lores['resource-id'] . '-' . $lores['scale'] . '.jpg' . '?f=&_u=' . datetime_convert('','','','ymdhis')
'src' => $a->get_baseurl() . '/photo/' . $lores['resource-id'] . '-' . $lores['scale'] . '.' . $phototypes[$lores['type']] . '?f=&_u=' . datetime_convert('','','','ymdhis')
);
if($nextlink)
@ -1449,7 +1459,7 @@ function photos_content(&$a) {
$a->set_pager_itemspage(20);
}
$r = q("SELECT `resource-id`, `id`, `filename`, `album`, max(`scale`) AS `scale` FROM `photo`
$r = q("SELECT `resource-id`, `id`, `filename`, type, `album`, max(`scale`) AS `scale` FROM `photo`
WHERE `uid` = %d AND `album` != '%s' AND `album` != '%s'
$sql_extra GROUP BY `resource-id` ORDER BY `created` DESC LIMIT %d , %d",
intval($a->data['user']['uid']),
@ -1469,13 +1479,14 @@ function photos_content(&$a) {
$twist = 'rotleft';
else
$twist = 'rotright';
$ext = $phototypes[$rr['type']];
$photos[] = array(
'id' => $rr['id'],
'twist' => ' ' . $twist . rand(2,4),
'link' => $a->get_baseurl() . '/photos/' . $a->data['user']['nickname'] . '/image/' . $rr['resource-id'],
'title' => t('View Photo'),
'src' => $a->get_baseurl() . '/photo/' . $rr['resource-id'] . '-' . ((($rr['scale']) == 6) ? 4 : $rr['scale']) . '.jpg',
'src' => $a->get_baseurl() . '/photo/' . $rr['resource-id'] . '-' . ((($rr['scale']) == 6) ? 4 : $rr['scale']) . '.' . $ext,
'alt' => template_escape($rr['filename']),
'album' => array(
'link' => $a->get_baseurl() . '/photos/' . $a->data['user']['nickname'] . '/album/' . bin2hex($rr['album']),

View file

@ -53,7 +53,7 @@ function profile_photo_post(&$a) {
$base_image = $r[0];
$im = new Photo($base_image['data']);
$im = new Photo($base_image['data'], $base_image['type']);
if($im->is_valid()) {
$im->cropImage(175,$srcX,$srcY,$srcW,$srcH);
@ -108,7 +108,9 @@ function profile_photo_post(&$a) {
$src = $_FILES['userfile']['tmp_name'];
$filename = basename($_FILES['userfile']['name']);
$filesize = intval($_FILES['userfile']['size']);
$filetype = $_FILES['userfile']['type'];
if ($filetype=="") $filetype=guess_image_type($filename);
$maximagesize = get_config('system','maximagesize');
if(($maximagesize) && ($filesize > $maximagesize)) {
@ -118,7 +120,7 @@ function profile_photo_post(&$a) {
}
$imagedata = @file_get_contents($src);
$ph = new Photo($imagedata);
$ph = new Photo($imagedata, $filetype);
if(! $ph->is_valid()) {
notice( t('Unable to process image.') . EOL );
@ -193,7 +195,7 @@ function profile_photo_content(&$a) {
goaway($a->get_baseurl() . '/profiles');
return; // NOTREACHED
}
$ph = new Photo($r[0]['data']);
$ph = new Photo($r[0]['data'], $r[0]['type']);
profile_photo_crop_ui_head($a, $ph);
// go ahead as we have jus uploaded a new photo to crop
}
@ -214,7 +216,7 @@ function profile_photo_content(&$a) {
return $o;
}
else {
$filename = $a->config['imagecrop'] . '-' . $a->config['imagecrop_resolution'] . '.jpg';
$filename = $a->config['imagecrop'] . '-' . $a->config['imagecrop_resolution'] . '.'.$a->config['imagecrop_ext'];
$resolution = $a->config['imagecrop_resolution'];
$tpl = get_markup_template("cropbody.tpl");
$o .= replace_macros($tpl,array(
@ -268,6 +270,7 @@ function profile_photo_crop_ui_head(&$a, $ph){
$a->config['imagecrop'] = $hash;
$a->config['imagecrop_resolution'] = $smallest;
$a->config['imagecrop_ext'] = $ph->getExt();
$a->page['htmlhead'] .= get_markup_template("crophead.tpl");
return;
}}

View file

@ -47,22 +47,30 @@ function pubsub_init(&$a) {
$r = q("SELECT * FROM `user` WHERE `nickname` = '%s' AND `account_expired` = 0 LIMIT 1",
dbesc($nick)
);
if(! count($r))
if(! count($r)) {
logger('pubsub: local account not found: ' . $nick);
hub_return(false, '');
}
$owner = $r[0];
$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
$r = q("SELECT * FROM `contact` WHERE `id` = %d AND `uid` = %d
AND `blocked` = 0 AND `pending` = 0 $sql_extra LIMIT 1",
dbesc($hub_topic),
intval($contact_id),
intval($owner['uid'])
);
if(! count($r))
if(! count($r)) {
logger('pubsub: contact not found.');
hub_return(false, '');
}
if(! link_compare($hub_topic,$r[0]['poll'])) {
logger('pubsub: hub topic ' . $hub_topic . ' != ' . $r[0]['poll']);
// should abort but let's humour them.
}
$contact = $r[0];

View file

@ -170,14 +170,28 @@ function salmon_post(&$a) {
*
*/
$r = q("SELECT * FROM `contact` WHERE `network` = 'stat' AND ( `url` = '%s' OR `alias` = '%s')
$r = q("SELECT * FROM `contact` WHERE `network` = '%s' AND ( `url` = '%s' OR `alias` = '%s' )
AND `uid` = %d LIMIT 1",
dbesc(NETWORK_OSTATUS),
dbesc($author_link),
dbesc($author_link),
intval($importer['uid'])
);
if(! count($r)) {
logger('mod-salmon: Author unknown to us.');
if(get_pconfig($importer['uid'],'system','ostatus_autofriend')) {
require_once('include/follow.php');
$result = new_contact($importer['uid'],$author_link);
if($result['success']) {
$r = q("SELECT * FROM `contact` WHERE `network` = '%s' AND ( `url` = '%s' OR `alias` = '%s' )
AND `uid` = %d LIMIT 1",
dbesc(NETWORK_OSTATUS),
dbesc($author_link),
dbesc($author_link),
intval($importer['uid'])
);
}
}
}
// is this a follower? Or have we ignored the person?

View file

@ -57,17 +57,20 @@ function wall_upload_post(&$a) {
if(! x($_FILES,'userfile') && ! x($_FILES,'media'))
killme();
if(x($_FILES,'userfile')) {
$src = $_FILES['userfile']['tmp_name'];
$filename = basename($_FILES['userfile']['name']);
$filesize = intval($_FILES['userfile']['size']);
}
elseif(x($_FILES,'media')) {
$src = $_FILES['media']['tmp_name'];
$filename = basename($_FILES['media']['name']);
$filesize = intval($_FILES['media']['size']);
}
if(x($_FILES,'userfile')) {
$src = $_FILES['userfile']['tmp_name'];
$filename = basename($_FILES['userfile']['name']);
$filesize = intval($_FILES['userfile']['size']);
$filetype = $_FILES['userfile']['type'];
}
elseif(x($_FILES,'media')) {
$src = $_FILES['media']['tmp_name'];
$filename = basename($_FILES['media']['name']);
$filesize = intval($_FILES['media']['size']);
$filetype = $_FILES['media']['type'];
}
if ($filetype=="") $filetype=guess_image_type($filename);
$maximagesize = get_config('system','maximagesize');
if(($maximagesize) && ($filesize > $maximagesize)) {
@ -77,7 +80,7 @@ function wall_upload_post(&$a) {
}
$imagedata = @file_get_contents($src);
$ph = new Photo($imagedata);
$ph = new Photo($imagedata, $filetype);
if(! $ph->is_valid()) {
echo ( t('Unable to process image.') . EOL);
@ -123,19 +126,19 @@ function wall_upload_post(&$a) {
/* mod Waitman Gobble NO WARRANTY */
//if we get the signal then return the image url info in BBCODE, otherwise this outputs the info and bails (for the ajax image uploader on wall post)
if ($_REQUEST['hush']!='yeah') {
if ($_REQUEST['hush']!='yeah') {
/*existing code*/
if(local_user() && intval(get_pconfig(local_user(),'system','plaintext')))
echo "\n\n" . '[url=' . $a->get_baseurl() . '/photos/' . $page_owner_nick . '/image/' . $hash . '][img]' . $a->get_baseurl() . "/photo/{$hash}-{$smallest}.jpg[/img][/url]\n\n";
echo "\n\n" . '[url=' . $a->get_baseurl() . '/photos/' . $page_owner_nick . '/image/' . $hash . '][img]' . $a->get_baseurl() . "/photo/{$hash}-{$smallest}.".$ph->getExt()."[/img][/url]\n\n";
else
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 />";
echo '<br /><br /><a href="' . $a->get_baseurl() . '/photos/' . $page_owner_nick . '/image/' . $hash . '" ><img src="' . $a->get_baseurl() . "/photo/{$hash}-{$smallest}.".$ph->getExt()."\" alt=\"$basename\" /></a><br /><br />";
/*existing code*/
} else {
$m = '[url=' . $a->get_baseurl() . '/photos/' . $page_owner_nick . '/image/' . $hash . '][img]' . $a->get_baseurl() . "/photo/{$hash}-{$smallest}.jpg[/img][/url]";
$m = '[url=' . $a->get_baseurl() . '/photos/' . $page_owner_nick . '/image/' . $hash . '][img]' . $a->get_baseurl() . "/photo/{$hash}-{$smallest}.".$ph->getExt()."[/img][/url]";
return($m);
}
}
/* mod Waitman Gobble NO WARRANTY */
killme();

View file

@ -1,6 +1,6 @@
<?php
define( 'UPDATE_VERSION' , 1148 );
define( 'UPDATE_VERSION' , 1149 );
/**
*
@ -1283,3 +1283,9 @@ function update_1147() {
return UPDATE_SUCCESS ;
}
function update_1148() {
$r = q("ALTER TABLE photo ADD type CHAR(128) NOT NULL DEFAULT 'image/jpeg' AFTER filename");
if (!$r)
return UPDATE_FAILED;
return UPDATE_SUCCESS;
}

View file

@ -6,9 +6,9 @@
#, fuzzy
msgid ""
msgstr ""
"Project-Id-Version: 3.0.1363\n"
"Project-Id-Version: 3.0.1367\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2012-06-03 10:00-0700\n"
"POT-Creation-Date: 2012-06-07 10:00-0700\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: LANGUAGE <LL@li.org>\n"
@ -38,7 +38,7 @@ msgstr ""
#: ../../mod/fsuggest.php:78 ../../mod/events.php:138 ../../mod/api.php:26
#: ../../mod/api.php:31 ../../mod/photos.php:130 ../../mod/photos.php:920
#: ../../mod/editpost.php:10 ../../mod/install.php:151
#: ../../mod/notifications.php:66 ../../mod/contacts.php:125
#: ../../mod/notifications.php:66 ../../mod/contacts.php:145
#: ../../mod/settings.php:106 ../../mod/settings.php:537
#: ../../mod/settings.php:542 ../../mod/manage.php:86 ../../mod/network.php:6
#: ../../mod/notes.php:20 ../../mod/wallmessage.php:9
@ -48,14 +48,15 @@ msgstr ""
#: ../../mod/register.php:38 ../../mod/regmod.php:116 ../../mod/item.php:124
#: ../../mod/item.php:140 ../../mod/profile_photo.php:19
#: ../../mod/profile_photo.php:139 ../../mod/profile_photo.php:150
#: ../../mod/profile_photo.php:163 ../../mod/message.php:44
#: ../../mod/message.php:96 ../../mod/allfriends.php:9
#: ../../mod/profile_photo.php:163 ../../mod/message.php:45
#: ../../mod/message.php:97 ../../mod/allfriends.php:9
#: ../../mod/nogroup.php:25 ../../mod/wall_upload.php:53
#: ../../mod/follow.php:9 ../../mod/display.php:138 ../../mod/profiles.php:7
#: ../../mod/profiles.php:385 ../../mod/delegate.php:6
#: ../../mod/suggest.php:28 ../../mod/invite.php:13 ../../mod/invite.php:81
#: ../../mod/dfrn_confirm.php:53 ../../addon/facebook/facebook.php:503
#: ../../include/items.php:3297 ../../index.php:306
#: ../../addon/dav/layout.fnk.php:387 ../../include/items.php:3337
#: ../../index.php:306
msgid "Permission denied."
msgstr ""
@ -85,7 +86,7 @@ msgid "Return to contact editor"
msgstr ""
#: ../../mod/crepair.php:148 ../../mod/settings.php:557
#: ../../mod/settings.php:583 ../../mod/admin.php:656 ../../mod/admin.php:665
#: ../../mod/settings.php:583 ../../mod/admin.php:659 ../../mod/admin.php:668
msgid "Name"
msgstr ""
@ -126,12 +127,12 @@ msgstr ""
#: ../../mod/photos.php:1256 ../../mod/photos.php:1296
#: ../../mod/photos.php:1336 ../../mod/photos.php:1367
#: ../../mod/install.php:246 ../../mod/install.php:284
#: ../../mod/localtime.php:45 ../../mod/contacts.php:322
#: ../../mod/localtime.php:45 ../../mod/contacts.php:342
#: ../../mod/settings.php:555 ../../mod/settings.php:701
#: ../../mod/settings.php:762 ../../mod/settings.php:969
#: ../../mod/manage.php:109 ../../mod/group.php:85 ../../mod/admin.php:417
#: ../../mod/admin.php:653 ../../mod/admin.php:789 ../../mod/admin.php:988
#: ../../mod/admin.php:1075 ../../mod/profiles.php:554
#: ../../mod/manage.php:109 ../../mod/group.php:85 ../../mod/message.php:216
#: ../../mod/admin.php:420 ../../mod/admin.php:656 ../../mod/admin.php:792
#: ../../mod/admin.php:991 ../../mod/admin.php:1078 ../../mod/profiles.php:554
#: ../../mod/invite.php:119 ../../addon/facebook/facebook.php:605
#: ../../addon/yourls/yourls.php:76 ../../addon/ljpost/ljpost.php:93
#: ../../addon/nsfw/nsfw.php:57 ../../addon/planets/planets.php:158
@ -142,8 +143,9 @@ msgstr ""
#: ../../addon/impressum/impressum.php:82 ../../addon/blockem/blockem.php:57
#: ../../addon/qcomment/qcomment.php:61
#: ../../addon/openstreetmap/openstreetmap.php:70
#: ../../addon/mathjax/mathjax.php:42 ../../addon/editplain/editplain.php:84
#: ../../addon/blackout/blackout.php:98 ../../addon/gravatar/gravatar.php:86
#: ../../addon/libertree/libertree.php:90 ../../addon/mathjax/mathjax.php:42
#: ../../addon/editplain/editplain.php:84 ../../addon/blackout/blackout.php:98
#: ../../addon/gravatar/gravatar.php:86
#: ../../addon/pageheader/pageheader.php:55 ../../addon/ijpost/ijpost.php:93
#: ../../addon/jappixmini/jappixmini.php:302
#: ../../addon/statusnet/statusnet.php:278
@ -153,7 +155,7 @@ msgstr ""
#: ../../addon/statusnet/statusnet.php:353
#: ../../addon/statusnet/statusnet.php:561 ../../addon/tumblr/tumblr.php:90
#: ../../addon/numfriends/numfriends.php:85 ../../addon/gnot/gnot.php:88
#: ../../addon/wppost/wppost.php:109 ../../addon/showmore/showmore.php:48
#: ../../addon/wppost/wppost.php:110 ../../addon/showmore/showmore.php:48
#: ../../addon/piwik/piwik.php:89 ../../addon/twitter/twitter.php:180
#: ../../addon/twitter/twitter.php:209 ../../addon/twitter/twitter.php:381
#: ../../addon/irc/irc.php:55 ../../addon/blogger/blogger.php:102
@ -170,7 +172,8 @@ msgstr ""
msgid "Help:"
msgstr ""
#: ../../mod/help.php:34 ../../include/nav.php:86
#: ../../mod/help.php:34 ../../addon/dav/layout.fnk.php:112
#: ../../include/nav.php:86
msgid "Help"
msgstr ""
@ -229,11 +232,12 @@ msgstr ""
msgid "Create New Event"
msgstr ""
#: ../../mod/events.php:326
#: ../../mod/events.php:326 ../../addon/dav/layout.fnk.php:147
msgid "Previous"
msgstr ""
#: ../../mod/events.php:327 ../../mod/install.php:205
#: ../../addon/dav/layout.fnk.php:150
msgid "Next"
msgstr ""
@ -399,10 +403,10 @@ msgstr ""
msgid "was tagged in a"
msgstr ""
#: ../../mod/photos.php:583 ../../mod/like.php:127 ../../mod/tagger.php:70
#: ../../mod/photos.php:583 ../../mod/like.php:185 ../../mod/tagger.php:70
#: ../../addon/communityhome/communityhome.php:163
#: ../../view/theme/diabook/theme.php:570 ../../include/text.php:1316
#: ../../include/diaspora.php:1662 ../../include/conversation.php:53
#: ../../include/diaspora.php:1671 ../../include/conversation.php:53
#: ../../include/conversation.php:126
msgid "photo"
msgstr ""
@ -540,8 +544,8 @@ msgid "Share"
msgstr ""
#: ../../mod/photos.php:1277 ../../mod/editpost.php:104
#: ../../mod/wallmessage.php:145 ../../mod/message.php:214
#: ../../mod/message.php:408 ../../include/conversation.php:371
#: ../../mod/wallmessage.php:145 ../../mod/message.php:215
#: ../../mod/message.php:410 ../../include/conversation.php:371
#: ../../include/conversation.php:731 ../../include/conversation.php:1008
msgid "Please wait"
msgstr ""
@ -563,7 +567,7 @@ msgid "Preview"
msgstr ""
#: ../../mod/photos.php:1394 ../../mod/settings.php:618
#: ../../mod/settings.php:699 ../../mod/group.php:168 ../../mod/admin.php:660
#: ../../mod/settings.php:699 ../../mod/group.php:168 ../../mod/admin.php:663
#: ../../include/conversation.php:328 ../../include/conversation.php:609
msgid "Delete"
msgstr ""
@ -639,7 +643,7 @@ msgid "Edit"
msgstr ""
#: ../../mod/editpost.php:96 ../../mod/wallmessage.php:143
#: ../../mod/message.php:212 ../../mod/message.php:406
#: ../../mod/message.php:213 ../../mod/message.php:408
#: ../../include/conversation.php:990
msgid "Upload photo"
msgstr ""
@ -649,7 +653,7 @@ msgid "Attach file"
msgstr ""
#: ../../mod/editpost.php:98 ../../mod/wallmessage.php:144
#: ../../mod/message.php:213 ../../mod/message.php:407
#: ../../mod/message.php:214 ../../mod/message.php:409
#: ../../include/conversation.php:994
msgid "Insert web link"
msgstr ""
@ -779,7 +783,7 @@ msgstr ""
msgid "Disallowed profile URL."
msgstr ""
#: ../../mod/dfrn_request.php:555 ../../mod/contacts.php:102
#: ../../mod/dfrn_request.php:555 ../../mod/contacts.php:122
msgid "Failed to update contact record."
msgstr ""
@ -1218,8 +1222,8 @@ msgid "Discard"
msgstr ""
#: ../../mod/notifications.php:51 ../../mod/notifications.php:160
#: ../../mod/notifications.php:206 ../../mod/contacts.php:296
#: ../../mod/contacts.php:348
#: ../../mod/notifications.php:206 ../../mod/contacts.php:316
#: ../../mod/contacts.php:368
msgid "Ignore"
msgstr ""
@ -1244,7 +1248,7 @@ msgstr ""
msgid "Introductions"
msgstr ""
#: ../../mod/notifications.php:100 ../../mod/message.php:104
#: ../../mod/notifications.php:100 ../../mod/message.php:105
#: ../../include/nav.php:128
msgid "Messages"
msgstr ""
@ -1271,7 +1275,7 @@ msgid "suggested by %s"
msgstr ""
#: ../../mod/notifications.php:153 ../../mod/notifications.php:200
#: ../../mod/contacts.php:354
#: ../../mod/contacts.php:374
msgid "Hide this contact from others"
msgstr ""
@ -1284,7 +1288,7 @@ msgid "if applicable"
msgstr ""
#: ../../mod/notifications.php:157 ../../mod/notifications.php:204
#: ../../mod/admin.php:658
#: ../../mod/admin.php:661
msgid "Approve"
msgstr ""
@ -1393,303 +1397,303 @@ msgstr ""
msgid "Home Notifications"
msgstr ""
#: ../../mod/contacts.php:63 ../../mod/contacts.php:143
#: ../../mod/contacts.php:83 ../../mod/contacts.php:163
msgid "Could not access contact record."
msgstr ""
#: ../../mod/contacts.php:77
#: ../../mod/contacts.php:97
msgid "Could not locate selected profile."
msgstr ""
#: ../../mod/contacts.php:100
#: ../../mod/contacts.php:120
msgid "Contact updated."
msgstr ""
#: ../../mod/contacts.php:165
#: ../../mod/contacts.php:185
msgid "Contact has been blocked"
msgstr ""
#: ../../mod/contacts.php:165
#: ../../mod/contacts.php:185
msgid "Contact has been unblocked"
msgstr ""
#: ../../mod/contacts.php:179
#: ../../mod/contacts.php:199
msgid "Contact has been ignored"
msgstr ""
#: ../../mod/contacts.php:179
#: ../../mod/contacts.php:199
msgid "Contact has been unignored"
msgstr ""
#: ../../mod/contacts.php:195
#: ../../mod/contacts.php:215
msgid "Contact has been archived"
msgstr ""
#: ../../mod/contacts.php:195
#: ../../mod/contacts.php:215
msgid "Contact has been unarchived"
msgstr ""
#: ../../mod/contacts.php:208
#: ../../mod/contacts.php:228
msgid "Contact has been removed."
msgstr ""
#: ../../mod/contacts.php:238
#: ../../mod/contacts.php:258
#, php-format
msgid "You are mutual friends with %s"
msgstr ""
#: ../../mod/contacts.php:242
#: ../../mod/contacts.php:262
#, php-format
msgid "You are sharing with %s"
msgstr ""
#: ../../mod/contacts.php:247
#: ../../mod/contacts.php:267
#, php-format
msgid "%s is sharing with you"
msgstr ""
#: ../../mod/contacts.php:264
#: ../../mod/contacts.php:284
msgid "Private communications are not available for this contact."
msgstr ""
#: ../../mod/contacts.php:267
#: ../../mod/contacts.php:287
msgid "Never"
msgstr ""
#: ../../mod/contacts.php:271
#: ../../mod/contacts.php:291
msgid "(Update was successful)"
msgstr ""
#: ../../mod/contacts.php:271
#: ../../mod/contacts.php:291
msgid "(Update was not successful)"
msgstr ""
#: ../../mod/contacts.php:273
#: ../../mod/contacts.php:293
msgid "Suggest friends"
msgstr ""
#: ../../mod/contacts.php:277
#: ../../mod/contacts.php:297
#, php-format
msgid "Network type: %s"
msgstr ""
#: ../../mod/contacts.php:280 ../../include/contact_widgets.php:183
#: ../../mod/contacts.php:300 ../../include/contact_widgets.php:183
#, php-format
msgid "%d contact in common"
msgid_plural "%d contacts in common"
msgstr[0] ""
msgstr[1] ""
#: ../../mod/contacts.php:285
#: ../../mod/contacts.php:305
msgid "View all contacts"
msgstr ""
#: ../../mod/contacts.php:290 ../../mod/contacts.php:347
#: ../../mod/admin.php:662
#: ../../mod/contacts.php:310 ../../mod/contacts.php:367
#: ../../mod/admin.php:665
msgid "Unblock"
msgstr ""
#: ../../mod/contacts.php:290 ../../mod/contacts.php:347
#: ../../mod/admin.php:661
#: ../../mod/contacts.php:310 ../../mod/contacts.php:367
#: ../../mod/admin.php:664
msgid "Block"
msgstr ""
#: ../../mod/contacts.php:293
#: ../../mod/contacts.php:313
msgid "Toggle Blocked status"
msgstr ""
#: ../../mod/contacts.php:296 ../../mod/contacts.php:348
#: ../../mod/contacts.php:316 ../../mod/contacts.php:368
msgid "Unignore"
msgstr ""
#: ../../mod/contacts.php:299
#: ../../mod/contacts.php:319
msgid "Toggle Ignored status"
msgstr ""
#: ../../mod/contacts.php:303
#: ../../mod/contacts.php:323
msgid "Unarchive"
msgstr ""
#: ../../mod/contacts.php:303
#: ../../mod/contacts.php:323
msgid "Archive"
msgstr ""
#: ../../mod/contacts.php:306
#: ../../mod/contacts.php:326
msgid "Toggle Archive status"
msgstr ""
#: ../../mod/contacts.php:309
#: ../../mod/contacts.php:329
msgid "Repair"
msgstr ""
#: ../../mod/contacts.php:312
#: ../../mod/contacts.php:332
msgid "Advanced Contact Settings"
msgstr ""
#: ../../mod/contacts.php:320
#: ../../mod/contacts.php:340
msgid "Contact Editor"
msgstr ""
#: ../../mod/contacts.php:323
#: ../../mod/contacts.php:343
msgid "Profile Visibility"
msgstr ""
#: ../../mod/contacts.php:324
#: ../../mod/contacts.php:344
#, php-format
msgid ""
"Please choose the profile you would like to display to %s when viewing your "
"profile securely."
msgstr ""
#: ../../mod/contacts.php:325
#: ../../mod/contacts.php:345
msgid "Contact Information / Notes"
msgstr ""
#: ../../mod/contacts.php:326
#: ../../mod/contacts.php:346
msgid "Edit contact notes"
msgstr ""
#: ../../mod/contacts.php:331 ../../mod/contacts.php:522
#: ../../mod/contacts.php:351 ../../mod/contacts.php:542
#: ../../mod/viewcontacts.php:62 ../../mod/nogroup.php:40
#, php-format
msgid "Visit %s's profile [%s]"
msgstr ""
#: ../../mod/contacts.php:332
#: ../../mod/contacts.php:352
msgid "Block/Unblock contact"
msgstr ""
#: ../../mod/contacts.php:333
#: ../../mod/contacts.php:353
msgid "Ignore contact"
msgstr ""
#: ../../mod/contacts.php:334
#: ../../mod/contacts.php:354
msgid "Repair URL settings"
msgstr ""
#: ../../mod/contacts.php:335
#: ../../mod/contacts.php:355
msgid "View conversations"
msgstr ""
#: ../../mod/contacts.php:337
#: ../../mod/contacts.php:357
msgid "Delete contact"
msgstr ""
#: ../../mod/contacts.php:341
#: ../../mod/contacts.php:361
msgid "Last update:"
msgstr ""
#: ../../mod/contacts.php:342
#: ../../mod/contacts.php:362
msgid "Update public posts"
msgstr ""
#: ../../mod/contacts.php:344 ../../mod/admin.php:1133
#: ../../mod/contacts.php:364 ../../mod/admin.php:1136
msgid "Update now"
msgstr ""
#: ../../mod/contacts.php:351
#: ../../mod/contacts.php:371
msgid "Currently blocked"
msgstr ""
#: ../../mod/contacts.php:352
#: ../../mod/contacts.php:372
msgid "Currently ignored"
msgstr ""
#: ../../mod/contacts.php:353
#: ../../mod/contacts.php:373
msgid "Currently archived"
msgstr ""
#: ../../mod/contacts.php:354
#: ../../mod/contacts.php:374
msgid ""
"Replies/likes to your public posts <strong>may</strong> still be visible"
msgstr ""
#: ../../mod/contacts.php:407
#: ../../mod/contacts.php:427
msgid "Suggestions"
msgstr ""
#: ../../mod/contacts.php:410
#: ../../mod/contacts.php:430
msgid "Suggest potential friends"
msgstr ""
#: ../../mod/contacts.php:413 ../../mod/group.php:191
#: ../../mod/contacts.php:433 ../../mod/group.php:191
msgid "All Contacts"
msgstr ""
#: ../../mod/contacts.php:416
#: ../../mod/contacts.php:436
msgid "Show all contacts"
msgstr ""
#: ../../mod/contacts.php:419
#: ../../mod/contacts.php:439
msgid "Unblocked"
msgstr ""
#: ../../mod/contacts.php:422
#: ../../mod/contacts.php:442
msgid "Only show unblocked contacts"
msgstr ""
#: ../../mod/contacts.php:426
#: ../../mod/contacts.php:446
msgid "Blocked"
msgstr ""
#: ../../mod/contacts.php:429
#: ../../mod/contacts.php:449
msgid "Only show blocked contacts"
msgstr ""
#: ../../mod/contacts.php:433
#: ../../mod/contacts.php:453
msgid "Ignored"
msgstr ""
#: ../../mod/contacts.php:436
#: ../../mod/contacts.php:456
msgid "Only show ignored contacts"
msgstr ""
#: ../../mod/contacts.php:440
#: ../../mod/contacts.php:460
msgid "Archived"
msgstr ""
#: ../../mod/contacts.php:443
#: ../../mod/contacts.php:463
msgid "Only show archived contacts"
msgstr ""
#: ../../mod/contacts.php:447
#: ../../mod/contacts.php:467
msgid "Hidden"
msgstr ""
#: ../../mod/contacts.php:450
#: ../../mod/contacts.php:470
msgid "Only show hidden contacts"
msgstr ""
#: ../../mod/contacts.php:498
#: ../../mod/contacts.php:518
msgid "Mutual Friendship"
msgstr ""
#: ../../mod/contacts.php:502
#: ../../mod/contacts.php:522
msgid "is a fan of yours"
msgstr ""
#: ../../mod/contacts.php:506
#: ../../mod/contacts.php:526
msgid "you are a fan of"
msgstr ""
#: ../../mod/contacts.php:523 ../../mod/nogroup.php:41
#: ../../mod/contacts.php:543 ../../mod/nogroup.php:41
msgid "Edit contact"
msgstr ""
#: ../../mod/contacts.php:544 ../../view/theme/diabook/theme.php:129
#: ../../mod/contacts.php:564 ../../view/theme/diabook/theme.php:129
#: ../../include/nav.php:139
msgid "Contacts"
msgstr ""
#: ../../mod/contacts.php:548
#: ../../mod/contacts.php:568
msgid "Search your contacts"
msgstr ""
#: ../../mod/contacts.php:549 ../../mod/directory.php:57
#: ../../mod/contacts.php:569 ../../mod/directory.php:57
msgid "Finding: "
msgstr ""
#: ../../mod/contacts.php:550 ../../mod/directory.php:59
#: ../../mod/contacts.php:570 ../../mod/directory.php:59
#: ../../include/contact_widgets.php:33
msgid "Find"
msgstr ""
@ -1796,8 +1800,9 @@ msgstr ""
msgid "Remove account"
msgstr ""
#: ../../mod/settings.php:89 ../../mod/admin.php:748 ../../mod/admin.php:953
#: ../../addon/mathjax/mathjax.php:36 ../../view/theme/diabook/theme.php:643
#: ../../mod/settings.php:89 ../../mod/admin.php:751 ../../mod/admin.php:956
#: ../../addon/dav/layout.fnk.php:112 ../../addon/mathjax/mathjax.php:36
#: ../../view/theme/diabook/theme.php:643
#: ../../view/theme/diabook/theme.php:773 ../../include/nav.php:137
msgid "Settings"
msgstr ""
@ -2404,8 +2409,8 @@ msgstr ""
#: ../../mod/notes.php:63 ../../mod/filer.php:30
#: ../../addon/facebook/facebook.php:756
#: ../../addon/privacy_image_cache/privacy_image_cache.php:150
#: ../../include/text.php:652
#: ../../addon/privacy_image_cache/privacy_image_cache.php:178
#: ../../addon/dav/layout.fnk.php:418 ../../include/text.php:652
msgid "Save"
msgstr ""
@ -2414,7 +2419,7 @@ msgstr ""
msgid "Number of daily wall messages for %s exceeded. Message failed."
msgstr ""
#: ../../mod/wallmessage.php:56 ../../mod/message.php:65
#: ../../mod/wallmessage.php:56 ../../mod/message.php:66
msgid "No recipient selected."
msgstr ""
@ -2422,15 +2427,15 @@ msgstr ""
msgid "Unable to check your home location."
msgstr ""
#: ../../mod/wallmessage.php:62 ../../mod/message.php:72
#: ../../mod/wallmessage.php:62 ../../mod/message.php:73
msgid "Message could not be sent."
msgstr ""
#: ../../mod/wallmessage.php:65 ../../mod/message.php:75
#: ../../mod/wallmessage.php:65 ../../mod/message.php:76
msgid "Message collection failure."
msgstr ""
#: ../../mod/wallmessage.php:68 ../../mod/message.php:78
#: ../../mod/wallmessage.php:68 ../../mod/message.php:79
msgid "Message sent."
msgstr ""
@ -2438,12 +2443,12 @@ msgstr ""
msgid "No recipient."
msgstr ""
#: ../../mod/wallmessage.php:124 ../../mod/message.php:171
#: ../../mod/wallmessage.php:124 ../../mod/message.php:172
#: ../../include/conversation.php:943
msgid "Please enter a link URL:"
msgstr ""
#: ../../mod/wallmessage.php:131 ../../mod/message.php:199
#: ../../mod/wallmessage.php:131 ../../mod/message.php:200
msgid "Send Private Message"
msgstr ""
@ -2454,18 +2459,18 @@ msgid ""
"your site allow private mail from unknown senders."
msgstr ""
#: ../../mod/wallmessage.php:133 ../../mod/message.php:200
#: ../../mod/message.php:397
#: ../../mod/wallmessage.php:133 ../../mod/message.php:201
#: ../../mod/message.php:399
msgid "To:"
msgstr ""
#: ../../mod/wallmessage.php:134 ../../mod/message.php:205
#: ../../mod/message.php:399
#: ../../mod/wallmessage.php:134 ../../mod/message.php:206
#: ../../mod/message.php:401
msgid "Subject:"
msgstr ""
#: ../../mod/wallmessage.php:140 ../../mod/message.php:209
#: ../../mod/message.php:402 ../../mod/invite.php:113
#: ../../mod/wallmessage.php:140 ../../mod/message.php:210
#: ../../mod/message.php:404 ../../mod/invite.php:113
msgid "Your message:"
msgstr ""
@ -2730,7 +2735,7 @@ msgstr ""
msgid "Your invitation ID: "
msgstr ""
#: ../../mod/register.php:255 ../../mod/admin.php:418
#: ../../mod/register.php:255 ../../mod/admin.php:421
msgid "Registration"
msgstr ""
@ -2761,33 +2766,33 @@ msgstr ""
msgid "People Search"
msgstr ""
#: ../../mod/like.php:127 ../../mod/tagger.php:70
#: ../../mod/like.php:185 ../../mod/like.php:259 ../../mod/tagger.php:70
#: ../../addon/facebook/facebook.php:1572
#: ../../addon/communityhome/communityhome.php:158
#: ../../addon/communityhome/communityhome.php:167
#: ../../view/theme/diabook/theme.php:565
#: ../../view/theme/diabook/theme.php:574 ../../include/diaspora.php:1662
#: ../../view/theme/diabook/theme.php:574 ../../include/diaspora.php:1671
#: ../../include/conversation.php:48 ../../include/conversation.php:57
#: ../../include/conversation.php:121 ../../include/conversation.php:130
msgid "status"
msgstr ""
#: ../../mod/like.php:144 ../../addon/facebook/facebook.php:1576
#: ../../mod/like.php:202 ../../addon/facebook/facebook.php:1576
#: ../../addon/communityhome/communityhome.php:172
#: ../../view/theme/diabook/theme.php:579 ../../include/diaspora.php:1678
#: ../../view/theme/diabook/theme.php:579 ../../include/diaspora.php:1687
#: ../../include/conversation.php:65
#, php-format
msgid "%1$s likes %2$s's %3$s"
msgstr ""
#: ../../mod/like.php:146 ../../include/conversation.php:68
#: ../../mod/like.php:204 ../../include/conversation.php:68
#, php-format
msgid "%1$s doesn't like %2$s's %3$s"
msgstr ""
#: ../../mod/notice.php:15 ../../mod/viewsrc.php:15 ../../mod/admin.php:156
#: ../../mod/admin.php:697 ../../mod/admin.php:896 ../../mod/display.php:37
#: ../../mod/display.php:142 ../../include/items.php:3179
#: ../../mod/notice.php:15 ../../mod/viewsrc.php:15 ../../mod/admin.php:159
#: ../../mod/admin.php:700 ../../mod/admin.php:899 ../../mod/display.php:37
#: ../../mod/display.php:142 ../../include/items.php:3184
msgid "Item not found."
msgstr ""
@ -2940,67 +2945,67 @@ msgstr ""
msgid "New Message"
msgstr ""
#: ../../mod/message.php:69
#: ../../mod/message.php:70
msgid "Unable to locate contact information."
msgstr ""
#: ../../mod/message.php:119
#: ../../mod/message.php:120
msgid "Message deleted."
msgstr ""
#: ../../mod/message.php:149
#: ../../mod/message.php:150
msgid "Conversation removed."
msgstr ""
#: ../../mod/message.php:245
#: ../../mod/message.php:247
msgid "No messages."
msgstr ""
#: ../../mod/message.php:252
#: ../../mod/message.php:254
#, php-format
msgid "Unknown sender - %s"
msgstr ""
#: ../../mod/message.php:255
#: ../../mod/message.php:257
#, php-format
msgid "You and %s"
msgstr ""
#: ../../mod/message.php:258
#: ../../mod/message.php:260
#, php-format
msgid "%s and You"
msgstr ""
#: ../../mod/message.php:268 ../../mod/message.php:390
#: ../../mod/message.php:270 ../../mod/message.php:392
msgid "Delete conversation"
msgstr ""
#: ../../mod/message.php:271
#: ../../mod/message.php:273
msgid "D, d M Y - g:i A"
msgstr ""
#: ../../mod/message.php:273
#: ../../mod/message.php:275
#, php-format
msgid "%d message"
msgid_plural "%d messages"
msgstr[0] ""
msgstr[1] ""
#: ../../mod/message.php:308
#: ../../mod/message.php:310
msgid "Message not available."
msgstr ""
#: ../../mod/message.php:373
#: ../../mod/message.php:375
msgid "Delete message"
msgstr ""
#: ../../mod/message.php:392
#: ../../mod/message.php:394
msgid ""
"No secure communications available. You <strong>may</strong> be able to "
"respond from the sender's profile page."
msgstr ""
#: ../../mod/message.php:396
#: ../../mod/message.php:398
msgid "Send Reply"
msgstr ""
@ -3017,19 +3022,19 @@ msgstr ""
msgid "Theme settings updated."
msgstr ""
#: ../../mod/admin.php:96 ../../mod/admin.php:416
#: ../../mod/admin.php:96 ../../mod/admin.php:419
msgid "Site"
msgstr ""
#: ../../mod/admin.php:97 ../../mod/admin.php:652 ../../mod/admin.php:664
#: ../../mod/admin.php:97 ../../mod/admin.php:655 ../../mod/admin.php:667
msgid "Users"
msgstr ""
#: ../../mod/admin.php:98 ../../mod/admin.php:746 ../../mod/admin.php:788
#: ../../mod/admin.php:98 ../../mod/admin.php:749 ../../mod/admin.php:791
msgid "Plugins"
msgstr ""
#: ../../mod/admin.php:99 ../../mod/admin.php:951 ../../mod/admin.php:987
#: ../../mod/admin.php:99 ../../mod/admin.php:954 ../../mod/admin.php:990
msgid "Themes"
msgstr ""
@ -3037,557 +3042,565 @@ msgstr ""
msgid "DB updates"
msgstr ""
#: ../../mod/admin.php:115 ../../mod/admin.php:1074
#: ../../mod/admin.php:115 ../../mod/admin.php:122 ../../mod/admin.php:1077
msgid "Logs"
msgstr ""
#: ../../mod/admin.php:120
#: ../../mod/admin.php:120 ../../include/nav.php:146
msgid "Admin"
msgstr ""
#: ../../mod/admin.php:121
msgid "Plugin Features"
msgstr ""
#: ../../mod/admin.php:123
msgid "User registrations waiting for confirmation"
msgstr ""
#: ../../mod/admin.php:180 ../../mod/admin.php:634
#: ../../mod/admin.php:183 ../../mod/admin.php:637
msgid "Normal Account"
msgstr ""
#: ../../mod/admin.php:181 ../../mod/admin.php:635
#: ../../mod/admin.php:184 ../../mod/admin.php:638
msgid "Soapbox Account"
msgstr ""
#: ../../mod/admin.php:182 ../../mod/admin.php:636
#: ../../mod/admin.php:185 ../../mod/admin.php:639
msgid "Community/Celebrity Account"
msgstr ""
#: ../../mod/admin.php:183 ../../mod/admin.php:637
#: ../../mod/admin.php:186 ../../mod/admin.php:640
msgid "Automatic Friend Account"
msgstr ""
#: ../../mod/admin.php:202
#: ../../mod/admin.php:205
msgid "Message queues"
msgstr ""
#: ../../mod/admin.php:207 ../../mod/admin.php:415 ../../mod/admin.php:651
#: ../../mod/admin.php:745 ../../mod/admin.php:787 ../../mod/admin.php:950
#: ../../mod/admin.php:986 ../../mod/admin.php:1073
#: ../../mod/admin.php:210 ../../mod/admin.php:418 ../../mod/admin.php:654
#: ../../mod/admin.php:748 ../../mod/admin.php:790 ../../mod/admin.php:953
#: ../../mod/admin.php:989 ../../mod/admin.php:1076
msgid "Administration"
msgstr ""
#: ../../mod/admin.php:208
#: ../../mod/admin.php:211
msgid "Summary"
msgstr ""
#: ../../mod/admin.php:210
#: ../../mod/admin.php:213
msgid "Registered users"
msgstr ""
#: ../../mod/admin.php:212
#: ../../mod/admin.php:215
msgid "Pending registrations"
msgstr ""
#: ../../mod/admin.php:213
#: ../../mod/admin.php:216
msgid "Version"
msgstr ""
#: ../../mod/admin.php:215
#: ../../mod/admin.php:218
msgid "Active plugins"
msgstr ""
#: ../../mod/admin.php:354
#: ../../mod/admin.php:357
msgid "Site settings updated."
msgstr ""
#: ../../mod/admin.php:402
#: ../../mod/admin.php:405
msgid "Closed"
msgstr ""
#: ../../mod/admin.php:403
#: ../../mod/admin.php:406
msgid "Requires approval"
msgstr ""
#: ../../mod/admin.php:404
#: ../../mod/admin.php:407
msgid "Open"
msgstr ""
#: ../../mod/admin.php:408
#: ../../mod/admin.php:411
msgid "No SSL policy, links will track page SSL state"
msgstr ""
#: ../../mod/admin.php:409
#: ../../mod/admin.php:412
msgid "Force all links to use SSL"
msgstr ""
#: ../../mod/admin.php:410
#: ../../mod/admin.php:413
msgid "Self-signed certificate, use SSL for local links only (discouraged)"
msgstr ""
#: ../../mod/admin.php:419
#: ../../mod/admin.php:422
msgid "File upload"
msgstr ""
#: ../../mod/admin.php:420
#: ../../mod/admin.php:423
msgid "Policies"
msgstr ""
#: ../../mod/admin.php:421
#: ../../mod/admin.php:424
msgid "Advanced"
msgstr ""
#: ../../mod/admin.php:425 ../../addon/statusnet/statusnet.php:552
#: ../../mod/admin.php:428 ../../addon/statusnet/statusnet.php:552
msgid "Site name"
msgstr ""
#: ../../mod/admin.php:426
#: ../../mod/admin.php:429
msgid "Banner/Logo"
msgstr ""
#: ../../mod/admin.php:427
#: ../../mod/admin.php:430
msgid "System language"
msgstr ""
#: ../../mod/admin.php:428
#: ../../mod/admin.php:431
msgid "System theme"
msgstr ""
#: ../../mod/admin.php:428
#: ../../mod/admin.php:431
msgid ""
"Default system theme - may be over-ridden by user profiles - <a href='#' "
"id='cnftheme'>change theme settings</a>"
msgstr ""
#: ../../mod/admin.php:429
#: ../../mod/admin.php:432
msgid "SSL link policy"
msgstr ""
#: ../../mod/admin.php:429
#: ../../mod/admin.php:432
msgid "Determines whether generated links should be forced to use SSL"
msgstr ""
#: ../../mod/admin.php:430
#: ../../mod/admin.php:433
msgid "Maximum image size"
msgstr ""
#: ../../mod/admin.php:430
#: ../../mod/admin.php:433
msgid ""
"Maximum size in bytes of uploaded images. Default is 0, which means no "
"limits."
msgstr ""
#: ../../mod/admin.php:432
#: ../../mod/admin.php:435
msgid "Register policy"
msgstr ""
#: ../../mod/admin.php:433
#: ../../mod/admin.php:436
msgid "Register text"
msgstr ""
#: ../../mod/admin.php:433
#: ../../mod/admin.php:436
msgid "Will be displayed prominently on the registration page."
msgstr ""
#: ../../mod/admin.php:434
#: ../../mod/admin.php:437
msgid "Accounts abandoned after x days"
msgstr ""
#: ../../mod/admin.php:434
#: ../../mod/admin.php:437
msgid ""
"Will not waste system resources polling external sites for abandonded "
"accounts. Enter 0 for no time limit."
msgstr ""
#: ../../mod/admin.php:435
#: ../../mod/admin.php:438
msgid "Allowed friend domains"
msgstr ""
#: ../../mod/admin.php:435
#: ../../mod/admin.php:438
msgid ""
"Comma separated list of domains which are allowed to establish friendships "
"with this site. Wildcards are accepted. Empty to allow any domains"
msgstr ""
#: ../../mod/admin.php:436
#: ../../mod/admin.php:439
msgid "Allowed email domains"
msgstr ""
#: ../../mod/admin.php:436
#: ../../mod/admin.php:439
msgid ""
"Comma separated list of domains which are allowed in email addresses for "
"registrations to this site. Wildcards are accepted. Empty to allow any "
"domains"
msgstr ""
#: ../../mod/admin.php:437
#: ../../mod/admin.php:440
msgid "Block public"
msgstr ""
#: ../../mod/admin.php:437
#: ../../mod/admin.php:440
msgid ""
"Check to block public access to all otherwise public personal pages on this "
"site unless you are currently logged in."
msgstr ""
#: ../../mod/admin.php:438
#: ../../mod/admin.php:441
msgid "Force publish"
msgstr ""
#: ../../mod/admin.php:438
#: ../../mod/admin.php:441
msgid ""
"Check to force all profiles on this site to be listed in the site directory."
msgstr ""
#: ../../mod/admin.php:439
#: ../../mod/admin.php:442
msgid "Global directory update URL"
msgstr ""
#: ../../mod/admin.php:439
#: ../../mod/admin.php:442
msgid ""
"URL to update the global directory. If this is not set, the global directory "
"is completely unavailable to the application."
msgstr ""
#: ../../mod/admin.php:441
#: ../../mod/admin.php:444
msgid "Block multiple registrations"
msgstr ""
#: ../../mod/admin.php:441
#: ../../mod/admin.php:444
msgid "Disallow users to register additional accounts for use as pages."
msgstr ""
#: ../../mod/admin.php:442
#: ../../mod/admin.php:445
msgid "OpenID support"
msgstr ""
#: ../../mod/admin.php:442
#: ../../mod/admin.php:445
msgid "OpenID support for registration and logins."
msgstr ""
#: ../../mod/admin.php:443
#: ../../mod/admin.php:446
msgid "Fullname check"
msgstr ""
#: ../../mod/admin.php:443
#: ../../mod/admin.php:446
msgid ""
"Force users to register with a space between firstname and lastname in Full "
"name, as an antispam measure"
msgstr ""
#: ../../mod/admin.php:444
#: ../../mod/admin.php:447
msgid "UTF-8 Regular expressions"
msgstr ""
#: ../../mod/admin.php:444
#: ../../mod/admin.php:447
msgid "Use PHP UTF8 regular expressions"
msgstr ""
#: ../../mod/admin.php:445
#: ../../mod/admin.php:448
msgid "Show Community Page"
msgstr ""
#: ../../mod/admin.php:445
#: ../../mod/admin.php:448
msgid ""
"Display a Community page showing all recent public postings on this site."
msgstr ""
#: ../../mod/admin.php:446
#: ../../mod/admin.php:449
msgid "Enable OStatus support"
msgstr ""
#: ../../mod/admin.php:446
#: ../../mod/admin.php:449
msgid ""
"Provide built-in OStatus (identi.ca, status.net, etc.) compatibility. All "
"communications in OStatus are public, so privacy warnings will be "
"occasionally displayed."
msgstr ""
#: ../../mod/admin.php:447
#: ../../mod/admin.php:450
msgid "Enable Diaspora support"
msgstr ""
#: ../../mod/admin.php:447
#: ../../mod/admin.php:450
msgid "Provide built-in Diaspora network compatibility."
msgstr ""
#: ../../mod/admin.php:448
#: ../../mod/admin.php:451
msgid "Only allow Friendica contacts"
msgstr ""
#: ../../mod/admin.php:448
#: ../../mod/admin.php:451
msgid ""
"All contacts must use Friendica protocols. All other built-in communication "
"protocols disabled."
msgstr ""
#: ../../mod/admin.php:449
#: ../../mod/admin.php:452
msgid "Verify SSL"
msgstr ""
#: ../../mod/admin.php:449
#: ../../mod/admin.php:452
msgid ""
"If you wish, you can turn on strict certificate checking. This will mean you "
"cannot connect (at all) to self-signed SSL sites."
msgstr ""
#: ../../mod/admin.php:450
#: ../../mod/admin.php:453
msgid "Proxy user"
msgstr ""
#: ../../mod/admin.php:451
#: ../../mod/admin.php:454
msgid "Proxy URL"
msgstr ""
#: ../../mod/admin.php:452
#: ../../mod/admin.php:455
msgid "Network timeout"
msgstr ""
#: ../../mod/admin.php:452
#: ../../mod/admin.php:455
msgid "Value is in seconds. Set to 0 for unlimited (not recommended)."
msgstr ""
#: ../../mod/admin.php:453
#: ../../mod/admin.php:456
msgid "Delivery interval"
msgstr ""
#: ../../mod/admin.php:453
#: ../../mod/admin.php:456
msgid ""
"Delay background delivery processes by this many seconds to reduce system "
"load. Recommend: 4-5 for shared hosts, 2-3 for virtual private servers. 0-1 "
"for large dedicated servers."
msgstr ""
#: ../../mod/admin.php:454
#: ../../mod/admin.php:457
msgid "Poll interval"
msgstr ""
#: ../../mod/admin.php:454
#: ../../mod/admin.php:457
msgid ""
"Delay background polling processes by this many seconds to reduce system "
"load. If 0, use delivery interval."
msgstr ""
#: ../../mod/admin.php:455
#: ../../mod/admin.php:458
msgid "Maximum Load Average"
msgstr ""
#: ../../mod/admin.php:455
#: ../../mod/admin.php:458
msgid ""
"Maximum system load before delivery and poll processes are deferred - "
"default 50."
msgstr ""
#: ../../mod/admin.php:469
#: ../../mod/admin.php:472
msgid "Update has been marked successful"
msgstr ""
#: ../../mod/admin.php:479
#, php-format
msgid "Executing %s failed. Check system logs."
msgstr ""
#: ../../mod/admin.php:482
#, php-format
msgid "Update %s was successfully applied."
msgid "Executing %s failed. Check system logs."
msgstr ""
#: ../../mod/admin.php:486
#: ../../mod/admin.php:485
#, php-format
msgid "Update %s did not return a status. Unknown if it succeeded."
msgid "Update %s was successfully applied."
msgstr ""
#: ../../mod/admin.php:489
#, php-format
msgid "Update %s did not return a status. Unknown if it succeeded."
msgstr ""
#: ../../mod/admin.php:492
#, php-format
msgid "Update function %s could not be found."
msgstr ""
#: ../../mod/admin.php:504
#: ../../mod/admin.php:507
msgid "No failed updates."
msgstr ""
#: ../../mod/admin.php:508
#: ../../mod/admin.php:511
msgid "Failed Updates"
msgstr ""
#: ../../mod/admin.php:509
#: ../../mod/admin.php:512
msgid ""
"This does not include updates prior to 1139, which did not return a status."
msgstr ""
#: ../../mod/admin.php:510
#: ../../mod/admin.php:513
msgid "Mark success (if update was manually applied)"
msgstr ""
#: ../../mod/admin.php:511
#: ../../mod/admin.php:514
msgid "Attempt to execute this update step automatically"
msgstr ""
#: ../../mod/admin.php:536
#: ../../mod/admin.php:539
#, php-format
msgid "%s user blocked/unblocked"
msgid_plural "%s users blocked/unblocked"
msgstr[0] ""
msgstr[1] ""
#: ../../mod/admin.php:543
#: ../../mod/admin.php:546
#, php-format
msgid "%s user deleted"
msgid_plural "%s users deleted"
msgstr[0] ""
msgstr[1] ""
#: ../../mod/admin.php:582
#: ../../mod/admin.php:585
#, php-format
msgid "User '%s' deleted"
msgstr ""
#: ../../mod/admin.php:590
#: ../../mod/admin.php:593
#, php-format
msgid "User '%s' unblocked"
msgstr ""
#: ../../mod/admin.php:590
#: ../../mod/admin.php:593
#, php-format
msgid "User '%s' blocked"
msgstr ""
#: ../../mod/admin.php:654
#: ../../mod/admin.php:657
msgid "select all"
msgstr ""
#: ../../mod/admin.php:655
#: ../../mod/admin.php:658
msgid "User registrations waiting for confirm"
msgstr ""
#: ../../mod/admin.php:656
#: ../../mod/admin.php:659
msgid "Request date"
msgstr ""
#: ../../mod/admin.php:656 ../../mod/admin.php:665
#: ../../mod/admin.php:659 ../../mod/admin.php:668
#: ../../include/contact_selectors.php:79
msgid "Email"
msgstr ""
#: ../../mod/admin.php:657
#: ../../mod/admin.php:660
msgid "No registrations."
msgstr ""
#: ../../mod/admin.php:659
#: ../../mod/admin.php:662
msgid "Deny"
msgstr ""
#: ../../mod/admin.php:665
#: ../../mod/admin.php:668
msgid "Register date"
msgstr ""
#: ../../mod/admin.php:665
#: ../../mod/admin.php:668
msgid "Last login"
msgstr ""
#: ../../mod/admin.php:665
#: ../../mod/admin.php:668
msgid "Last item"
msgstr ""
#: ../../mod/admin.php:665
#: ../../mod/admin.php:668
msgid "Account"
msgstr ""
#: ../../mod/admin.php:667
#: ../../mod/admin.php:670
msgid ""
"Selected users will be deleted!\\n\\nEverything these users had posted on "
"this site will be permanently deleted!\\n\\nAre you sure?"
msgstr ""
#: ../../mod/admin.php:668
#: ../../mod/admin.php:671
msgid ""
"The user {0} will be deleted!\\n\\nEverything this user has posted on this "
"site will be permanently deleted!\\n\\nAre you sure?"
msgstr ""
#: ../../mod/admin.php:709
#: ../../mod/admin.php:712
#, php-format
msgid "Plugin %s disabled."
msgstr ""
#: ../../mod/admin.php:713
#: ../../mod/admin.php:716
#, php-format
msgid "Plugin %s enabled."
msgstr ""
#: ../../mod/admin.php:723 ../../mod/admin.php:921
#: ../../mod/admin.php:726 ../../mod/admin.php:924
msgid "Disable"
msgstr ""
#: ../../mod/admin.php:725 ../../mod/admin.php:923
#: ../../mod/admin.php:728 ../../mod/admin.php:926
msgid "Enable"
msgstr ""
#: ../../mod/admin.php:747 ../../mod/admin.php:952
#: ../../mod/admin.php:750 ../../mod/admin.php:955
msgid "Toggle"
msgstr ""
#: ../../mod/admin.php:755 ../../mod/admin.php:962
#: ../../mod/admin.php:758 ../../mod/admin.php:965
msgid "Author: "
msgstr ""
#: ../../mod/admin.php:756 ../../mod/admin.php:963
#: ../../mod/admin.php:759 ../../mod/admin.php:966
msgid "Maintainer: "
msgstr ""
#: ../../mod/admin.php:885
#: ../../mod/admin.php:888
msgid "No themes found."
msgstr ""
#: ../../mod/admin.php:944
#: ../../mod/admin.php:947
msgid "Screenshot"
msgstr ""
#: ../../mod/admin.php:992
#: ../../mod/admin.php:995
msgid "[Experimental]"
msgstr ""
#: ../../mod/admin.php:993
#: ../../mod/admin.php:996
msgid "[Unsupported]"
msgstr ""
#: ../../mod/admin.php:1020
#: ../../mod/admin.php:1023
msgid "Log settings updated."
msgstr ""
#: ../../mod/admin.php:1076
#: ../../mod/admin.php:1079
msgid "Clear"
msgstr ""
#: ../../mod/admin.php:1082
#: ../../mod/admin.php:1085
msgid "Debugging"
msgstr ""
#: ../../mod/admin.php:1083
#: ../../mod/admin.php:1086
msgid "Log file"
msgstr ""
#: ../../mod/admin.php:1083
#: ../../mod/admin.php:1086
msgid ""
"Must be writable by web server. Relative to your Friendica top-level "
"directory."
msgstr ""
#: ../../mod/admin.php:1084
#: ../../mod/admin.php:1087
msgid "Log level"
msgstr ""
#: ../../mod/admin.php:1134
#: ../../mod/admin.php:1137
msgid "Close"
msgstr ""
#: ../../mod/admin.php:1140
#: ../../mod/admin.php:1143
msgid "FTP Host"
msgstr ""
#: ../../mod/admin.php:1141
#: ../../mod/admin.php:1144
msgid "FTP Path"
msgstr ""
#: ../../mod/admin.php:1142
#: ../../mod/admin.php:1145
msgid "FTP User"
msgstr ""
#: ../../mod/admin.php:1143
#: ../../mod/admin.php:1146
msgid "FTP Password"
msgstr ""
@ -4188,7 +4201,7 @@ msgstr ""
msgid "Unable to set contact photo."
msgstr ""
#: ../../mod/dfrn_confirm.php:477 ../../include/diaspora.php:507
#: ../../mod/dfrn_confirm.php:477 ../../include/diaspora.php:510
#: ../../include/conversation.php:101
#, php-format
msgid "%1$s is now friends with %2$s"
@ -4407,7 +4420,7 @@ msgstr ""
msgid "Activate Real-Time Updates"
msgstr ""
#: ../../addon/facebook/facebook.php:785
#: ../../addon/facebook/facebook.php:785 ../../addon/dav/layout.fnk.php:394
msgid "The new values have been saved."
msgstr ""
@ -4447,23 +4460,23 @@ msgid ""
"connection again, you have to %3$sre-authenticate the Facebook-connector%4$s."
msgstr ""
#: ../../addon/privacy_image_cache/privacy_image_cache.php:147
#: ../../addon/privacy_image_cache/privacy_image_cache.php:175
msgid "Lifetime of the cache (in hours)"
msgstr ""
#: ../../addon/privacy_image_cache/privacy_image_cache.php:152
#: ../../addon/privacy_image_cache/privacy_image_cache.php:180
msgid "Cache Statistics"
msgstr ""
#: ../../addon/privacy_image_cache/privacy_image_cache.php:155
#: ../../addon/privacy_image_cache/privacy_image_cache.php:183
msgid "Number of items"
msgstr ""
#: ../../addon/privacy_image_cache/privacy_image_cache.php:157
#: ../../addon/privacy_image_cache/privacy_image_cache.php:185
msgid "Size of the cache"
msgstr ""
#: ../../addon/privacy_image_cache/privacy_image_cache.php:159
#: ../../addon/privacy_image_cache/privacy_image_cache.php:187
msgid "Delete the whole cache"
msgstr ""
@ -4639,6 +4652,185 @@ msgstr ""
msgid "event"
msgstr ""
#: ../../addon/dav/common/wdcal_configuration.php:126
msgid "U.S. Time Format (mm/dd/YYYY)"
msgstr ""
#: ../../addon/dav/common/wdcal_configuration.php:205
msgid "German Time Format (dd.mm.YYYY)"
msgstr ""
#: ../../addon/dav/common/calendar.fnk.php:507
#: ../../addon/dav/common/calendar.fnk.php:576
#: ../../addon/dav/common/calendar.fnk.php:603
#: ../../addon/dav/layout.fnk.php:266
msgid "No access"
msgstr ""
#: ../../addon/dav/layout.fnk.php:116
msgid "Today"
msgstr ""
#: ../../addon/dav/layout.fnk.php:132
msgid "Week"
msgstr ""
#: ../../addon/dav/layout.fnk.php:139
msgid "Month"
msgstr ""
#: ../../addon/dav/layout.fnk.php:144
msgid "Reload"
msgstr ""
#: ../../addon/dav/layout.fnk.php:155
msgid "Date"
msgstr ""
#: ../../addon/dav/layout.fnk.php:193 ../../addon/dav/layout.fnk.php:237
msgid "Error"
msgstr ""
#: ../../addon/dav/layout.fnk.php:259
msgid "Not found"
msgstr ""
#: ../../addon/dav/layout.fnk.php:326 ../../addon/dav/layout.fnk.php:399
msgid "Go back to the calendar"
msgstr ""
#: ../../addon/dav/layout.fnk.php:346
msgid "Description"
msgstr ""
#: ../../addon/dav/layout.fnk.php:349
msgid "Notification"
msgstr ""
#: ../../addon/dav/layout.fnk.php:358
msgid "Minutes"
msgstr ""
#: ../../addon/dav/layout.fnk.php:361
msgid "Hours"
msgstr ""
#: ../../addon/dav/layout.fnk.php:364
msgid "Days"
msgstr ""
#: ../../addon/dav/layout.fnk.php:365
msgid "before"
msgstr ""
#: ../../addon/dav/layout.fnk.php:401
msgid "Calendar Settings"
msgstr ""
#: ../../addon/dav/layout.fnk.php:407
msgid "Date format"
msgstr ""
#: ../../addon/dav/layout.fnk.php:416
msgid "Time zone"
msgstr ""
#: ../../addon/dav/layout.fnk.php:421
msgid "Limitations"
msgstr ""
#: ../../addon/dav/layout.fnk.php:425
msgid "Warning"
msgstr ""
#: ../../addon/dav/layout.fnk.php:429
msgid "Synchronization (iPhone, Thunderbird Lightning, Android, ...)"
msgstr ""
#: ../../addon/dav/layout.fnk.php:436
msgid "Synchronizing this calendar with the iPhone"
msgstr ""
#: ../../addon/dav/layout.fnk.php:447
msgid "Synchronizing your Friendica-Contacts with the iPhone"
msgstr ""
#: ../../addon/dav/dav_carddav_backend_friendica_community.inc.php:37
msgid "Friendica-Contacts"
msgstr ""
#: ../../addon/dav/dav_carddav_backend_friendica_community.inc.php:38
msgid "Your Friendica-Contacts"
msgstr ""
#: ../../addon/dav/main.php:229
msgid "Calendar"
msgstr ""
#: ../../addon/dav/main.php:232
msgid "Extended calendar with CalDAV-support"
msgstr ""
#: ../../addon/dav/main.php:248
msgid "The database tables have been installed."
msgstr ""
#: ../../addon/dav/main.php:249
msgid "An error occurred during the installation."
msgstr ""
#: ../../addon/dav/main.php:265
msgid "No system-wide settings yet."
msgstr ""
#: ../../addon/dav/main.php:268
msgid "Database status"
msgstr ""
#: ../../addon/dav/main.php:271
msgid "Installed"
msgstr ""
#: ../../addon/dav/main.php:274
msgid "Upgrade needed"
msgstr ""
#: ../../addon/dav/main.php:274
msgid "Upgrade"
msgstr ""
#: ../../addon/dav/main.php:277
msgid "Not installed"
msgstr ""
#: ../../addon/dav/main.php:277
msgid "Install"
msgstr ""
#: ../../addon/dav/main.php:282
msgid "Troubleshooting"
msgstr ""
#: ../../addon/dav/main.php:283
msgid "Manual creation of the database tables:"
msgstr ""
#: ../../addon/dav/main.php:284
msgid "Show SQL-statements"
msgstr ""
#: ../../addon/dav/calendar.friendica.fnk.php:128
msgid "Private Calendar"
msgstr ""
#: ../../addon/dav/calendar.friendica.fnk.php:135
msgid "Friendica Events: Mine"
msgstr ""
#: ../../addon/dav/calendar.friendica.fnk.php:138
msgid "Friendica Events: Contacts"
msgstr ""
#: ../../addon/uhremotestorage/uhremotestorage.php:84
#, php-format
msgid ""
@ -4785,8 +4977,8 @@ msgstr ""
msgid "Post to Drupal by default"
msgstr ""
#: ../../addon/drpost/drpost.php:184 ../../addon/wppost/wppost.php:198
#: ../../addon/blogger/blogger.php:172 ../../addon/posterous/posterous.php:192
#: ../../addon/drpost/drpost.php:184 ../../addon/wppost/wppost.php:199
#: ../../addon/blogger/blogger.php:172 ../../addon/posterous/posterous.php:189
msgid "Post from Friendica"
msgstr ""
@ -5019,6 +5211,30 @@ msgstr ""
msgid "The default zoom level. (1:world, 18:highest)"
msgstr ""
#: ../../addon/libertree/libertree.php:36
msgid "Post to libertree"
msgstr ""
#: ../../addon/libertree/libertree.php:67
msgid "libertree Post Settings"
msgstr ""
#: ../../addon/libertree/libertree.php:69
msgid "Enable Libertree Post Plugin"
msgstr ""
#: ../../addon/libertree/libertree.php:74
msgid "Libertree API token"
msgstr ""
#: ../../addon/libertree/libertree.php:79
msgid "Libertree site URL"
msgstr ""
#: ../../addon/libertree/libertree.php:84
msgid "Post to Libertree by default"
msgstr ""
#: ../../addon/mathjax/mathjax.php:37
msgid ""
"The MathJax addon renders mathematical formulae written using the LaTeX "
@ -5270,6 +5486,10 @@ msgstr ""
msgid "API URL"
msgstr ""
#: ../../addon/infiniteimprobabilitydrive/infiniteimprobabilitydrive.php:19
msgid "Infinite Improbability Drive"
msgstr ""
#: ../../addon/tumblr/tumblr.php:36
msgid "Post to Tumblr"
msgstr ""
@ -5357,11 +5577,11 @@ msgstr ""
msgid "Post to WordPress by default"
msgstr ""
#: ../../addon/wppost/wppost.php:102
#: ../../addon/wppost/wppost.php:103
msgid "Provide a backlink to the Friendica post"
msgstr ""
#: ../../addon/wppost/wppost.php:204
#: ../../addon/wppost/wppost.php:205
msgid "Read the original post and comment stream on Friendica"
msgstr ""
@ -6177,12 +6397,12 @@ msgstr ""
msgid "Finishes:"
msgstr ""
#: ../../include/delivery.php:455 ../../include/notifier.php:677
#: ../../include/delivery.php:456 ../../include/notifier.php:678
msgid "(no subject)"
msgstr ""
#: ../../include/delivery.php:462 ../../include/enotify.php:26
#: ../../include/notifier.php:684
#: ../../include/delivery.php:463 ../../include/enotify.php:26
#: ../../include/notifier.php:685
msgid "noreply"
msgstr ""
@ -6337,19 +6557,14 @@ msgstr ""
msgid "Item filed"
msgstr ""
#: ../../include/diaspora.php:590
#: ../../include/diaspora.php:593
msgid "Sharing notification from Diaspora network"
msgstr ""
#: ../../include/diaspora.php:1977
#: ../../include/diaspora.php:2037
msgid "Attachments:"
msgstr ""
#: ../../include/diaspora.php:2168
#, php-format
msgid "[Relayed] Comment authored by %s from network %s"
msgstr ""
#: ../../include/network.php:824
msgid "view full size"
msgstr ""
@ -6497,10 +6712,6 @@ msgstr ""
msgid "Manage/edit friends and contacts"
msgstr ""
#: ../../include/nav.php:146
msgid "Admin"
msgstr ""
#: ../../include/nav.php:146
msgid "Site setup and configuration"
msgstr ""

View file

@ -30,11 +30,10 @@
$dirs = glob('addon/*');
foreach($dirs as $dir) {
$files = glob($dir . '/*.php');
$addon = basename($dir);
$files = glob($dir . '/' . $addon . '.php');
foreach($files as $file) {
echo $file . "\n";
if(stristr($file,'jappixmini/proxy.php'))
continue;
include_once($file);
}
}

View file

@ -10,7 +10,7 @@
});
});
</script>
<h4><a href="$admurl">Admin</a></h4>
<h4><a href="$admurl">$admtxt</a></h4>
<ul class='admin linklist'>
<li class='admin link button $admin.site.2'><a href='$admin.site.0'>$admin.site.1</a></li>
<li class='admin link button $admin.users.2'><a href='$admin.users.0'>$admin.users.1</a><span id='pending-update' title='$h_pending'></span></li>
@ -19,13 +19,15 @@
<li class='admin link button $admin.dbsync.2'><a href='$admin.dbsync.0'>$admin.dbsync.1</a></li>
</ul>
{{ if $admin.update }}
<ul class='admin linklist'>
<li class='admin link button $admin.update.2'><a href='$admin.update.0'>$admin.update.1</a></li>
<li class='admin link button $admin.update.2'><a href='https://kakste.com/profile/inthegit'>Important Changes</a></li>
</ul>
{{ endif }}
{{ if $admin.plugins_admin }}<h4>Plugins</h4>{{ endif }}
{{ if $admin.plugins_admin }}<h4>$plugadmtxt</h4>{{ endif }}
<ul class='admin linklist'>
{{ for $admin.plugins_admin as $l }}
<li class='admin link button $l.2'><a href='$l.0'>$l.1</a></li>
@ -33,7 +35,7 @@
</ul>
<h4>Logs</h4>
<h4>$logtxt</h4>
<ul class='admin linklist'>
<li class='admin link button $admin.logs.2'><a href='$admin.logs.0'>$admin.logs.1</a></li>
</ul>

View file

@ -19,8 +19,8 @@ msgid ""
msgstr ""
"Project-Id-Version: friendica\n"
"Report-Msgid-Bugs-To: http://bugs.friendica.com/\n"
"POT-Creation-Date: 2012-06-03 10:00-0700\n"
"PO-Revision-Date: 2012-06-05 08:08+0000\n"
"POT-Creation-Date: 2012-06-05 10:00-0700\n"
"PO-Revision-Date: 2012-06-06 23:32+0000\n"
"Last-Translator: zottel <transifex@zottel.net>\n"
"Language-Team: German (http://www.transifex.net/projects/p/friendica/language/de/)\n"
"MIME-Version: 1.0\n"
@ -67,7 +67,7 @@ msgstr "Konnte den Kontakt nicht aktualisieren."
#: ../../mod/profiles.php:385 ../../mod/delegate.php:6
#: ../../mod/suggest.php:28 ../../mod/invite.php:13 ../../mod/invite.php:81
#: ../../mod/dfrn_confirm.php:53 ../../addon/facebook/facebook.php:503
#: ../../include/items.php:3297 ../../index.php:306
#: ../../include/items.php:3332 ../../index.php:306
msgid "Permission denied."
msgstr "Zugriff verweigert."
@ -141,9 +141,9 @@ msgstr "Neues Foto von dieser URL"
#: ../../mod/localtime.php:45 ../../mod/contacts.php:322
#: ../../mod/settings.php:555 ../../mod/settings.php:701
#: ../../mod/settings.php:762 ../../mod/settings.php:969
#: ../../mod/manage.php:109 ../../mod/group.php:85 ../../mod/admin.php:417
#: ../../mod/admin.php:653 ../../mod/admin.php:789 ../../mod/admin.php:988
#: ../../mod/admin.php:1075 ../../mod/profiles.php:554
#: ../../mod/manage.php:109 ../../mod/group.php:85 ../../mod/message.php:215
#: ../../mod/admin.php:417 ../../mod/admin.php:653 ../../mod/admin.php:789
#: ../../mod/admin.php:988 ../../mod/admin.php:1075 ../../mod/profiles.php:554
#: ../../mod/invite.php:119 ../../addon/facebook/facebook.php:605
#: ../../addon/yourls/yourls.php:76 ../../addon/ljpost/ljpost.php:93
#: ../../addon/nsfw/nsfw.php:57 ../../addon/planets/planets.php:158
@ -411,10 +411,10 @@ msgstr "Foto löschen"
msgid "was tagged in a"
msgstr "wurde getaggt in einem"
#: ../../mod/photos.php:583 ../../mod/like.php:127 ../../mod/tagger.php:70
#: ../../mod/photos.php:583 ../../mod/like.php:185 ../../mod/tagger.php:70
#: ../../addon/communityhome/communityhome.php:163
#: ../../view/theme/diabook/theme.php:570 ../../include/text.php:1316
#: ../../include/diaspora.php:1662 ../../include/conversation.php:53
#: ../../include/diaspora.php:1671 ../../include/conversation.php:53
#: ../../include/conversation.php:126
msgid "photo"
msgstr "Foto"
@ -554,7 +554,7 @@ msgstr "Teilen"
#: ../../mod/photos.php:1277 ../../mod/editpost.php:104
#: ../../mod/wallmessage.php:145 ../../mod/message.php:214
#: ../../mod/message.php:408 ../../include/conversation.php:371
#: ../../mod/message.php:409 ../../include/conversation.php:371
#: ../../include/conversation.php:731 ../../include/conversation.php:1008
msgid "Please wait"
msgstr "Bitte warten"
@ -652,7 +652,7 @@ msgid "Edit"
msgstr "Bearbeiten"
#: ../../mod/editpost.php:96 ../../mod/wallmessage.php:143
#: ../../mod/message.php:212 ../../mod/message.php:406
#: ../../mod/message.php:212 ../../mod/message.php:407
#: ../../include/conversation.php:990
msgid "Upload photo"
msgstr "Foto hochladen"
@ -662,7 +662,7 @@ msgid "Attach file"
msgstr "Datei anhängen"
#: ../../mod/editpost.php:98 ../../mod/wallmessage.php:144
#: ../../mod/message.php:213 ../../mod/message.php:407
#: ../../mod/message.php:213 ../../mod/message.php:408
#: ../../include/conversation.php:994
msgid "Insert web link"
msgstr "einen Link einfügen"
@ -2141,7 +2141,7 @@ msgstr "Die Adresse deines Profils lautet:"
#: ../../mod/settings.php:953
msgid "Automatically expire posts after this many days:"
msgstr "Beiträge verfallen automatisch nach dieser Anzahl von Tagen"
msgstr "Beiträge verfallen automatisch nach dieser Anzahl von Tagen:"
#: ../../mod/settings.php:953
msgid "If empty, posts will not expire. Expired posts will be deleted"
@ -2173,7 +2173,7 @@ msgstr "Fotos verfallen lassen:"
#: ../../mod/settings.php:960
msgid "Only expire posts by others:"
msgstr "Nur Beiträge anderer verfallen"
msgstr "Nur Beiträge anderer verfallen:"
#: ../../mod/settings.php:967
msgid "Account Settings"
@ -2217,7 +2217,7 @@ msgstr "Standardstandort:"
#: ../../mod/settings.php:986
msgid "Use Browser Location:"
msgstr "Verwende den Standort des Browsers:"
msgstr "Standort des Browsers verwenden:"
#: ../../mod/settings.php:989
msgid "Security and Privacy Settings"
@ -2470,17 +2470,17 @@ msgid ""
msgstr "Wenn du möchtest, dass %s dir antworten kann, überprüfe deine Privatsphären-Einstellungen und erlaube private Nachrichten von unbekannten Absendern."
#: ../../mod/wallmessage.php:133 ../../mod/message.php:200
#: ../../mod/message.php:397
#: ../../mod/message.php:398
msgid "To:"
msgstr "An:"
#: ../../mod/wallmessage.php:134 ../../mod/message.php:205
#: ../../mod/message.php:399
#: ../../mod/message.php:400
msgid "Subject:"
msgstr "Betreff:"
#: ../../mod/wallmessage.php:140 ../../mod/message.php:209
#: ../../mod/message.php:402 ../../mod/invite.php:113
#: ../../mod/message.php:403 ../../mod/invite.php:113
msgid "Your message:"
msgstr "Deine Nachricht:"
@ -2776,26 +2776,26 @@ msgstr "Registrieren"
msgid "People Search"
msgstr "Personen Suche"
#: ../../mod/like.php:127 ../../mod/tagger.php:70
#: ../../mod/like.php:185 ../../mod/like.php:259 ../../mod/tagger.php:70
#: ../../addon/facebook/facebook.php:1572
#: ../../addon/communityhome/communityhome.php:158
#: ../../addon/communityhome/communityhome.php:167
#: ../../view/theme/diabook/theme.php:565
#: ../../view/theme/diabook/theme.php:574 ../../include/diaspora.php:1662
#: ../../view/theme/diabook/theme.php:574 ../../include/diaspora.php:1671
#: ../../include/conversation.php:48 ../../include/conversation.php:57
#: ../../include/conversation.php:121 ../../include/conversation.php:130
msgid "status"
msgstr "Status"
#: ../../mod/like.php:144 ../../addon/facebook/facebook.php:1576
#: ../../mod/like.php:202 ../../addon/facebook/facebook.php:1576
#: ../../addon/communityhome/communityhome.php:172
#: ../../view/theme/diabook/theme.php:579 ../../include/diaspora.php:1678
#: ../../view/theme/diabook/theme.php:579 ../../include/diaspora.php:1687
#: ../../include/conversation.php:65
#, php-format
msgid "%1$s likes %2$s's %3$s"
msgstr "%1$s mag %2$ss %3$s"
#: ../../mod/like.php:146 ../../include/conversation.php:68
#: ../../mod/like.php:204 ../../include/conversation.php:68
#, php-format
msgid "%1$s doesn't like %2$s's %3$s"
msgstr "%1$s mag %2$ss %3$s nicht"
@ -2968,55 +2968,55 @@ msgstr "Nachricht gelöscht."
msgid "Conversation removed."
msgstr "Unterhaltung gelöscht."
#: ../../mod/message.php:245
#: ../../mod/message.php:246
msgid "No messages."
msgstr "Keine Nachrichten."
#: ../../mod/message.php:252
#: ../../mod/message.php:253
#, php-format
msgid "Unknown sender - %s"
msgstr "'Unbekannter Absender - %s"
#: ../../mod/message.php:255
#: ../../mod/message.php:256
#, php-format
msgid "You and %s"
msgstr "Du und %s"
#: ../../mod/message.php:258
#: ../../mod/message.php:259
#, php-format
msgid "%s and You"
msgstr "%s und Du"
#: ../../mod/message.php:268 ../../mod/message.php:390
#: ../../mod/message.php:269 ../../mod/message.php:391
msgid "Delete conversation"
msgstr "Unterhaltung löschen"
#: ../../mod/message.php:271
#: ../../mod/message.php:272
msgid "D, d M Y - g:i A"
msgstr "D, d. M Y - g:i A"
#: ../../mod/message.php:273
#: ../../mod/message.php:274
#, php-format
msgid "%d message"
msgid_plural "%d messages"
msgstr[0] "%d Nachricht"
msgstr[1] "%d Nachrichten"
#: ../../mod/message.php:308
#: ../../mod/message.php:309
msgid "Message not available."
msgstr "Nachricht nicht verfügbar."
#: ../../mod/message.php:373
#: ../../mod/message.php:374
msgid "Delete message"
msgstr "Nachricht löschen"
#: ../../mod/message.php:392
#: ../../mod/message.php:393
msgid ""
"No secure communications available. You <strong>may</strong> be able to "
"respond from the sender's profile page."
msgstr "Sichere Kommunikation ist nicht verfügbar. <strong>Eventuell</strong> kannst du auf der Profilseite des Absenders antworten."
#: ../../mod/message.php:396
#: ../../mod/message.php:397
msgid "Send Reply"
msgstr "Antwort senden"
@ -3858,7 +3858,7 @@ msgstr "Adresse:"
#: ../../mod/profiles.php:565
msgid "Locality/City:"
msgstr "Wohnort/Stadt:"
msgstr "Wohnort:"
#: ../../mod/profiles.php:566
msgid "Postal/Zip Code:"
@ -3898,7 +3898,7 @@ msgstr "Adresse der Homepage:"
#: ../../mod/profiles.php:575 ../../include/profile_advanced.php:50
msgid "Hometown:"
msgstr "Wohnort:"
msgstr "Heimatort:"
#: ../../mod/profiles.php:576 ../../include/profile_advanced.php:54
msgid "Political Views:"
@ -4204,7 +4204,7 @@ msgstr "Kontaktanfrage schlug fehl oder wurde zurück gezogen."
msgid "Unable to set contact photo."
msgstr "Konnte das Bild des Kontakts nicht speichern."
#: ../../mod/dfrn_confirm.php:477 ../../include/diaspora.php:507
#: ../../mod/dfrn_confirm.php:477 ../../include/diaspora.php:510
#: ../../include/conversation.php:101
#, php-format
msgid "%1$s is now friends with %2$s"
@ -6186,12 +6186,12 @@ msgstr "Beginnt:"
msgid "Finishes:"
msgstr "Endet:"
#: ../../include/delivery.php:455 ../../include/notifier.php:677
#: ../../include/delivery.php:456 ../../include/notifier.php:678
msgid "(no subject)"
msgstr "(kein Betreff)"
#: ../../include/delivery.php:462 ../../include/enotify.php:26
#: ../../include/notifier.php:684
#: ../../include/delivery.php:463 ../../include/enotify.php:26
#: ../../include/notifier.php:685
msgid "noreply"
msgstr "noreply"
@ -6346,19 +6346,14 @@ msgstr "Beitrag"
msgid "Item filed"
msgstr "Beitrag abgelegt"
#: ../../include/diaspora.php:590
#: ../../include/diaspora.php:593
msgid "Sharing notification from Diaspora network"
msgstr "Freigabe-Benachrichtigung von Diaspora"
#: ../../include/diaspora.php:1977
#: ../../include/diaspora.php:2037
msgid "Attachments:"
msgstr "Anhänge:"
#: ../../include/diaspora.php:2168
#, php-format
msgid "[Relayed] Comment authored by %s from network %s"
msgstr "[Weitergeleitet] Kommentar von %s aus dem %s Netzwerk"
#: ../../include/network.php:824
msgid "view full size"
msgstr "Volle Größe anzeigen"
@ -7111,7 +7106,7 @@ msgstr "mag ich nicht"
#: ../../include/conversation.php:557
msgid "Share this"
msgstr "Teile dieses"
msgstr "Weitersagen"
#: ../../include/conversation.php:557
msgid "share"

View file

@ -472,7 +472,7 @@ $a->strings["Permit unknown people to send you private mail?"] = "Dürfen dir Un
$a->strings["Profile is <strong>not published</strong>."] = "Profil ist <strong>nicht veröffentlicht</strong>.";
$a->strings["or"] = "oder";
$a->strings["Your Identity Address is"] = "Die Adresse deines Profils lautet:";
$a->strings["Automatically expire posts after this many days:"] = "Beiträge verfallen automatisch nach dieser Anzahl von Tagen";
$a->strings["Automatically expire posts after this many days:"] = "Beiträge verfallen automatisch nach dieser Anzahl von Tagen:";
$a->strings["If empty, posts will not expire. Expired posts will be deleted"] = "Wenn leer verfallen Beiträge nie automatisch. Verfallene Beiträge werden gelöscht.";
$a->strings["Advanced expiration settings"] = "Erweiterte Verfallseinstellungen";
$a->strings["Advanced Expiration"] = "Erweitertes Verfallen";
@ -480,7 +480,7 @@ $a->strings["Expire posts:"] = "Beiträge verfallen lassen:";
$a->strings["Expire personal notes:"] = "Persönliche Notizen verfallen lassen:";
$a->strings["Expire starred posts:"] = "Markierte Beiträge verfallen lassen:";
$a->strings["Expire photos:"] = "Fotos verfallen lassen:";
$a->strings["Only expire posts by others:"] = "Nur Beiträge anderer verfallen";
$a->strings["Only expire posts by others:"] = "Nur Beiträge anderer verfallen:";
$a->strings["Account Settings"] = "Kontoeinstellungen";
$a->strings["Password Settings"] = "Passwort-Einstellungen";
$a->strings["New Password:"] = "Neues Passwort:";
@ -491,7 +491,7 @@ $a->strings["Full Name:"] = "Kompletter Name:";
$a->strings["Email Address:"] = "E-Mail-Adresse:";
$a->strings["Your Timezone:"] = "Deine Zeitzone:";
$a->strings["Default Post Location:"] = "Standardstandort:";
$a->strings["Use Browser Location:"] = "Verwende den Standort des Browsers:";
$a->strings["Use Browser Location:"] = "Standort des Browsers verwenden:";
$a->strings["Security and Privacy Settings"] = "Sicherheits- und Privatsphäre-Einstellungen";
$a->strings["Maximum Friend Requests/Day:"] = "Maximale Anzahl von Freundschaftsanfragen/Tag:";
$a->strings["(to prevent spam abuse)"] = "(um SPAM zu vermeiden)";
@ -866,7 +866,7 @@ $a->strings["Title/Description:"] = "Titel/Beschreibung:";
$a->strings["Your Gender:"] = "Dein Geschlecht:";
$a->strings["Birthday (%s):"] = "Geburtstag (%s):";
$a->strings["Street Address:"] = "Adresse:";
$a->strings["Locality/City:"] = "Wohnort/Stadt:";
$a->strings["Locality/City:"] = "Wohnort:";
$a->strings["Postal/Zip Code:"] = "Postleitzahl:";
$a->strings["Country:"] = "Land:";
$a->strings["Region/State:"] = "Region/Bundesstaat:";
@ -876,7 +876,7 @@ $a->strings["Examples: cathy123, Cathy Williams, cathy@example.com"] = "Beispiel
$a->strings["Since [date]:"] = "Seit [Datum]:";
$a->strings["Sexual Preference:"] = "Sexuelle Vorlieben:";
$a->strings["Homepage URL:"] = "Adresse der Homepage:";
$a->strings["Hometown:"] = "Wohnort:";
$a->strings["Hometown:"] = "Heimatort:";
$a->strings["Political Views:"] = "Politische Ansichten:";
$a->strings["Religious Views:"] = "Religiöse Ansichten:";
$a->strings["Public Keywords:"] = "Öffentliche Schlüsselwörter:";
@ -1442,7 +1442,6 @@ $a->strings["post"] = "Beitrag";
$a->strings["Item filed"] = "Beitrag abgelegt";
$a->strings["Sharing notification from Diaspora network"] = "Freigabe-Benachrichtigung von Diaspora";
$a->strings["Attachments:"] = "Anhänge:";
$a->strings["[Relayed] Comment authored by %s from network %s"] = "[Weitergeleitet] Kommentar von %s aus dem %s Netzwerk";
$a->strings["view full size"] = "Volle Größe anzeigen";
$a->strings["Embedded content"] = "Eingebetteter Inhalt";
$a->strings["Embedding disabled"] = "Einbettungen deaktiviert";
@ -1621,7 +1620,7 @@ $a->strings["%d comment"] = array(
);
$a->strings["like"] = "mag ich";
$a->strings["dislike"] = "mag ich nicht";
$a->strings["Share this"] = "Teile dieses";
$a->strings["Share this"] = "Weitersagen";
$a->strings["share"] = "Teilen";
$a->strings["Bold"] = "Fett";
$a->strings["Italic"] = "Kursiv";

2
view/oembed_video.tpl Normal file → Executable file
View file

@ -1,4 +1,4 @@
<a href='$embedurl' onclick='this.innerHTML=Base64.decode("$escapedhtml"); return false;' style='float:left; margin: 1em; position: relative;'>
<img width='$tw' height='$th' src='$turl' >
<div style='position: absolute; top: 0px; left: 0px; width: $twpx; height: $thpx; background: url(images/icons/48/play.png) no-repeat center center;'></div>
<div style='position: absolute; top: 0px; left: 0px; width: $twpx; height: $thpx; background: url($baseurl/images/icons/48/play.png) no-repeat center center;'></div>
</a>

View file

@ -1,3 +1,4 @@
<a name="$item.id" />
<div class="wall-item-outside-wrapper$item.indent$item.previewing" id="wall-item-outside-wrapper-$item.id" >
<div class="wall-item-content-wrapper$item.indent" id="wall-item-content-wrapper-$item.id" >
<div class="wall-item-info" id="wall-item-info-$item.id">

View file

@ -35,5 +35,5 @@
});
});
</script>
<div id="events-reminder"></div>
<div id="events-reminder" class="$classtoday"></div>
<br>

View file

@ -13,6 +13,10 @@
background: none;
}
.widget {
/* box-shadow: 4px 4px 3px 0 #444444; */
}
.comment-edit-text-empty, .comment-edit-text-full {
border: none;
border-left: 1px solid #EEE;
@ -50,14 +54,23 @@ nav #site-location {
color: #000000;
}
.fc {
#events-reminder {
border-radius: 3px;
-moz-border-radius: 3px;
opacity: 0.3;
filter:alpha(opacity=30);
}
.fc:hover {
#events-reminder.birthday-today, #events-reminder.event-today {
opacity: 1.0;
filter:alpha(opacity=100);
box-shadow: 4px 4px 3px 0 #444444;
}
#events-reminder:hover {
opacity: 1.0;
filter:alpha(opacity=100);
box-shadow: 4px 4px 3px 0 #444444;
}
.fc-event-skin {
@ -75,7 +88,7 @@ nav #site-location {
box-shadow: 4px 4px 3px 0 #444444;
}
.contact-entry-photo img, .profile-match-photo img, #photo-photo img, .directory-photo-img, .photo-album-photo, .photo-top-photo, .fc, .profile-jot-text, .group-selected, .nets-selected, .fileas-selected, #profile-jot-submit, .categories-selected {
.contact-entry-photo img, .profile-match-photo img, #photo-photo img, .directory-photo-img, .photo-album-photo, .photo-top-photo, .profile-jot-text, .group-selected, .nets-selected, .fileas-selected, #profile-jot-submit, .categories-selected {
border-radius: 3px;
-moz-border-radius: 3px;
box-shadow: 4px 4px 3px 0 #444444;

View file

@ -1,3 +1,4 @@
<a name="$item.id" />
<div class="wall-item-outside-wrapper$item.indent$item.previewing" id="wall-item-outside-wrapper-$item.id" >
<div class="wall-item-content-wrapper$item.indent" id="wall-item-content-wrapper-$item.id" >
<div class="wall-item-info" id="wall-item-info-$item.id">

View file

@ -1,3 +1,4 @@
<a name="$item.id" />
<div class="wall-item-outside-wrapper$item.indent$item.previewing wallwall" id="wall-item-outside-wrapper-$item.id" >
<div class="wall-item-content-wrapper$item.indent" id="wall-item-content-wrapper-$item.id" >
<div class="wall-item-info wallwall" id="wall-item-info-$item.id">