diff --git a/action.add_edit.php b/action.add_edit.php
index 9c5d2534ab054adce0fbe811ef6414a456986164..ddc94d4572382aa71d1286130968d35e82562d10 100644
--- a/action.add_edit.php
+++ b/action.add_edit.php
@@ -32,7 +32,7 @@ $areaFields = array(
 
 if (isset($params['submit'])) {
   $record = new Person($params);
-  //echo '<pre>'; print_r($record); echo '</pre>';
+  //echo '<pre>'; print_r($record); echo '</pre>'; exit;
   $record->updateRecord();
   $paramsB['module_message'] = 'Adressinformation ändrad';
   foreach (Person::$firstFields as $field) {
@@ -55,6 +55,9 @@ if (isset($params['doGroups'])) {
   $this->Redirect($id, 'changeGroups', $returnid, $paramsB);
 }
 
+
+
+
 if (isset($params['ID'])) {
   $ID = $params['ID'];
   $person = new Person($ID);
@@ -63,6 +66,21 @@ if (isset($params['ID'])) {
   $ID = null;
 }
 
+$deleteRecord = False;
+if (isset($params['deleteRecord'])) {
+  if (!$ID) die('Strange error in deleteRecord. No ID'.PHP_EOL);
+  $deleteRecord = True;
+  $canChangeRecord = False;
+}
+
+if (isset($params['confirmDelete'])) {
+  if (!$ID) die('Strange error in deleteRecord. No ID'.PHP_EOL);
+  Person::deleteRecord($ID);
+  $paramsB['module_message'] = 'Adress raderad.';
+  $this->Redirect($id, 'defaultadmin', $returnid, $paramsB);
+  return;
+}
+
 if (isset($params['cancelUpdate'])) {
   $paramsB = array(); 
   foreach (Person::$firstFields as $field) {
@@ -81,7 +99,10 @@ $smarty = $this->smarty;
 
 $headline = $person->Fornamn . ' ' .$person->Efternamn;
 if (strlen($headline) == 1) $headline = $person->SkolaForetag;
-if ($canChangeRecord) { $headline = 'Redigera adress: ' . $headline; }
+if ($canChangeRecord) { $headline = 'Ändra adress: ' . $headline; }
+if ($deleteRecord) { $headline = 'Bekräfta radera: ' . $headline; }
+
+
 
 $smarty->assign('headline',$headline);
 
@@ -148,6 +169,16 @@ if ($canChangeRecord) {
 }
 $smarty->assign('submitButton',$place);
 
+if ($canChangeRecord) {
+  $place = $this->CreateInputSubmit($id, 'deleteRecord', 'Radera adress');
+} else {
+  $place = '';
+}
+if ($deleteRecord) {
+  $place = $this->CreateInputSubmit($id, 'confirmDelete', 'Bekräfta radera');
+}  
+$smarty->assign('deleteConfirmButton',$place);
+
 $place = $this->CreateInputSubmit($id, 'cancelUpdate', 'Avbryt');
 $smarty->assign('cancelButton',$place);
 
diff --git a/lib/class.Groups.php b/lib/class.Groups.php
index 56e65a0aae6b085a15c96fad0b7328b6085bf68d..23ce4685debc0acefbdd498c4a44e8d8b442e420 100644
--- a/lib/class.Groups.php
+++ b/lib/class.Groups.php
@@ -28,11 +28,14 @@ EOS;
     Adresser.ID = AdressID and GruppID = ?
 EOS;
 
-  private static $queryUpdate = <<<EOS
-    update Grupper set where ID = ?
-EOS;
-
+/*   private static $queryUpdate = <<<EOS */
+/*     update Grupper set where ID = ? */
+/* EOS; */
 
+  private static $queryRemoveGruppadress = <<<EOS
+    delete from GruppAdress where AdressID = ?
+EOS;
+    
   //public static $groupFields = array('ID', 'Gruppnamn', 'GruppInfo');
   public static $groupFields;
   private static $buttonFields = array('change','print');
@@ -196,5 +199,14 @@ EOS;
     }
     //  exit;
   }
+  public static function removeAddress($AdressID = null) {
+    global $gCms; if (!isset($gCms)) exit;
+    $db = AddressDB::getDB();
+    if (is_null($AdressID))
+      die('Strange error in removeAddress. No ID.'.PHP_EOL);
+    $values = array($AdressID);
+    $result = $db->Execute(self::$queryRemoveGruppadress,$values);
+    if (!$result) { die("Database error!<br>" . $db->ErrorMsg()); }
+  }
 }
 ?>
diff --git a/lib/class.Person.php b/lib/class.Person.php
index e72b908112c0953cb233213430a0cb97970cf8c8..e67127aefbdef117b88ab5adf8878555d83793c0 100644
--- a/lib/class.Person.php
+++ b/lib/class.Person.php
@@ -22,6 +22,10 @@ EOT;
     select distinct *, concat(Fornamn, ' ', Efternamn) as Namn
     from Adresser,GruppAdress where Adresser.ID=AdressID and GruppID=?
 EOS;
+
+  private static $queryDelete = <<<EOS
+    delete from Adresser where ID=?
+EOS;
   
   public static $firstFields = array(
     'ID','fornamn', 'efternamn', 'foretag','avdelning', 'adress', 'Grupp');
@@ -189,5 +193,15 @@ EOS;
     }
     return $records;
   }
+
+  public static function deleteRecord($ID = null) {
+    global $gCms; if (!isset($gCms)) exit;
+    $db = AddressDB::getDB();
+    if (is_null($ID)) die('Strange error in deleteRecord. No ID.'.PHP_EOL);
+    $values = array($ID);
+    $result = $db->Execute(self::$queryDelete,$values);
+    if (!$result) { die("Database error!<br>" . $db->ErrorMsg()); }
+    Groups::removeAddress($ID);
+  }
 }
 ?>
\ No newline at end of file
diff --git a/templates/editpanel.tpl b/templates/editpanel.tpl
index cf9a3f55711333b73bad7ccf73667f0074c41374..c7ef27fc8037f421838b8645a3a230b9dc919eda 100644
--- a/templates/editpanel.tpl
+++ b/templates/editpanel.tpl
@@ -47,8 +47,8 @@
      {$title_Andrad}:</td><td>{$value_Andrad}</td><td></td></tr>
   <td colspan = "4" style="text-align: center;">
      {$submitButton}{$cancelButton}</td><td></td></tr>
-
-
+<tr><td colspan = "4" style="text-align: right;">
+     {$deleteConfirmButton}</td></tr>
 </tbody></table>
 {if isset($hidden)}{$hidden}{/if}
 {$end_form}