protected void AddResource_Click(object sender, ImageClickEventArgs e) { try { if (Session["KenticoUserInfo"] == null) return; var kenticoUserInfo = (UserInfo)Session["KenticoUserInfo"]; var userInfo = UserInfoProvider.GetUserInfo(kenticoUserInfo.UserName); var currentUser = new CurrentUserInfo(userInfo, true); if (!currentUser.IsAuthorizedPerUIElement("CMS.Content", "EditForm")) { return; } var theImageButton = sender as ImageButton; if (theImageButton == null) { return; } string[] row = null; if (!string.IsNullOrEmpty(theImageButton.CommandArgument)) { row = theImageButton.CommandArgument.Split(new[] { "|@|" }, StringSplitOptions.None); } var theResource = new Resource(); if (row == null || row.Length <= 0) return; theResource.Source = row[0]; theResource.URL = theResource.Source == PBSLearningMedia ? row[5] : row[1]; theResource.ResourceName = row[3]; theResource.Description = row[4]; var clientId = DistrictParms.LoadDistrictParms().ClientID; var userAliasPath = String.Concat(FORWARD_SLASH, KenticoHelper.GetKenticoMainFolderName(clientId), FORWARD_SLASH, "Users"); var provider = new TreeProvider(currentUser); var parent = provider.SelectSingleNode(CMSContext.CurrentSiteName, userAliasPath + FORWARD_SLASH + kenticoUserInfo.UserName, "en-us"); var webLink = theResource.Source == PBSLearningMedia ? Request.Url.GetLeftPart(UriPartial.Authority) + ResolveUrl("~/Services/KenticoServices/KenticoWebServices.aspx?resource=PBSLearningMedia&url=" + theResource.URL) : theResource.URL; if (parent == null) return; var ci = DataClassInfoProvider.GetDataClass(ResourceClassName); var node = CMS.DocumentEngine.TreeNode.New(ResourceClassName, provider); node.SetValue("Type", 84); // static Resource ID node.SetValue("SubType", 97); // static Resource Web-Based ID node.SetValue("Name", theResource.ResourceName); node.SetValue("DocumentName", theResource.ResourceName); node.SetValue("Description", theResource.Description); node.SetValue("DocumentCulture", "en-us"); node.SetValue("CreateDate", DateTime.Now); node.SetValue("CreatedBy", kenticoUserInfo.UserName); node.SetValue("Category", 0); node.SetValue("AttachmentName", null); node.SetValue("Grade", null); node.SetValue("Subject", null); node.SetValue("Courses", null); node.SetValue("DocRecordID", null); node.SetValue("WebLink", webLink); node.SetValue("DocumentPageTemplateID", ci.ClassDefaultPageTemplateID); node.Insert(parent.NodeID); theImageButton.ImageUrl = "~/Images/Check.png"; theImageButton.ToolTip = "Resource Added to My Docs"; theImageButton.Enabled = false; } catch (Exception ex) { throw ex; } }
private List<Resource> BuildLearningRegistryResultList(EsQueryResult esQuerySearchResults) { List<EsQueryResultRow> searchResults = esQuerySearchResults.QueryResults; var list = new List<Resource>(); foreach (EsQueryResultRow row in searchResults) { var resource = new Resource { Source = NationalLearningRegistry, //ID = DataIntegrity.ConvertToInt(row.IntID), ResourceName = row.Title, Type = row.Type, ID_Encrypted = row.URL, ViewLink = String.Empty, Description = row.Description, Publisher = row.Publisher, URL = row.URL, Creator = row.Author + "<br>" + row.Creator, Created = row.Created, UsageRightsURL = row.UsageRightsURL, ViewsCount = row.ViewsCount }; list.Add(resource); } return list; }
/// <summary> /// AddResource /// </summary> /// <param name="list"></param> /// <param name="resource"></param> private void AddResource(List<Resource> list, Resource resource) { if (list.SingleOrDefault(r => r.DocumentNodeID == resource.DocumentNodeID) == null) { list.Add(resource); } }
private List<Resource> BuildResourceMediaList(IEnumerable<LearningMediaSearchResult> learningMediaSearchResults) { var list = new List<Resource>(); foreach (LearningMediaSearchResult row in learningMediaSearchResults) { var resource = new Resource { Source = PBSLearningMedia, ID = DataIntegrity.ConvertToInt(row.UniqueIdentifier), ResourceName = row.Title, Type = row.MediaType, URL = row.Url, ViewLink = String.Empty, Description = row.ShortDescription }; list.Add(resource); } return list; }