1<?php
2/**
3 * @package tikiwiki
4 */
5// (c) Copyright by authors of the Tiki Wiki CMS Groupware Project
6//
7// All Rights Reserved. See copyright.txt for details and a complete list of authors.
8// Licensed under the GNU LESSER GENERAL PUBLIC LICENSE. See license.txt for details.
9// $Id$
10
11$section = 'mytiki';
12require_once('tiki-setup.php');
13require_once('lib/socialnetworkslib.php');
14$access->check_feature('feature_socialnetworks');
15$access->check_permission('tiki_p_socialnetworks', tra('Social networks'));
16
17$auto_query_args = [];
18
19if (isset($_REQUEST['request_twitter'])) {
20	$access->check_user($user);
21	if (! isset($_REQUEST['oauth_verifier'])) {
22		// user asked to give us access to twitter
23		$socialnetworkslib->getTwitterRequestToken();
24	} else {
25		if (isset($_SESSION['TWITTER_REQUEST_TOKEN'])) {
26			// this is the callback from twitter
27			// no anti-CSRF check here since token provided by Twitter in this request is verified
28			$socialnetworkslib->getTwitterAccessToken($user);
29		} // otherwise it is just a reload of this page
30	}
31}
32if (isset($_REQUEST['remove_twitter'])) {
33	$access->check_user($user);
34	// remove user token from tiki
35	$tikilib->set_user_preference($user, 'twitter_token', '');
36	$smarty->assign('show_removal', true);
37}
38if ($user) {
39	$token = $tikilib->get_user_preference($user, 'twitter_token', '');
40	$smarty->assign('twitter', ($token != ''));
41}
42if ($user) {
43	$token = $tikilib->get_user_preference($user, 'linkedin_token', '');
44	$smarty->assign('linkedIn', ($token != ''));
45}
46if (isset($_REQUEST['request_facebook'])) {
47	if ($prefs["socialnetworks_facebook_login"] != 'y') {
48		$access->check_user($user);
49	}
50	if (! isset($_REQUEST['code'])) {
51		// user asked to give us access to Facebook
52		// no anti-CSRF here since this redirects to facebook site
53		$socialnetworkslib->getFacebookRequestToken();
54	} else {
55		// this is the callback from Facebook
56		// no anti-CSRF check here since token provided by Facebook in this request is verified with Facebook
57		$socialnetworkslib->facebookLoginPre();
58	}
59}
60if (isset($_REQUEST['remove_facebook'])) {
61	$access->check_user($user);
62	// remove user token from tiki
63	$tikilib->set_user_preference($user, 'facebook_token', '');
64	$tikilib->set_user_preference($user, 'facebook_id', '');
65	$smarty->assign('show_removal', true);
66}
67
68if (isset($_REQUEST['accounts'])) {
69	$access->check_user($user);
70	$tikilib->set_user_preference($user, 'bitly_login', $_REQUEST['bitly_login']);
71	$smarty->assign('bitly_login', $_REQUEST['bitly_login']);
72	$tikilib->set_user_preference($user, 'bitly_key', $_REQUEST['bitly_key']);
73	$smarty->assign('bitly_key', $_REQUEST['bitly_key']);
74} else {
75	$smarty->assign('bitly_login', $tikilib->get_user_preference($user, 'bitly_login', ''));
76	$smarty->assign('bitly_key', $tikilib->get_user_preference($user, 'bitly_key', ''));
77}
78if ($user) {
79	$token = $tikilib->get_user_preference($user, 'facebook_token', '');
80	$smarty->assign('facebook', ($token != ''));
81}
82$smarty->assign('twitterRegistered', $socialnetworkslib->twitterRegistered());
83$smarty->assign('facebookRegistered', $socialnetworkslib->facebookRegistered());
84$smarty->assign('linkedInRegistered', $socialnetworkslib->linkedInRegistered());
85
86$smarty->assign('mid', 'tiki-socialnetworks.tpl');
87$smarty->display("tiki.tpl");
88