View Issue Details

IDProjectCategoryView StatusLast Update
06485Development Expression Managerpublic2012-11-26 22:25
Reporteruser16774Assigned Touser16774 
Status assignedResolutionopen 
Summary06485: Expression manager link doesn't seem quite right

In the survey bar under the tools menu the link to the expression manager takes me to /index.php/admin/expressions which isn't survey specific and doesn't match the LimeSurvey GUI. In addition, clicking the Show Survey logic file link on this page leads to a PHP error since no survey ID is specified.

Additional Information

I propose that we link directly to index.php/admin/expressions/survey_logic_file/sid/SURVEYID since that's the only page that has useful survey-specific information. There's no reason for the unit tests to have accessible links pointing to the from the admin menu.

TagsNo tags attached.




2012-08-15 18:21

reporter   ~20431

Personally, I'd recommend putting the EM link on the main admin bar, and not make it survey specific (since it is not survey-specific).

If the team wants to refactor what it contains, that is also fine.

We certainly want easy access to the unit tests ourselves, but general users don't need that.

However, they should have access to:
(1) List of available functions and their syntax
(2) Core unit tests - that way they can see which features behave inconsistently across PHP and JavaScript
(3) Preview and bulk-convert conditions to relevance
(4) Optionally, add a link to clear the EM cache (for the rare cases that that is needed - would make a call to LimeExpressionManager::setDirtyFlag()).


2012-08-20 06:33


Sounds fine to add a new main menu link to EM for a function list and unit test as long as it conforms to the UI unlike what we have now. I observed that there's already a link in the survey menu for generating the survey logic file, though it could use to have it's UI improved. In that case you would also want one for conditions conversion.

Here's my proposal

  • Add top-level link for EM
    • Link to list available functions
    • Links to run various unit tests
  • Add convert conditions link to survey menu -> tools
    • Automatically simulates the conversion and offer to convert
  • Remove the EM link from the survey -> tools menu
  • Make the survey logic display with the standard backend template


2012-08-20 13:10

administrator   ~20547

ajs, sounds fine - can you do it?



2012-08-20 15:31

reporter   ~20550

ajs, those are good ideas. I'd also recommend adding the following. I had these in my old system and they were very helpful for testing and debugging complex surveys:

(1) Design-time: add pop-up window that can stay active into which authors can type EM expressions and see the results. This would be similar to the Integration Unit Tests which show four columns: (a) raw string, (b) syntax-highlighted string, (c) results, (d) list of variables used (color coded to show whether there were any syntax errors).
(2) Run-time EM debugger which includes the following (this could be done as a separate view at the bottom of the page that is only available in admin mode):
(a) Like (1) letting authors/testers enter EM expressions or strings and see the results in the current scope (e.g. based upon the currently entered data).
(b) Reverse chronological listing of collected data (would show the qcode and SGQA names, the question text, and the currently stored value), showing most recently entered data at the top.


2012-08-20 20:21


All of those sound like good things to do, but I'm guess we'll want them to wait until 2.1+. I'll work on the basic stuff I listed above as soon as I finish my project.



2012-11-26 22:25

administrator   ~22564

Fix me! ;)

Issue History

Date Modified Username Field Change
2012-08-15 15:13 user16774 New Issue
2012-08-15 15:13 user16774 Status new => assigned
2012-08-15 15:13 user16774 Assigned To => TMSWhite
2012-08-15 18:21 TMSWhite Note Added: 20431
2012-08-17 15:17 TMSWhite Assigned To TMSWhite =>
2012-08-17 15:17 TMSWhite Status assigned => feedback
2012-08-20 06:33 user16774 Note Added: 20540
2012-08-20 06:33 user16774 Status feedback => new
2012-08-20 13:10 c_schmitz Note Added: 20547
2012-08-20 15:31 TMSWhite Note Added: 20550
2012-08-20 20:21 user16774 Note Added: 20553
2012-08-20 20:22 user16774 Assigned To => user16774
2012-08-20 20:22 user16774 Status new => assigned
2012-10-02 14:58 c_schmitz Project Bug reports => Development
2012-11-26 22:25 c_schmitz Note Added: 22564