Gruppenverwaltung auf Controllermodel umgestellt
[kivitendo-erp.git] / bin / mozilla / admin_groups.pl
diff --git a/bin/mozilla/admin_groups.pl b/bin/mozilla/admin_groups.pl
deleted file mode 100644 (file)
index 1444332..0000000
+++ /dev/null
@@ -1,244 +0,0 @@
-#=====================================================================
-# LX-Office ERP
-# Copyright (C) 2004
-# Based on SQL-Ledger Version 2.1.9
-# Web http://www.lx-office.org
-#
-#=====================================================================
-# SQL-Ledger Accounting
-# Copyright (c) 2002
-#
-#  Author: Moritz Bunkus
-#   Email: mbunkus@linet-services.de
-#     Web: www.linet-services.de
-#
-#
-# This program is free software; you can redistribute it and/or modify
-# it under the terms of the GNU General Public License as published by
-# the Free Software Foundation; either version 2 of the License, or
-# (at your option) any later version.
-#
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-# GNU General Public License for more details.
-# You should have received a copy of the GNU General Public License
-# along with this program; if not, write to the Free Software
-# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
-#======================================================================
-#
-# group administration module
-# add/edit/delete user groups
-#
-#======================================================================
-
-use List::MoreUtils qw(uniq);
-
-use strict;
-
-sub edit_groups {
-  $main::lxdebug->enter_sub();
-
-  my $form     = $main::form;
-
-  my @groups = sort { lc $a->{name} cmp lc $b->{name} } values %{ $main::auth->read_groups() };
-
-  $form->header();
-  print $form->parse_html_template("admin/edit_groups", { 'GROUPS'     => \@groups,
-                                                          'num_groups' => scalar @groups });
-
-  $main::lxdebug->leave_sub();
-}
-
-sub add_group {
-  $main::lxdebug->enter_sub();
-
-  my $form     = $main::form;
-  my $locale   = $main::locale;
-
-  delete $form->{group_id};
-  $form->{message} = $locale->text("The group has been added.");
-
-  save_group();
-
-  $main::lxdebug->leave_sub();
-}
-
-sub save_group {
-  $main::lxdebug->enter_sub();
-
-  my $form     = $main::form;
-  my $locale   = $main::locale;
-
-  $form->isblank('name', $locale->text('The group name is missing.'));
-
-  my $groups = $main::auth->read_groups();
-  my %users  = map { ( $_->{id} => 1 ) } values %{ { $::auth->read_all_users() } };
-
-  foreach my $group (values %{$groups}) {
-    if (($form->{group_id} != $group->{id})
-        && ($form->{name} eq $group->{name})) {
-      $form->show_generic_error($locale->text("A group with that name does already exist."));
-    }
-  }
-
-  my $group;
-
-  if ($form->{group_id} && $groups->{$form->{group_id}}) {
-    $group = $groups->{$form->{group_id}};
-
-  } else {
-    $group = { };
-  }
-
-  $group->{name}        = $form->{name};
-  $group->{description} = $form->{description};
-  $group->{rights}      = { map { ( $_ => $form->{"${_}_granted"} ? 1 : 0 ) } SL::Auth::all_rights() };
-  $group->{members}     = [ grep { $users{$_} } @{ $form->{user_ids} || [] } ];
-
-  my $is_new = !$form->{group_id};
-
-  $main::auth->save_group($group);
-
-  $form->{message} ||= $locale->text('The group has been saved.');
-
-  if ($is_new) {
-    edit_groups();
-
-  } else {
-    edit_group();
-  }
-
-  $main::lxdebug->leave_sub();
-}
-
-sub edit_group {
-  $main::lxdebug->enter_sub();
-
-  my $form     = $main::form;
-  my $locale   = $main::locale;
-
-  my $groups = $main::auth->read_groups();
-
-  if (!$form->{group_id} || !$groups->{$form->{group_id}}) {
-    $form->show_generic_error($locale->text("No group has been selected, or the group does not exist anymore."));
-  }
-
-  my $group     = $groups->{$form->{group_id}};
-  my %all_users = $main::auth->read_all_users();
-  my @rights    = map {
-    { "right"       => $_->[0],
-      "description" => $_->[1],
-      "is_section"  => '--' eq substr($_->[0], 0, 2),
-      "granted"     => defined $group->{rights}->{$_->[0]} ? $group->{rights}->{$_->[0]} : 0,
-    }
-  } SL::Auth::all_rights_full();
-
-  $form->header();
-  print $form->parse_html_template("admin/edit_group", { ALL_USERS            => [ values %all_users ],
-                                                         USER_IDS_IN_GROUP    => $group->{members},
-                                                         "RIGHTS"             => \@rights,
-                                                         "name"               => $group->{name},
-                                                         "description"        => $group->{description} });
-
-  $main::lxdebug->leave_sub();
-}
-
-sub delete_group {
-  $main::lxdebug->enter_sub();
-
-  my $form     = $main::form;
-  my $locale   = $main::locale;
-
-  my $groups = $main::auth->read_groups();
-
-  if (!$form->{group_id} || !$groups->{$form->{group_id}}) {
-    $form->show_generic_error($locale->text("No group has been selected, or the group does not exist anymore."));
-  }
-
-  if ($form->{confirmed}) {
-    $main::auth->delete_group($form->{"group_id"});
-
-    $form->{message} = $locale->text("The group has been deleted.");
-    edit_groups();
-
-  } else {
-
-    $form->header();
-    print $form->parse_html_template("admin/delete_group_confirm", $groups->{$form->{group_id}});
-  }
-
-  $main::lxdebug->leave_sub();
-}
-
-sub edit_group_membership {
-  $main::lxdebug->enter_sub();
-
-  my $form     = $main::form;
-  my $locale   = $main::locale;
-
-  my %users  = $main::auth->read_all_users();
-  my $groups = $main::auth->read_groups();
-  $groups    = [ sort { lc $a->{name} cmp lc $b->{name} } values %{ $groups } ];
-
-  my @headings = map { { 'title' => $_ } } map { $_->{name} } @{ $groups };
-
-  foreach my $group (@{ $groups }) {
-    $group->{members_h} = { map { $_ => 1 } @{ $group->{members} } };
-  }
-
-  my @rows;
-
-  foreach my $user (sort { lc $a->{login} cmp lc $b->{login} } values %users) {
-    my $row = {
-      'id'              => $user->{id},
-      'login'           => $user->{login},
-      'name'            => $user->{name},
-      'repeat_headings' => (scalar(@rows) % 20) == 0,
-      'GROUPS'          => [],
-    };
-
-    foreach my $group (@{ $groups }) {
-      push @{ $row->{GROUPS} }, {
-        'id'        => $group->{id},
-        'is_member' => $group->{members_h}->{$user->{id}},
-      };
-    }
-
-    push @rows, $row;
-  }
-
-  $form->{title} = $locale->text('Edit group membership');
-  $form->header();
-  print $form->parse_html_template('admin/edit_group_membership', { 'HEADINGS' => \@headings, 'USERS' => \@rows });
-
-  $main::lxdebug->leave_sub();
-}
-
-sub save_group_membership {
-  $main::lxdebug->enter_sub();
-
-  my $form     = $main::form;
-  my $locale   = $main::locale;
-
-  my %users  = $main::auth->read_all_users();
-  my $groups = $main::auth->read_groups();
-
-  foreach my $group (values %{ $groups }) {
-    $group->{members} = [ ];
-
-    foreach my $user (values %users) {
-      push @{ $group->{members} }, $user->{id} if ($form->{"u_$user->{id}_g_$group->{id}"});
-    }
-
-    $main::auth->save_group($group);
-  }
-
-  $form->{message} = $locale->text('The group memberships have been saved.');
-
-  edit_groups();
-
-  $main::lxdebug->leave_sub();
-}
-
-1;