anchor.diff:  			admin_ckey = add_admin(null, use_db)
   			if(!admin_ckey)
   				return
  -			change_admin_rank(admin_ckey, use_db)
  +			change_admin_rank(admin_ckey, use_db, null, legacy_only)
   		if("remove")
   			remove_admin(admin_ckey, use_db, D)
   		if("rank")
  -			change_admin_rank(admin_ckey, use_db, D)
  +			change_admin_rank(admin_ckey, use_db, D, legacy_only)
   		if("permissions")
  -			change_admin_flags(admin_ckey, use_db, D)
  +			change_admin_flags(admin_ckey, use_db, D, legacy_only)
   		if("activate")
   			force_readmin(admin_ckey, D)
   		if("deactivate")
  
positive.code: 		if(D.rank in GLOB.protected_ranks)
  			to_chat(usr, "<span class='admin prefix'>Editing the flags of this rank is blocked by server configuration.</span>")
  			return
  	if(CONFIG_GET(flag/load_legacy_ranks_only) && (task == "rank" || task == "permissions"))
  		to_chat(usr, "<span class='admin prefix'>Database rank loading is disabled, only temporary changes can be made to an admin's rank or permissions.</span>")
  		use_db = FALSE
  		skip = TRUE
  	if(check_rights(R_DBRANKS, FALSE))
  		if(!skip)
  			if(!SSdbcore.Connect())
  
negative.code: 	var/use_db
  	var/task = href_list["editrights"]
  	var/skip
  	var/legacy_only
  	if(task == "activate" || task == "deactivate" || task == "sync")
  		skip = TRUE
  	if(!CONFIG_GET(flag/admin_legacy_system) && CONFIG_GET(flag/protect_legacy_admins) && task == "rank")
  