original_string: protected function setupScriptForDefaultView($templateScript)
      {
          $removeClass = NestedForm::REMOVE_FLAG_CLASS;
          $defaultKey = NestedForm::DEFAULT_KEY_NAME;
  
          /**
           * When add a new sub form, replace all element key in new sub form.
           *
           * @example comments[new___key__][title]  => comments[new_{index}][title]
           *
           * {count} is increment number of current sub form count.
           */
          $script = <<<EOT
  var index = 0;
  $('#has-many-{$this->column}').on('click', '.add', function () {
  
      var tpl = $('template.{$this->column}-tpl');
  
      index++;
  
      var template = tpl.html().replace(/{$defaultKey}/g, index);
      $('.has-many-{$this->column}-forms').append(template);
      {$templateScript}
  });
  
  $('#has-many-{$this->column}').on('click', '.remove', function () {
      $(this).closest('.has-many-{$this->column}-form').hide();
      $(this).closest('.has-many-{$this->column}-form').find('.$removeClass').val(1);
  });
  
  EOT;
  
          Merchant::script($script);
      }
code: protected function setupScriptForDefaultView($templateScript)
      {
          $removeClass = NestedForm::REMOVE_FLAG_CLASS;
          $defaultKey = NestedForm::DEFAULT_KEY_NAME;
  
          /**
           * When add a new sub form, replace all element key in new sub form.
           *
           * @example comments[new___key__][title]  => comments[new_{index}][title]
           *
           * {count} is increment number of current sub form count.
           */
          $script = <<<EOT
  var index = 0;
  $('#has-many-{$this->column}').on('click', '.add', function () {
  
      var tpl = $('template.{$this->column}-tpl');
  
      index++;
  
      var template = tpl.html().replace(/{$defaultKey}/g, index);
      $('.has-many-{$this->column}-forms').append(template);
      {$templateScript}
  });
  
  $('#has-many-{$this->column}').on('click', '.remove', function () {
      $(this).closest('.has-many-{$this->column}-form').hide();
      $(this).closest('.has-many-{$this->column}-form').find('.$removeClass').val(1);
  });
  
  EOT;
  
          Merchant::script($script);
      }
code_tokens: protected function setupScriptForDefaultView ( $ templateScript ) { $ removeClass = NestedForm :: REMOVE_FLAG_CLASS ; $ defaultKey = NestedForm :: DEFAULT_KEY_NAME ; /**
           * When add a new sub form, replace all element key in new sub form.
           *
           * @example comments[new___key__][title]  => comments[new_{index}][title]
           *
           * {count} is increment number of current sub form count.
           */ $ script =  <<<EOT
  var index = 0;
  $('#has-many-{$this->column}').on('click', '.add', function () {
  
      var tpl = $('template.{$this->column}-tpl');
  
      index++;
  
      var template = tpl.html().replace(/{$defaultKey}/g, index);
      $('.has-many-{$this->column}-forms').append(template);
      {$templateScript}
  });
  
  $('#has-many-{$this->column}').on('click', '.remove', function () {
      $(this).closest('.has-many-{$this->column}-form').hide();
      $(this).closest('.has-many-{$this->column}-form').find('.$removeClass').val(1);
  });
  
  EOT ; Merchant :: script ( $ script ) ; }
docstring: Setup default template script.
  
  @param string $templateScript
  
  @return void
docstring_tokens: Setup default template script .