Subversion Repositories oidplus

Rev

Rev 1086 | Details | Compare with Previous | Last modification | View Log | RSS feed

Rev Author Line No. Line
635 daniel-mar 1
<?php
2
 
3
/*
4
 * OIDplus 2.0
1086 daniel-mar 5
 * Copyright 2019 - 2023 Daniel Marschall, ViaThinkSoft
635 daniel-mar 6
 *
7
 * Licensed under the Apache License, Version 2.0 (the "License");
8
 * you may not use this file except in compliance with the License.
9
 * You may obtain a copy of the License at
10
 *
11
 *     http://www.apache.org/licenses/LICENSE-2.0
12
 *
13
 * Unless required by applicable law or agreed to in writing, software
14
 * distributed under the License is distributed on an "AS IS" BASIS,
15
 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
16
 * See the License for the specific language governing permissions and
17
 * limitations under the License.
18
 */
19
 
1050 daniel-mar 20
namespace ViaThinkSoft\OIDplus;
635 daniel-mar 21
 
1086 daniel-mar 22
// phpcs:disable PSR1.Files.SideEffects
23
\defined('INSIDE_OIDPLUS') or die;
24
// phpcs:enable PSR1.Files.SideEffects
25
 
635 daniel-mar 26
class OIDplusPagePublicForgotPasswordAdmin extends OIDplusPagePluginPublic {
27
 
1116 daniel-mar 28
        /**
29
         * @param bool $html
30
         * @return void
31
         */
32
        public function init(bool $html=true) {
635 daniel-mar 33
        }
34
 
1116 daniel-mar 35
        /**
36
         * @param string $id
37
         * @param array $out
38
         * @param bool $handled
39
         * @return void
40
         * @throws OIDplusException
41
         */
42
        public function gui(string $id, array &$out, bool &$handled) {
635 daniel-mar 43
                if (explode('$',$id)[0] == 'oidplus:forgot_password_admin') {
44
                        $handled = true;
45
 
46
                        if (OIDplus::authUtils()->isAdminLoggedIn()) {
47
                                $out['title'] = _L('Change admin password');
48
                        } else {
49
                                $out['title'] = _L('Reset admin password');
50
                        }
801 daniel-mar 51
                        $out['icon']  = OIDplus::webpath(__DIR__,OIDplus::PATH_RELATIVE).'img/main_icon.png';
635 daniel-mar 52
 
53
                        $out['text']  = '<p>'._L('To reset the password of the administrator, create a hash below and then replace the entry in the file %1.','<b>userdata/baseconfig/config.inc.php</b>').'</p>';
54
                        $out['text'] .= '<div><label class="padding_label">'._L('New password').':</label><input type="password" id="admin_password" onkeypress="OIDplusPagePublicForgotPasswordAdmin.rehash_admin_pwd()" onkeyup="OIDplusPagePublicForgotPasswordAdmin.rehash_admin_pwd()"></div>';
55
                        $out['text'] .= '<div><label class="padding_label">'._L('Repeat').':</label><input type="password" id="admin_password2" onkeypress="OIDplusPagePublicForgotPasswordAdmin.rehash_admin_pwd()" onkeyup="OIDplusPagePublicForgotPasswordAdmin.rehash_admin_pwd()"></div>';
56
                        $out['text'] .= '<p><pre id="config"></pre></p>';
983 daniel-mar 57
                        $out['text'] .= '<p><input type="button" id="copy_clipboard_button" value="'._L('Copy to clipboard').'" onClick="copyToClipboard(config)"></p>';
58
                        $out['text'] .= '<script> $("#copy_clipboard_button").hide(); OIDplusPagePublicForgotPasswordAdmin.rehash_admin_pwd(); </script>';
635 daniel-mar 59
                }
60
        }
61
 
1116 daniel-mar 62
        /**
63
         * @param array $out
64
         * @return void
65
         */
66
        public function publicSitemap(array &$out) {
635 daniel-mar 67
                $out[] = 'oidplus:forgot_password_admin';
68
        }
69
 
1116 daniel-mar 70
        /**
71
         * @param array $json
72
         * @param string|null $ra_email
73
         * @param bool $nonjs
74
         * @param string $req_goto
75
         * @return bool
76
         */
77
        public function tree(array &$json, string $ra_email=null, bool $nonjs=false, string $req_goto=''): bool {
635 daniel-mar 78
                return false;
79
        }
80
 
1116 daniel-mar 81
        /**
82
         * @param string $request
83
         * @return array|false
84
         */
85
        public function tree_search(string $request) {
635 daniel-mar 86
                return false;
87
        }
983 daniel-mar 88
}