(function(tmpJSONParser, $, undefined) { var base_parameter_json = {}; var movement_parameter_json = {}; function _getLoggedUser() { var pybossa_rembember_token = Cookies.get('remember_token'); var splitted_token_id = pybossa_rembember_token.split('|'); return splitted_token_id.length > 0 ? splitted_token_id[0] : 'anonymous'; } function _setupBaseParameterJSON(tmpJSON) { base_parameter_json["userId"] = _getLoggedUser(); base_parameter_json["sinal"] = tmpJSON["sinal"]; base_parameter_json["interpolacao"] = "normal"; base_parameter_json["movimentos"] = []; movement_parameter_json = { "facial" : {}, "mao_direita" : {}, "mao_esquerda" : {} }; base_parameter_json["movimentos"].push(movement_parameter_json); } function _parseParameterValue(value) { return !isNaN(value) ? parseInt(value) : value; } function _parseTempFacialParameterJSON(tmpJSON) { var attrs = dynworkflow.getFacialParameters(); for (var i in attrs) { var attr = attrs[i]; parameterValue = tmpJSON["facial"][attr][0]; movement_parameter_json["facial"][attr] = _parseParameterValue(parameterValue); } } function _parseTempMovementParameterJSON(tmpJSON, hand) { var movimentConfig = tmpJSON[hand]["movimento"]; if (typeof movimentConfig == "undefined") return; var movementName = movimentConfig[0]; var attrs = dynworkflow.getMovementParameters(movementName); var parsedHand = hand == "right-hand" ? "mao_direita" : hand; parsedHand = hand == "left-hand" ? "mao_esquerda" : parsedHand; movement_parameter_json[parsedHand][movementName] = {}; for (var i in attrs) { var attr = attrs[i]; var parameterValue = ""; if (attr == "configuracao") { parameterValue = tmpJSON[hand][attr][1]; } else if (attr == "articulacao") { parameterValue = articulation.processValue(hand, tmpJSON[hand][attr]); } else { parameterValue = tmpJSON[hand][attr][0]; } movement_parameter_json[parsedHand][movementName][attr] = _parseParameterValue(parameterValue); } } tmpJSONParser.parse = function(tmpJSON) { _setupBaseParameterJSON(tmpJSON); _parseTempFacialParameterJSON(tmpJSON); _parseTempMovementParameterJSON(tmpJSON, "right-hand"); return base_parameter_json; }; }(window.tmpJSONParser = window.tmpJSONParser || {}, jQuery));