--- /dev/null
+[%
+
+# ------------------------------------------------------------------
+# Permissibility script.
+# ------------------------------------------------------------------
+
+
+
+# ------------------------------------------------------------------
+# Patron checks
+# ------------------------------------------------------------------
+
+IF patron.standing != "Good";
+ ret(PATRON_STANDING, "Patron not in good standing: ${patron.standing}"); END;
+
+IF patron.profile == "STAFF" && patron_copies > 50;
+ ret(PATRON_CHECKOUT_COUNT, "Patron checkout count exceeds limit"); END;
+
+IF patron.profile == "ADULT" && patron_copies > 10;
+ ret(PATRON_CHECKOUT_COUNT, "Patron checkout count exceeds limit"); END;
+
+IF patron.profile == "JUVENILE" && patron_copies > 5;
+ ret(PATRON_CHECKOUT_COUNT, "Patron checkout count exceeds limit"); END;
+
+
+# ------------------------------------------------------------------
+# Copy checks
+# ------------------------------------------------------------------
+
+IF ! copy.circulate;
+ ret(COPY_NOCIRC, "Copy is not allowed to circulate"); END;
+
+IF !copy.location.circulate;
+ ret(COPY_LOCATION, "Copy location not allowed to curculate"); END;
+
+IF copy.ref;
+ ret(COPY_ISREF, "Copy is reference material"); END;
+
+
+
+
+ret(OK,"Allowed");
+
+%]