Archived
1
0
Fork 0
This repository has been archived on 2021-10-08. You can view files and clone it, but you cannot make any changes to it's state, such as pushing and creating new issues, pull requests or comments.
ACU/commands/ldap/extract_students.pl
2013-09-16 06:43:17 +02:00

43 lines
788 B
Perl

#! /usr/bin/env perl
use v5.10.1;
use strict;
use warnings;
use Pod::Usage;
use lib "../../";
use ACU::Log;
use ACU::LDAP;
sub get_students
{
my $ldap = LDAP::ldap_connect();
my $year = shift // LDAP::get_year($ldap);
return LDAP::search_dns($ldap, "ou=$year,ou=users", "objectClass=epitaAccount", "cn", "uid", "uidNumber");
}
if ($#ARGV == -1) {
log(USAGE, "$0 format");
say "format can be csv or login"
}
elsif ($ARGV[0] eq "csv")
{
for my $student (get_students $ARGV[1])
{
print $student->get_value("cn");
print ",";
print $student->get_value("uid");
print ",";
print $student->get_value("uidNumber");
say ",Present";
}
}
elsif ($ARGV[0] eq "login")
{
for my $student (get_students $ARGV[1]) {
say $student->get_value("uid");
}
}