Beispiel #1
0
        /// <summary>
        /// Render this control to the output parameter specified.
        /// </summary>
        /// <param name="output"> The HTML writer to write out to </param>
        protected override void RenderContent(HtmlTextWriter output)
        {
            YariMediaRecordManager    m = new YariMediaRecordManager();
            YariMediaRecordCollection yariMediaRecordCollection = m.GetCollection(string.Empty, string.Empty, null);

            // Render Header Row
            this.headerLockEnabled = true;
            RenderRow(this.HeaderRowCssClass, );

            bool   rowflag = false;
            string rowCssClass;

            //
            // Render Records
            //
            foreach (YariMediaRecord yariMediaRecord in yariMediaRecordCollection)
            {
                if (rowflag)
                {
                    rowCssClass = defaultRowCssClass;
                }
                else
                {
                    rowCssClass = alternateRowCssClass;
                }
                rowflag = !rowflag;
                output.WriteBeginTag("tr");
                output.WriteAttribute("i", yariMediaRecord.ID.ToString());
                output.WriteLine(HtmlTextWriter.TagRightChar);
                output.Indent++;

                output.Indent--;
                output.WriteEndTag("tr");
                output.WriteLine();
            }
        }
Beispiel #2
0
        /// <summary>
        /// Render this control to the output parameter specified.
        /// </summary>
        /// <param name="output"> The HTML writer to write out to </param>
        protected override void RenderContent(HtmlTextWriter output)
        {
            YariMediaRecordCollection yariMediaRecordCollection = null;

            EnsureChildControls();

            if (Page.Cache["Yari_NewBooks"] != null)
            {
                yariMediaRecordCollection = (YariMediaRecordCollection)Page.Cache["Yari_NewBooks"];
            }
            else
            {
                YariMediaRecordManager m = new YariMediaRecordManager();

                yariMediaRecordCollection = m.SearchByPublishDate(8,
                                                                  DateTime.Now.Subtract(TimeSpan.FromDays(365)),
                                                                  DateTime.Now.Add(TimeSpan.FromDays(365)));

                Page.Cache.Add("Yari_NewBooks", yariMediaRecordCollection, null,
                               DateTime.MaxValue, TimeSpan.FromMinutes(5), System.Web.Caching.CacheItemPriority.Normal,
                               null);
            }

            bool   rowflag = false;
            string rowCssClass;

            thumbsEnabled &= yariMediaRecordCollection.Count < 25;

            //
            // Render Records
            //
            foreach (YariMediaRecord yariMediaRecord in yariMediaRecordCollection)
            {
                if (yariMediaRecord.ID == selectedID)
                {
                    rowCssClass = selectedRowCssClass;
                }
                else if (rowflag)
                {
                    rowCssClass = defaultRowCssClass;
                }
                else
                {
                    rowCssClass = alternateRowCssClass;
                }
                rowflag = !rowflag;
                output.WriteFullBeginTag("tr");

                //
                // Render Book Image If Available
                //
                if (thumbsEnabled)
                {
                    output.WriteBeginTag("td");
                    output.WriteAttribute("align", "middle");
                    output.WriteAttribute("class", rowCssClass);
                    output.Write(HtmlTextWriter.TagRightChar);
                    if (yariMediaRecord.ImageUrlSmall.Length > 0)
                    {
                        output.WriteBeginTag("img");
                        output.WriteAttribute("src", yariMediaRecord.ImageUrlSmall);
                        output.WriteAttribute("border", "0");
                        output.Write(HtmlTextWriter.TagRightChar);
                    }
                    output.WriteEndTag("td");
                }

                //
                // Render Main Representation of Record
                //
                output.WriteBeginTag("td");
                output.WriteAttribute("valign", "top");
                output.WriteAttribute("width", "100%");
                output.WriteAttribute("class", rowCssClass);
                output.Write(HtmlTextWriter.TagRightChar);
                if (selectEnabled)
                {
                    output.WriteBeginTag("a");
                    if (selectionUrl != "")
                    {
                        output.WriteAttribute("href", selectionUrl + "?id=" + yariMediaRecord.ID);
                    }
                    else
                    {
                        output.WriteAttribute("href", "javascript:" +
                                              Page.ClientScript.GetPostBackEventReference(this, "select_" + yariMediaRecord.ID));
                    }
                    output.Write(HtmlTextWriter.TagRightChar);
                    output.Write(yariMediaRecord.Title);
                    output.WriteEndTag("a");
                }
                else
                {
                    output.Write(yariMediaRecord.Title);
                }

                output.WriteEndTag("td");
                output.WriteEndTag("tr");
            }
        }
