ecoData_SetFarmAndGardens

This command is part of the lib_WikiGarden library. Browse related handlers using the tags: eco, data, set, farm, and, gardens, and find the command on github

Handler: ecoData_SetFarmAndGardens pEcoData OS: all Platforms: all Type: command

The handler loads a more minimal model (ecoData), and then uses the information regarding the toplevel garden folder to list internal wiki folders to populate: - wikiGarden_SetDomainData gardenDomainData - ecoData_Set pEcoData

# Todo Consider renaming to `ecoData_Load` or similar?

# Where

File: lib_WikiGarden.livecodescript Hkey: C ecoData_SetFarmAndGardens Kind: library Path: libraries/lib_WikiGarden.livecodescript Project: lcw_Wiki Script: stack "lib_WikiGarden"

# Code

digraph "default_header" { graph [ clusterrank="true" ]; subgraph "PF" { node []; n7 [label="_StripNotThese" URL="PF+_StripNotThese+of+stack+%27lib_WikiFolder%27"]; n26 [label="_ConstructModelDataFile" URL="PF+_ConstructModelDataFile+of+stack+%27model_LCW%27"]; } subgraph "M" { node [fillcolor="Orange", style="filled", color="Red"]; n3 [label="wikiFarm_SetDomains" URL="M+wikiFarm_SetDomains+of+stack+%27lib_WikiFarm%27"]; n11 [label="file_AddHome" URL="M+file_AddHome+of+stack+%27lib_Files%27"]; n5 [label="wikiFolder_TidyList" URL="M+wikiFolder_TidyList+of+stack+%27lib_WikiFolder%27"]; n4 [label="url_SortDomainIndex" URL="M+url_SortDomainIndex+of+stack+%27lib_URL%27"]; n8 [label="line_DeleteTail" URL="M+line_DeleteTail+of+stack+%27lib_Fedwiki%27"]; n15 [label="ecoData_Set" URL="M+ecoData_Set+of+stack+%27model_WikiGarden%27"]; n20 [label="url_FilterDomains" URL="M+url_FilterDomains+of+stack+%27lib_URL%27"]; } subgraph "G" { node [fillcolor="grey50", style="filled", color="white"]; n18 [label="model_Array" URL="G+model_Array+of+stack+%27model_Library%27"]; n21 [label="model_DataFile" URL="G+model_DataFile+of+stack+%27model_Library%27"]; n22 [label="stack_Folder" URL="G+stack_Folder+of+stack+%27lib_LCW%27"]; } subgraph "C" { node [fillcolor="LightBlue", style="filled", color="Blue"]; n17 [label="wikiGarden_SetDomainData" URL="C+wikiGarden_SetDomainData+of+stack+%27lib_WikiGarden%27"]; n13 [label="ecoData_SetFarmAndGardens" URL="C+ecoData_SetFarmAndGardens+of+stack+%27lib_WikiGarden%27"]; n24 [label="file_StripHome" URL="C+file_StripHome+of+stack+%27lib_Files%27"]; n30 [label="text_AddTrailing" URL="C+text_AddTrailing+of+stack+%27lib_LCW%27"]; } subgraph "F" { node [fillcolor="GreenYellow", style="filled", color="Green4"]; n12 [label="wikiGarden_GetModel" URL="F+wikiGarden_GetModel+of+stack+%27model_WikiGarden%27"]; n2 [label="folder_AddShort" URL="F+folder_AddShort+of+stack+%27lib_LCW%27"]; n16 [label="wikiFarm_DomainsFromFolder" URL="F+wikiFarm_DomainsFromFolder+of+stack+%27lib_WikiFarm%27"]; n14 [label="wikiFolder_ConstructFromFarm" URL="F+wikiFolder_ConstructFromFarm+of+stack+%27lib_WikiFolder%27"]; n10 [label="wikiFarm_GetDefaultFolder" URL="F+wikiFarm_GetDefaultFolder+of+stack+%27lib_WikiFolder%27"]; n6 [label="wikiFolder_NotThese" URL="F+wikiFolder_NotThese+of+stack+%27lib_WikiFolder%27"]; n1 [label="model_GetDataFolder" URL="F+model_GetDataFolder+of+stack+%27model_LCW%27"]; n9 [label="wikiFolder_TidyNotThese" URL="F+wikiFolder_TidyNotThese+of+stack+%27lib_WikiFolder%27"]; n19 [label="folder_ListShort" URL="F+folder_ListShort+of+stack+%27lib_LCW%27"]; n23 [label="model_GetDataFile" URL="F+model_GetDataFile+of+stack+%27model_LCW%27"]; n25 [label="json_ToArray" URL="F+json_ToArray+of+stack+%27lib_LCW%27"]; n27 [label="array_FromFile" URL="F+array_FromFile+of+stack+%27lib_LCW%27"]; n28 [label="ecoData_GetFarmFolder" URL="F+ecoData_GetFarmFolder+of+stack+%27model_WikiGarden%27"]; n29 [label="ecoData_Get" URL="F+ecoData_Get+of+stack+%27model_WikiGarden%27"]; } subgraph cluster1 { label="stack \"lib_Fedwiki\""; style=filled; color=grey60; fillcolor=grey60; n8 } subgraph cluster2 { label="stack \"lib_Files\""; style=filled; color=grey60; fillcolor=grey60; n11; n24 } subgraph cluster3 { label="stack \"lib_LCW\""; style=filled; color=grey60; fillcolor=grey60; n2; n19; n22; n25; n27; n30 } subgraph cluster4 { label="stack \"lib_URL\""; style=filled; color=grey60; fillcolor=grey60; n4; n20 } subgraph cluster5 { label="stack \"lib_WikiFarm\""; style=filled; color=grey60; fillcolor=grey60; n3; n16 } subgraph cluster6 { label="stack \"lib_WikiFolder\""; style=filled; color=grey60; fillcolor=grey60; n14; n10; n7; n6; n5; n9 } subgraph cluster7 { label="stack \"lib_WikiGarden\""; style=filled; color=grey60; fillcolor=grey60; n17; n13 } subgraph cluster8 { label="stack \"model_LCW\""; style=filled; color=grey60; fillcolor=grey60; n1; n23; n26 } subgraph cluster9 { label="stack \"model_Library\""; style=filled; color=grey60; fillcolor=grey60; n18; n21 } subgraph cluster10 { label="stack \"model_WikiGarden\""; style=filled; color=grey60; fillcolor=grey60; n12; n15; n28; n29 } n18 -> n21; n18 -> n27; n14 -> n10; n14 -> n28; n23 -> n1; n23 -> n26; n2 -> n30; n3 -> n4; n16 -> n4; n16 -> n20; n16 -> n5; n16 -> n19; n12 -> n18; n28 -> n11; n28 -> n29; n11 -> n24; n10 -> n11; n10 -> n12; n27 -> n25; n13 -> n13; n13 -> n3; n13 -> n15; n13 -> n14; n13 -> n17; n13 -> n12; n13 -> n16; n7 -> n9; n4 -> n8; n25 -> n25; n5 -> n7; n5 -> n6; n1 -> n2; n21 -> n23; n21 -> n22; }

