aboutsummaryrefslogtreecommitdiffstats
path: root/mod/connect.php
diff options
context:
space:
mode:
Diffstat (limited to 'mod/connect.php')
-rw-r--r--mod/connect.php98
1 files changed, 97 insertions, 1 deletions
diff --git a/mod/connect.php b/mod/connect.php
index 21d461c19..0ab994ddd 100644
--- a/mod/connect.php
+++ b/mod/connect.php
@@ -1,3 +1,99 @@
<?php /** @file */
-// Placeholder for channel sell pages
+
+require_once('include/Contact.php');
+require_once('include/contact_widgets.php');
+require_once('include/items.php');
+
+
+function connect_init(&$a) {
+ if(argc() > 1)
+ $which = argv(1);
+ else {
+ notice( t('Requested profile is not available.') . EOL );
+ $a->error = 404;
+ return;
+ }
+
+ profile_load($a,$which,'');
+ profile_create_sidebar($a,false);
+
+
+}
+
+function connect_post(&$a) {
+
+ $edit = ((local_user() && (local_user() == $a->profile['profile_uid'])) ? true : false);
+
+ if($edit) {
+ $premium = (($_POST['premium']) ? intval($_POST['premium']) : 0);
+ $text = escape_tags($_POST['text']);
+
+ $channel = $a->get_channel();
+ if(($channel['channel_pageflags'] & PAGE_PREMIUM) != $premium)
+ $r = q("update channel set channel_flags = channel_flags ^ %d where channel_id = %d limit 1",
+ intval(PAGE_PREMIUM),
+ intval(local_user())
+ );
+ set_pconfig($a->profile['profile_uid'],'system','selltext',$text);
+ return;
+ }
+
+ $url = '';
+ $observer = $a->get_observer();
+ if(($observer) && ($_POST['submit'] === t('Continue'))) {
+ if($observer['xchan_follow'])
+ $url = sprintf($observer['xchan_follow'],urlencode($a->profile['channel_address'] . '@' . $a->get_hostname()));
+ if(! $url) {
+ $r = q("select * from hubloc where hubloc_hash = '%s' order by hubloc_id desc limit 1",
+ dbesc($observer['xchan_hash'])
+ );
+ if($r)
+ $url = $r[0]['hubloc_url'] . '/follow?f=&url=' . urlencode($a->profile['channel_address'] . '@' . $a->get_hostname());
+ }
+ }
+ if($url)
+ goaway($url);
+ else
+ notice('Unable to connect to your home hub location.');
+
+}
+
+
+
+function connect_content(&$a) {
+
+ $edit = ((local_user() && (local_user() == $a->profile['profile_uid'])) ? true : false);
+
+ $text = get_pconfig($a->profile['profile_uid'],'system','selltext');
+
+ if($edit) {
+ $o = replace_macros(get_markup_template('sellpage_edit.tpl'),array(
+
+
+ ));
+ return $o;
+ }
+ else {
+ $submit = replace_macros(get_markup_template('sellpage_submit.tpl'), array(
+ '$continue' => t('Continue'),
+ '$address' => $a->profile['channel_address']
+ ));
+
+ $o = replace_macros(get_markup_template('sellpage_view.tpl'),array(
+ '$header' => t('Restricted Channel'),
+ '$desc' => t('This channel may require additional steps or acknowledgement of the following conditions prior to connecting:'),
+ '$text' => prepare_text($text),
+
+ '$desc2' => t('By continuing, I certify that I have complied with any instructions provided on this page.'),
+ '$submit' => $submit,
+
+ ));
+
+
+
+
+ }
+
+ return $o;
+} \ No newline at end of file