コード例 #1
0
ファイル: SecurityClient.cs プロジェクト: eCollobro/eCollabro
 /// <summary>
 /// SaveSiteFeaturesSettings
 /// </summary>
 /// <param name="siteFeaturesModel"></param>
 public void SaveSiteFeaturesSettings(SiteFeaturesModel siteFeaturesModel)
 {
     List<ModuleFeatureDC> serviceRequest = new List<ModuleFeatureDC>();
     foreach (ModuleModel module in siteFeaturesModel.Features)
     {
         foreach (ModuleFeatureModel feature in module.ModuleFeatures)
         {
             if (feature.SiteContentSettings.Count > 0)
             {
                 ModuleFeatureDC featureDC = new ModuleFeatureDC();
                 featureDC.FeatureId = feature.FeatureId;
                 featureDC.SiteContentSettings = new List<SiteContentSettingDC>();
                 foreach (SiteContentSettingModel contentSetting in feature.SiteContentSettings)
                 {
                     if (contentSetting.IsAssigned)
                     {
                         featureDC.SiteContentSettings.Add(new SiteContentSettingDC { SiteId = contentSetting.SiteId, FeatureId = contentSetting.FeatureId, ContentSettingId = contentSetting.ContentSettingId, IsAssigned = true });
                     }
                 }
                 serviceRequest.Add(featureDC);
             }
         }
     }
     ServiceResponse saveSiteFeaturesSettingsResponse = _securityProxy.Execute(opt => opt.SaveSiteFeaturesSettings(serviceRequest));
     if (saveSiteFeaturesSettingsResponse.Status != ResponseStatus.Success)
         HandleError(saveSiteFeaturesSettingsResponse.Status, saveSiteFeaturesSettingsResponse.ResponseMessage);
 }
コード例 #2
0
ファイル: SecurityClient.cs プロジェクト: eCollobro/eCollabro
        /// <summary>
        /// GetSiteFeatures
        /// </summary>
        /// <param name="siteId"></param>
        /// <returns></returns>
        public SiteFeaturesModel GetSiteFeaturesSettings(int siteId)
        {
            SiteFeaturesModel siteFeatureModel = new SiteFeaturesModel();
            ServiceResponse<SiteFeatures> siteFeaturesResponse = _securityProxy.Execute(opt => opt.GetSiteFeaturesSettings(siteId));
            if (siteFeaturesResponse.Status == ResponseStatus.Success)
            {
                siteFeatureModel.SiteId = siteFeaturesResponse.Result.SiteId;
                siteFeatureModel.SiteCode = siteFeaturesResponse.Result.SiteCode;
                siteFeatureModel.SiteName = siteFeaturesResponse.Result.SiteName;
                foreach (ModuleDC module in siteFeaturesResponse.Result.Features)
                {
                    ModuleModel moduleModel = Mapper.Map<ModuleDC, ModuleModel>(module);
                    moduleModel.ModuleFeatures = new List<ModuleFeatureModel>();
                    foreach (ModuleFeatureDC feature in module.Features)
                    {
                        ModuleFeatureModel featureModel = Mapper.Map<ModuleFeatureDC, ModuleFeatureModel>(feature);
                        featureModel.SiteContentSettings = new List<SiteContentSettingModel>();
                        foreach (SiteContentSettingDC siteContentSetting in feature.SiteContentSettings)
                        {
                            featureModel.SiteContentSettings.Add(Mapper.Map<SiteContentSettingDC, SiteContentSettingModel>(siteContentSetting));
                        }
                        moduleModel.ModuleFeatures.Add(featureModel);

                    }
                    siteFeatureModel.Features.Add(moduleModel);
                }
            }
            else
            {
                HandleError(siteFeaturesResponse.Status, siteFeaturesResponse.ResponseMessage);
            }
            return siteFeatureModel;
        }
コード例 #3
0
ファイル: SecurityClient.cs プロジェクト: eCollobro/eCollabro
        /// <summary>
        /// GetSiteFeatures
        /// </summary>
        /// <param name="siteId"></param>
        /// <returns></returns>
        public SiteFeaturesModel GetSiteFeatures(int siteId)
        {
            SiteFeaturesModel siteFeatureModel = new SiteFeaturesModel();
            ServiceResponse<SiteFeatures> siteFeaturesResponse = _securityProxy.Execute(opt => opt.GetSiteFeatures(siteId));

            if (siteFeaturesResponse.Status == ResponseStatus.Success)
            {
                siteFeatureModel.SiteId = siteFeaturesResponse.Result.SiteId;
                siteFeatureModel.SiteCode = siteFeaturesResponse.Result.SiteCode;
                siteFeatureModel.SiteName = siteFeaturesResponse.Result.SiteName;
                foreach (var feature in siteFeaturesResponse.Result.Features)
                {
                    siteFeatureModel.Features.Add(SecurityClientTranslate.Convert(feature));
                }
            }
            else
            {
                HandleError(siteFeaturesResponse.Status, siteFeaturesResponse.ResponseMessage);
            }
            return siteFeatureModel;
        }
コード例 #4
0
 public ActionResult SiteFeatures(int Id = 0)
 {
     SiteFeaturesModel siteFeatureModel = new SiteFeaturesModel();
     siteFeatureModel.SiteId = Id;
     if (Request.IsAjaxRequest())
         return PartialView(siteFeatureModel);
     else
         return View(siteFeatureModel);
 }
コード例 #5
0
 public HttpResponseMessage SaveSiteFeaturesSettings(SiteFeaturesModel siteFeatures, int siteId)
 {
     SecurityClientProcessor.UserContext.SiteId = siteId;
     SecurityClientProcessor.SaveSiteFeaturesSettings(siteFeatures);
     return Request.CreateResponse(HttpStatusCode.OK, CoreMessages.SavedSuccessfully);
 }
コード例 #6
0
 public HttpResponseMessage SaveSiteFeatures(SiteFeaturesModel siteFeatures)
 {
     string featureIds = string.Empty;
     foreach (ModuleModel module in siteFeatures.Features)
     {
         foreach (ModuleFeatureModel feature in module.ModuleFeatures)
         {
             if (feature.IsSelected)
             {
                 featureIds += feature.FeatureId + ",";
             }
         }
     }
     if (featureIds.Length > 0)
         featureIds = featureIds.Substring(0, featureIds.Length - 1);
     SecurityClientProcessor.SaveSiteFeatures(siteFeatures.SiteId, featureIds, siteFeatures.CreateNavigations);
     return Request.CreateResponse(HttpStatusCode.OK, CoreMessages.SavedSuccessfully);
 }