v1.1.5.1
This commit is contained in:
@@ -25,6 +25,10 @@ namespace Saxonite.Net.Core.Web.Online.Models
|
||||
{
|
||||
AdditionalFiles_CSS.Add("css/sax-account.css");
|
||||
AdditionalFiles_JS.Add("js/sax-account.js");
|
||||
AdditionalFiles_JS.Add("js/sax-usr-pro.js");
|
||||
AdditionalFiles_JS.Add("js/sax-usr-spt.js");
|
||||
AdditionalFiles_JS.Add("js/sax-usr-spt-exp.js");
|
||||
AdditionalFiles_JS.Add("js/sax-usr-org.js");
|
||||
}
|
||||
|
||||
//-------------------------------------------------------------------
|
||||
@@ -128,9 +132,10 @@ namespace Saxonite.Net.Core.Web.Online.Models
|
||||
|
||||
//---------------------------------------------------------------
|
||||
// Country Region.
|
||||
if (AccountRegionIdCountry != null && SysId.IsValid(AccountRegionIdCountry.ToSysId()))
|
||||
SysId regionIdCountry = ExtractSysId(AccountRegionIdCountry);
|
||||
if (AccountRegionIdCountry != null && SysId.IsValid(regionIdCountry))
|
||||
{
|
||||
SaxRegion regionCountry = Internals.GetRegion(AccountRegionIdCountry.ToSysId());
|
||||
SaxRegion regionCountry = Internals.GetRegion(regionIdCountry);
|
||||
if (regionCountry == null)
|
||||
responseData.SetControlError(nameof(AccountRegionIdCountry), Localiser["msg.validation.invalid.value"]);
|
||||
}
|
||||
@@ -138,7 +143,8 @@ namespace Saxonite.Net.Core.Web.Online.Models
|
||||
// Province Region.
|
||||
if (AccountRegionIdProvince != null)
|
||||
{
|
||||
SaxRegion regionProvince = Internals.GetRegion(AccountRegionIdProvince.ToSysId());
|
||||
SysId regionIdProvince = ExtractSysId(AccountRegionIdProvince);
|
||||
SaxRegion regionProvince = Internals.GetRegion(regionIdProvince);
|
||||
if (regionProvince == null)
|
||||
responseData.SetControlError(nameof(AccountRegionIdProvince), Localiser["msg.validation.invalid.value"]);
|
||||
}
|
||||
@@ -152,7 +158,7 @@ namespace Saxonite.Net.Core.Web.Online.Models
|
||||
// Sport.
|
||||
if (ProfileSportId != null)
|
||||
{
|
||||
SysId profileSportId = ProfileSportId.ToSysId();
|
||||
SysId profileSportId = ExtractSysId(ProfileSportId);
|
||||
if (!SysId.IsValid(profileSportId))
|
||||
responseData.SetControlError(nameof(ProfileSportId), Localiser["msg.validation.mandatory.value"]);
|
||||
}
|
||||
|
||||
@@ -108,7 +108,7 @@ namespace Saxonite.Net.Core.Web.Online.Models
|
||||
// Article sport.
|
||||
if (ArticleSportId != null)
|
||||
{
|
||||
SysId articleSportId = ArticleSportId.ToSysId();
|
||||
SysId articleSportId = ExtractSysId(ArticleSportId);
|
||||
if (!SysId.IsValid(articleSportId))
|
||||
responseData.SetControlError(nameof(ArticleSportId), Localiser["msg.validation.mandatory.value"]);
|
||||
}
|
||||
@@ -116,7 +116,7 @@ namespace Saxonite.Net.Core.Web.Online.Models
|
||||
// Article region.
|
||||
if (ArticleRegionId != null)
|
||||
{
|
||||
SysId articleRegionId = ArticleRegionId.ToSysId();
|
||||
SysId articleRegionId = ExtractSysId(ArticleRegionId);
|
||||
if (!SysId.IsValid(articleRegionId))
|
||||
responseData.SetControlError(nameof(ArticleRegionId), Localiser["msg.validation.mandatory.value"]);
|
||||
}
|
||||
|
||||
@@ -107,12 +107,12 @@ namespace Saxonite.Net.Core.Web.Online.Models
|
||||
responseData.SetControlError(nameof(OrganisationName), Localiser["msg.validation.mandatory.value"]);
|
||||
else if (StringUtil.GetLength(OrganisationName) > GetControlMaxLength(SaxDbDfn_Core.ColumnIdx.Organisation_Name))
|
||||
responseData.SetControlError(nameof(OrganisationName), Localiser["msg.validation.maximum.length", GetControlMaxLength(SaxDbDfn_Core.ColumnIdx.Organisation_Name)]);
|
||||
else if (SysId.IsValid(OrganisationRegionIdCountry.ToSysId()))
|
||||
else if (SysId.IsValid(ExtractSysId(OrganisationRegionIdCountry)))
|
||||
{
|
||||
// Ensure that the organisation name is unique within the country.
|
||||
SaxOrganisation.Params prmOrganisation = new SaxOrganisation.Params();
|
||||
prmOrganisation.NameFull = OrganisationName;
|
||||
prmOrganisation.RegionIdsIncluded.Add(OrganisationRegionIdCountry.ToSysId());
|
||||
prmOrganisation.RegionIdsIncluded.Add(ExtractSysId(OrganisationRegionIdCountry));
|
||||
prmOrganisation.StatusCat = SaxOrganisation.StatusCat.Any;
|
||||
if (AccountMgr.GetOrganisationCount(prmOrganisation) > 0)
|
||||
responseData.SetControlError(nameof(OrganisationName), Localiser["msg.validation.duplicate.value"]);
|
||||
@@ -129,13 +129,13 @@ namespace Saxonite.Net.Core.Web.Online.Models
|
||||
// Organisation Sport - mandatory for certain organisation categories.
|
||||
if (StringUtil.IsEmpty(OrganisationSportId) && SaxOrganisation.IsSportMandatory(GetOrganisationCategory()))
|
||||
responseData.SetControlError(nameof(OrganisationSportId), Localiser["msg.validation.mandatory.value"]);
|
||||
else if (!StringUtil.IsEmpty(OrganisationSportId) && !SysId.IsValid(OrganisationSportId.ToSysId()))
|
||||
else if (!StringUtil.IsEmpty(OrganisationSportId) && !SysId.IsValid(ExtractSysId(OrganisationSportId)))
|
||||
responseData.SetControlError(nameof(OrganisationSportId), Localiser["msg.validation.invalid.value"]);
|
||||
|
||||
// Organisation Region Country - mandatory.
|
||||
if (StringUtil.IsEmpty(OrganisationRegionIdCountry))
|
||||
responseData.SetControlError(nameof(OrganisationRegionIdCountry), Localiser["msg.validation.mandatory.value"]);
|
||||
else if (!SysId.IsValid(OrganisationRegionIdCountry.ToSysId()))
|
||||
else if (!SysId.IsValid(ExtractSysId(OrganisationRegionIdCountry)))
|
||||
responseData.SetControlError(nameof(OrganisationRegionIdCountry), Localiser["msg.validation.invalid.value"]);
|
||||
|
||||
// Organisation Address Line 1 - mandatory.
|
||||
|
||||
@@ -88,7 +88,7 @@ namespace Saxonite.Net.Core.Web.Online.Models
|
||||
// Opportunity sport.
|
||||
if (OpportunitySportId != null)
|
||||
{
|
||||
SysId articleSportId = OpportunitySportId.ToSysId();
|
||||
SysId articleSportId = ExtractSysId(OpportunitySportId);
|
||||
if (!SysId.IsValid(articleSportId))
|
||||
responseData.SetControlError(nameof(OpportunitySportId), Localiser["msg.validation.mandatory.value"]);
|
||||
}
|
||||
@@ -96,7 +96,7 @@ namespace Saxonite.Net.Core.Web.Online.Models
|
||||
// Opportunity region.
|
||||
if (OpportunityRegionId != null)
|
||||
{
|
||||
SysId articleRegionId = OpportunityRegionId.ToSysId();
|
||||
SysId articleRegionId = ExtractSysId(OpportunityRegionId);
|
||||
if (!SysId.IsValid(articleRegionId))
|
||||
responseData.SetControlError(nameof(OpportunityRegionId), Localiser["msg.validation.mandatory.value"]);
|
||||
}
|
||||
|
||||
@@ -0,0 +1,117 @@
|
||||
using Microsoft.AspNetCore.Http;
|
||||
using Sarand.Net.Standard.Base.Bus;
|
||||
using Sarand.Net.Standard.Base.Core;
|
||||
using Sarand.Net.Standard.Base.Utils;
|
||||
using Saxonite.Base.App;
|
||||
using Saxonite.Net.Core.Web.Base.App;
|
||||
using Saxonite.Net.Core.Web.Base.Controllers;
|
||||
using Saxonite.Net.Core.Web.Base.Models;
|
||||
using Saxonite.Net.Standard.Base.App;
|
||||
using Saxonite.Net.Standard.Base.Bus;
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Linq;
|
||||
using System.Threading.Tasks;
|
||||
|
||||
namespace Saxonite.Net.Core.Web.Online.Models
|
||||
{
|
||||
//=======================================================================
|
||||
public class Model_UserSportExperience : SaxModel_Online
|
||||
{
|
||||
//-------------------------------------------------------------------
|
||||
// Construction.
|
||||
public Model_UserSportExperience(SaxLocaliser localiser) :
|
||||
base(localiser)
|
||||
{
|
||||
}
|
||||
|
||||
//-------------------------------------------------------------------
|
||||
// User Sports Experience Properties.
|
||||
public String UserSportExperienceId { get; set; }
|
||||
public String UserSportExperienceExists { get; set; }
|
||||
public String UserSportId { get; set; }
|
||||
public String ExperiencePeriodFrom { get; set; }
|
||||
public String ExperiencePeriodTo { get; set; }
|
||||
public String ExperienceOrganisationId { get; set; }
|
||||
public String ExperienceOrganisationName { get; set; }
|
||||
public String ExperienceSummary { get; set; }
|
||||
public String ExperienceTeam { get; set; }
|
||||
public String ExperienceLeague { get; set; }
|
||||
public String ExperienceSpeciality { get; set; }
|
||||
// Regions.
|
||||
public String ExperienceRegionIdNation { get; set; }
|
||||
public String ExperienceRegionIdProvince { get; set; }
|
||||
|
||||
//-------------------------------------------------------------------
|
||||
// Validate User Sport Experience data.
|
||||
public bool ValidateProfileSportData(SaxController_Base.AjaxResponse_Data responseData)
|
||||
{
|
||||
// Period dates.
|
||||
DateTime periodFrom = ParseDateFromForm(ExperiencePeriodFrom);
|
||||
DateTime periodTo = ParseDateFromForm(ExperiencePeriodTo);
|
||||
|
||||
// Period From.
|
||||
if (ExperiencePeriodFrom != null)
|
||||
{
|
||||
// Period from date is mandatory.
|
||||
if (!DateUtil.IsValid(periodFrom))
|
||||
responseData.SetControlError(nameof(ExperiencePeriodFrom), Localiser["msg.validation.invalid.value"]);
|
||||
}
|
||||
|
||||
// Period To.
|
||||
if (ExperiencePeriodTo != null)
|
||||
{
|
||||
// Period to date is optional must not be before the from date.
|
||||
if (DateUtil.IsValid(periodTo) && DateUtil.IsValid(periodFrom) && periodTo.CompareTo(periodFrom) < 0)
|
||||
responseData.SetControlError(nameof(ExperiencePeriodTo), Localiser["msg.validation.invalid.value"]);
|
||||
}
|
||||
|
||||
// Organisation name.
|
||||
if (ExperienceOrganisationName != null)
|
||||
{
|
||||
responseData.SetControlValue(nameof(ExperienceOrganisationName), ExperienceOrganisationName);
|
||||
if (StringUtil.GetLength(ExperienceOrganisationName) > GetControlMaxLength(SaxDbDfn_Core.ColumnIdx.UserSportExperience_OrganisationName))
|
||||
responseData.SetControlError(nameof(ExperienceOrganisationName), Localiser["msg.validation.maximum.length", GetControlMaxLength(SaxDbDfn_Core.ColumnIdx.UserSportExperience_OrganisationName)]);
|
||||
}
|
||||
|
||||
// Summary.
|
||||
if (ExperienceSummary != null)
|
||||
{
|
||||
responseData.SetControlValue(nameof(ExperienceSummary), ExperienceSummary);
|
||||
if (StringUtil.IsEmpty(ExperienceSummary))
|
||||
responseData.SetControlError(nameof(ExperienceSummary), Localiser["msg.validation.mandatory.value"]);
|
||||
else if (StringUtil.GetLength(ExperienceSummary) > GetControlMaxLength(SaxDbDfn_Core.ColumnIdx.UserSportExperience_Summary))
|
||||
responseData.SetControlError(nameof(ExperienceSummary), Localiser["msg.validation.maximum.length", GetControlMaxLength(SaxDbDfn_Core.ColumnIdx.UserSportExperience_Summary)]);
|
||||
}
|
||||
|
||||
// Team.
|
||||
if (ExperienceTeam != null)
|
||||
{
|
||||
responseData.SetControlValue(nameof(ExperienceTeam), ExperienceTeam);
|
||||
if (StringUtil.GetLength(ExperienceTeam) > GetControlMaxLength(SaxDbDfn_Core.ColumnIdx.UserSportExperience_Team))
|
||||
responseData.SetControlError(nameof(ExperienceTeam), Localiser["msg.validation.maximum.length", GetControlMaxLength(SaxDbDfn_Core.ColumnIdx.UserSportExperience_Team)]);
|
||||
}
|
||||
|
||||
// League.
|
||||
if (ExperienceLeague != null)
|
||||
{
|
||||
responseData.SetControlValue(nameof(ExperienceLeague), ExperienceLeague);
|
||||
if (StringUtil.GetLength(ExperienceLeague) > GetControlMaxLength(SaxDbDfn_Core.ColumnIdx.UserSportExperience_League))
|
||||
responseData.SetControlError(nameof(ExperienceLeague), Localiser["msg.validation.maximum.length", GetControlMaxLength(SaxDbDfn_Core.ColumnIdx.UserSportExperience_League)]);
|
||||
}
|
||||
|
||||
// Speciality.
|
||||
if (ExperienceSpeciality != null)
|
||||
{
|
||||
responseData.SetControlValue(nameof(ExperienceSpeciality), ExperienceSpeciality);
|
||||
if (StringUtil.GetLength(ExperienceSpeciality) > GetControlMaxLength(SaxDbDfn_Core.ColumnIdx.UserSportExperience_Speciality))
|
||||
responseData.SetControlError(nameof(ExperienceSpeciality), Localiser["msg.validation.maximum.length", GetControlMaxLength(SaxDbDfn_Core.ColumnIdx.UserSportExperience_Speciality)]);
|
||||
}
|
||||
|
||||
return !responseData.HasControlErrors();
|
||||
}
|
||||
|
||||
//-------------------------------------------------------------------
|
||||
}
|
||||
//=======================================================================
|
||||
}
|
||||
@@ -131,9 +131,11 @@ namespace Saxonite.Net.Core.Web.Online.Models
|
||||
idObfuscationParams.Add(ParamName_IdObfuscation_Id, SysId.ToString(id));
|
||||
return SaxController_Base.EncryptParameters(idObfuscationParams, Base64IV_IdObfuscation, Base64Key_IdObfuscation);
|
||||
}
|
||||
public SysId DecryptId(String encryptedParams)
|
||||
public SysId DecryptId(String encryptedId)
|
||||
{
|
||||
NameValueCollection idObfuscationParams = SaxController_Base.DecryptParameters(encryptedParams, Base64IV_IdObfuscation, Base64Key_IdObfuscation);
|
||||
if (StringUtil.IsNumeric(encryptedId))
|
||||
return encryptedId.ToSysId();
|
||||
NameValueCollection idObfuscationParams = SaxController_Base.DecryptParameters(encryptedId, Base64IV_IdObfuscation, Base64Key_IdObfuscation);
|
||||
return idObfuscationParams.Get(ParamName_IdObfuscation_Id).ToSysId();
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user