diff options
Diffstat (limited to 'mod')
-rw-r--r-- | mod/admin.php | 22 | ||||
-rw-r--r-- | mod/dirprofile.php | 4 | ||||
-rw-r--r-- | mod/editpost.php | 12 | ||||
-rw-r--r-- | mod/online.php | 11 | ||||
-rw-r--r-- | mod/photos.php | 4 | ||||
-rw-r--r-- | mod/ping.php | 29 | ||||
-rw-r--r-- | mod/rpost.php | 6 | ||||
-rw-r--r-- | mod/settings.php | 7 |
8 files changed, 90 insertions, 5 deletions
diff --git a/mod/admin.php b/mod/admin.php index 70a753c46..950c7e5ce 100644 --- a/mod/admin.php +++ b/mod/admin.php @@ -468,6 +468,28 @@ function admin_page_site(&$a) { } function admin_page_hubloc_post(&$a){ check_form_security_token_redirectOnErr('/admin/hubloc', 'admin_hubloc'); + + //prepare for ping + + if ( $_POST['hublocid']) { + $hublocid = $_POST['hublocid']; + $arrhublocurl = q("SELECT hubloc_url FROM hubloc WHERE hubloc_id = %d ", + intval($hublocid) + ); + $hublocurl = $arrhublocurl[0]['hubloc_url'] . '/post'; + logger('hubloc_url : ' . $hublocurl , LOGGER_DEBUG); + } + + //if ( $_POST'' == "check" ) { + // //todo + //} + + //perform ping + //handle results and set the hubloc flags in db to make results visible + + //in case of repair store new pub key for tested hubloc (all channel with this hubloc) in db + //after repair set hubloc flags to 0 + goaway($a->get_baseurl(true) . '/admin/hubloc' ); return; } diff --git a/mod/dirprofile.php b/mod/dirprofile.php index 1593b014a..d88144f52 100644 --- a/mod/dirprofile.php +++ b/mod/dirprofile.php @@ -74,6 +74,9 @@ function dirprofile_init(&$a) { $qrlink = zid($rr['url']); $connect_link = ((local_user()) ? z_root() . '/follow?f=&url=' . urlencode($rr['address']) : ''); + $online = remote_online_status($rr['address']); + + if(in_array($rr['hash'],$contacts)) $connect_link = ''; @@ -151,6 +154,7 @@ function dirprofile_init(&$a) { '$photo' => $rr['photo_l'], '$alttext' => $rr['name'] . ' ' . $rr['address'], '$name' => $rr['name'], + '$online' => (($online) ? t('Online Now') : ''), '$details' => $pdesc . $details, '$profile' => $profile, '$address' => $rr['address'], diff --git a/mod/editpost.php b/mod/editpost.php index 7cc33d60d..918a70d36 100644 --- a/mod/editpost.php +++ b/mod/editpost.php @@ -92,6 +92,11 @@ function editpost_content(&$a) { } + $cipher = get_pconfig(get_app()->profile['profile_uid'],'system','default_cipher'); + if(! $cipher) + $cipher = 'aes256'; + + $o .= replace_macros($tpl,array( '$return_path' => $_SESSION['return_url'], '$action' => 'item', @@ -128,11 +133,12 @@ function editpost_content(&$a) { '$jotplugins' => $jotplugins, '$sourceapp' => t($a->sourcename), '$catsenabled' => $catsenabled, - '$defexpire' => $itm[0]['expires'], - '$feature_expire' => 'none', + '$defexpire' => datetime_convert('UTC', date_default_timezone_get(),$itm[0]['expires']), + '$feature_expire' => ((feature_enabled(get_app()->profile['profile_uid'],'content_expire') && (! $webpage)) ? 'block' : 'none'), '$expires' => t('Set expiration date'), - '$feature_encrypt' => 'none', + '$feature_encrypt' => ((feature_enabled(get_app()->profile['profile_uid'],'content_encrypt') && (! $webpage)) ? 'block' : 'none'), '$encrypt' => t('Encrypt text'), + '$cipher' => $cipher, '$expiryModalOK' => t('OK'), '$expiryModalCANCEL' => t('Cancel'), )); diff --git a/mod/online.php b/mod/online.php new file mode 100644 index 000000000..c6500347a --- /dev/null +++ b/mod/online.php @@ -0,0 +1,11 @@ +<?php /** @file */ + +function online_init(&$a) { + + $ret = array('result' => false); + if(argc() != 2) + json_return_and_die($ret); + + $ret = get_online_status(argv(1)); + json_return_and_die($ret); +} diff --git a/mod/photos.php b/mod/photos.php index 23733e121..c299fe778 100644 --- a/mod/photos.php +++ b/mod/photos.php @@ -778,6 +778,8 @@ function photos_content(&$a) { return; } + + $prevlink = ''; $nextlink = ''; @@ -898,6 +900,8 @@ function photos_content(&$a) { } } +// logger('mod_photo: link_item' . print_r($link_item,true)); + // FIXME - remove this when we move to conversation module $r = $r[0]['children']; diff --git a/mod/ping.php b/mod/ping.php index dda87dec2..2d5deb9ad 100644 --- a/mod/ping.php +++ b/mod/ping.php @@ -43,6 +43,35 @@ function ping_init(&$a) { unset($_SESSION['sysmsg_info']); } + if(get_observer_hash() && (! $result['invalid'])) { + $r = q("select cp_id, cp_room from chatpresence where cp_xchan = '%s' and cp_client = '%s'", + dbesc(get_observer_hash()), + dbesc($_SERVER['REMOTE_ADDR']) + ); + $basic_presence = false; + if($r) { + foreach($r as $rr) { + if($rr['cp_room'] == 0) + $basic_presence = true; + q("update chatpresence set cp_last = '%s' where cp_id = %d limit 1", + dbesc(datetime_convert()), + intval($rr['cp_id']) + ); + } + } + if(! $basic_presence) { + q("insert into chatpresence ( cp_xchan, cp_last, cp_status, cp_client) + values( '%s', '%s', '%s', '%s' ) ", + dbesc(get_observer_hash()), + dbesc(datetime_convert()), + dbesc('online'), + dbesc($_SERVER['REMOTE_ADDR']) + ); + } + } + + q("delete from chatpresence where cp_last < UTC_TIMESTAMP() - INTERVAL 3 MINUTE"); + if((! local_user()) || ($result['invalid'])) { echo json_encode($result); killme(); diff --git a/mod/rpost.php b/mod/rpost.php index 8e01ef5d4..852a57d78 100644 --- a/mod/rpost.php +++ b/mod/rpost.php @@ -65,8 +65,10 @@ function rpost_content(&$a) { if($_REQUEST['remote_return']) { $_SESSION['remote_return'] = $_REQUEST['remote_return']; } - if(argc() > 1 && argv(1) === 'return' && $_SESSION['remote_return']) { - goaway($_SESSION['remote_return']); + if(argc() > 1 && argv(1) === 'return') { + if($_SESSION['remote_return']) + goaway($_SESSION['remote_return']); + goaway(z_root() . '/network'); } $plaintext = true; diff --git a/mod/settings.php b/mod/settings.php index ee6ef45de..7ff76cd3e 100644 --- a/mod/settings.php +++ b/mod/settings.php @@ -266,6 +266,7 @@ function settings_post(&$a) { $expire_network_only = ((x($_POST,'expire_network_only'))? intval($_POST['expire_network_only']) : 0); $allow_location = (((x($_POST,'allow_location')) && (intval($_POST['allow_location']) == 1)) ? 1: 0); + $hide_presence = (((x($_POST,'hide_presence')) && (intval($_POST['hide_presence']) == 1)) ? 1: 0); $publish = (((x($_POST,'profile_in_directory')) && (intval($_POST['profile_in_directory']) == 1)) ? 1: 0); $page_flags = (((x($_POST,'page-flags')) && (intval($_POST['page-flags']))) ? intval($_POST['page-flags']) : 0); @@ -395,6 +396,7 @@ function settings_post(&$a) { set_pconfig(local_user(),'system','post_joingroup', $post_joingroup); set_pconfig(local_user(),'system','post_profilechange', $post_profilechange); set_pconfig(local_user(),'system','blocktags',$blocktags); + set_pconfig(local_user(),'system','hide_online_status',$hide_presence); $r = q("update channel set channel_name = '%s', channel_pageflags = %d, channel_timezone = '%s', channel_location = '%s', channel_notifyflags = %d, channel_max_anon_mail = %d, channel_max_friend_req = %d, channel_expire_days = %d, channel_default_group = '%s', channel_r_stream = %d, channel_r_profile = %d, channel_r_photos = %d, channel_r_abook = %d, channel_w_stream = %d, channel_w_wall = %d, channel_w_tagwall = %d, channel_w_comment = %d, channel_w_mail = %d, channel_w_photos = %d, channel_w_chat = %d, channel_a_delegate = %d, channel_r_storage = %d, channel_w_storage = %d, channel_r_pages = %d, channel_w_pages = %d, channel_a_republish = %d, channel_allow_cid = '%s', channel_allow_gid = '%s', channel_deny_cid = '%s', channel_deny_gid = '%s' where channel_id = %d limit 1", @@ -821,6 +823,9 @@ function settings_content(&$a) { $unkmail = $a->user['unkmail']; $cntunkmail = $a->user['cntunkmail']; + $hide_presence = intval(get_pconfig(local_user(), 'system','hide_online_status')); + + $expire_items = get_pconfig(local_user(), 'expire','items'); $expire_items = (($expire_items===false)? '1' : $expire_items); // default if not set: 1 @@ -918,6 +923,8 @@ function settings_content(&$a) { '$h_prv' => t('Security and Privacy Settings'), + '$hide_presence' => array('hide_presence', t('Hide my online presence'),$hide_presence, t('Prevents showing if you are available for chat')), + '$lbl_pmacro' => t('Quick Privacy Settings:'), '$pmacro3' => t('Very Public - extremely permissive'), '$pmacro2' => t('Typical - default public, privacy when desired'), |