def change_project_started_to_status(doc): if doc.get('entity') != 'project': return try: started = doc.pop('started') except KeyError: return if started: doc['status']['started'] = dict(value='yes', timestamp=utils.now_iso()) return doc
def update_status_field(doc): status = doc.get('status') if isinstance(status, basestring): statuses = {status: dict(timestamp=utils.now_iso(), value='yes')} doc['status'] = statuses return doc elif isinstance(status, list): statuses = dict() for old in status: name = old['name'] new = dict() for key in ['value', 'timestamp']: try: new[key] = old[key] except KeyError: pass statuses[name] = new doc['status'] = statuses return doc
""" slog: Simple sample tracker system. Load the system account into the database. Required at db creation. Per Kraulis 2011-02-22 """ from slog import utils from slog.load import put_document ACCOUNTS = {'admin': dict(entity='account', name='system', role='admin', password=utils.hexdigest('rubb1sh'), fullname='System administrator', timestamp=utils.now_iso())} if __name__ == '__main__': map(put_document, ACCOUNTS.values())
Per Kraulis 2011-02-01 2011-02-14 modified document design """ from slog import utils from slog.load import put_document ACCOUNTS = { 'admin': dict(entity='account', name='system', role='admin', password=utils.hexdigest('rubb1sh'), fullname='System administrator', timestamp=utils.now_iso()), 'max_kaller': dict(entity='account', name='max_kaller', role='manager', password=utils.hexdigest('flax'), fullname='Kaller, Max', timestamp=utils.now_iso()), 'joakim_lundeberg': dict(entity='account', name='joakim_lundeberg', role='customer', password=utils.hexdigest('jocke'), fullname='Lundeberg, Joakim', timestamp=utils.now_iso()) }