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: 	var/use_db
  	var/task = href_list["editrights"]
  	var/skip
  	if(task == "activate" || task == "deactivate" || task == "sync")
  		skip = TRUE
  	if(!CONFIG_GET(flag/admin_legacy_system) && CONFIG_GET(flag/protect_legacy_admins) && task == "rank")
  
negative.code: 	message_admins("[key_name_admin(usr)] edited the admin rank of [admin_ckey] to [new_rank] [use_db ? "permanently" : "temporarily"]")
  	log_admin("[key_name(usr)] edited the admin rank of [admin_ckey] to [new_rank] [use_db ? "permanently" : "temporarily"]")
  
  /datum/admins/proc/change_admin_flags(admin_ckey, use_db, datum/admins/D, legacy_only)
  	var/new_flags = input_bitfield(usr, "Include permission flags<br>[use_db ? "This will affect ALL admins with this rank." : "This will affect only the current admin [admin_ckey]"]", "admin_flags", D.rank.include_rights, 350, 590, allowed_edit_list = usr.client.holder.rank.can_edit_rights)
  	if(isnull(new_flags))
  		return
  