From 8ca0c7ce6a1c7f8eb60cddc5955db51afd2cd107 Mon Sep 17 00:00:00 2001 From: alecpl <alec@alec.pl> Date: Thu, 11 Jun 2009 11:15:28 -0400 Subject: [PATCH] - fix folder ID generation (for example two folders 'aaa' and 'aaa "') --- program/include/main.inc | 8 ++++---- program/js/app.js | 3 +-- 2 files changed, 5 insertions(+), 6 deletions(-) diff --git a/program/include/main.inc b/program/include/main.inc index dbed2ba..c870b49 100644 --- a/program/include/main.inc +++ b/program/include/main.inc @@ -590,12 +590,12 @@ /** * Remove all non-ascii and non-word chars - * except . and - + * except ., -, _ */ -function asciiwords($str, $css_id = false) +function asciiwords($str, $css_id = false, $replace_with = '') { $allowed = 'a-z0-9\_\-' . (!$css_id ? '\.' : ''); - return preg_replace("/[^$allowed]/i", '', $str); + return preg_replace("/[^$allowed]/i", $replace_with, $str); } /** @@ -1201,7 +1201,7 @@ } // make folder name safe for ids and class names - $folder_id = asciiwords($folder['id'], true); + $folder_id = asciiwords($folder['id'], true, '_'); $classes = array('mailbox'); // set special class for Sent, Drafts, Trash and Junk diff --git a/program/js/app.js b/program/js/app.js index 0933ca6..2831e3d 100644 --- a/program/js/app.js +++ b/program/js/app.js @@ -3496,7 +3496,6 @@ if ((current_li = this.get_folder_li(old))) { $(current_li).removeClass('selected').removeClass('unfocused'); } - if ((target_li = this.get_folder_li(name))) { $(target_li).removeClass('unfocused').addClass('selected'); } @@ -3511,7 +3510,7 @@ { if (this.gui_objects.folderlist) { - name = String(name).replace(this.identifier_expr, ''); + name = String(name).replace(this.identifier_expr, '_'); return document.getElementById('rcmli'+name); } -- Gitblit v1.9.1