Mike Taylor [Wed, 3 Jun 2015 16:26:18 +0000 (17:26 +0100)]
Part of ACREP-35, and surely the last part?
Establish local $ as a copy of mkws.$.
This is not necessary when running using a local copy of MKWS, when $
already has that value. But for reasons that I don't understand at
all, $ is undefined when running the exact same code using a copy of
MKWS from the production server.
Mike Taylor [Fri, 22 May 2015 10:53:39 +0000 (11:53 +0100)]
Merge branch 'master' into urlstate
Mike Taylor [Fri, 22 May 2015 10:53:21 +0000 (11:53 +0100)]
Part of ACREP-35.
From the "categories" widget, remove the unnecessary and harmful check
that authentication has been completed. Of course it generally has NOT
at the time the widget is created, resulting in an assertion-failure.
But this is unnecessary anyway, because the body of the widget's code
is in any case run as a callback when authentication is complete.
Mike Taylor [Fri, 22 May 2015 07:10:25 +0000 (08:10 +0100)]
Merge branch 'master' into urlstate
Mike Taylor [Fri, 15 May 2015 12:59:55 +0000 (12:59 +0000)]
mkws-examples config file in urlstate branch copied from that in master branch. I don't understand how they diverged, but at least knowing they DID diverge explains why we were running from the wrong DocumentRoot
Mike Taylor [Fri, 15 May 2015 12:56:06 +0000 (12:56 +0000)]
For reasons that I don't understand, example.indexdata.com was
using DocumentRoot /home/indexdata/mkws/examples/htdocs/.
I patched it up to use /home/indexdata/demos instead for today's demo.
But I want to understand how it got like this.
Mike Taylor [Wed, 13 May 2015 16:23:16 +0000 (17:23 +0100)]
Part of MKWS-387.
Remove mkws.limitTarget and mkws.limitQuery functions.
THis stuff is now handled from inside the team.
Mike Taylor [Wed, 13 May 2015 16:22:31 +0000 (17:22 +0100)]
limitQuery() and limitTarget are now pure local functions, not members.
Mike Taylor [Wed, 13 May 2015 16:17:33 +0000 (17:17 +0100)]
Lazier handling of what gets updated when hash changes.
Support "query" in hash fragment.
Jason Skomorowski [Tue, 12 May 2015 18:17:51 +0000 (14:17 -0400)]
Revert "Added examples/htdocs/widgetsrising because IT WAS ON THE LIVE SITE BUT NOT CHECKED IN. I have no idea what it is, but Jason owns the files, so presumably he can comment"
This reverts commit
5f39e98368832c582017b10f9ce0bb77eb441c44.
These files are a mockup that more rightly lives in the demos repo but
predates that.
Mike Taylor [Tue, 12 May 2015 10:29:50 +0000 (11:29 +0100)]
Remove no-longer-needed warnings from facets widget.
Mike Taylor [Tue, 12 May 2015 10:29:26 +0000 (11:29 +0100)]
Facet widget now uses filterSet.deepCopy() instead of flawed $.extend() invocation.
Finally solves the evil aliasing problem that flummoxed me last night.
Thanks to Jakub for fruitful discussion.
Mike Taylor [Tue, 12 May 2015 10:26:32 +0000 (11:26 +0100)]
Eliminate base variable.
Mike Taylor [Tue, 12 May 2015 10:26:16 +0000 (11:26 +0100)]
Remove unusual teamName variable.
Mike Taylor [Tue, 12 May 2015 10:15:16 +0000 (11:15 +0100)]
Fix the deepCopy() method to extend an empty array instead of object.
Remove debugging output from deepCopy().
Remove _list() private accessor method.
Mike Taylor [Tue, 12 May 2015 10:01:49 +0000 (11:01 +0100)]
Add deepCopy() method (not yet working) and the private methods that it uses.
Mike Taylor [Tue, 12 May 2015 09:21:47 +0000 (10:21 +0100)]
Insert missing semicolons after function assignments.
Mike Taylor [Tue, 12 May 2015 08:59:41 +0000 (08:59 +0000)]
Inexplicable changes to examples/apache2/mkws-examples which SOMEONE MADE AND DID NOT CHECK IN. I don't know what their intention was. Come ON, people.
Mike Taylor [Tue, 12 May 2015 08:57:42 +0000 (08:57 +0000)]
Added examples/htdocs/widgetsrising because IT WAS ON THE LIVE SITE BUT NOT CHECKED IN. I have no idea what it is, but Jason owns the files, so presumably he can comment
Mike Taylor [Tue, 12 May 2015 08:50:30 +0000 (09:50 +0100)]
Use an unchanging base. Still doesn't help.
Mike Taylor [Tue, 12 May 2015 07:35:46 +0000 (08:35 +0100)]
Simplify to a version that still doesn't work, but in the same way.
Mike Taylor [Mon, 11 May 2015 22:18:22 +0000 (23:18 +0100)]
Attempt to generate filter fragments that are a based on the
prevailing state.
This DOES NOT WORK due to an aliasing bug that I can make no sense
of. I'll discuss this with Jakub tomorrow.
Mike Taylor [Mon, 11 May 2015 14:05:05 +0000 (15:05 +0100)]
Re-fix ACREP-30 in a way that works on production.
The regular expression that recognises harvested targets now works
correctly on either ZURL-style or UDB-style target identifiers. (The
question of why we get the first on the production system and the
second on my development system is a whole nother ball of wax.)
Mike Taylor [Mon, 11 May 2015 14:05:05 +0000 (15:05 +0100)]
Re-fix ACREP-30 in a way that works on production.
The regular expression that recognises harvested targets now works
correctly on either ZURL-style or UDB-style target identifiers. (The
question of why we get the first on the production system and the
second on my development system is a whole nother ball of wax.)
Mike Taylor [Mon, 11 May 2015 13:34:06 +0000 (14:34 +0100)]
Merge branch 'master' into urlstate
Mike Taylor [Mon, 11 May 2015 13:32:27 +0000 (14:32 +0100)]
Fixes ACREP-30.
Add new "Type" column to targets-table template.
Mike Taylor [Mon, 11 May 2015 13:30:10 +0000 (14:30 +0100)]
Part of ACREP-30.
Extend the "compared" Handlebars helper to implement a "matches"
operator for regular-expression matching.
Mike Taylor [Mon, 11 May 2015 13:32:27 +0000 (14:32 +0100)]
Fixes ACREP-30.
Add new "Type" column to targets-table template.
Mike Taylor [Mon, 11 May 2015 13:30:10 +0000 (14:30 +0100)]
Part of ACREP-30.
Extend the "compared" Handlebars helper to implement a "matches"
operator for regular-expression matching.
Mike Taylor [Mon, 11 May 2015 11:44:06 +0000 (12:44 +0100)]
Extend targets-template comment to note that we have the "name" field.
Wolfram Schneider [Mon, 11 May 2015 08:44:44 +0000 (08:44 +0000)]
better description
Wolfram Schneider [Sun, 10 May 2015 16:09:48 +0000 (16:09 +0000)]
configure watitime for Records/Targets check
Wolfram Schneider [Sun, 10 May 2015 16:06:25 +0000 (16:06 +0000)]
wait a little bit for source facets to avoid race conditions of source facets updates, MKWS-385
Mike Taylor [Fri, 8 May 2015 23:04:44 +0000 (00:04 +0100)]
Support target and field facets in hashchange handler.
Working nicely!
Mike Taylor [Fri, 8 May 2015 22:50:13 +0000 (23:50 +0100)]
Facet widgets now generate HREFs with facet data in fragments instead of actions.
Mike Taylor [Fri, 8 May 2015 22:49:01 +0000 (23:49 +0100)]
facet template now uses href instead of linkdata.
Mike Taylor [Fri, 8 May 2015 20:11:05 +0000 (21:11 +0100)]
Revert to
b64fc897f864920691f5395eea44f7d534bd4551
Overrides in urlFragment can after all replace the set of filters.
Mike Taylor [Fri, 8 May 2015 20:07:37 +0000 (21:07 +0100)]
Extend state by filter entries and overrides in a single shot.
Mike Taylor [Fri, 8 May 2015 20:07:07 +0000 (21:07 +0100)]
Extend state by overrides AFTER generating filter entries, not before.
Mike Taylor [Fri, 8 May 2015 20:06:43 +0000 (21:06 +0100)]
In urlFragment, break creation of temporary state in two.
Mike Taylor [Fri, 8 May 2015 19:52:54 +0000 (20:52 +0100)]
Do not pass unused field "field" into facet template.
Mike Taylor [Fri, 8 May 2015 19:52:36 +0000 (20:52 +0100)]
Remove unused field "field" from facet template.
Mike Taylor [Fri, 8 May 2015 19:41:23 +0000 (20:41 +0100)]
Merge branch 'master' into urlstate
Wolfram Schneider [Thu, 7 May 2015 15:08:07 +0000 (15:08 +0000)]
assume batch testing if running on localhost:4040
Wolfram Schneider [Thu, 7 May 2015 14:52:57 +0000 (14:52 +0000)]
enable to tune timeouts, MKWS-384
This can be activated with the URL parameter &second=number
second is by default 1000 ms. To increase the
value by 2, use &second=2000
Mike Taylor [Sat, 2 May 2015 19:14:10 +0000 (20:14 +0100)]
Part of MKWS-64.
Handle changes in "size" state.
Mike Taylor [Sat, 2 May 2015 19:13:56 +0000 (20:13 +0100)]
Part of MKWS-64.
When a page-size is selected, update the URL rather then changing
state directly.
Mike Taylor [Sat, 2 May 2015 19:07:07 +0000 (20:07 +0100)]
Handle changes in "sort" state.
Mike Taylor [Sat, 2 May 2015 19:06:33 +0000 (20:06 +0100)]
Part of MKWS-64.
When a sort-criterion is selected, update the URL (though the wonder
of assigning to window.location.href) rather then changing state
directly.
Mike Taylor [Sat, 2 May 2015 17:26:26 +0000 (18:26 +0100)]
Recognise all state-changes from fragments.
Handle the first of these: switching to a different page.
Mike Taylor [Fri, 1 May 2015 20:53:52 +0000 (21:53 +0100)]
Towards MKWS-64.
Dispatch team.handleChanges() for every team represented in the new
fragment.
Mike Taylor [Fri, 1 May 2015 20:52:36 +0000 (21:52 +0100)]
Towards MKWS-64.
New (incomplete) function handleChanges(), compares old and new state
objects to determine what's changed ... but doesn't yet act on it.
Mike Taylor [Fri, 1 May 2015 19:57:48 +0000 (20:57 +0100)]
Expand mkws-core parse_fragment() function to parse apart the
individual teams' sets of parameters.
Mike Taylor [Fri, 1 May 2015 19:54:36 +0000 (20:54 +0100)]
Add team method parseFragment()
Mike Taylor [Fri, 1 May 2015 16:27:49 +0000 (17:27 +0100)]
First part of parsing hash fragment.
Mike Taylor [Fri, 1 May 2015 16:26:33 +0000 (17:26 +0100)]
Comment out old, no-longer-needed debugging.
Jason Skomorowski [Fri, 1 May 2015 16:03:24 +0000 (12:03 -0400)]
Revert "Jasmine now expects --forceExit to be case-sensitive"
This reverts commit
80ab3be75c7e6df9f2d23660fb9ff14d5f31dd21.
...the node ecosystem is insane. "npm update" seems to have installed
a beta version. To update stable packages I apparently need to do
rm -rf node_modules && npm install. Which is silly.
Mike Taylor [Fri, 1 May 2015 15:31:01 +0000 (16:31 +0100)]
Remove old commented-out debugging output.
Mike Taylor [Fri, 1 May 2015 15:29:13 +0000 (16:29 +0100)]
Make freeze/unfreeze debug output more consistent.
Mike Taylor [Fri, 1 May 2015 15:27:26 +0000 (16:27 +0100)]
Remove extraneous warning in team.urlFragment().
Mike Taylor [Fri, 1 May 2015 15:16:15 +0000 (16:16 +0100)]
Merge branch 'master' into urlstate
Jason Skomorowski [Fri, 1 May 2015 14:34:32 +0000 (10:34 -0400)]
Handlebars 3.0.3
Jason Skomorowski [Fri, 1 May 2015 14:10:53 +0000 (10:10 -0400)]
Remove deprecated sample spec from old Jasmine docs
Jason Skomorowski [Fri, 1 May 2015 13:56:20 +0000 (09:56 -0400)]
Jasmine now expects --forceExit to be case-sensitive
Mike Taylor [Fri, 1 May 2015 13:52:58 +0000 (14:52 +0100)]
Part of MKWS-64.
The pager widget uses team.urlFragment() to generate state-summarising
links for the values passed into the template, rather then click
actions.
Mike Taylor [Fri, 1 May 2015 13:51:47 +0000 (14:51 +0100)]
Part of MKWS-64.
Expand the urlFragment() method to accept an optional set of overrides
which take precedence over the values of the present state. This can
be used to generate fragments for actions which change state.
Mike Taylor [Fri, 1 May 2015 13:49:32 +0000 (14:49 +0100)]
Part of MKWS-64.
Change "pager" template to accept prevHref, nextHref and href
arguments in place of the old prevClick, nextClick and click.
Mike Taylor [Fri, 1 May 2015 11:02:28 +0000 (12:02 +0100)]
Emit fragment on other state-changes.
Mike Taylor [Fri, 1 May 2015 10:35:04 +0000 (11:35 +0100)]
Fix MKWS-383, I hope.
Before setting opacity of newly-active facets and records widgets to
100%, stop any existing animation, namely the fadeTo that is making
them transparent. I think a race condition was resulting in them
sometimes remaining invisible after a new search was triggered.
Mike Taylor [Thu, 30 Apr 2015 16:54:22 +0000 (17:54 +0100)]
Whitespace.
Mike Taylor [Thu, 30 Apr 2015 16:54:06 +0000 (17:54 +0100)]
team.urlFragment() uses filterSet.fragmentItems() to render out the
selected filters as a set of key=value pairs.
Mike Taylor [Thu, 30 Apr 2015 16:52:33 +0000 (17:52 +0100)]
New filterSet method, fragmentItems().
Returns a hash of key=value pairs representing the filter-set.
These will become part of the URL-fragment representing the state.
Mike Taylor [Thu, 30 Apr 2015 16:02:55 +0000 (17:02 +0100)]
Team object now carries a copy of its initial state.
This is used by team.urlFragment to generate a fragment representing state diff.
FOR NOW, this fragment is emitted as a warning when doing search or show.
Currently, facets don't work at all, as they are stored in a non-string object.
Mike Taylor [Thu, 30 Apr 2015 13:45:43 +0000 (14:45 +0100)]
Rename m_state members in a form better suited to be URL components.
Mike Taylor [Wed, 29 Apr 2015 15:53:11 +0000 (16:53 +0100)]
Fix very error-prone MarkDown table alignment.
Mike Taylor [Wed, 29 Apr 2015 15:53:11 +0000 (16:53 +0100)]
Fix very error-prone MarkDown table alignment.
Mike Taylor [Tue, 28 Apr 2015 16:17:38 +0000 (17:17 +0100)]
All persistent state moved into m_state object.
Mike Taylor [Tue, 28 Apr 2015 11:27:32 +0000 (12:27 +0100)]
Introduce new m_state object inside the team.
The old m_query variable is now an element of this, m_state.query.
Mike Taylor [Mon, 27 Apr 2015 17:08:19 +0000 (18:08 +0100)]
Begin sorting part of team state into persistent and internal.
Mike Taylor [Mon, 27 Apr 2015 16:34:12 +0000 (17:34 +0100)]
Extend comment, again mostly so I can exercise git.
Mike Taylor [Mon, 27 Apr 2015 16:32:29 +0000 (17:32 +0100)]
Add comment towards MKWS-64, mostly so I can push the new branch.
Mike Taylor [Thu, 26 Mar 2015 17:03:10 +0000 (17:03 +0000)]
Change-logging.
Mike Taylor [Thu, 26 Mar 2015 17:02:25 +0000 (17:02 +0000)]
Add another Handlebars helper, "compare".
This code is by Mike Griffin, taken from this blog comment:
http://doginthehat.com.au/2012/02/comparison-block-helper-for-handlebars-templates/#comment-44
Clearly something like it ought to be in Handlebars.
Mike Taylor [Thu, 26 Mar 2015 15:34:39 +0000 (15:34 +0000)]
Change-logging.
Mike Taylor [Thu, 26 Mar 2015 15:31:44 +0000 (15:31 +0000)]
Part of ACREP-22.
Add a new helper, mkws-if-either, which we need in order to test
whether we have either of the md-free_to_read or md-license_url
fields. Astonishingly, there is no way to make such a check using
stock Handlebars.
Mike Taylor [Thu, 26 Mar 2015 11:42:35 +0000 (11:42 +0000)]
Typo
Wolfram Schneider [Tue, 24 Mar 2015 21:45:49 +0000 (21:45 +0000)]
downgrade jsdom to 3.x, MKWS-381
Mike Taylor [Tue, 10 Mar 2015 12:02:53 +0000 (12:02 +0000)]
Fix SUP-725.
When the wikipedia widget finds no records, emit a "Not found in
Wikipedia" message rather than a blank widget with a meaningless
"Source: Wikipedia" attribution.
Mike Taylor [Tue, 10 Mar 2015 12:01:52 +0000 (12:01 +0000)]
mike2.html changed to be a Wikipedia-widget test-harness.
Mike Taylor [Mon, 9 Mar 2015 17:23:35 +0000 (17:23 +0000)]
Last part of MKWS-58.
Documentation for the new freeze_opacity configuration setting.
Mike Taylor [Mon, 9 Mar 2015 17:20:05 +0000 (17:20 +0000)]
Last part of MKWS-58 (apart from documentation)
Only fade the frozen record-display if the freeze_opacity setting is provided.
If it is, then fade it to the specified level.
Mike Taylor [Mon, 9 Mar 2015 17:15:01 +0000 (17:15 +0000)]
Cleaning up MKWS-58.
Use debug-level logging instead of info-level.
Mike Taylor [Mon, 9 Mar 2015 17:13:43 +0000 (17:13 +0000)]
Cleaning up MKWS-58.
Remove unnecessary named function setRecordData(), used only once.
Just use a closure.
Mike Taylor [Mon, 9 Mar 2015 17:12:13 +0000 (17:12 +0000)]
Move declarations of state variable m_dataToRedraw and m_frozen to
just before the first function that uses each.
Mike Taylor [Mon, 9 Mar 2015 17:09:58 +0000 (17:09 +0000)]
Part of MKWS-58.
Eliminate unnecessary state variable m_needRedraw, which is always tied to m_data.
Rename m_data to m_dataToRedraw, better expressing its function.
Mike Taylor [Mon, 9 Mar 2015 16:50:11 +0000 (16:50 +0000)]
Remove commented-out code for more sophisticated timeout that fades the record display.
Mike Taylor [Mon, 9 Mar 2015 16:49:48 +0000 (16:49 +0000)]
Progress of MKWS-58.
Record-display freeze now times out after 1000ms.
Mike Taylor [Mon, 9 Mar 2015 16:38:08 +0000 (16:38 +0000)]
Part of MKWS-58.
Trigger freeze on mouseMove rather than mouseEnter.
That will allow continuing movement to keep re-triggering.
Mike Taylor [Mon, 9 Mar 2015 15:58:58 +0000 (15:58 +0000)]
Towards a more sophisticated MKWS-58 fix.
Add commented-out, over-complex mousemove event-handler.
Mike Taylor [Mon, 9 Mar 2015 15:58:09 +0000 (15:58 +0000)]
Simple fix for MKWS-58.
Freeze record list whenever mouse is above it.
For now, we also give a visual signal by increasing its opacity.