aboutsummaryrefslogtreecommitdiffstats
path: root/mod
diff options
context:
space:
mode:
Diffstat (limited to 'mod')
-rw-r--r--mod/editpost.php25
-rw-r--r--mod/item.php55
-rw-r--r--mod/msearch.php2
-rw-r--r--mod/photo.php40
-rw-r--r--mod/photos.php2
-rw-r--r--mod/ping.php13
-rw-r--r--mod/settings.php71
-rw-r--r--mod/xrd.php2
-rw-r--r--mod/zentity.php41
-rw-r--r--mod/zfinger.php89
10 files changed, 79 insertions, 261 deletions
diff --git a/mod/editpost.php b/mod/editpost.php
index 18b41a231..b705afa4b 100644
--- a/mod/editpost.php
+++ b/mod/editpost.php
@@ -58,30 +58,6 @@ function editpost_content(&$a) {
$jotplugins = '';
$jotnets = '';
- $mail_disabled = ((function_exists('imap_open') && (! get_config('system','imap_disabled'))) ? 0 : 1);
-
- $mail_enabled = false;
- $pubmail_enabled = false;
-
- if(! $mail_disabled) {
- $r = q("SELECT * FROM `mailacct` WHERE `uid` = %d AND `server` != '' LIMIT 1",
- intval(local_user())
- );
- if(count($r)) {
- $mail_enabled = true;
- if(intval($r[0]['pubmail']))
- $pubmail_enabled = true;
- }
- }
-
- if($mail_enabled) {
- $selected = (($pubmail_enabled) ? ' checked="checked" ' : '');
- $jotnets .= '<div class="profile-jot-net"><input type="checkbox" name="pubmail_enable"' . $selected . ' value="1" /> '
- . t("Post to Email") . '</div>';
- }
-
-
-
call_hooks('jot_tool', $jotplugins);
call_hooks('jot_networks', $jotnets);
@@ -110,7 +86,6 @@ function editpost_content(&$a) {
'$defloc' => $a->user['default-location'],
'$visitor' => 'none',
'$pvisit' => 'none',
- '$emailcc' => t('CC: email addresses'),
'$public' => t('Public post'),
'$jotnets' => $jotnets,
'$title' => $itm[0]['title'],
diff --git a/mod/item.php b/mod/item.php
index 7c00aed18..742953eb6 100644
--- a/mod/item.php
+++ b/mod/item.php
@@ -38,7 +38,7 @@ function item_post(&$a) {
}
call_hooks('post_local_start', $_REQUEST);
-// logger('postinput ' . file_get_contents('php://input'));
+
logger('postvars ' . print_r($_REQUEST,true), LOGGER_DATA);
$api_source = ((x($_REQUEST,'api_source') && $_REQUEST['api_source']) ? true : false);
@@ -191,11 +191,9 @@ function item_post(&$a) {
$verb = $orig_post['verb'];
$emailcc = $orig_post['emailcc'];
$app = $orig_post['app'];
-// $categories = $orig_post['file'];
$title = escape_tags(trim($_REQUEST['title']));
$body = escape_tags(trim($_REQUEST['body']));
$private = $orig_post['private'];
- $pubmail_enable = $orig_post['pubmail'];
}
else {
@@ -235,11 +233,6 @@ function item_post(&$a) {
logger('detected language: ' . $language);
-
-
-
-
-
$private = ((strlen($str_group_allow) || strlen($str_contact_allow) || strlen($str_group_deny) || strlen($str_contact_deny)) ? 1 : 0);
// If this is a comment, set the permissions from the parent.
@@ -261,21 +254,6 @@ function item_post(&$a) {
$str_group_deny = $parent_item['deny_gid'];
}
- $pubmail_enable = ((x($_REQUEST,'pubmail_enable') && intval($_REQUEST['pubmail_enable']) && (! $private)) ? 1 : 0);
-
- // if using the API, we won't see pubmail_enable - figure out if it should be set
-
- if($api_source && $profile_uid && $profile_uid == local_user() && (! $private)) {
- $mail_disabled = ((function_exists('imap_open') && (! get_config('system','imap_disabled'))) ? 0 : 1);
- if(! $mail_disabled) {
- $r = q("SELECT * FROM `mailacct` WHERE `uid` = %d AND `server` != '' LIMIT 1",
- intval(local_user())
- );
- if(count($r) && intval($r[0]['pubmail']))
- $pubmail_enabled = true;
- }
- }
-
if(! strlen($body)) {
if($preview)
killme();
@@ -585,7 +563,6 @@ function item_post(&$a) {
$datarray['deny_cid'] = $str_contact_deny;
$datarray['deny_gid'] = $str_group_deny;
$datarray['private'] = $private;
- $datarray['pubmail'] = $pubmail_enable;
$datarray['attach'] = $attachments;
$datarray['thr-parent'] = $thr_parent;
$datarray['postopts'] = '';
@@ -683,8 +660,8 @@ function item_post(&$a) {
$r = q("INSERT INTO `item` (`uid`,`type`,`wall`,`gravity`,`contact-id`,`owner-name`,`owner-link`,`owner-avatar`,
`author-name`, `author-link`, `author-avatar`, `created`, `edited`, `commented`, `received`, `changed`, `uri`, `thr-parent`, `title`, `body`, `app`, `lang`, `location`, `coord`,
- `inform`, `verb`, `postopts`, `allow_cid`, `allow_gid`, `deny_cid`, `deny_gid`, `private`, `pubmail`, `attach`,`origin`, `moderated`)
- VALUES( %d, '%s', %d, %d, %d, '%s', '%s', '%s', '%s', '%s', '%s', '%s', '%s', '%s', '%s', '%s', '%s', '%s', '%s', '%s', '%s', '%s', '%s', '%s', '%s', '%s', '%s', '%s', '%s', '%s', '%s', %d, %d, '%s', %d, %d )",
+ `inform`, `verb`, `postopts`, `allow_cid`, `allow_gid`, `deny_cid`, `deny_gid`, `private`, `attach`,`origin`, `moderated`)
+ VALUES( %d, '%s', %d, %d, %d, '%s', '%s', '%s', '%s', '%s', '%s', '%s', '%s', '%s', '%s', '%s', '%s', '%s', '%s', '%s', '%s', '%s', '%s', '%s', '%s', '%s', '%s', '%s', '%s', '%s', '%s', %d, '%s', %d, %d )",
intval($datarray['uid']),
dbesc($datarray['type']),
intval($datarray['wall']),
@@ -717,7 +694,6 @@ function item_post(&$a) {
dbesc($datarray['deny_cid']),
dbesc($datarray['deny_gid']),
intval($datarray['private']),
- intval($datarray['pubmail']),
dbesc($datarray['attach']),
intval($datarray['origin']),
intval($datarray['moderated'])
@@ -852,31 +828,6 @@ function item_post(&$a) {
call_hooks('post_local_end', $datarray);
- if(strlen($emailcc) && $profile_uid == local_user()) {
- $erecips = explode(',', $emailcc);
- if(count($erecips)) {
- foreach($erecips as $recip) {
- $addr = trim($recip);
- if(! strlen($addr))
- continue;
- $disclaimer = '<hr />' . sprintf( t('This message was sent to you by %s, a member of the Friendica social network.'),$a->user['username'])
- . '<br />';
- $disclaimer .= sprintf( t('You may visit them online at %s'), $a->get_baseurl() . '/profile/' . $a->user['nickname']) . EOL;
- $disclaimer .= t('Please contact the sender by replying to this post if you do not wish to receive these messages.') . EOL;
-
- $subject = email_header_encode('[Friendica]' . ' ' . sprintf( t('%s posted an update.'),$a->user['username']),'UTF-8');
- $headers = 'From: ' . email_header_encode($a->user['username'],'UTF-8') . ' <' . $a->user['email'] . '>' . "\n";
- $headers .= 'MIME-Version: 1.0' . "\n";
- $headers .= 'Content-Type: text/html; charset=UTF-8' . "\n";
- $headers .= 'Content-Transfer-Encoding: 8bit' . "\n\n";
- $link = '<a href="' . $a->get_baseurl() . '/profile/' . $a->user['nickname'] . '"><img src="' . $author['thumb'] . '" alt="' . $a->user['username'] . '" /></a><br /><br />';
- $html = prepare_body($datarray);
- $message = '<html><body>' . $link . $html . $disclaimer . '</body></html>';
- @mail($addr, $subject, $message, $headers);
- }
- }
- }
-
// This is a real juggling act on shared hosting services which kill your processes
// e.g. dreamhost. We used to start delivery to our native delivery agents in the background
// and then run our plugin delivery from the foreground. We're now doing plugin delivery first,
diff --git a/mod/msearch.php b/mod/msearch.php
index 89de5b705..c4d69839c 100644
--- a/mod/msearch.php
+++ b/mod/msearch.php
@@ -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'],
'tags' => str_replace(array(',',' '),array(' ',' '),$rr['pub_keywords'])
);
}
diff --git a/mod/photo.php b/mod/photo.php
index dee483d83..0c6425bd5 100644
--- a/mod/photo.php
+++ b/mod/photo.php
@@ -5,44 +5,20 @@ require_once('include/Photo.php');
function photo_init(&$a) {
- // To-Do:
- // - checking with realpath
- // - checking permissions
- /*
- $cache = get_config('system','itemcache');
- if (($cache != '') and is_dir($cache)) {
- $cachefile = $cache."/".$a->argc."-".$a->argv[1]."-".$a->argv[2]."-".$a->argv[3];
- if (file_exists($cachefile)) {
- $data = file_get_contents($cachefile);
-
- if(function_exists('header_remove')) {
- header_remove('Pragma');
- header_remove('pragma');
- }
-
- header("Content-type: image/jpeg");
- header("Expires: " . gmdate("D, d M Y H:i:s", time() + (3600*24)) . " GMT");
- header("Cache-Control: max-age=" . (3600*24));
- echo $data;
- killme();
- // NOTREACHED
- }
- }*/
-
$prvcachecontrol = false;
- switch($a->argc) {
+ switch(argc()) {
case 4:
- $person = $a->argv[3];
- $customres = intval($a->argv[2]);
- $type = $a->argv[1];
+ $person = argv(3);
+ $customres = intval(argv(2));
+ $type = argv(1);
break;
case 3:
- $person = $a->argv[2];
- $type = $a->argv[1];
+ $person = argv(2);
+ $type = argv(1);
break;
case 2:
- $photo = $a->argv[1];
+ $photo = argv(1);
break;
case 1:
default:
@@ -76,7 +52,7 @@ function photo_init(&$a) {
break;
}
- $uid = str_replace(array('.jpg','.png'),array('',''), $person);
+ $uid = $person;
$r = q("SELECT * FROM `photo` WHERE `scale` = %d AND `uid` = %d AND `profile` = 1 LIMIT 1",
intval($resolution),
diff --git a/mod/photos.php b/mod/photos.php
index 5cd95573a..cfb78442c 100644
--- a/mod/photos.php
+++ b/mod/photos.php
@@ -36,7 +36,7 @@ function photos_init(&$a) {
$o .= '<div class="vcard">';
$o .= '<div class="fn">' . $a->data['user']['username'] . '</div>';
- $o .= '<div id="profile-photo-wrapper"><img class="photo" style="width: 175px; height: 175px;" src="' . $a->get_cached_avatar_image($a->get_baseurl() . '/photo/profile/' . $a->data['user']['uid'] . '.jpg') . '" alt="' . $a->data['user']['username'] . '" /></div>';
+ $o .= '<div id="profile-photo-wrapper"><img class="photo" style="width: 175px; height: 175px;" src="' . $a->get_cached_avatar_image($a->get_baseurl() . '/photo/profile/' . $a->data['user']['uid']) . '" alt="' . $a->data['user']['username'] . '" /></div>';
$o .= '</div>';
$albums_visible = ((intval($a->data['user']['hidewall']) && (! local_user()) && (! remote_user())) ? false : true);
diff --git a/mod/ping.php b/mod/ping.php
index eb7c9b946..2d52e9731 100644
--- a/mod/ping.php
+++ b/mod/ping.php
@@ -18,6 +18,8 @@ function ping_init(&$a) {
$result['events_today'] = 0;
$result['birthdays'] = 0;
$result['birthdays_today'] = 0;
+ $result['all_events'] = 0;
+ $result['all_events_today'] = 0;
$result['notice'] = array();
$result['info'] = array();
@@ -166,9 +168,9 @@ function ping_init(&$a) {
);
if($events && count($events)) {
- $result['events'] = intval($events[0]['total']);
+ $result['all_events'] = intval($events[0]['total']);
- if($result['events']) {
+ if($result['all_events']) {
$str_now = datetime_convert('UTC',$a->timezone,'now','Y-m-d');
foreach($events as $x) {
$bd = false;
@@ -176,10 +178,15 @@ function ping_init(&$a) {
$result['birthdays'] ++;
$bd = true;
}
+ else {
+ $result['events'] ++;
+ }
if(datetime_convert('UTC',((intval($x['adjust'])) ? $a->timezone : 'UTC'), $x['start'],'Y-m-d') === $str_now) {
- $result['events_today'] ++;
+ $result['all_events_today'] ++;
if($bd)
$result['birthdays_today'] ++;
+ else
+ $result['events_today'] ++;
}
}
}
diff --git a/mod/settings.php b/mod/settings.php
index 7c944a149..38d0490bf 100644
--- a/mod/settings.php
+++ b/mod/settings.php
@@ -176,77 +176,6 @@ function settings_post(&$a) {
check_form_security_token_redirectOnErr('/settings/connectors', 'settings_connectors');
- if(x($_POST, 'imap-submit')) {
-
- $mail_server = ((x($_POST,'mail_server')) ? $_POST['mail_server'] : '');
- $mail_port = ((x($_POST,'mail_port')) ? $_POST['mail_port'] : '');
- $mail_ssl = ((x($_POST,'mail_ssl')) ? strtolower(trim($_POST['mail_ssl'])) : '');
- $mail_user = ((x($_POST,'mail_user')) ? $_POST['mail_user'] : '');
- $mail_pass = ((x($_POST,'mail_pass')) ? trim($_POST['mail_pass']) : '');
- $mail_action = ((x($_POST,'mail_action')) ? trim($_POST['mail_action']) : '');
- $mail_movetofolder = ((x($_POST,'mail_movetofolder')) ? trim($_POST['mail_movetofolder']) : '');
- $mail_replyto = ((x($_POST,'mail_replyto')) ? $_POST['mail_replyto'] : '');
- $mail_pubmail = ((x($_POST,'mail_pubmail')) ? $_POST['mail_pubmail'] : '');
-
-
- $mail_disabled = ((function_exists('imap_open') && (! get_config('system','imap_disabled'))) ? 0 : 1);
- if(get_config('system','dfrn_only'))
- $mail_disabled = 1;
-
- if(! $mail_disabled) {
- $failed = false;
- $r = q("SELECT * FROM `mailacct` WHERE `uid` = %d LIMIT 1",
- intval(local_user())
- );
- if(! count($r)) {
- q("INSERT INTO `mailacct` (`uid`) VALUES (%d)",
- intval(local_user())
- );
- }
- if(strlen($mail_pass)) {
- $pass = '';
- openssl_public_encrypt($mail_pass,$pass,$a->user['pubkey']);
- q("UPDATE `mailacct` SET `pass` = '%s' WHERE `uid` = %d LIMIT 1",
- dbesc(bin2hex($pass)),
- intval(local_user())
- );
- }
- $r = q("UPDATE `mailacct` SET `server` = '%s', `port` = %d, `ssltype` = '%s', `user` = '%s',
- `action` = %d, `movetofolder` = '%s',
- `mailbox` = 'INBOX', `reply_to` = '%s', `pubmail` = %d WHERE `uid` = %d LIMIT 1",
- dbesc($mail_server),
- intval($mail_port),
- dbesc($mail_ssl),
- dbesc($mail_user),
- intval($mail_action),
- dbesc($mail_movetofolder),
- dbesc($mail_replyto),
- intval($mail_pubmail),
- intval(local_user())
- );
- $r = q("SELECT * FROM `mailacct` WHERE `uid` = %d LIMIT 1",
- intval(local_user())
- );
- if(count($r)) {
- $eacct = $r[0];
- require_once('include/email.php');
- $mb = construct_mailbox_name($eacct);
- if(strlen($eacct['server'])) {
- $dcrpass = '';
- openssl_private_decrypt(hex2bin($eacct['pass']),$dcrpass,$a->user['prvkey']);
- $mbox = email_connect($mb,$mail_user,$dcrpass);
- unset($dcrpass);
- if(! $mbox) {
- $failed = true;
- notice( t('Failed to connect with email account using the settings provided.') . EOL);
- }
- }
- }
- if(! $failed)
- info( t('Email settings updated.') . EOL);
- }
- }
-
call_hooks('connector_settings_post', $_POST);
return;
}
diff --git a/mod/xrd.php b/mod/xrd.php
index 49db2fac8..a718d623d 100644
--- a/mod/xrd.php
+++ b/mod/xrd.php
@@ -39,7 +39,7 @@ function xrd_init(&$a) {
'$atom' => $a->get_baseurl() . '/dfrn_poll/' . $r[0]['nickname'],
'$zot_post' => $a->get_baseurl() . '/post/' . $r[0]['nickname'],
'$poco_url' => $a->get_baseurl() . '/poco/' . $r[0]['nickname'],
- '$photo' => $a->get_baseurl() . '/photo/profile/' . $r[0]['uid'] . '.jpg',
+ '$photo' => $a->get_baseurl() . '/photo/profile/' . $r[0]['uid'],
'$dspr' => $dspr,
'$salmon' => $a->get_baseurl() . '/salmon/' . $r[0]['nickname'],
'$salmen' => $a->get_baseurl() . '/salmon/' . $r[0]['nickname'] . '/mention',
diff --git a/mod/zentity.php b/mod/zentity.php
index 274c5f28c..74403cfb5 100644
--- a/mod/zentity.php
+++ b/mod/zentity.php
@@ -61,7 +61,7 @@ function zentity_post(&$a) {
$arr = $_POST;
- if(($uid = intval(local_user())) == 0) {
+ if(($arr['account_id'] = get_account_id()) === false) {
notice( t('Permission denied.') . EOL );
return;
}
@@ -84,44 +84,13 @@ function zentity_post(&$a) {
function zentity_content(&$a) {
-
- if((! local_user()) && ($a->config['register_policy'] == REGISTER_CLOSED)) {
- notice("Permission denied." . EOL);
+ if(! get_account_id()) {
+ notice( t('Permission denied.') . EOL);
return;
}
- $max_dailies = intval(get_config('system','max_daily_registrations'));
- if($max_dailies) {
- $r = q("select count(*) as total from account where account_created > UTC_TIMESTAMP - INTERVAL 1 day");
- if($r && $r[0]['total'] >= $max_dailies) {
- logger('max daily registrations exceeded.');
- notice( t('This site has exceeded the number of allowed daily account registrations. Please try again tomorrow.') . EOL);
- return;
- }
- }
-
- // Configurable terms of service link
-
- $tosurl = get_config('system','tos_url');
- if(! $tosurl)
- $tosurl = $a->get_baseurl() . '/help/TermsOfService';
-
- $toslink = '<a href="' . $tosurl . '" >' . t('Terms of Service') . '</a>';
-
- // Configurable whether to restrict age or not - default is based on international legal requirements
- // This can be relaxed if you are on a restricted server that does not share with public servers
-
- if(get_config('system','no_age_restriction'))
- $label_tos = sprintf( t('I accept the %s for this website'), $toslink);
- else
- $label_tos =
-
-
- $email = ((x($_REQUEST,'email')) ? $_REQUEST['email'] : "" );
- $password = ((x($_REQUEST,'password')) ? $_REQUEST['password'] : "" );
- $password2 = ((x($_REQUEST,'password2')) ? $_REQUEST['password2'] : "" );
- $invite_code = ((x($_REQUEST,'invite_code')) ? $_REQUEST['invite_code'] : "" );
-
+ $name = ((x($_REQUEST,'name')) ? $_REQUEST['name'] : "" );
+ $nickname = ((x($_REQUEST,'nickname')) ? $_REQUEST['nickname'] : "" );
$o = replace_macros(get_markup_template('zentity.tpl'), array(
diff --git a/mod/zfinger.php b/mod/zfinger.php
index 77d9555d3..5b02d4695 100644
--- a/mod/zfinger.php
+++ b/mod/zfinger.php
@@ -4,55 +4,66 @@ function zfinger_init(&$a) {
require_once('include/zot.php');
- $ret = array('success' => false, 'message' => '');
- if(argc() > 1) {
- $zguid = argv(1);
+ $ret = array('success' => false);
+
+ $zguid = ((x($_REQUEST,'guid')) ? $_REQUEST['guid'] : '');
+ $zaddr = ((x($_REQUEST,'address')) ? $_REQUEST['address'] : '');
- if(strlen($zguid)) {
- $r = q("select * from entity where entity_global_id = '%s' limit 1",
- dbesc($zguid)
- );
- if(! ($r && count($r))) {
- $ret['message'] = 'Item not found.';
- json_return_and_die($ret);
- }
- }
- else {
- $ret['message'] = 'Invalid request';
- json_return_and_die($ret);
- }
- $e = $r[0];
+ $r = null;
+
+ if(strlen($zguid)) {
+ $r = q("select * from entity where entity_global_id = '%s' limit 1",
+ dbesc($zguid)
+ );
+ }
+ elseif(strlen($zaddr)) {
+ $r = q("select * from entity where entity_address = '%s' limit 1",
+ dbesc($zaddr)
+ );
+ }
+ else {
+ $ret['message'] = 'Invalid request';
+ json_return_and_die($ret);
+ }
- $ret['success'] = true;
+ if(! ($r && count($r))) {
+ $ret['message'] = 'Item not found.';
+ json_return_and_die($ret);
+ }
+
+ $e = $r[0];
- // Communication details
+ $ret['success'] = true;
- $ret['guid'] = $e['entity_global_id'];
- $ret['key'] = $e['pubkey'];
+ // Communication details
- // array of (verified) hubs this entity uses
+ $ret['guid'] = $e['entity_global_id'];
+ $ret['guid_sig'] = base64url_encode($e['entity_global_id'],$e['entity_prvkey']);
+ $ret['key'] = $e['entity_pubkey'];
+ $ret['name'] = $e['entity_name'];
+ $ret['address'] = $e['entity_address'];
- $ret['hubs'] = array();
- $x = zot_get_hubloc(array($e['entity_global_id']));
- if($x && count($x)) {
- foreach($x as $hub) {
- if(! ($hub['hubloc_flags'] & HUBLOC_FLAGS_UNVERIFIED)) {
- $ret['hubs'][] = array(
- 'primary' => (($hub['hubloc_flags'] & HUBLOC_FLAGS_PRIMARY) ? true : false),
- 'url' => $hub['hubloc_url'],
- 'callback' => $hub['hubloc_callback'],
- 'sitekey' => $hub['hubloc_sitekey']
- );
- }
+ // array of (verified) hubs this entity uses
+
+ $ret['hubs'] = array();
+ $x = zot_get_hubloc(array($e['entity_global_id']));
+ if($x && count($x)) {
+ foreach($x as $hub) {
+ if(! ($hub['hubloc_flags'] & HUBLOC_FLAGS_UNVERIFIED)) {
+ $ret['hubs'][] = array(
+ 'primary' => (($hub['hubloc_flags'] & HUBLOC_FLAGS_PRIMARY) ? true : false),
+ 'url' => $hub['hubloc_url'],
+ 'url_sig' => base64url_encode($hub['hubloc_url'],$e['entity_prvkey']),
+ 'callback' => $hub['hubloc_callback'],
+ 'sitekey' => $hub['hubloc_sitekey']
+ );
}
}
+ }
- // more stuff, e.g. the basic public profile
-
- json_return_and_die($ret);
+ // more stuff, e.g. the basic public profile
- }
- $ret['message'] = 'Item not found.';
json_return_and_die($ret);
+
} \ No newline at end of file