+
+
+ $r = q("SELECT `contact`.* `user`.`nickname` FROM `contact` LEFT JOIN `user` ON `user`.`uid` = `contact`.`uid`
+ WHERE `user`.`uid` = %d AND `self` = 1 LIMIT 1",
+ intval(get_uid())
+ );
+
+ $contact_record = $r[0];
+
+
+ if(($a->argc > 2) && ($a->argv[1] == 'album')) {
+ $album = hex2bin($a->argv[2]);
+
+ if($album == t('Profile Photos') || $album == t('Contact Photos')) {
+ goaway($a->get_baseurl() . '/' . $_SESSION['photo_return']);
+ return; // NOTREACHED
+ }
+
+ $r = q("SELECT count(*) FROM `photo` WHERE `album` = '%s' AND `uid` = %d",
+ dbesc($album),
+ intval(get_uid())
+ );
+ if(! count($r)) {
+ notice( t('Album not found.') . EOL);
+ goaway($a->get_baseurl() . '/' . $_SESSION['photo_return']);
+ return; // NOTREACHED
+ }
+
+ $newalbum = notags(trim($_POST['albumname']));
+ if($newalbum != $album) {
+ q("UPDATE `photo` SET `album` = '%s' WHERE `album` = '%s' AND `uid` = %d",
+ dbesc($newalbum),
+ dbesc($album),
+ intval(get_uid())
+ );
+ $newurl = str_replace(bin2hex($album),bin2hex($newalbum),$_SESSION['photo_return']);
+ goaway($a->get_baseurl() . '/' . $newurl);
+ return; // NOTREACHED
+ }
+
+ if($_POST['dropalbum'] == t('Delete Album')) {
+
+ $res = array();
+ $r = q("SELECT distinct(`resource-id`) as `rid` FROM `photo` WHERE `uid` = %d AND `album` = '%s'",
+ intval(get_uid()),
+ dbesc($album)
+ );
+ if(count($r)) {
+ foreach($r as $rr) {
+ $res[] = "'" . dbesc($rr['rid']) . "'" ;
+ }
+ }
+ else {
+ goaway($a->get_baseurl() . '/' . $_SESSION['photo_return']);
+ return; // NOTREACHED
+ }
+ $str_res = implode(',', $res);
+
+ q("DELETE FROM `photo` WHERE `resource-id` IN ( $str_res ) AND `uid` = %d",
+ intval(get_uid())
+ );
+ $r = q("SELECT `parent-uri` FROM `item` WHERE `resource-id` IN ( $str_res ) AND `uid` = %d",
+ intval(get_uid())
+ );
+ if(count($r)) {
+ foreach($r as $rr) {
+ q("UPDATE `item` SET `deleted` = 1, `changed` = '%s' WHERE `parent-uri` = '%s' AND `uid` = %d",
+ dbesc(datetime_convert()),
+ dbesc($rr['parent-uri']),
+ intval(get_uid())
+ );
+
+ $drop_id = intval($rr['id']);
+ $php_path = ((strlen($a->config['php_path'])) ? $a->config['php_path'] : 'php');
+
+ // send the notification upstream/downstream as the case may be
+
+ if($rr['visible'])
+ proc_close(proc_open("\"$php_path\" \"include/notifier.php\" \"drop\" \"$drop_id\" & ",
+ array(),$foo));
+
+ }
+ }
+ }
+ goaway($a->get_baseurl() . '/photos/' . $a->data['user']['nickname']);
+ return; // NOTREACHED
+ }
+
+ if(($a->argc > 1) && (x($_POST,'delete')) && ($_POST['delete'] == t('Delete Photo'))) {
+ $r = q("SELECT `id` FROM `photo` WHERE `uid` = %d AND `resource-id` = '%s' LIMIT 1",
+ intval(get_uid()),
+ dbesc($a->argv[1])
+ );
+ if(count($r)) {
+ q("DELETE FROM `photo` WHERE `uid` = %d AND `resource-id` = '%s'",
+ intval(get_uid()),
+ dbesc($r[0]['resource-id'])
+ );
+ $i = q("SELECT * FROM `item` WHERE `resource-id` = '%s' AND `uid` = %d LIMIT 1",
+ dbesc($r[0]['resource-id']),
+ intval(get_uid())
+ );
+ if(count($i)) {
+ q("UPDATE `item` SET `deleted` = 1, `edited` = '%s', `changed` = '%s' WHERE `parent-uri` = '%s' AND `uid` = %d",
+ dbesc(datetime_convert()),
+ dbesc(datetime_convert()),
+ dbesc($i[0]['uri']),
+ intval(get_uid())
+ );
+
+ $url = $a->get_baseurl();
+ $drop_id = intval($i[0]['id']);
+ $php_path = ((strlen($a->config['php_path'])) ? $a->config['php_path'] : 'php');
+
+ // send the notification upstream/downstream as the case may be
+
+ if($i[0]['visible'])
+ proc_close(proc_open("\"$php_path\" \"include/notifier.php\" \"drop\" \"$drop_id\" & ",
+ array(),$foo));
+ }
+ }
+
+ goaway($a->get_baseurl() . '/' . $_SESSION['photo_return']);
+ return; // NOTREACHED
+ }
+
+
+