Subversion Repositories DevTools

Rev

Rev 5085 | Blame | Last modification | View Log | RSS feed

<%@LANGUAGE="VBSCRIPT"%>
<%
'=====================================================
'|  sdk_main_page.asp
'|  Create a new version of an SDK
'|
'=====================================================
%>
<%
Option explicit
' Good idea to set when using redirect
Response.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
%>
<html>
   <head>
        <title>Release Manager</title>
        <meta http-equiv="Pragma" content="no-cache">
        <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
        <link rel="stylesheet" href="images/release_manager_style.css" type="text/css">
        <link rel="stylesheet" href="images/navigation.css" type="text/css">
        <script language="JavaScript" src="images/common.js"></script>
        <%bJqueryDataTables = TRUE%>
        <%bJqueryForms = TRUE%>
        <!--#include file="_jquery_includes.asp"-->
        <!-- TIPS -->
        <!-- DROPDOWN MENUS -->
        <!--#include file="_menu_def.asp"-->
        <script language="JavaScript1.2" src="images/popup_menu.js"></script>
        <!-- Script associated with the display of the SDK Names side panel -->
        <script type="text/javascript" charset="utf-8">
        $(document).ready(function() {
            var tableEl = $('#sdk_names');

            // Disable caching of AJAX responses
            $.ajaxSetup ({
                cache: false 
            });

            //  Configure the Summary Table
            var table = tableEl.DataTable({
                    deferRender:    true,
                    dom:            "t",
                    sScrollY: $( document ).height() - 200,
                    scrollCollapse: true,
                    processing: true,
                    retrieve:true,
                    serverSide: true,
                    ajaxSource: "sdk_names_json.asp",
                    "ordering": false,
                    "columnDefs" : [ 
                        {"visible" : false, "targets" : [0]},
                        {"visible" : false, "targets" : [2]},
                        {"visible" : false, "targets" : [3]},
                        ],
                    });

            //
            //  jQuery function to deserialise an encoded parameter list
            //  The opposite of $.param()
            (function ($) {
                $.deserialize = function (str, options) {
                    var pairs = str.split(/&amp;|&/i),
                        h = {},
                        options = options || {};
                    for(var i = 0; i < pairs.length; i++) {
                        var kv = pairs[i].split('=');
                        kv[0] = decodeURIComponent(kv[0]);
                        if(!options.except || options.except.indexOf(kv[0]) == -1) {
                            if((/^\w+\[\w+\]$/).test(kv[0])) {
                                var matches = kv[0].match(/^(\w+)\[(\w+)\]$/);
                                if(typeof h[matches[1]] === 'undefined') {
                                    h[matches[1]] = {};
                                }
                                h[matches[1]][matches[2]] = decodeURIComponent(kv[1]);
                            } else {
                                h[kv[0]] = decodeURIComponent(kv[1]);
                            }
                        }
                    }
                    return h;
                };

                $.fn.deserialize = function (options) {
                    return $.deserialize($(this).serialize(), options);
                };
            })(jQuery);

            //
            //  If this is a page refresh, then pick up the #, decode it
            //  and navigate to the required location
            var hash = window.location.hash;
            if (hash.charAt(0) == '#')
            {
                hash = hash.substr(1) ;
                var locationData = $.deserialize(hash);
                load_page_body(locationData.url, locationData );
            }


            //  Centralise the loading of the body of the page
            //
            function load_page_body(url, data) {
                //  Persist these values, but don't add to the stored URL
                var persist = {
                    rtag_id : <%=DB_RTAG_ID%>,
                    proj_id : <%=DB_PROJ_ID%>,
                    pv_id : <%=DB_PV_ID%>,
                };
                $('#sdk_version').off();
                $('#sdk_version').empty();
                $('#sdk_version').load(url, $.extend({}, data, persist));

                //  Reflect the current page load in the URL
                //      Shows what we are doing
                //      Allows page reload to
                
                var newdata = {};
                newdata['url'] = url;
                if ( typeof(data) !== 'undefined' ){
                    for (var key in data) {
                        newdata[key] = (data[key]);
                    }
                }
                window.location.hash = jQuery.param(newdata);
            }

            // Process click on the table row
            // Display versions available for this SDK
            //      this - a DOM node
            //      $(this) - The jquery wrapped node
            //
            tableEl.on( 'click', 'tbody tr', function () {
                    var sdk_id = table.row( this ).data()[0];
                    load_page_body('sdk_versions.asp', {sdk_id: sdk_id});
                    });


<%If canActionControl("AdminSdk") Then %>
            //  Wire up an 'Add New SDK' button
            $( '#addSdkName' ).click(function() {
                load_page_body('sdk_names_body.asp');
                });
<%End If%>

        //  Listen for any trigger to force the table to be refreshed
        //  Listen on 'document' as the event will trickle up
        $(document).on("sdkNameEdited", function(){
            table.ajax.reload();
            });

        // Listen for new page body reload requests
        $(document).on("newPageBody", function(e, args){
            load_page_body(args.url, args.data);

            });
        });
        </script>
      <!-- DROPDOWN MENUS -->
   </head>
   <body bgcolor="#FFFFFF" text="#000000" leftmargin="0" topmargin="0">

      <!-- MENU LAYERS -------------------------------------->
      <div id="popmenu" class="menuskin" onmouseover="clearhidemenu();highlightmenu(event,'on')"
         onmouseout="highlightmenu(event,'off');dynamichide(event)">
      </div>
      <!-- TIPS LAYERS -------------------------------------->
      <div id="formTipsLayer" style="position: absolute; z-index: 1000; visibility: hidden; left:0; top: 0; width: 10">&nbsp;</div>
      <!----------------------------------------------------->
      <!-- HEADER -->
      <!--#include file="_header.asp"-->
      <!-- BODY ---->
      <table width="100%" border="0" cellspacing="0" cellpadding="0" bgcolor="#EEEFEF">
         <tr>
            <td width="10%" background="images/bg_home_orange.gif" valign="top" class=side_panel>
                <!-- Side panel -->
               <table id=sdk_names class="full_table side_panel_table">
                <thead>
                    <tr class="body_col form_align">
                        <th>
                        <th>SDK Names
                        <th>
                        <th>
                </thead>
               </table>
            </td>
            <td width="5%"  rowspan="2" valign="top"></td>
            <td width="80%" rowspan="2" align="center" valign="top">
               <!-- Main display panel -->
               <div id=sdk_version></div>
               <!-- End Main display panel -->
            <td width="5%"  rowspan="2" valign="top"></td>
         </tr>
         <tr>
            <!-- Side panel Bottom-->
            <td valign="bottom" align="center" background="images/bg_home_orange.gif">
<%If canActionControl("AdminSdk") Then %>
                <img id=addSdkName src="images/bt_new_project.gif" width="16" height="16" border="0" vspace="5" hspace="5" align="right" alt="Create new SDK Family" title="Create new SDK Family">
<%End If%>
            </td>
            <td background="images/bg_lght_gray.gif" valign="top"><img src="images/h_trsp_dot.gif" width="1" height="500"></td>
        </tr>
      </table>
<!-- FOOTER -->
<!--#include file="_footer.asp"-->
</body>
</html>
<%
Call Destroy_All_Objects
%>