moving tags to Parsed

moving the parsing of tags to the Parsed Google Sheet. started on
createHtmlArrayTags to handle that. still under construction.
This commit is contained in:
Collin M. Barrett 2017-02-08 21:17:02 -06:00
parent 7dabf8d1da
commit 8e4cc4ded1
3 changed files with 25 additions and 5 deletions

View file

@ -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(\"<span class=\"\"fl-tag lang\"\">\"&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\",\"\"))&\"</span>\")");
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")) {

View file

@ -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 = "<ul>";
var relatedHtml = "";
for (var i = 0, relatedArrayLength = relatedArray.length; i < relatedArrayLength; i++) {
relatedHtml += "<li><a href=\"#" + trimUrlSlugArray(relatedArray[i]) + "\">" + relatedArray[i] + "</a></li>";
relatedHtml += "<a href=\"#" + trimUrlSlugArray(relatedArray[i]) + "\" class=\"related\"><span class=\"related\">" + relatedArray[i] + "</span></a>";
}
relatedHtml += "</ul>";
return relatedHtml;
}
}

View file

@ -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) {