Files
godot-question2answer/qa-plugin/mouseover-layer/qa-mouseover-admin-form.php
Emi 07ec659385 Importing project into Git
This project lived only on the server without version control. This is now the starting point for the repository.
2023-05-23 20:03:24 +02:00

75 lines
2.2 KiB
PHP

<?php
/*
Question2Answer by Gideon Greenspan and contributors
http://www.question2answer.org/
File: qa-plugin/mouseover-layer/qa-mouseover-admin-form.php
Description: Generic module class for mouseover layer plugin to provide admin form and default option
This program is free software; you can redistribute it and/or
modify it under the terms of the GNU General Public License
as published by the Free Software Foundation; either version 2
of the License, or (at your option) any later version.
This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details.
More about this license: http://www.question2answer.org/license.php
*/
class qa_mouseover_admin_form
{
public function option_default($option)
{
if ($option === 'mouseover_content_max_len')
return 480;
}
public function admin_form(&$qa_content)
{
$saved = qa_clicked('mouseover_save_button');
if ($saved) {
qa_opt('mouseover_content_on', (int) qa_post_text('mouseover_content_on_field'));
qa_opt('mouseover_content_max_len', (int) qa_post_text('mouseover_content_max_len_field'));
}
qa_set_display_rules($qa_content, array(
'mouseover_content_max_len_display' => 'mouseover_content_on_field',
));
return array(
'ok' => $saved ? 'Mouseover settings saved' : null,
'fields' => array(
array(
'label' => 'Show content preview on mouseover in question lists',
'type' => 'checkbox',
'value' => qa_opt('mouseover_content_on'),
'tags' => 'name="mouseover_content_on_field" id="mouseover_content_on_field"',
),
array(
'id' => 'mouseover_content_max_len_display',
'label' => 'Maximum length of preview:',
'suffix' => 'characters',
'type' => 'number',
'value' => (int) qa_opt('mouseover_content_max_len'),
'tags' => 'name="mouseover_content_max_len_field"',
),
),
'buttons' => array(
array(
'label' => 'Save Changes',
'tags' => 'name="mouseover_save_button"',
),
),
);
}
}