From 39af55cbf71e698c736ea26ebd8f7bb4dc933b0e Mon Sep 17 00:00:00 2001
From: Adhidarma Hadiwinoto <gua@adhisimon.org>
Date: Tue, 3 Apr 2018 08:27:49 +0700
Subject: [PATCH] update prefixMessageWithSN again

---
 xmlout.js | 13 ++++++++-----
 1 file changed, 8 insertions(+), 5 deletions(-)

diff --git a/xmlout.js b/xmlout.js
index 66ccdcb..72d7f6e 100644
--- a/xmlout.js
+++ b/xmlout.js
@@ -177,10 +177,7 @@ function prefixMessageWithSN(data) {
     sn = '';
 
     if (data.SN && data.SN.trim()) {
-        sn = data['SN'].replace(/ /g, '-');
-        sn = sn.replace(/[\()]/g, '-');
-        sn = sn.replace(/-/g, '-').trim();
-        return 'SN=' + sn + '; ' + data['MESSAGE'];
+        sn = data['SN'].trim();
     }
     else if (data['MESSAGE'].search(/^SN=.+;/) == -1) {
         if (data['SN'] && data['SN'].trim()) {
@@ -189,9 +186,15 @@ function prefixMessageWithSN(data) {
         else if (config.h2h_out.parse_sn == 'YES') {
             sn = parseSN(data['MESSAGE']);
         }
+    }
 
+    if (sn) {
         sn = sn.replace(/ /g, '-');
-
+        sn = sn.replace(/[\()]/g, '-');
+        sn = sn.replace(/-+/g, '-')
+        sn = sn.replace(/^-+/, '');
+        sn = sn.replace(/-+$/, '');
+        sn = sn.trim();
         return 'SN=' + sn + '; ' + data['MESSAGE'];
     }
 
-- 
1.9.0