Skip to content

Commit 158dc56

Browse files
committed
scoumbourdis#441 Clone functionality for flexigrid theme
1 parent abcbfaf commit 158dc56

5 files changed

Lines changed: 51 additions & 2 deletions

File tree

application/libraries/Grocery_CRUD.php

Lines changed: 33 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1899,7 +1899,38 @@ protected function showAddForm()
18991899
$this->_get_ajax_results();
19001900
}
19011901

1902-
protected function showEditForm($state_info)
1902+
protected function showCloneForm($state_info)
1903+
{
1904+
$this->set_js_lib($this->default_javascript_path.'/'.grocery_CRUD::JQUERY);
1905+
1906+
$data = $this->get_common_data();
1907+
$data->types = $this->get_field_types();
1908+
1909+
$data->field_values = $this->get_edit_values($state_info->primary_key);
1910+
1911+
$data->add_url = $this->getAddUrl();
1912+
$data->list_url = $this->getListUrl();
1913+
$data->update_url = $this->getInsertUrl();
1914+
$data->delete_url = $this->getDeleteUrl($state_info);
1915+
$data->read_url = $this->getReadUrl($state_info->primary_key);
1916+
$data->input_fields = $this->get_edit_input_fields($data->field_values);
1917+
$data->unique_hash = $this->get_method_hash();
1918+
1919+
$data->fields = $this->get_edit_fields();
1920+
$data->hidden_fields = $this->get_edit_hidden_fields();
1921+
$data->unset_back_to_list = $this->unset_back_to_list;
1922+
1923+
$data->validation_url = $this->getValidationInsertUrl();
1924+
$data->is_ajax = $this->_is_ajax();
1925+
1926+
$this->_theme_view('edit.php',$data);
1927+
$this->_inline_js("var js_date_format = '".$this->js_date_format."';");
1928+
1929+
$this->_get_ajax_results();
1930+
}
1931+
1932+
1933+
protected function showEditForm($state_info)
19031934
{
19041935
$this->set_js_lib($this->default_javascript_path.'/'.grocery_CRUD::JQUERY);
19051936

@@ -4864,7 +4895,7 @@ public function render()
48644895

48654896
$state_info = $this->getStateInfo();
48664897

4867-
$this->showEditForm($state_info, 'clone');
4898+
$this->showCloneForm($state_info);
48684899

48694900
break;
48704901

assets/grocery_crud/themes/flexigrid/css/flexigrid.css

Lines changed: 13 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -659,6 +659,19 @@ div.pGroup {
659659
margin-left:5px;
660660
display: block;
661661
}
662+
.flexigrid .clone-icon
663+
{
664+
background:url(images/clone.png) no-repeat;
665+
cursor: pointer;
666+
width: 16px;
667+
height:16px;
668+
float:right;
669+
border: none !important;
670+
padding:0px !important;
671+
padding-bottom:0px !important;
672+
margin-left:5px;
673+
display: block;
674+
}
662675
.flexigrid .delete-icon
663676
{
664677
background:url(images/close.png) no-repeat;
498 Bytes
Loading

assets/grocery_crud/themes/flexigrid/views/list.php

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -43,6 +43,9 @@
4343
<?php if(!$unset_edit){?>
4444
<a href='<?php echo $row->edit_url?>' title='<?php echo $this->l('list_edit')?> <?php echo $subject?>' class="edit_button"><span class='edit-icon'></span></a>
4545
<?php }?>
46+
<?php if(!$unset_clone){?>
47+
<a href='<?php echo $row->clone_url?>' title='Clone <?php echo $subject?>' class="clone_button"><span class='clone-icon'></span></a>
48+
<?php }?>
4649
<?php if(!$unset_read){?>
4750
<a href='<?php echo $row->read_url?>' title='<?php echo $this->l('list_view')?> <?php echo $subject?>' class="edit_button"><span class='read-icon'></span></a>
4851
<?php }?>

change_log.txt

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,5 @@
1+
v 1.6.1
2+
- #441 Adding clone functionality
13
v 1.6.0
24
- #211: Bug if use where clause and try to "search all" the fields
35
- #432: Bootstrap Theme issues with filtering when we are using set_relation with multiple fields

0 commit comments

Comments
 (0)