Changeset 327 in tmcsimulator for trunk


Ignore:
Timestamp:
03/17/2019 07:00:07 PM (7 years ago)
Author:
jdalbey
Message:

Add HAR layer.

Location:
trunk/webapps
Files:
7 added
4 edited
1 moved

Legend:

Unmodified
Added
Removed
  • trunk/webapps/cms_messages.json

    r326 r327  
    1 {"data":[{"cms":{"index":"1200022","message":{"displayTime":"","phase1":{"Line1":"   Near Vista","Line2":"    Hermosa","Line3":"        "},"phase2":{"Line1":"","Line2":"","Line3":""}}}},{"cms":{"index":"1200023","message":{"displayTime":"","phase1":{"Line1":"","Line2":"","Line3":""},"phase2":{"Line1":"","Line2":"","Line3":""}}}},{"cms":{"index":"1200024","message":{"displayTime":"","phase1":{"Line1":"bottom of fifth","Line2":"dodgers up by 2","Line3":"        "},"phase2":{"Line1":"","Line2":"","Line3":""}}}},{"cms":{"index":"1200025","message":{"displayTime":"","phase1":{"Line1":"","Line2":"","Line3":""},"phase2":{"Line1":"","Line2":"","Line3":""}}}},{"cms":{"index":"1200026","message":{"displayTime":"","phase1":{"Line1":"","Line2":"","Line3":""},"phase2":{"Line1":"","Line2":"","Line3":""}}}},{"cms":{"index":"1200027","message":{"displayTime":"","phase1":{"Line1":"","Line2":"","Line3":""},"phase2":{"Line1":"","Line2":"","Line3":""}}}},{"cms":{"index":"1200028","message":{"displayTime":"","phase1":{"Line1":"","Line2":"","Line3":""},"phase2":{"Line1":"","Line2":"","Line3":""}}}},{"cms":{"index":"1200029","message":{"displayTime":"","phase1":{"Line1":"","Line2":"","Line3":""},"phase2":{"Line1":"","Line2":"","Line3":""}}}},{"cms":{"index":"1200030","message":{"displayTime":"","phase1":{"Line1":"","Line2":"","Line3":""},"phase2":{"Line1":"","Line2":"","Line3":""}}}},{"cms":{"index":"1200031","message":{"displayTime":"","phase1":{"Line1":"","Line2":"","Line3":""},"phase2":{"Line1":"","Line2":"","Line3":""}}}},{"cms":{"index":"1200032","message":{"displayTime":"","phase1":{"Line1":"","Line2":"","Line3":""},"phase2":{"Line1":"","Line2":"","Line3":""}}}},{"cms":{"index":"1200033","message":{"displayTime":"","phase1":{"Line1":"","Line2":"","Line3":""},"phase2":{"Line1":"","Line2":"","Line3":""}}}},{"cms":{"index":"1200034","message":{"displayTime":"","phase1":{"Line1":"","Line2":"","Line3":""},"phase2":{"Line1":"","Line2":"","Line3":""}}}},{"cms":{"index":"1200035","message":{"displayTime":"","phase1":{"Line1":"","Line2":"","Line3":""},"phase2":{"Line1":"","Line2":"","Line3":""}}}},{"cms":{"index":"1200036","message":{"displayTime":"","phase1":{"Line1":"","Line2":"","Line3":""},"phase2":{"Line1":"","Line2":"","Line3":""}}}},{"cms":{"index":"1200037","message":{"displayTime":"","phase1":{"Line1":"","Line2":"","Line3":""},"phase2":{"Line1":"","Line2":"","Line3":""}}}},{"cms":{"index":"1200038","message":{"displayTime":"","phase1":{"Line1":"","Line2":"","Line3":""},"phase2":{"Line1":"","Line2":"","Line3":""}}}},{"cms":{"index":"1200039","message":{"displayTime":"","phase1":{"Line1":"","Line2":"","Line3":""},"phase2":{"Line1":"","Line2":"","Line3":""}}}},{"cms":{"index":"1200040","message":{"displayTime":"","phase1":{"Line1":"","Line2":"","Line3":""},"phase2":{"Line1":"","Line2":"","Line3":""}}}},{"cms":{"index":"1200041","message":{"displayTime":"","phase1":{"Line1":"","Line2":"","Line3":""},"phase2":{"Line1":"","Line2":"","Line3":""}}}},{"cms":{"index":"1200042","message":{"displayTime":"","phase1":{"Line1":"","Line2":"","Line3":""},"phase2":{"Line1":"","Line2":"","Line3":""}}}},{"cms":{"index":"1200043","message":{"displayTime":"","phase1":{"Line1":"","Line2":"","Line3":""},"phase2":{"Line1":"","Line2":"","Line3":""}}}},{"cms":{"index":"1200044","message":{"displayTime":"","phase1":{"Line1":"","Line2":"","Line3":""},"phase2":{"Line1":"","Line2":"","Line3":""}}}},{"cms":{"index":"1200045","message":{"displayTime":"","phase1":{"Line1":"","Line2":"","Line3":""},"phase2":{"Line1":"","Line2":"","Line3":""}}}},{"cms":{"index":"1200046","message":{"displayTime":"","phase1":{"Line1":"","Line2":"","Line3":""},"phase2":{"Line1":"","Line2":"","Line3":""}}}},{"cms":{"index":"1200047","message":{"displayTime":"","phase1":{"Line1":"","Line2":"","Line3":""},"phase2":{"Line1":"","Line2":"","Line3":""}}}},{"cms":{"index":"1200048","message":{"displayTime":"","phase1":{"Line1":"","Line2":"","Line3":""},"phase2":{"Line1":"","Line2":"","Line3":""}}}},{"cms":{"index":"1200049","message":{"displayTime":"","phase1":{"Line1":"","Line2":"","Line3":""},"phase2":{"Line1":"","Line2":"","Line3":""}}}},{"cms":{"index":"1200050","message":{"displayTime":"","phase1":{"Line1":"","Line2":"","Line3":""},"phase2":{"Line1":"","Line2":"","Line3":""}}}},{"cms":{"index":"1200051","message":{"displayTime":"","phase1":{"Line1":"","Line2":"","Line3":""},"phase2":{"Line1":"","Line2":"","Line3":""}}}},{"cms":{"index":"1200052","message":{"displayTime":"","phase1":{"Line1":"  airport exit","Line2":"    1/2 mile","Line3":"        "},"phase2":{"Line1":"","Line2":"","Line3":""}}}},{"cms":{"index":"1200053","message":{"displayTime":"","phase1":{"Line1":"  slow for the","Line2":"   cone zone","Line3":"        "},"phase2":{"Line1":"","Line2":"","Line3":""}}}},{"cms":{"index":"1200055","message":{"displayTime":"","phase1":{"Line1":"","Line2":"","Line3":""},"phase2":{"Line1":"","Line2":"","Line3":""}}}},{"cms":{"index":"1200056","message":{"displayTime":"","phase1":{"Line1":"    caution","Line2":"  slow traffic","Line3":"     ahead"},"phase2":{"Line1":"","Line2":"","Line3":""}}}},{"cms":{"index":"1200057","message":{"displayTime":"","phase1":{"Line1":"  I must be a","Line2":"     Lucky","Line3":"   Irishwoman"},"phase2":{"Line1":"","Line2":"","Line3":""}}}},{"cms":{"index":"1200058","message":{"displayTime":"","phase1":{"Line1":"","Line2":"","Line3":""},"phase2":{"Line1":"","Line2":"","Line3":""}}}},{"cms":{"index":"1208488","message":{"displayTime":"","phase1":{"Line1":"","Line2":"","Line3":""},"phase2":{"Line1":"","Line2":"","Line3":""}}}},{"cms":{"index":"1211184","message":{"displayTime":"","phase1":{"Line1":"","Line2":"","Line3":""},"phase2":{"Line1":"","Line2":"","Line3":""}}}},{"cms":{"index":"1211185","message":{"displayTime":"","phase1":{"Line1":"","Line2":"","Line3":""},"phase2":{"Line1":"","Line2":"","Line3":""}}}},{"cms":{"index":"1211967","message":{"displayTime":"","phase1":{"Line1":"","Line2":"","Line3":""},"phase2":{"Line1":"","Line2":"","Line3":""}}}},{"cms":{"index":"1211978","message":{"displayTime":"","phase1":{"Line1":"","Line2":"","Line3":""},"phase2":{"Line1":"","Line2":"","Line3":""}}}},{"cms":{"index":"1212138","message":{"displayTime":"","phase1":{"Line1":"","Line2":"","Line3":""},"phase2":{"Line1":"","Line2":"","Line3":""}}}},{"cms":{"index":"1212822","message":{"displayTime":"","phase1":{"Line1":"","Line2":"","Line3":""},"phase2":{"Line1":"","Line2":"","Line3":""}}}},{"cms":{"index":"1212823","message":{"displayTime":"","phase1":{"Line1":"","Line2":"","Line3":""},"phase2":{"Line1":"","Line2":"","Line3":""}}}},{"cms":{"index":"1214503","message":{"displayTime":"","phase1":{"Line1":" You're heading","Line2":"     south.","Line3":"        "},"phase2":{"Line1":"","Line2":"","Line3":""}}}},{"cms":{"index":"1214504","message":{"displayTime":"","phase1":{"Line1":"","Line2":"","Line3":""},"phase2":{"Line1":"","Line2":"","Line3":""}}}},{"cms":{"index":"1214505","message":{"displayTime":"","phase1":{"Line1":"","Line2":"","Line3":""},"phase2":{"Line1":"","Line2":"","Line3":""}}}},{"cms":{"index":"1214506","message":{"displayTime":"","phase1":{"Line1":"","Line2":"","Line3":""},"phase2":{"Line1":"","Line2":"","Line3":""}}}},{"cms":{"index":"1214507","message":{"displayTime":"","phase1":{"Line1":"","Line2":"","Line3":""},"phase2":{"Line1":"","Line2":"","Line3":""}}}},{"cms":{"index":"1214508","message":{"displayTime":"","phase1":{"Line1":"","Line2":"","Line3":""},"phase2":{"Line1":"","Line2":"","Line3":""}}}},{"cms":{"index":"1214509","message":{"displayTime":"","phase1":{"Line1":"","Line2":"","Line3":""},"phase2":{"Line1":"","Line2":"","Line3":""}}}},{"cms":{"index":"1214510","message":{"displayTime":"","phase1":{"Line1":"","Line2":"","Line3":""},"phase2":{"Line1":"","Line2":"","Line3":""}}}},{"cms":{"index":"1214511","message":{"displayTime":"","phase1":{"Line1":"","Line2":"","Line3":""},"phase2":{"Line1":"","Line2":"","Line3":""}}}},{"cms":{"index":"1214512","message":{"displayTime":"","phase1":{"Line1":"","Line2":"","Line3":""},"phase2":{"Line1":"","Line2":"","Line3":""}}}},{"cms":{"index":"1214513","message":{"displayTime":"","phase1":{"Line1":"","Line2":"","Line3":""},"phase2":{"Line1":"","Line2":"","Line3":""}}}},{"cms":{"index":"1214514","message":{"displayTime":"","phase1":{"Line1":"","Line2":"","Line3":""},"phase2":{"Line1":"","Line2":"","Line3":""}}}},{"cms":{"index":"1214956","message":{"displayTime":"","phase1":{"Line1":"","Line2":"","Line3":""},"phase2":{"Line1":"","Line2":"","Line3":""}}}},{"cms":{"index":"1217542","message":{"displayTime":"","phase1":{"Line1":"","Line2":"","Line3":""},"phase2":{"Line1":"","Line2":"","Line3":""}}}},{"cms":{"index":"1218442","message":{"displayTime":"","phase1":{"Line1":"","Line2":"","Line3":""},"phase2":{"Line1":"","Line2":"","Line3":""}}}},{"cms":{"index":"1218482","message":{"displayTime":"","phase1":{"Line1":"  San Clemente","Line2":"   Next Exit","Line3":"        "},"phase2":{"Line1":"","Line2":"","Line3":""}}}},{"cms":{"index":"1218483","message":{"displayTime":"","phase1":{"Line1":"","Line2":"","Line3":""},"phase2":{"Line1":"","Line2":"","Line3":""}}}},{"cms":{"index":"1218484","message":{"displayTime":"","phase1":{"Line1":"","Line2":"","Line3":""},"phase2":{"Line1":"","Line2":"","Line3":""}}}},{"cms":{"index":"1218485","message":{"displayTime":"","phase1":{"Line1":"","Line2":"","Line3":""},"phase2":{"Line1":"","Line2":"","Line3":""}}}},{"cms":{"index":"1218486","message":{"displayTime":"","phase1":{"Line1":"","Line2":"","Line3":""},"phase2":{"Line1":"","Line2":"","Line3":""}}}}]} 
     1{"data":[{"cms":{"index":"1200022","message":{"displayTime":"","phase1":{"Line1":"      have","Line2":"       a","Line3":"    nice day"},"phase2":{"Line1":"","Line2":"","Line3":""}}}},{"cms":{"index":"1200023","message":{"displayTime":"","phase1":{"Line1":"","Line2":"","Line3":""},"phase2":{"Line1":"","Line2":"","Line3":""}}}},{"cms":{"index":"1200024","message":{"displayTime":"","phase1":{"Line1":"bottom of fifth","Line2":"dodgers up by 2","Line3":"        "},"phase2":{"Line1":"","Line2":"","Line3":""}}}},{"cms":{"index":"1200025","message":{"displayTime":"","phase1":{"Line1":"","Line2":"","Line3":""},"phase2":{"Line1":"","Line2":"","Line3":""}}}},{"cms":{"index":"1200026","message":{"displayTime":"","phase1":{"Line1":"","Line2":"","Line3":""},"phase2":{"Line1":"","Line2":"","Line3":""}}}},{"cms":{"index":"1200027","message":{"displayTime":"","phase1":{"Line1":"","Line2":"","Line3":""},"phase2":{"Line1":"","Line2":"","Line3":""}}}},{"cms":{"index":"1200028","message":{"displayTime":"","phase1":{"Line1":"","Line2":"","Line3":""},"phase2":{"Line1":"","Line2":"","Line3":""}}}},{"cms":{"index":"1200029","message":{"displayTime":"","phase1":{"Line1":"","Line2":"","Line3":""},"phase2":{"Line1":"","Line2":"","Line3":""}}}},{"cms":{"index":"1200030","message":{"displayTime":"","phase1":{"Line1":"","Line2":"","Line3":""},"phase2":{"Line1":"","Line2":"","Line3":""}}}},{"cms":{"index":"1200031","message":{"displayTime":"","phase1":{"Line1":"","Line2":"","Line3":""},"phase2":{"Line1":"","Line2":"","Line3":""}}}},{"cms":{"index":"1200032","message":{"displayTime":"","phase1":{"Line1":"","Line2":"","Line3":""},"phase2":{"Line1":"","Line2":"","Line3":""}}}},{"cms":{"index":"1200033","message":{"displayTime":"","phase1":{"Line1":"","Line2":"","Line3":""},"phase2":{"Line1":"","Line2":"","Line3":""}}}},{"cms":{"index":"1200034","message":{"displayTime":"","phase1":{"Line1":"","Line2":"","Line3":""},"phase2":{"Line1":"","Line2":"","Line3":""}}}},{"cms":{"index":"1200035","message":{"displayTime":"","phase1":{"Line1":"","Line2":"","Line3":""},"phase2":{"Line1":"","Line2":"","Line3":""}}}},{"cms":{"index":"1200036","message":{"displayTime":"","phase1":{"Line1":"","Line2":"","Line3":""},"phase2":{"Line1":"","Line2":"","Line3":""}}}},{"cms":{"index":"1200037","message":{"displayTime":"","phase1":{"Line1":"","Line2":"","Line3":""},"phase2":{"Line1":"","Line2":"","Line3":""}}}},{"cms":{"index":"1200038","message":{"displayTime":"","phase1":{"Line1":"","Line2":"","Line3":""},"phase2":{"Line1":"","Line2":"","Line3":""}}}},{"cms":{"index":"1200039","message":{"displayTime":"","phase1":{"Line1":"","Line2":"","Line3":""},"phase2":{"Line1":"","Line2":"","Line3":""}}}},{"cms":{"index":"1200040","message":{"displayTime":"","phase1":{"Line1":"","Line2":"","Line3":""},"phase2":{"Line1":"","Line2":"","Line3":""}}}},{"cms":{"index":"1200041","message":{"displayTime":"","phase1":{"Line1":"","Line2":"","Line3":""},"phase2":{"Line1":"","Line2":"","Line3":""}}}},{"cms":{"index":"1200042","message":{"displayTime":"","phase1":{"Line1":"","Line2":"","Line3":""},"phase2":{"Line1":"","Line2":"","Line3":""}}}},{"cms":{"index":"1200043","message":{"displayTime":"","phase1":{"Line1":"","Line2":"","Line3":""},"phase2":{"Line1":"","Line2":"","Line3":""}}}},{"cms":{"index":"1200044","message":{"displayTime":"","phase1":{"Line1":"","Line2":"","Line3":""},"phase2":{"Line1":"","Line2":"","Line3":""}}}},{"cms":{"index":"1200045","message":{"displayTime":"","phase1":{"Line1":"","Line2":"","Line3":""},"phase2":{"Line1":"","Line2":"","Line3":""}}}},{"cms":{"index":"1200046","message":{"displayTime":"","phase1":{"Line1":"","Line2":"","Line3":""},"phase2":{"Line1":"","Line2":"","Line3":""}}}},{"cms":{"index":"1200047","message":{"displayTime":"","phase1":{"Line1":"","Line2":"","Line3":""},"phase2":{"Line1":"","Line2":"","Line3":""}}}},{"cms":{"index":"1200048","message":{"displayTime":"","phase1":{"Line1":"","Line2":"","Line3":""},"phase2":{"Line1":"","Line2":"","Line3":""}}}},{"cms":{"index":"1200049","message":{"displayTime":"","phase1":{"Line1":"","Line2":"","Line3":""},"phase2":{"Line1":"","Line2":"","Line3":""}}}},{"cms":{"index":"1200050","message":{"displayTime":"","phase1":{"Line1":"","Line2":"","Line3":""},"phase2":{"Line1":"","Line2":"","Line3":""}}}},{"cms":{"index":"1200051","message":{"displayTime":"","phase1":{"Line1":"","Line2":"","Line3":""},"phase2":{"Line1":"","Line2":"","Line3":""}}}},{"cms":{"index":"1200052","message":{"displayTime":"","phase1":{"Line1":"  airport exit","Line2":"    1/2 mile","Line3":"        "},"phase2":{"Line1":"","Line2":"","Line3":""}}}},{"cms":{"index":"1200053","message":{"displayTime":"","phase1":{"Line1":"  slow for the","Line2":"   cone zone","Line3":"        "},"phase2":{"Line1":"","Line2":"","Line3":""}}}},{"cms":{"index":"1200055","message":{"displayTime":"","phase1":{"Line1":"","Line2":"","Line3":""},"phase2":{"Line1":"","Line2":"","Line3":""}}}},{"cms":{"index":"1200056","message":{"displayTime":"","phase1":{"Line1":""},"phase2":{}}}},{"cms":{"index":"1200057","message":{"displayTime":"","phase1":{"Line1":"     drive","Line2":"     safely","Line3":""},"phase2":{"Line1":"","Line2":"","Line3":""}}}},{"cms":{"index":"1200058","message":{"displayTime":"","phase1":{"Line1":"","Line2":"","Line3":""},"phase2":{"Line1":"","Line2":"","Line3":""}}}},{"cms":{"index":"1208488","message":{"displayTime":"","phase1":{"Line1":"","Line2":"","Line3":""},"phase2":{"Line1":"","Line2":"","Line3":""}}}},{"cms":{"index":"1211184","message":{"displayTime":"","phase1":{"Line1":"","Line2":"","Line3":""},"phase2":{"Line1":"","Line2":"","Line3":""}}}},{"cms":{"index":"1211185","message":{"displayTime":"","phase1":{"Line1":"","Line2":"","Line3":""},"phase2":{"Line1":"","Line2":"","Line3":""}}}},{"cms":{"index":"1211967","message":{"displayTime":"","phase1":{"Line1":"","Line2":"","Line3":""},"phase2":{"Line1":"","Line2":"","Line3":""}}}},{"cms":{"index":"1211978","message":{"displayTime":"","phase1":{"Line1":"","Line2":"","Line3":""},"phase2":{"Line1":"","Line2":"","Line3":""}}}},{"cms":{"index":"1212138","message":{"displayTime":"","phase1":{"Line1":"","Line2":"","Line3":""},"phase2":{"Line1":"","Line2":"","Line3":""}}}},{"cms":{"index":"1212822","message":{"displayTime":"","phase1":{"Line1":"","Line2":"","Line3":""},"phase2":{"Line1":"","Line2":"","Line3":""}}}},{"cms":{"index":"1212823","message":{"displayTime":"","phase1":{"Line1":"","Line2":"","Line3":""},"phase2":{"Line1":"","Line2":"","Line3":""}}}},{"cms":{"index":"1214503","message":{"displayTime":"","phase1":{"Line1":" You're heading","Line2":"     south.","Line3":"        "},"phase2":{"Line1":"","Line2":"","Line3":""}}}},{"cms":{"index":"1214504","message":{"displayTime":"","phase1":{"Line1":"","Line2":"","Line3":""},"phase2":{"Line1":"","Line2":"","Line3":""}}}},{"cms":{"index":"1214505","message":{"displayTime":"","phase1":{"Line1":"","Line2":"","Line3":""},"phase2":{"Line1":"","Line2":"","Line3":""}}}},{"cms":{"index":"1214506","message":{"displayTime":"","phase1":{"Line1":"","Line2":"","Line3":""},"phase2":{"Line1":"","Line2":"","Line3":""}}}},{"cms":{"index":"1214507","message":{"displayTime":"","phase1":{"Line1":"","Line2":"","Line3":""},"phase2":{"Line1":"","Line2":"","Line3":""}}}},{"cms":{"index":"1214508","message":{"displayTime":"","phase1":{"Line1":"","Line2":"","Line3":""},"phase2":{"Line1":"","Line2":"","Line3":""}}}},{"cms":{"index":"1214509","message":{"displayTime":"","phase1":{"Line1":"","Line2":"","Line3":""},"phase2":{"Line1":"","Line2":"","Line3":""}}}},{"cms":{"index":"1214510","message":{"displayTime":"","phase1":{"Line1":"","Line2":"","Line3":""},"phase2":{"Line1":"","Line2":"","Line3":""}}}},{"cms":{"index":"1214511","message":{"displayTime":"","phase1":{"Line1":"","Line2":"","Line3":""},"phase2":{"Line1":"","Line2":"","Line3":""}}}},{"cms":{"index":"1214512","message":{"displayTime":"","phase1":{"Line1":"","Line2":"","Line3":""},"phase2":{"Line1":"","Line2":"","Line3":""}}}},{"cms":{"index":"1214513","message":{"displayTime":"","phase1":{"Line1":"","Line2":"","Line3":""},"phase2":{"Line1":"","Line2":"","Line3":""}}}},{"cms":{"index":"1214514","message":{"displayTime":"","phase1":{"Line1":"","Line2":"","Line3":""},"phase2":{"Line1":"","Line2":"","Line3":""}}}},{"cms":{"index":"1214956","message":{"displayTime":"","phase1":{"Line1":"","Line2":"","Line3":""},"phase2":{"Line1":"","Line2":"","Line3":""}}}},{"cms":{"index":"1217542","message":{"displayTime":"","phase1":{"Line1":"","Line2":"","Line3":""},"phase2":{"Line1":"","Line2":"","Line3":""}}}},{"cms":{"index":"1218442","message":{"displayTime":"","phase1":{"Line1":"","Line2":"","Line3":""},"phase2":{"Line1":"","Line2":"","Line3":""}}}},{"cms":{"index":"1218482","message":{"displayTime":"","phase1":{"Line1":"","Line2":"","Line3":""},"phase2":{"Line1":"","Line2":"","Line3":""}}}},{"cms":{"index":"1218483","message":{"displayTime":"","phase1":{"Line1":"","Line2":"","Line3":""},"phase2":{"Line1":"","Line2":"","Line3":""}}}},{"cms":{"index":"1218484","message":{"displayTime":"","phase1":{"Line1":"","Line2":"","Line3":""},"phase2":{"Line1":"","Line2":"","Line3":""}}}},{"cms":{"index":"1218485","message":{"displayTime":"","phase1":{"Line1":"","Line2":"","Line3":""},"phase2":{"Line1":"","Line2":"","Line3":""}}}},{"cms":{"index":"1218486","message":{"displayTime":"","phase1":{"Line1":"","Line2":"","Line3":""},"phase2":{"Line1":"","Line2":"","Line3":""}}}}]} 
  • trunk/webapps/cptms.html

    r326 r327  
    2525      } 
    2626        /* A line of the CMS message display */ 
    27         textarea { 
     27        .cms_sign { 
    2828           height: 33px; 
    2929           width: 272px; 
     
    3535        } 
    3636        /* Field for entering CMS Message line */ 
    37        input { 
     37       .cms-input { 
    3838           border: thin solid #333; 
    3939           padding: 2px; 
    4040           font-family: "Lucida Console", Monaco, monospace; 
     41           font-size: medium; 
     42           width: 163px; 
     43        } 
     44        /* Field for entering HAR Message line */ 
     45       .har-input { 
     46           border: thin solid #333; 
     47           padding: 2px; 
    4148           font-size: medium; 
    4249        } 
     
    7178       } 
    7279      #message-display { 
    73            height: 172px; 
     80           height: 300px; 
    7481           width: 300px; 
    7582           overflow: hidden; 
    7683           float: left; 
    7784       } 
     85      #har-msgdisplay1 { 
     86            background-color: darkgray; 
     87      } 
    7888      #message-input { 
    7989           height: 122px; 
    80            width: 165px; 
     90           width: 170px; 
    8191           background-color: #729FFF; 
    8292           float: left; 
     
    8595       #buttonPanel { 
    8696           height: 122px; 
    87            width: 130px; 
     97           width: 125px; 
    8898           background-color: #729FFF; 
    89            border-left: none; 
    9099           float: left; 
    91100           padding: 20px; 
     
    95104        } 
    96105        /* CMS Edit Message Dialog */ 
    97        #dialog { 
     106       .dialog { 
    98107          position: absolute; 
    99108          top: 10%; 
     
    104113          border: 1px solid #888; 
    105114          width: 680px; 
     115          height: 360px; 
    106116          display: none;            
    107117        } 
     
    155165    <div id="mapdiv"></div> 
    156166    <!-- The div element for the popup dialog. Best results when placed here. --> 
    157     <div id="dialog" style="display:none;"> 
    158         <span class="close">&#x2612;</span>  <!-- close button symbol --> 
     167    <div id="cms-dialog" class="dialog"> 
     168        <span id="cms-close" class="close">&#x2612;</span>  <!-- close button symbol --> 
    159169        <br> 
    160170        <div id="cms-info-label" style="font-family:'Courier New'">CMS ID: xxx LOCATION: </div> 
    161171        <br> 
    162172        <input id='cmsID' value="" type='hidden'/> 
    163         <div id="message-input">Proposed: 
    164         <input id="msgcontent1"  maxlength="16" type="text"/><br><br> 
    165         <input id="msgcontent2"  maxlength="16" type="text"/><br><br> 
    166         <input id="msgcontent3"  maxlength="16" type="text"/> 
     173        <div id="message-input">Phase 1: 
     174        <input id="msgcontent1" class="cms-input"  maxlength="16" type="text"/><br><br> 
     175        <input id="msgcontent2" class="cms-input"  maxlength="16" type="text"/><br><br> 
     176        <input id="msgcontent3" class="cms-input"  maxlength="16" type="text"/><br><br> 
     177        Phase 2: 
     178        <input id="msgcontent4" class="cms-input"  maxlength="16" type="text"/><br><br> 
     179        <input id="msgcontent5" class="cms-input"  maxlength="16" type="text"/><br><br> 
     180        <input id="msgcontent6" class="cms-input"  maxlength="16" type="text"/><br><br> 
    167181        </div>         
    168         <div id="buttonPanel"    style="display: block;"> 
    169         <button onclick="handleCMSsubmit();">Send >></button><br> 
    170         <button onclick="handleCMSclear();">Clear >></button><br> 
    171         <button onclick="handleDialogClose();">Close </button> 
     182        <div id="buttonPanel"    style="display: block;"><br><br> 
     183        <button onclick="handleCMSsubmit();">Send >></button><br><br> 
     184        <button onclick="handleCMSclear();">Clear >></button><br><br> 
     185        <button onclick="handleDialogClose('cms-dialog');">Close </button> 
    172186        </div> 
    173187        <div id="message-display"  style="display: block;">Current: 
    174          <textarea readonly id="msgdisplay1" maxlength="16" rows="1" cols="16"></textarea> 
    175          <textarea readonly id="msgdisplay2" maxlength="16" rows="1" cols="16"></textarea> 
    176          <textarea readonly id="msgdisplay3" maxlength="16" rows="1" cols="16"></textarea> 
     188         <textarea class="cms_sign" readonly id="msgdisplay1" maxlength="16" rows="1" cols="16"></textarea> 
     189         <textarea class="cms_sign" readonly id="msgdisplay2" maxlength="16" rows="1" cols="16"></textarea> 
     190         <textarea class="cms_sign" readonly id="msgdisplay3" maxlength="16" rows="1" cols="16"></textarea> 
     191         <br><br><br> 
     192         <textarea class="cms_sign" readonly id="msgdisplay4" maxlength="16" rows="1" cols="16"></textarea> 
     193         <textarea class="cms_sign" readonly id="msgdisplay5" maxlength="16" rows="1" cols="16"></textarea> 
     194         <textarea class="cms_sign" readonly id="msgdisplay6" maxlength="16" rows="1" cols="16"></textarea> 
     195        </div> 
     196    </div> 
     197    <div id="har-dialog" class="dialog"> 
     198        <span id="har-close" class="close">&#x2612;</span>  <!-- close button symbol --> 
     199        <div id="har-info-label" style="font-family:'Courier New'">HAR ID: xxx LOCATION: </div> 
     200        <br> 
     201        <input id='harID' value="" type='hidden'/> 
     202        <!--div id="har-message-input"-->Proposed:<br> 
     203        <input id="har-msgcontent1" class="har-input" type="text" size="50"><br> 
     204        <!--textarea id="har-msgcontent1" maxlength="150" rows="2" cols="50"/><br><br--> 
     205 
     206        <div id="har-buttonPanel" style="display: block;"><br> 
     207        <button onclick="handleHARsubmit();">Send >></button> 
     208        <button onclick="handleHARclear();">Clear >></button> 
     209        <button onclick="handleDialogClose('har-dialog');">Close </button><br><br> 
     210        </div> 
     211        <div id="har-message-display"  style="display: block;">Current:<br> 
     212         <textarea readonly id="har-msgdisplay1" maxlength="150" rows="3" cols="50"></textarea> 
    177213        </div> 
    178214    </div> 
    179215    <!--The div elements where the buttons appear  --> 
    180216    <div id="ctrButton"><img width="30" src="images/btn_mapcenter.png"</div> 
     217    <button id="harButton" class="unstyled-button"><img id="harBtnImg" src="images/btnReady_HAR.png"></button> 
    181218    <button id="cctvButton" class="unstyled-button"><img id="cctvBtnImg" src="images/btnReady_CCTV.png"></button> 
    182219    <button id="cmsButton" class="unstyled-button"><img id="cmsBtnImg" src="images/btnReady_CMS.png"></button> 
     
    192229    // the cms message local dictionary 
    193230    var messageDict = {};  
     231    // the har message local dictionary 
     232    var HARmessageDict = {};  
    194233    // Constant for map center location: The John Wayne Airport 
    195234    //var centerPoint = {lat: 33.687228, lng: -117.872148}; 
     
    215254    var kCMSfile = "data_layers/cms_locations_D12.gjson"; // CMS locations  
    216255    var kCCTVfile = "data_layers/cctv_locations_D12.gjson"; // CCTV locations 
     256    var kHARfile = "data_layers/har_locations_D12.gjson"; // CMS locations  
    217257    var blueFlag = "images/icon_cmsBlue.png"; 
    218258    var yellowFlag = "images/icon_cmsYellow.png"; 
     
    222262    var vdsIconYellow = "images/circle-yellow.png" 
    223263    var vdsIconRed = "images/circle-red.png" 
     264    var harActive = "images/icon_harActive.png"; 
    224265    var cms_showing = false; 
    225266    var vds_showing = true; 
    226267    var cctv_showing = false; 
     268    var har_showing = false; 
    227269    var cctv_infowindow; // We create just a single instance of info window. 
    228270 
     
    231273    function initLayerButtons() 
    232274    { 
     275        initHARbutton(); 
    233276        initCCTVbutton(); 
    234277        initCMSbutton(); 
     
    256299        loadCMSlayer(); 
    257300        loadCCTVlayer(); 
     301        loadHARlayer(); 
    258302 
    259303        initLayerButtons(); // setup the show/hide layer buttons 
     
    262306        var myTimer = setInterval(updateVDSlayer, 10000); 
    263307        // start an interval timer to refresh the cms icons every 10 seconds 
    264         var cmsTimer = setInterval(loadAllMessages, 10000); 
     308        var cmsTimer = setInterval(loadAllcmsMessages, 10000); 
     309 
     310        // start an interval timer to refresh the har icons every 10 seconds 
     311        var harTimer = setInterval(loadAllharMessages, 10000); 
     312 
    265313        // Listen for zoom changes and move the vds dots so as to keep a nice 
    266314        // visual distance between them appropriate to the zoom factor 
     
    284332    <script  src="js/cmsLayer.js"></script> 
    285333    <script  src="js/cctvLayer.js"></script> 
     334    <script  src="js/harLayer.js"></script> 
    286335    <script  src="js/controls.js"></script> 
    287336    <script  src="js/night_mode.js"></script> 
  • trunk/webapps/js/cmsLayer.js

    r326 r327  
    1313            pic = "images/btnDepressed_CMS.png" 
    1414            // It's nice when icons become visible that the messages have been refreshed. 
    15             loadAllMessages(); 
     15            loadAllcmsMessages(); 
    1616        } 
    1717        else 
     
    4848    cmsLayer.addListener('click', function(event) 
    4949    { 
    50         var dialog = document.getElementById('dialog'); 
     50        var dialog = document.getElementById('cms-dialog'); 
    5151        // Note: If the dialog is already being displayed when someone else 
    5252        // updates the message, it won't be reflected in the dialog, until 
     
    6363        document.getElementById('msgcontent2').value = ""; 
    6464        document.getElementById('msgcontent3').value = ""; 
     65        document.getElementById('msgcontent4').value = ""; 
     66        document.getElementById('msgcontent5').value = ""; 
     67        document.getElementById('msgcontent6').value = ""; 
    6568        document.getElementById('msgcontent1').focus(); 
    66         var span = document.getElementsByClassName("close")[0] 
     69        var span = document.getElementById("cms-close"); 
    6770            // When the user clicks on <span> (x), close the modal 
    6871        span.onclick = function() 
    6972        { 
    70             handleDialogClose(); 
     73            handleDialogClose('cms-dialog'); 
    7174        } 
    7275    }); 
     
    7679    function justifyCMStext(message) 
    7780    { 
     81        // don't bother justifying a blank message 
     82        if (message.length == 0) return message;     
     83        // determine how much padding is needed 
    7884        var kBlanks = "                "; 
    7985        var padLen = (16 - message.length) / 2; 
     86        // apply the padding 
    8087        var padding = kBlanks.substring(0, padLen); 
    8188        return padding + message; 
     
    8895        var response2 = justifyCMStext(document.getElementById('msgcontent2').value.trim()); 
    8996        var response3 = justifyCMStext(document.getElementById('msgcontent3').value.trim()); 
    90         var newMsg = response1 + response2 + response3; 
     97        var response4 = justifyCMStext(document.getElementById('msgcontent4').value.trim()); 
     98        var response5 = justifyCMStext(document.getElementById('msgcontent5').value.trim()); 
     99        var response6 = justifyCMStext(document.getElementById('msgcontent6').value.trim()); 
     100        var newMsg = response1 + response2 + response3 + response4 + response5 + response6; 
    91101        if (newMsg.length == 0) 
    92102        { 
    93             alert("Nothing to Send ... Proposed is empty."); 
     103            alert("Nothing to Send ... input fields are empty."); 
    94104        } 
    95105        else 
     
    98108            document.getElementById('msgdisplay2').value = response2; 
    99109            document.getElementById('msgdisplay3').value = response3; 
    100             saveMessage(response1 + "|" + response2 + "|" + response3); 
    101         } 
    102     } 
    103  
    104     function handleDialogClose() 
    105     { 
    106         // hide the display 
    107         document.getElementById('dialog').style.display = 'none' 
     110            document.getElementById('msgdisplay4').value = response4; 
     111            document.getElementById('msgdisplay5').value = response5; 
     112            document.getElementById('msgdisplay6').value = response6; 
     113            saveMessage(response1 + "|" + response2 + "|" + response3 + "|" + 
     114                        response4 + "|" + response5 + "|" + response6); 
     115        } 
    108116    } 
    109117 
     
    113121        document.getElementById('msgdisplay2').value = ""; 
    114122        document.getElementById('msgdisplay3').value = ""; 
    115         saveMessage("||"); 
    116     } 
     123        document.getElementById('msgdisplay4').value = ""; 
     124        document.getElementById('msgdisplay5').value = ""; 
     125        document.getElementById('msgdisplay6').value = ""; 
     126        saveMessage("|||||"); 
     127    } 
     128 
     129    // Save an updated cms message to the file 
     130    function saveMessage(outMessage) 
     131    { 
     132        // Fetch cmsID from hidden field where it was put when dialog opened. 
     133        var cmsID = document.getElementById('cmsID').value; 
     134        //console.log("Saving " + outMessage + " for cmsID " + cmsID) 
     135        msgParts = outMessage.split("|"); 
     136        messageDict[cmsID].cms.message.phase1.Line1 = msgParts[0]; 
     137        messageDict[cmsID].cms.message.phase1.Line2 = msgParts[1]; 
     138        messageDict[cmsID].cms.message.phase1.Line3 = msgParts[2]; 
     139        messageDict[cmsID].cms.message.phase2.Line1 = msgParts[3]; 
     140        messageDict[cmsID].cms.message.phase2.Line2 = msgParts[4]; 
     141        messageDict[cmsID].cms.message.phase2.Line3 = msgParts[5]; 
     142        // Set icon to reflect message state 
     143        if (outMessage == "|||||") 
     144        { 
     145            currentIcon = {icon: yellowFlag}; 
     146        } 
     147        else 
     148        { 
     149            currentIcon = {icon: blueFlag}; 
     150        } 
     151        cmsLayer.overrideStyle(cmsLayer.getFeatureById(cmsID), currentIcon) 
     152        // break the json string into lines for readability 
     153        jsonstring = JSON.stringify(Object.values(messageDict)); //,null,4); 
     154        outString = "{\"data\":" + jsonstring + "}"; 
     155 
     156        var xhttp = new XMLHttpRequest(); 
     157        xhttp.open("GET", "cgi-bin/saveCMSmessage.py?msg=" + outString, true); 
     158        xhttp.send(); 
     159        // Using POST might be a better idea ... haven't tried this yet 
     160        //      var xhr = new XMLHttpRequest(); 
     161        //      xhr.open("POST", "/cgi-bin/saveMessage.py?", true); 
     162        //      xhr.setRequestHeader('Content-Type', 'application/json; charset=UTF-8'); 
     163        // send the collected data as JSON 
     164        //      xhr.send(JSON.stringify(messageList)); 
     165    } 
     166 
    117167    // retrieve the current cms message file 
    118168    function showMessage(cmsID) 
    119169    { 
    120         loadAllMessages();  // because someone else may have made a recent update 
     170        loadAllcmsMessages();  // because someone else may have made a recent update 
    121171        // lookup the message for this cms ID 
    122172        var message = messageDict[cmsID].cms.message; 
     
    125175        document.getElementById('msgdisplay2').value = message.phase1.Line2; 
    126176        document.getElementById('msgdisplay3').value = message.phase1.Line3; 
    127     } 
    128     function loadAllMessages() 
     177        document.getElementById('msgdisplay4').value = message.phase2.Line1; 
     178        document.getElementById('msgdisplay5').value = message.phase2.Line2; 
     179        document.getElementById('msgdisplay6').value = message.phase2.Line3; 
     180    } 
     181    function loadAllcmsMessages() 
    129182    { 
    130183        loadJSON("cms_messages.json", function(response) 
     
    141194                if (item.cms.message.phase1.Line1 +  
    142195                    item.cms.message.phase1.Line2 + 
    143                     item.cms.message.phase1.Line3 == "") 
     196                    item.cms.message.phase1.Line3 + 
     197                    item.cms.message.phase2.Line1 +  
     198                    item.cms.message.phase2.Line2 + 
     199                    item.cms.message.phase2.Line3 == "") 
    144200                { 
    145201                    cmsLayer.overrideStyle(cmsLayer.getFeatureById(item.cms.index), {icon: yellowFlag}) 
     
    153209    } 
    154210 
    155     // Save an updated cms message to the file 
    156     function saveMessage(outMessage) 
    157     { 
    158         // Fetch cmsID from hidden field where it was put when dialog opened. 
    159         var cmsID = document.getElementById('cmsID').value; 
    160         //console.log("Saving " + outMessage + " for cmsID " + cmsID) 
    161         msgParts = outMessage.split("|"); 
    162         messageDict[cmsID].cms.message.phase1.Line1 = msgParts[0]; 
    163         messageDict[cmsID].cms.message.phase1.Line2 = msgParts[1]; 
    164         messageDict[cmsID].cms.message.phase1.Line3 = msgParts[2]; 
    165         // Set icon to reflect message state 
    166         if (outMessage == "||") 
    167         { 
    168             currentIcon = {icon: yellowFlag}; 
    169         } 
    170         else 
    171         { 
    172             currentIcon = {icon: blueFlag}; 
    173         } 
    174         cmsLayer.overrideStyle(cmsLayer.getFeatureById(cmsID), currentIcon) 
    175         outString = "{\n\t\"data\":\n\t\t" + JSON.stringify(Object.values(messageDict)) + "}"; 
    176  
    177         var xhttp = new XMLHttpRequest(); 
    178         xhttp.open("GET", "cgi-bin/saveMessage.py?msg=" + outString, true); 
    179         xhttp.send(); 
    180         // Using POST might be a better idea ... haven't tried this yet 
    181         //      var xhr = new XMLHttpRequest(); 
    182         //      xhr.open("POST", "/cgi-bin/saveMessage.py?", true); 
    183         //      xhr.setRequestHeader('Content-Type', 'application/json; charset=UTF-8'); 
    184         // send the collected data as JSON 
    185         //      xhr.send(JSON.stringify(messageList)); 
    186     } 
    187  
     211 
  • trunk/webapps/js/common.js

    r315 r327  
    1717        xobj.send(null); 
    1818    } 
     19 
     20 
     21    function handleDialogClose(id) 
     22    { 
     23        // hide the display 
     24        document.getElementById(id).style.display = 'none' 
     25    } 
     26 
     27 
Note: See TracChangeset for help on using the changeset viewer.