Beispiel #3
0
        /// <summary>
        /// Render this control to the output parameter specified.
        /// </summary>
        /// <param name="output"> The HTML writer to write out to </param>
        protected override void RenderContent(HtmlTextWriter output)
        {
            string searchText  = tbSearchText.Text.Trim().Replace("'", "''");
            string searchType  = ddSearchType.SelectedItem.Value;
            string cacheString = string.Empty;

            if (!emptySearchEnabled & searchText == string.Empty)
            {
                return;
            }

            EnsureChildControls();

            YariMediaRecordCollection yariMediaRecordCollection = null;

            if (cacheEnabled)
            {
                cacheString = "yariSearchCache_" +
                              searchType + "_" + searchText;
                if (Context.Cache[cacheString] != null)
                {
                    yariMediaRecordCollection = (YariMediaRecordCollection)Context.Cache[cacheString];
                }
                else
                {
                    yariMediaRecordCollection = null;
                }
            }

            if (yariMediaRecordCollection == null)
            {
                YariMediaRecordManager m = new YariMediaRecordManager();

                switch (searchType)
                {
                case "Title":
                    if (searchText == string.Empty)
                    {
                        goto default;
                    }
                    yariMediaRecordCollection = m.SearchByTitle(searchText);
                    break;

                case "Author":
                    yariMediaRecordCollection = m.SearchByAuthor(searchText);
                    break;

                case "Keywords":
                    yariMediaRecordCollection = m.SearchByKeywords(searchText);
                    break;

                case "Contents":
                    yariMediaRecordCollection = m.SearchByContents(searchText);
                    initializeSearchResult(searchText);
                    // Replaces contents text with highlighted search result
                    for (int x = 0; x < yariMediaRecordCollection.Count; x++)
                    {
                        yariMediaRecordCollection[x].ContentsText =
                            constructSearchResult(searchText, yariMediaRecordCollection[x].ContentsText);
                    }
                    break;

                case "Abstract":
                    yariMediaRecordCollection = m.SearchByAbstract(searchText);
                    initializeSearchResult(searchText);
                    // Replaces abstract text with highlighted search result
                    for (int x = 0; x < yariMediaRecordCollection.Count; x++)
                    {
                        yariMediaRecordCollection[x].AbstractText =
                            constructSearchResult(searchText, yariMediaRecordCollection[x].AbstractText);
                    }
                    break;

                default:
                    yariMediaRecordCollection = m.GetCollection(string.Empty,
                                                                "Title", null);
                    break;
                }

                if (cacheEnabled)
                {
                    Context.Cache.Add(cacheString, yariMediaRecordCollection, null,
                                      DateTime.Now.AddMinutes(5), TimeSpan.Zero,
                                      System.Web.Caching.CacheItemPriority.Normal, null);
                }
            }

            bool   rowflag = false;
            string rowCssClass;

            thumbsEnabled &= yariMediaRecordCollection.Count < 25;

            output.WriteFullBeginTag("tr");
            output.WriteBeginTag("td");
            if (thumbsEnabled)
            {
                output.WriteAttribute("colspan", "2");
            }
            output.Write(HtmlTextWriter.TagRightChar);
            output.Write(yariMediaRecordCollection.Count);
            output.Write(" results found.");
            output.WriteEndTag("td");
            output.WriteEndTag("tr");

            //
            // Render Records
            //
            YariMediaRecord yariMediaRecord;

            for (int x = 0; x < yariMediaRecordCollection.Count; x++)
            {
                yariMediaRecord = yariMediaRecordCollection[x];

                if (yariMediaRecord.ID == selectedID)
                {
                    rowCssClass = selectedRowCssClass;
                }
                else if (rowflag)
                {
                    rowCssClass = defaultRowCssClass;
                }
                else
                {
                    rowCssClass = alternateRowCssClass;
                }
                rowflag = !rowflag;
                output.WriteFullBeginTag("tr");

                //
                // Render Book Image If Available
                //
                if (thumbsEnabled)
                {
                    output.WriteBeginTag("td");
                    output.WriteAttribute("align", "middle");
                    output.WriteAttribute("class", rowCssClass);
                    output.Write(HtmlTextWriter.TagRightChar);
                    if (yariMediaRecord.ImageUrlSmall != string.Empty)
                    {
                        output.WriteBeginTag("img");
                        output.WriteAttribute("src", yariMediaRecord.ImageUrlSmall);
                        output.WriteAttribute("border", "0");
                        output.Write(HtmlTextWriter.TagRightChar);
                    }
                    output.WriteEndTag("td");
                }

                //
                // Render Main Representation of Record
                //
                output.WriteBeginTag("td");
                output.WriteAttribute("valign", "top");
                output.WriteAttribute("width", "100%");
                output.WriteAttribute("class", rowCssClass);
                output.Write(HtmlTextWriter.TagRightChar);
                if (selectEnabled)
                {
                    output.WriteBeginTag("a");
                    if (selectionUrl != "")
                    {
                        output.WriteAttribute("href", selectionUrl + "?id=" + yariMediaRecord.ID);
                    }
                    else
                    {
                        output.WriteAttribute("href", "javascript:" + Page.ClientScript.GetPostBackEventReference(this, "select_" + yariMediaRecord.ID));
                    }
                    output.Write(HtmlTextWriter.TagRightChar);
                    output.Write(yariMediaRecord.Title);
                    output.WriteEndTag("a");
                }
                else
                {
                    output.Write(yariMediaRecord.Title);
                }

                output.Write("<br>");
                if (yariMediaRecord.Authors == null)
                {
                    output.Write("Unknown");
                }
                else
                {
                    output.Write(yariMediaRecord.Authors.ToString());
                }

                if (searchType == "Abstract")
                {
                    output.WriteFullBeginTag("br");
                    output.Write(yariMediaRecord.AbstractText);
                    output.WriteFullBeginTag("br");
                }
                else if (searchType == "Contents")
                {
                    output.WriteFullBeginTag("br");
                    output.Write(yariMediaRecord.ContentsText);
                    output.WriteFullBeginTag("br");
                }

                output.WriteEndTag("td");
                output.WriteEndTag("tr");
            }
        }