Dolibarr ERP & CRM » Bugs » bug #1825 External agenda: hide/show checkbox doesn't workDernières modifications
Répondre
État Détails |
Submitted by: | Ruben Almeida (aruben) | | Submitted on: | 03/02/2015 16:48 |
Last Modified On: | 03/02/2015 20:35 | |
Summary: | External agenda: hide/show checkbox doesn't work |
Description: | When we add an external agenda, we see it in the Dolibarr Agenda.
But the checkbox, to hide/show its events, doesn't work: they remain visible. |
Step to reproduce bug: | Dolibarr versions: 3.6.2 ; 3.7 ; 3.8
In: Internet Explorer 11 (11.0.15)
In: Chrome 40
Local install (wamp server) with php5.3
1-Add an external agenda (ex: .ics from Google)
2-Go to the Agenda menu
3-Uncheck the checkbox for this external agenda
4->The events don't disappear
Where the bug ?
In 3.6.2: file "core\lib\agenda.lib.php" lines 150 & 152
In 3.7.0: file "comm\action\index.php" lines 373 & 375
In 3.8.0: file "comm\action\index.php" lines 366 & 368
Old code 3.6.2 :
print ' jQuery("#check_' . $htmlname . '").click(function() {';
print ' jQuery(".family_' . $htmlname . '").toggle();';
New corrected code:
print ' jQuery(\'input[id="check_' . $htmlname . '"]\').click(function() {';
print ' jQuery(\'div[class*="family_' . $htmlname . '"]\').toggle();';
Bug reason:
The "." and "@" in the class name and id label of the div/input make fail jquery to find the objects.
I have the error in debug mode (F12 in IE) when loading the page :
Syntax error, unrecognized _expression_: #address@hidden |
Detected in version: | 3.7.0 | | Category: | Module: Agenda |
Severity: | 2 | | OS Type/Version: | Windows 8.1 |
PHP version: | 5.3 ; 5.4 | | Database type and version: | Mysql5.5.24 |
Etat |
Status: | Open | | Assigned to: | Aucun |
Resolution: | Aucun | |
Commentaires- Ruben Almeida 03/02/2015 20:35
- More information:
In my agenda configuration tab, I put "address@hidden" for the "Name" of the external agenda. If I put "Toto Gmail", it works perfectly.
This bug comes from the "." and "@" in the Name attribute. Also bugs with "&", "#", "$", "+", ...
The variable "$htmlname" is sanitized with "dol_string_nospecial()" before using it, but this function doesn't remove ".", "@", "&", "#", "$", "+". |
|
In my agenda configuration tab, I put "address@hidden" for the "Name" of the external agenda. If I put "Toto Gmail", it works perfectly.
This bug comes from the "." and "@" in the Name attribute. Also bugs with "&", "#", "$", "+", ...
The variable "$htmlname" is sanitized with "dol_string_nospecial()" before using it, but this function doesn't remove ".", "@", "&", "#", "$", "+".