/**
  * If pos is empty, means it creates a new row
  */
 public function newRow()
 {
     $isNew = UtilitiesHelper::toBoolean($this->getParam('new'));
     $instanceId = $this->getParam('id');
     $instance = R::findOne($this->model(), 'id = ?', array($instanceId));
     $imageField = $this->getParam('field');
     $imagePosition = (int) $this->getParam('pos');
     $imageSettings = $this->getImageSettings();
     $settingName = $this->getParam('setting');
     $imageSetting = $imageSettings[$settingName];
     $images = $this->getImagesValue($instance, $settingName);
     if (empty($images)) {
         $images = array();
     } else {
         if (!is_array($images)) {
             $images = UtilitiesHelper::decodeJson($images, true);
         }
     }
     $this->setPaths();
     $this->setupInstanceImageAssigns($instance);
     $this->app->getTemplateEngine()->assign(array('instanceName' => $this->instanceName, '_imageSetting' => $imageSetting, '_imagePos' => $imagePosition, '_imageSettingName' => $settingName));
     if (count($imageSetting['types']) > 0) {
         $newImageRow = array();
         foreach ($imageSetting['types'] as $type => $setting) {
             $newImageRow[$type] = '';
         }
         if ($isNew) {
             array_unshift($images, $newImageRow);
             $json_encoded = json_encode($images);
             $instance->set($imageField, $json_encoded);
             R::store($instance);
         } else {
             $image = $images[$imagePosition];
             $this->app->getTemplateEngine()->assign(array('_image' => $image));
         }
         $this->app->getTemplateEngine()->assign(array($this->instanceName => $instance->export()));
         $this->render('/admin/widgets/imageUploader/multiple/_manyTypes');
     } else {
         $newImageRow = '';
         array_unshift($images, $newImageRow);
         $json_encoded = json_encode($images);
         $instance->set($imageField, $json_encoded);
         R::store($instance);
         $this->app->getTemplateEngine()->assign(array($this->instanceName => $instance->export()));
         $this->render('/admin/widgets/imageUploader/multiple/_oneType');
     }
 }