Welcome!

Welcome to the official BlackBerry Support Community Forums.

This is your resource to discuss support topics with your peers, and learn from each other.

inside custom component

Web and WebWorks Development

Reply
Highlighted
Developer
Posts: 777
Registered: ‎07-21-2012
My Device: 9810
My Carrier: 0

Store data in local data base But struck again In between

Hi

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
    <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
    <meta http-equiv="Cache-control" content="no-cache">
    <title>First Group</title>
    <link href="style/style.css" rel="stylesheet" type="text/css" />
    <script language="javascript" type="text/javascript" src="script/actb.js"></script>
    <script language="javascript" type="text/javascript" src="script/actb2.js"></script>
    <script type="text/javascript" src="script/common.js"></script>
    <script type="text/javascript" src="script/soapclient.js"></script>
    <script type="text/javascript" src="script/cordova-1.9.0.js"></script>
    <script type="text/javascript">

        //Wait for Cordova to load
      // document.addEventListener("deviceready", onDeviceReady, false);

        //Cordova is loaded and it is now safe to make calls Cordova methods

        function onDeviceReady() 
        {
            checkConnection();
        }

        function checkConnection() 
        {
            var networkState = navigator.network.connection.type;

            var states = {};
            states[Connection.UNKNOWN]  = 'Unknown connection';
            states[Connection.ETHERNET] = 'Ethernet connection';
            states[Connection.WIFI]     = 'WiFi connection';
            states[Connection.CELL_2G]  = 'Cell 2G connection';
            states[Connection.CELL_3G]  = 'Cell 3G connection';
            states[Connection.CELL_4G]  = 'Cell 4G connection';
            states[Connection.NONE]     = 'No network connection';
            //alert('Connection type: ' + states[networkState]);
            if(states[networkState]=="No network connection")
            {
                alert("No Connection Available ");
                navigator.app.exitApp();
            }   
        }
        var stationList = new Array;    

        function GetStationCodes()
        {   
********************************check condition if there is element in database can you give some condition to check data base ******
            if(window.localStorage.getItem(1)!=null){
            alert("break");
            loadList();
            break;  
            } 
            document.getElementById('loadingImg').style.visibility = "visible"; 

             var pl = new SOAPClientParameters();
             var parameter1 = "";
             var parameter2 = "";
             pl.add("parameter1", parameter1);
             pl.add("parameter2", parameter2);
             SOAPClient.invoke(WSDLURL, "stationSearch", pl, true, GetStationCodes_callBack);
        }

        function loadList()
        {
            *************Get list from data base.  how to get keys length?********
            for (var i = 0; i <20 ; i++)
            {
             document.getElementById('loadingImg').style.visibility = "hidden";
            document.getElementById('submitBtn1').removeAttribute('disabled');
            document.getElementById('submitBtn2').removeAttribute('disabled');
            document.getElementById('getStationDesc').removeAttribute('disabled');
                stationList[i] = window.localStorage.getItem(i);
                //alert(stationList[i]);

            }

        }
        function GetStationCodes_callBack(r)
        { 
            document.getElementById('loadingImg').style.visibility = "hidden";
            document.getElementById('submitBtn1').removeAttribute('disabled');
            document.getElementById('submitBtn2').removeAttribute('disabled');
            document.getElementById('getStationDesc').removeAttribute('disabled');
**********************download list*********************
            for (var i = 0; i < r.length-1; i++)
            {
                stationList[i] = r[i].stationCode + " - " + r[i].stationName;
******************************save data in local storage***********************
                 window.localStorage.setItem(i,stationList[i] );
            }
            //alert( );


        }   
        function SetAction(flag)
        {
            if(flag==1)
            {
                 document.frmIndex.action="arrival.html";
            }
            else
            {
                // document.frmIndex.action="departure.html";
                 document.frmIndex.action="destination.html";
            }
        }
    </script>
</head>
<body onload="GetStationCodes()">
    <div id="wrapper">
        <div class="login_cont">
            <div class="home_icon"><a href="#"><img src="images/home-icon.png" alt="Home" title="Home" /></a></div>
            <h1 class="fr">Station ID</h1>
            <div class="cl"></div>
            <form name="frmIndex" type=get>
                <div class="log_cont">
                    <input id="getStationDesc" name="getStationDesc" type="text" class="log_txtfield" disabled="disabled"/>
                    <script>
                        var obj = actb(document.getElementById('getStationDesc'),stationList);
                        //setTimeout(function(){obj.actb_keywords = custom2;},10000);
                        this.actb_timeOut = -1;
                        // Number of elements autocomplete can show (-1: no limit)
                        this.actb_lim = 10;
                        // should the auto complete be limited to the beginning of keyword?
                        this.actb_firstText = true;
                        // Enable Mouse Support
                        this.actb_mouse = true;
                        // Delimiter for multiple autocomplete.
                        // Set it to empty array for single autocomplete
                        this.actb_delimiter = new Array(' ',',');
                        // Show widget only after this number of characters is typed in.
                        this.actb_startcheck = 1;

                        this.actb_bgColor = '#dbe3ec';
                        this.actb_textColor = '#00256a';
                        this.actb_hColor = '#dbe3ec';
                        this.actb_fFamily = 'arial';
                        this.actb_fSize = '16px';   
                        this.actb_hStyle = 'text-decoration:underline;font-weight="bold";text-align="left"';
                        function FillValues()
                        {
                            document.getElementById('getStationCode').value = document.getElementById('getStationDesc').value.substring(0,3);               
                        }
                    </script>
                    <div>

      <img src="images/ajax-loader.gif" id="loadingImg" visible =true style="margin:auto; position: absolute; left:50%; top:50%;"/>

</div>

                    <input id="getStationCode" name="getStationCode" type="hidden" /></div>
                    <input id="submitBtn1" type=submit  class="heading_btn" style="margin-top:10px;margin-left:50px" value="Arrival Dashboard" onclick="FillValues();SetAction(1)"  disabled="disabled">
                    <input id="submitBtn2"  type=submit class="heading_btn" style="margin-top:10px;margin-left:40px" value="Departure Dashboard" onclick="FillValues();SetAction(2)" disabled="disabled">

                </div>
            </form>
        </div>
    </div>
</body>
</html>

 

I want to store data in DB or local storage.On first time i download my list from web service, i want this list to store in database.i done something but struck in between .please help me i am beginner in phonegap technology. Next time user open this screen it will get list from database not from webservice.