View Raw SPL
/* adds name to _pickliststrs if not already included */
pickflst(name, list)
{
local i, addit, str, listname;
if (argc < 2)
{
if (argc < 1)
{
name = "";
}
list = "_pickliststrs";
}
listname = sprintf("'%s'", list);
defvar(eval(listname), "");
if (strlen(name) > 0)
{
addit = 1;
i = 1;
while (1)
{
str = strget(i, getvar(eval(listname)), strescape("\n"));
if (strlen(str) == 0) break;
if (strcmp(str, name) == 0)
{
addit = 0;
break;
}
i++;
}
if (addit)
{
setvar(eval(listname), strcat(name, strescape("\n"), getvar(eval(listname))));
}
}
return(getvar(eval(listname)));
}