diff --git a/gs/EncodeUrlSlug.gs b/gs/EncodeUrlSlug.gs
deleted file mode 100644
index 625d4b221..000000000
--- a/gs/EncodeUrlSlug.gs
+++ /dev/null
@@ -1,27 +0,0 @@
-function EncodeUrlSlug(slug) {
- if (slug instanceof Array) {
- for (i in slug) {
- slug[i] = EncodeUrlSlug(slug[i]);
- }
- return slug;
- } else {
- if (slug) {
- var charDict = [
- [" ", "%20"],
- ["\"", "%22"],
- [":", "%3A"],
- ["'", "%27"],
- ["+", "%2B"],
- ["(", "%28"],
- [")", "%29"],
- [".", ""]
- ];
- for (i = 0; i < charDict.length; ++i) {
- slug = slug.split(charDict[i][0]).join(charDict[i][1]);
- }
- return slug;
- } else {
- return "";
- }
- }
-}
\ No newline at end of file
diff --git a/gs/GeneralFunctions.gs b/gs/GeneralFunctions.gs
new file mode 100644
index 000000000..8e698bb5d
--- /dev/null
+++ b/gs/GeneralFunctions.gs
@@ -0,0 +1,233 @@
+function EncodeUrlSlug(slug) {
+ if (slug instanceof Array) {
+ for (i in slug) {
+ slug[i] = EncodeUrlSlug(slug[i]);
+ }
+ return slug;
+ } else {
+ if (slug) {
+ var charDict = [
+ [" ", "%20"],
+ ["\"", "%22"],
+ [":", "%3A"],
+ ["'", "%27"],
+ ["+", "%2B"],
+ ["(", "%28"],
+ [")", "%29"],
+ [".", ""]
+ ];
+ for (i = 0; i < charDict.length; ++i) {
+ slug = slug.split(charDict[i][0]).join(charDict[i][1]);
+ }
+ return slug;
+ } else {
+ return "";
+ }
+ }
+}
+
+function GenerateHtmlAddLink(url, listName) {
+ if (url instanceof Array) {
+ for (i in url) {
+ url[i] = GenerateHtmlAddLink(url[i], listName[i]);
+ }
+ return url;
+ } else {
+ if (url && url != "#N/A") {
+ var html = "Add";
+ return html;
+ } else {
+ return "";
+ }
+ }
+}
+
+function GenerateHtmlChangelogLink(url, listName) {
+ if (url instanceof Array) {
+ for (i in url) {
+ url[i] = GenerateHtmlChangelogLink(url[i], listName[i]);
+ }
+ return url;
+ } else {
+ if (url && url != "#N/A") {
+ var html = "Log";
+ return html;
+ } else {
+ return "";
+ }
+ }
+}
+
+function GenerateHtmlDonateLink(url, listName) {
+ if (url instanceof Array) {
+ for (i in url) {
+ url[i] = GenerateHtmlDonateLink(url[i], listName[i]);
+ }
+ return url;
+ } else {
+ if (url && url != "#N/A") {
+ var html = "Donate";
+ return html;
+ } else {
+ return "";
+ }
+ }
+}
+
+function GenerateHtmlEmailLink(url, listName) {
+ if (url instanceof Array) {
+ for (i in url) {
+ url[i] = GenerateHtmlEmailLink(url[i], listName[i]);
+ }
+ return url;
+ } else {
+ if (url && url != "#N/A") {
+ var html = "Email";
+ return html;
+ } else {
+ return "";
+ }
+ }
+}
+
+function GenerateHtmlForksCombosLink(forkComboListName, filterListsPageSlug) {
+ if (forkComboListName instanceof Array) {
+ for (i in forkComboListName) {
+ forkComboListName[i] = GenerateHtmlForksCombosLink(forkComboListName[i], filterListsPageSlug[i]);
+ }
+ return forkComboListName;
+ } else {
+ // return null if no List Name provided
+ if (forkComboListName == null) {
+ return null;
+ // concatenate HTML link tag
+ } else {
+ var html = "Forum";
+ return html;
+ } else {
+ return "";
+ }
+ }
+}
+
+function GenerateHtmlGuideLink(url, listName) {
+ if (url instanceof Array) {
+ for (i in url) {
+ url[i] = GenerateHtmlGuideLink(url[i], listName[i]);
+ }
+ return url;
+ } else {
+ if (url && url != "#N/A") {
+ var html = "Guide";
+ return html;
+ } else {
+ return "";
+ }
+ }
+}
+
+function GenerateHtmlHomeLink(url, listName) {
+ if (url instanceof Array) {
+ for (i in url) {
+ url[i] = GenerateHtmlHomeLink(url[i], listName[i]);
+ }
+ return url;
+ } else {
+ if (url && url != "#N/A") {
+ var html = "Home";
+ return html;
+ } else {
+ return "";
+ }
+ }
+}
+
+function GenerateHtmlIssuesLink(url, listName) {
+ if (url instanceof Array) {
+ for (i in url) {
+ url[i] = GenerateHtmlIssuesLink(url[i], listName[i]);
+ }
+ return url;
+ } else {
+ if (url && url != "#N/A") {
+ var html = "Issues";
+ return html;
+ } else {
+ return "";
+ }
+ }
+}
+
+function GenerateHtmlListName(listName) {
+ if (listName instanceof Array) {
+ for (i in listName) {
+ listName[i] = GenerateHtmlListName(listName[i]);
+ }
+ return listName;
+ } else {
+ if (listName) {
+ var html = "
" + listName + "
";
+ return html;
+ } else {
+ return "";
+ }
+ }
+}
+
+function GenerateHtmlViewLink(url, listName) {
+ if (url instanceof Array) {
+ for (i in url) {
+ url[i] = GenerateHtmlViewLink(url[i], listName[i]);
+ }
+ return url;
+ } else {
+ if (url && url != "#N/A") {
+ var html = "View";
+ return html;
+ } else {
+ return "";
+ }
+ }
+}
+
+function TrimUrlSlug(slug) {
+ if (slug instanceof Array) {
+ for (i in slug) {
+ slug[i] = TrimUrlSlug(slug[i]);
+ }
+ return slug;
+ } else {
+ if (slug) {
+ var charDict = [
+ [" ", ""],
+ ["\"", ""],
+ [":", ""],
+ ["'", ""],
+ ["+", ""],
+ ["(", ""],
+ [")", ""],
+ [".", ""]
+ ];
+ for (i = 0; i < charDict.length; ++i) {
+ slug = slug.split(charDict[i][0]).join(charDict[i][1]);
+ }
+ return slug;
+ } else {
+ return "";
+ }
+ }
+}
\ No newline at end of file
diff --git a/gs/GenerateHtmlAddLink.gs b/gs/GenerateHtmlAddLink.gs
deleted file mode 100644
index 7e2b631e1..000000000
--- a/gs/GenerateHtmlAddLink.gs
+++ /dev/null
@@ -1,15 +0,0 @@
-function GenerateHtmlAddLink(url, listName) {
- if (url instanceof Array) {
- for (i in url) {
- url[i] = GenerateHtmlAddLink(url[i], listName[i]);
- }
- return url;
- } else {
- if (url && url != "#N/A") {
- var html = "Add";
- return html;
- } else {
- return "";
- }
- }
-}
\ No newline at end of file
diff --git a/gs/GenerateHtmlChangelogLink.gs b/gs/GenerateHtmlChangelogLink.gs
deleted file mode 100644
index dbc2a617f..000000000
--- a/gs/GenerateHtmlChangelogLink.gs
+++ /dev/null
@@ -1,15 +0,0 @@
-function GenerateHtmlChangelogLink(url, listName) {
- if (url instanceof Array) {
- for (i in url) {
- url[i] = GenerateHtmlChangelogLink(url[i], listName[i]);
- }
- return url;
- } else {
- if (url && url != "#N/A") {
- var html = "Log";
- return html;
- } else {
- return "";
- }
- }
-}
\ No newline at end of file
diff --git a/gs/GenerateHtmlDonateLink.gs b/gs/GenerateHtmlDonateLink.gs
deleted file mode 100644
index 2e45a8377..000000000
--- a/gs/GenerateHtmlDonateLink.gs
+++ /dev/null
@@ -1,15 +0,0 @@
-function GenerateHtmlDonateLink(url, listName) {
- if (url instanceof Array) {
- for (i in url) {
- url[i] = GenerateHtmlDonateLink(url[i], listName[i]);
- }
- return url;
- } else {
- if (url && url != "#N/A") {
- var html = "Donate";
- return html;
- } else {
- return "";
- }
- }
-}
\ No newline at end of file
diff --git a/gs/GenerateHtmlEmailLink.gs b/gs/GenerateHtmlEmailLink.gs
deleted file mode 100644
index 054ae746f..000000000
--- a/gs/GenerateHtmlEmailLink.gs
+++ /dev/null
@@ -1,15 +0,0 @@
-function GenerateHtmlEmailLink(url, listName) {
- if (url instanceof Array) {
- for (i in url) {
- url[i] = GenerateHtmlEmailLink(url[i], listName[i]);
- }
- return url;
- } else {
- if (url && url != "#N/A") {
- var html = "Email";
- return html;
- } else {
- return "";
- }
- }
-}
\ No newline at end of file
diff --git a/gs/GenerateHtmlForksCombosLink.gs b/gs/GenerateHtmlForksCombosLink.gs
deleted file mode 100644
index 392c98d85..000000000
--- a/gs/GenerateHtmlForksCombosLink.gs
+++ /dev/null
@@ -1,17 +0,0 @@
-function GenerateHtmlForksCombosLink(forkComboListName, filterListsPageSlug) {
- if (forkComboListName instanceof Array) {
- for (i in forkComboListName) {
- forkComboListName[i] = GenerateHtmlForksCombosLink(forkComboListName[i], filterListsPageSlug[i]);
- }
- return forkComboListName;
- } else {
- // return null if no List Name provided
- if (forkComboListName == null) {
- return null;
- // concatenate HTML link tag
- } else {
- var html = "Forum";
- return html;
- } else {
- return "";
- }
- }
-}
\ No newline at end of file
diff --git a/gs/GenerateHtmlGuideLink.gs b/gs/GenerateHtmlGuideLink.gs
deleted file mode 100644
index 1d411b8c9..000000000
--- a/gs/GenerateHtmlGuideLink.gs
+++ /dev/null
@@ -1,15 +0,0 @@
-function GenerateHtmlGuideLink(url, listName) {
- if (url instanceof Array) {
- for (i in url) {
- url[i] = GenerateHtmlGuideLink(url[i], listName[i]);
- }
- return url;
- } else {
- if (url && url != "#N/A") {
- var html = "Guide";
- return html;
- } else {
- return "";
- }
- }
-}
\ No newline at end of file
diff --git a/gs/GenerateHtmlHomeLink.gs b/gs/GenerateHtmlHomeLink.gs
deleted file mode 100644
index bd9026827..000000000
--- a/gs/GenerateHtmlHomeLink.gs
+++ /dev/null
@@ -1,15 +0,0 @@
-function GenerateHtmlHomeLink(url, listName) {
- if (url instanceof Array) {
- for (i in url) {
- url[i] = GenerateHtmlHomeLink(url[i], listName[i]);
- }
- return url;
- } else {
- if (url && url != "#N/A") {
- var html = "Home";
- return html;
- } else {
- return "";
- }
- }
-}
\ No newline at end of file
diff --git a/gs/GenerateHtmlIssuesLink.gs b/gs/GenerateHtmlIssuesLink.gs
deleted file mode 100644
index 5ff420b67..000000000
--- a/gs/GenerateHtmlIssuesLink.gs
+++ /dev/null
@@ -1,15 +0,0 @@
-function GenerateHtmlIssuesLink(url, listName) {
- if (url instanceof Array) {
- for (i in url) {
- url[i] = GenerateHtmlIssuesLink(url[i], listName[i]);
- }
- return url;
- } else {
- if (url && url != "#N/A") {
- var html = "Issues";
- return html;
- } else {
- return "";
- }
- }
-}
\ No newline at end of file
diff --git a/gs/GenerateHtmlListName.gs b/gs/GenerateHtmlListName.gs
deleted file mode 100644
index c003343b5..000000000
--- a/gs/GenerateHtmlListName.gs
+++ /dev/null
@@ -1,15 +0,0 @@
-function GenerateHtmlListName(listName) {
- if (listName instanceof Array) {
- for (i in listName) {
- listName[i] = GenerateHtmlListName(listName[i]);
- }
- return listName;
- } else {
- if (listName) {
- var html = "" + listName + "
";
- return html;
- } else {
- return "";
- }
- }
-}
\ No newline at end of file
diff --git a/gs/GenerateHtmlViewLink.gs b/gs/GenerateHtmlViewLink.gs
deleted file mode 100644
index 7c1b551ef..000000000
--- a/gs/GenerateHtmlViewLink.gs
+++ /dev/null
@@ -1,15 +0,0 @@
-function GenerateHtmlViewLink(url, listName) {
- if (url instanceof Array) {
- for (i in url) {
- url[i] = GenerateHtmlViewLink(url[i], listName[i]);
- }
- return url;
- } else {
- if (url && url != "#N/A") {
- var html = "View";
- return html;
- } else {
- return "";
- }
- }
-}
\ No newline at end of file
diff --git a/gs/TrimUrlSlug.gs b/gs/TrimUrlSlug.gs
deleted file mode 100644
index 21ae32fee..000000000
--- a/gs/TrimUrlSlug.gs
+++ /dev/null
@@ -1,27 +0,0 @@
-function TrimUrlSlug(slug) {
- if (slug instanceof Array) {
- for (i in slug) {
- slug[i] = TrimUrlSlug(slug[i]);
- }
- return slug;
- } else {
- if (slug) {
- var charDict = [
- [" ", ""],
- ["\"", ""],
- [":", ""],
- ["'", ""],
- ["+", ""],
- ["(", ""],
- [")", ""],
- [".", ""]
- ];
- for (i = 0; i < charDict.length; ++i) {
- slug = slug.split(charDict[i][0]).join(charDict[i][1]);
- }
- return slug;
- } else {
- return "";
- }
- }
-}
\ No newline at end of file