
// Author : Raghavendar Thirumala (Thiru) 


// Method to build the News detail page from the data returned by the
// Webapp servlet. The HTML here may require modifications based on
// changes to the HTML/Styles used across the web site/presentation templates
function displayArticleDetail(keyword, position) {
     var keywordArray;
     if(keyword){
        keyword = decodeURIComponent(keyword);
        keywordArray = keyword.split("@#$#");
     }
     
     

    var articleDetailHtml           = "<p><strong>Sorry, this article has expired or no longer exists. Please <a href='javascript:history.go(-1);'>revise or try a new search.</a></p>";
    var articleContactHtml          = "";
    var articleAdditionalHtml       = "";
    var articleRightHandImageHtml   = "";
    var articleRightNavContact      = "";
    var articleBreadcrumb           = "";
    var pageTitle                   = ""
    
    if (article.length > 0) {
    
        articleDetailHtml = "";
        for (var i=0; i<article.length; i++) {
            //alert(printArticle(article[i]));
            articleDetailHtml += "<\div>";

            //Headline
            articleDetailHtml += "<h1 style='text-transform:uppercase;'>";
            articleDetailHtml += article[i].headline_text;
            articleDetailHtml += "</h1>\n";                
            
            articleBreadcrumb = getBreadCrumb(article[i].headline_text, 8) + "..."; 
            pageTitle = article[i].headline_text;
            
            // subhead
            if(article[i].subheadline_text) {
                articleDetailHtml += "<h2>";
                articleDetailHtml += article[i].subheadline_text;
                articleDetailHtml += "</h2>\n";
            }

            articleDetailHtml += "<div class='detail'>";

            // release notes
            articleDetailHtml += "<p style='font-weight:bold;font-style:italic'>";
            if(article[i].release_notes) {
                articleDetailHtml += "Editor's note: ";
                var release_notes = article[i].release_notes;
                release_notes = release_notes.replace("<p>","");
                release_notes = release_notes.replace("</p>","");
                
                articleDetailHtml += release_notes;
            }
            articleDetailHtml += "</p>\n";

            // display published date
            articleDetailHtml += "<p style='font-weight:bold;'>";
            articleDetailHtml += article[i].display_published_date;
            articleDetailHtml += "</p>\n";


            // display release city
            if(article[i].default_release_city_state){
                articleDetailHtml += "<span style='font-weight:bold;'>(";
                articleDetailHtml += article[i].default_release_city_state;
                articleDetailHtml += ")</span> &mdash; \n";
            }

            // tagline
            articleDetailHtml += "<span>";
            //articleDetailHtml += article[i].tagline;
            var tagline = article[i].tagline;
            
            if((tagline.indexOf("<p>"))==0){
                tagline = tagline.replace(/<br\/>/g,"");
                tagline = tagline.replace("<p>","");
                tagline = tagline.replace("</p>","<p></p>");
            }            
            //alert("TAGLINE: " + tagline);

            
            articleDetailHtml += tagline;
            articleDetailHtml += "</span>\n";

            // bio  (standard text)
            //articleDetailHtml += "<br/><br/><p>";
            articleDetailHtml += "<p>";
            articleDetailHtml += article[i].standardText;   
            articleDetailHtml += "</p>\n";

            //articleContactHtml = "<ul>"
            // contact info
            articleContactHtml += "<li>";
            articleContactHtml += article[i].contact_name;
            articleContactHtml += '<br/>';
            //articleContactHtml += 'Public Affairs <br/>';          
            if(article[i].contact_title) {
              articleContactHtml += article[i].contact_title;          
              articleContactHtml += '<br/>';
            }
            if(article[i].contact_email) {
              var contact_email1 = article[i].contact_email.replace('<br/>','');
              articleContactHtml += '<a href="mailto:'; 
              articleContactHtml += contact_email1;          
              articleContactHtml += '">';              
              //articleContactHtml += article[i].contact_email;
              articleContactHtml += 'Send e-mail';
              articleContactHtml += '</a><br/>';
            }
            if(article[i].contact_phone) {
                articleContactHtml += 'Phone: ';
                articleContactHtml += article[i].contact_phone;
                articleContactHtml += '<br/>';
            }
            //articleContactHtml += 'Fax: (916) 734 7333 <br/>';
            if(article[i].contact_fax) {
              articleContactHtml += 'Fax: ';
              articleContactHtml += article[i].contact_fax;          
              articleContactHtml += '<br/>';
            }
            articleContactHtml += '</li>';
            //alert("contactHTML is " + articleContactHtml);

            // additional contact info
            if(article[i].additional_contact_info) {
                for (var j=0; j<article[i].additional_contact_info.length; j++) {
                    articleContactHtml += '<li wrap>';
                    articleContactHtml += article[i].additional_contact_info[j].contactName;
                    articleContactHtml += '<br/>';
                    if (article[i].additional_contact_info[j].contactEmail) {
                        articleContactHtml += '<a href="mailto:';
                        articleContactHtml += article[i].additional_contact_info[j].contactEmail;
                        articleContactHtml += ' ">';
                        //articleContactHtml += article[i].additional_contact_info[j].contactEmail;
                        articleContactHtml += 'Send e-mail';
                        articleContactHtml += '</a><br/>';
                    }
                    articleContactHtml += 'Phone: ';
                    articleContactHtml += article[i].additional_contact_info[j].contactPhone;
                    articleContactHtml += '<br/>';
                    if (article[i].additional_contact_info[j].contactAddress) {
                        articleContactHtml += article[i].additional_contact_info[j].contactAddress;
                        articleContactHtml += '<br/>';
                    }
                    articleContactHtml += '</li>';
                }
            }
            //articleContactHtml += "</ul>"

            //alert("contactHTML is " + articleContactHtml);

            // additional information
            if(article[i].additional_info) {

                //articleAdditionalHtml += '<table width="180" border="0" cellspacing="0" cellpadding="0"><tr><td align="right" width="25"><img src="/development/themes/default/images/right_box_top_curve.gif" alt="" height="20" width="25" border="0" /></td><td colspan="2" class="rightBoxHead"><a href="/development/contactus/index.html">Additional Information</a></td>';

                //articleAdditionalHtml += '</tr><tr height="5px"><td colspan="3" height="5px"></td></tr><tr height="20"><td align="right" valign="top" width="25"><div align="right"><img src="/development/themes/default/images/right_box_item_bullet.gif" alt="" height="15" width="15" border="0" /></div></td><td valign="top"><p class="rightBoxItem">';

                //articleAdditionalHtml += article[i].additional_info;

                //articleAdditionalHtml += '</p></td><td width="15"></td></tr><tr height="5px"><td colspan="3" height="5px"></td></tr></table>';

            }
            else {
                articleAdditionalHtml = "";
            }


            // right hand image   
            if(article[i].image_url1 && article[i].image_url1 != 'null') {
                //alert("Image URL is " + article[i].image_url1);
                articleRightHandImageHtml += '<IMG height=123 alt="';
                articleRightHandImageHtml += article[i].image1_alt_text;
                articleRightHandImageHtml += '" src="';
                articleRightHandImageHtml += article[i].image_url1;
                articleRightHandImageHtml += '" width=179 border=0/>';
            }
            else {
                articleRightHandImageHtml += '';
            }

            articleRightNavContact += '<ul><li><a target="_self" href="/newsroom/contactus/index.html">';
            if(article[i].additional_contact_info[0]) {
                var contactLink = "";
                if(article[i].additional_contact_info[0].contactEmail) {
                    contactLink = article[i].additional_contact_info[0].contactEmail;
                }
                articleRightNavContact += '<a href="mailto:' + contactLink + '">' + article[i].additional_contact_info[0].contactName  + '</a> <br />' +  article[i].additional_contact_info[0].contactPhone;
            }
            articleRightNavContact += '</a></li></ul>';                        
        }
    }
    document.title = "UC Davis Health System: Newsroom -- " + pageTitle;
    document.getElementById("pagebreadcrumb").innerHTML = articleBreadcrumb;
    document.getElementById("articleList").innerHTML = articleDetailHtml;
    document.getElementById("rightnavimage").innerHTML = articleRightHandImageHtml;
    
    
    var rightnavelement = "rightnavlinkleveltwo" + position;
    //alert ("Rightnav news " + rightnavelement);
    document.getElementById(rightnavelement).innerHTML = articleContactHtml;
    //document.getElementById("contactInfo").innerHTML = articleContactHtml;
    
    //if(articleAdditionalHtml != "") {
    //    document.getElementById("additionalInfo").innerHTML = articleAdditionalHtml;
    //}

    if (keywordArray != null) {
        if (keywordArray.length > 0 ) {
            highlightSearchTerms(keywordArray);
        }
    }

}

