public void LoadCalls(int idCommunity, int pageIndex, int pageSize) { Int32 idUser = UserContext.CurrentUserID; litePerson person = GetCurrentUser(ref idUser); Boolean fromAllcommunities = false; PagerBase pager = new PagerBase(); pager.PageSize = pageSize; fromAllcommunities = (idCommunity == 0); pager.Count = (int)Service.PublicCallCount(false, fromAllcommunities, (idCommunity == 0), idCommunity, CallStatusForSubmitters.SubmissionOpened) - 1; pager.PageIndex = pageIndex;// Me.View.CurrentPageIndex View.Pager = pager; if (pager.Count < 0) { View.LoadCalls(new List <dtoRequestItemPermission>()); } else { ModuleRequestForMembership module = Service.RequestForMembershipServicePermission(idUser, idCommunity); View.LoadCalls(Service.GetRequests(module, CallStandardAction.List, fromAllcommunities, (idCommunity == 0), idCommunity, idUser, CallStatusForSubmitters.SubmissionOpened, FilterCallVisibility.OnlyVisible, pager.PageIndex, pageSize)); } }
public void InitView() { CallStandardAction action = View.PreloadAction; if (action != CallStandardAction.Manage) { action = CallStandardAction.List; } View.CurrentAction = action; int idCommunity = SetCallsCurrentCommunity(); if (UserContext.isAnonymous) { View.DisplaySessionTimeout(); } else { ModuleRequestForMembership module = Service.RequestForMembershipServicePermission(UserContext.CurrentUserID, idCommunity); Boolean allowView = (module.ViewBaseForPapers || module.Administration || module.ManageBaseForPapers); Boolean allowManage = module.CreateBaseForPaper || module.Administration || module.ManageBaseForPapers || module.EditBaseForPaper; View.AllowSubmmissions = (action == CallStandardAction.List) && module.ViewBaseForPapers; if (allowView || allowManage) { InitializeView(action, module, idCommunity, View.PreloadView, allowView, allowManage); LoadCalls(module, action, idCommunity, View.CurrentView, 0, currentPageSize); } else { View.DisplayNoPermission(idCommunity, Service.ServiceModuleID()); } } }
private void LoadRevisions(ModuleRequestForMembership module, CallStandardAction action, int idCommunity, dtoRevisionFilters filters, int pageIndex, int pageSize) { liteCommunity community = CurrentManager.GetLiteCommunity(idCommunity); litePerson person = CurrentManager.GetLitePerson(UserContext.CurrentUserID); Boolean fromAllcommunities = false; PagerBase pager = new PagerBase(); pager.PageSize = pageSize; if (action == CallStandardAction.Manage) { pager.Count = (int)Service.RevisionCount(fromAllcommunities, (idCommunity == 0), community, person, CallForPaperType.RequestForMembership, filters, RevisionType.Manager) - 1; } else { fromAllcommunities = (idCommunity == 0); pager.Count = (int)Service.RevisionCount(fromAllcommunities, (idCommunity == 0), community, person, CallForPaperType.RequestForMembership, filters, RevisionType.UserRequired) - 1; } pager.PageIndex = pageIndex;// Me.View.CurrentPageIndex View.Pager = pager; if (pager.Count < 0) { View.LoadNoRevisionsFound(); } else { View.LoadRevisions(Service.GetRevisionList(module, action, fromAllcommunities, (idCommunity == 0), community, person, filters, pager.PageIndex, pageSize)); } View.SendUserAction(View.IdCallCommunity, ServiceRequest.ServiceModuleID(), ModuleRequestForMembership.ActionType.LoadRevisionsList); }
private void VirtualDelete(long idCall, Boolean delete) { if (UserContext.isAnonymous) { View.DisplaySessionTimeout(); } else { int idCommunity = 0; BaseForPaper call = Service.VirtualDeleteCall(idCall, UserContext.CurrentUserID, delete); if (call != null) { if (!call.IsPortal && call.Community != null) { idCommunity = call.Community.Id; } View.SendUserAction(idCommunity, Service.ServiceModuleID(), idCall, (delete) ? ModuleRequestForMembership.ActionType.VirtualDeleteRequest : ModuleRequestForMembership.ActionType.VirtualUndeleteRequest); } idCommunity = View.IdCallCommunity; CallStandardAction action = View.CurrentAction; ModuleRequestForMembership module = Service.RequestForMembershipServicePermission(UserContext.CurrentUserID, idCommunity); FilterCallVisibility filter = View.CurrentFilter; InitializeView(action, module, idCommunity, View.CurrentView); View.CurrentFilter = filter; LoadCalls(module, action, idCommunity, View.CurrentView, View.Pager.PageIndex, currentPageSize); } }
public void LoadCalls(ModuleRequestForMembership module, CallStandardAction action, int idCommunity, CallStatusForSubmitters view, int pageIndex, int pageSize) { Boolean fromAllcommunities = false; PagerBase pager = new PagerBase(); pager.PageSize = pageSize; if (action == CallStandardAction.Manage) { pager.Count = (int)Service.CallCount((idCommunity == 0), idCommunity, UserContext.CurrentUserID, CallForPaperType.RequestForMembership, view, View.CurrentFilter) - 1; } else { fromAllcommunities = (idCommunity == 0) && (view == CallStatusForSubmitters.SubmissionOpened || view == CallStatusForSubmitters.Submitted || view == CallStatusForSubmitters.ToEvaluate || view == CallStatusForSubmitters.Evaluated); pager.Count = (int)Service.CallCountBySubmission(false, fromAllcommunities, (idCommunity == 0), idCommunity, UserContext.CurrentUserID, view) - 1; } pager.PageIndex = pageIndex;// Me.View.CurrentPageIndex View.Pager = pager; if (pager.Count < 0) { View.LoadCalls(new List <dtoRequestItemPermission>()); } else { View.LoadCalls(Service.GetRequests(module, action, fromAllcommunities, (idCommunity == 0), idCommunity, UserContext.CurrentUserID, view, View.CurrentFilter, pager.PageIndex, pageSize)); } }
public void LoadSubmissions(Int32 idCommunity, CallForPaperType type, dtoSubmissionFilters filters, int pageIndex, int pageSize) { Boolean allowManage = true; View.CurrentFilters = filters; switch (type) { case CallForPaperType.CallForBids: ModuleCallForPaper module = Service.CallForPaperServicePermission(UserContext.CurrentUserID, idCommunity); allowManage = (module.CreateCallForPaper || module.Administration || module.ManageCallForPapers || module.EditCallForPaper); break; case CallForPaperType.RequestForMembership: ModuleRequestForMembership moduleR = Service.RequestForMembershipServicePermission(UserContext.CurrentUserID, idCommunity); allowManage = (moduleR.CreateBaseForPaper || moduleR.Administration || moduleR.ManageBaseForPapers || moduleR.EditBaseForPaper); break; } if (UserContext.isAnonymous) { View.DisplaySessionTimeout(); } else if (allowManage) { LoadSubmissions(allowManage, View.IdCall, type, filters, pageIndex, pageSize); } else { View.DisplayNoPermission(idCommunity, View.IdCallModule); } }
public void LoadSkins(dtoBaseForPaper call) { if (call == null || !call.IsPublic) { View.HideSkinsInfo(); } else { Int32 idModule = 0; Int32 idCommunity = View.IdCommunity; switch (call.Type) { case CallForPaperType.CallForBids: ModuleCallForPaper module = CallService.CallForPaperServicePermission(UserContext.CurrentUserID, idCommunity); idModule = CallService.ServiceModuleID(); View.LoadSkinInfo(call.Id, typeof(CallForPaper).FullName, ModuleCallForPaper.ObjectType.CallForPaper, idModule, idCommunity, (module.Administration || module.ManageCallForPapers), (module.Administration || module.ManageCallForPapers) && View.AllowSave, (module.Administration || module.ManageCallForPapers)); break; case CallForPaperType.RequestForMembership: ModuleRequestForMembership moduleR = CallService.RequestForMembershipServicePermission(UserContext.CurrentUserID, idCommunity); idModule = RequestService.ServiceModuleID(); View.LoadSkinInfo(call.Id, typeof(RequestForMembership).FullName, ModuleRequestForMembership.ObjectType.RequestForMembership, idModule, idCommunity, (moduleR.Administration || moduleR.ManageBaseForPapers), (moduleR.Administration || moduleR.ManageBaseForPapers) && View.AllowSave, (moduleR.Administration || moduleR.ManageBaseForPapers)); break; } } }
private void LoadAttachments(long idCall, ModuleRequestForMembership module) { View.LoadSubmitterTypes(CallService.GetCallAvailableSubmittersType(idCall)); List <dtoAttachmentFilePermission> items = CallService.GetCallAttachments(idCall, module, false); if (items.Count == 0) { View.DisplayNoAttachments(); } else { View.LoadAttachments(items); } }
public void LoadRevisions(dtoRevisionFilters filters, int pageIndex, int pageSize) { View.CurrentFilters = filters; switch (View.CallType) { case CallForPaperType.CallForBids: ModuleCallForPaper module = Service.CallForPaperServicePermission(UserContext.CurrentUserID, View.IdCallCommunity); LoadRevisions(module, View.CurrentAction, View.IdCallCommunity, filters, pageIndex, pageSize); break; case CallForPaperType.RequestForMembership: ModuleRequestForMembership moduleR = Service.RequestForMembershipServicePermission(UserContext.CurrentUserID, View.IdCallCommunity); LoadRevisions(moduleR, View.CurrentAction, View.IdCallCommunity, filters, pageIndex, pageSize); break; } }
public void PhisicalDeleteSubmission(long idSubmission, String baseFilePath, CallForPaperType type, dtoSubmissionFilters filters, int pageIndex, int pageSize) { if (UserContext.isAnonymous) { View.DisplaySessionTimeout(); } else { Boolean allowManage = false; Int32 idCommunity = View.IdCallCommunity; switch (View.CallType) { case CallForPaperType.CallForBids: ModuleCallForPaper module = Service.CallForPaperServicePermission(UserContext.CurrentUserID, idCommunity); allowManage = (module.CreateCallForPaper || module.Administration || module.ManageCallForPapers || module.EditCallForPaper); break; case CallForPaperType.RequestForMembership: ModuleRequestForMembership moduleR = Service.RequestForMembershipServicePermission(UserContext.CurrentUserID, idCommunity); allowManage = (moduleR.CreateBaseForPaper || moduleR.Administration || moduleR.ManageBaseForPapers || moduleR.EditBaseForPaper); break; } if (allowManage) { Service.PhisicalDeleteSubmission(idSubmission, baseFilePath); switch (View.CallType) { case CallForPaperType.CallForBids: View.SendUserAction(View.IdCallCommunity, View.IdCallModule, idSubmission, ModuleCallForPaper.ActionType.VirtualDeleteSubmission); break; case CallForPaperType.RequestForMembership: View.SendUserAction(View.IdCallCommunity, View.IdCallModule, idSubmission, ModuleRequestForMembership.ActionType.VirtualDeleteSubmission); break; } View.GotoUrl(RootObject.ViewSubmissions(type, View.IdCall, 0, 0, View.PreloadView, filters.Status, filters.OrderBy, filters.Ascending, pageIndex, pageSize)); } else { LoadSubmissions(View.IdCallCommunity, type, filters, pageIndex, pageSize); } } }
private void LoadSubmitters(long idCall) { switch (View.CallType) { case CallForPaperType.CallForBids: ModuleCallForPaper module = CallService.CallForPaperServicePermission(UserContext.CurrentUserID, View.IdCommunity); LoadSubmitters(idCall, module, CallForPaperType.CallForBids, View.IdCommunity); break; case CallForPaperType.RequestForMembership: ModuleRequestForMembership moduleR = CallService.RequestForMembershipServicePermission(UserContext.CurrentUserID, View.IdCommunity); LoadSubmitters(idCall, moduleR, CallForPaperType.RequestForMembership, View.IdCommunity); break; default: break; } }
public String ExportSubmissionsData(lm.Comol.Core.DomainModel.Helpers.Export.ExportFileType exportType, dtoSubmissionFilters filters, Dictionary <SubmissionsListTranslations, string> translations, Dictionary <SubmissionStatus, String> status, Dictionary <RevisionStatus, string> revisions) { Boolean allowManage = false; switch (View.CallType) { case CallForPaperType.CallForBids: ModuleCallForPaper module = Service.CallForPaperServicePermission(UserContext.CurrentUserID, View.IdCallCommunity); allowManage = (module.CreateCallForPaper || module.Administration || module.ManageCallForPapers || module.EditCallForPaper); break; case CallForPaperType.RequestForMembership: ModuleRequestForMembership moduleR = Service.RequestForMembershipServicePermission(UserContext.CurrentUserID, View.IdCallCommunity); allowManage = (moduleR.CreateBaseForPaper || moduleR.Administration || moduleR.ManageBaseForPapers || moduleR.EditBaseForPaper); break; } return(Service.ExportSubmissionsData(exportType, allowManage, View.IdCall, filters, translations, status, revisions)); }
private void LoadRequiredFiles(long idCall) { switch (View.CallType) { case CallForPaperType.CallForBids: ModuleCallForPaper module = CallService.CallForPaperServicePermission(UserContext.CurrentUserID, View.IdCommunity); LoadRequiredFiles(idCall, CallService.GetPermissionForEditor(idCall, module)); break; case CallForPaperType.RequestForMembership: ModuleRequestForMembership moduleR = CallService.RequestForMembershipServicePermission(UserContext.CurrentUserID, View.IdCommunity); LoadRequiredFiles(idCall, CallService.GetPermissionForEditor(idCall, moduleR)); break; default: break; } }
private void InitializeView(CallStandardAction action, ModuleRequestForMembership module, int idCommunity, CallStatusForSubmitters preloadView, Boolean allowView, Boolean allowManage) { List <CallStatusForSubmitters> views = Service.GetAvailableViews(action, (module.ManageBaseForPapers || module.Administration), (action == CallStandardAction.List && idCommunity == 0), (idCommunity == 0), idCommunity, UserContext.CurrentUserID, CallForPaperType.RequestForMembership); if (!views.Contains(preloadView) && views.Count == 0) { preloadView = CallStatusForSubmitters.SubmissionOpened; views.Add(CallStatusForSubmitters.SubmissionOpened); } else if (!views.Contains(preloadView)) { preloadView = views[0]; } View.LoadAvailableView(idCommunity, views); View.CurrentView = preloadView; switch (action) { case CallStandardAction.List: View.AllowManage = allowManage; if (allowManage) { View.SetActionUrl(CallStandardAction.Manage, RootObject.ViewCalls(CallForPaperType.RequestForMembership, CallStandardAction.Manage, idCommunity, preloadView)); } break; case CallStandardAction.Manage: if (module.CreateBaseForPaper || module.Administration) { View.SetActionUrl(CallStandardAction.Add, RootObject.AddCall(CallForPaperType.RequestForMembership, idCommunity, View.CurrentView)); } View.AllowView = allowView; if (allowView) { View.SetActionUrl(CallStandardAction.List, RootObject.ViewCalls(CallForPaperType.RequestForMembership, CallStandardAction.List, idCommunity, preloadView)); } break; } if (action == CallStandardAction.Manage) { List <FilterCallVisibility> filters = Service.GetCallVisibilityFilters(module, (idCommunity == 0), idCommunity, UserContext.CurrentUserID, preloadView); View.LoadAvailableFilters(filters, (filters.Count == 0) ? FilterCallVisibility.OnlyVisible : filters[0]); } }
private void LoadSubmitters(long idCall, ModuleRequestForMembership module, CallForPaperType type, Int32 idCommunity) { List <dtoSubmitterTypePermission> submitters = CallService.GetCallSubmittersType(idCall, module, false); if (submitters.Count == 0) { View.DisplayNoSubmitters(); } else { View.LoadSubmitters(submitters); } List <lm.Comol.Core.Wizard.NavigableWizardItem <WizardCallStep> > steps = CallService.GetAvailableSteps(idCall, WizardCallStep.SubmittersType, type); View.LoadWizardSteps(idCall, type, idCommunity, steps); if (steps.Where(s => (s.Id != WizardCallStep.CallAvailability) && submitters.Count > 0 && (s.Status == Core.Wizard.WizardItemStatus.valid || s.Status == Core.Wizard.WizardItemStatus.warning)).Any()) { View.SetActionUrl(CallStandardAction.PreviewCall, RootObject.PreviewCall(type, idCall, idCommunity, View.PreloadView)); } }
public void CloneCall(long idCall, String prefix, String filePath, String thumbnailPath) { if (UserContext.isAnonymous) { View.DisplaySessionTimeout(); } else { int idCommunity = View.IdCallCommunity; int idUser = UserContext.CurrentUserID; CallStandardAction action = View.CurrentAction; ModuleRequestForMembership module = Service.RequestForMembershipServicePermission(idUser, idCommunity); if (module.CreateBaseForPaper || module.Administration || module.ManageBaseForPapers || module.EditBaseForPaper) { Boolean reloadPage = (View.CurrentView == CallStatusForSubmitters.Draft); BaseForPaper call = Service.CloneCall(idCall, idUser, idCommunity, prefix, filePath, thumbnailPath); if (call != null) { View.SendUserAction(idCommunity, Service.ServiceModuleID(), idCall, ModuleRequestForMembership.ActionType.CloneRequest); View.CloneSkinAssociation(idUser, Service.ServiceModuleID(), ((call.IsPortal || call.Community == null) ? 0 : call.Community.Id), idCall, call.Id, (Int32)ModuleRequestForMembership.ObjectType.RequestForMembership, typeof(RequestForMembership).FullName); } if (reloadPage || call == null) { FilterCallVisibility filter = View.CurrentFilter; InitializeView(action, module, idCommunity, View.CurrentView); View.CurrentFilter = filter; LoadCalls(module, action, idCommunity, View.CurrentView, View.Pager.PageIndex, currentPageSize); } else { View.GotoUrl(RootObject.ViewCalls(call.Id, CallForPaperType.RequestForMembership, View.CurrentAction, idCommunity, CallStatusForSubmitters.Draft)); } } else { View.DisplayNoPermission(idCommunity, Service.ServiceModuleID()); } } }
public void InitView() { long idCall = View.PreloadIdCall; dtoRequest call = null; CallForPaperType type = Service.GetCallType(idCall); call = Service.GetDtoRequest(idCall); View.CallType = type; int idCommunity = SetCallCurrentCommunity(call); if (UserContext.isAnonymous) { View.DisplaySessionTimeout(); } else { litePerson currenUser = CurrentManager.GetLitePerson(UserContext.CurrentUserID); ModuleRequestForMembership module = Service.RequestForMembershipServicePermission(UserContext.CurrentUserID, idCommunity); int idModule = Service.ServiceModuleID(); View.IdCallModule = idModule; if (call == null) { View.LoadUnknowCall(idCommunity, idModule, idCall, type); } else if (module.Administration || module.ManageBaseForPapers) { View.IdCall = idCall; LoadCall(call); View.SendUserAction(idCommunity, idModule, idCall, ModuleRequestForMembership.ActionType.ViewPreviewRequest); } else { View.DisplayNoPermission(idCommunity, idModule); } } }
public void Delete(long idCall, String baseFilePath, String baseThumbnailPath) { if (UserContext.isAnonymous) { View.DisplaySessionTimeout(); } else { int idCommunity = View.IdCallCommunity; int idUser = UserContext.CurrentUserID; CallStandardAction action = View.CurrentAction; ModuleRequestForMembership module = Service.RequestForMembershipServicePermission(idUser, idCommunity); BaseForPaper call = Service.GetCall(idCall); if (call == null) { View.DisplayUnableToDeleteUnknownCall(); } else if (module.Administration || module.ManageBaseForPapers || (module.DeleteOwnBaseForPaper && call.CreatedBy != null && call.CreatedBy.Id == idUser)) { idCommunity = ((call.IsPortal || call.Community == null) ? 0 : call.Community.Id); if (Service.DeleteCall(idCall, baseFilePath, baseThumbnailPath)) { View.SendUserAction(idCommunity, Service.ServiceModuleID(), idCall, ModuleRequestForMembership.ActionType.DeleteRequest); View.RemoveSkinAssociation(idUser, Service.ServiceModuleID(), idCommunity, idCall, (Int32)ModuleRequestForMembership.ObjectType.RequestForMembership, typeof(RequestForMembership).FullName); } else { View.DisplayUnableToDeleteCall(); } } FilterCallVisibility filter = View.CurrentFilter; InitializeView(action, module, idCommunity, View.CurrentView); View.CurrentFilter = filter; LoadCalls(module, action, idCommunity, View.CurrentView, View.Pager.PageIndex, currentPageSize); } }
private void LoadRequiredFiles(long idCall, ModuleRequestForMembership module) { dtoGenericPermission permission = CallService.GetPermissionForEditor(idCall, module); LoadRequiredFiles(idCall, permission); }
public void InitView() { CallForPaperType type = View.PreloadCallType; View.CallType = type; CallStandardAction action = View.PreloadAction; if (action != CallStandardAction.Manage) { action = CallStandardAction.List; } View.CurrentAction = action; int idCommunity = SetCallsCurrentCommunity(); if (UserContext.isAnonymous) { View.DisplaySessionTimeout(); } else { Int32 idUser = UserContext.CurrentUserID; Boolean allowView = false; Boolean allowManage = false; dtoRevisionFilters filters = View.PreloadFilters; View.CurrentFilters = filters; switch (type) { case CallForPaperType.CallForBids: ModuleCallForPaper module = Service.CallForPaperServicePermission(idUser, idCommunity); allowView = (module.ViewCallForPapers || module.Administration || module.ManageCallForPapers); allowManage = (module.CreateCallForPaper || module.Administration || module.ManageCallForPapers || module.EditCallForPaper); if (allowView || allowManage) { InitializeView(action, allowManage, idCommunity, View.PreloadView, type, filters.Status); LoadRevisions(module, action, idCommunity, filters, View.PreloadPageIndex, View.PreloadPageSize); } else { View.DisplayNoPermission(idCommunity, Service.ServiceModuleID()); } break; case CallForPaperType.RequestForMembership: ModuleRequestForMembership moduleR = Service.RequestForMembershipServicePermission(idUser, idCommunity); allowView = (moduleR.ViewBaseForPapers || moduleR.Administration || moduleR.ManageBaseForPapers); allowManage = (moduleR.CreateBaseForPaper || moduleR.Administration || moduleR.ManageBaseForPapers || moduleR.EditBaseForPaper); if (allowView || allowManage) { InitializeView(action, allowManage, idCommunity, View.PreloadView, type, filters.Status); LoadRevisions(moduleR, action, idCommunity, filters, View.PreloadPageIndex, View.PreloadPageSize); } else { View.DisplayNoPermission(idCommunity, Service.ServiceModuleID()); } break; } switch (action) { case CallStandardAction.List: View.AllowManage = allowManage; if (allowManage) { View.SetActionUrl(CallStandardAction.Manage, RootObject.ViewCalls(CallForPaperType.CallForBids, CallStandardAction.Manage, idCommunity, View.CurrentView)); } break; case CallStandardAction.Manage: View.AllowView = allowView; if (allowView) { View.SetActionUrl(CallStandardAction.List, RootObject.ViewCalls(CallForPaperType.CallForBids, CallStandardAction.List, idCommunity, View.CurrentView)); } break; } } }
public void InitView() { long idCall = View.PreloadIdCall; CallForPaperType type = RequestService.GetCallType(idCall); if (type != CallForPaperType.RequestForMembership) { View.DisplayInvalidType(); } else { dtoRequest call = RequestService.GetRequestMessages(idCall); View.CallType = type; int idCommunity = SetCallCurrentCommunity(call); if (UserContext.isAnonymous) { View.DisplaySessionTimeout(); } else { litePerson currenUser = CurrentManager.GetLitePerson(UserContext.CurrentUserID); Boolean allowManage = false; Boolean allowView = false; Boolean allowSave = false; ModuleRequestForMembership moduleR = RequestService.RequestForMembershipServicePermission(UserContext.CurrentUserID, idCommunity); allowView = (moduleR.ViewBaseForPapers || moduleR.Administration || moduleR.ManageBaseForPapers); allowManage = moduleR.CreateBaseForPaper || moduleR.Administration || moduleR.ManageBaseForPapers || moduleR.EditBaseForPaper; allowSave = (moduleR.Administration || moduleR.ManageBaseForPapers || (moduleR.CreateBaseForPaper && idCall == 0) || (call != null && moduleR.EditBaseForPaper && currenUser == call.Owner)); int idModule = RequestService.ServiceModuleID(); View.IdCallModule = idModule; if (call == null) { View.LoadUnknowCall(idCommunity, idModule, idCall, type); } else if (allowManage || allowSave) { View.AllowSave = allowSave; View.IdCall = idCall; View.SetActionUrl(CallStandardAction.Manage, RootObject.ViewCalls(idCall, type, CallStandardAction.Manage, idCommunity, View.PreloadView)); List <lm.Comol.Core.Wizard.NavigableWizardItem <WizardCallStep> > steps = RequestService.GetAvailableSteps(idCall, WizardCallStep.RequestMessages, type); View.LoadWizardSteps(idCall, type, idCommunity, steps); View.StartMessage = call.StartMessage; View.EndMessage = call.EndMessage; View.SendUserAction(idCommunity, idModule, idCall, ModuleRequestForMembership.ActionType.ViewCallMessages); if (steps.Where(s => s.Id == WizardCallStep.SubmittersType && (s.Status == Core.Wizard.WizardItemStatus.valid || s.Status == Core.Wizard.WizardItemStatus.warning)).Any()) { View.SetActionUrl(CallStandardAction.PreviewCall, RootObject.PreviewCall(call.Type, call.Id, View.IdCommunity, View.PreloadView)); } } else { View.DisplayNoPermission(idCommunity, idModule); } } } }
public void InitView() { Boolean isAnonymousUser = UserContext.isAnonymous; long idCall = View.PreloadIdCall; CallForPaperType type = Service.GetCallType(idCall); long idSubmission = View.PreloadedIdSubmission; long idRevision = View.PreloadedIdRevision; Guid uniqueId = View.PreloadedUniqueID; dtoSubmissionRevision submission = Service.GetSubmissionWithRevisions(idSubmission, true); int idModule = (type == CallForPaperType.CallForBids) ? Service.ServiceModuleID() : ServiceRequest.ServiceModuleID(); View.CallType = type; dtoBaseForPaper call = Service.GetDtoBaseCall(idCall); int idCommunity = SetCallCurrentCommunity(call); View.IdCall = idCall; View.IdCallModule = idModule; View.IdCallCommunity = idCommunity; View.IdSubmission = idSubmission; if (submission != null && (idRevision == 0 && submission.Revisions.Where(r => r.Id == idRevision && r.AllowSave).Any())) { idRevision = submission.GetIdWorkingRevision(); } View.IdRevision = idRevision; Int32 containerIdCommunity = (View.PreloadIdOtherCommunity != -1) ? View.PreloadIdOtherCommunity : idCommunity; if (isAnonymousUser) { View.DisplaySessionTimeout(); } else if (submission == null) { View.DisplayRevisionUnknown(); View.SetActionUrl(CallStandardAction.ViewRevisions, RootObject.ViewRevisions(type, CallStandardAction.List, containerIdCommunity, CallStatusForSubmitters.Revisions)); } else if (submission != null && (idRevision == 0 || submission.IsAnonymous || submission.IdPerson != UserContext.CurrentUserID)) { if (idRevision == 0) { View.DisplayRevisionUnavailable(); } else { View.DisplayNoPermission(idCommunity, idModule); } View.SetActionUrl(CallStandardAction.ViewRevisions, RootObject.ViewRevisions(type, CallStandardAction.List, containerIdCommunity, CallStatusForSubmitters.Revisions)); } else { int idUser = UserContext.CurrentUserID; litePerson currenUser = GetCurrentUser(ref idUser); Boolean allowView = false; View.CallRepository = call.GetRepositoryIdentifier(); switch (type) { case CallForPaperType.CallForBids: ModuleCallForPaper module = Service.CallForPaperServicePermission(idUser, idCommunity); allowView = (submission.Owner.Id == idUser || module.ManageCallForPapers || module.Administration || ((module.CreateCallForPaper || module.EditCallForPaper) && call.Owner.Id == idUser)); break; case CallForPaperType.RequestForMembership: ModuleRequestForMembership moduleR = Service.RequestForMembershipServicePermission(idUser, idCommunity); allowView = (submission.Owner.Id == idUser || moduleR.ManageBaseForPapers || moduleR.Administration || ((moduleR.CreateBaseForPaper || moduleR.EditBaseForPaper) && call.Owner.Id == idUser)); break; } View.IdSubmission = idSubmission; View.IdSubmitterType = submission.Type.Id; View.TryToComplete = false; dtoRevisionRequest rev = submission.GetWorkingRevision(); View.InitializeView(Service.RevisionWithFileToUpload(idRevision)); DateTime InitTime = DateTime.Now; Boolean allowTimeRevision = rev.AllowSubmission(InitTime); Boolean allowSave = false; Boolean allowCompleteSubmission = false; if (!allowTimeRevision && (rev.Status == RevisionStatus.Request || rev.Status == RevisionStatus.RequestAccepted || rev.Status == RevisionStatus.Required)) { View.DisplayRevisionTimeExpired(); switch (type) { case CallForPaperType.CallForBids: View.SendUserAction(idCommunity, idModule, idRevision, ModuleCallForPaper.ActionType.ViewRevision); break; case CallForPaperType.RequestForMembership: View.SendUserAction(idCommunity, idModule, idRevision, ModuleRequestForMembership.ActionType.ViewRevision); break; } } else { idSubmission = (submission == null) ? 0 : submission.Id; View.AllowDeleteSubmission = false; //View.AllowDeleteSubmission = (submission != null && submission.Deleted == BaseStatusDeleted.None && submission.Status == SubmissionStatus.draft); allowCompleteSubmission = allowTimeRevision && (rev != null && rev.Deleted == BaseStatusDeleted.None && rev.AllowSave); allowSave = allowCompleteSubmission; View.InitSubmissionTime = InitTime; switch (type) { case CallForPaperType.CallForBids: View.SendUserAction(idCommunity, idModule, idRevision, ModuleCallForPaper.ActionType.ViewRevision); break; case CallForPaperType.RequestForMembership: View.SendUserAction(idCommunity, idModule, idRevision, ModuleRequestForMembership.ActionType.ViewRevision); break; } } View.AllowSave = allowSave; View.AllowCompleteSubmission = allowCompleteSubmission; LoadRevision(call, submission, rev); if (allowView) { if (View.PreloadView == CallStatusForSubmitters.Revisions) { View.SetActionUrl(CallStandardAction.ViewRevisions, RootObject.ViewRevisions(type, CallStandardAction.List, containerIdCommunity, CallStatusForSubmitters.Revisions)); } else { View.SetActionUrl(CallStandardAction.List, RootObject.ViewCalls(idCall, type, CallStandardAction.List, containerIdCommunity, View.PreloadView)); } } } }
public void InitView(Boolean forPublicCall) { Boolean allowAdmin = false; Boolean isAnonymousUser = UserContext.isAnonymous; long idCall = View.PreloadIdCall; CallForPaperType type = ServiceCall.GetCallType(idCall); long idSubmission = View.PreloadedIdSubmission; long idRevision = View.PreloadedIdRevision; Guid uniqueId = View.PreloadedUniqueID; View.IsAdvance = ServiceCall.CallIsAdvanced(idCall); dtoSubmissionRevision submission = ServiceCall.GetSubmissionWithRevisions(idSubmission, true); int idModule = (type == CallForPaperType.CallForBids) ? ServiceCall.ServiceModuleID() : ServiceRequest.ServiceModuleID(); dtoBaseForPaper call = ServiceCall.GetDtoBaseCall(idCall); int idCommunity = SetCallCurrentCommunity(call); View.isAnonymousSubmission = forPublicCall; View.IdCall = idCall; View.IdCallModule = idModule; View.IdCallCommunity = idCommunity; View.CallType = type; View.IdSubmission = idSubmission; if (idRevision == 0 && submission != null) { idRevision = submission.GetIdLastActiveRevision(); } View.IdRevision = idRevision; if (submission == null || submission.Owner == null) { View.DisplayUnknownSubmission(idCommunity, idModule, idSubmission, type); } else { if (idCall != submission.IdCall) { idCall = submission.IdCall; call = ServiceCall.GetDtoBaseCall(idCall); idCommunity = SetCallCurrentCommunity(call); type = (call != null) ? call.Type : type; idModule = (type == CallForPaperType.CallForBids) ? ServiceCall.ServiceModuleID() : ServiceRequest.ServiceModuleID(); View.IdCall = idCall; View.IdCallModule = idModule; View.IdCallCommunity = idCommunity; View.CallType = type; } if (call == null) { View.DisplayUnknownCall(idCommunity, idModule, idCall, type); if (!isAnonymousUser) { View.SetActionUrl(CallStandardAction.List, RootObject.ViewCalls(type, CallStandardAction.List, View.PreloadIdOtherCommunity, View.PreloadView)); } } else if (isAnonymousUser && !forPublicCall) { if (call.IsPublic && submission.IsAnonymous) { View.GoToUrl(RootObject.ViewSubmission(type, idCall, idSubmission, idRevision, uniqueId, true, false, View.PreloadView, View.PreloadIdOtherCommunity, 0)); } else { View.DisplaySessionTimeout(); } } else if (isAnonymousUser && forPublicCall && !call.IsPublic) { View.DisplayCallUnavailableForPublic(); } else { int idUser = UserContext.CurrentUserID; litePerson currenUser = GetCurrentUser(ref idUser); Boolean allowView = false; View.CallRepository = call.GetRepositoryIdentifier(); switch (type) { case CallForPaperType.CallForBids: ModuleCallForPaper module = ServiceCall.CallForPaperServicePermission(idUser, idCommunity); allowView = (submission.Owner.Id == idUser || module.ManageCallForPapers || module.Administration || ((module.CreateCallForPaper || module.EditCallForPaper) && call.Owner.Id == idUser)); allowAdmin = (View.PreloadFromManagement && (module.ManageCallForPapers || module.Administration || ((module.CreateCallForPaper || module.EditCallForPaper) && call.Owner.Id == idUser))); break; case CallForPaperType.RequestForMembership: ModuleRequestForMembership moduleR = ServiceCall.RequestForMembershipServicePermission(idUser, idCommunity); allowView = (submission.Owner.Id == idUser || moduleR.ManageBaseForPapers || moduleR.Administration || ((moduleR.CreateBaseForPaper || moduleR.EditBaseForPaper) && call.Owner.Id == idUser)); allowAdmin = (View.PreloadFromManagement && (moduleR.ManageBaseForPapers || moduleR.Administration || ((moduleR.CreateBaseForPaper || moduleR.EditBaseForPaper) && call.Owner.Id == idUser))); break; } if (View.IsAdvance) { Advanced.SubmissionListPermission permission = ServiceCall.SubmissionCanList(idCall); if ((permission & Advanced.SubmissionListPermission.View) == Advanced.SubmissionListPermission.View) { allowView = true; } if ((permission & Advanced.SubmissionListPermission.Manage) == Advanced.SubmissionListPermission.Manage) { allowAdmin = true; } } View.ShowAdministrationTools = allowAdmin; CallStatusForSubmitters fromView = View.PreloadView; if (fromView == CallStatusForSubmitters.None) { fromView = (allowAdmin) ? CallStatusForSubmitters.SubmissionClosed : CallStatusForSubmitters.Submitted; } if (!allowAdmin && allowView) { View.SetActionUrl(CallStandardAction.List, RootObject.ViewCalls(type, CallStandardAction.List, View.PreloadIdOtherCommunity, fromView)); } else if (allowAdmin) { View.SetActionUrl(CallStandardAction.Manage, RootObject.ViewSubmissions(type, idCall, idSubmission, idRevision, fromView, View.PreloadFilterSubmission, View.PreloadOrderSubmission, View.PreloadAscending, View.PreloadPageIndex, View.PreloadPageSize)); } if (submission.Deleted != BaseStatusDeleted.None && !allowAdmin) { View.DisplaySubmissionUnavailable(); } else if (allowAdmin || allowView || (isAnonymousUser && submission.IsAnonymous && submission.UniqueId == View.PreloadedUniqueID)) { LoadSubmission(call, submission, idUser, allowAdmin); } else { View.DisplayNoPermission(idCommunity, idModule); } } } bool ShowSendIntegration = false; if (call.AdvacedEvaluation) { ShowSendIntegration = ServiceCall.ShowSendIntegration(idSubmission, View.CommissionId); } View.ShowHideSendIntegration(ShowSendIntegration); if (View.IsAdvance) { if (!ServiceCall.SignSubmissionIsNotExpired(idSubmission, idRevision, DateTime.Now, DateTime.Now)) { bool ShowMessage = (submission.Status == SubmissionStatus.waitforsignature); View.DisplayOutOfTime("Expired", ShowMessage, false); } } }
public void InitView(Boolean forPublicCall) { long idCall = View.PreloadIdCall; Boolean skinInitialized = false; dtoRequest call = null; CallForPaperType type = Service.GetCallType(idCall); call = Service.GetDtoRequest(idCall); if (type == CallForPaperType.None || call == null) { type = CallForPaperType.RequestForMembership; } View.CallType = type; int idCommunity = SetCallCurrentCommunity(call); int idModule = Service.ServiceModuleID(); Boolean hasPermissionToSubmit = Service.IsCallAvailableByUser(idCall, UserContext.CurrentUserID); if (call == null) { View.LoadUnknowCall(idCommunity, idModule, idCall, type); } else if (UserContext.isAnonymous && !forPublicCall) { if (call.IsPublic) { View.GoToUrl(RootObject.SubmitToCallBySubmitterType(type, idCall, call.IsPublic, View.PreloadedIdSubmission, View.PreloadedIdSubmitter, View.FromPublicList, View.PreloadView, View.PreloadIdOtherCommunity)); } else { View.DisplaySessionTimeout(); } } else if (UserContext.isAnonymous && forPublicCall && !call.IsPublic) { View.DisplayCallUnavailableForPublic(); } else if (!hasPermissionToSubmit && call.IsPublic && forPublicCall == false) { View.GoToUrl(RootObject.SubmitToCallBySubmitterType(type, idCall, call.IsPublic, View.IdSubmission, View.PreloadedIdSubmitter, View.FromPublicList, View.PreloadView, View.PreloadIdOtherCommunity)); } else { int idUser = UserContext.CurrentUserID; litePerson currenUser = GetCurrentUser(ref idUser); View.isAnonymousSubmission = forPublicCall; View.TryToComplete = false; ModuleRequestForMembership module = Service.RequestForMembershipServicePermission(idUser, idCommunity); View.IdCallModule = idModule; if (call == null) { View.LoadUnknowCall(idCommunity, idModule, idCall, type); if (module.ViewBaseForPapers) { if (View.FromPublicList) { View.SetActionUrl(CallStandardAction.List, RootObject.PublicCollectorCalls(CallForPaperType.RequestForMembership, idCall, View.PreloadIdCommunity)); } else if (!UserContext.isAnonymous) { View.SetActionUrl(CallStandardAction.List, RootObject.ViewCalls(idCall, CallForPaperType.RequestForMembership, CallStandardAction.List, (module.ViewBaseForPapers) ? idCommunity : View.PreloadIdOtherCommunity, View.PreloadView)); } } } else if (call.Status <= CallForPaperStatus.Published || call.Status == CallForPaperStatus.SubmissionClosed || call.Status == CallForPaperStatus.SubmissionsLimitReached) { View.DisplayCallUnavailable(call.Status); if (module.ViewBaseForPapers) { if (View.FromPublicList) { View.SetActionUrl(CallStandardAction.List, RootObject.PublicCollectorCalls(CallForPaperType.RequestForMembership, idCall, View.PreloadIdCommunity)); } else if (!UserContext.isAnonymous) { View.SetActionUrl(CallStandardAction.List, RootObject.ViewCalls(idCall, CallForPaperType.RequestForMembership, CallStandardAction.List, (module.ViewBaseForPapers) ? idCommunity : View.PreloadIdOtherCommunity, View.PreloadView)); } } if (forPublicCall) { View.InitializeView(Service.GetExternalContext(idCall), Service.CallWithFileToUpload(idCall, 0)); skinInitialized = true; } } else if (module.ViewBaseForPapers || call.IsPublic || hasPermissionToSubmit) { long idSubmission = View.PreloadedIdSubmission; View.IdCall = idCall; View.CallRepository = call.GetRepositoryIdentifier(); if (module.ViewBaseForPapers || hasPermissionToSubmit) { if (View.FromPublicList) { View.SetActionUrl(CallStandardAction.List, RootObject.PublicCollectorCalls(CallForPaperType.RequestForMembership, idCall, View.PreloadIdCommunity)); } else if (!UserContext.isAnonymous) { View.SetActionUrl(CallStandardAction.List, RootObject.ViewCalls(idCall, CallForPaperType.RequestForMembership, CallStandardAction.List, (module.ViewBaseForPapers) ? idCommunity : View.PreloadIdOtherCommunity, View.PreloadView)); } } // Find active submission dtoSubmissionRevision submission = null; if (forPublicCall && UserContext.isAnonymous) { submission = Service.GetActiveUserSubmission(idCall, UserContext.CurrentUserID, idSubmission, View.PreloadedUniqueID); if (submission != null && submission.Owner.Id != idUser) { submission = null; } } else { submission = Service.GetActiveUserSubmission(idCall, UserContext.CurrentUserID, idSubmission); } if (forPublicCall) { View.InitializeView(Service.GetExternalContext(idCall), Service.CallWithFileToUpload(idCall, 0)); skinInitialized = true; } else { SubmitterType submitter = null; if (submission != null) { submitter = Service.GetSubmitterType(submission.Type.Id); } else { submitter = Service.GetSubmitterType(View.PreloadedIdSubmitter); } if (idSubmission == 0 && submitter != null && submitter.AllowMultipleSubmissions && Service.GetSubmissionCountBySubmitter(idCall, UserContext.CurrentUserID, submitter.Id) < submitter.MaxMultipleSubmissions) { submission = null; } View.InitializeView(Service.CallWithFileToUpload(idCall, (submission == null) ? 0 : submission.Type.Id)); } DateTime InitTime = DateTime.Now; if (call.StartDate > InitTime) { View.DisplaySubmissionTimeBefore(call.StartDate); } else if ((submission == null && !call.AllowSubmission(InitTime)) || (submission != null && submission.ExtensionDate.HasValue && call.AllowLateSubmission(InitTime, submission.ExtensionDate.Value))) { View.DisplaySubmissionTimeAfter(call.EndDate); } else if (submission != null && (submission.Deleted != BaseStatusDeleted.None || (submission.Status != SubmissionStatus.none && submission.Status != SubmissionStatus.draft))) { if (forPublicCall) { View.GoToUrl(RootObject.ViewSubmission(call.Type, call.Id, submission.Id, submission.UniqueId, true, View.FromPublicList, CallStatusForSubmitters.Submitted, View.PreloadIdOtherCommunity, 0)); } else if (!UserContext.isAnonymous) { View.GoToUrl(RootObject.ViewSubmission(call.Type, call.Id, submission.Id, View.FromPublicList, CallStatusForSubmitters.Submitted, View.PreloadIdOtherCommunity, 0)); } } else if (submission != null && submission.Revisions.Where(r => r.Type != RevisionType.Original).Any()) { if (!forPublicCall || (forPublicCall && !UserContext.isAnonymous)) { View.GoToUrl(RootObject.UserReviewCall(call.Type, call.Id, submission.Id, submission.GetIdWorkingRevision(), CallStatusForSubmitters.Submitted, View.PreloadIdOtherCommunity)); } else { View.DisplayCallUnavailableForPublic(); } } else { idSubmission = (submission == null) ? 0 : submission.Id; long idRevision = (submission == null) ? 0 : submission.GetIdOriginal(); View.IdRevision = idRevision; View.IdSubmission = idSubmission; View.AllowDeleteSubmission = false; Boolean allowSave = false; Boolean allowCompleteSubmission = false; LoadCall(call, submission); View.AllowSubmitterChange = false; if (module.AddSubmission || call.IsPublic || hasPermissionToSubmit) { View.AllowDeleteSubmission = (submission != null && submission.Deleted == BaseStatusDeleted.None && submission.Status == SubmissionStatus.draft); allowCompleteSubmission = (submission != null && submission.Deleted == BaseStatusDeleted.None && submission.Status == SubmissionStatus.draft); allowSave = (submission != null && submission.Deleted == BaseStatusDeleted.None && submission.Status == SubmissionStatus.draft); View.AllowSave = allowSave; View.AllowCompleteSubmission = allowCompleteSubmission; if (submission == null) { View.IdSubmission = 0; View.AllowSubmitterChange = true; View.SendStartSubmission(idCommunity, idModule, idCall, ModuleRequestForMembership.ActionType.StartSubmission); } else { View.InitSubmissionTime = InitTime; //if (submission.Status >= SubmissionStatus.submitted && viewList == CallStatusForSubmitters.SubmissionOpened) // viewList = CallStatusForSubmitters.Submitted; View.AllowSubmitterSelection = false; View.IdSubmission = submission.Id; LoadSections(idCall, submission.Type.Id, submission.Id, idRevision); View.SendUserAction(idCommunity, idModule, submission.Id, ModuleRequestForMembership.ActionType.ViewSubmission); } } else { View.AllowSave = allowSave; View.AllowCompleteSubmission = allowCompleteSubmission; if (idSubmission == 0) { View.DisableSubmitterTypesSelection(); } } } } else { View.DisplayNoPermission(idCommunity, idModule); } } if (forPublicCall && !skinInitialized) { View.InitializeEmptyView(); } }
public void InitView() { CallStandardAction action = View.PreloadAction; if (action != CallStandardAction.Manage) { action = CallStandardAction.List; } View.CurrentAction = action; CallForPaperType type = View.PreloadCallType; long idCall = View.PreloadIdCall; dtoBaseForPaper call = Service.GetDtoBaseCall(idCall); int idCommunity = 0; if (call != null) { type = call.Type; if (call.IsPortal) { idCommunity = 0; } else if (call.Community != null) { idCommunity = call.Community.Id; } else { idCommunity = View.PreloadIdCommunity; } View.IdCallCommunity = idCommunity; } else { idCommunity = SetCallsCurrentCommunity(); } View.CallType = type; View.IdCall = idCall; View.CurrentView = View.PreloadView; if (UserContext.isAnonymous) { View.DisplaySessionTimeout(); } else { Int32 idUser = UserContext.CurrentUserID; Boolean allowView = false; Boolean allowManage = false; Int32 idCallModule = Service.ServiceModuleID(); switch (type) { case CallForPaperType.CallForBids: ModuleCallForPaper module = Service.CallForPaperServicePermission(idUser, idCommunity); allowView = (module.ViewCallForPapers || module.Administration || module.ManageCallForPapers); allowManage = (module.CreateCallForPaper || module.Administration || module.ManageCallForPapers || module.EditCallForPaper); break; case CallForPaperType.RequestForMembership: ModuleRequestForMembership moduleR = Service.RequestForMembershipServicePermission(idUser, idCommunity); allowView = (moduleR.ViewBaseForPapers || moduleR.Administration || moduleR.ManageBaseForPapers); allowManage = (moduleR.CreateBaseForPaper || moduleR.Administration || moduleR.ManageBaseForPapers || moduleR.EditBaseForPaper); idCallModule = ServiceRequest.ServiceModuleID(); break; } switch (action) { case CallStandardAction.List: View.AllowManage = allowManage; if (allowManage) { View.SetActionUrl(CallStandardAction.Manage, RootObject.ViewCalls(idCall, type, CallStandardAction.Manage, idCommunity, View.PreloadView)); } break; case CallStandardAction.Manage: View.AllowView = true; View.SetActionUrl(CallStandardAction.List, RootObject.ViewCalls(idCall, type, CallStandardAction.List, idCommunity, View.PreloadView)); break; } View.IdCallModule = idCallModule; if (call == null) { View.DisplayUnknownCall(); } else if (allowManage) { View.AllowExport = true; View.SetContainerName(call.Name, call.Edition, call.Type); InitializeView(allowManage, idCall, type, View.PreloadFilters); } else { View.SetContainerName(call.Name, call.Edition, call.Type); View.DisplayNoPermission(idCommunity, idCallModule); } } }
public void InitView() { long idCall = View.PreloadIdCall; dtoBaseForPaper call = null; CallForPaperType type = CallService.GetCallType(idCall); if (type == CallForPaperType.None) { type = View.PreloadType; } call = CallService.GetDtoBaseCall(idCall); View.CallType = type; int idCommunity = SetCallCurrentCommunity(call); if (UserContext.isAnonymous) { View.DisplaySessionTimeout(); } else { litePerson currenUser = CurrentManager.GetLitePerson(UserContext.CurrentUserID); Boolean allowManage = false; Boolean allowView = false; Boolean allowSave = false; ModuleCallForPaper module = null; ModuleRequestForMembership moduleR = null; switch (type) { case CallForPaperType.CallForBids: module = CallService.CallForPaperServicePermission(UserContext.CurrentUserID, idCommunity); allowView = (module.ViewCallForPapers || module.Administration || module.ManageCallForPapers); allowManage = module.CreateCallForPaper || module.Administration || module.ManageCallForPapers || module.EditCallForPaper; allowSave = (module.Administration || module.ManageCallForPapers || (module.CreateCallForPaper && idCall == 0) || (call != null && module.EditCallForPaper && currenUser == call.Owner)); break; case CallForPaperType.RequestForMembership: moduleR = CallService.RequestForMembershipServicePermission(UserContext.CurrentUserID, idCommunity); allowView = (moduleR.ViewBaseForPapers || moduleR.Administration || moduleR.ManageBaseForPapers); allowManage = moduleR.CreateBaseForPaper || moduleR.Administration || moduleR.ManageBaseForPapers || moduleR.EditBaseForPaper; allowSave = (moduleR.Administration || moduleR.ManageBaseForPapers || (moduleR.CreateBaseForPaper && idCall == 0) || (call != null && moduleR.EditBaseForPaper && currenUser == call.Owner)); break; default: break; } int idModule = (type == CallForPaperType.CallForBids) ? CallService.ServiceModuleID() : RequestService.ServiceModuleID(); View.IdCallModule = idModule; if (call == null) { View.LoadUnknowCall(idCommunity, idModule, idCall, type); } else if (allowManage || allowSave) { View.AllowSave = allowSave && (!CallService.CallHasSubmissions(idCall)); View.IdCall = idCall; View.SetActionUrl(CallStandardAction.Manage, RootObject.ViewCalls(type, CallStandardAction.Manage, idCommunity, View.PreloadView)); if (type == CallForPaperType.CallForBids) { LoadRequiredFiles(idCall, module); View.SendUserAction(idCommunity, idModule, idCall, ModuleCallForPaper.ActionType.ViewRequestedFiles); } else { LoadRequiredFiles(idCall, moduleR); View.SendUserAction(idCommunity, idModule, idCall, ModuleRequestForMembership.ActionType.ViewRequestedFiles); } View.SetActionUrl(CallStandardAction.PreviewCall, RootObject.PreviewCall(type, idCall, idCommunity, View.PreloadView)); } else { View.DisplayNoPermission(idCommunity, idModule); } } }
public void InitView(Boolean forPublicCall) { long idSubmission = View.PreloadedIdSubmission; long idRevision = View.PreloadedIdRevision; System.Guid uniqueID = View.PreloadedUniqueID; long idCall = View.PreloadIdCall; dtoBaseForPaper call = null; CallForPaperType type = Service.GetCallType(idCall); call = Service.GetDtoBaseCall(idCall); View.CallType = type; int idCommunity = SetCallCurrentCommunity(call); int idModule = Service.ServiceModuleID(); Boolean isAnonymous = UserContext.isAnonymous; if (call == null) { View.LoadUnknowCall(idCommunity, idModule, idCall, type); } else if (isAnonymous && !forPublicCall) { if (call.IsPublic) { View.GoToUrl(RootObject.FinalMessage(type, idCall, idSubmission, idRevision, uniqueID, true, View.FromPublicList, CallStatusForSubmitters.Submitted, View.PreloadIdOtherCommunity)); } else { View.DisplaySessionTimeout(); } } else { int idUser = UserContext.CurrentUserID; litePerson currenUser = GetCurrentUser(ref idUser); View.IdCallModule = idModule; View.isAnonymousSubmission = forPublicCall; dtoLazySubmission submission = Service.GetSubmission(idCall, idSubmission, uniqueID); Boolean allowSeeList = false; Boolean hasPermissionToSubmit = false; Int32 containerIdCommunity = View.PreloadIdOtherCommunity; if (!isAnonymous && !forPublicCall) { hasPermissionToSubmit = Service.IsCallAvailableByUser(idCall, UserContext.CurrentUserID); switch (type) { case CallForPaperType.CallForBids: ModuleCallForPaper module = Service.CallForPaperServicePermission(idUser, idCommunity); allowSeeList = (module.ViewCallForPapers || module.ManageCallForPapers || module.Administration); break; case CallForPaperType.RequestForMembership: ModuleRequestForMembership moduleR = Service.RequestForMembershipServicePermission(idUser, idCommunity); allowSeeList = (moduleR.ViewBaseForPapers || moduleR.ManageBaseForPapers || moduleR.Administration); break; } } if (forPublicCall) { View.InitializeView(Service.GetExternalContext(idCall)); } if (allowSeeList || hasPermissionToSubmit) { View.SetActionUrl(CallStandardAction.List, RootObject.ViewCalls(idCall, type, CallStandardAction.List, (hasPermissionToSubmit && idCommunity > 0 && containerIdCommunity > 0 && idCommunity != containerIdCommunity) ? containerIdCommunity : idCommunity, CallStatusForSubmitters.Submitted)); } if (submission == null) { View.LoadUnknowSubmission(idCommunity, idModule, idSubmission, type); } else if (!forPublicCall && submission.Owner.Id != idUser) { View.DisplayNoPermission(idCommunity, idModule); } else { if (submission.Owner.Id == idUser || forPublicCall) { if (idRevision >= 1) { Revision rev = Service.GetRevision(idRevision); if (rev == null || (rev != null && (rev.Type == RevisionType.Original || rev.Status == RevisionStatus.Approved))) { View.SetActionUrl(CallStandardAction.ViewOwnSubmission, RootObject.ViewSubmission( type, idCall, idSubmission, idRevision, uniqueID, call.IsPublic && submission.IsAnonymous, View.FromPublicList, CallStatusForSubmitters.Submitted, (hasPermissionToSubmit && idCommunity > 0 && containerIdCommunity > 0 && idCommunity != containerIdCommunity) ? containerIdCommunity : idCommunity , 0)); } else { View.SetActionUrl(CallStandardAction.ViewOwnSubmission, RootObject.UserReviewCall(type, idCall, idSubmission, idRevision, CallStatusForSubmitters.Submitted, (hasPermissionToSubmit && idCommunity > 0 && containerIdCommunity > 0 && idCommunity != containerIdCommunity) ? containerIdCommunity : idCommunity)); } } else { View.SetActionUrl(CallStandardAction.ViewOwnSubmission, RootObject.ViewSubmission( type, idCall, idSubmission, idRevision, uniqueID, call.IsPublic && submission.IsAnonymous, View.FromPublicList, CallStatusForSubmitters.Submitted, (hasPermissionToSubmit && idCommunity > 0 && containerIdCommunity > 0 && idCommunity != containerIdCommunity) ? containerIdCommunity : idCommunity , 0) ); } switch (type) { case CallForPaperType.CallForBids: View.LoadDefaultMessage(); break; case CallForPaperType.RequestForMembership: dtoRequest request = RequestService.GetRequestMessages(idCall); View.LoadMessage((request == null) ? "" : request.EndMessage); break; } } else { View.DisplayNoPermission(idCommunity, idModule); } } } }
public void InitView(Boolean allowUseOfDss) { CallStandardAction action = View.PreloadAction; long idCall = View.PreloadIdCall; dtoBaseForPaper call = null; CallForPaperType type = View.PreloadType; if (idCall == 0) { action = CallStandardAction.Add; } else { type = CallService.GetCallType(idCall); call = CallService.GetDtoBaseCall(idCall); action = CallStandardAction.Edit; } View.CallType = type; View.CurrentAction = action; int idCommunity = SetCallCurrentCommunity(action, call); if (UserContext.isAnonymous) { View.DisplaySessionTimeout(); } else { litePerson currenUser = CurrentManager.GetLitePerson(UserContext.CurrentUserID); Boolean allowManage = false; Boolean allowView = false; Boolean allowSave = false; switch (type) { case CallForPaperType.CallForBids: ModuleCallForPaper module = CallService.CallForPaperServicePermission(UserContext.CurrentUserID, idCommunity); allowView = (module.ViewCallForPapers || module.Administration || module.ManageCallForPapers); allowManage = module.CreateCallForPaper || module.Administration || module.ManageCallForPapers || module.EditCallForPaper; allowSave = (module.Administration || module.ManageCallForPapers || (module.CreateCallForPaper && idCall == 0) || (call != null && module.EditCallForPaper && currenUser == call.Owner)); break; case CallForPaperType.RequestForMembership: ModuleRequestForMembership moduleR = CallService.RequestForMembershipServicePermission(UserContext.CurrentUserID, idCommunity); allowView = (moduleR.ViewBaseForPapers || moduleR.Administration || moduleR.ManageBaseForPapers); allowManage = moduleR.CreateBaseForPaper || moduleR.Administration || moduleR.ManageBaseForPapers || moduleR.EditBaseForPaper; allowSave = (moduleR.Administration || moduleR.ManageBaseForPapers || (moduleR.CreateBaseForPaper && idCall == 0) || (call != null && moduleR.EditBaseForPaper && currenUser == call.Owner)); break; default: break; } int idModule = (type == CallForPaperType.CallForBids) ? CallService.ServiceModuleID() : RequestService.ServiceModuleID(); View.IdCallModule = idModule; if (call == null && action == CallStandardAction.Edit) { View.LoadUnknowCall(idCommunity, idModule, idCall, type); } else if (allowManage || allowSave) { View.AllowSave = allowSave; View.IdCall = idCall; LoadCallStatus(idCall, call); if (action == CallStandardAction.Add) { View.LoadEmptyCall(); View.AllowStatusEdit = false; View.ForPortal = (idCommunity == 0); } else { View.ForPortal = (call != null && call.IsPortal); View.AllowStatusEdit = AllowStatusEdit(idCall, type, call, allowSave); View.LoadCall(call); } List <lm.Comol.Core.Wizard.NavigableWizardItem <WizardCallStep> > steps = CallService.GetAvailableSteps(idCall, WizardCallStep.GeneralSettings, type); View.SetActionUrl(CallStandardAction.Manage, RootObject.ViewCalls(idCall, type, CallStandardAction.Manage, idCommunity, View.PreloadView)); View.LoadWizardSteps(idCall, type, idCommunity, steps); if (type == CallForPaperType.CallForBids) { View.LoadEvaluationSettings(CallService.GetEvaluationSettings(idCall, allowUseOfDss)); View.SendUserAction(idCommunity, idModule, idCall, (action == CallStandardAction.Add) ? ModuleCallForPaper.ActionType.StartCallCreation : ModuleCallForPaper.ActionType.StartCallEdit); } else { View.SendUserAction(idCommunity, idModule, idCall, (action == CallStandardAction.Add) ? ModuleRequestForMembership.ActionType.StartRequestCreation : ModuleRequestForMembership.ActionType.StartRequestEdit); } if (steps.Where(s => s.Id == WizardCallStep.SubmittersType && (s.Status == Core.Wizard.WizardItemStatus.valid || s.Status == Core.Wizard.WizardItemStatus.warning)).Any()) { View.SetActionUrl(CallStandardAction.PreviewCall, RootObject.PreviewCall(type, idCall, idCommunity, View.PreloadView)); } } else { View.DisplayNoPermission(idCommunity, idModule); } } }
public void InitView() { Boolean allowAdmin = false; Boolean isAnonymousUser = UserContext.isAnonymous; long idCall = View.PreloadIdCall; CallForPaperType type = ServiceCall.GetCallType(idCall); long idSubmission = View.PreloadedIdSubmission; long idRevision = View.PreloadedIdRevision; Guid uniqueId = View.PreloadedUniqueID; dtoSubmissionRevision submission = ServiceCall.GetSubmissionWithRevisions(idSubmission, true); int idModule = (type == CallForPaperType.CallForBids) ? ServiceCall.ServiceModuleID() : ServiceRequest.ServiceModuleID(); dtoBaseForPaper call = ServiceCall.GetDtoBaseCall(idCall); int idCommunity = SetCallCurrentCommunity(call); View.isAnonymousSubmission = true; View.IdCall = idCall; View.IdCallModule = idModule; View.IdCallCommunity = idCommunity; View.CallType = type; View.IdSubmission = idSubmission; if (idRevision == 0 && submission != null) { idRevision = submission.GetIdLastActiveRevision(); } View.IdRevision = idRevision; if (submission == null || submission.Owner == null || (submission != null && submission.UniqueId != uniqueId)) { View.DisplayUnknownSubmission(idCommunity, idModule, idSubmission, type); } else { if (idCall != submission.IdCall) { idCall = submission.IdCall; call = ServiceCall.GetDtoBaseCall(idCall); idCommunity = SetCallCurrentCommunity(call); type = (call != null) ? call.Type : type; idModule = (type == CallForPaperType.CallForBids) ? ServiceCall.ServiceModuleID() : ServiceRequest.ServiceModuleID(); View.IdCall = idCall; View.IdCallModule = idModule; View.IdCallCommunity = idCommunity; View.CallType = type; } if (call == null) { View.DisplayUnknownCall(idCommunity, idModule, idCall, type); if (!isAnonymousUser) { View.SetActionUrl(CallStandardAction.List, RootObject.ViewCalls(type, CallStandardAction.List, idCommunity, View.PreloadView)); } } else if (isAnonymousUser && !submission.IsAnonymous) { View.DisplaySessionTimeout(); } else if (isAnonymousUser && !call.IsPublic) { View.DisplayCallUnavailableForPublic(); } else { int idUser = UserContext.CurrentUserID; litePerson currenUser = GetCurrentUser(ref idUser); Boolean allowView = false; View.CallRepository = call.GetRepositoryIdentifier(); switch (type) { case CallForPaperType.CallForBids: ModuleCallForPaper module = ServiceCall.CallForPaperServicePermission(idUser, idCommunity); allowView = (submission.Owner.Id == idUser || module.ManageCallForPapers || module.Administration || ((module.CreateCallForPaper || module.EditCallForPaper) && call.Owner.Id == idUser)); allowAdmin = (module.ManageCallForPapers || module.Administration || ((module.CreateCallForPaper || module.EditCallForPaper) && call.Owner.Id == idUser)); break; case CallForPaperType.RequestForMembership: ModuleRequestForMembership moduleR = ServiceCall.RequestForMembershipServicePermission(idUser, idCommunity); allowView = (submission.Owner.Id == idUser || moduleR.ManageBaseForPapers || moduleR.Administration || ((moduleR.CreateBaseForPaper || moduleR.EditBaseForPaper) && call.Owner.Id == idUser)); allowAdmin = (moduleR.ManageBaseForPapers || moduleR.Administration || ((moduleR.CreateBaseForPaper || moduleR.EditBaseForPaper) && call.Owner.Id == idUser)); break; } View.InitializeView(ServiceCall.GetExternalContext(idCall)); CallStatusForSubmitters fromView = View.PreloadView; if (fromView == CallStatusForSubmitters.None) { fromView = (allowAdmin) ? CallStatusForSubmitters.SubmissionClosed : CallStatusForSubmitters.Submitted; } if (allowView) { if (!isAnonymousUser) { View.SetActionUrl(CallStandardAction.List, RootObject.ViewCalls(type, CallStandardAction.List, idCommunity, fromView)); } else if (View.FromPublicList) { View.SetActionUrl(CallStandardAction.List, RootObject.PublicCollectorCalls(type, idCall, idCommunity)); } } if (submission.Deleted != BaseStatusDeleted.None && !allowAdmin) { View.DisplaySubmissionUnavailable(); } else if (allowAdmin || allowView || (isAnonymousUser && submission.IsAnonymous && submission.UniqueId == View.PreloadedUniqueID)) { LoadSubmission(call, submission, idUser, allowAdmin); } else { View.DisplayNoPermission(idCommunity, idModule); } } } }
public void InitView() { long idCall = View.PreloadIdCall; dtoBaseForPaper call = null; CallForPaperType type = CallService.GetCallType(idCall); if (type == CallForPaperType.None) { type = View.PreloadType; } call = CallService.GetDtoBaseCall(idCall); View.CallType = type; int idCommunity = SetCallCurrentCommunity(call); if (UserContext.isAnonymous) { View.DisplaySessionTimeout(); } else { litePerson currenUser = CurrentManager.GetLitePerson(UserContext.CurrentUserID); Boolean allowManage = false; Boolean allowView = false; Boolean allowSave = false; ModuleCallForPaper module = null; ModuleRequestForMembership moduleR = null; switch (type) { case CallForPaperType.CallForBids: module = CallService.CallForPaperServicePermission(UserContext.CurrentUserID, idCommunity); allowView = (module.ViewCallForPapers || module.Administration || module.ManageCallForPapers); allowManage = module.CreateCallForPaper || module.Administration || module.ManageCallForPapers || module.EditCallForPaper; allowSave = (module.Administration || module.ManageCallForPapers || (module.CreateCallForPaper && idCall == 0) || (call != null && module.EditCallForPaper && currenUser == call.Owner)); break; case CallForPaperType.RequestForMembership: moduleR = CallService.RequestForMembershipServicePermission(UserContext.CurrentUserID, idCommunity); allowView = (moduleR.ViewBaseForPapers || moduleR.Administration || moduleR.ManageBaseForPapers); allowManage = moduleR.CreateBaseForPaper || moduleR.Administration || moduleR.ManageBaseForPapers || moduleR.EditBaseForPaper; allowSave = (moduleR.Administration || moduleR.ManageBaseForPapers || (moduleR.CreateBaseForPaper && idCall == 0) || (call != null && moduleR.EditBaseForPaper && currenUser == call.Owner)); break; default: break; } int idModule = (type == CallForPaperType.CallForBids) ? CallService.ServiceModuleID() : RequestService.ServiceModuleID(); View.IdCallModule = idModule; if (call == null) { View.LoadUnknowCall(idCommunity, idModule, idCall, type); } else if (allowManage || allowSave) { View.AllowSave = allowSave; View.IdCall = idCall; View.SetActionUrl(CallStandardAction.Manage, RootObject.ViewCalls(idCall, type, CallStandardAction.Manage, idCommunity, View.PreloadView)); List <lm.Comol.Core.Wizard.NavigableWizardItem <WizardCallStep> > steps = CallService.GetAvailableSteps(idCall, WizardCallStep.NotificationTemplateMail, type); View.LoadWizardSteps(idCall, type, idCommunity, steps); LoadTemplate(idCall); if (type == CallForPaperType.CallForBids) { View.SendUserAction(idCommunity, idModule, idCall, ModuleCallForPaper.ActionType.EditManagerTemplate); } else { View.SendUserAction(idCommunity, idModule, idCall, ModuleRequestForMembership.ActionType.EditManagerTemplate); } if (steps.Where(s => s.Id == WizardCallStep.SubmittersType && (s.Status == Core.Wizard.WizardItemStatus.valid || s.Status == Core.Wizard.WizardItemStatus.warning)).Any()) { View.SetActionUrl(CallStandardAction.PreviewCall, RootObject.PreviewCall(type, idCall, idCommunity, View.PreloadView)); } } else { View.DisplayNoPermission(idCommunity, idModule); } } }