public static void SetCopiedItemInfo(ISiteSetting siteSetting, IItem item, bool move) { if (item.isExtracted()) { MessageBox.Show(Languages.Translate("You must archive this document before doing this operation"), Languages.Translate("Error"), MessageBoxButton.OK, MessageBoxImage.Error); return; } _CopiedItemInfo = new CopiedItemInfo(siteSetting, item, move); }
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; }