AshishJoshi-asj / zfdatagrid

Automatically exported from code.google.com/p/zfdatagrid
BSD 3-Clause "New" or "Revised" License
0 stars 0 forks source link

Delete displays form #192

Closed GoogleCodeExporter closed 9 years ago

GoogleCodeExporter commented 9 years ago
It would be nice to have the ability that Delete displays form with the
buttons Delete and Cancel, instead just the JS dialog.

Maybe, the View form can be used (read only)?

It might be set as View (->setDetailColumns) invoked with
->setDeleteView(true)...

Sometimes data displayed in the grid might not suffice to make a good
decision if that is the right record to delete.

Original issue reported on code.google.com by vlatko.b...@gmail.com on 26 Feb 2010 at 10:50

GoogleCodeExporter commented 9 years ago
Agree.

Will make sure it happens before 0.6 release.

Thanks

Best Regards,
Bento Vilas Boas

Original comment by pao.fre...@gmail.com on 26 Feb 2010 at 3:18

GoogleCodeExporter commented 9 years ago
Hi,

Please check revision 697

Best Regards,
Bento Vilas Boas

Original comment by pao.fre...@gmail.com on 27 Feb 2010 at 3:02

GoogleCodeExporter commented 9 years ago
Hi,

Sample app CRUD action has no special code, but delete works. 
In my app Delete still invokes JS dialog.

Do I have to do anything? 

I tried ->setDeleteView(true), but it is the same. 

Original comment by vlatko.b...@gmail.com on 27 Feb 2010 at 5:45

GoogleCodeExporter commented 9 years ago
Hi,

If you use 

$grid->setDetailColumns();

It will auto add the page confirmation.

Best Regards,
Bento Vilas Boas

Original comment by pao.fre...@gmail.com on 27 Feb 2010 at 2:43

GoogleCodeExporter commented 9 years ago
Hi, 

I tried $grid->setDetailColumns(), but it does not work. 

View action column appears in the Grid, beside Edit and Delete, but JS dialog 
still
displayed.

I noticed:

1. Filter values are trying to get translated!?
2. Field names in View form are not translated.
3. Edit form displays well, but View form throws the exception

Integrity constraint violation: 1052 Column 'id' in where clause is ambiguous

This is SQL:

SELECT `addressbook`.`id`, ... FROM `addressbook`
 LEFT JOIN `users` ON users.id = addressbook.userID
 LEFT JOIN `countries` AS `countries_1` ON countries_1.id = addressbook.countryID
WHERE (id='36') 

Original comment by vlatko.b...@gmail.com on 27 Feb 2010 at 5:03

GoogleCodeExporter commented 9 years ago
Hi,

Please check the revision 706

Best Regards,
Bento Vilas Boas

Original comment by pao.fre...@gmail.com on 28 Feb 2010 at 1:03

GoogleCodeExporter commented 9 years ago
Hi, it still doesn't work.

1. Filter values still trying to get translated. This should be removed!
2. Field names in View form still not translated.
3. Both View and Edit form work correctly.

Original comment by vlatko.b...@gmail.com on 28 Feb 2010 at 10:19

GoogleCodeExporter commented 9 years ago
Hi, just checked for comment 7 above and found out that 

1. OK, Filter values are not translated any more.
2. OK, Field names in View form are translated.

Delete still invokes JS.

Original comment by vlatko.b...@gmail.com on 2 Mar 2010 at 1:57

GoogleCodeExporter commented 9 years ago
Hi,

Sorry, my mistake.

New method:

$grid->setDeleteConfirmationPage(true);

Shoudl work now.

Best Regards,
Bento Vilas Boas

Original comment by pao.fre...@gmail.com on 2 Mar 2010 at 2:43

GoogleCodeExporter commented 9 years ago
Hi,

display of Delete forms works ok, but I'm receiving 

on Cancel:
It does not return to the grid.

Notice: Undefined index: commcountries_zfGrid in
C:\Razno\Razvoj\WebRoot\PHP_inc\Bvb\Grid\Deploy\Table.php on line 1376

on Remove:
Record is removed, but the empty page is displayed, with a message "record has 
been
deleted" on top. Like a form wanted to be displayed, but there is none, it is 
deleted.

I think that after deleting it should return to the grid, as a successful form 
update.

Original comment by vlatko.b...@gmail.com on 2 Mar 2010 at 3:38

GoogleCodeExporter commented 9 years ago

Original comment by bento.vi...@gmail.com on 3 Mar 2010 at 4:56

