From e3a0af34d52c41fc2f45522528e484f858f1ce3e Mon Sep 17 00:00:00 2001 From: till <till@php.net> Date: Sun, 10 Feb 2008 12:08:40 -0500 Subject: [PATCH] * fixing #1484494 (people can delete the last identity otherwise) * FOR TRANSLATERS: introducing new message --- program/steps/settings/delete_identity.inc | 37 +++++++++++++++---------------------- 1 files changed, 15 insertions(+), 22 deletions(-) diff --git a/program/steps/settings/delete_identity.inc b/program/steps/settings/delete_identity.inc index 24bf99c..a5f3d44 100644 --- a/program/steps/settings/delete_identity.inc +++ b/program/steps/settings/delete_identity.inc @@ -5,7 +5,7 @@ | program/steps/settings/delete_identity.inc | | | | This file is part of the RoundCube Webmail client | - | Copyright (C) 2005, RoundCube Dev. - Switzerland | + | Copyright (C) 2005-2007, RoundCube Dev. - Switzerland | | Licensed under the GNU GPL | | | | PURPOSE: | @@ -19,35 +19,28 @@ */ -$REMOTE_REQUEST = $_GET['_remote'] ? TRUE : FALSE; +if (($ids = get_input_value('_iid', RCUBE_INPUT_GET)) && preg_match('/^[0-9]+(,[0-9]+)*$/', $ids)) +{ -if ($_GET['_iid'] && preg_match('/^[0-9]+(,[0-9]+)*$/',$_GET['_iid'])) + if ($USER->delete_identity($ids)) { - $DB->query("UPDATE ".get_table_name('identities')." - SET del=1 - WHERE user_id=? - AND identity_id IN (".$_GET['_iid'].")", - $_SESSION['user_id']); - - $count = $DB->affected_rows(); - if ($count) - { - $commands = show_message('deletedsuccessfully', 'confirmation'); - } - - // send response - if ($REMOTE_REQUEST) - rcube_remote_response($commands); + $OUTPUT->show_message('deletedsuccessfully', 'confirmation'); } + else + { + $OUTPUT->show_message('nodeletelastidentity', 'error'); + } + // send response + if ($OUTPUT->ajax_call) + $OUTPUT->send(); +} -if ($REMOTE_REQUEST) +if ($OUTPUT->ajax_call) exit; // go to identities page -$_action = 'identities'; +rcmail_overwrite_action('identities'); -// overwrite action variable -$OUTPUT->add_script(sprintf("\n%s.set_env('action', '%s');", $JS_OBJECT_NAME, $_action)); ?> -- Gitblit v1.9.1