]> git.mxchange.org Git - friendica.git/blobdiff - include/Contact.php
cleanup notify subject lines
[friendica.git] / include / Contact.php
old mode 100644 (file)
new mode 100755 (executable)
index 3c41f76..baccea3
@@ -1,6 +1,39 @@
 <?php
 
 
+// Included here for completeness, but this is a very dangerous operation.
+// It is the caller's responsibility to confirm the requestor's intent and
+// authorisation to do this.
+
+function user_remove($uid) {
+       if(! $uid)
+               return;
+       $a = get_app();
+       logger('Removing user: ' . $uid);
+
+       $r = q("select * from user where uid = %d limit 1", intval($uid));
+
+       call_hooks('remove_user',$r[0]);
+
+
+       q("DELETE FROM `contact` WHERE `uid` = %d", intval($uid));
+       q("DELETE FROM `group` WHERE `uid` = %d", intval($uid));
+       q("DELETE FROM `group_member` WHERE `uid` = %d", intval($uid));
+       q("DELETE FROM `intro` WHERE `uid` = %d", intval($uid));
+       q("DELETE FROM `event` WHERE `uid` = %d", intval($uid));
+       q("DELETE FROM `item` WHERE `uid` = %d", intval($uid));
+       q("DELETE FROM `mail` WHERE `uid` = %d", intval($uid));
+       q("DELETE FROM `photo` WHERE `uid` = %d", intval($uid));
+       q("DELETE FROM `profile` WHERE `uid` = %d", intval($uid));
+       q("DELETE FROM `profile_check` WHERE `uid` = %d", intval($uid));
+       q("DELETE FROM `pconfig` WHERE `uid` = %d", intval($uid));
+       q("DELETE FROM `user` WHERE `uid` = %d", intval($uid));
+       if($uid == local_user()) {
+               unset($_SESSION['authenticated']);
+               unset($_SESSION['uid']);
+               goaway($a->get_baseurl());
+       }
+}
 
 
 function contact_remove($id) {
@@ -13,6 +46,16 @@ function contact_remove($id) {
        q("DELETE FROM `photo` WHERE `contact-id` = %d ",
                intval($id)
        );
+       q("DELETE FROM `mail` WHERE `contact-id` = %d ",
+               intval($id)
+       );
+       q("DELETE FROM `event` WHERE `cid` = %d ",
+               intval($id)
+       );
+       q("DELETE FROM `queue` WHERE `cid` = %d ",
+               intval($id)
+       );
+
 }
 
 
@@ -46,9 +89,66 @@ function mark_for_death($contact) {
 if(! function_exists('unmark_for_death')) {
 function unmark_for_death($contact) {
        // It's a miracle. Our dead contact has inexplicably come back to life.
-       q("UPDATE `contact` SET `term-date = '%s' WHERE `id` = %d LIMIT 1",
+       q("UPDATE `contact` SET `term-date` = '%s' WHERE `id` = %d LIMIT 1",
                dbesc('0000-00-00 00:00:00'),
                intval($contact['id'])
        );
 }}
 
+if(! function_exists('contact_photo_menu')){
+function contact_photo_menu($contact) {
+
+       $a = get_app();
+       
+       $contact_url="";
+       $pm_url="";
+       $status_link="";
+       $photos_link="";
+       $posts_link="";
+
+       $sparkle = false;
+       if($contact['network'] === NETWORK_DFRN) {
+               $sparkle = true;
+               $profile_link = $a->get_baseurl() . '/redir/' . $contact['id'];
+       }
+       else
+               $profile_link = $contact['url'];
+
+       if($profile_link === 'mailbox')
+               $profile_link = '';
+
+       if($sparkle) {
+               $status_link = $profile_link . "?url=status";
+               $photos_link = $profile_link . "?url=photos";
+               $profile_link = $profile_link . "?url=profile";
+               $pm_url = $a->get_baseurl() . '/message/new/' . $contact['id'];
+       }
+
+       $contact_url = $a->get_baseurl() . '/contacts/' . $contact['id'];
+       $posts_link = $a->get_baseurl() . '/network/?cid=' . $contact['id'];
+
+       $menu = Array(
+               t("View status") => $status_link,
+               t("View profile") => $profile_link,
+               t("View photos") => $photos_link,               
+               t("View recent") => $posts_link, 
+               t("Edit contact") => $contact_url,
+               t("Send PM") => $pm_url,
+       );
+       
+       
+       $args = array('contact' => $contact, 'menu' => $menu);
+       
+       call_hooks('contact_photo_menu', $args);
+       
+       $o = "";
+       foreach($menu as $k=>$v){
+               if ($v!="") {
+                       if(($k !== t("View recent")) && ($k !== t("Send PM")))
+                               $o .= "<li><a target=\"redir\" href=\"$v\">$k</a></li>\n";
+                       else
+                               $o .= "<li><a href=\"$v\">$k</a></li>\n";
+               }
+       }
+       return $o;
+}}