source: extensions/oAuth/admin/providers.php @ 26608

Last change on this file since 26608 was 26608, checked in by mistic100, 10 years ago

finish updating guides, fix flow issues, update language file

File size: 2.1 KB
RevLine 
[20323]1<?php
2defined('OAUTH_PATH') or die('Hacking attempt!');
3
[20324]4load_language('help.lang', OAUTH_PATH);
5
[20323]6$PROVIDERS_CONFIG = include(OAUTH_PATH . 'include/providers_stats.inc.php');
7
8if (isset($_POST['save_config']))
9{
[26604]10  $providers = array(); $count_enabled = 0;
[20323]11  foreach ($_POST['providers'] as $id => $data)
12  {
13    $data['enabled'] = $data['enabled']=='true';
[26604]14    if ($data['enabled']) $count_enabled++;
[20323]15   
16    if ($PROVIDERS_CONFIG[$id]['new_app_link'] and $data['enabled'])
17    {
18      if (empty($data['keys']['secret']) or
19        (@$PROVIDERS_CONFIG[$id]['require_client_id'] and empty($data['keys']['id'])) or
20        (!@$PROVIDERS_CONFIG[$id]['require_client_id'] and empty($data['keys']['key']))
21      ) {
[26556]22        $page['errors'][] = l10n('%s: invalid keys', $PROVIDERS_CONFIG[$id]['provider_name']);
[20323]23      }
24    }
25   
26    if (isset($PROVIDERS_CONFIG[$id]['scope']))
27    {
28      $data['scope'] = $PROVIDERS_CONFIG[$id]['scope'];
29    }
30   
[20337]31    if (is_array(@$data['keys']))
[20323]32    {
[20337]33      $data['keys'] = array_map('trim', $data['keys']);
[20323]34    }
[20337]35   
[20620]36    $data['name'] = $PROVIDERS_CONFIG[$id]['provider_name'];
[20337]37    $providers[$id] = $data;
[20323]38  }
39 
[20337]40  $hybridauth_conf['providers'] = $providers;
[26604]41  $hybridauth_conf['total'] = count($hybridauth_conf['providers']);
42  $hybridauth_conf['enabled'] = $count_enabled;
[20337]43 
[20323]44  if (!count($page['errors']))
45  {
46    // generate config file
47    $content = "<?php\ndefined('PHPWG_ROOT_PATH') or die('Hacking attempt!');\n\nreturn ";
[26604]48    $content.= var_export(array_intersect_key($hybridauth_conf, array_flip(array('providers','total','enabled'))), true);
[20323]49    $content.= ";\n?>";
[20337]50   
[20323]51    file_put_contents(OAUTH_CONFIG, $content);
[26556]52    $page['infos'][] = l10n('Information data registered in database');
[20323]53  }
54}
55
56
57$template->assign(array(
58  'PROVIDERS' => $PROVIDERS_CONFIG,
59  'CONFIG' => $hybridauth_conf['providers'],
[26608]60  'SERVERNAME' => get_servername(),
61  'WEBSITE' => get_absolute_root_url(),
[20323]62  'OAUTH_CALLBACK' => OAUTH_PUBLIC . '?hauth.done=',
63  ));
64
65// define template file
66$template->set_filename('oauth_content', realpath(OAUTH_PATH . 'admin/template/providers.tpl'));
Note: See TracBrowser for help on using the repository browser.