コード例 #1
0
ファイル: rename_user.py プロジェクト: lslaz1/karl
def main():
    parser = OptionParser(description=__doc__,
                          usage="%prog [options] old_name new_name")

    parser.add_option(
        '-C', '--config', dest='config', default=None,
        help="Specify a paster config file. Defaults to $CWD/etc/karl.ini")
    parser.add_option(
        '-d', '--dry-run', dest='dry_run',
        action="store_true", default=False,
        help="Don't commit the transactions")
    parser.add_option('-M', '--merge', dest='merge', action='store_true',
                      default=False, help='Merge with an existing user.')

    options, args = parser.parse_args()
    if len(args) < 2:
        parser.error("Too few parameters: %s" % repr(args))
    if len(args) > 2:
        parser.error("Too many parameters: %s" % repr(args))

    config = options.config
    if config is None:
        config = get_default_config()
    root, closer = open_root(config)

    old_name, new_name = args
    rename_user(root, old_name, new_name, options.merge, sys.stdout)

    if options.dry_run:
        transaction.abort()
    else:
        transaction.commit()
コード例 #2
0
ファイル: admin.py プロジェクト: reebalazs/karl
def rename_or_merge_user_view(request, rename_user=rename_user):
    """
    Rename or merge users.
    """
    context = request.context
    api = AdminTemplateAPI(context, request)
    old_username = request.params.get("old_username")
    new_username = request.params.get("new_username")
    if old_username and new_username:
        merge = bool(request.params.get("merge"))
        rename_messages = StringIO()
        try:
            rename_user(context, old_username, new_username, merge=merge, out=rename_messages)
            api.status_message = rename_messages.getvalue()
        except ValueError, e:
            api.error_message = str(e)
コード例 #3
0
ファイル: admin.py プロジェクト: pombredanne/karl
def rename_or_merge_user_view(request, rename_user=rename_user):
    """
    Rename or merge users.
    """
    request.layout_manager.use_layout('admin')
    context = request.context
    api=AdminTemplateAPI(context, request, 'Admin UI: Rename or Merge Users')
    old_username = request.params.get('old_username')
    new_username = request.params.get('new_username')
    if old_username and new_username:
        merge = bool(request.params.get('merge'))
        rename_messages = StringIO()
        try:
            rename_user(context, old_username, new_username, merge=merge,
                        out=rename_messages)
            api.status_message = rename_messages.getvalue()
        except ValueError, e:
            api.error_message = str(e)
コード例 #4
0
def rename_or_merge_user_view(request, rename_user=rename_user):
    """
    Rename or merge users.
    """
    request.layout_manager.use_layout('admin')
    context = request.context
    api=AdminTemplateAPI(context, request, 'Admin UI: Rename or Merge Users')
    old_username = request.params.get('old_username')
    new_username = request.params.get('new_username')
    if old_username and new_username:
        merge = bool(request.params.get('merge'))
        rename_messages = StringIO()
        try:
            rename_user(context, old_username, new_username, merge=merge,
                        out=rename_messages)
            api.status_message = rename_messages.getvalue()
        except ValueError, e:
            api.error_message = str(e)
コード例 #5
0
ファイル: delete_inactive_users.py プロジェクト: lslaz1/karl
from karl.utils import find_users
from karl.models.interfaces import ICatalogSearch
from karl.models.interfaces import IProfile
from karl.utilities.rename_user import rename_user
import transaction

root._p_jar.sync()
users = find_users(root)
search = ICatalogSearch(root)
count, docids, resolver = search(interfaces=[IProfile])

inactive = []
for docid in docids:
    profile = resolver(docid)
    if profile.security_state == 'inactive':
        inactive.append(profile.__name__)


print str(len(inactive))
for id in inactive:
    rename_user(root, id, 'admin', merge=True)





transaction.commit()

コード例 #6
0
def evolve(root):
    try:
        rename_user(root, 'jonathanhulland', 'jhulland', True, sys.stdout)
    except ValueError:
        pass
コード例 #7
0
from karl.utils import find_users
from karl.models.interfaces import ICatalogSearch
from karl.models.interfaces import IProfile
from karl.utilities.rename_user import rename_user
import transaction

root._p_jar.sync()
users = find_users(root)
search = ICatalogSearch(root)
count, docids, resolver = search(interfaces=[IProfile])

inactive = []
for docid in docids:
    profile = resolver(docid)
    if profile.security_state == 'inactive':
        inactive.append(profile.__name__)

print str(len(inactive))
for id in inactive:
    rename_user(root, id, 'admin', merge=True)

transaction.commit()