var userFactory = {
    create: function(intID, strName, strEmail, blnSU, arrRoles)
    {
        var user = this;
        user.id = intID;
        user.name = strName;
        user.email = strEmail;
        
        user.isSuperUser = function() 
        {
            if (blnSU) {
                return true;
            } else {
                for (var i = 0; i < arrRoles.length; i++) {
                    if (arrRoles[i] == 'site super user') {
                        blnSU = true;
                        return true;
                    }
                }
            }
        };
        
        user.hasRole = function(strRole)
        {
            if (user.isSuperUser()) {
                return true;
            }
            strRole = strRole.toLowerCase();
            for (var i = 0; i < arrRoles.length; i++) {
                if (strRole == arrRoles[i]) {
                    return true;
                }
            }
            return false;
        };
    },
    roles: {
        SUPER_USER: 'site super user',
        PUBLISHER: 'publisher',
        CREATOR: 'creator',
        WRITER: 'writer',
        READER: 'reader'
    }
};