GoogleCodeExporter commented 9 years ago
Hi,

Where does it go after click on cancel and delete?

Can you please post the two url (host not needed)

Best Regards,
Bento Vilas Boas

Original comment by bento.vi...@gmail.com on 3 Mar 2010 at 9:34

GoogleCodeExporter commented 9 years ago
Hi,

Goes nowhere, stays on the same page:

I grab links from source:

Cancel:

<button name="delRecordGrid" id="delRecordGrid" type="button" value="Otkaži"
onclick="window.location='/iVa/index/index/user//filterscountries_zfGrid/%7B%22f
ilter_name%22%3A%22%22%2C%22filter_iso2%22%3A%22%22%2C%22filter_iso3%22%3A%22%22
%2C%22filter_phonePref%22%3A%22%22%2C%22filter_CurrSymbol%22%3A%22%22%7D/gridRem
ovecountries_zfGrid/1'">Otkaži</button>

Remove (does the delete, but stays on the same page, instead of returning to 
the grid):

<button name="delRecordGrid" id="delRecordGrid" type="button" value="Izbriši 
zapis"
onclick="window.location='/iVa/index/index/user//filterscountries_zfGrid/%7B%22f
ilter_name%22%3A%22%22%2C%22filter_iso2%22%3A%22%22%2C%22filter_iso3%22%3A%22%22
%2C%22filter_phonePref%22%3A%22%22%2C%22filter_CurrSymbol%22%3A%22%22%7D/gridRem
ovecountries_zfGrid/1/commcountries_zfGrid/mode:delete;[countries.id:4]'">Izbri�
�i
zapis</button>

Two "errors" on Delete action:
   1. Notice: Undefined offset: 0 in ...\Bvb\Grid\Deploy\Table.php on line 1355
   2. Warning: Invalid argument supplied for foreach() in
...\Bvb\Grid\Deploy\Table.php on line 1355

Original comment by vlatko.b...@gmail.com on 4 Mar 2010 at 7:05

GoogleCodeExporter commented 9 years ago
Issue 200 has been merged into this issue.

Original comment by bento.vi...@gmail.com on 4 Mar 2010 at 2:14

GoogleCodeExporter commented 9 years ago
Hi,

The link has two slash bars in a row after user... Try to go directly to this 
url:

/iVa/index/index/user/filterscountries_zfGrid/%7B%22filter_name%22%3A%22%22%2C%2
2filter_iso2%22%3A%22%22%2C%22filter_iso3%22%3A%22%22%2C%22filter_phonePref%22%3
A%22%22%2C%22filter_CurrSymbol%22%3A%22%22%7D/gridRemovecountries_zfGrid/1/commc
ountries_zfGrid/mode:delete;[countries.id:4]

What is your browser?

Can you deconstruct this: /iVa/index/index/user//

modeul?
controller?
action?

Thanks

Original comment by bento.vi...@gmail.com on 4 Mar 2010 at 10:03

GoogleCodeExporter commented 9 years ago
Hi,

URL:
1. the one you sent goes to the grid page
2. the same one above, but with two slashes after user leads to Delete form
It looks that all links have "user//", but others work ok.

/iVa    - root on develop PC, Module is Default for this one
/index  - controller
/index  - action
/user   - I think this is something yours

I do have a module Admin_Model_Users, but the url above, and on the page in 
question,
is only model Admin_Model_Countries, a very simple one.

Original comment by vlatko.b...@gmail.com on 4 Mar 2010 at 10:25

GoogleCodeExporter commented 9 years ago
Hi,

Found where 'user' comes from! 

In my Default bootstrap, I have the line 
  $req->setParam('user', $identity); // A left over from some testing :-(

When I remove it, 'user' disappears from URL, but links Remove and Cancel on 
Delete
form still do not work.

Original comment by vlatko.b...@gmail.com on 6 Mar 2010 at 1:28

GoogleCodeExporter commented 9 years ago
So,

To be clear, the link now is:

/iVa/index/index/filterscountries_zfGrid/%7B%22filter_name%22%3A%22%22%2C%22filt
er_iso2%22%3A%22%22%2C%22filter_iso3%22%3A%22%22%2C%22filter_phonePref%22%3A%22%
22%2C%22filter_CurrSymbol%22%3A%22%22%7D/gridRemovecountries_zfGrid/1/commcountr
ies_zfGrid/mode:delete;[countries.id:4]

?

Best Regards,
Bento Vilas Boas

Original comment by bento.vi...@gmail.com on 6 Mar 2010 at 9:49

