Revisión 79
Añadido por Manu Mora Gordillo hace alrededor de 14 años
controlies/www/js/autocomplete/TextboxList.Autocomplete.js | ||
---|---|---|
url: '',
|
||
param: 'search',
|
||
extraParams: {},
|
||
loadPlaceholder: 'Please wait...'
|
||
loadPlaceholder: 'Por favor espere...'
|
||
},
|
||
method: 'standard',
|
||
placeholder: 'Type to receive suggestions'
|
||
placeholder: 'Escribe para obtener resultados'
|
||
}, _options);
|
||
|
||
var init = function(){
|
controlies/www/groups/index.html | ||
---|---|---|
url:'groups?action=list',
|
||
mtype: 'POST',
|
||
datatype: "json",
|
||
colNames:['Tipo Grupo','Nombre','ID Grupo'],
|
||
colNames:['Tipo Grupo','Nombre','ID Grupo','Nº Usuarios'],
|
||
colModel:[
|
||
{name:'type',index:'type', width:60, align:"center", stype:'select', editoptions:{value:":Todo;Departamento:Departamentos;Curso:Cursos"}},
|
||
{name:'cn',index:'cn', width:80, align:"center"},
|
||
{name:'gidNumber',index:'gidNumber', width:60, align:"center"}
|
||
{name:'gidNumber',index:'gidNumber', width:60, align:"center"},
|
||
{name:'usersNumber',index:'usersNumber', width:60, align:"center"}
|
||
],
|
||
rowNum:25,
|
||
height:335,
|
||
... | ... | |
$.post('groups', 'action=getGroupData&name='+uid, function(data) {
|
||
var result = $.parseJSON(data);
|
||
|
||
//$("#form_data #type").replaceWith(textType+"<input type='hidden' id='type' name='type' value='"+result.response['type']+"'/>");
|
||
$("#form_data #name").val(result.response['name']);
|
||
$("#form_data #type").val(result.response['type']);
|
||
if(result.response['type']=="school_department")
|
||
var textType = "Departamento";
|
||
else
|
||
var textType = "Curso";
|
||
|
||
$("#form_data #type").replaceWith(textType+"<input type='hidden' id='type' name='type' value='"+result.response['type']+"'/>");
|
||
$("#form_data #name").replaceWith(result.response['name']+"<input type='hidden' id='name' name='name' value='"+result.response['name']+"'/>");
|
||
|
||
$.each(result.response['memberuid'], function(i, l){
|
||
autoComplete.add(l);
|
controlies/www/index.html | ||
---|---|---|
<div id="tabs-1">
|
||
<img src="img/unlock.png" style="float:right;"/>
|
||
<form id="form_authentication" onSubmit="return authentication();">
|
||
<p><span id="hostTag">LDAP</span><br><input type="text" id="host" name="host" value="172.23.36.8"></p>
|
||
<p><span id="hostTag">LDAP</span><br><input type="text" id="host" name="host" value="localhost"></p>
|
||
<p><span id="userTag">Nombre</span><br><input type="text" id="user" name="user" value="admin"></p>
|
||
<p><span id="passwordTag">Contraseña</span><br><input type="password" id="password" name="password"></p><br>
|
||
<div id="message" style="text-align:center; font-weight:bold; color:red; "></div>
|
controlies/Utils/Utils.py | ||
---|---|---|
# Module: Groups.py
|
||
# Purpose: Groups class
|
||
# Language: Python 2.5
|
||
# Date: 7-Feb-2011.
|
||
# Ver: 7-Feb-2011.
|
||
# Date: 18-Feb-2011.
|
||
# Ver: 18-Feb-2011.
|
||
# Author: Manuel Mora Gordillo
|
||
# Francisco Mendez Palma
|
||
# Copyright: 2011 - Manuel Mora Gordillo <manuito @no-spam@ gmail.com>
|
||
... | ... | |
inTwoLists = set(list1) & set(list2)
|
||
|
||
return { 'onlyInList1':onlyInList1, 'onlyInList2':onlyInList2, 'inTwoLists':inTwoLists }
|
||
|
||
|
||
def parseToLdap(string):
|
||
string = string.replace(" ","_")
|
||
string = string.replace("á","a").replace("é","e").replace("í","o").replace("ó","o").replace("ú","u")
|
||
string = string.replace("Á","A").replace("É","E").replace("Í","I").replace("Ó","O").replace("Ú","U")
|
||
string = string.replace("ñ","n").replace("Ñ","N")
|
||
|
||
return string
|
controlies/Plugins/Groups.py | ||
---|---|---|
def __init__(self,ldap,type,name,users):
|
||
self.ldap = ldap
|
||
self.type = type
|
||
self.name = name
|
||
self.name = Utils.parseToLdap(name)
|
||
self.users = users
|
||
|
||
|
||
def validation(self,action):
|
||
|
||
if self.type == "none":
|
||
... | ... | |
def list(self,args):
|
||
|
||
filter = self.buildFilter(args)
|
||
search = self.ldap.search("ou=Group",filter,["cn","gidNumber","groupType"])
|
||
search = self.ldap.search("ou=Group",filter,["cn","gidNumber","groupType","memberUid"])
|
||
|
||
# grid parameters
|
||
limit = int(args['rows'][0])
|
||
... | ... | |
typeRow="Departamento"
|
||
|
||
if searchType == typeRow or searchType=="none":
|
||
|
||
try:
|
||
usersNumber = len(i[0][1]["memberUid"])
|
||
except:
|
||
usersNumber = 0
|
||
|
||
row = {
|
||
"id":i[0][1]["cn"][0],
|
||
"cell":[typeRow, i[0][1]["cn"][0], i[0][1]["gidNumber"][0]],
|
||
"cell":[typeRow, i[0][1]["cn"][0], i[0][1]["gidNumber"][0], usersNumber],
|
||
"type": typeRow,
|
||
"cn": i[0][1]["cn"][0],
|
||
"gidNumber": i[0][1]["gidNumber"][0]
|
||
"gidNumber": i[0][1]["gidNumber"][0],
|
||
"usersNumber": usersNumber
|
||
}
|
||
rows.append(row)
|
||
|
||
... | ... | |
(ldap.MOD_REPLACE, 'memberuid', self.users.split(',')),
|
||
(ldap.MOD_REPLACE, 'member', members)
|
||
]
|
||
print mod_attrs
|
||
|
||
self.ldap.modify('cn='+ self.name +',ou=Group', mod_attrs)
|
||
|
||
return "OK"
|
||
|
||
|
||
def delete(self):
|
||
self.ldap.delete('cn='+ self.name +',ou=Group')
|
||
|
||
return "OK"
|
||
|
||
|
||
def getMaxID(self): # find the maximum ID
|
||
result = self.ldap.search("ou=Group","cn=*",["gidNumber"])
|
Exportar a: Unified diff
Añadiendo número de usuarios de cada grupo