Ejemplo n.º 1
0
        public static void PasteItem(ISiteSetting siteSetting, object Item, Folder folder)
        {
            Folder f = folder;

            if (Item as SPListItem == null)
            {
                f = (Folder)Item;
            }

            FileCopyNameForm fileCopyNameForm = new FileCopyNameForm();

            fileCopyNameForm.Initialize(false, _CopiedItemInfo.Item.Title);
            bool needsTry = true;

            IServiceManager serviceManager = ServiceManagerFactory.GetServiceManager(siteSetting.SiteSettingType);

            while (needsTry == true)
            {
                if (fileCopyNameForm.ShowDialog(null, Languages.Translate("File Name Confirmation"), 220, 400) == true)
                {
                    if (serviceManager.CheckItemCanBeCopied(siteSetting, folder, _CopiedItemInfo.Item, fileCopyNameForm.NewFileName) == true)
                    {
                        Result result =
                            serviceManager.CopyItem(siteSetting, folder, _CopiedItemInfo.Item, fileCopyNameForm.NewFileName);
                        needsTry = false;
                    }
                    else
                    {
                        fileCopyNameForm = new FileCopyNameForm();
                        fileCopyNameForm.Initialize(true, fileCopyNameForm.NewFileName);
                    }
                }
                else
                {
                    needsTry = false;
                }
            }

            if (_CopiedItemInfo.Move && true)
            {
                serviceManager.DeleteFile(siteSetting, _CopiedItemInfo.Item);
            }

            if (siteSetting.CheckInAfterCopy)
            {
                SPListItem item = new SPListItem(siteSetting.ID);
                item.WebURL = folder.GetWebUrl();
                item.URL    = folder.GetUrl().CombineUrl(fileCopyNameForm.NewFileName);
                CheckinTypes checktype = siteSetting.useMajorVersionAsDefault ? CheckinTypes.MajorCheckIn : CheckinTypes.MinorCheckIn;
                serviceManager.CheckInFile(siteSetting, item, "", checktype);
            }

            _CopiedItemInfo = null;
        }
Ejemplo n.º 2
0
        public static bool moveItem(ISiteSetting siteSetting, IItem item, Folder folder)
        {
            if (item == null)
            {
                return(false);
            }



            IServiceManager serviceManager = ServiceManagerFactory.GetServiceManager(siteSetting.SiteSettingType);

            if (serviceManager.CheckItemCanBeCopied(siteSetting, folder, item, item.Title))
            {
                Result result = serviceManager.CopyItem(siteSetting, folder, item, item.Title);
                if (result.codeResult == "Success")
                {
                    serviceManager.DeleteFile(siteSetting, item);


                    if (siteSetting.CheckInAfterCopy)
                    {
                        SPListItem tempItem = new SPListItem(siteSetting.ID);
                        tempItem.WebURL = folder.GetWebUrl();
                        tempItem.URL    = folder.GetUrl().CombineUrl(item.Title);
                        CheckinTypes checktype = siteSetting.useMajorVersionAsDefault ? CheckinTypes.MajorCheckIn : CheckinTypes.MinorCheckIn;
                        serviceManager.CheckInFile(siteSetting, item, "", checktype);
                    }

                    return(true);
                }
            }
            else
            {
                MessageBox.Show(Languages.Translate("This object could not be move"), Languages.Translate("Error"), MessageBoxButton.OK, MessageBoxImage.Error);
                return(false);
            }

            return(false);
        }