GoogleCodeExporter commented 9 years ago
Hi, I'm at rev 841:

On form, Remove link is:
/iVa/index/index/filterscountries_zfGrid/%7B%22filter_name%22%3A%22%22%2C%22filt
er_iso2%22%3A%22%22%2C%22filter_iso3%22%3A%22%22%2C%22filter_phonePref%22%3A%22%
22%2C%22filter_CurrSymbol%22%3A%22%22%7D/gridRemovecountries_zfGrid/1/commcountr
ies_zfGrid/mode:delete;[countries.id:6]

On form, Cancel link is:
/iVa/index/index/filterscountries_zfGrid/%7B%22filter_name%22%3A%22%22%2C%22filt
er_iso2%22%3A%22%22%2C%22filter_iso3%22%3A%22%22%2C%22filter_phonePref%22%3A%22%
22%2C%22filter_CurrSymbol%22%3A%22%22%7D/gridRemovecountries_zfGrid/1

New issue appears. It looks getPkFromUrl() can't extract id from url. 
In grid, Edit link is 

/iVa/index/index/filterscountries_zfGrid/%7B%22filter_name%22%3A%22%22%2C%22filt
er_iso2%22%3A%22%22%2C%22filter_iso3%22%3A%22%22%2C%22filter_phonePref%22%3A%22%
22%2C%22filter_CurrSymbol%22%3A%22%22%7D/editcountries_zfGrid/1/commcountries_zf
Grid/mode:edit;[countries.id:6]

but I'm getting error stack

#5 ...\Bvb\Grid\Source\Zend\Table.php(127): 
Zend_Db_Table_Abstract->fetchRow(' (  `` = ''  )')
#6 ...\Bvb\Grid\Deploy\Table.php(293):
Bvb_Grid_Source_Zend_Table->getRecord('countries', Array)
#7 ...\Bvb\Grid\Deploy\Table.php(1178): 
Bvb_Grid_Deploy_Table->_processForm()
#8 ...\iVa\application\modules\default\controllers\IndexController.php(53):
Bvb_Grid_Deploy_Table->deploy()

and request is

array (
  'controller' => 'index',
  'action' => 'index',
  'filterscountries_zfGrid' =>
'{"filter_name":"","filter_iso2":"","filter_iso3":"","filter_phonePref":"","filt
er_CurrSymbol":""}',
  'editcountries_zfGrid' => '1',
  'commcountries_zfGrid' => 'mode:edit;[countries.id:6]',
  'module' => 'default',
)

Original comment by vlatko.b...@gmail.com on 7 Mar 2010 at 8:43

GoogleCodeExporter commented 9 years ago
Hi,

Everything should work now...

Best Regards,
Bento Vilas Boas

Original comment by bento.vi...@gmail.com on 7 Mar 2010 at 1:29

GoogleCodeExporter commented 9 years ago
Hi,

Links seem to work except one. The Delete link on the Grid (icon).

ALL Delete links/icons look like 
/iVa/index/index/filtersaddressbook_zfGrid/%7B%22filter_name%22%3A%22%22%2C%22fi
lter_lastname%22%3A%22%22%2C%22filter_street%22%3A%22%22%2C%22filter_city%22%3A%
22%22%2C%22filter_phoneHome%22%3A%22%22%2C%22filter_mobile%22%3A%22%22%2C%22filt
er_notes%22%3A%22%22%2C%22filter_countryID%22%3A%22%22%7D/commaddressbook_zfGrid
/mode:view;%5Baddressbook.id:37%5D/gridDetailaddressbook_zfGrid/1/gridRemoveaddr
essbook_zfGrid/1

The Delete form displays first record displayed (depends on sorting and 
filtering),
but the Delete button on the delete form is correct.

Delete link displays wrong record, but the delete button would delete correct 
record.

Example:
Click Delete John, delete form displays Ana, but delete button would delete 
John.

Original comment by vlatko.b...@gmail.com on 7 Mar 2010 at 4:08

GoogleCodeExporter commented 9 years ago
Hi,

Just checked and all links mentioned above seem to work fine. :-)

But I discovered,

1. Add record, Cancel: does not preserve sorting, preserves paging
2. Sorting destroys paging and returns to the first page

Original comment by vlatko.b...@gmail.com on 9 Mar 2010 at 10:33

GoogleCodeExporter commented 9 years ago
Hi,

1 && 2 - Expected behavior

Best Regards,
Bento Vilas Boas

Original comment by bento.vi...@gmail.com on 11 Mar 2010 at 2:52