Merge branch 'master', remote-tracking branch 'remotes/upstream/master'
* remotes/upstream/master: rev update, bug 428, 429, and ability to block globaldir submissions from demo sites * master:
This commit is contained in:
commit
867e3b33d1
47
INSTALL.txt
47
INSTALL.txt
|
@ -222,3 +222,50 @@ Retry the installation. As soon as the database has been created,
|
||||||
|
|
||||||
% chmod 755 .htconfig.php
|
% chmod 755 .htconfig.php
|
||||||
|
|
||||||
|
#####################################################################
|
||||||
|
- Some congiurations with "suhosin" security are configured without
|
||||||
|
an ability to run external processes. Friendica requires this ability.
|
||||||
|
Following are some notes provided by one of our members.
|
||||||
|
#####################################################################
|
||||||
|
|
||||||
|
On my server I use the php protection system Suhosin
|
||||||
|
[http://www.hardened-php.net/suhosin/]. One of the things it does is to block
|
||||||
|
certain functions like proc_open, as configured in /etc/php5/conf.d/suhosin.ini:
|
||||||
|
|
||||||
|
suhosin.executor.func.blacklist = proc_open, ...
|
||||||
|
|
||||||
|
For those sites like Friendica that really need these functions they can be
|
||||||
|
enabled, e.g. in /etc/apache2/sites-available/friendica:
|
||||||
|
|
||||||
|
<Directory /var/www/friendica/>
|
||||||
|
php_admin_value suhosin.executor.func.blacklist none
|
||||||
|
php_admin_value suhosin.executor.eval.blacklist none
|
||||||
|
</Directory>
|
||||||
|
|
||||||
|
This enables every function for Friendica if accessed via browser, but not for
|
||||||
|
the cronjob that is called via php command line. I attempted to enable it for
|
||||||
|
cron by using something like
|
||||||
|
|
||||||
|
*/10 * * * * cd /var/www/friendica/friendica/ && sudo -u www-data /usr/bin/php
|
||||||
|
-d suhosin.executor.func.blacklist=none -d suhosin.executor.eval.blacklist=none
|
||||||
|
-f include/poller.php
|
||||||
|
|
||||||
|
This worked well for simple test cases, but the friendica-cron still failed with
|
||||||
|
a fatal error:
|
||||||
|
suhosin[22962]: ALERT - function within blacklist called: proc_open() (attacker
|
||||||
|
'REMOTE_ADDR not set', file '/var/www/friendica/friendica/boot.php', line 1341)
|
||||||
|
|
||||||
|
After a while I noticed, that include/poller.php calls further php script via
|
||||||
|
proc_open. These scripts themselves also use proc_open and fail, because they
|
||||||
|
are NOT called with -d suhosin.executor.func.blacklist=none.
|
||||||
|
|
||||||
|
So the simple solution is to put the correct parameters into .htconfig.php:
|
||||||
|
// Location of PHP command line processor
|
||||||
|
$a->config['php_path'] = '/usr/bin/php -d suhosin.executor.func.blacklist=none
|
||||||
|
-d suhosin.executor.eval.blacklist=none';
|
||||||
|
|
||||||
|
|
||||||
|
This is obvious as soon as you notice that the friendica-cron uses proc_open to
|
||||||
|
execute php-scripts that also use proc_open, but it took me quite some time to
|
||||||
|
find that out. I hope this saves some time for other people using suhosin with
|
||||||
|
function blacklists.
|
||||||
|
|
2
boot.php
2
boot.php
|
@ -9,7 +9,7 @@ require_once('include/nav.php');
|
||||||
require_once('include/cache.php');
|
require_once('include/cache.php');
|
||||||
|
|
||||||
define ( 'FRIENDICA_PLATFORM', 'Friendica');
|
define ( 'FRIENDICA_PLATFORM', 'Friendica');
|
||||||
define ( 'FRIENDICA_VERSION', '3.0.1348' );
|
define ( 'FRIENDICA_VERSION', '3.0.1349' );
|
||||||
define ( 'DFRN_PROTOCOL_VERSION', '2.23' );
|
define ( 'DFRN_PROTOCOL_VERSION', '2.23' );
|
||||||
define ( 'DB_UPDATE_VERSION', 1144 );
|
define ( 'DB_UPDATE_VERSION', 1144 );
|
||||||
|
|
||||||
|
|
|
@ -24,6 +24,9 @@ function directory_run($argv, $argc){
|
||||||
|
|
||||||
load_config('system');
|
load_config('system');
|
||||||
|
|
||||||
|
load_hooks();
|
||||||
|
|
||||||
|
|
||||||
$a->set_baseurl(get_config('system','url'));
|
$a->set_baseurl(get_config('system','url'));
|
||||||
|
|
||||||
$dir = get_config('system','directory_submit_url');
|
$dir = get_config('system','directory_submit_url');
|
||||||
|
@ -31,7 +34,12 @@ function directory_run($argv, $argc){
|
||||||
if(! strlen($dir))
|
if(! strlen($dir))
|
||||||
return;
|
return;
|
||||||
|
|
||||||
fetch_url($dir . '?url=' . bin2hex($argv[1]));
|
$arr = array('url' => $argv[1]);
|
||||||
|
|
||||||
|
call_hooks('globaldir_update', $arr);
|
||||||
|
|
||||||
|
if(strlen($arr['url']))
|
||||||
|
fetch_url($dir . '?url=' . bin2hex($arr['url']));
|
||||||
|
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
|
@ -417,7 +417,7 @@ function admin_page_site(&$a) {
|
||||||
'$maximagesize' => array('maximagesize', t("Maximum image size"), get_config('system','maximagesize'), t("Maximum size in bytes of uploaded images. Default is 0, which means no limits.")),
|
'$maximagesize' => array('maximagesize', t("Maximum image size"), get_config('system','maximagesize'), t("Maximum size in bytes of uploaded images. Default is 0, which means no limits.")),
|
||||||
|
|
||||||
'$register_policy' => array('register_policy', t("Register policy"), $a->config['register_policy'], "", $register_choices),
|
'$register_policy' => array('register_policy', t("Register policy"), $a->config['register_policy'], "", $register_choices),
|
||||||
'$register_text' => array('register_text', t("Register text"), htmlentities($a->config['register_text'], ENT_QUOTES), t("Will be displayed prominently on the registration page.")),
|
'$register_text' => array('register_text', t("Register text"), htmlentities($a->config['register_text'], ENT_QUOTES, 'UTF-8'), t("Will be displayed prominently on the registration page.")),
|
||||||
'$abandon_days' => array('abandon_days', t('Accounts abandoned after x days'), get_config('system','account_abandon_days'), t('Will not waste system resources polling external sites for abandonded accounts. Enter 0 for no time limit.')),
|
'$abandon_days' => array('abandon_days', t('Accounts abandoned after x days'), get_config('system','account_abandon_days'), t('Will not waste system resources polling external sites for abandonded accounts. Enter 0 for no time limit.')),
|
||||||
'$allowed_sites' => array('allowed_sites', t("Allowed friend domains"), get_config('system','allowed_sites'), t("Comma separated list of domains which are allowed to establish friendships with this site. Wildcards are accepted. Empty to allow any domains")),
|
'$allowed_sites' => array('allowed_sites', t("Allowed friend domains"), get_config('system','allowed_sites'), t("Comma separated list of domains which are allowed to establish friendships with this site. Wildcards are accepted. Empty to allow any domains")),
|
||||||
'$allowed_email' => array('allowed_email', t("Allowed email domains"), get_config('system','allowed_email'), t("Comma separated list of domains which are allowed in email addresses for registrations to this site. Wildcards are accepted. Empty to allow any domains")),
|
'$allowed_email' => array('allowed_email', t("Allowed email domains"), get_config('system','allowed_email'), t("Comma separated list of domains which are allowed in email addresses for registrations to this site. Wildcards are accepted. Empty to allow any domains")),
|
||||||
|
|
|
@ -977,9 +977,16 @@ function photos_content(&$a) {
|
||||||
|
|
||||||
$tpl = get_markup_template('photo_album.tpl');
|
$tpl = get_markup_template('photo_album.tpl');
|
||||||
if(count($r))
|
if(count($r))
|
||||||
|
$twist = 'rotright';
|
||||||
foreach($r as $rr) {
|
foreach($r as $rr) {
|
||||||
|
if($twist == 'rotright')
|
||||||
|
$twist = 'rotleft';
|
||||||
|
else
|
||||||
|
$twist = 'rotright';
|
||||||
|
|
||||||
$o .= replace_macros($tpl,array(
|
$o .= replace_macros($tpl,array(
|
||||||
'$id' => $rr['id'],
|
'$id' => $rr['id'],
|
||||||
|
'$twist' => ' ' . $twist . rand(2,4),
|
||||||
'$photolink' => $a->get_baseurl() . '/photos/' . $a->data['user']['nickname'] . '/image/' . $rr['resource-id'],
|
'$photolink' => $a->get_baseurl() . '/photos/' . $a->data['user']['nickname'] . '/image/' . $rr['resource-id'],
|
||||||
'$phototitle' => t('View Photo'),
|
'$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'] . '.jpg',
|
||||||
|
@ -1400,9 +1407,16 @@ function photos_content(&$a) {
|
||||||
|
|
||||||
$photos = array();
|
$photos = array();
|
||||||
if(count($r)) {
|
if(count($r)) {
|
||||||
|
$twist = 'rotright';
|
||||||
foreach($r as $rr) {
|
foreach($r as $rr) {
|
||||||
|
if($twist == 'rotright')
|
||||||
|
$twist = 'rotleft';
|
||||||
|
else
|
||||||
|
$twist = 'rotright';
|
||||||
|
|
||||||
$photos[] = array(
|
$photos[] = array(
|
||||||
'id' => $rr['id'],
|
'id' => $rr['id'],
|
||||||
|
'twist' => ' ' . $twist . rand(2,4),
|
||||||
'link' => $a->get_baseurl() . '/photos/' . $a->data['user']['nickname'] . '/image/' . $rr['resource-id'],
|
'link' => $a->get_baseurl() . '/photos/' . $a->data['user']['nickname'] . '/image/' . $rr['resource-id'],
|
||||||
'title' => t('View Photo'),
|
'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']) . '.jpg',
|
||||||
|
|
102
util/messages.po
102
util/messages.po
|
@ -6,9 +6,9 @@
|
||||||
#, fuzzy
|
#, fuzzy
|
||||||
msgid ""
|
msgid ""
|
||||||
msgstr ""
|
msgstr ""
|
||||||
"Project-Id-Version: 3.0.1348\n"
|
"Project-Id-Version: 3.0.1349\n"
|
||||||
"Report-Msgid-Bugs-To: \n"
|
"Report-Msgid-Bugs-To: \n"
|
||||||
"POT-Creation-Date: 2012-05-20 10:00-0700\n"
|
"POT-Creation-Date: 2012-05-21 10:00-0700\n"
|
||||||
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
|
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
|
||||||
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
|
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
|
||||||
"Language-Team: LANGUAGE <LL@li.org>\n"
|
"Language-Team: LANGUAGE <LL@li.org>\n"
|
||||||
|
@ -123,8 +123,8 @@ msgstr ""
|
||||||
|
|
||||||
#: ../../mod/crepair.php:166 ../../mod/fsuggest.php:107
|
#: ../../mod/crepair.php:166 ../../mod/fsuggest.php:107
|
||||||
#: ../../mod/events.php:428 ../../mod/photos.php:900 ../../mod/photos.php:958
|
#: ../../mod/events.php:428 ../../mod/photos.php:900 ../../mod/photos.php:958
|
||||||
#: ../../mod/photos.php:1193 ../../mod/photos.php:1233
|
#: ../../mod/photos.php:1200 ../../mod/photos.php:1240
|
||||||
#: ../../mod/photos.php:1273 ../../mod/photos.php:1304
|
#: ../../mod/photos.php:1280 ../../mod/photos.php:1311
|
||||||
#: ../../mod/install.php:251 ../../mod/install.php:289
|
#: ../../mod/install.php:251 ../../mod/install.php:289
|
||||||
#: ../../mod/localtime.php:45 ../../mod/contacts.php:322
|
#: ../../mod/localtime.php:45 ../../mod/contacts.php:322
|
||||||
#: ../../mod/settings.php:553 ../../mod/settings.php:699
|
#: ../../mod/settings.php:553 ../../mod/settings.php:699
|
||||||
|
@ -220,7 +220,7 @@ msgid "link to source"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: ../../mod/events.php:324 ../../view/theme/diabook/theme.php:126
|
#: ../../mod/events.php:324 ../../view/theme/diabook/theme.php:126
|
||||||
#: ../../include/nav.php:52 ../../boot.php:1503
|
#: ../../include/nav.php:52 ../../boot.php:1522
|
||||||
msgid "Events"
|
msgid "Events"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
|
@ -345,18 +345,18 @@ msgstr ""
|
||||||
msgid "No"
|
msgid "No"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: ../../mod/photos.php:43 ../../boot.php:1497
|
#: ../../mod/photos.php:43 ../../boot.php:1516
|
||||||
msgid "Photo Albums"
|
msgid "Photo Albums"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: ../../mod/photos.php:51 ../../mod/photos.php:151 ../../mod/photos.php:879
|
#: ../../mod/photos.php:51 ../../mod/photos.php:151 ../../mod/photos.php:879
|
||||||
#: ../../mod/photos.php:950 ../../mod/photos.php:965 ../../mod/photos.php:1382
|
#: ../../mod/photos.php:950 ../../mod/photos.php:965 ../../mod/photos.php:1389
|
||||||
#: ../../mod/photos.php:1394 ../../addon/communityhome/communityhome.php:110
|
#: ../../mod/photos.php:1401 ../../addon/communityhome/communityhome.php:110
|
||||||
#: ../../view/theme/diabook/theme.php:593
|
#: ../../view/theme/diabook/theme.php:593
|
||||||
msgid "Contact Photos"
|
msgid "Contact Photos"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: ../../mod/photos.php:58 ../../mod/photos.php:975 ../../mod/photos.php:1424
|
#: ../../mod/photos.php:58 ../../mod/photos.php:975 ../../mod/photos.php:1438
|
||||||
msgid "Upload New Photos"
|
msgid "Upload New Photos"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
|
@ -387,7 +387,7 @@ msgstr ""
|
||||||
msgid "Delete Album"
|
msgid "Delete Album"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: ../../mod/photos.php:242 ../../mod/photos.php:1194
|
#: ../../mod/photos.php:242 ../../mod/photos.php:1201
|
||||||
msgid "Delete Photo"
|
msgid "Delete Photo"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
|
@ -455,7 +455,7 @@ msgstr ""
|
||||||
msgid "Do not show a status post for this upload"
|
msgid "Do not show a status post for this upload"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: ../../mod/photos.php:914 ../../mod/photos.php:1189
|
#: ../../mod/photos.php:914 ../../mod/photos.php:1196
|
||||||
msgid "Permissions"
|
msgid "Permissions"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
|
@ -463,108 +463,108 @@ msgstr ""
|
||||||
msgid "Edit Album"
|
msgid "Edit Album"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: ../../mod/photos.php:984 ../../mod/photos.php:1407
|
#: ../../mod/photos.php:991 ../../mod/photos.php:1421
|
||||||
msgid "View Photo"
|
msgid "View Photo"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: ../../mod/photos.php:1019
|
#: ../../mod/photos.php:1026
|
||||||
msgid "Permission denied. Access to this item may be restricted."
|
msgid "Permission denied. Access to this item may be restricted."
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: ../../mod/photos.php:1021
|
#: ../../mod/photos.php:1028
|
||||||
msgid "Photo not available"
|
msgid "Photo not available"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: ../../mod/photos.php:1071
|
#: ../../mod/photos.php:1078
|
||||||
msgid "View photo"
|
msgid "View photo"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: ../../mod/photos.php:1071
|
#: ../../mod/photos.php:1078
|
||||||
msgid "Edit photo"
|
msgid "Edit photo"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: ../../mod/photos.php:1072
|
#: ../../mod/photos.php:1079
|
||||||
msgid "Use as profile photo"
|
msgid "Use as profile photo"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: ../../mod/photos.php:1078 ../../include/conversation.php:483
|
#: ../../mod/photos.php:1085 ../../include/conversation.php:483
|
||||||
msgid "Private Message"
|
msgid "Private Message"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: ../../mod/photos.php:1100
|
#: ../../mod/photos.php:1107
|
||||||
msgid "View Full Size"
|
msgid "View Full Size"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: ../../mod/photos.php:1168
|
#: ../../mod/photos.php:1175
|
||||||
msgid "Tags: "
|
msgid "Tags: "
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: ../../mod/photos.php:1171
|
#: ../../mod/photos.php:1178
|
||||||
msgid "[Remove any tag]"
|
msgid "[Remove any tag]"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: ../../mod/photos.php:1182
|
#: ../../mod/photos.php:1189
|
||||||
msgid "New album name"
|
msgid "New album name"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: ../../mod/photos.php:1185
|
#: ../../mod/photos.php:1192
|
||||||
msgid "Caption"
|
msgid "Caption"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: ../../mod/photos.php:1187
|
#: ../../mod/photos.php:1194
|
||||||
msgid "Add a Tag"
|
msgid "Add a Tag"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: ../../mod/photos.php:1191
|
#: ../../mod/photos.php:1198
|
||||||
msgid "Example: @bob, @Barbara_Jensen, @jim@example.com, #California, #camping"
|
msgid "Example: @bob, @Barbara_Jensen, @jim@example.com, #California, #camping"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: ../../mod/photos.php:1211 ../../include/conversation.php:532
|
#: ../../mod/photos.php:1218 ../../include/conversation.php:532
|
||||||
msgid "I like this (toggle)"
|
msgid "I like this (toggle)"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: ../../mod/photos.php:1212 ../../include/conversation.php:533
|
#: ../../mod/photos.php:1219 ../../include/conversation.php:533
|
||||||
msgid "I don't like this (toggle)"
|
msgid "I don't like this (toggle)"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: ../../mod/photos.php:1213 ../../include/conversation.php:967
|
#: ../../mod/photos.php:1220 ../../include/conversation.php:967
|
||||||
msgid "Share"
|
msgid "Share"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: ../../mod/photos.php:1214 ../../mod/editpost.php:104
|
#: ../../mod/photos.php:1221 ../../mod/editpost.php:104
|
||||||
#: ../../mod/wallmessage.php:145 ../../mod/message.php:214
|
#: ../../mod/wallmessage.php:145 ../../mod/message.php:214
|
||||||
#: ../../mod/message.php:408 ../../include/conversation.php:364
|
#: ../../mod/message.php:408 ../../include/conversation.php:364
|
||||||
#: ../../include/conversation.php:709 ../../include/conversation.php:986
|
#: ../../include/conversation.php:709 ../../include/conversation.php:986
|
||||||
msgid "Please wait"
|
msgid "Please wait"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: ../../mod/photos.php:1230 ../../mod/photos.php:1270
|
#: ../../mod/photos.php:1237 ../../mod/photos.php:1277
|
||||||
#: ../../mod/photos.php:1301 ../../include/conversation.php:555
|
#: ../../mod/photos.php:1308 ../../include/conversation.php:555
|
||||||
msgid "This is you"
|
msgid "This is you"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: ../../mod/photos.php:1232 ../../mod/photos.php:1272
|
#: ../../mod/photos.php:1239 ../../mod/photos.php:1279
|
||||||
#: ../../mod/photos.php:1303 ../../include/conversation.php:557
|
#: ../../mod/photos.php:1310 ../../include/conversation.php:557
|
||||||
#: ../../boot.php:516
|
#: ../../boot.php:516
|
||||||
msgid "Comment"
|
msgid "Comment"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: ../../mod/photos.php:1234 ../../mod/editpost.php:125
|
#: ../../mod/photos.php:1241 ../../mod/editpost.php:125
|
||||||
#: ../../include/conversation.php:567 ../../include/conversation.php:1004
|
#: ../../include/conversation.php:567 ../../include/conversation.php:1004
|
||||||
msgid "Preview"
|
msgid "Preview"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: ../../mod/photos.php:1331 ../../mod/settings.php:616
|
#: ../../mod/photos.php:1338 ../../mod/settings.php:616
|
||||||
#: ../../mod/settings.php:697 ../../mod/group.php:168 ../../mod/admin.php:647
|
#: ../../mod/settings.php:697 ../../mod/group.php:168 ../../mod/admin.php:647
|
||||||
#: ../../include/conversation.php:321 ../../include/conversation.php:587
|
#: ../../include/conversation.php:321 ../../include/conversation.php:587
|
||||||
msgid "Delete"
|
msgid "Delete"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: ../../mod/photos.php:1413
|
#: ../../mod/photos.php:1427
|
||||||
msgid "View Album"
|
msgid "View Album"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: ../../mod/photos.php:1422
|
#: ../../mod/photos.php:1436
|
||||||
msgid "Recent Photos"
|
msgid "Recent Photos"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
|
@ -1692,7 +1692,7 @@ msgstr ""
|
||||||
#: ../../addon/facebook/facebook.php:688
|
#: ../../addon/facebook/facebook.php:688
|
||||||
#: ../../addon/facebook/facebook.php:1178
|
#: ../../addon/facebook/facebook.php:1178
|
||||||
#: ../../addon/public_server/public_server.php:62
|
#: ../../addon/public_server/public_server.php:62
|
||||||
#: ../../addon/testdrive/testdrive.php:61 ../../include/items.php:2738
|
#: ../../addon/testdrive/testdrive.php:67 ../../include/items.php:2738
|
||||||
#: ../../boot.php:696
|
#: ../../boot.php:696
|
||||||
msgid "Administrator"
|
msgid "Administrator"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
@ -2369,7 +2369,7 @@ msgstr ""
|
||||||
msgid "Invalid contact."
|
msgid "Invalid contact."
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: ../../mod/notes.php:44 ../../boot.php:1509
|
#: ../../mod/notes.php:44 ../../boot.php:1528
|
||||||
msgid "Personal Notes"
|
msgid "Personal Notes"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
|
@ -2620,7 +2620,7 @@ msgstr ""
|
||||||
|
|
||||||
#: ../../mod/profperm.php:103 ../../view/theme/diabook/theme.php:123
|
#: ../../mod/profperm.php:103 ../../view/theme/diabook/theme.php:123
|
||||||
#: ../../include/profile_advanced.php:7 ../../include/profile_advanced.php:74
|
#: ../../include/profile_advanced.php:7 ../../include/profile_advanced.php:74
|
||||||
#: ../../include/nav.php:50 ../../boot.php:1488
|
#: ../../include/nav.php:50 ../../boot.php:1507
|
||||||
msgid "Profile"
|
msgid "Profile"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
|
@ -2835,7 +2835,7 @@ msgid "Access denied."
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: ../../mod/fbrowser.php:23 ../../view/theme/diabook/theme.php:125
|
#: ../../mod/fbrowser.php:23 ../../view/theme/diabook/theme.php:125
|
||||||
#: ../../include/nav.php:51 ../../boot.php:1494
|
#: ../../include/nav.php:51 ../../boot.php:1513
|
||||||
msgid "Photos"
|
msgid "Photos"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
|
@ -4864,7 +4864,7 @@ msgid "Enable Geonames Plugin"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: ../../addon/public_server/public_server.php:126
|
#: ../../addon/public_server/public_server.php:126
|
||||||
#: ../../addon/testdrive/testdrive.php:88
|
#: ../../addon/testdrive/testdrive.php:94
|
||||||
#, php-format
|
#, php-format
|
||||||
msgid "Your account on %s will expire in a few days."
|
msgid "Your account on %s will expire in a few days."
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
@ -5141,11 +5141,11 @@ msgstr ""
|
||||||
msgid "Gravatar settings updated."
|
msgid "Gravatar settings updated."
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: ../../addon/testdrive/testdrive.php:89
|
#: ../../addon/testdrive/testdrive.php:95
|
||||||
msgid "Your Friendica test account is about to expire."
|
msgid "Your Friendica test account is about to expire."
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: ../../addon/testdrive/testdrive.php:90
|
#: ../../addon/testdrive/testdrive.php:96
|
||||||
#, php-format
|
#, php-format
|
||||||
msgid ""
|
msgid ""
|
||||||
"Hi %1$s,\n"
|
"Hi %1$s,\n"
|
||||||
|
@ -6221,12 +6221,12 @@ msgstr ""
|
||||||
msgid "Finishes:"
|
msgid "Finishes:"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: ../../include/delivery.php:455 ../../include/notifier.php:659
|
#: ../../include/delivery.php:455 ../../include/notifier.php:677
|
||||||
msgid "(no subject)"
|
msgid "(no subject)"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: ../../include/delivery.php:462 ../../include/enotify.php:23
|
#: ../../include/delivery.php:462 ../../include/enotify.php:23
|
||||||
#: ../../include/notifier.php:666
|
#: ../../include/notifier.php:684
|
||||||
msgid "noreply"
|
msgid "noreply"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
|
@ -6449,7 +6449,7 @@ msgstr ""
|
||||||
msgid "End this session"
|
msgid "End this session"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: ../../include/nav.php:49 ../../boot.php:1482
|
#: ../../include/nav.php:49 ../../boot.php:1501
|
||||||
msgid "Status"
|
msgid "Status"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
|
@ -7278,18 +7278,18 @@ msgstr ""
|
||||||
msgid "Events this week:"
|
msgid "Events this week:"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: ../../boot.php:1485
|
#: ../../boot.php:1504
|
||||||
msgid "Status Messages and Posts"
|
msgid "Status Messages and Posts"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: ../../boot.php:1491
|
#: ../../boot.php:1510
|
||||||
msgid "Profile Details"
|
msgid "Profile Details"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: ../../boot.php:1506
|
#: ../../boot.php:1525
|
||||||
msgid "Events and Calendar"
|
msgid "Events and Calendar"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: ../../boot.php:1512
|
#: ../../boot.php:1531
|
||||||
msgid "Only You Can See This"
|
msgid "Only You Can See This"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
|
@ -1,6 +1,6 @@
|
||||||
<div class="photo-album-image-wrapper" id="photo-album-image-wrapper-$id">
|
<div class="photo-album-image-wrapper" id="photo-album-image-wrapper-$id">
|
||||||
<a href="$photolink" class="photo-album-photo-link" id="photo-album-photo-link-$id" title="$phototitle">
|
<a href="$photolink" class="photo-album-photo-link" id="photo-album-photo-link-$id" title="$phototitle">
|
||||||
<img src="$imgsrc" alt="$imgalt" title="$phototitle" class="photo-album-photo lframe resize" id="photo-album-photo-$id" />
|
<img src="$imgsrc" alt="$imgalt" title="$phototitle" class="photo-album-photo lframe resize$twist" id="photo-album-photo-$id" />
|
||||||
<p class='caption'>$desc</p>
|
<p class='caption'>$desc</p>
|
||||||
</a>
|
</a>
|
||||||
</div>
|
</div>
|
||||||
|
|
|
@ -1,7 +1,7 @@
|
||||||
|
|
||||||
<div class="photo-top-image-wrapper lframe" id="photo-top-image-wrapper-$id">
|
<div class="photo-top-image-wrapper lframe" id="photo-top-image-wrapper-$photo.id">
|
||||||
<a href="$photo.link" class="photo-top-photo-link" id="photo-top-photo-link-$photo.id" title="$photo.title">
|
<a href="$photo.link" class="photo-top-photo-link" id="photo-top-photo-link-$photo.id" title="$photo.title">
|
||||||
<img src="$photo.src" alt="$photo.alt" title="$photo.title" class="photo-top-photo" id="photo-top-photo-$photo.id" />
|
<img src="$photo.src" alt="$photo.alt" title="$photo.title" class="photo-top-photo$photo.twist" id="photo-top-photo-$photo.id" />
|
||||||
</a>
|
</a>
|
||||||
<div class="photo-top-album-name"><a href="$photo.album.link" class="photo-top-album-link" title="$photo.album.alt" >$photo.album.name</a></div>
|
<div class="photo-top-album-name"><a href="$photo.album.link" class="photo-top-album-link" title="$photo.album.alt" >$photo.album.name</a></div>
|
||||||
</div>
|
</div>
|
||||||
|
|
|
@ -8,3 +8,4 @@
|
||||||
{{ inc photo_top.tpl }}{{ endinc }}
|
{{ inc photo_top.tpl }}{{ endinc }}
|
||||||
{{ endfor }}
|
{{ endfor }}
|
||||||
</div>
|
</div>
|
||||||
|
<div class="photos-end"></div>
|
||||||
|
|
|
@ -1963,23 +1963,29 @@ aside input[type='text'] {
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
.photos {
|
/*.photos {
|
||||||
height: auto;
|
height: auto;
|
||||||
overflow: auto;
|
overflow: auto;
|
||||||
|
}*/
|
||||||
|
|
||||||
|
.photos-end {
|
||||||
|
clear: both;
|
||||||
|
margin-bottom: 25px;
|
||||||
}
|
}
|
||||||
|
|
||||||
.photo-album-image-wrapper {
|
.photo-album-image-wrapper {
|
||||||
float: left;
|
float: left;
|
||||||
margin-top: 15px;
|
margin-top: 15px;
|
||||||
margin-right: 15px;
|
margin-right: 15px;
|
||||||
width: 200px; height: 200px;
|
margin-left: 15px;
|
||||||
|
/* width: 200px; height: 200px;
|
||||||
overflow: hidden;
|
overflow: hidden;
|
||||||
position: relative;
|
position: relative; */
|
||||||
}
|
}
|
||||||
.photo-album-image-wrapper .caption {
|
.photo-album-image-wrapper .caption {
|
||||||
display: none;
|
display: none;
|
||||||
width: 100%;
|
width: 100%;
|
||||||
position: absolute;
|
/* position: absolute; */
|
||||||
bottom: 0px;
|
bottom: 0px;
|
||||||
padding: 0.5em 0.5em 0px 0.5em;
|
padding: 0.5em 0.5em 0px 0.5em;
|
||||||
background-color: rgba(245, 245, 255, 0.8);
|
background-color: rgba(245, 245, 255, 0.8);
|
||||||
|
@ -1992,20 +1998,23 @@ aside input[type='text'] {
|
||||||
|
|
||||||
#photo-album-end {
|
#photo-album-end {
|
||||||
clear: both;
|
clear: both;
|
||||||
|
margin-bottom: 25px;
|
||||||
}
|
}
|
||||||
|
|
||||||
.photo-top-image-wrapper {
|
.photo-top-image-wrapper {
|
||||||
position: relative;
|
/* position: relative; */
|
||||||
float: left;
|
float: left;
|
||||||
margin-top: 15px;
|
margin-top: 15px;
|
||||||
margin-right: 15px;
|
margin-right: 15px;
|
||||||
width: 200px; height: 200px;
|
margin-left: 15px;
|
||||||
overflow: hidden;
|
margin-bottom: 15px;
|
||||||
|
/* width: 200px; height: 200px;
|
||||||
|
overflow: hidden; */
|
||||||
}
|
}
|
||||||
.photo-top-album-name {
|
.photo-top-album-name {
|
||||||
width: 100%;
|
width: 100%;
|
||||||
min-height: 2em;
|
min-height: 2em;
|
||||||
position: absolute;
|
/* position: absolute; */
|
||||||
bottom: 0px;
|
bottom: 0px;
|
||||||
padding: 0px 3px;
|
padding: 0px 3px;
|
||||||
padding-top: 0.5em;
|
padding-top: 0.5em;
|
||||||
|
|
|
@ -52,10 +52,70 @@ nav #site-location {
|
||||||
box-shadow: 3px 3px 10px -2px #000000;
|
box-shadow: 3px 3px 10px -2px #000000;
|
||||||
}
|
}
|
||||||
|
|
||||||
.contact-entry-photo img, .profile-match-photo img, #photo-photo img, .directory-photo-img {
|
.contact-entry-photo img, .profile-match-photo img, #photo-photo img, .directory-photo-img, .photo-album-photo, .photo-top-photo {
|
||||||
border-radius: 3px;
|
border-radius: 3px;
|
||||||
-moz-border-radius: 3px;
|
-moz-border-radius: 3px;
|
||||||
box-shadow: 3px 3px 10px 0 #000000;
|
box-shadow: 3px 3px 10px 0 #000000;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
.photo-top-photo, .photo-album-photo {
|
||||||
|
padding: 10px;
|
||||||
|
max-width: 300px;
|
||||||
|
}
|
||||||
|
|
||||||
|
.rotleft1 {
|
||||||
|
-webkit-transform: rotate(-1deg);
|
||||||
|
-moz-transform: rotate(-1deg);
|
||||||
|
-ms-transform: rotate(-1deg);
|
||||||
|
-o-transform: rotate(-1deg);
|
||||||
|
}
|
||||||
|
|
||||||
|
.rotleft2 {
|
||||||
|
-webkit-transform: rotate(-2deg);
|
||||||
|
-moz-transform: rotate(-2deg);
|
||||||
|
-ms-transform: rotate(-2deg);
|
||||||
|
-o-transform: rotate(-2deg);
|
||||||
|
}
|
||||||
|
|
||||||
|
.rotleft3 {
|
||||||
|
-webkit-transform: rotate(-3deg);
|
||||||
|
-moz-transform: rotate(-3deg);
|
||||||
|
-ms-transform: rotate(-3deg);
|
||||||
|
-o-transform: rotate(-3deg);
|
||||||
|
}
|
||||||
|
|
||||||
|
.rotleft4 {
|
||||||
|
-webkit-transform: rotate(-4deg);
|
||||||
|
-moz-transform: rotate(-4deg);
|
||||||
|
-ms-transform: rotate(-4deg);
|
||||||
|
-o-transform: rotate(-4deg);
|
||||||
|
}
|
||||||
|
|
||||||
|
.rotright1 {
|
||||||
|
-webkit-transform: rotate(1deg);
|
||||||
|
-moz-transform: rotate(1deg);
|
||||||
|
-ms-transform: rotate(1deg);
|
||||||
|
-o-transform: rotate(1deg);
|
||||||
|
}
|
||||||
|
|
||||||
|
.rotright2 {
|
||||||
|
-webkit-transform: rotate(2deg);
|
||||||
|
-moz-transform: rotate(2deg);
|
||||||
|
-ms-transform: rotate(2deg);
|
||||||
|
-o-transform: rotate(2deg);
|
||||||
|
}
|
||||||
|
|
||||||
|
.rotright3 {
|
||||||
|
-webkit-transform: rotate(3deg);
|
||||||
|
-moz-transform: rotate(3deg);
|
||||||
|
-ms-transform: rotate(3deg);
|
||||||
|
-o-transform: rotate(3deg);
|
||||||
|
}
|
||||||
|
|
||||||
|
.rotright4 {
|
||||||
|
-webkit-transform: rotate(4deg);
|
||||||
|
-moz-transform: rotate(4deg);
|
||||||
|
-ms-transform: rotate(4deg);
|
||||||
|
-o-transform: rotate(4deg);
|
||||||
|
}
|
||||||
|
|
||||||
|
|
Loading…
Reference in a new issue