Category Archives: Javascript

Phil 8.7.14

8:00 – 5:00 SR

  • DB Backups – done
  • Deploy new FR app – done
  • Update index page with link and description – done
  • Removed “Update” button for a while
  • Need to add top and bottom marking <div>
  • Add delete FR and delete row functionality to client
  • Update should “add” if there are no rows
  • Make sure that the year is greater  or equal to today – done
  • Add validators to update
  • Add logger – done
  • Send error message back to client for alert.
  • Make sure that date parser is correct – may need to add one to month – done
  • leave ‘@’ in string validator – done
  • Add default zeros in number fields – done
  • Realized that using delete/add would cause artifacts in the DB, changed it so that the table has the old funding request deleted before the new one is added.

Phil 8.6.14

8:00 – 6:00 SR

  • Woke up at 3:30 thinking about the loading problem. Thoughts are in the previous entry.
  • Deployed the new version, which went nicely.
  • Discovered a problem with IE8. Comments (//) in the <style> section don’t work, and the following needs to be added to the .panelButton style:
    • display: inline-block;
    • float: left;
  • Onward…
  • Made all the changes to FundingRequestPanel and things are working. Still need to add the adjustment of the fr_master_table for Submit. If the testing works out, then things are kind of beta?
  • Add deleteRow() and deleteFR() to java. Done
  • Integrated new save

Phil 8.5.14

8:00 – 6:00 SR

  • Submit button
  • Clear button – done
  • Why are the buttons turning yellow on load? State issues. Fixed
  • Check to see that users are not being changed on save.
  • Disable access to dropdown and remove NA from list – done
  • The Submit and changed users are the result of the data about a funding request (name, approval) are being saved in the FundingRequestPanel as part of each submission. There needs to be a fr_master_table:
    • uid: hash of frName and login
    • frName
    • status
  • This table will be used by FundingRequestPanel (FRP) only, and the FRP will not be stored in the fr_panel_table. Rows will not be kept in the table. Instead, the rows will be reconstituted. This means that a lot of the base class functionality (_fromArray(), _toJson()) will have to be rewritten to access the new table. Login will read from this table and if there is data to load, then the FRP will show. Maybe show it anyway, with a “New” button that fires a “FundingRequestPanel:clear” event.

Phil 8.4.14

8:00 – 2:30 SR

  • Add non-admin viewing logic to server code – done
  • Add ability to select requests by status (incomplete, submitted, rejected accepted) to req panel, then clear and re-run the query
  • Add submit functionality.
  • Set status to green when NA is selected.
  • Get the latest YUI-base for deployment and test – done
  • Make sure that the DB creation files are correct. – done
  • Make sure that the original user’s information is being saved when updated by Admin – done
  • Check https functionality.
  • Zip up and try deploying!
  • Fixed some bugs in the assembling of the queries. Also had to add a regex

Phil 8.1.14

8:00 – 5:30 SR

  • DB and webapps backup
  • Deployed new FA, but had to roll back because the FMPs were broken
  • Working on getting all the login permutations handled.
    • Added status return if no entries found.
    • Added fr_name parameter to the getPanel call.
  • Built the load query
  • Added a method that iterates through the array of results and builds the panel from that
  • Hooked op the FundingRequestPanel to the fromArray() method and connected it to the login. I still need to adjust the behavior based on whether the role is admin, but it works.
  • Added a load event to FundingRequestPanel
  • Added a method to grab the array of results and feed it to all the panels except FundingRequestPanel.
  • Tested and wporking for one funding request and the Administrator role.

Saved out and loaded in from the DB:

woohoo

Phil 7.31.14

8:00 – 5:00

  • Deployed new FA, RA
  • DB Backups.
  • Changed the query in the truancy report because SUM(0, null) != 0 + null in MySQL
  • Got the query built to construct a single response from the master/date/number/text tables :
    • select fpt.gid, fpt.panel_name, fpt.field_name, ftt.value from fr_panel_table fpt right
      join fr_text_table ftt on fpt.uid = ftt.uid where login = ‘projportfolio’ and panel_name =
      ‘fundingRequestsPanel’
      union
      select fpt.gid, fpt.panel_name, fpt.field_name, ftt.value from fr_panel_table fpt right
      join fr_number_table ftt on fpt.uid = ftt.uid where login = ‘projportfolio’ and panel_name
      = ‘fundingRequestsPanel’
      union
      select fpt.gid, fpt.panel_name, fpt.field_name, ftt.value from fr_panel_table fpt right
      join fr_date_table ftt on fpt.uid = ftt.uid where login = ‘projportfolio’ and panel_name =
      ‘fundingRequestsPanel’;
  • Getting the fundingRequestTable back with the login info
  • For tomorrow
    • Populate funding request panel
    • Populate other panels on load
    • Submit changes status and just saves, I think
    • Change the YUI library to point at a local copy
    • Zip and deploy???

 

Phil 7.30.14

8:00 – 5:00 SR

  • DB backups
  • New FA. There does seem to be a problem with the calculation for cell colors
  • Continuing with writing to the DB from the JS client
  • Chased down a bunch of bugs having to do with the way that fields were being loaded, particularly on the Funding Panel, where items are represented by sourceDivs
  • Set up the table structure so that guids are produced for each row on the client then used to match between the master table and the String/data/number tables.
  • Added the code to the servlet that inserts data, but haven’t connected it to the DB yet. Tomorrow.

Phil 7.29.14

8:00 – 5:00 SR

  • DB Backups
  • Wound up having to write a class that allows for the traversal of a JSON object, which I was not expecting and added a day to the effort. It’s based on the code up at json.org. Finished with the basics, and can recursively navigate and return key/value pairs or an array of Objects that match a given key. Tomorrow we’ll need to add capability (either to the JsonNav class or to the servlet that will write rows into the db.

Phil 7.28.14

8:00 – 2:30 SR

  • DB Backups
  • Deploy new queries.
  • Remote object problems. Bounced the VM, which seemed to fix
  • Added a query to see who’d logged in today, so we can warn people before stopping the server.

Phil 7.25.14

8:00 – 5:00 SR

  • DB Backups
  • Added a event handler to get the comments.
  • Add clear() method. Nope, just used location.reload(true) to force a reload of the page from the server. Better!
  • Drat. I need it anyway, to prep for loading JSON. Done.
  • Save and Load should use the name in the FR name field. If the name is not in the list when save is pressed, it’s added to the list.
  • Work on save first, then load.
  • How to do a compound insert from Dong:
    • LAST_INSERT_ID() gives you the key/index of the last record inserted…..

      1. insert the first record

      INSERT INTO data_table (uid, data) VALUES (null, ‘data’)
      2. insert into master record
      INSERT INTO master_table (uid, some_data, key_to_data_table) VALUES (null, ‘some_data’, LAST_INSERT_ID());

Phil 7.23.14

8:00 – 5:00 SR

  • DB Backups
  • I need to check to see what should be generated for:
    • 11. (U) Contract Details
      12. (U) How does your organization process funding requests?
      13. (U) Do you require 100% of funds in order to obligate this funding to contract?
    • Fixed. I was pointing the output of the panels to the wrong div
  • Bold ‘Cum Amt ($K)‘ Done
  • Move the BLUF module above the POC module and include it in the center section as #5. Done
  • Correctly exporting the javautils jar
  • Accessing the DB
  • Need to write a toJsonString() method for DbTable. Done. Since everything is stored as strings in the webapp, the strings are validated at the client and converted to sql-friendly strings.
  • There is no good way to send full objects, so I spent some time seeing what a good strategy for stringifying is. So far I’m at this:
    • user:pgfeldm.type:text.panel:fundingRequestsPanel.val:fundingRequestType = ‘MIPR’
      user:pgfeldm.type:number.panel:fundingRequestsPanel.val:fundingRequestAmount = ‘32919’
      user:pgfeldm.type:text.panel:fundingRequestsPanel.val:fundingRequestAppropriation = ‘RDTE’
      user:pgfeldm.type:text.panel:fundingRequestsPanel.val:fundingRequestStatus = ‘Incomplete’
      user:pgfeldm.type:text.panel:fundingRequestsPanel.val:fundingRequestTaskName = ‘Task_9’
      user:pgfeldm.type:text.panel:fundingRequestsPanel.val:fundingRequestNumber = ‘ABC-123-9’
      user:pgfeldm.type:text.panel:fundingRequestsPanel.val:fundingRequestName = ‘fundingRequest_9’
    • Which is pretty easy to parse. Not thrilled about the extra chars…

Phil 7.22.14

8:00 – 4:30 SR

  • DB backups
  • Changed the truancy report to run automatically from a view
  • generated email list of all FY2014 users for Lenny
  • Got my Eclipse running Tomcat again. As near as I can tell, the pattern that works is to delete the old server, create a new one using the wizard, point at the web project (in this case YuiServletServer), make sure that the new server is pointing at the Tomcat instance, and then try, delete repeat until that works.
  • Started integrating servlet access into PanelModuleTest. I’m also automatically deploying to the Tomcat server (running in Eclipse) from Webstorm. Sheesh.
  • Got the call to the JsonSinWaveServlet running inside PanelModuleTest
  • Created a new FundingRequestServlet and updated the web.xml.

Phil 7.21.14

8:00 – 2:30 SR

  • DB backups
  • Lenny wants the truancy report run every night. Need to check with Dong about running the prerequisite query.
  • Finish JS side of application
    • Move button bar to top of screen – done
    • Make buttons a bit shorter. – done
    • Add accept/Reject to panel (combo box?) Done
    • Finished document
    • Added BLUF and other changes
    • Set rejected colors to orangered.
    • Dong poked around and was unable to break.
    • Starting to look at my previous servlet code. It looks like ChartWithRemoteData4.js is most applicable.
    • The same old link: http://philfeldman.com/PanelModuleTest.html

7.18.14

8:00 – 5:00 SR

  • DB Backups
  • Deployed the new view and built Lenny’s ‘Truancy Report’. Nice to see all the pieces working.
  • Need to add another panel?
  • The IE8 fix does in fact work
  • Finish building HTML financial report
  • Add ADMIN config. Done
  • Added comments so that they are editable when admin
  • Continued with linking panel objects to text. Need to add in the totals object.
  • New req’s for financial report:
    • The new module is Requisition BLUF and should be right below the Funding Description module.The module needs one field labeled Requisition BLUF (which will be roughly 6 sentences long).

      Instructions: Please provide a BLUF specifically for this requisition not for the project as a whole.  The requisition BLUF should consist of one to two sentences discussing the capability gap and why this is a problem, one to two sentences discussing what the requisition is going to do to address the capability gap and one to two sentences discussing why the ISR PMO should care about this capability gap.

    • Can you also add Agency/Service Lab as the first field in the Project Description module?  This will be a dropdown list.  I have to gather all the lab names but for now you can include: AFRL Rome, AFRL WP, APG, DOE, I2WD, NRL, RadBn Mods, SCMA, SOCOM, SPAWAR Atlantic and SPAWAR Pacific.Instructions: Please select the agency or service lab that will be managing this funding.
    • Add the ISR PMO POC (single field) to the ISR PMO Admin module below the Base/OCO field.
  • Same old link: http://philfeldman.com/PanelModuleTest.html