// Method to print the Article data returned from the servlet
function printArticle(item){

    //return "URL =  " + item.url + "\nCategory = " + item.category  + "\nHeadline text = " + item.headline_text + "\nSub Headline = " + item.subheadline_text + "\nLead = " + item.lead + "\nTrimmed Lead = " + item.trimmed_lead  + "\nStandard Text = " + item.standardText + "\nAddl Contact Info = " +  item.additional_contact_info[0].contactName +"\t" +  item.additional_contact_info[0].contactPhone +"\t" +  item.additional_contact_info[0].contactEmail +"\t" +  item.additional_contact_info[0].contactAddress + "\nAddl Info = " +  item.additional_info + "\nRelease Notes = " + item.release_notes+ "\nDisplay Published date = " + item.display_published_date + "\nDef Release Citt = " + item.default_release_city_state + "\nContact Name = " +  item.contact_name + "\nContact Phone = " + item.contact_phone + "\nContact Email = " + item.contact_email + "\nURL1 = " + item.image_url1 + "\nSource = " + item.source + "\nMedia Type = " + item.media_type + "\nCluster = " + item.cluster + "\nTag Line = " + item.tagline + "\nDoc URL = " + item.document_url + "\nHarvest Time = " + item.harvest_time + "\nAccess Status = " + item.access_status + "\nAccess Registration = " + item.access_registration;
    return "URL =  " + item.url + "\nCategory = " + item.category  + "\nHeadline text = " + item.headline_text + "\nSub Headline = " + item.subheadline_text + "\nLead = " + item.lead + "\nTrimmed Lead = " + item.trimmed_lead  + "\nStandard Text = " + item.standardText + "\nRelease Notes = " + item.release_notes+ "\nDisplay Published date = " + item.display_published_date + "\nDef Release Citt = " + item.default_release_city_state + "\nContact Name = " +  item.contact_name + "\nContact Phone = " + item.contact_phone + "\nContact Email = " + item.contact_email + "\nURL1 = " + item.image_url1 + "\nSource = " + item.source + "\nMedia Type = " + item.media_type + "\nCluster = " + item.cluster + "\nTag Line = " + item.tagline + "\nDoc URL = " + item.document_url + "\nHarvest Time = " + item.harvest_time + "\nAccess Status = " + item.access_status + "\nAccess Registration = " + item.access_registration;

}

