Rev 5055 | Blame | Last modification | View Log | RSS feed
<%@LANGUAGE="VBSCRIPT"%><%'====================================================='| sdk_details.asp'| Edit an SDK Version'|'=====================================================%><%Option explicit' Good idea to set when using redirectResponse.Expires = 0 ' always load the page, dont store%><!--#include file="common/conf.asp"--><!--#include file="common/globals.asp"--><!--#include file="common/formating.asp"--><!--#include file="common/qstr.asp"--><!--#include file="common/common_subs.asp"--><%'------------ ACCESS CONTROL ------------------%><!--#include file="_access_control_general.asp"--><%'------------ Variable Definition -------------Dim parSdkTag_id'------------ Constants Declaration -----------'------------ Variable Init -------------------parSdkTag_id = Request("sdktag_id")if parSdkTag_id = "" Then parSdkTag_id = 0%><script language="JavaScript" type="text/javascript">//# sourceURL=sdk_details.asp// Get getSdkVersionDetails// When this is complete we will populate the remainder of the// page.var sdkDetails = {};getAjaxData ("sdk_opr_json.asp",{ action: "getSdkVersionDetails", sdktag_id : <%=parSdkTag_id%> },function(data){sdkDetails = data.aaData;$("#sdkd_section_head").text( sdkDetails.SDK_NAME + " : " + sdkDetails.SDKTAG_NAME);$("#sel_state input[name=state]").val([sdkDetails.SDK_STATE]);detailsAvailable();});// Populate the bulk of the display// Called once the sdkDetails have been deliveredfunction detailsAvailable(){// Initial population of the Ref SDK NamespopulateSdkNames(sdkDetails.SDK_ID);populateContent(<%=parSdkTag_id%>);$("#sel_sdkname").change(function(){populateSdkVersions( $("#sel_sdkname").val());});$("#chk_sdkversion").change(function(){populateSdkVersions( $("#sel_sdkname").val());});$("#sel_sdkversion").change(function(){$('#sdk_content').dataTable().api().ajax.reload();});// Detect change to the packages displayed// Redisplay on change$("#sel_exposed").change(function(){$('#sdk_content').dataTable().api().ajax.reload();});// Detect change to the SDK State// Disable all clickable elements - unless a WIP$("#sel_state input[type=radio]").change(function(){sdkDetails.SDK_STATE = $(this).val();$('.clickable').attr('disabled',$(this).val() !== 'U');getAjaxData ("sdk_opr_json.asp",{ action: "setSdkState", sdktagId : <%=parSdkTag_id%>, sdk_state : $(this).val() });});// Delete the Version$("#sel_delete").on('click', function(){if ( confirm("Are you sure that you want to delete this version of the SDK") != true ) {return;}getAjaxData ("sdk_opr_json.asp",{ action: "deleteSdkVersion", sdktagId : <%=parSdkTag_id%> },function(){$.event.trigger('newPageBody', {url: 'sdk_versions.asp', data : {sdk_id : sdkDetails.SDK_ID}});});});}// Configure the Summary Tablefunction populateContent(sdktag_id){$('#sdk_content').DataTable({deferRender: true,dom: "frtiS",sScrollY: $( document ).height() - 300,scrollCollapse: true,processing: true,retrieve:true,serverSide: true,ajax : {url : "sdk_content_json.asp",data : function (o){o.sdktag_id = sdktag_id;o.sdk_statefilter = $("#sel_exposed").is(':checked');var d = $("#sel_sdkversion").val();if (d != null ) {o.sdk_reftag_id = d;}},},"ordering": true,"order": [[ 1, "asc" ]],"columns": [{ "data": "PV_ID", visible : false },{ "data": "PKG_NAME" },{ "data": "PKG_VERSION" , width : "5%" },{ "data": "REF_PKG_VERSION", width : "5%" },{ "data": "REF_SDKPKG_CHECK" , width : "1%" },{ "data": "SDKPKG_CHECK" , width : "1%"},],});}// Process each row of table data before it is presented to the table scroller// Process the raw Ajax data// Create a checkbox for the state// Add a data item to the entry - to allow traceback when saving$('#sdk_content').on('xhr.dt', function ( e, settings, json ) {json.aaData.forEach(function(row){if (row.SDKPKG_STATE != null) {var checked = row.SDKPKG_STATE == "E" ? 'checked' : '';var disabled = (sdkDetails.SDK_STATE === 'U' ) ? '' : ' disabled ';row.SDKPKG_CHECK = '<input type="checkbox" class=clickable '+ checked + disabled +' data-pvid='+ row.PV_ID +'>';} else {row.SDKPKG_CHECK = "";}if (row.REF_SDKPKG_STATE != null){var checked = row.REF_SDKPKG_STATE == "E" ? 'checked' : '';row.REF_SDKPKG_CHECK = '<input type="checkbox" ' + checked + ' disabled >';} else {row.REF_SDKPKG_CHECK = "";}});} );// Process click on checkboxes within the datatable// this - a DOM node// $(this) - The jquery wrapped node//$('#sdk_content').on( 'click', 'tbody td :checkbox', function () {getAjaxData ("sdk_opr_json.asp",{ action : 'setSdkContentState',sdktagId : <%=parSdkTag_id%>,pv_id : $(this).data('pvid'),sdkpkg_state : this.checked ? 'E' : '-'});});// Populate the Reference Project// sdk_id - Select this entry if possiblefunction populateSdkNames(sdk_id) {getAjaxData ("sdk_opr_json.asp",{ action: "getSdkNames" },function(data){// Populate selectionvar $options = $("#sel_sdkname").empty();var name$options.append($("<option />").val(null).text('Select One'));$.each(data.aaData, function (index, value) {$options.append($("<option />").val(value.SDK_ID).text(value.SDK_NAME));});$options.val(sdk_id);populateSdkVersions(sdk_id)});}// Populate the SDK Versions selection drop down// sdk_id - Identify the family to select//function populateSdkVersions(sdk_id){getAjaxData ("sdk_opr_json.asp",{ action: "getSdkVersions", sdk_id : sdk_id, mode: $("#chk_sdkversion").is(':checked') },function(data){// Populate selectionvar $options = $("#sel_sdkversion").empty();$options.append($("<option />").val(null).text('Select One'));$.each(data.aaData, function (index, value) {$options.append($("<option />").val(value.SDKTAG_ID).text(value.SDKTAG_NAME));});});}function setInfo(txt) {$("#sdkd_info").text( txt);}function clearInfo(txt) {$("#sdkd_info").text(" ");}// getAjaxData - with error processing// url - url to fetch// data - additional data to pass to ajax request// success - function to call on successfunction getAjaxData( url, data, success ){clearInfo();$("#sdkd_progressBar").css('visibility', 'visible');$.ajax({url : url,type: "POST",data : data,dataType : "json",cache: false,success:function(data, textStatus, jqXHR){//data: return data from server//console.log ("UpdateData", data);if (data.result != 0){setInfo("Error:" + ((data.error != 0) ? data.emsgSummary : "Reason not given"));if (data.error >= 0) disableForm();return;}// call user success functionif (jQuery.isFunction(success)){success(data);}},error: function(jqXHR, textStatus, errorThrown){setInfo("Error:" + errorThrown);//if fails},complete : function(){$("#sdkd_progressBar").css('visibility', 'hidden');}});}</script><!-- Tool Bar --><div class=rmbutton style="position:relative;background-color:#DAD7c8;height:38px;padding:7px;margin-bottom: 7px;"><div style="float:left"><fieldset style="padding:2px"><legend>Display</legend><span>Show Exposed</span><input id=sel_exposed type=checkbox></fieldset></div><div id=sel_state style="float:left"><fieldset style="padding:2px"><legend>State</legend><span>Deprecated<input name=state type=radio value=D></span><span>Released<input name=state type=radio value=R></span><span>WIP<input name=state type=radio value=U></span></fieldset></div><div style="float:left;"><img id=sel_delete src="images/abtn_remove_pkg.gif" hspace="2" border="0" style="height: 25px;margin-top: 8;"></div><div style="float:left"><fieldset style="padding:2px"><legend>Ref Sdk</legend><select id=sel_sdkname><option>Select One</option></select><select id=sel_sdkversion></select><input id=chk_sdkversion type=checkbox>Show All</fieldset></div></div><div class="form_ttl tleft" id=sdkd_section_head><!-- Section Header ----></div><!-- Section Body ----><div class="rounded_box"><table id=sdk_content class="full_table" ><thead><tr class="body_col form_align"><th width="1%"> PV_ID<th width="10%"> Package Name<th> Package Version<th> Ref Version<th> Ref State<th width="1%"> State</thead></table><!-- Info / Ajax Progress bar --><div class='bg_dialog body_txt' style='position:relative;min-height:1em;' ><img id='sdkd_progressBar' style='visibility:hidden;position: absolute' src='icons/i_processing.gif' width='79' height='14'><div id=sdkd_info style='position: absolute;'></div></div></div>