Author: sid.gbf
Date: 2010-03-17 18:55:52 +0100 (Wed, 17 Mar 2010)
New Revision: 28583

Modified:
   
plugins/sfjQueryDoctrineAdminPlugin/tag/0.1/lib/helper/JavascriptAdminHelper.php
Log:
Improvements



Modified: 
plugins/sfjQueryDoctrineAdminPlugin/tag/0.1/lib/helper/JavascriptAdminHelper.php
===================================================================
--- 
plugins/sfjQueryDoctrineAdminPlugin/tag/0.1/lib/helper/JavascriptAdminHelper.php
    2010-03-17 16:39:36 UTC (rev 28582)
+++ 
plugins/sfjQueryDoctrineAdminPlugin/tag/0.1/lib/helper/JavascriptAdminHelper.php
    2010-03-17 17:55:52 UTC (rev 28583)
@@ -6,14 +6,13 @@
   function content_to_view(sfFormField $field, $attributes, $help) {
     $value = '';
 
-    if($field->getValue()) {
+    if($field->getWidget()->hasOption('choices') && $field->getValue()) {
+      $class = $field->getWidget()->getOption('model');
+      $value = Doctrine::getTable($class)->findOneBy('id', $field->getValue());
+    } else if($field->getValue()) {
       $value = $field->getValue();
     } else if($help) {
       $value = $help;
-/*    } else if($field->renderHelp()) {
-      $value = $field->renderHelp();
-    } else {
-      $value = getDefaultHint();*/
     }
 
     return $value;
@@ -50,20 +49,28 @@
     $type = 
(!is_null($field->getWidget()->getOption('type')))?$field->getWidget()->getOption('type'):get_class($field->getWidget());
     switch($type) {
       case 'sfWidgetFormDoctrineChoice': {
-        $command .= '    jQuery("#'.$field->renderId().'").change( function() 
{ reset_function(); update_values("#'.$field->renderId().'") } );' . "\r\n";
+        $command .= '    jQuery("#'.$field->renderId().'").change( function() 
{ reset_function(); update_values("#'.$field->renderId().'", 
"#'.$field->renderId().'") } );' . "\r\n";
         break;
       }
       case 'text': {
-        $command .= '    jQuery("#'.$field->renderId().'").blur( function() { 
reset_function(); update_values("#'.$field->renderId().'") } );' . "\r\n";
+        $command .= '    jQuery("#'.$field->renderId().'").blur( function() { 
reset_function(); update_values("#'.$field->renderId().'", 
"#'.$field->renderId().'") } );' . "\r\n";
         break;
       }
       case 'datepicker': {
-        $command .= '    jQuery("#'.$field->renderId().'_temp").change( 
function() { reset_function(); update_values("#'.$field->renderId().'") } );' . 
"\r\n";
+        $command .= '    jQuery("#'.$field->renderId().'_temp").change( 
function() { reset_function(); update_values("#'.$field->renderId().'", 
"#'.$field->renderId().'") } );' . "\r\n";
         break;
       }
       case 'fckeditor': {
-        echo javascript_tag('function FCKeditor_OnComplete(editor) { 
editor.Events.AttachEvent("OnBlur", function(editor) { 
jQuery("input[name=\''.$field->renderId().'\']").val(editor.GetHTML()); 
reset_function(); update_values("input[name=\''.$field->renderId().'\']"); }); 
}' . "\r\n");
-        $command .= '//FCKEditor is Outsite :) ' . "\r\n";
+        echo javascript_tag('function FCKeditor_OnComplete(editor) { 
+  editor.Events.AttachEvent("OnBlur",
+    function(editor) {
+      jQuery("input[name=\''.$field->renderName().'\']").val(editor.GetHTML());
+
+      reset_function();
+      update_values("input[name=\''.$field->renderName().'\']", 
"#'.$field->renderId().'");
+    });
+}' . "\r\n");
+        $command .= 'jQuery("input[name=\''.$field->renderName().'\']"); //' . 
"\r\n";
         break;
       }
     }
@@ -95,34 +102,26 @@
 }'."\r\n";
   }
   function _form_update_values_function() {
-    return 'function update_values(fieldName) {
+    return 'function update_values(fieldName, updateId) {
   var newValue = "";
   if(document.getElementById(fieldName+"_temp")) {
     newValue = jQuery(fieldName+"_temp").val();
   } else if(jQuery(fieldName).attr("tagName") == "SELECT") {
    newValue = jQuery(fieldName+" :selected").text();
   } else {
-    newValue = jQuery(fieldName).val();
+    if(jQuery(fieldName).attr("type") == "checkbox") {
+      newValue = 
(jQuery(fieldName).is(":checked"))?"'.__('Sim').'":"'.__('Não').'";
+    } else {
+      newValue = jQuery(fieldName).val();
+    }
   }
   if(newValue == null || newValue == "") {
     newValue = jQuery(fieldName+"_edit > .help").html();
   }
-  jQuery(fieldName+"_view > .help").html(newValue);
+  jQuery(updateId+"_view > .help").html(newValue);
 
 }'."\r\n";
   }
-/*if(!function_exists('javascript_tag')) {
-  function javascript_tag($content)
-  {
-    return content_tag('script', javascript_cdata_section($content), 
array('type' => 'text/javascript'));
-  }
-}
-if(!function_exists('javascript_cdata_section')) {
-  function javascript_cdata_section($content)
-  {
-    return "\n//".cdata_section("\n$content\n//")."\n";
-  }
-}*/
   function include_jquery() {
     $jquery = sfConfig::get('app_jquery_path', '/jquery.js');
     use_javascript($jquery);

-- 
You received this message because you are subscribed to the Google Groups 
"symfony SVN" group.
To post to this group, send email to [email protected].
To unsubscribe from this group, send email to 
[email protected].
For more options, visit this group at 
http://groups.google.com/group/symfony-svn?hl=en.

Reply via email to