X-Git-Url: https://git.mxchange.org/?a=blobdiff_plain;f=mod%2Fcontacts.php;h=ea429d39fe15384b90f445f129bd84ba35393b0e;hb=25ac93f44d92b839c5012ba8cbb7ecf221658eff;hp=36f42f8e59eef54c9c880fd8dbd46cd566df56a8;hpb=fbb635462a5a1f371801741b03b1ecef623d9323;p=friendica.git
diff --git a/mod/contacts.php b/mod/contacts.php
index 36f42f8e59..ea429d39fe 100644
--- a/mod/contacts.php
+++ b/mod/contacts.php
@@ -3,21 +3,55 @@
require_once('include/Contact.php');
function contacts_init(&$a) {
+ if(! local_user())
+ return;
+
+ $contact_id = 0;
+ if(($a->argc == 2) && intval($a->argv[1])) {
+ $contact_id = intval($a->argv[1]);
+ $r = q("SELECT * FROM `contact` WHERE `uid` = %d and `id` = %d LIMIT 1",
+ intval(local_user()),
+ intval($contact_id)
+ );
+ if(! count($r)) {
+ $contact_id = 0;
+ }
+ }
+
require_once('include/group.php');
if(! x($a->page,'aside'))
$a->page['aside'] = '';
- $a->page['aside'] .= group_side();
-
- if($a->config['register_policy'] != REGISTER_CLOSED)
- $a->page['aside'] .= '
';
+ $a->page['aside'] .= group_side('contacts','group',false,0,$contact_id);
+
+ if(get_config('system','invitation_only')) {
+ $x = get_pconfig(local_user(),'system','invites_remaining');
+ if($x || is_site_admin()) {
+ $a->page['aside'] .= ''
+ . sprintf( tt('%d invitation available','%d invitations available',$x), $x)
+ . '
' . $inv;
+ }
+ }
- $tpl = load_view_file('view/follow.tpl');
+ $tpl = get_markup_template('follow.tpl');
+
+ $findSimilarLink = '';
+
+ $inv = '';
+ if($a->config['register_policy'] != REGISTER_CLOSED) {
+ $inv = '';
+ }
+
$a->page['aside'] .= replace_macros($tpl,array(
- '$label' => t('Connect/Follow [profile address]'),
+ '$label' => t('Connect/Follow'),
'$hint' => t('Example: bob@example.com, http://example.com/barbara'),
- '$follow' => t('Follow')
+ '$follow' => t('Follow'),
+ '$findSimilar' => $findSimilarLink,
+ '$inviteFriends' => $inv
));
+
+
}
function contacts_post(&$a) {
@@ -53,34 +87,24 @@ function contacts_post(&$a) {
return;
}
}
-logger('contact_edit ' . print_r($_POST,true));
+
$priority = intval($_POST['poll']);
- if($priority == (-1))
-
if($priority > 5 || $priority < 0)
$priority = 0;
- $rating = intval($_POST['reputation']);
- if($rating > 5 || $rating < 0)
- $rating = 0;
-
- $reason = notags(trim($_POST['reason']));
-
$info = escape_tags(trim($_POST['info']));
- $r = q("UPDATE `contact` SET `profile-id` = %d, `priority` = %d , `rating` = %d, `reason` = '%s', `info` = '%s'
+ $r = q("UPDATE `contact` SET `profile-id` = %d, `priority` = %d , `info` = '%s'
WHERE `id` = %d AND `uid` = %d LIMIT 1",
intval($profile_id),
intval($priority),
- intval($rating),
- dbesc($reason),
dbesc($info),
intval($contact_id),
intval(local_user())
);
if($r)
- notice( t('Contact updated.') . EOL);
+ info( t('Contact updated.') . EOL);
else
notice( t('Failed to update contact record.') . EOL);
return;
@@ -93,7 +117,7 @@ function contacts_content(&$a) {
$sort_type = 0;
$o = '';
- $o .= '';
+ nav_set_selected('contacts');
$_SESSION['return_url'] = $a->get_baseurl() . '/' . $a->cmd;
@@ -110,7 +134,7 @@ function contacts_content(&$a) {
$cmd = $a->argv[2];
- $orig_record = q("SELECT * FROM `contact` WHERE `id` = %d AND `uid` = %d LIMIT 1",
+ $orig_record = q("SELECT * FROM `contact` WHERE `id` = %d AND `uid` = %d AND `self` = 0 LIMIT 1",
intval($contact_id),
intval(local_user())
);
@@ -124,9 +148,7 @@ function contacts_content(&$a) {
if($cmd === 'update') {
// pull feed and consume it, which should subscribe to the hub.
-
- $php_path = ((x($a->config,'php_path') && strlen($a->config['php_path'])) ? $a->config['php_path'] : 'php');
- proc_run($php_path,"include/poller.php","$contact_id");
+ proc_run('php',"include/poller.php","$contact_id");
goaway($a->get_baseurl() . '/contacts/' . $contact_id);
// NOTREACHED
}
@@ -134,12 +156,13 @@ function contacts_content(&$a) {
if($cmd === 'block') {
$blocked = (($orig_record[0]['blocked']) ? 0 : 1);
$r = q("UPDATE `contact` SET `blocked` = %d WHERE `id` = %d AND `uid` = %d LIMIT 1",
- intval($blocked),
- intval($contact_id),
- intval(local_user())
+ intval($blocked),
+ intval($contact_id),
+ intval(local_user())
);
if($r) {
- notice( t('Contact has been ') . (($blocked) ? t('blocked') : t('unblocked')) . EOL );
+ //notice( t('Contact has been ') . (($blocked) ? t('blocked') : t('unblocked')) . EOL );
+ info( (($blocked) ? t('Contact has been blocked') : t('Contact has been unblocked')) . EOL );
}
goaway($a->get_baseurl() . '/contacts/' . $contact_id);
return; // NOTREACHED
@@ -148,12 +171,12 @@ function contacts_content(&$a) {
if($cmd === 'ignore') {
$readonly = (($orig_record[0]['readonly']) ? 0 : 1);
$r = q("UPDATE `contact` SET `readonly` = %d WHERE `id` = %d AND `uid` = %d LIMIT 1",
- intval($readonly),
- intval($contact_id),
- intval(local_user())
+ intval($readonly),
+ intval($contact_id),
+ intval(local_user())
);
if($r) {
- notice( t('Contact has been ') . (($readonly) ? t('ignored') : t('unignored')) . EOL );
+ info( (($readonly) ? t('Contact has been ignored') : t('Contact has been unignored')) . EOL );
}
goaway($a->get_baseurl() . '/contacts/' . $contact_id);
return; // NOTREACHED
@@ -163,8 +186,8 @@ function contacts_content(&$a) {
// create an unfollow slap
- if($orig_record[0]['network'] === 'stat') {
- $tpl = load_view_file('view/follow_slap.tpl');
+ if($orig_record[0]['network'] === NETWORK_OSTATUS) {
+ $tpl = get_markup_template('follow_slap.tpl');
$slap = replace_macros($tpl, array(
'$name' => $a->user['username'],
'$profile_page' => $a->get_baseurl() . '/profile/' . $a->user['nickname'],
@@ -176,8 +199,8 @@ function contacts_content(&$a) {
'$type' => 'text',
'$content' => t('stopped following'),
'$nick' => $a->user['nickname'],
- '$verb' => ACTIVITY_UNFOLLOW,
- '$ostat_follow' => 'http://ostatus.org/schema/1.0/unfollow' . "\r\n"
+ '$verb' => 'http://ostatus.org/schema/1.0/unfollow', // ACTIVITY_UNFOLLOW,
+ '$ostat_follow' => '' // 'http://ostatus.org/schema/1.0/unfollow' . "\r\n"
));
if((x($orig_record[0],'notify')) && (strlen($orig_record[0]['notify']))) {
@@ -185,15 +208,17 @@ function contacts_content(&$a) {
slapper($a->user,$orig_record[0]['notify'],$slap);
}
}
-
- if($orig_record[0]['network'] === 'dfrn') {
+ elseif($orig_record[0]['network'] === NETWORK_DIASPORA) {
+ require_once('include/diaspora.php');
+ diaspora_unshare($a->user,$orig_record[0]);
+ }
+ elseif($orig_record[0]['network'] === NETWORK_DFRN) {
require_once('include/items.php');
dfrn_deliver($a->user,$orig_record[0],'placeholder', 1);
}
-
- contact_remove($contact_id);
- notice( t('Contact has been removed.') . EOL );
+ contact_remove($orig_record[0]['id']);
+ info( t('Contact has been removed.') . EOL );
goaway($a->get_baseurl() . '/contacts');
return; // NOTREACHED
}
@@ -211,24 +236,24 @@ function contacts_content(&$a) {
return;
}
- $tpl = load_view_file('view/contact_head.tpl');
+ $tpl = get_markup_template('contact_head.tpl');
$a->page['htmlhead'] .= replace_macros($tpl, array('$baseurl' => $a->get_baseurl()));
require_once('include/contact_selectors.php');
- $tpl = load_view_file("view/contact_edit.tpl");
+ $tpl = get_markup_template("contact_edit.tpl");
switch($r[0]['rel']) {
- case REL_BUD:
+ case CONTACT_IS_FRIEND:
$dir_icon = 'images/lrarrow.gif';
$alt_text = t('Mutual Friendship');
break;
- case REL_VIP;
+ case CONTACT_IS_FOLLOWER;
$dir_icon = 'images/larrow.gif';
$alt_text = t('is a fan of yours');
break;
- case REL_FAN;
+ case CONTACT_IS_SHARING;
$dir_icon = 'images/rarrow.gif';
$alt_text = t('you are a fan of');
break;
@@ -245,6 +270,9 @@ function contacts_content(&$a) {
$sparkle = '';
}
+ $insecure = '
'
+ . t('Private communications are not available for this contact.') . '
';
+
$last_update = (($r[0]['last-update'] == '0000-00-00 00:00:00')
? t('Never')
: datetime_convert('UTC',date_default_timezone_get(),$r[0]['last-update'],'D, j M Y, g:i A'));
@@ -252,13 +280,34 @@ function contacts_content(&$a) {
if($r[0]['last-update'] !== '0000-00-00 00:00:00')
$last_update .= ' ' . (($r[0]['last-update'] == $r[0]['success_update']) ? t("\x28Update was successful\x29") : t("\x28Update was not successful\x29"));
+ $lblsuggest = (($r[0]['network'] === NETWORK_DFRN)
+ ? '' : '');
+
+ $poll_enabled = (($r[0]['network'] !== NETWORK_DIASPORA) ? true : false);
+
+ $nettype = '' . sprintf( t('Network type: %s'),network_to_name($r[0]['network'])) . '
';
+
$o .= replace_macros($tpl,array(
'$header' => t('Contact Editor'),
- '$visit' => t('Visit $name\'s profile'),
+ '$submit' => t('Submit'),
+ '$lbl_vis1' => t('Profile Visibility'),
+ '$lbl_vis2' => sprintf( t('Please choose the profile you would like to display to %s when viewing your profile securely.'), $r[0]['name']),
+ '$lbl_info1' => t('Contact Information / Notes'),
+ '$lbl_rep1' => t('Online Reputation'),
+ '$lbl_rep2' => t('Occasionally your friends may wish to inquire about this person\'s online legitimacy.'),
+ '$lbl_rep3' => t('You may help them choose whether or not to interact with this person by providing a reputation to guide them.'),
+ '$lbl_rep4' => t('Please take a moment to elaborate on this selection if you feel it could be helpful to others.'),
+ '$visit' => sprintf( t('Visit %s\'s profile [%s]'),$r[0]['name'],$r[0]['url']),
'$blockunblock' => t('Block/Unblock contact'),
'$ignorecont' => t('Ignore contact'),
+ '$altcrepair' => t('Repair contact URL settings'),
+ '$lblcrepair' => t("Repair contact URL settings \x28WARNING: Advanced\x29"),
+ '$lblrecent' => t('View conversations'),
+ '$lblsuggest' => $lblsuggest,
'$delete' => t('Delete contact'),
- '$poll_interval' => contact_poll_interval($r[0]['priority']),
+ '$nettype' => $nettype,
+ '$poll_interval' => contact_poll_interval($r[0]['priority'],(! $poll_enabled)),
+ '$poll_enabled' => $poll_enabled,
'$lastupdtext' => t('Last updated: '),
'$updpub' => t('Update public posts: '),
'$last_update' => $last_update,
@@ -267,13 +316,10 @@ function contacts_content(&$a) {
'$contact_id' => $r[0]['id'],
'$block_text' => (($r[0]['blocked']) ? t('Unblock this contact') : t('Block this contact') ),
'$ignore_text' => (($r[0]['readonly']) ? t('Unignore this contact') : t('Ignore this contact') ),
- '$insecure' => (($r[0]['network'] === 'stat') ? load_view_file('view/insecure_net.tpl') : ''),
+ '$insecure' => (($r[0]['network'] !== NETWORK_DFRN && $r[0]['network'] !== NETWORK_MAIL && $r[0]['network'] !== NETWORK_FACEBOOK && $r[0]['network'] !== NETWORK_DIASPORA) ? $insecure : ''),
'$info' => $r[0]['info'],
'$blocked' => (($r[0]['blocked']) ? '' . t('Currently blocked') . '
' : ''),
'$ignored' => (($r[0]['readonly']) ? '' . t('Currently ignored') . '
' : ''),
- '$rating' => contact_reputation($r[0]['rating']),
- '$reason' => $r[0]['reason'],
- '$groups' => '', // group_selector(),
'$photo' => $r[0]['photo'],
'$name' => $r[0]['name'],
'$dir_icon' => $dir_icon,
@@ -299,7 +345,7 @@ function contacts_content(&$a) {
$search = ((x($_GET,'search')) ? notags(trim($_GET['search'])) : '');
- $tpl = load_view_file("view/contacts-top.tpl");
+ $tpl = get_markup_template("contacts-top.tpl");
$o .= replace_macros($tpl,array(
'$header' => t('Contacts'),
'$hide_url' => ((strlen($sql_extra)) ? 'contacts/all' : 'contacts' ),
@@ -316,7 +362,7 @@ function contacts_content(&$a) {
$search = dbesc($search.'*');
$sql_extra .= ((strlen($search)) ? " AND MATCH `name` AGAINST ('$search' IN BOOLEAN MODE) " : "");
- $sql_extra2 = ((($sort_type > 0) && ($sort_type <= REL_BUD)) ? sprintf(" AND `rel` = %d ",intval($sort_type)) : '');
+ $sql_extra2 = ((($sort_type > 0) && ($sort_type <= CONTACT_IS_FRIEND)) ? sprintf(" AND `rel` = %d ",intval($sort_type)) : '');
$r = q("SELECT COUNT(*) AS `total` FROM `contact`
@@ -333,22 +379,22 @@ function contacts_content(&$a) {
if(count($r)) {
- $tpl = load_view_file("view/contact_template.tpl");
+ $tpl = get_markup_template("contact_template.tpl");
foreach($r as $rr) {
if($rr['self'])
continue;
switch($rr['rel']) {
- case REL_BUD:
+ case CONTACT_IS_FRIEND:
$dir_icon = 'images/lrarrow.gif';
$alt_text = t('Mutual Friendship');
break;
- case REL_VIP;
+ case CONTACT_IS_FOLLOWER;
$dir_icon = 'images/larrow.gif';
$alt_text = t('is a fan of yours');
break;
- case REL_FAN;
+ case CONTACT_IS_SHARING;
$dir_icon = 'images/rarrow.gif';
$alt_text = t('you are a fan of');
break;
@@ -366,13 +412,15 @@ function contacts_content(&$a) {
$o .= replace_macros($tpl, array(
- '$img_hover' => t('Visit ') . $rr['name'] . t('\'s profile'),
+ '$img_hover' => sprintf( t('Visit %s\'s profile [%s]'),$rr['name'],$rr['url']),
'$edit_hover' => t('Edit contact'),
+ '$contact_photo_menu' => contact_photo_menu($rr),
'$id' => $rr['id'],
'$alt_text' => $alt_text,
'$dir_icon' => $dir_icon,
'$thumb' => $rr['thumb'],
- '$name' => substr($rr['name'],0,20),
+ '$name' => $rr['name'],
+ '$username' => $rr['name'],
'$sparkle' => $sparkle,
'$url' => $url
));
@@ -383,4 +431,4 @@ function contacts_content(&$a) {
}
$o .= paginate($a);
return $o;
-}
\ No newline at end of file
+}