def editUser(self, uid): # Check if the user has propper permissions and present a nice message if not # This is ofcourse also checked on the server side. may_open = False if uid == cm.get_binded_user() and accesstools.check_permission("user.self.modify", False): may_open = True elif accesstools.check_permission_multi_or(("user.modify", "user.view")): may_open = True if may_open == False: return if self.useredits.has_key(uid): self.tabwidget.setCurrentWidget(self.useredits[uid]) return import usereditwdg as usered useredit = usered.UserEditWdg(uid, self.tabwidget) self.useredits[useredit] = uid self.useredits[uid] = useredit tab_title = useredit.led_firstname.text() + " " + useredit.led_lastname.text() usericon = paths.path_to("art/student.svg") if os.path.exists(paths.path_to("art/%s.svg") % userdef.usertype_as_text(useredit.user_info["usertype_id"])): usericon = paths.path_to("art/%s.svg") % userdef.usertype_as_text(useredit.user_info["usertype_id"]) self.tabwidget.addTab(useredit, QtGui.QIcon(qt4tools.svg2pixmap(usericon, 32, 32)), tab_title) self.tabwidget.setCurrentWidget(useredit)
def __init__(self,parent): QtGui.QWidget.__init__(self,parent) ar.ActionRequester.__init__(self) self.setupUi(self) self.btn_new_user.setIcon(QtGui.QIcon(qt4tools.svg2pixmap(paths.path_to('art/new_user.svg'),72,72))) self.connect(self.btn_new_user,QtCore.SIGNAL("clicked()"),self.execCreateUserWizard) self.connect(self.btn_new_group,QtCore.SIGNAL("clicked()"),self.execCreateGroupWizard) self.connect(self.btn_open_fileman,QtCore.SIGNAL("clicked()"),self.openFileManager) self.connect(mainwin.get_mainwindow(),QtCore.SIGNAL("permissionsChanged"),self.setupPermissions) self.btn_new_group.setIcon(QtGui.QIcon(qt4tools.svg2pixmap(paths.path_to('art/new_group.svg'),72,72))) self.btn_open_fileman.setIcon(QtGui.QIcon(qt4tools.svg2pixmap(paths.path_to('art/stats.svg'),72,72))) self.setupPermissions(cm.get_proxy_handle().list_my_permissions())
def setupActions(self): # Actions a = self.addAction("import_users", self.tr("Import users...")) self.connect(a, QtCore.SIGNAL("triggered()"), self.importUsers) a.setDisabled(True) a = self.addAction("export_users", self.tr("Export users...")) self.connect(a, QtCore.SIGNAL("triggered()"), self.exportUsers) a.setDisabled(True) a = self.addAction("export_groups", self.tr("Export groups...")) self.connect(a, QtCore.SIGNAL("triggered()"), self.exportGroups) a.setDisabled(True) a = self.addAction("exit", self.tr("Exit")) self.connect(a, QtCore.SIGNAL("triggered()"), self.close) a = self.addAction("open_filemanager", self.tr("File manager")) self.connect(a, QtCore.SIGNAL("triggered()"), self.openFileManager) a.setIcon(QtGui.QIcon(qt4tools.svg2pixmap(paths.path_to("art/stats.svg"), 16, 16))) a = self.addAction("exec_creategroupwizard", self.tr("Create group...")) self.connect(a, QtCore.SIGNAL("triggered()"), self.execCreateGroupWizard) a.setIcon(QtGui.QIcon(qt4tools.svg2pixmap(paths.path_to("art/new_group.svg"), 16, 16))) a = self.addAction("exec_createuserwizard", self.tr("Create user...")) self.connect(a, QtCore.SIGNAL("triggered()"), self.execCreateUserWizard) a.setIcon(QtGui.QIcon(qt4tools.svg2pixmap(paths.path_to("art/new_user.svg"), 16, 16))) a = self.addAction("exec_accessmanager", self.tr("Access Manager...")) self.connect(a, QtCore.SIGNAL("triggered()"), self.execAccessManager) a.setIcon(QtGui.QIcon(qt4tools.svg2pixmap(paths.path_to("art/access.svg"), 16, 16))) a = self.addAction("exec_update_permissions", self.tr("Update permissions...")) self.connect(a, QtCore.SIGNAL("triggered()"), self.execUpdatePermissions) # a.setIcon(QtGui.QIcon(qt4tools.svg2pixmap(paths.path_to('art/access.svg'),16,16))) a = self.addAction("show_users", self.tr("Show Users")) a.setCheckable(True) self.connect(a, QtCore.SIGNAL("toggled(bool)"), self.showUserView) a = self.addAction("show_groups", self.tr("Show Groups")) a.setCheckable(True) self.connect(a, QtCore.SIGNAL("toggled(bool)"), self.showGroupView) self.connect(self, QtCore.SIGNAL("permissionsChanged"), self.setupPermissions)
def __init__(self, parent): QtGui.QWidget.__init__(self, parent) self.setupUi(self) self.connect(self.btn_login, QtCore.SIGNAL("clicked()"), self.accept) self.connect(self.ed_username, QtCore.SIGNAL("returnPressed()"), self.ed_passwd.setFocus) self.connect(self.ed_passwd, QtCore.SIGNAL("returnPressed()"), self.accept) self.btn_login.setDefault(False) self.btn_login.setAutoDefault(False) self.setFixedSize(self.size()) self.lbl_logo.setPixmap(QtGui.QPixmap(paths.path_to("art/biglogo.png"), "PNG"))
def __init__(self,parent): esm.EnhancedStandardItemModel.__init__(self,parent) self.proxy = cm.get_proxy_handle() self.users = {} self.columninfo = { 'uidnumber': {'text': self.tr('User ID'), 'columnindex': 3}, 'uid': {'text': self.tr('Login'), 'columnindex': 1}, 'cn': {'text': self.tr('User name'), 'columnindex': 0}, 'usertype': {'text': self.tr('User type'), 'columnindex': 2} } self.initialSetup() self.tr("teacher","singular") self.tr("student","singular") self.tr("parent","singular") self.tr("other","singular") default_icon = paths.path_to('art/student.svg') self.icons = {} for usertype in userdef.list_usertypes_by_text(): icon = default_icon if os.path.exists(paths.path_to('art/%s.svg') % usertype): icon = paths.path_to('art/%s.svg') % usertype self.icons[userdef.usertype_as_id(usertype)] = qt4tools.svg2pixmap(icon,24,24)
def __init__(self, parent): self.setupCentralTabWidget() mainwin.MainWindow.__init__(self, parent, self.tabwidget) self.old_access_idents = [] self.groupview = None self.userview = None self.filemanager = None self.accessmanager = None self.useredits = {} self.groupedits = {} self.setupActions() self.setupMenus() self.setupToolBars() self.startPermissionMonitor() self.setWindowTitle(self.tr("SkoleSYS Administration")) self.btn_closetab = QtGui.QToolButton(self.tabwidget) self.btn_closetab.setAutoRaise(True) self.btn_closetab.setIcon(QtGui.QIcon(qt4tools.svg2pixmap(paths.path_to("art/close.svg"), 10, 10))) self.connect(self.btn_closetab, QtCore.SIGNAL("clicked()"), self.removeTab) self.tabwidget.setCornerWidget(self.btn_closetab) self.setWindowIcon(QtGui.QIcon(paths.path_to("art/icons/hicolor/22x22/apps/skolesys-qt4.png"))) self.setupPermissions(cm.get_proxy_handle().list_my_permissions())
def setupViews(self): import tooltabwdg as tooltab import groupviewwdg as groupview import userviewwdg as userview self.groupview = groupview.GroupViewWdg(None) self.connect(self.groupview, QtCore.SIGNAL("viewShown"), self.action("show_groups").setChecked) self.groupviewdock = self.insertDockWidget(self.groupview, self.tr("Groups")) self.userview = userview.UserViewWdg(None) self.connect(self.userview, QtCore.SIGNAL("viewShown"), self.action("show_users").setChecked) self.userviewdock = self.insertDockWidget(self.userview, self.tr("Users")) tooltab = tooltab.ToolTabWdg(self.tabwidget) self.tabwidget.addTab( tooltab, QtGui.QIcon(qt4tools.svg2pixmap(paths.path_to("art/kfm_home.svg"), 16, 16)), self.tr("Home") )
def openFileManager(self): # Check if the user has propper permissions and present a nice message if not # This is ofcourse also checked on the server side. if not accesstools.check_permission("file.browse"): return if self.filemanager != None: self.tabwidget.setCurrentWidget(self.filemanager) return import filemanagerwdg as fileman self.filemanager = fileman.FileManagerWdg(self.tabwidget) tab_title = self.tr("File manager") self.tabwidget.addTab( self.filemanager, QtGui.QIcon(qt4tools.svg2pixmap(paths.path_to("art/stats.svg"), 16, 16)), tab_title ) self.tabwidget.setCurrentWidget(self.filemanager)
def editGroup(self, groupname, displayed_name): # Check if the user has propper permissions and present a nice message if not # This is ofcourse also checked on the server side. if not accesstools.check_permission_multi_or(("group.modify", "group.view")): return if self.groupedits.has_key(groupname): self.tabwidget.setCurrentWidget(self.groupedits[groupname]) return import groupeditwdg as grouped groupedit = grouped.GroupEditWdg(groupname, self.tabwidget) self.groupedits[groupedit] = groupname self.groupedits[groupname] = groupedit tab_title = QtCore.QString.fromUtf8( displayed_name ) # groupedit.led_firstname.text()+" "+groupedit.led_lastname.text() self.tabwidget.addTab( groupedit, QtGui.QIcon(qt4tools.svg2pixmap(paths.path_to("art/group.svg"), 16, 16)), tab_title ) self.tabwidget.setCurrentWidget(groupedit)
def _addGroup(self,gid,groupname,displayed_name,grouptype_id): if self.groups.has_key(int(gid)): return self.insertRow(self.rowCount()) idx = self.index(self.rowCount()-1,self.columninfo['displayed_name']['columnindex']) self.setData(idx,QtCore.QVariant(qt4tools.svg2pixmap(paths.path_to('art/group.svg'),24,24)),QtCore.Qt.DecorationRole) self.setData(idx,QtCore.QVariant(QtCore.QString.fromUtf8(displayed_name))) self.setData(idx,QtCore.QVariant(gid),QtCore.Qt.UserRole) idx = self.index(self.rowCount()-1,self.columninfo['groupname']['columnindex']) self.setData(idx,QtCore.QVariant(QtCore.QString.fromUtf8(groupname))) idx = self.index(self.rowCount()-1,self.columninfo['gid']['columnindex']) self.setData(idx,QtCore.QVariant(gid)) idx = self.index(self.rowCount()-1,self.columninfo['grouptype']['columnindex']) self.setData(idx,QtCore.QVariant(self.tr(groupdef.grouptype_as_text(grouptype_id),"singular"))) idx = self.index(self.rowCount()-1,0) self.setData(idx,QtCore.QVariant(gid),QtCore.Qt.UserRole) self.groups[int(gid)] = { 'gid':gid, 'groupname':groupname, 'displayed_name':displayed_name, 'grouptype_id':grouptype_id}
help="Start program with danish languagesettings", metavar="LANG") (options, args) = parser.parse_args() if not options.lang: options.lang = 'en' if os.environ.has_key('LANG'): options.lang = os.environ['LANG'][:2] app = QtGui.QApplication(sys.argv) if options.lang: trans = QtCore.QTranslator() #print __file__ #appdir = os.path.split(__file__)[0] lang_file = paths.path_to('skolesys-qt4_%s.qm') % (options.lang) print lang_file loadres = trans.load(lang_file) if not loadres: print "Failed to load language file: %s" % lang_file else: app.installTranslator(trans) servermsg.init_server_messages(options.lang) cm.setup_connection('https://10.1.0.1',10033) ui = ss_mainwin.get_mainwindow() if ui: ui.setupViews()
def i_go_to(step, page_name): world.browser.visit(path_to(page_name))