command ecoData_SetFarmAndGardens pEcoData local gardenDomainData # Get Farm Folder if pEcoData is not an array then put wikiGarden_GetModel() into pEcoData end if put pEcoData ["Farm"]["folder"] into farmFolder # Get default farm domains from folder put wikiFarm_DomainsFromFolder (farmFolder) into farmDomains wikiFarm_SetDomains farmDomains # Add default farmDomain to gardenDomainData repeat for each line farmDomain in farmDomains put "Farm" into gardenDomainData [farmDomain]["gardenName"] put wikiFolder_ConstructFromFarm (farmDomain) into farmFolder put farmFolder into gardenDomainData [farmDomain]["folder"] end repeat # Add Garden folders to gardenDomainData put pEcoData ["Eco"] into ecoFolderArray repeat for each key ecoName in ecoFolderArray put ecoFolderArray [ecoName] into ecoNameArray put ecoNameArray ["Gardens"] into gardenNameArray repeat for each key gardenName in gardenNameArray put gardenNameArray [gardenName] into gardenArray repeat for each key wikiDomain in gardenArray put gardenArray [wikiDomain]["folder"] into wikiFolder -- put gardenName into gardenDomainData [wikiDomain]["gardenName"] put ecoName into gardenDomainData [wikiDomain]["ecoName"] put wikiFolder into gardenDomainData [wikiDomain]["folder"] end repeat end repeat end repeat # Garden_DomainData (used by "wikiFolder_FromRouter" and "wikiDomain_List") wikiGarden_SetDomainData gardenDomainData ecoData_Set pEcoData return pEcoData end ecoData_SetFarmAndGardens

# Depends Here is a list of stacks containing dependencies upon which this handler depends: - model_LCW, lib_Fedwiki, model_WikiGarden, lib_LCW, lib_WikiFarm, lib_Files, model_Library, lib_URL, lib_WikiFolder

# See also - Fedwiki Tools