(* Photomontage of pictures for each collection *) maintainMontageNames := ( Print["Running maintainMontageNames ..."]; rmushpictures = Table[ name = data[[1]]; sname = ToLowerCase[StringReplace[name, " " -> "_"]]; set = data[[3]]; set = Take[#, 3] & /@ set; picset[name] = set; mset = Length[set]; thsize = 128; (* columns = Min[8, mset];*) columns = Min[6, mset]; dirmont = ToFileName[{dir0, "pic"}]; checkdir1[dirmont]; filemont = ToFileName[dirmont, sname <> ".jpg"]; If[FileType[filemont] =!= File || ifRefreshMont === True, maintainMontage]; (* for spbmyco.ru - no longer used *) (* dirmont = ToFileName[{dir0, "pic90"}]; (* change directory, if it needs for a new version of spbmyco *) checkdir1[dirmont]; filemont = ToFileName[dirmont, sname <> ".jpg"]; If[FileType[filemont] =!= File || ifRefreshMont === True, maintainMontage90]; *) set, {data, datalist}]; (* Also, find unlisted pictures *) rmushpictures = Union[Flatten[rmushpictures, 1]]; file1 = ToFileName[{dir00, "system", "collections"}, "mushrooms_in_russia.dat"]; namedata2 = "unlisted_mushrooms_in_russia"; file2 = ToFileName[{dir00, "system", "collections"}, namedata2 <> ".dat"]; allpictures = StringSplit /@ Import[file1, "Lines"]; unlistedpictures = Complement[allpictures, rmushpictures]; unlistedpictures = Select[unlistedpictures, MemberQ[yearsrussia, ToExpression[#[[1]]]] &]; Print["Number of All/Selected/Unlisted pictures: ", Length /@ {allpictures, rmushpictures, unlistedpictures}]; Print["Writing data for unlisted pictures into file ", file2]; unlistedpictures = StringJoin[Riffle[#, " "]] & /@ unlistedpictures; Export[file2, unlistedpictures, "Lines"]; unlistedurl = "pictures/k/c-" <> namedata2 <> ".htm"; Print["To see unlisted pictures, click here: ", Hyperlink["http://127.0.0.1:81/" <> unlistedurl]]; (* Sorting *) listsort = Table[ name = data[[1]]; id = selectid[name]; kingdom = idcomponents["kingdom", id]; phylum = idcomponents["phylum", id]; class = idcomponents["class", id]; order = idcomponents["order", id]; family = idcomponents["family", id]; nameid = idcomponents["name", id]; system = {kingdom, phylum, class, order, family, nameid}; system = system /. {"Not assigned" -> "zzzNot assigned"}; {system, data}, {data, datalist}]; listsort = Sort[listsort(*,OrderedQ[{#1[[1]],#2[[1]]}]&*)]; listsort = #[[2]] & /@ listsort; (* List of families *) familyList = Table[ name = data[[1]]; id = selectid[name]; idcomponents["family", id], {data, listsort}]; familyList = Union[familyList]; familyList = Select[familyList, (ToLowerCase[#] =!= "not assigned")&]; );