Skip to content

Commit

Permalink
Fixed issue #8088: Error: JSON undefined on IE while click on change …
Browse files Browse the repository at this point in the history
…chart type button on statistics

Fixed issue: Error when viewing participants in CPDB
  • Loading branch information
c-schmitz committed Oct 7, 2013
1 parent 3f2c7e2 commit 3fe6d29
Show file tree
Hide file tree
Showing 5 changed files with 532 additions and 2 deletions.
1 change: 1 addition & 0 deletions application/controllers/admin/statistics.php
Expand Up @@ -117,6 +117,7 @@ public function run($surveyid = 0, $subaction = null)

//Call the javascript file
$this->getController()->_js_admin_includes(Yii::app()->getConfig('adminscripts') . 'statistics.js');
$this->getController()->_js_admin_includes(Yii::app()->getConfig('adminscripts') . 'json-js/json2.min.js');

$aData['display']['menu_bars']['browse'] = $clang->gT("Quick statistics");

Expand Down
4 changes: 2 additions & 2 deletions application/models/Participants.php
Expand Up @@ -291,8 +291,8 @@ private function getParticipantsSelectCommand($count = false, $attid, $search =
foreach($attid as $key=>$attid)
{
$attid = $attid['attribute_id'];
$databasetype = Yii::app()->db->getDriverName();
if ($databasetype=='mssql' || $databasetype=="sqlsrv" || $sDatabaseType == 'dblib')
$sDatabaseType = Yii::app()->db->getDriverName();
if ($sDatabaseType=='mssql' || $sDatabaseType=="sqlsrv" || $sDatabaseType == 'dblib')
{
$selectValue[]= "cast(attribute".$attid.".value as varchar(max)) as a".$attid;
} else {
Expand Down
42 changes: 42 additions & 0 deletions scripts/admin/json-js/README
@@ -0,0 +1,42 @@
JSON in JavaScript


Douglas Crockford
douglas@crockford.com

2010-11-18


JSON is a light-weight, language independent, data interchange format.
See http://www.JSON.org/

The files in this collection implement JSON encoders/decoders in JavaScript.

JSON became a built-in feature of JavaScript when the ECMAScript Programming
Language Standard - Fifth Edition was adopted by the ECMA General Assembly
in December 2009. Most of the files in this collection are for applications
that are expected to run in obsolete web browsers. For most purposes, json2.js
is the best choice.


json2.js: This file creates a JSON property in the global object, if there
isn't already one, setting its value to an object containing a stringify
method and a parse method. The parse method uses the eval method to do the
parsing, guarding it with several regular expressions to defend against
accidental code execution hazards. On current browsers, this file does nothing,
prefering the built-in JSON object.

json.js: This file does everything that json2.js does. It also adds a
toJSONString method and a parseJSON method to Object.prototype. Use of this
file is not recommended.

json_parse.js: This file contains an alternative JSON parse function that
uses recursive descent instead of eval.

json_parse_state.js: This files contains an alternative JSON parse function that
uses a state machine instead of eval.

cycle.js: This file contains two functions, JSON.decycle and JSON.retrocycle,
which make it possible to encode cyclical structures and dags in JSON, and to
then recover them. JSONPath is used to represent the links.
http://GOESSNER.net/articles/JsonPath/

0 comments on commit 3fe6d29

Please sign in to comment.