anchor.diff:  	var/category = "Any"
   	var/author
   	var/search_page = 0
  +	COOLDOWN_DECLARE(library_visitor_topic_cooldown)
   
   /obj/machinery/computer/libraryconsole/ui_interact(mob/user)
   	. = ..()
  
positive.code: 	var/mobname
  	var/getdate
  	var/duedate
  
  /*
   * Cachedbook datum
   */
  /datum/cachedbook // Datum used to cache the SQL DB books locally in order to achieve a performance gain.
  	var/id
  	var/title
  	var/author
  	var/category
  
  GLOBAL_LIST(cachedbooks) // List of our cached book datums
  
  
  /proc/load_library_db_to_cache()
  	if(GLOB.cachedbooks)
  		return
  	if(!SSdbcore.Connect())
  		return
  	GLOB.cachedbooks = list()
  	var/datum/db_query/query_library_cache = SSdbcore.NewQuery("SELECT id, author, title, category FROM [format_table_name("library")] WHERE isnull(deleted)")
  	if(!query_library_cache.Execute())
  		qdel(query_library_cache)
  		return
  	while(query_library_cache.NextRow())
  		var/datum/cachedbook/newbook = new()
  		newbook.id = query_library_cache.item[1]
  		newbook.author = query_library_cache.item[2]
  		newbook.title = query_library_cache.item[3]
  		newbook.category = query_library_cache.item[4]
  		GLOB.cachedbooks += newbook
  	qdel(query_library_cache)
  
  
  
  #define PRINTER_COOLDOWN 60
  
  
negative.code: 		GLOB.news_network.SubmitArticle(scanner.cache.dat, "[scanner.cache.name]", "Nanotrasen Book Club", null)
  		alert("Upload complete. Your uploaded title is now available on station newscasters.")
  	if(href_list["orderbyid"])
  		if(printer_cooldown > world.time)
  			say("Printer unavailable. Please allow a short time before attempting to print.")
  		else
  			var/orderid = input("Enter your order:") as num|null
  