Yup, that did it. I did have to change my 'undefined' check to make sure it worked:
Code:
program:
percent = raw_field('#percentread', -1);
if 'dnf' inlist_field '#admintags'
then 'didnotfinish'
elif (percent >=#1 && percent <=#99||$$#lastread != 'None' && percent ==#0)
then 'currentlyreading'
elif $#readinglist=='To Be Read' && percent ==#0
then 'toberead'
elif readgoal() inlist $#admintags && percent ==#0
then 'backlog'
elif percent >=#100
then 'read'
elif percent >=#0
then 'unread'
elif $$#percentread == 'None'
then 'undefined'
fi