\label{Institutional_Integration_User_Categories} Users in a domain can be assigned one or more institutional affiliations by the Autoupdate process which reconciles user information in LON-CAPA with institutional directory information. User type (or affiliation) can determine such things as (a) default portfolio quota, (b) the types of user information which may be updated in different contexts, (c) whether a user can self-enroll in a course. The possible institutional types in a domain are defined by \emph{inst\_usertypes()}. Examples of institutional types might be: Faculty, Adjunct, Staff, Student etc. In addition to any types defined in \emph{inst\_usertypes()}, a type {}``other'' will also be available for assignment to users who do not fall in any of the recognized categories of user. In the absence of any defined user categories, the type {}``other'' applies to all users from a domain. \textbf{\large inst\_usertypes}{\large \par} The routine accepts three arguments: \begin{enumerate} \item \$dom - domain \item \$usertypes - reference to hash which will contain key = value, where keys are institution affiliation types (e.g., Faculty, Student etc.) and values are titles (e.g., Faculty/Academic Staff) \item \$order - reference to array which will contain the order in which institutional types should be shown when displaying data tables (e.g., default quotas or updateable user fields (see Domain Configuration menu) \end{enumerate} The routine returns 'ok' if no errors occurred. At MSU there are six different categories of users. \begin{quotation} \texttt{sub inst\_usertypes \{} \begin{quotation} \texttt{my (\$dom,\$usertypes,\$order) = @\_;} \texttt{my \$outcome = 'ok';} \texttt{\%\{\$usertypes\} = (} \begin{quotation} \texttt{Faculty => 'Faculty/Academic Staff',} \texttt{Staff => 'Support Staff',} \texttt{Student => 'Student',} \texttt{Assistant => 'Assistant',} \texttt{StaffAff => 'Affiliate',} \texttt{StuAff => 'Student Affiliate'} \end{quotation} \texttt{);} \texttt{@\{\$order\}=('Faculty','Staff','Student','Assistant','StaffAff','StuAff');} \texttt{return \$outcome;} \end{quotation} \texttt{\}} \end{quotation}