JSDoc: Source: proteoform.js

# Source: proteoform.js

    /**
     * Create naviagtion urls to go back to protein page and all protein page
     * @param {String} folderpath - Path to data folder
     */
    function proteoformUrl(folderpath)
    {
    	// prsm_data is a global variable containing complete data of the proteoform from the data file
    	l_proteoform_Url = prsm_data.compatible_proteoform.sequence_name+" " +prsm_data.compatible_proteoform.sequence_description;
    	// Set title for the page
    	document.title = "Proteoform #"+prsm_data.compatible_proteoform.proteoform_id+" from " + l_proteoform_Url ;
    	let l_allproteins_url = "proteins.html?folder="+folderpath;
    	// Set the naviagtion urls to all proteins page and protein page
    	document.getElementById("allprotein_url_start").href = l_allproteins_url;
    	document.getElementById("allprotein_url_end").href = l_allproteins_url;
    	document.getElementById("protein_url_start").innerHTML = l_proteoform_Url;
    	document.getElementById("protein_url_start").href = "protein.html?folder="+folderpath+"&protein_Id="+prsm_data.compatible_proteoform.sequence_id;
    	document.getElementById("protein_url_end").innerHTML = l_proteoform_Url;
    	document.getElementById("protein_url_end").href = "protein.html?folder="+folderpath+"&protein_Id="+prsm_data.compatible_proteoform.sequence_id;
    	document.getElementById("proteoform_header").innerHTML ="Proteoform #"+prsm_data.compatible_proteoform.proteoform_id;
    	// Get the count of number of proteoform
    	if(Array.isArray(prsm_data.compatible_proteoform.prsm))
    	{
    		document.getElementById("prsm_count").innerHTML = prsm_data.compatible_proteoform.prsm.length+" PrSMs are identified for the proteoform";
    	}
    	else
    	{
    		document.getElementById("prsm_count").innerHTML = "1 PrSM is identified for the proteoform";
    	}
    }
    /**
     * Create a table with prsm data and URL to navigate to appropriate prsm
     * @param {String} folderpath - Provides path to the data folder
     */
    function createTableData(folderpath){
    	let table = document.getElementById('proteoform_data');
    	let tbdy = document.createElement('tbody');
    	let count = 0;
    	let sequence_name = prsm_data.compatible_proteoform.sequence_name ;
    	// Iterate through the number of prsms
    	if(Array.isArray(prsm_data.compatible_proteoform.prsm))
    	{
    		prsm_data.compatible_proteoform.prsm.forEach(function(prsm,i){
    			let All_Peak_count = prsm.ms.peaks.peak.length;
    			let tr = document.createElement('tr');
    			for(let i=0;i<7;i++){
    				var td = document.createElement('td');
    				td.setAttribute("align","center");
    				if(i === 0){
    					td.innerHTML = prsm.ms.ms_header.scans ;
    				}
    				if(i === 1){
    					td.innerHTML = sequence_name ;
    				}
    				if(i === 2){
    					td.innerHTML = prsm.e_value ;
    				}
    				if(i === 3){
    					td.innerHTML = All_Peak_count ;
    				}
    				if(i === 4){
    					td.innerHTML = prsm.matched_peak_number;
    				}
    				if(i === 5){
    					td.innerHTML = prsm.matched_fragment_number;
    				}
    				if(i === 6){
    					// Create URL to navigate
    					let a = document.createElement('a')
    					l_href = "prsm.html?folder="+folderpath+"&prsm_id="+prsm.prsm_id;
    					l_link = "link" + (count +1) ;
    					a.setAttribute("href", l_href);
    					a.setAttribute("id", l_link);
    					a.innerHTML = "See PrSM&gt;&gt;"; // Adding >> marks
    					td.appendChild(a);
    					count ++ ;
    				}
    				tr.appendChild(td);
    			}
    			tbdy.appendChild(tr);
    		})
    	}
    	else
    	{
    		prsm = prsm_data.compatible_proteoform.prsm ;

    		let All_Peak_count = prsm.ms.peaks.peak.length;
    		let tr = document.createElement('tr');
    		for(let i=0;i<7;i++){
    			var td = document.createElement('td');
    			td.setAttribute("align","center");
    			if(i === 0){
    				td.innerHTML = prsm.ms.ms_header.scans ;
    			}
    			if(i === 1){
    				td.innerHTML = sequence_name ;
    			}
    			if(i === 2){
    				td.innerHTML = prsm.e_value ;
    			}
    			if(i === 3){
    				td.innerHTML = All_Peak_count ;
    			}
    			if(i === 4){
    				td.innerHTML = prsm.matched_peak_number;
    			}
    			if(i === 5){
    				td.innerHTML = prsm.matched_fragment_number;
    			}
    			if(i === 6){
    				// Create link to navigate
    				let a = document.createElement('a')
    				l_href = "prsm.html?prsm_id="+prsm.prsm_id;
    				l_link = "link" + (count +1) ;
    				a.setAttribute("href", l_href);
    				a.setAttribute("id", l_link);
    				a.innerHTML = "See PrSM&gt;&gt;";
    				td.appendChild(a);
    				count ++ ;
    			}
    			tr.appendChild(td);
    		}
    		tbdy.appendChild(tr);
    	}
    	table.appendChild(tbdy);
    }