]> git.mxchange.org Git - friendica.git/blobdiff - mod/photos.php
over-ride comment box
[friendica.git] / mod / photos.php
index d4835ba5ea65edb515a35087c08483f8ac3419e9..324ce898d26003fdf188ebd919114cc43e6590a6 100644 (file)
@@ -6,6 +6,10 @@ require_once('include/bbcode.php');
 
 function photos_init(&$a) {
 
+
+       if((get_config('system','block_public')) && (! local_user()) && (! remote_user())) {
+               return;
+       }
        $o = '';
 
        if($a->argc > 1) {
@@ -182,13 +186,11 @@ foreach($_FILES AS $key => $val) {
                                        );
 
                                        $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));
-                                               proc_run($php_path,"include/notifier.php","drop","$drop_id");
+                                               proc_run('php',"include/notifier.php","drop","$drop_id");
                                }
                        }
                }
@@ -232,11 +234,9 @@ foreach($_FILES AS $key => $val) {
 
                                $url = $a->get_baseurl();
                                $drop_id = intval($i[0]['id']);
-                               $php_path = ((strlen($a->config['php_path'])) ? $a->config['php_path'] : 'php');
 
                                if($i[0]['visible'])
-                                       //proc_close(proc_open("\"$php_path\" \"include/notifier.php\" \"drop\" \"$drop_id\" & ",       array(),$foo));
-                                       proc_run($php_path,"include/notifier.php","drop","$drop_id");
+                                       proc_run('php',"include/notifier.php","drop","$drop_id");
                        }
                }
 
