Example #1
0
        private static void testMerge4(string type, string img1, string img2, string img3, string img4, Merge4LayoutEnum layout = Merge4LayoutEnum.Merge4S)
        {
            var m1     = MergeProvider.Merge4Images(img1, img2, img3, img4, layout, 250);
            var image1 = MergeProvider.ConvertToImage(m1);
            var m1Path = Path.Combine(AppDomain.CurrentDomain.BaseDirectory, type + "-" + layout.ToString() + ".png");

            if (File.Exists(m1Path))
            {
                File.Delete(m1Path);
            }
            image1.Save(m1Path);
        }
Example #2
0
        private static Image testMerge(string type, List <string> images, string text)
        {
            var m1     = MergeProvider.Merge9Images(images, text, 344);
            var image1 = MergeProvider.ConvertToImage(m1);

            return(image1);
            //var m1Path = Path.Combine(AppDomain.CurrentDomain.BaseDirectory + "/images/merge", type + ".png");
            //if (File.Exists(m1Path))
            //{
            //    File.Delete(m1Path);
            //}
            //image1.Save(m1Path);
        }
Example #3
0
 private void ValidateUserSecurity(MergeProvider mergeProvider)
 {
     IFieldLevelSecurityService fieldLevelSecurityService =
         ApplicationContext.Current.Services.Get<IFieldLevelSecurityService>(true);
     if (fieldLevelSecurityService != null)
     {
         IList<string> sourceProperties = new List<string>();
         IList<string> targetProperties = new List<string>();
         foreach (MergePropertyMap mergePropertyMap in mergeProvider.MergeMaps)
         {
             if (mergePropertyMap != null)
             {
                 sourceProperties.Add(mergePropertyMap.SourceProperty);
                 targetProperties.Add(mergePropertyMap.TargetProperty);
             }
         }
         if ((fieldLevelSecurityService.GetAccessForProperties((IPersistentEntity) mergeProvider.Source.EntityData, sourceProperties).
                 Values.Any(value => value < FieldAccess.ReadWrite)) ||
             (fieldLevelSecurityService.GetAccessForProperties((IPersistentEntity) mergeProvider.Target.EntityData, targetProperties).
                 Values.Any(value => value < FieldAccess.ReadWrite)))
         {
             throw new ValidationException(GetLocalResourceObject("error_Security_NoAccess").ToString());
         }
     }
 }
Example #4
0
    protected void Page_Init(object sender, EventArgs e)
    {
        if (DialogService.DialogParameters.ContainsKey("selectionContextKey"))
        {
            if (!DialogService.DialogParameters.ContainsKey("MergeProvider"))
            {
                Type type = EntityService.EntityType;

                string key = DialogService.DialogParameters["selectionContextKey"].ToString();
                ISelectionService srv = SelectionServiceRequest.GetSelectionService();
                ISelectionContext selectionContext = srv.GetSelectionContext(key);
                IList<string> list = selectionContext.GetSelectedIds();
                object source = GetEntity(type, list[0]);
                object target = GetEntity(type, list[1]);

                MergeProvider mergeProvider = new MergeProvider(type, type);
                MatchEntitySource targetEntity = new MatchEntitySource(type, target, list[1]);
                MatchEntitySource sourceEntity = new MatchEntitySource(type, source, list[0]);
                mergeProvider.Source = sourceEntity;
                mergeProvider.Target = targetEntity;
                //Verify the user has read write permissions for every property in the configuration mappings.
                ValidateUserSecurity(mergeProvider);
                SessionMergeProvider = mergeProvider;

                IList<MergeRecordView> mergeView = mergeProvider.GetMergeView();
                grdMerge.DataSource = mergeView;
                grdMerge.DataBind();
                DialogService.DialogParameters.Remove("MergeProvider");
                DialogService.DialogParameters.Add("MergeProvider", mergeProvider);
            }
            else
            {
                SessionMergeProvider = DialogService.DialogParameters["MergeProvider"] as MergeProvider;
            }
        }
    }