//Method to display the news article in the news detail page
function displayNewsArticle(position) {
    
    if (article != null) {
        displayArticleDetail(getURLParam("keyword"), position);
    } else {
        setTimeout("displayNewsArticle( "+ position +")",1000);
    }
}
 
// Method to get the breadcrumb from the headline_text and limit the number of words
// based on the no_of_words
function getBreadCrumb(headline_text, no_of_words) {
    var temp = new Array();
    temp = headline_text.split(' ');
    var bread_crumb = "";
    var counter=0;
    //alert ("BC " + temp.length + "\t" + no_of_words + "\t" + counter + "\t" + (counter<no_of_words && counter<temp.length));
    
    for (counter=0; (counter<no_of_words && counter<temp.length); counter++) {
        //alert(temp[counter]);
        bread_crumb += temp[counter];
        bread_crumb += ' ';
    }
    return bread_crumb;
}

//Methods to display the news article in the print format
function printNewsArticle() {
    if (article != null) {
        printArticleDetail();
    } else {
        setTimeout(printNewsArticle,1000);
    }
}


function printArticleDetail() {
    if (article.length > 0) {
        for (var i=0; i<article.length; i++) {
        
            var articleDetailHtml = "";

            articleDetailHtml += '<img style="width: 6.873in; height:1.173in;" src="/newsroom/images/news/header';
            if(getURLParam("category")){
                if(getURLParam("category")=="cc"){
                    articleDetailHtml += '_';
                    articleDetailHtml += getURLParam("category");
                }
            }
            articleDetailHtml += '.jpg" alt="">';

            articleDetailHtml += '<div class="contact"><p><strong>';

            articleDetailHtml += 'FOR IMMEDIATE RELEASE:';

            articleDetailHtml += '</strong><br />';
            
            var display_date = new Date(article[i].display_published_date);
            var formatted_display_day = display_date.format("EE, MMM d, yyyy");
            
            articleDetailHtml += formatted_display_day;
            //articleDetailHtml += article[i].display_published_date;
            if(article[i].additional_contact_info.length>0) {
                articleDetailHtml += '</p><p><strong>CONTACTS: </strong>';
            } else {
                articleDetailHtml += '</p><p><strong>CONTACT: </strong>';
            }

            articleDetailHtml += article[i].contact_name;

            articleDetailHtml += '<br />';

            if(article[i].contact_phone) {
                articleDetailHtml += article[i].contact_phone;
                articleDetailHtml += '<br />';
            }
            
            if(article[i].contact_email) {
                articleDetailHtml += article[i].contact_email;
            }
            articleDetailHtml += '</p>';
    
            if(article[i].additional_contact_info) {
                for (var j=0; j<article[i].additional_contact_info.length; j++) {
                    articleDetailHtml += '<p>';
                    articleDetailHtml += article[i].additional_contact_info[j].contactName;
                    articleDetailHtml += '<br/>';
                    if (article[i].additional_contact_info[j].contactPhone) {
                        articleDetailHtml += article[i].additional_contact_info[j].contactPhone;
                        articleDetailHtml += '<br />';
                    }
                    if (article[i].additional_contact_info[j].contactEmail) {
                        articleDetailHtml += article[i].additional_contact_info[j].contactEmail;
                    }
                    articleDetailHtml += '</p>';
                }
            }
            articleDetailHtml += '</div>';

            articleDetailHtml += '<h1>';
            articleDetailHtml += article[i].headline_text;
            articleDetailHtml += '</h1>';

            if(article[i].subheadline_text){
                articleDetailHtml += '<h2>';
                articleDetailHtml += article[i].subheadline_text;
                articleDetailHtml += '</h2>';
            }       
            articleDetailHtml += '<p><strong>(';
            articleDetailHtml += article[i].default_release_city_state;
            articleDetailHtml += ')</strong> &#0151 ';
            articleDetailHtml += article[i].tagline;
            articleDetailHtml += '</p>';
            document.getElementById("articleDetail").innerHTML = articleDetailHtml;    
            break;
        }
    }
}
