1
0
Fork 0

contact "repair/relocate URL" tool

This commit is contained in:
Friendika 2011-04-13 20:14:30 -07:00
parent 5198e039df
commit 974077c06c
6 changed files with 164 additions and 0 deletions

BIN
images/tools.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 490 B

View file

@ -272,6 +272,8 @@ function contacts_content(&$a) {
'$visit' => t('Visit $name\'s profile'),
'$blockunblock' => t('Block/Unblock contact'),
'$ignorecont' => t('Ignore contact'),
'$altcrepair' => t('Repair contact URL settings'),
'$lblcrepair' => t("Repair contact URL settings \x28WARNING: Advanced\x29"),
'$delete' => t('Delete contact'),
'$poll_interval' => contact_poll_interval($r[0]['priority']),
'$lastupdtext' => t('Last updated: '),

105
mod/crepair.php Normal file
View file

@ -0,0 +1,105 @@
<?php
function crepair_post(&$a) {
if(! local_user())
return;
$cid = (($a->argc > 1) ? intval($a->argv[1]) : 0);
if($cid) {
$r = q("SELECT * FROM `contact` WHERE `id` = %d AND `uid` = %d LIMIT 1",
intval($cid),
intval(local_user())
);
}
if(! count($r))
return;
$contact = $r[0];
$nick = ((x($_POST,'nick')) ? $_POST['nick'] : null);
$url = ((x($_POST,'url')) ? $_POST['url'] : null);
$request = ((x($_POST,'request')) ? $_POST['request'] : null);
$confirm = ((x($_POST,'confirm')) ? $_POST['confirm'] : null);
$notify = ((x($_POST,'notify')) ? $_POST['notify'] : null);
$poll = ((x($_POST,'poll')) ? $_POST['poll'] : null);
$r = q("UPDATE `contact` SET `nick` = '%s', `url` = '%s', `request` = '%s', `confirm` = '%s', `notify` = '%s', `poll` = '%s'
WHERE `id` = %d AND `uid` = %d LIMIT 1",
dbesc($nick),
dbesc($url),
dbesc($request),
dbesc($confirm),
dbesc($notify),
dbesc($poll),
intval($contact['id']),
local_user()
);
if($r)
notice( t('Contact settings applied.') . EOL);
else
notice( t('Contact update failed.') . EOL);
return;
}
function crepair_content(&$a) {
if(! local_user()) {
notice( t('Permission denied.') . EOL);
return;
}
$cid = (($a->argc > 1) ? intval($a->argv[1]) : 0);
if($cid) {
$r = q("SELECT * FROM `contact` WHERE `id` = %d AND `uid` = %d LIMIT 1",
intval($cid),
intval(local_user())
);
}
if(! count($r)) {
notice( t('Contact not found.') . EOL);
return;
}
$contact = $r[0];
$msg1 = t('Repair Contact Settings');
$msg2 = t('<strong>WARNING: This is highly advanced</strong> and if you enter incorrect information your communications with this contact will stop working.');
$msg3 = t('Please use your browser \'Back\' button <strong>now</strong> if you are uncertain what to do on this page.');
$o .= '<h2>' . $msg1 . '</h2>';
$o .= '<div class="error-message">' . $msg2 . EOL . EOL. $msg3 . '</div>';
$tpl = load_view_file('view/crepair.tpl');
$o .= replace_macros($tpl, array(
'$label_name' => t('Name'),
'$label_nick' => t('Account Nickname'),
'$label_url' => t('Account URL'),
'$label_request' => t('Friend Request URL'),
'$label_confirm' => t('Friend Confirm URL'),
'$label_notify' => t('Notification Endpoint URL'),
'$label_poll' => t('Poll/Feed URL'),
'$contact_name' => $contact['name'],
'$contact_nick' => $contact['nick'],
'$contact_id' => $contact['id'],
'$contact_url' => $contact['url'],
'$request' => $contact['request'],
'$confirm' => $contact['confirm'],
'$notify' => $contact['notify'],
'$poll' => $contact['poll'],
'$lbl_submit' => t('Submit')
));
return $o;
}

View file

@ -20,6 +20,8 @@
<div id="contact-edit-links" >
<a href="contacts/$contact_id/block" id="contact-edit-block-link" ><img src="images/b_block.gif" alt="$blockunblock" title="$block_text"/></a>
<a href="contacts/$contact_id/ignore" id="contact-edit-ignore-link" ><img src="images/no.gif" alt="$ignorecont" title="$ignore_text"/></a>
<a href="crepair/$contact_id" id="contact-edit-repair" ><img src="images/tools.png" alt="$altcrepair" title="$lblcrepair"/></a>
</div>
<div id="contact-drop-links" >
<a href="contacts/$contact_id/drop" id="contact-edit-drop-link" onclick="return confirmDelete();" ><img src="images/b_drophide.gif" alt="$delete" title="$delete" onmouseover="imgbright(this);" onmouseout="imgdull(this);" /></a>

34
view/crepair.tpl Normal file
View file

@ -0,0 +1,34 @@
<form id="crepair-form" action="crepair/$contact_id" method="post" >
<h4>$contact_name</h4>
<label id="crepair-nick-label" for="crepair-nick">$label_nick</label>
<input type="text" id="crepair-nick" name="nick" value="$contact_nick" />
<div class="clear"></div>
<label id="crepair-url-label" for="crepair-url">$label_url</label>
<input type="text" id="crepair-url" name="url" value="$contact_url" />
<div class="clear"></div>
<label id="crepair-request-label" for="crepair-request">$label_request</label>
<input type="text" id="crepair-request" name="request" value="$request" />
<div class="clear"></div>
<label id="crepair-confirm-label" for="crepair-confirm">$label_confirm</label>
<input type="text" id="crepair-confirm" name="confirm" value="$confirm" />
<div class="clear"></div>
<label id="crepair-notify-label" for="crepair-notify">$label_notify</label>
<input type="text" id="crepair-notify" name="notify" value="$notify" />
<div class="clear"></div>
<label id="crepair-poll-label" for="crepair-poll">$label_poll</label>
<input type="text" id="crepair-poll" name="poll" value="$poll" />
<div class="clear"></div>
<input type="submit" name="submit" value="$lbl_submit" />
</form>

View file

@ -2293,3 +2293,24 @@ a.mail-list-link {
#prof-edit-desc {
margin-top: 15px;
}
#crepair-nick-label,
#crepair-url-label,
#crepair-request-label,
#crepair-confirm-label,
#crepair-notify-label,
#crepair-poll-label {
float: left;
width: 200px;
margin-bottom: 15px;
}
#crepair-nick,
#crepair-url,
#crepair-request,
#crepair-confirm,
#crepair-notify,
#crepair-poll {
float: left;
width: 300px;
}