-
Notifications
You must be signed in to change notification settings - Fork 2
/
qa-qnumbering-admin.php
125 lines (103 loc) · 2.78 KB
/
qa-qnumbering-admin.php
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
<?php
class qa_qnumbering_admin {
function option_default($option) {
switch($option) {
/* DEPRECATED
case 'qnumbering_plugin_css':
return '
.qa-question-list-count {
color: inherit;
position: relative;
}
.q-number-pad {
position: absolute;
z-index: 2;
-webkit-overflow-scrolling: touch;
transition: opacity .25s cubic-bezier(.4,0,.2,1);
will-change: opacity, visibility;
margin: 0 12px;
white-space: nowrap;
opacity: 0;
visibility: hidden;
background-color: rgb(0 0 0 / 90%);
color: #ffffff;
font-size: .75rem;
font-weight: initial;
padding: 4px 8px;
border-radius: 0.3rem;
pointer-events: none;
box-shadow: 0 1px 3px 0 rgb(60 64 67 / 30%), 0 4px 8px 3px rgb(60 64 67 / 15%);
}
';
*/
case 'qnumbering_plugin_tooltip':
return 'List item number'; /* Default tootip text */
default:
return null;
}
}
function allow_template($template)
{
return ($template!='admin');
}
function admin_form(&$qa_content)
{
// Process form input
$ok = null;
if (qa_clicked('qnumbering_save')) {
foreach($_POST as $i => $v) {
qa_opt($i,$v);
}
qa_opt('qnumbering_native_tooltip', (bool)qa_post_text('qnumbering_native_tooltip'));
$ok = qa_lang('admin/options_saved');
}
else if (qa_clicked('qnumbering_reset')) {
foreach($_POST as $i => $v) {
$def = $this->option_default($i);
if($def !== null) qa_opt($i,$def);
}
qa_opt('qnumbering_native_tooltip', (bool)qa_post_text('0')); // Reset to zero, default value
$ok = qa_lang('admin/options_reset');
}
$fields = array();
$fields[] = array(
'label' => 'Native tooltip',
'note' => 'Show Browser Native tooltip instead of Custom tooltip to minimize excessive DOM elements',
'type' => 'checkbox',
'value' => qa_opt('qnumbering_native_tooltip'),
'tags' => 'NAME="qnumbering_native_tooltip"',
);
$fields[] = array(
'type' => 'blank',
);
$fields[] = array(
'label' => 'Informational text when hovering the number',
'type' => 'text',
'value' => qa_opt('qnumbering_plugin_tooltip'),
'tags' => 'NAME="qnumbering_plugin_tooltip"',
);
/* DEPRECATED
$fields[] = array(
'rows' => 8,
'label' => 'QNumbering CSS',
'type' => 'textarea',
'value' => qa_opt('qnumbering_plugin_css'),
'tags' => 'NAME="qnumbering_plugin_css"',
);
*/
return array(
'ok' => ($ok && !isset($error)) ? $ok : null,
'fields' => $fields,
'buttons' => array(
array(
'label' => qa_lang_html('main/save_button'),
'tags' => 'NAME="qnumbering_save"',
),
array(
'label' => qa_lang_html('admin/reset_options_button'),
'tags' => 'NAME="qnumbering_reset"',
),
)
);
}
}