Fix & settings component

This commit is contained in:
2025-09-08 08:48:42 +02:00
parent 09f40214d4
commit cbcbcc6f8e
2 changed files with 113 additions and 54 deletions

View File

@ -1,43 +1,59 @@
<?xml version="1.0" encoding="utf-8"?> <?xml version="1.0" encoding="utf-8"?>
<config> <config>
<fieldset label="COM_CIRCOLARI" name="circolari"> <fieldset label="COM_CIRCOLARI" name="circolari">
<field
</fieldset> name="email_testo"
type="textarea"
label="Testo email"
description="Testo email diretta ai docenti per la firma"
rows="8"
cols="60"
filter="raw" />
<field
name="dirigente_nome"
type="text"
label="Nominativo Dirigente"
description="Nominativo del Dirigente"
size="40" />
</fieldset>
<fieldset name="permissions" description="JCONFIG_PERMISSIONS_DESC" label="JCONFIG_PERMISSIONS_LABEL"> <fieldset name="permissions" description="JCONFIG_PERMISSIONS_DESC"
<field name="rules" type="rules" component="com_circolari" class="inputbox" filter="rules" validate="rules" label="JCONFIG_PERMISSIONS_LABEL" section="component" /> label="JCONFIG_PERMISSIONS_LABEL">
</fieldset> <field name="rules" type="rules" component="com_circolari" class="inputbox" filter="rules"
validate="rules" label="JCONFIG_PERMISSIONS_LABEL" section="component" />
</fieldset>
<fieldset name="component"> <fieldset name="component">
<field <field
name="save_history" name="save_history"
type="radio" type="radio"
default="0" default="0"
label="JGLOBAL_SAVE_HISTORY_OPTIONS_LABEL" label="JGLOBAL_SAVE_HISTORY_OPTIONS_LABEL"
description="JGLOBAL_SAVE_HISTORY_OPTIONS_DESC" description="JGLOBAL_SAVE_HISTORY_OPTIONS_DESC"
layout="joomla.form.field.radio.switcher" layout="joomla.form.field.radio.switcher"
> >
<option value="0">JNO</option> <option value="0">JNO</option>
<option value="1">JYES</option> <option value="1">JYES</option>
</field> </field>
<field name="history_limit" type="text" filter="integer" label="JGLOBAL_HISTORY_LIMIT_OPTIONS_LABEL" description="JGLOBAL_HISTORY_LIMIT_OPTIONS_DESC" default="5"/> <field name="history_limit" type="text" filter="integer"
label="JGLOBAL_HISTORY_LIMIT_OPTIONS_LABEL" description="JGLOBAL_HISTORY_LIMIT_OPTIONS_DESC"
default="5" />
<field <field
name="sef_ids" name="sef_ids"
type="radio" type="radio"
layout="joomla.form.field.radio.switcher" layout="joomla.form.field.radio.switcher"
default="0" default="0"
label="JGLOBAL_SEF_NOIDS_LABEL" label="JGLOBAL_SEF_NOIDS_LABEL"
description="JGLOBAL_SEF_NOIDS_DESC" description="JGLOBAL_SEF_NOIDS_DESC"
filter="integer" filter="integer"
> >
<option value="0">JNO</option> <option value="0">JNO</option>
<option value="1">JYES</option> <option value="1">JYES</option>
</field> </field>
</fieldset> </fieldset>
</config> </config>
<!-- <!--
######################################################################################## ########################################################################################
@ -46,7 +62,8 @@ They are here for copy pasting - neat eh?
######################################################################################## ########################################################################################
https://docs.joomla.org/Standard_form_field_types https://docs.joomla.org/Standard_form_field_types
<field name="mycalendar" type="calendar" default="5-10-2008" label="Select a date" description="" format="%d-%m-%Y" /> <field name="mycalendar" type="calendar" default="5-10-2008" label="Select a date" description=""
format="%d-%m-%Y" />
https://docs.joomla.org/Standard_form_field_types https://docs.joomla.org/Standard_form_field_types
<field name="mycategory" type="category" label="Select a category" description="" section="3" /> <field name="mycategory" type="category" label="Select a category" description="" section="3" />
@ -55,10 +72,12 @@ https://docs.joomla.org/Standard_form_field_types
<field name="myeditor" type="editors" default="none" label="Select an editor" /> <field name="myeditor" type="editors" default="none" label="Select an editor" />
https://docs.joomla.org/Standard_form_field_types https://docs.joomla.org/Standard_form_field_types
<field name="myfile" type="filelist" default="" label="Select a file" description="" directory="administrator" filter="" exclude="" stripext="" /> <field name="myfile" type="filelist" default="" label="Select a file" description=""
directory="administrator" filter="" exclude="" stripext="" />
https://docs.joomla.org/Standard_form_field_types https://docs.joomla.org/Standard_form_field_types
<field name="myfolder" type="folderlist" default="" label="Select a folder" directory="administrator" filter="" exclude="" stripext="" /> <field name="myfolder" type="folderlist" default="" label="Select a folder"
directory="administrator" filter="" exclude="" stripext="" />
https://docs.joomla.org/Standard_form_field_types https://docs.joomla.org/Standard_form_field_types
<field name="myhelpsite" type="helpsites" default="" label="Select a help site" description="" /> <field name="myhelpsite" type="helpsites" default="" label="Select a help site" description="" />
@ -67,10 +86,12 @@ https://docs.joomla.org/Standard_form_field_types
<field name="mysecretvariable" type="hidden" default="" /> <field name="mysecretvariable" type="hidden" default="" />
https://docs.joomla.org/Standard_form_field_types https://docs.joomla.org/Standard_form_field_types
<field name="myimage" type="imagelist" default="" label="Select an image" description="" directory="" exclude="" stripext="" /> <field name="myimage" type="imagelist" default="" label="Select an image" description=""
directory="" exclude="" stripext="" />
https://docs.joomla.org/Standard_form_field_types https://docs.joomla.org/Standard_form_field_types
<field name="mylanguage" type="languages" client="site" default="en-GB" label="Select a language" description="" /> <field name="mylanguage" type="languages" client="site" default="en-GB" label="Select a language"
description="" />
https://docs.joomla.org/Standard_form_field_types https://docs.joomla.org/Standard_form_field_types
<field name="mylistvalue" type="list" default="" label="Select an option" description=""> <field name="mylistvalue" type="list" default="" label="Select an option" description="">
@ -79,13 +100,16 @@ https://docs.joomla.org/Standard_form_field_types
</field> </field>
https://docs.joomla.org/Standard_form_field_types https://docs.joomla.org/Standard_form_field_types
<field name="mymenu" type="menu" default="mainmenu" label="Select a menu" description="Select a menu" /> <field name="mymenu" type="menu" default="mainmenu" label="Select a menu" description="Select a
menu" />
https://docs.joomla.org/Standard_form_field_types https://docs.joomla.org/Standard_form_field_types
<field name="mymenuitem" type="menuitem" default="45" label="Select a menu item" description="Select a menu item" /> <field name="mymenuitem" type="menuitem" default="45" label="Select a menu item"
description="Select a menu item" />
https://docs.joomla.org/Standard_form_field_types https://docs.joomla.org/Standard_form_field_types
<field name="mypassword" type="password" default="secret" label="Enter a password" description="" size="5" /> <field name="mypassword" type="password" default="secret" label="Enter a password" description=""
size="5" />
https://docs.joomla.org/Standard_form_field_types https://docs.joomla.org/Standard_form_field_types
<field name="myradiovalue" type="radio" default="0" label="Select an option" description=""> <field name="myradiovalue" type="radio" default="0" label="Select an option" description="">
@ -97,19 +121,23 @@ https://docs.joomla.org/Standard_form_field_types
<field type="spacer" default="&lt;b&gt;Advanced parameters&lt;/b&gt;" /> <field type="spacer" default="&lt;b&gt;Advanced parameters&lt;/b&gt;" />
https://docs.joomla.org/Standard_form_field_types https://docs.joomla.org/Standard_form_field_types
<field name="myfield" type="sql" default="10" label="Select an article" query="SELECT id, title FROM #__content" key_field=”id” value_field=”title” /> <field name="myfield" type="sql" default="10" label="Select an article" query="SELECT id, title
FROM #__content" key_field=”id” value_field=”title” />
https://docs.joomla.org/Standard_form_field_types https://docs.joomla.org/Standard_form_field_types
<field name="mytextvalue" type="text" default="Some text" label="Enter some text" description="" size="10" /> <field name="mytextvalue" type="text" default="Some text" label="Enter some text" description=""
size="10" />
https://docs.joomla.org/Standard_form_field_types https://docs.joomla.org/Standard_form_field_types
<field name="mytextarea" type="textarea" default="default" label="Enter some text" description="" rows="10" cols="5" /> <field name="mytextarea" type="textarea" default="default" label="Enter some text" description=""
rows="10" cols="5" />
https://docs.joomla.org/Standard_form_field_types https://docs.joomla.org/Standard_form_field_types
<field name="mytimezone" type="timezones" default="-10" label="Select a timezone" description="" /> <field name="mytimezone" type="timezones" default="-10" label="Select a timezone" description="" />
https://docs.joomla.org/Standard_form_field_types https://docs.joomla.org/Standard_form_field_types
<field name="myusergroups" type="usergroup" default="" label="Select a user group" description="" /> <field name="myusergroups" type="usergroup" default="" label="Select a user group" description=""
/>
--> -->

