Changeset 126

Show
Ignore:
Timestamp:
05/27/08 14:01:32 (3 months ago)
Author:
felix
Message:

fix on action_button (checkbox-column submit)

Files:

Legend:

Unmodified
Added
Removed
Modified
Copied
Moved
  • trunk/rapyd/components/datagrid.php

    r113 r126  
    4040  // -------------------------------------------------------------------- 
    4141 
    42   function delete_button($config=null) 
     42  function action_button($config=null) 
    4343  { 
    4444    $caption = (isset($config['caption'])) ? $config['caption'] : rpd::lang('btn.delete'); 
    45     $action = "javascript:document.forms['grid'].grid_action.value='delete';document.forms['grid'].submit()"; 
    46     $this->button("btn_delete", $caption, $action, "TR"); 
     45    $action_name = (isset($config['name'])) ? $config['name'] : 'delete'; 
     46    $action = "javascript:document.forms['grid".$this->cid."'].grid_action.value='".$action_name."';document.forms['grid".$this->cid."'].submit()"; 
     47    $this->button("btn_".$action_name, $caption, $action, "TR"); 
    4748  } 
    4849 
     
    5253  { 
    5354    $caption = (isset($config['caption'])) ? $config['caption'] : rpd::lang('btn.add'); 
    54     $url = (isset($config['url'])) ? $config['url'] : $this->add_url; 
     55    $url = null; 
     56    if (isset($config['url']) OR  $this->add_url!="") 
     57    { 
     58      $url = (isset($config['url'])) ? $config['url'] : $this->add_url; 
     59    } 
     60 
    5561    $url = rpd_url::append('create'.$this->cid, 1, $url); 
    5662    $action = "javascript:window.location='".$url."'"; 
     
    6571    { 
    6672      $action = $_POST['grid_action']; 
     73 
    6774      if (isset($this->actions[$action])) call_user_func($this->actions[$action]); 
    6875    } 
     
    8188    if ($this->checkbox_form) 
    8289    { 
     90      rpd::load_helper('form'); 
    8391      $attributes = array('class'=>'form', 'name'=>'grid'); 
    8492      $data['form_begin'] = rpd_form::open(rpd_url::get_url(), $attributes); 
     
    146154  return rpd::load_view('datagrid_excell', $data, RAPYDPATH.'views/'); 
    147155  } 
    148    
    149   // -------------------------------------------------------------------- 
    150    
     156 
     157  // -------------------------------------------------------------------- 
     158 
    151159  protected function build_csv() 
    152160  { 
     
    157165    header("Content-type: csv/xml;"); 
    158166    header("Content-Disposition: attachment; filename=" . $filename); 
    159      
     167 
    160168    $data = get_object_vars($this); 
    161169 
     
    165173    } 
    166174    $output .= implode(';',$labels)."\n"; 
    167      
     175 
    168176    //rows 
    169177    foreach ($this->data as $tablerow) 
     
    181189    return mb_convert_encoding($output, 'iso-8859-1', 'utf-8'); 
    182190  } 
    183    
     191 
    184192  // -------------------------------------------------------------------- 
    185193 
     
    335343    if ($this->checkbox!="") 
    336344    { 
     345      $value = $data_row[$this->field_name]; 
    337346      $attributes = array( 
    338347          'name'  => $this->field_name.'[]', 
    339348          'id'    => $this->field_name.(string)self::$checkbox_id++, 
    340349      ); 
    341       $value = $data_row[$this->checkbox]; 
    342350      $this->check = rpd_form::checkbox($attributes, $value); 
    343351    }