Merge remote-tracking branch 'upstream/master'
Conflicts: mod/crepair.php
This commit is contained in:
commit
aed28a24f1
35 changed files with 9339 additions and 8738 deletions
|
@ -328,6 +328,7 @@ function admin_page_site_post(&$a){
|
|||
$enotify_no_content = ((x($_POST,'enotify_no_content')) ? True : False);
|
||||
$private_addons = ((x($_POST,'private_addons')) ? True : False);
|
||||
$disable_embedded = ((x($_POST,'disable_embedded')) ? True : False);
|
||||
$allow_users_remote_self = ((x($_POST,'allow_users_remote_self')) ? True : False);
|
||||
|
||||
$no_multi_reg = ((x($_POST,'no_multi_reg')) ? True : False);
|
||||
$no_openid = !((x($_POST,'no_openid')) ? True : False);
|
||||
|
@ -453,6 +454,7 @@ function admin_page_site_post(&$a){
|
|||
set_config('system','newuser_private', $newuser_private);
|
||||
set_config('system','enotify_no_content', $enotify_no_content);
|
||||
set_config('system','disable_embedded', $disable_embedded);
|
||||
set_config('system','allow_users_remote_self', $allow_users_remote_self);
|
||||
|
||||
set_config('system','block_extended_register', $no_multi_reg);
|
||||
set_config('system','no_openid', $no_openid);
|
||||
|
@ -603,7 +605,7 @@ function admin_page_site(&$a) {
|
|||
'$enotify_no_content' => array('enotify_no_content', t("Don't include post content in email notifications"), get_config('system','enotify_no_content'), t("Don't include the content of a post/comment/private message/etc. in the email notifications that are sent out from this site, as a privacy measure.")),
|
||||
'$private_addons' => array('private_addons', t("Disallow public access to addons listed in the apps menu."), get_config('config','private_addons'), t("Checking this box will restrict addons listed in the apps menu to members only.")),
|
||||
'$disable_embedded' => array('disable_embedded', t("Don't embed private images in posts"), get_config('system','disable_embedded'), t("Don't replace locally-hosted private photos in posts with an embedded copy of the image. This means that contacts who receive posts containing private photos will have to authenticate and load each image, which may take a while.")),
|
||||
|
||||
'$allow_users_remote_self' => array('allow_users_remote_self', t('Allow Users to set remote_self'), get_config('system','allow_users_remote_self'), t('With checking this, every user is allowed to mark every contact as a remote_self in the repair contact dialog. Setting this flag on a contact causes mirroring every posting of that contact in the users stream.')),
|
||||
'$no_multi_reg' => array('no_multi_reg', t("Block multiple registrations"), get_config('system','block_extended_register'), t("Disallow users to register additional accounts for use as pages.")),
|
||||
'$no_openid' => array('no_openid', t("OpenID support"), !get_config('system','no_openid'), t("OpenID support for registration and logins.")),
|
||||
'$no_regfullname' => array('no_regfullname', t("Fullname check"), !get_config('system','no_regfullname'), t("Force users to register with a space between firstname and lastname in Full name, as an antispam measure")),
|
||||
|
|
151
mod/contacts.php
151
mod/contacts.php
|
@ -67,11 +67,61 @@ function contacts_init(&$a) {
|
|||
|
||||
}
|
||||
|
||||
function contacts_batch_actions(&$a){
|
||||
$contacts_id = $_POST['contact_batch'];
|
||||
if (!is_array($contacts_id)) return;
|
||||
|
||||
$orig_records = q("SELECT * FROM `contact` WHERE `id` IN (%s) AND `uid` = %d AND `self` = 0",
|
||||
implode(",", $contacts_id),
|
||||
intval(local_user())
|
||||
);
|
||||
|
||||
$count_actions=0;
|
||||
foreach($orig_records as $orig_record) {
|
||||
$contact_id = $orig_record['id'];
|
||||
if (x($_POST, 'contacts_batch_update')) {
|
||||
_contact_update($contact_id);
|
||||
$count_actions++;
|
||||
}
|
||||
if (x($_POST, 'contacts_batch_block')) {
|
||||
$r = _contact_block($contact_id, $orig_record);
|
||||
if ($r) $count_actions++;
|
||||
}
|
||||
if (x($_POST, 'contacts_batch_ignore')) {
|
||||
$r = _contact_ignore($contact_id, $orig_record);
|
||||
if ($r) $count_actions++;
|
||||
}
|
||||
if (x($_POST, 'contacts_batch_archive')) {
|
||||
$r = _contact_archive($contact_id, $orig_record);
|
||||
if ($r) $count_actions++;
|
||||
}
|
||||
if (x($_POST, 'contacts_batch_drop')) {
|
||||
_contact_drop($contact_id, $orig_record);
|
||||
$count_actions++;
|
||||
}
|
||||
}
|
||||
if ($count_actions>0) {
|
||||
info ( sprintf( tt("%d contact edited.", "%d contacts edited", $count_actions), $count_actions) );
|
||||
}
|
||||
|
||||
if(x($_SESSION,'return_url'))
|
||||
goaway($a->get_baseurl(true) . '/' . $_SESSION['return_url']);
|
||||
else
|
||||
goaway($a->get_baseurl(true) . '/contacts');
|
||||
|
||||
}
|
||||
|
||||
|
||||
function contacts_post(&$a) {
|
||||
|
||||
if(! local_user())
|
||||
return;
|
||||
|
||||
if ($a->argv[1]==="batch") {
|
||||
contacts_batch_actions($a);
|
||||
return;
|
||||
}
|
||||
|
||||
$contact_id = intval($a->argv[1]);
|
||||
if(! $contact_id)
|
||||
return;
|
||||
|
@ -140,6 +190,49 @@ function contacts_post(&$a) {
|
|||
|
||||
}
|
||||
|
||||
/*contact actions*/
|
||||
function _contact_update($contact_id) {
|
||||
// pull feed and consume it, which should subscribe to the hub.
|
||||
proc_run('php',"include/poller.php","$contact_id");
|
||||
}
|
||||
function _contact_block($contact_id, $orig_record) {
|
||||
$blocked = (($orig_record['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())
|
||||
);
|
||||
return $r;
|
||||
|
||||
}
|
||||
function _contact_ignore($contact_id, $orig_record) {
|
||||
$readonly = (($orig_record['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())
|
||||
);
|
||||
return $r;
|
||||
}
|
||||
function _contact_archive($contact_id, $orig_record) {
|
||||
$archived = (($orig_record['archive']) ? 0 : 1);
|
||||
$r = q("UPDATE `contact` SET `archive` = %d WHERE `id` = %d AND `uid` = %d LIMIT 1",
|
||||
intval($archived),
|
||||
intval($contact_id),
|
||||
intval(local_user())
|
||||
);
|
||||
if ($archived) {
|
||||
q("UPDATE `item` SET `private` = 2 WHERE `contact-id` = %d AND `uid` = %d", intval($contact_id), intval(local_user()));
|
||||
}
|
||||
return $r;
|
||||
}
|
||||
function _contact_drop($contact_id, $orig_record) {
|
||||
require_once('include/Contact.php');
|
||||
$a = get_app();
|
||||
|
||||
terminate_friendship($a->user,$a->contact,$orig_record);
|
||||
contact_remove($orig_record['id']);
|
||||
}
|
||||
|
||||
|
||||
function contacts_content(&$a) {
|
||||
|
@ -174,57 +267,38 @@ function contacts_content(&$a) {
|
|||
}
|
||||
|
||||
if($cmd === 'update') {
|
||||
|
||||
// pull feed and consume it, which should subscribe to the hub.
|
||||
proc_run('php',"include/poller.php","$contact_id");
|
||||
_contact_update($contact_id);
|
||||
goaway($a->get_baseurl(true) . '/contacts/' . $contact_id);
|
||||
// NOTREACHED
|
||||
}
|
||||
|
||||
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())
|
||||
);
|
||||
$r = _contact_block($contact_id, $orig_record[0]);
|
||||
if($r) {
|
||||
//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(true) . '/contacts/' . $contact_id);
|
||||
return; // NOTREACHED
|
||||
}
|
||||
|
||||
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())
|
||||
);
|
||||
$r = _contact_ignore($contact_id, $orig_record[0]);
|
||||
if($r) {
|
||||
info( (($readonly) ? t('Contact has been ignored') : t('Contact has been unignored')) . EOL );
|
||||
}
|
||||
|
||||
goaway($a->get_baseurl(true) . '/contacts/' . $contact_id);
|
||||
return; // NOTREACHED
|
||||
}
|
||||
|
||||
|
||||
if($cmd === 'archive') {
|
||||
$archived = (($orig_record[0]['archive']) ? 0 : 1);
|
||||
$r = q("UPDATE `contact` SET `archive` = %d WHERE `id` = %d AND `uid` = %d LIMIT 1",
|
||||
intval($archived),
|
||||
intval($contact_id),
|
||||
intval(local_user())
|
||||
);
|
||||
if ($archived) {
|
||||
q("UPDATE `item` SET `private` = 2 WHERE `contact-id` = %d AND `uid` = %d", intval($contact_id), intval(local_user()));
|
||||
}
|
||||
$r = _contact_archive($contact_id, $orig_record[0]);
|
||||
if($r) {
|
||||
//notice( t('Contact has been ') . (($archived) ? t('archived') : t('unarchived')) . EOL );
|
||||
info( (($archived) ? t('Contact has been archived') : t('Contact has been unarchived')) . EOL );
|
||||
}
|
||||
}
|
||||
|
||||
goaway($a->get_baseurl(true) . '/contacts/' . $contact_id);
|
||||
return; // NOTREACHED
|
||||
}
|
||||
|
@ -257,15 +331,13 @@ function contacts_content(&$a) {
|
|||
}
|
||||
// Now check how the user responded to the confirmation query
|
||||
if($_REQUEST['canceled']) {
|
||||
goaway($a->get_baseurl(true) . '/' . $_SESSION['return_url']);
|
||||
|
||||
if(x($_SESSION,'return_url'))
|
||||
goaway($a->get_baseurl(true) . '/' . $_SESSION['return_url']);
|
||||
else
|
||||
goaway($a->get_baseurl(true) . '/contacts');
|
||||
}
|
||||
|
||||
require_once('include/Contact.php');
|
||||
|
||||
terminate_friendship($a->user,$a->contact,$orig_record[0]);
|
||||
|
||||
contact_remove($orig_record[0]['id']);
|
||||
_contact_drop($contact_id, $orig_record[0]);
|
||||
info( t('Contact has been removed.') . EOL );
|
||||
if(x($_SESSION,'return_url'))
|
||||
goaway($a->get_baseurl(true) . '/' . $_SESSION['return_url']);
|
||||
|
@ -534,7 +606,7 @@ function contacts_content(&$a) {
|
|||
$search_txt = dbesc(protect_sprintf(preg_quote($search)));
|
||||
$searching = true;
|
||||
}
|
||||
$sql_extra .= (($searching) ? " AND `name` REGEXP '$search_txt' " : "");
|
||||
$sql_extra .= (($searching) ? " AND (name REGEXP '$search_txt' OR url REGEXP '$search_txt' OR nick REGEXP '$search_txt') " : "");
|
||||
|
||||
if($nets)
|
||||
$sql_extra .= sprintf(" AND network = '%s' ", dbesc($nets));
|
||||
|
@ -612,6 +684,7 @@ function contacts_content(&$a) {
|
|||
|
||||
$tpl = get_markup_template("contacts-template.tpl");
|
||||
$o .= replace_macros($tpl, array(
|
||||
'$baseurl' => $a->get_baseurl(),
|
||||
'$header' => t('Contacts') . (($nets) ? ' - ' . network_to_name($nets) : ''),
|
||||
'$tabs' => $t,
|
||||
'$total' => $total,
|
||||
|
@ -621,6 +694,14 @@ function contacts_content(&$a) {
|
|||
'$submit' => t('Find'),
|
||||
'$cmd' => $a->cmd,
|
||||
'$contacts' => $contacts,
|
||||
'$contact_drop_confirm' => t('Do you really want to delete this contact?'),
|
||||
'$batch_actions' => array(
|
||||
'contacts_batch_update' => t('Update'),
|
||||
'contacts_batch_block' => t('Block')."/".t("Unblock"),
|
||||
"contacts_batch_ignore" => t('Ignore')."/".t("Unignore"),
|
||||
"contacts_batch_archive" => t('Archive')."/".t("Unarchive"),
|
||||
"contacts_batch_drop" => t('Delete'),
|
||||
),
|
||||
'$paginate' => paginate($a),
|
||||
|
||||
));
|
||||
|
|
|
@ -156,7 +156,9 @@ function crepair_content(&$a) {
|
|||
'$label_notify' => t('Notification Endpoint URL'),
|
||||
'$label_poll' => t('Poll/Feed URL'),
|
||||
'$label_photo' => t('New photo from this URL'),
|
||||
'$label_self' => t('Mirror all posts to the wall?'),
|
||||
'$label_remote_self' => t('Remote Self'),
|
||||
'$allow_remote_self' => get_config('system','allow_users_remote_self'),
|
||||
'$remote_self' => array('remote_self', t('Mirror postings from this contact'), $contact['remote_self'], t('Mark this contact as remote_self, this will cause friendica to repost new entries from this contact.')),
|
||||
'$contact_name' => $contact['name'],
|
||||
'$contact_nick' => $contact['nick'],
|
||||
'$contact_id' => $contact['id'],
|
||||
|
@ -169,7 +171,7 @@ function crepair_content(&$a) {
|
|||
'$contact_self' => array('remote_self', t('Mirror all posts to the wall?'), $contact['remote_self'],
|
||||
t('Shall all posts from this contact posted like your own posts?')),
|
||||
'$lbl_submit' => t('Submit')
|
||||
));
|
||||
));
|
||||
|
||||
return $o;
|
||||
|
||||
|
|
|
@ -311,9 +311,9 @@ function parse_url_content(&$a) {
|
|||
logger('parse_url: ' . $url);
|
||||
|
||||
if($textmode)
|
||||
$template = $br . '[bookmark=%s]%s[/bookmark]%s' . $br;
|
||||
$template = '[bookmark=%s]%s[/bookmark]%s' . $br;
|
||||
else
|
||||
$template = "<br /><a class=\"bookmark\" href=\"%s\" >%s</a>%s<br />";
|
||||
$template = "<a class=\"bookmark\" href=\"%s\" >%s</a>%s<br />";
|
||||
|
||||
$arr = array('url' => $url, 'text' => '');
|
||||
|
||||
|
@ -328,9 +328,9 @@ function parse_url_content(&$a) {
|
|||
if($url && $title && $text) {
|
||||
|
||||
if($textmode)
|
||||
$text = $br . '[quote]' . trim($text) . '[/quote]' . $br;
|
||||
$text = '[quote]' . trim($text) . '[/quote]' . $br;
|
||||
else
|
||||
$text = '<br /><blockquote>' . trim($text) . '</blockquote><br />';
|
||||
$text = '<blockquote>' . trim($text) . '</blockquote><br />';
|
||||
|
||||
$title = str_replace(array("\r","\n"),array('',''),$title);
|
||||
|
||||
|
@ -344,8 +344,10 @@ function parse_url_content(&$a) {
|
|||
|
||||
$siteinfo = parseurl_getsiteinfo($url);
|
||||
|
||||
$sitedata = "";
|
||||
|
||||
if($siteinfo["title"] == "") {
|
||||
echo sprintf($template,$url,$url,'') . $str_tags;
|
||||
$sitedata .= sprintf($template,$url,$url,'') . $str_tags;
|
||||
killme();
|
||||
} else {
|
||||
$text = $siteinfo["text"];
|
||||
|
@ -377,20 +379,24 @@ function parse_url_content(&$a) {
|
|||
|
||||
if(strlen($text)) {
|
||||
if($textmode)
|
||||
$text = $br.'[quote]'.trim($text).'[/quote]'.$br ;
|
||||
$text = '[quote]'.trim($text).'[/quote]';
|
||||
else
|
||||
$text = '<br /><blockquote>'.trim($text).'</blockquote><br />';
|
||||
$text = '<blockquote>'.trim($text).'</blockquote>';
|
||||
}
|
||||
|
||||
if($image) {
|
||||
$text = $br.$br.$image.$text;
|
||||
}
|
||||
|
||||
$title = str_replace(array("\r","\n"),array('',''),$title);
|
||||
|
||||
$result = sprintf($template,$url,($title) ? $title : $url,$text) . $str_tags;
|
||||
|
||||
logger('parse_url: returns: ' . $result);
|
||||
|
||||
echo trim($result);
|
||||
$sitedata .= trim($result);
|
||||
|
||||
echo "[class=type-link]".$sitedata."[/class]";
|
||||
|
||||
killme();
|
||||
}
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue