From 8e4cc4ded1d67fb1d2e9bd5bc878d6b9976be3e7 Mon Sep 17 00:00:00 2001 From: "Collin M. Barrett" Date: Wed, 8 Feb 2017 21:17:02 -0600 Subject: [PATCH] moving tags to Parsed moving the parsing of tags to the Parsed Google Sheet. started on createHtmlArrayTags to handle that. still under construction. --- gs/data.gs | 7 +++++-- gs/html-factory.gs | 12 +++++++++--- gs/utilities.gs | 11 +++++++++++ 3 files changed, 25 insertions(+), 5 deletions(-) diff --git a/gs/data.gs b/gs/data.gs index f98f276f0..fc8f6871c 100644 --- a/gs/data.gs +++ b/gs/data.gs @@ -23,7 +23,7 @@ function concatNamelessComboLists() { } function refreshParsed() { - var urlTypes = ["viewUrl", "addUrl", "homeUrl", "forumUrl", "issuesUrl", "email", "donateUrl"]; + var urlTypes = ["viewUrl", "addUrl", "homeUrl", "forumUrl", "issuesUrl", "email", "donateUrl", "tags"]; for (var i = 0, urlTypesLength = urlTypes.length; i < urlTypesLength; i++) { var colIndexParsedUrlType = getColIndex(sParsed, urlTypes[i]); var colRangeParsedUrlType = sParsed.getRange(colIndexParsedUrlType + "2:" + colIndexParsedUrlType); @@ -52,6 +52,9 @@ function refreshParsed() { case "donateUrl": colTopParsedUrlType.setValue("=createHtmlArrayLinkButton(\"donateUrl\",INDIRECT(\"Data!\"&SUBSTITUTE(ADDRESS(1,MATCH(" + colIndexParsedUrlType + "1,Data!A1:1,0),4),\"1\",\"2\")&\":\"&SUBSTITUTE(ADDRESS(1,MATCH(" + colIndexParsedUrlType + "1,Data!A1:1,0),4),\"1\",\"\")),Data!A2:A)"); break; + case "tags": + colTopParsedUrlType.setValue("=createHtmlArrayTags()"); + break; default: } var colDataParsedUrlType = colRangeParsedUrlType.getDisplayValues(); @@ -72,7 +75,7 @@ function refreshPublic() { colTopPublicPublicField.setValue("=createHtmlArrayListName(INDIRECT(\"Data!\"&SUBSTITUTE(ADDRESS(1,MATCH(\"list\",Data!A1:1,0),4),\"1\",\"2\")&\":\"&SUBSTITUTE(ADDRESS(1,MATCH(\"list\",Data!A1:1,0),4),\"1\",\"\")))"); break; case "tags": - colTopPublicPublicField.setValue("=ARRAYFORMULA(\"\"&INDIRECT(\"Data!\"&SUBSTITUTE(ADDRESS(1,MATCH(\"tagLang\",Data!A1:1,0),4),\"1\",\"2\")&\":\"&SUBSTITUTE(ADDRESS(1,MATCH(\"tagLang\",Data!A1:1,0),4),\"1\",\"\"))&\"\")"); + colTopPublicPublicField.setValue("=ARRAYFORMULA(INDIRECT(\"Data!\"&SUBSTITUTE(ADDRESS(1,MATCH(\"tagLang\",Data!A1:1,0),4),\"1\",\"2\")&\":\"&SUBSTITUTE(ADDRESS(1,MATCH(\"tagLang\",Data!A1:1,0),4),\"1\",\"\")))"); break; case "description": if (getColIndex(sData, "descrSourceUrl")) { diff --git a/gs/html-factory.gs b/gs/html-factory.gs index 26a726795..bc8eaf046 100644 --- a/gs/html-factory.gs +++ b/gs/html-factory.gs @@ -37,6 +37,13 @@ function createHtmlArrayLinkButton(htmlType, url, listName) { } } +function createHtmlArrayTags() { + var tagsHtml = new Array(); + var colIndexDataTags = getColIndicesWithHeaderSubstring(sData, "tag"); + for (var i = 0, colIndexDataTagsLength = colIndexDataTags.length; i < colIndexDataTagsLength; i++) {} + return tagsHtml; +} + function createHtmlArrayListName(list) { if (list instanceof Array) { for (var i in list) { @@ -63,11 +70,10 @@ function createHtmlArrayRelatedLists(related) { return ""; } else { var relatedArray = related.split(','); - var relatedHtml = ""; return relatedHtml; } } diff --git a/gs/utilities.gs b/gs/utilities.gs index 789a1bec6..c943c2d95 100644 --- a/gs/utilities.gs +++ b/gs/utilities.gs @@ -29,6 +29,17 @@ function getColIndexNum(sheet, colHeader) { return null; } +function getColIndicesWithHeaderSubstring(sheet, colHeaderSubstring) { + var headerData = sheet.getRange("A1:1").getValues(); + var colIndices = new Array(); + for (var i = 0, headerDataLength = headerData[0].length; i < headerDataLength; i++) { + if (headerData[0][i].indexOf(colHeaderSubstring) != -1) { + colIndices.push(String.fromCharCode(65 + headerData[0][i])); + } + } + return colIndices; +} + function encodeUrlArray(urlArray) { if (urlArray instanceof Array) { for (var i in urlArray) {