This library implements a logging/tracing debugger for pinp templates. Given a template and arguments it will call that template and trace all pinp calls. For each pinp call it will store the context - which object the call was on, where the template called was defined, which arguments were passed, what library the template was in, what result the template returned and which part of the generated output was returned by each template call. All this is put into a large json array by debug.gather.json, which is called through ajax by debugger.html.
You will need Ariadne release > 8.3.1 ( revision 6300 in svn ), which has support for onbeforecall/oncall events.
1 - load the library for your project, unnamed:
2 - call the debugger in your browser with the template and arguments to test:
3 - wait a bit..
4 - click on any template to show its data or highlight its output for that call.
- add a user interface for the template to call and its arguments
- add an option to trace specific variables/arguments/context info over all calls and display the changes in a list
- show headers generated per template
- keep track of alle event listeners added and called
- keep track of global variables ( ar::putvar() )
- add links to the debugger in the template editor / ariadne backend options
- keep track of output buffers if a template uses ob_start, the debugger gets confused. if output buffer level > 0, the debugger should store the data somewhere untill the output buffer level is 0 again.
- show a trace of diffs of variables over multiple calls
- make the template call tree collapsible
- on hover over a template name, highlight its output - render outputSource with all highlight spans and just change classes on the span to actually highlight
- if outputSource has a scrollbar, scroll to the highlighted section