using Sarand.Net.Standard.Base.App; using System; using System.Collections.Generic; using System.Text; namespace Saxonite.Net.Standard.Base.App { //======================================================================= public static partial class Sax { //------------------------------------------------------------------- /// /// Code types (static lists). /// Defined by the underlying system and available for use throughout any application. /// Only maintainable by updates to the software, ie. not held on the database. /// public enum CodeType { YesNo, DataItemType, Gender, SportGrouping, SportSpecialityLabel, SportContactType, SportParticipating, SportPreparing, SportOfficiating, RegionType, EligibilityType, UserRole, Title, ImageType, OrganisationType, OrganisationCategory, OrganisationRole, AssociationType, AddressType, ContactMethod, EventType, OpportunityType, ActivityReaction, // Support. UserReportType, SupportItemProcessType }; //------------------------------------------------------------------- public enum Application { Online = 100, Api = 400, Admin = 900, } //------------------------------------------------------------------- public enum Environment { Development = 0, Staging = 50, Production = 90, } //------------------------------------------------------------------- public enum InstanceType { Prod, UAT, QC, Dev } //------------------------------------------------------------------- public enum Database { Unknown = 0, Core = 10, Reference = 20, Support = 90, } //------------------------------------------------------------------- /// Yes or No option. public enum YesNo { Unknown = 0, Yes, No } //------------------------------------------------------------------- public enum DataItemType { Unknown = 0, /* Do not change the numeric values - tied to database. */ // Reference data. Region = 10, Sport = 11, // Accounts. UserAccount = 100, UserRole = 101, UserOrganisation = 102, UserSport = 103, UserSportExperience = 104, UserEligibility = 105, Organisation = 120, // Activity data. ActivityIndex = 200, UserActivity = 202, Article = 210, OrganisationOpportunity = 220, OrganisationEvent = 225, // Item link components. ItemImage = 400, ItemAddress = 405, ItemAssociation = 410, ItemSport = 420, // Reference. Golf_UsgaCountry = 1000, Golf_UsgaProvince = 1001, Golf_UsgaFacility = 1002, Golf_UsgaCourse = 1003, Golf_UsgaMarker = 1004, // Support. UserReport = 9010, SupportItemProcess = 9020, } //------------------------------------------------------------------- public enum Gender { Unknown = 0, /* Do not change the numeric values - tied to database. */ Female = 1, Male = 2, TransFemale = 10, TransMale = 11, Nonconforming = 20, PreferNotToSay = 99, } //------------------------------------------------------------------- public enum RegionType { Unknown = 0, /* Do not change the numeric values - tied to database. */ Universe = 1, Galaxy = 2, World = 5, Continent = 10, SubContinent = 20, /// Country - self-governing political entity, eg. Country, State (not US state) Country = 30, /// Nation, eg. Home Nation. Nation = 50, /// STate - major subdivision of country, eg. US state. State = 70, /// Province - eg. GB County. Province = 90 } //------------------------------------------------------------------- public enum EligibilityType { Unknown = 0, /* Do not change the numeric values - tied to database. */ Birth = 10, Naturalised = 20, Parent = 100, Grandparent = 110, Passport = 200, Visa = 210, } //------------------------------------------------------------------- /// User Config public enum UserConfigType { /* Do not change the values - tied to database. */ Online_Profile = 100, } //------------------------------------------------------------------- /// User roles public enum UserRole { Unknown = 0, /* Do not change the values - tied to database. */ Journalist, SystemAdmin, SystemReviewer, } //------------------------------------------------------------------- /// Sport Grouping public enum SportGrouping { /* Do not change the values/codes - tied to database. */ Specific = 10, Banner = 20, Group = 30, } //------------------------------------------------------------------- /// Sport Speciality Label public enum SportSpecialityLabel { Default = 0, /* Do not change the values/codes - tied to database. */ Positon = 10, Discipline = 20, NotRelevant = 90, } //------------------------------------------------------------------- /// Sport Contact Type public enum SportContactType { Unknown = 0, /* Do not change the values/codes - tied to database. */ Coach = 100, Manager = 200, Agent = 300, } //------------------------------------------------------------------- /// Sport Participating public enum SportParticipating { Unknown = 0, /* Do not change the values/codes - tied to database. */ Professional = 100, Regular = 200, Occasional = 300, Spectator = 400, Interested = 900, } //------------------------------------------------------------------- /// Sport Preparing public enum SportPreparing { Unknown = 0, /* Do not change the values/codes - tied to database. */ Coach = 100, Manager = 200, Agent = 300, } //------------------------------------------------------------------- /// Sport Officiating public enum SportOfficiating { Unknown = 0, /* Do not change the values/codes - tied to database. */ Professional = 100, Regular = 200, Occasional = 300, Interested = 900, } //------------------------------------------------------------------- /// Titles - for Contact details. public enum Title { Unknown = 0, Mr, Mrs, Miss, Mx, Dr, Sir, Madam, Lord, Lady } //------------------------------------------------------------------- /// Image Types. public enum ImageType { Unknown, /// User's profile image. Avatar = 100, /// User's profile image, uploaded awaiting confirmation. Avatar_Upload = 101, /// Organisation's main logo. OrganisationLogo = 120, /// Organisation's main logo, uploaded awaiting confirmation. OrganisationLogo_Upload = 121, /// Article image. Article = 200, /// Article image uploaded, awaiting confirmation. Article_Upload = 201, } //------------------------------------------------------------------- /// Organisation Types. public enum OrganisationType { Unknown = 0, /* Do not change the names/codes - tied to database. */ Commercial, SocialEnterprise, CommunityGroup, Charity, PublicSector, } //------------------------------------------------------------------- /// Organisation Category. public enum OrganisationCategory { Unknown = 0, /* Do not change the names/codes - tied to database. */ Association, Club, Society, Education, SportDepartment, Syndicate, /// Commercial partner Partner, /// Other Other, } //------------------------------------------------------------------- /// Organisation roles public enum OrganisationRole { Unknown = 0, /* Do not change the values/codes - tied to database. */ Member, Admin, MemberAdmin, ScheduleAdmin, OpportunityAdmin, ArticleAdmin, } //------------------------------------------------------------------- // Associations. /// /// Association type. ///
- Affiliate - parent-child relationship.
///
- Partner - equal sided relationship.
///
public enum AssociationType { Unknown = 0, /* Do not change the numeric values - tied to database. */ /// 'To' Affiliated to 'From' item. From/To: Organisation. Affiliate = 10, /// Partner items. From/To: Organisation. Partner = 20, } /// /// Association type option. ///
- Encompasses association type and 'direction' from the perspective of one of the organisations.
///
- Affiliate relationship is either from the parent or to the child.
///
- Partner relationships are directionless.
///
public enum AssociationTypeOption { Unknown = 0, AffiliateParent, AffiliateChild, Partner, } //------------------------------------------------------------------- public enum AddressType { Unknown = 0, /* Do not change the numeric values - tied to database. */ Location = 10, Home = 20, Office = 50, Delivery = 60, } //------------------------------------------------------------------- public enum ContactMethodType { Unknown, Phone, Email, WebUrl, } //------------------------------------------------------------------- public enum ContactMethod { Unknown = 0, /* Do not change the numeric values or names - tied to database. */ PhoneMain = 10, PhoneMobile = 20, PhoneHome = 30, PhoneOffice = 40, // Online. Email = 100, Website = 200, Wikipedia = 210, Location = 220, // Social media. LinkedIn = 300, Twitter = 310, Facebook = 320, Instagram = 330, YouTube = 340, Twitch = 350, } //------------------------------------------------------------------- /// Event Type public enum EventType { Unknown = 0, /* Do not change the values or codes - tied to database. */ Playing, Training, Organisation, Social, } //------------------------------------------------------------------- /// Opportunity Type public enum OpportunityType { Unknown = 0, /* Do not change the values or codes - tied to database. */ Playing, Official, Coaching, Volunteer, Staff, Board, } //------------------------------------------------------------------- /// Activity Reaction public enum ActivityReaction { Unknown = 0, /* Do not change the values or codes - tied to database. */ OK = 1, Good = 2, VeryGood = 3, Outstanding = 4, Exceptional = 5, } //------------------------------------------------------------------- // Support. //------------------------------------------------------------------- /// User Report Type public enum UserReportType { Unknown = 0, /* Do not change the values or codes - tied to database. */ Enhancement = 10, Information = 20, Bug = 30, } /// Support Item Process Type public enum SupportItemProcessType { Unknown = 0, /* Do not change the values or codes - tied to database. */ OrganisationSchedulePopulation = 200, } //------------------------------------------------------------------- } //======================================================================= }