@@ -250,6 +250,11 @@ foreach($_FILES AS $key => $val) {
                $rawtags     = ((x($_POST,'newtag'))  ? notags(trim($_POST['newtag']))  : '');
                $item_id     = ((x($_POST,'item_id')) ? intval($_POST['item_id'])       : 0);
                $albname     = ((x($_POST,'albname')) ? notags(trim($_POST['albname'])) : '');
+               $str_group_allow   = perms2str($_POST['group_allow']);
+               $str_contact_allow = perms2str($_POST['contact_allow']);
+               $str_group_deny    = perms2str($_POST['group_deny']);
+               $str_contact_deny  = perms2str($_POST['contact_deny']);
+
                $resource_id = $a->argv[2];
 
                if(! strlen($albname))
@@ -260,10 +265,14 @@ foreach($_FILES AS $key => $val) {
                        dbesc($resource_id),
                        intval($page_owner_uid)
                );
-               if((count($p)) && (($p[0]['desc'] !== $desc) || ($p[0]['album'] !== $albname))) {
-                       $r = q("UPDATE `photo` SET `desc` = '%s', `album` = '%s' WHERE `resource-id` = '%s' AND `uid` = %d",
+               if(count($p)) {
+                       $r = q("UPDATE `photo` SET `desc` = '%s', `album` = '%s', `allow_cid` = '%s', `allow_gid` = '%s', `deny_cid` = '%s', `deny_gid` = '%s' WHERE `resource-id` = '%s' AND `uid` = %d",
                                dbesc($desc),
                                dbesc($albname),
+                               dbesc($str_contact_allow),
+                               dbesc($str_group_allow),
+                               dbesc($str_contact_deny),
+                               dbesc($str_group_deny),
                                dbesc($resource_id),
                                intval($page_owner_uid)
                        );
@@ -305,6 +314,7 @@ foreach($_FILES AS $key => $val) {
                        $arr['deny_gid']      = $p[0]['deny_gid'];
                        $arr['last-child']    = 1;
                        $arr['visible']       = $visibility;
+                       
                        $arr['body']          = '[url=' . $a->get_baseurl() . '/photos/' . $a->data['user']['nickname'] . '/image/' . $p[0]['resource-id'] . ']' 
                                                . '[img]' . $a->get_baseurl() . '/photo/' . $p[0]['resource-id'] . '-' . $p[0]['scale'] . '.jpg' . '[/img]' 
                                                . '[/url]';
@@ -474,9 +484,8 @@ foreach($_FILES AS $key => $val) {
                                        $arr['target'] .= '<link>' . xmlify('<link rel="alternate" type="text/html" href="' . $a->get_baseurl() . '/photos/' . $owner_record['nickname'] . '/image/' . $p[0]['resource-id'] . '" />' . "\n" . '<link rel="preview" type="image/jpeg" href="' . $a->get_baseurl() . "/photo/" . $p[0]['resource-id'] . '-' . $best . '.jpg' . '" />') . '</link></target>';
 
                                        $item_id = item_store($arr);
-                                       $php_path = ((strlen($a->config['php_path'])) ? $a->config['php_path'] : 'php');
-                                       //proc_close(proc_open("\"$php_path\" \"include/notifier.php\" \"tag\" \"$item_id\" & ",array(),$foo));
-                                       proc_run($php_path,"include/notifier.php","tag","$item_id");
+                                       if($item_id)
+                                               proc_run('php',"include/notifier.php","tag","$item_id");
                                }
 
                        }
@@ -652,6 +661,16 @@ function photos_content(&$a) {
        // photos/name/image/xxxxx/edit
 
 
+       if((get_config('system','block_public')) && (! local_user()) && (! remote_user())) {
+               notice( t('Public access denied.') . EOL);
+               return;
+       }
+
+
+       require_once('include/bbcode.php');
+       require_once('include/security.php');
+       require_once('include/conversation.php');
+
        if(! x($a->data,'user')) {
                notice( t('No photos selected') . EOL );
                return;
@@ -888,8 +907,7 @@ function photos_content(&$a) {
 
        if($datatype === 'image') {
 
-               require_once('security.php');
-               require_once('bbcode.php');
+
 
                $o = '<div id="live-display"></div>' . "\r\n";
                // fetch image, item containing image, then comments
@@ -905,6 +923,32 @@ function photos_content(&$a) {
                        return;
                }
 
+               $prevlink = '';
+               $nextlink = '';
+
+               $prvnxt = q("SELECT `resource-id` FROM `photo` WHERE `album` = '%s' AND `uid` = %d AND `scale` = 0 
+                       $sql_extra ORDER BY `created` DESC ",
+                       dbesc($ph[0]['album']),
+                       intval($owner_uid)
+               ); 
+
+               if(count($prvnxt)) {
+                       for($z = 0; $z < count($prvnxt); $z++) {
+                               if($prvnxt[$z]['resource-id'] == $ph[0]['resource-id']) {
+                                       $prv = $z - 1;
+                                       $nxt = $z + 1;
+                                       if($prv < 0)
+                                               $prv = count($prvnxt) - 1;
+                                       if($nxt >= count($prvnxt))
+                                               $nxt = 0;
+                                       break;
+                               }
+                       }
+                       $prevlink = $a->get_baseurl() . '/photos/' . $a->data['user']['nickname'] . '/image/' . $prvnxt[$prv]['resource-id'] ;
+                       $nextlink = $a->get_baseurl() . '/photos/' . $a->data['user']['nickname'] . '/image/' . $prvnxt[$nxt]['resource-id'] ;
+               }
+
+
                if(count($ph) == 1)
                        $hires = $lores = $ph[0];
                if(count($ph) > 1) {
@@ -934,11 +978,18 @@ function photos_content(&$a) {
                        $o .= '</div>';
                }
 
+               if($prevlink)
+                       $o .= '<div id="photo-prev-link"><a href="' . $prevlink .'">' . t('<< Prev') . '</a></div>' ;
 
-               $o .= '<a href="' . $a->get_baseurl() . '/photo/' 
+               $o .= '<div id="photo-photo"><a href="' . $a->get_baseurl() . '/photo/' 
                        . $hires['resource-id'] . '-' . $hires['scale'] . '.jpg" title="' 
                        . t('View Full Size') . '" ><img src="' . $a->get_baseurl() . '/photo/' 
-                       . $lores['resource-id'] . '-' . $lores['scale'] . '.jpg' . '" /></a>';
+                       . $lores['resource-id'] . '-' . $lores['scale'] . '.jpg' . '" /></a></div>';
+
+               if($nextlink)
+                       $o .= '<div id="photo-next-link"><a href="' . $nextlink .'">' . t('Next >>') . '</a></div>';
+
+               $o .= '<div id="photo-photo-end"></div>';
 
 
                // Do we have an item for this photo?
@@ -1021,6 +1072,8 @@ function photos_content(&$a) {
                                '$caption' => $ph[0]['desc'],
                                '$tag_label' => t('Add a Tag'),
                                '$tags' => $link_item['tag'],
+                               '$permissions' => t('Permissions'),
+                               '$aclselect' => populate_acl($ph[0]),
                                '$help_tags' => t('Example: @bob, @Barbara_Jensen, @jim@example.com, #California, #camping'),
                                '$item_id' => ((count($linked_items)) ? $link_item['id'] : 0),
                                '$submit' => t('Submit'),
@@ -1034,12 +1087,19 @@ function photos_content(&$a) {
                        $tpl = load_view_file('view/photo_item.tpl');
                        $return_url = $a->cmd;
 
-                       $like_tpl = load_view_file('view/like.tpl');
+                       $like_tpl = load_view_file('view/like_noshare.tpl');
 
                        $likebuttons = '';
 
-                       if($can_post || can_write_wall($a,$owner_uid))
-                               $likebuttons = replace_macros($like_tpl,array('$id' => $link_item['id']));
+                       if($can_post || can_write_wall($a,$owner_uid)) {
+                               $likebuttons = replace_macros($like_tpl,array(
+                                       '$id' => $item['id'],
+                                       '$likethis' => t("I like this \x28toggle\x29"),
+                                       '$nolike' => t("I don't like this \x28toggle\x29"),
+                                       '$share' => t('Share'),
+                                       '$wait' => t('Please wait') 
+                               ));
+                       }
 
                        if(! count($r)) {
                                $o .= '<div id="photo-like-div">';
@@ -1058,6 +1118,8 @@ function photos_content(&$a) {
                                                        '$mylink' => $contact['url'],
                                                        '$mytitle' => t('This is you'),
                                                        '$myphoto' => $contact['thumb'],
+                                                       '$comment' => t('Comment'),
+                                                       '$submit' => t('Submit'),
                                                        '$ww' => ''
                                                ));
                                        }
@@ -1153,7 +1215,7 @@ function photos_content(&$a) {
                                        $drop = '';
 
                                        if(($item['contact-id'] == remote_user()) || ($item['uid'] == local_user()))
-                                               $drop = replace_macros(load_view_file('view/wall_item_drop.tpl'), array('$id' => $item['id']));
+                                               $drop = replace_macros(load_view_file('view/wall_item_drop.tpl'), array('$id' => $item['id'], '$delete' => t('Delete')));
 
 
                                        $o .= replace_macros($template,array(
@@ -1210,17 +1272,14 @@ function photos_content(&$a) {
        if(count($r)) {
                foreach($r as $rr) {
                        $o .= replace_macros($tpl,array(
-                               '$id' => $rr['id'],
-                               '$photolink' => $a->get_baseurl() . '/photos/' . $a->data['user']['nickname'] 
-                                       . '/image/' . $rr['resource-id'],
+                               '$id'         => $rr['id'],
+                               '$photolink'  => $a->get_baseurl() . '/photos/' . $a->data['user']['nickname'] . '/image/' . $rr['resource-id'],
                                '$phototitle' => t('View Photo'),
-                               '$imgsrc' => $a->get_baseurl() . '/photo/' 
-                                       . $rr['resource-id'] . '-' . ((($rr['scale']) == 6) ? 4 : $rr['scale']) . '.jpg',
-                               '$albumlink' => $a->get_baseurl() . '/photos/' 
-                                       . $a->data['user']['nickname'] . '/album/' . bin2hex($rr['album']),
-                               '$albumname' => $rr['album'],
-                               '$albumalt' => t('View Album'),
-                               '$imgalt' => $rr['filename']
+                               '$imgsrc'     => $a->get_baseurl() . '/photo/' . $rr['resource-id'] . '-' . ((($rr['scale']) == 6) ? 4 : $rr['scale']) . '.jpg',
+                               '$albumlink'  => $a->get_baseurl() . '/photos/' . $a->data['user']['nickname'] . '/album/' . bin2hex($rr['album']),
+                               '$albumname'  => $rr['album'],
+                               '$albumalt'   => t('View Album'),
+                               '$imgalt'     => $rr['filename']
                        ));
 
                }