12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091929394 |
- // ******* Recording MANAGER ******** //
- $axure.internal(function($ax) {
- var _recording = $ax.recording = {};
- $ax.recording.recordEvent = function(element, eventInfo, axEventObject, timeStamp) {
- var elementHtml = $jobj(element);
- var className = elementHtml.attr('class');
- var inputValue;
- if(className === 'ax_checkbox') {
- inputValue = elementHtml.find('#' + element + '_input')[0].checked;
- eventInfo.inputType = className;
- eventInfo.inputValue = inputValue;
- }
- if(className === 'ax_text_field') {
- inputValue = elementHtml.find('#' + element + '_input').val();
- eventInfo.inputType = className;
- eventInfo.inputValue = inputValue;
- }
- var scriptId = $ax.repeater.getScriptIdFromElementId(element);
- var diagramObjectPath = $ax.getPathFromScriptId(scriptId);
- var form = {
- recordingId: $ax.recording.recordingId,
- elementID: element,
- eventType: axEventObject.description,
- 'eventInfo': eventInfo,
- // eventObject: axEventObject,
- 'timeStamp': timeStamp,
- 'path': diagramObjectPath
- // ,
- // 'trigger': function() {
- // $ax.event.handleEvent(element, eventInfo, axEventObject);
- // return false;
- // }
- };
- $ax.messageCenter.postMessage('logEvent', form);
- };
- $ax.recording.maybeRecordEvent = function(element, eventInfo, axEventObject, timeStamp) {
- };
- $ax.recording.recordingId = "";
- $ax.recording.recordingName = "";
- $ax.messageCenter.addMessageListener(function(message, data) {
- if(message === 'startRecording') {
- $ax.recording.maybeRecordEvent = $ax.recording.recordEvent;
- $ax.recording.recordingId = data.recordingId;
- $ax.recording.recordingName = data.recordingName;
- } else if(message === 'stopRecording') {
- $ax.recording.maybeRecordEvent = function(element, eventInfo, axEventObject, timeStamp) {
- };
- }
- else if(message === 'playEvent') {
- var eventType = makeFirstLetterLower(data.eventType);
- var inputElement;
- var dObj = data.element === '' ? $ax.pageData.page : $ax.getObjectFromElementId(data.element);
- if(!data.axEventObject) {
- data.axEventObject = dObj && dObj.interactionMap && dObj.interactionMap[eventType];
- }
- data.eventInfo.thiswidget = $ax.getWidgetInfo(data.element);
- data.eventInfo.item = $ax.getItemInfo(data.element);
- if(data.eventInfo.inputType && data.eventInfo.inputType === 'ax_checkbox') {
- inputElement = $jobj(data.element + '_input');
- inputElement[0].checked = data.eventInfo.inputValue;
- }
- if(data.eventInfo.inputType && data.eventInfo.inputType === 'ax_text_field') {
- inputElement = $jobj(data.element + '_input');
- inputElement.val(data.eventInfo.inputValue);
- }
- $ax.event.handleEvent(data.element, data.eventInfo, data.axEventObject, false, true);
- }
- });
- var makeFirstLetterLower = function(eventName) {
- return eventName.substr(0, 1).toLowerCase() + eventName.substr(1);
- };
- });
|