View File

@ -6,18 +6,49 @@ use Joomla\CMS\Router\Route;
use Joomla\CMS\Layout\LayoutHelper; use Joomla\CMS\Layout\LayoutHelper;
use Joomla\CMS\Session\Session; use Joomla\CMS\Session\Session;
// Load behaviors
HTMLHelper::_('behavior.multiselect');
HTMLHelper::_('bootstrap.tooltip');
// State & ordering
$listOrder = $this->state->get('list.ordering', 'f.data_firma'); $listOrder = $this->state->get('list.ordering', 'f.data_firma');
$listDirn = $this->state->get('list.direction', 'DESC'); $listDirn = $this->state->get('list.direction', 'DESC');
// Carica CSS base // Prendi il form filtri SENZA accedere a property protette
HTMLHelper::_('bootstrap.tooltip'); $filterForm = $this->get('FilterForm');
HTMLHelper::_('behavior.multiselect'); $activeFilters = $this->get('ActiveFilters');
HTMLHelper::_('formbehavior.chosen', 'select');
?>
<form action="<?php echo Route::_('index.php?option=com_circolari&view=reportfirme'); ?>" method="post" name="adminForm" id="adminForm">
<div id="j-main-container" class="j-main-container">
<?php echo LayoutHelper::render('joomla.searchtools.default', ['view' => $this]); ?>
// URL base della view
$action = Route::_('index.php?option=com_circolari&view=reportfirme');
// Link export CSV (rispetta i filtri correnti mantenendo la query string del form)
$exportLink = Route::_('index.php?option=com_circolari&task=reportfirme.exportCsv&' . Session::getFormToken() . '=1');
?>
<form action="<?php echo $action; ?>" method="post" name="adminForm" id="adminForm">
<div id="j-main-container" class="j-main-container">
<div class="d-flex justify-content-between align-items-center mb-3">
<h2 class="m-0">Report Firme</h2>
<a class="btn btn-outline-secondary btn-sm"
href="<?php echo $exportLink; ?>"
title="Scarica CSV">
Scarica CSV
</a>
</div>
<?php if ($filterForm) : ?>
<?php
// Passa esplicitamente form e activeFilters per evitare accesso a property protette
echo LayoutHelper::render('joomla.searchtools.default', [
'view' => $this,
'form' => $filterForm,
'activeFilters' => $activeFilters,
]);
?>
<?php endif; ?>
<div class="clearfix"></div>
<table class="table table-striped"> <table class="table table-striped">
<thead> <thead>
<tr> <tr>