From 6a91448aee5d036b35c621bbdaff250dc84e15f3 Mon Sep 17 00:00:00 2001
From: Aleksander Machniak <machniak@kolabsys.com>
Date: Wed, 30 Oct 2013 14:51:55 -0400
Subject: [PATCH] Improve performance and code readability by using String's startsWith() method, other code improvements

---
 program/js/list.js |    7 ++++---
 1 files changed, 4 insertions(+), 3 deletions(-)

diff --git a/program/js/list.js b/program/js/list.js
index 46d9d27..b2d4f8a 100644
--- a/program/js/list.js
+++ b/program/js/list.js
@@ -31,6 +31,7 @@
 
   this.list = list ? list : null;
   this.tagname = this.list ? this.list.nodeName.toLowerCase() : 'table';
+  this.id_regexp = /^rcmrow([a-z0-9\-_=\+\/]+)/i;
   this.thead;
   this.tbody;
   this.fixed_header;
@@ -110,7 +111,7 @@
 init_row: function(row)
 {
   // make references in internal array and set event handlers
-  if (row && String(row.id).match(/^rcmrow([a-z0-9\-_=\+\/]+)/i)) {
+  if (row && String(row.id).match(this.id_regexp)) {
     var self = this,
       uid = RegExp.$1;
     row.uid = uid;
@@ -728,7 +729,7 @@
     var i, len, rows = this.tbody.childNodes;
 
     for (i=0, len=rows.length-1; i<len; i++)
-      if (rows[i].id && String(rows[i].id).match(/^rcmrow([a-z0-9\-_=\+\/]+)/i) && this.rows[RegExp.$1] != null)
+      if (rows[i].id && String(rows[i].id).match(this.id_regexp) && this.rows[RegExp.$1] != null)
         return RegExp.$1;
   }
 
@@ -741,7 +742,7 @@
     var i, rows = this.tbody.childNodes;
 
     for (i=rows.length-1; i>=0; i--)
-      if (rows[i].id && String(rows[i].id).match(/^rcmrow([a-z0-9\-_=\+\/]+)/i) && this.rows[RegExp.$1] != null)
+      if (rows[i].id && String(rows[i].id).match(this.id_regexp) && this.rows[RegExp.$1] != null)
         return RegExp.$1;
   }
 

--
Gitblit v1.9.1