var FCSRecorder = Class.create({

  mode          : "rec",

  reply         : false,

  thinkingtime  : "10",
  recordingtime : "10",

  flashPlayerClient : undefined,
  playerPath        : "",

  recorder_area_id:"",
  playback_area_id:"",

  initialize: function (client) {

    this.flashPlayerClient = client;

  },


  createRecorder: function ( arg ) {

    //alert(arg.lcId);
    playerPath = static_path+"flash/exam/"+"FCS_rec.swf";

    var mySWFObject = new SWFObject( playerPath, arg.lcId, "300", "200", "8", "#FFFFFF");
    //var mySWFObject = new SWFObject( playerPath, arg.lcId, "300", "400", "8", "#FFFFFF");

    mySWFObject.addParam('wmode', 'transparent');
    mySWFObject.addParam('name',  'FCS_rec');
    mySWFObject.addParam('allowscriptaccess','sameDomain');

    mySWFObject.addVariable('lcId',       arg.lcId  );
    mySWFObject.addVariable('call_back',  arg.call_back );
    mySWFObject.addVariable('src',        arg.src );
    mySWFObject.addVariable('svr',        arg.svr );
    mySWFObject.addVariable('user',       arg.user );
    mySWFObject.addVariable('ttime',      arg.ttime );
    mySWFObject.addVariable('rtime',      arg.rtime );
    mySWFObject.addVariable('token',      arg.token );


    //alert("[DEBUG]"+playerPath+" -> "+mySWFObject.getSWFHTML());
    this.recorder_area_id = arg.recorder_area_id;

    mySWFObject.write(arg.recorder_area_id);

  },


  deleteRecorder: function () {

    $("#"+this.recorder_area_id).html("");

  },


  createPlayback: function ( arg ) {

    playerPath = static_path+"flash/exam/"+"FCS_playback.swf";

    var mySWFObject = new SWFObject( playerPath, arg.lcId, "73", "35", "8", "#FFFFFF");
    //var mySWFObject = new SWFObject( playerPath, arg.lcId, "1", "1", "8", "#FFFFFF");

    mySWFObject.addParam('wmode', 'transparent');
    mySWFObject.addParam('name', 'FCS_playback');
    mySWFObject.addParam('allowscriptaccess','sameDomain');

    mySWFObject.addVariable('lcId',       arg.lcId  );
    mySWFObject.addVariable('call_back',  arg.call_back );
    mySWFObject.addVariable('src',        arg.src );
    mySWFObject.addVariable('svr',        arg.svr );
    mySWFObject.addVariable('user',       arg.user );
    mySWFObject.addVariable('ttime',      arg.ttime );
    mySWFObject.addVariable('rtime',      arg.rtime );
    mySWFObject.addVariable('token',      arg.token );
    mySWFObject.addVariable('playbackmode',      arg.playbackmode );

    //alert("[DEBUG]"+playerPath+" -> "+mySWFObject.getSWFHTML());
    this.playback_area_id = arg.playback_area_id;

    mySWFObject.write(arg.playback_area_id);

  },

  createPlayback_for_Review: function ( arg ) {

    playerPath = static_path+"flash/exam/"+"FCS_playback.swf";

    var mySWFObject = new SWFObject( playerPath, arg.lcId, "73", "35", "8", "#FFFFFF");

    mySWFObject.addParam('wmode', 'transparent');
    mySWFObject.addParam('name', 'FCS_playback');
    mySWFObject.addParam('allowscriptaccess','sameDomain');

    mySWFObject.addVariable('lcId',       arg.lcId  );
    mySWFObject.addVariable('call_back',  arg.call_back );
    mySWFObject.addVariable('src',        arg.src );
    mySWFObject.addVariable('svr',        arg.svr );
    mySWFObject.addVariable('user',       arg.user );
    mySWFObject.addVariable('ttime',      arg.ttime );
    mySWFObject.addVariable('rtime',      arg.rtime );
    mySWFObject.addVariable('token',      arg.token );
    mySWFObject.addVariable('playbackmode',      arg.playbackmode );

   // alert("[DEBUG]"+playerPath+" -> "+mySWFObject.getSWFHTML());
    this.playback_area_id = arg.playback_area_id;

    mySWFObject.write(arg.playback_area_id);

  },


  deletePlayback: function () {

    $("#"+this.playback_area_id).html("");

  },

  createRecorderSetting: function ( arg ) {

    playerPath = static_path+"flash/exam/"+"FCS_setting.swf";

    var mySWFObject = new SWFObject( playerPath, arg.lcId, "230", "150", "8", "#FFFFFF");

    mySWFObject.addParam('wmode', 'transparent');
    mySWFObject.addParam('name',  'FCS_setting');
    mySWFObject.addParam('allowscriptaccess','sameDomain');

    this.setting_area_id = arg.setting_area;
    mySWFObject.write(this.setting_area_id);

  },

  deleteRecorderSetting: function () {

    $("#"+this.setting_area_id).html("");

  }

});
