All Contributions
Date Type From Project Resource Type Qty URL Description Process Deliverables
May 1, 2018 Time Contribution Tibi Building SENSORICA Work - Office 2.00 HR General communication and answering to Sensorica Contact Us, spoke to Mike on the phone about how everything is going, Facebook communication, etc. I should log a lot more of this type of work...
April 30, 2018 Time Contribution davidh Verdun Work - Programming for product 0.00 HR Create new classical NRP for the Vedun project
April 30, 2018 Time Contribution davidh Verdun Work - Programming for product 4.85 HR Found issue: TemplateDoesNotExist at Create Exchange #9 Examining exchange_logging.html Looks like the {% include %} tags need the full path. Fixed that. Now encountering: TemplateSyntaxError at /accounting/exchange/1/0/ Could not parse the remainder: ',' from 'xfer.change_commitments_form,' On the same page. Found some syntax errors on the included form, _commit_form.html, not sure if that could interfere. Also found a comma in the arguments to {% include %}, which is likely the source of the problem. Also improved some other spots in _add_xfer_form.html Now I get: TemplateSyntaxError at /accounting/exchange/1/0/ Could not parse the remainder: ',' from 'slot.add_commit_form,' Obviously this is another syntax error of the same nature Works now, but I may want to revisit to check out all the case-specific renderings Found issue: Create Order dies #10 Clear solution here. I can fix this particular problem easily and quickly, bur we need to decide whether we are implementing customer orders or not. According to previous communications with Bob, the tests never passed and the functionality was never used, which is why there is an import there. If we want to have customer orders, I need to fix this AND the issues revealed by the tests. If not, I need to disable the button and not worry about it. Will defer here. Found issue: Production Planning looks like something is missing #11 The view function, process_selections(), has a variable slots, which should give the context a list of resource types. The function is fairly complicated. Could be related to lack of EventTypes? Probably not, unless the project is supposed to be associated somehow with the event types and it isn't. on lines 9535 to 9538: slots = selected_pattern.event_types() slot.resource_types = selected_pattern.get_resource_types(slot) Since the slots appear to be present but unfilled, it's most likely an issue of process_pattern.get_resource_types(event_type) not finding any resource types. Checking out models.py This is the function that is filtering resource types based on the resource type facet values, which it gets from self.facets_for_event_type(event_type) Looks like the resource types associated with the dummy project need more facet values, as they don't match these filters. Tried that, still coming up empty. Could be due to incomplete list of facet values or poorly assigned facet values to patterns or resource types; will ask Tiberius to review them. Found another instance of issue: UnboundLocalError when creating exchange without exchange type #3 Will give this similar treatment (alert at template level) and fix at the forms.py level as well. Went ahead and added required=True to all of the WhateverNavForm classes. Moved the preventDefault() definition used by all of my events that need to do so to its own template, _prevent_default.html (event.preventDefault() is deprecated, event.defaultPrevented is not universally supported) Added click events at all 3 locations. Verified that all 3 cases work as expected for the case of no selection. However, in the case of exactly one exchange type present, the :selected selector doesn't pick up the very much selected option. Will have to add a line to select the first option by default. Fixed. Fixed up create_exchange.html with type aliases. Found a really ugly form via create_exchange > Save Changes > Log a new Transfer Event. Could be due to the {% field_as_div %} tag from chair_tag.py; trying that out, since it would be more convenient to edit in one place. Turns out it's due to the label element; replacing that. Still doesn't look right; starting issue: Forms using chair_tag.py are ugly #12 and picking it up tomorrow. Create new classical NRP for the Vedun project
April 30, 2018 Time Contribution Tibi Soccer amateur Work - Writing 4.00 HR Created presentation, communicated to Sensorica. https://docs.google.com/presentation/d/12NPBdZVE7t38NXTx7rhUiUOKNNN60DNQgND1q2fhMNc/edit#slide=id.p Got feedback from Bev, who works for City of Levis in the department of sports and outdoor activities. . Public consultation presentation Ville de Montreal Publication - Brochure: Memo to Ville de Montreal for sports
Publication - Brochure: smart city sports presentation
April 26, 2018 Time Contribution davidh Verdun Work - Programming for product 4.77 HR Found bug: UnboundLocalError when creating exchange without exchange type #3 Fixing. Added an alert and preventDefault() when the exchange type is not selected. Still needs to be tested to make sure that it works when an exchange type IS selected, but we currently have no defined exchange types for this agent. Found bug: Layout of agent page has "add to map" on same line as "Photo" #4 Fixing that too. Added div elements as chair_tag would have if the a elements could have been put in by that tag. For testing, created an order for lemonade, "I am thirsty" Found bug: TemplateSyntaxError at /accounting/process #5 Looks like there's a few missing symbols there. Added a }, fixed. Edi-table on accounting/contributionhistory/ is off. The Edit button is missing. The Deliverables column is empty. The unit "Hours" has no space in front of it. Created issue: The edi-table on contribution history is a mess #6 Shouldn't have replaced the textual Edit button with an <i>. Made it an a.btn.btn-large with "Edit". Added a leading space to the data-suffix in the quantity column. Removed the data- properties from the Deliverables column; this column was never editable, so the json override was abandoned. If the column is still empty, it's probably due to the DB having an empty field due to my naive data entry rather than an actual bug. Since the quantity column doesn't start out managed by the edi-table JS, had to add a space in the initial output too. Seems that the datepickers aren't working; probably because I commented out the datepicker() calls. Adding them back. Now it appears that the Save button is, once again, trying to submit the form and navigate away. How is this still happening? Looks like the form still has its enctype attribute, which should have been stripped. Used the wrong span class to install the editor in the first place, so who knows what will happen now. Checking out process_oriented_logging, it looks like an image is missing. Evidently our static files have not made it into the static app on the server. Looking into that. Messed with settings, that was necessary but didn't fix it. Fixed by uploading proper files to the repository (there was a directory mixup the first time, my bad) and collecting statics on the server. Found issue: TemplateSyntaxError at /accounting/create-resource-type-list/ #7 Fixing by removing nested comment. Trying to replace the inner comments with {# #} syntax so that the inner comment can be preserved, otherwise if the block is ever un-commented, the inner comment block will return to haunt us. Worked, but now the form.as_ul looks ugly. Let's see if it's better with |as_bootstrap. Unfortunately I may need to sweep this across all the templates, but it was somewhat uncommon. Looks nicer if the checkbox is simply labeled by the resource type name, rather than a read-only textbox. Trying it out. Hmm the label showed "None" below the checkbox itself. Will need to use .value() instead of .data and either move the input into the label or move the label text into the input widget (probably easier to do with JS than the django template). Checked out incoming exchanges page; for some reason the exchange type variable is not being replaced. Created issue: Typename variable not replaced in incoming exchanges #8 Found that the template still features the variable nested in a {% trans %}. Changed to use |tr. Create new classical NRP for the Vedun project
April 25, 2018 Time Contribution davidh Verdun Work - Programming for product 2.12 HR Continuing fix of #1: Non Production Logging form Fixed several issues: Forgot to add the edit column. Added. Moved the time total right by one cell to put it under the hours total. Used parseFloat instead of idiomatic casts for durations expressed as hours/minutes widget. Coerce the values() iterator to an array before getting the first element in EdiTable.table(). Remove enctype from all modal edi-table forms, as the async saves don't need to navigate either. Problem: the durations are apparently still not calculating properly. Also, it's still wanting to submit the form and navigate. Added a save() call on the table after loading to calculate the total; at load, it calculates correctly. After the pull that fixed that, the navigation problem appears solved, too. Create new classical NRP for the Vedun project
April 24, 2018 Time Contribution Tibi Verdun Work - Writing 8.00 HR Wrote and coordinated the memo. Writing the MESI memo Document - Documentation: Memo pour l'economie collaborative
April 24, 2018 Time Contribution France Verdun Work - Writing 2.00 HR French translation and proof reading Writing the MESI memo Document - Documentation: Memo pour l'economie collaborative
April 20, 2018 Time Contribution davidh Verdun Work - Programming for product 3.43 HR Starting regression test on edi-table using agent-associations hmmm it claims that there is no view for that page, which is clearly wrong - must have introduced an error in the last commit to views.py causing it to fail. Rolling it back to test theory. Nope! It was in forms.py; I had HiddenField instead of HiddenInput. It looks like something broke. The form still insists on doing its default behavior, which means the enctype wasn't removed, Sure enough it's there. Also got an exception, data is undefined, which probably crashed a function before the attribute was removed. Seems to be the change that allowed the simple output to have a prefix & suffix; took the simple output and made it examine the data attributes to be a little more intelligent about this. Dialog pops now, no exceptions, but the fields aren't being updated right; in particular, the agent field disappears from the form control and the table. The input is actually fine; the output span just isn't updated. Now it works. Looked at the create resource type page; it had a funny facet list where the facets were not shown. Fixed that, now things just look ugly. Fixing it up. Now it looks pretty good. Create new classical NRP for the Vedun project
April 20, 2018 Time Contribution Winluck Verdun Work - Writing 4.00 HR Proofread and edited MESI memo. Wrote additional linking text to blend paragraphs together for better content flow. Writing the MESI memo Document - Documentation: Memo pour l'economie collaborative
April 20, 2018 Time Contribution davidh Verdun Work - Programming for product 0.50 HR Fixing #1. Caused by implicit cast failure while altering table contents. Create new classical NRP for the Vedun project
April 19, 2018 Time Contribution Tim Verdun Work - Meeting 1.00 HR Meeting with Tibi to discuss communication strategy about the MESI memo. Writing the MESI memo Document - Documentation: Memo pour l'economie collaborative
April 19, 2018 Time Contribution Tibi Verdun Work - Meeting 1.00 HR Meeting with Tim to discuss communication strategy about the MESI memo. Writing the MESI memo Document - Documentation: Memo pour l'economie collaborative
April 19, 2018 Time Contribution Winluck Verdun Work - Writing 1.50 HR Fleshed out MESI memo outline and provided a potential direction the memo message can take. Writing the MESI memo Document - Documentation: Memo pour l'economie collaborative
April 18, 2018 Time Contribution davidh Verdun Work - Programming for product 6.37 HR Checking out additional targets for the edi-table. I'm on agent_contributions.html, fixed a markup error. The embedded forms are really weird; there's a form for each field that can be edited, and the saves are caused by change events. There is a link to change_event.html in the last column of the table right beside delete. What I think I'll do is move that to its own first column and include the form from change_event.html as a modal. change_event.html is just a form|as_bootstrap anyway. Since there is also a model field for deliverables, which are not on the form itself, I also needed to make an API entry point in urls.py and views.py to fetch the deliverables when the table is synced. In order to get a queryset for the JSON, I needed to alter the process.deliverables() function to return a queryset as well. Finally, the edi-table needs to be able to handle both async save and load, as well as several new data types. That's that, can't test it until there is some contribution data in there. Moving on to the next target. That is unscheduled_time_contributions.html. The table here has a tally of hours at the bottom; have to extend edi-table to take arbitrary callbacks when the form saves, Introduced an EdiTable class at document scope that has static methods to retrieve the table you want, and instances have methods to get columns, rows, column headings, do an onSave, etc. Also added another datatype override. Set up in the target HTML to recalculate the total hours when the modal is saved. Finally had to rework the edi-table to handle multiple controls per table cell since the table uses a custom widget with multiple input elements. Should regression test with agent-associations. Create new classical NRP for the Vedun project
April 18, 2018 Time Contribution Tibi Verdun Work - Writing 1.50 HR Flashed out Structure, made a call on social media and communicated with Sensorica and Ouishare the work done and to be done. Writing the MESI memo Document - Documentation: Memo pour l'economie collaborative
April 17, 2018 Time Contribution davidh Verdun Work - Programming for product 5.28 HR There is no workparty; getting back to the edi-table. Fixed a few easy bugs Now looking for the source of two incomplete namespace errors: - The form_dialog can't seem to find its dialog_id; looked at the call in the template (it's specified by name), python function in templatetags (the argument is there and not given a default string, so if anything, the concatenated defaults e.g. form ID should be appended with 'None' if the function can't see it, and it's also in the returned dictionary as specified in Django docs). Changed the python function to raise instead of return to see how the function sees it. - The JS is throwing on rowEditor.wrapVal() in rowEditor.syncTbl() claiming it isn't a function. Verified that the default for non-overloaded fields is rowEditor.simple() and that all overload functions return a function. Verified that it's assigned during rowEditor.install() and that install() is called from the editor constructor. Added a default method for wrapVal() that throws the field details to get a better idea of what's going on (or, if I get no more throws, the class just wants the method defined and I can let it go). Clearly the python function gets '' as dialog_id, though I can't see how. Could be that concatenating the array index silently fails thanks to the index being an int; converting it to string via |tr; now that's throwing too because of the ugettext_ugly function. Adding an explicit convert-to-string only in chair_tag.py It's stupid that it worked. Let's not use Django next time. rolling back form_dialog.py On the JS diagnostic, the offending element is the submit button. Verified that the constructor doesn't add input[type=submit] to its fields or call install(). In fact it shouldn't even call the constructor, so it's unclear how the element gets a RowField at all. Switched things around to use $().is(':submit') instead of comparing attributes. Also improving diagnostic throw just in case to identify matched elements. Now it seems the CSRF token is showing up, and obviously that doesn't belong either (although why it wouldn't be assigned a wrapVal function is a mystery). Filter the fields by :not([type=hidden]). jQuery now throws when appending the description. Used reduce to cram all the <p> into a <span>. Now the input elements are showing up in the table anyway. It seems as if the <select> doesn't show up, but the chosen library adds additional elements; could be the case that chosen is hiding those itself. Wrapping the form hidden elements in a display:none container. Also adding .delete to the delete field's td so that, if the CSS works, it won't be hidden. The edit buttons now fail to pop the modals. No exception is thrown. My HTML is already following the Bootstrap docs to the letter, but it's worth modifying the HTML to use sample code from the library just to make sure. Also adding a call to focus() instead of counting on bootstrap to do that itself. Also converting the index to string explicitly, though that seems to be going alright already. Checked the href itself, missing the word "has", so that will probably fix it. Fixed typo. The submit button is wanting to reload the page; tried a few ways to intercept this behavior while re-using the form_dialog template. Got it. The cancel button is still saving the data. Apparently that somehow turns up with :submit selector. Added a class, .cancel, as a hack to prevent this. The submit button now fails to close the dialog. Hacking the click handler to close the modal manually. Models display as text, save as primary key, link when appropriate? Check. Delete works? Check. Dialog pops? Check. Dialog closes on save? Check Dialog closes on cancel but doesn't update table? Check. Looks like we're good. Now to check it out on my phone... As predicted, the table still looks bad and messes with the page flow, which we decided to not get rid of. But the edit dialog is easy to find, pops right, saves right, looks slick. I think we have a winner. Implementing for the is_associate table. Picture perfect. Implementing for unscheduled_time_contributions.html. View of same name. Url accounting/unscheduled-time/. As of now it redirects to accounting/work. Possibly because there are no projects. Also looks like the view redirects if the agent is not found via get_agent(). Adding a bunch of test data to use for a dummy project. The resource class I use for all resources is Test. Added: Resource Types: Lemonade, Lemon, Water, Juicer, Sugar, Squeezing Agents: Lemonade Stand Holding for input on how to set up the rest of the model system. Create new classical NRP for the Vedun project
April 17, 2018 Time Contribution davidh Verdun Work - Programming for product 1.15 HR Testing out the new editable table before the workparty Create new classical NRP for the Vedun project
April 15, 2018 Time Contribution Winluck Verdun Work - Analysis and Strategy 2.00 HR Worked with Tibi on the MESI presentation to brainstorm on its strategy and structuring its format to lead into Verdun project next steps. Writing the MESI memo Document - Documentation: Memo pour l'economie collaborative
April 15, 2018 Time Contribution Winluck Verdun Work - Writing 0.50 HR Studied MESI memo working doc and referenced materials in preparation of memo drafting meeting with Tibi Writing the MESI memo Document - Documentation: Memo pour l'economie collaborative
April 13, 2018 Time Contribution davidh Verdun Work - Programming for product 3.18 HR Continuing to work on editable table. Tried several approaches to getting Django to help with this, ended up doing the whole thing with ES6+ & jQuery. Create new classical NRP for the Vedun project
April 12, 2018 Time Contribution davidh Verdun Work - Programming for product 7.42 HR Picking up syntax fixes with process_oriented_logging.html Modified chair_tag.chair() to handle object fields a little better. Added a filter, |s to pluralize pre-translation, will sweep through previous commits with ack-grep to implement. Added another chair_tag filter, |sp, to concatenate with a space added. This is for convenience, no need to sweep previous commits. Finished with syntax, pulling to server, grepping for |s Finished with that, resuming debugging Fixed missing load in agents.html Fixed typo in agent.html Fixed more syntax in agent.html Now the URL is acting silly. Used |escape and |safe to prevent default escaping. Fixed missing load in demand.html Supply.html claims it can't find the variable 't_xchg' on line 89 when it clearly can on line 82, still looking into why. Apparently outer scope variables aren't visible from inner scope. Let's not use Django next time. Done sweeping that up. Fixed missing space in demand.html Resuming going down the list of accessible pages with agent-value-accounting, but now that I look at it this is an unnecessarily convoluted approach because I'll end up trying to create a lot of objects at random. I'd better come up with a model system first. Caught a template I missed when moving declarations around, exchange_types.html, and fixed. Switching gears to check out the editable table prototype in agent_associations.html Can't seem to find the dialog_id variable for the form_dialog includer. Fixed the syntax on that, maybe that will help. Nope. Changed the python tag library code to construct default arguments in the function Create new classical NRP for the Vedun project
April 12, 2018 Time Contribution Charles SENSORICA Work - Meeting 2.00 HR Open Working on Consultancy Services
April 12, 2018 Time Contribution davidh Verdun Work - Programming for product 2.00 HR Been working on the editable table Create new classical NRP for the Vedun project
April 11, 2018 Time Contribution davidh Verdun Work - Programming for product 4.68 HR Debugging HTML output and UI The page title appears to be example.com; this is wrong. The site name should be in a template variable SITE_NAME per valuenetwork/templates/theme_bootstrap/base.html That was a lot more difficult to find on documentation than it should have been. Updated the SITES config in settings.py That caused an error, so I rolled it back and went in through the admin interface to change it through the DB. Tried to check on agent_assoc_type.html, but it's not accessible. Need to add an agent to check out agent_associations. Also this is the editable table prototype. Trying to get to the simple stuff at the moment, will return to this. agent_type.html : no view can access this. agent_value_accounting.html : view agent_value_accounting : url accounting/agent-value-accounting/<agent>/ Can't nest {% trans %}. Snap. That syntax error is probably going to pop up everywhere. Replaced in this case with {% trans as %}, but I bet it will be easier to move the localizations to the chair_tag.py or chair.html. Set it up in chair_tag.py; now it just needs to have the {% trans %} removed. Need to coerce to string also. And now it won't replace the template variables inside the tag; again this will pop up everywhere. Need to replace all instances of "const{{var}}" with "const"|add:var Since this {% {% trans %} %} thing is crazy common, making a quick filter to use ugettext_ugly Fixed everything down to process_oriented_logging.html Will continue tomorrow.(files committed but server not yet updated) Create new classical NRP for the Vedun project