def initialize(self, request): TemplateView.initialize(self, request) ## some for authorize # self.login_user = users.get_current_user() self.login_user = auth.authenticate(username="******", password="******") self.is_login = self.login_user is not None self.loginurl = reverse(login) # users.create_login_url(self.request.path) self.logouturl = reverse(logout) # users.create_logout_url(self.request.path) # self.is_admin = users.is_current_user_admin() self.is_admin = False # TODO: make it valid # three status: admin author login if self.is_admin: self.auth = "admin" self.author = User.all().filter("email =", self.login_user.email()).get() if not self.author: # init author database self.author = User(dispname=self.login_user.nickname(), email=self.login_user.email()) self.author.isadmin = True self.author.user = self.login_user self.author.put() elif self.is_login: self.author = User.all().filter("email =", self.login_user.email()).get() if self.author: self.auth = "author" else: self.auth = "login" else: self.auth = "guest" try: # self.referer = self.request.headers['referer'] self.referer = self.request.META["HTTP_REFERER"] except: self.referer = None
def createUserProf(self,username,prof): password='******' user=User(type="Prof", active=True, username=username, password=password, firstname=prof.prenom, lastname=prof.nom,email=prof.email) UserProf(user=User.objects.get(id=user.save()),professeur=prof).save() subject, from_email, to = 'System descriptif cours ESIH', '*****@*****.**', prof.email link='<a href="http://ancient-ridge-9094.herokuapp.com/">http://ancient-ridge-9094.herokuapp.com/</a>' html_content ='Salut {} {}!<p> Votre compte est << {} >> et mot de passe << {} >>. Cliquer sur ce lien {} pour connecter au systeme descriptif cours de l\'ESIH.</p>'.format(prof.prenom,prof.nom,username,password,link) msg = EmailMultiAlternatives(subject, '', from_email, [to]) msg.attach_alternative(html_content, "text/html") print msg.send()
def show_user(uid=None): if request.method == 'GET': info = None if uid: user = User.get_or_404(uid) info = _wrapper_dict(user, ['id', 'username', 'phone']) return render_template('edit_user.html', user=info, username=session.get('username'))
def create_user(): post = {} for key in USER_DATA: post[key] = request.form.get(key, None) user = User.create(**post) print user db.session.commit() flash('The entry was successfully created.') return redirect(url_for('list_all_users'), 302)
def post(self, request, format=None): user = UserSerializers(User(), data=request.data) if user.is_valid(): user.save() json_data = {"msg": "保存成功", "code": 1} else: # print(user.errors) json_data = {"msg": user.error_messages, "code": 0} return Response(json_data)
def run(self, user, password): """Create user.""" password = generate_password_hash(password) user = User(name=user, password=password) db.session.add(user) db.session.commit() print("User: %s\nPassword: %s " % (user, password))
def update_user(uid): if request.method == 'POST': post = {} for key in USER_FORM_DATA: post[key] = request.form.get(key, None) u = User.get_or_404(uid) u.update(**post) db.session.commit() flash('The entry was successfully updated.') return redirect(url_for('list_all_users'), 302)
def signup(): form = RegisterForm() if form.validate_on_submit(): hashed_password = generate_password_hash(form.password.data, method='sha256') new_user = User(name=form.name.data, username=form.username.data, email=form.email.data, password=hashed_password) db.session.add(new_user) db.session.commit() return '<h1>' + form.username.data + ' has been registered </h1>' return render_template('signup.html', form=form)
def insert_user(request): #if 'username' in request.COOKIES: # if request.session['username'] == request.COOKIES["username"]: if request.method == "POST": username = request.POST['username'] try: user = User.objects.get(pk = username) message = "Username already exist" return render(request, 'admin/user_insert.html', {'message': message}) except User.DoesNotExist: user = User(username = request.POST['username'], password = request.POST['password'], name = request.POST['name'], gender = request.POST['gender'], email = request.POST['email'], birthday = request.POST['birthday'], phone = request.POST['phone'], address = request.POST['address'], id_card = request.POST['id_card'], is_VIP = request.POST['is_VIP'], is_Black = request.POST['is_Black'], is_verified = request.POST['is_verified'], note = request.POST['note']) user.save() message = "Insert successfully" else: return render(request, 'admin/user_insert.html') return render(request, 'admin/user_insert.html', {'message': message})
def delete_user(): if request.method == 'POST': user_str = request.form.get('id', None) print user_str if user_str: user_list = user_str.split(',') print user_list for uid in user_list: u = User.get_or_404(int(uid)) u.delete() flash('User {} was successfully deleted.'.format(str(user_str))) return redirect(url_for('list_all_users'), 302)
def show_user(uid=None): info = None if uid: user = User.get_or_404(uid) info = _wrapper_dict( user, ['id', 'username', 'phone', 'gateway_id', 'gateway']) obj = Gateway.query.all() gws = _wrapper_dict(obj, [ 'id', 'name', 'url', 'address', 'latitude', 'longitude', 'created_at' ]) return render_template('edit_user.html', user=info, gateways=gws, username=session.get('username'))
def login(request): if request.method == "POST": username = request.POST.get("username") password = request.POST.get("password") user = User.login(username, password) if user: request.session["user"] = user.id return redirect("index") return render_to_response("login.html", locals(), context_instance=RequestContext(request))
def syncdb(console=True): from admin.models import User user_defaults = { 'login': '******', 'password': '******' } input_msg = 'Enter {0} [{1}]: ' if console: for k, v in user_defaults.iteritems(): user_defaults[k] = raw_input(input_msg.format(k, v)) or v user = User(**user_defaults) user.activity = True drop_all() db.create_all() db.session.add(user) db.session.flush() db.session.commit()
def preload(): user_manager = UserManager(app, db, User) if not User.query.filter(User.email == '*****@*****.**').first(): user = User( email='*****@*****.**', email_confirmed_at=datetime.datetime.utcnow(), password=user_manager.hash_password('Password1'), ) user.roles.append(Role(name='admin')) db.session.add(user) db.session.commit() for role in ROLES: if not Role.query.filter(Role.name == role).first(): r = Role(name=role) db.session.add(r) db.session.commit()
def build_users(): from database import db from admin.models import guest_role, super_user_role, User # ----------------------------------------- db.session.add(guest_role) db.session.add(super_user_role) db.session.commit() # ------------------------ root = User( email="*****@*****.**", account=config.ROOT_USER, roles=[super_user_role], password=config.ROOT_PASSWD, active=True, ) db.session.add(root) db.session.commit() print 'build users finished.'
def create(): form = CreateForm() if form.validate_on_submit(): user = User.query.filter_by(username=form.username.data).first() if (user): return render_template("create.html", form=form) else: user = User(request.form['username'], request.form['password']) # https://blog.openshift.com/use-flask-login-to-add-user-authentication-to-your-python-application/ db.session.add(user) db.session.commit() # return redirect(url_for(".login")) user = User.query.filter_by(username=form.username.data).one() z = Zagadnienie() z.user_id = user.user_id z.tytul = form.temat.data db.session.add(z) db.session.commit() login_user(user) flash("Logged in successfully.", "success") return redirect(request.args.get("next") or url_for(".home")) return render_template("create.html", form=form)
def admin_user_add(request): context = RequestContext(request) new_user = User() if request.method == 'POST': # Retrieve data. new_user.username = request.POST.get('username') new_user.first_name = request.POST.get('first-name') new_user.last_name = request.POST.get('last-name') new_user.email = request.POST.get('email') if request.POST.get('rol', ''): new_user.is_admin = True new_user.role = request.POST.get('role') # Check if username already exists. try: User.objects.get(username=request.POST.get('username')) except User.DoesNotExist: # Password verification password = request.POST.get('password') confirm_password = request.POST.get('confirm-password') if password == confirm_password: new_user.set_password(password) else: messages.error(request, u"Las contraseñas no coinciden.", context) return TemplateResponse(request, 'admin/admin_users_add.html', context) # Save user! new_user.save() messages.info( request, u"El usuario '%s' ha sido creado." % new_user.username) return HttpResponseRedirect( reverse('admin.views.admin_user_list', urlconf='admin.urls'), context) # If username exist notify user. if User.objects.get(username=request.POST.get('username')): context.update({'new_user': new_user}) messages.error( request, u"El nombre de usuario '%s' ya existe." % request.POST.get('username')) return TemplateResponse(request, 'admin/admin_users_add.html', context) return TemplateResponse(request, 'admin/admin_users_add.html', context)
def APICallWorker(request): if request.method == 'GET': return HttpResponse('Method not supported') # --- Validation req = decode_request(request) if req is None: logging.warning('unauthorized query - ignoring') return HttpResponse('ignored') if request.POST.get('type') == None: logging.warning('added task without required params - ignoring') return HttpResponse('ignored') # --- Methods url = 'https://api.instagram.com/v1' method = 'GET' params = {} if request.POST.get('type') == 'like': method = 'POST' params = {'access_token': req['user'].access_token} url += '/media/%s/likes/' % request.POST.get('media_id') elif request.POST.get('type') == 'unlike': method = 'DELETE' url += '/media/%s/likes/' % request.POST.get('media_id') url += '?access_token=' + req['user'].access_token elif request.POST.get('type') == 'add_instadaily_tag': method = 'POST' params = 'access_token=%s&text=%s' % (req['user'].access_token, INSTADAILY_TAG_MSG) url += '/media/%s/comments' % request.POST.get('media_id') elif request.POST.get('type') == 'user' and request.POST.has_key('user_id'): url += '/users/%s' % request.POST.get('user_id') url += '?access_token=' + req['user'].access_token result = rest_request(url, params, method) if request.POST.get('type') == 'like': p = Photo.objects.get_by_instagram_id(request.POST.get('media_id')) p.likes += 1 p.save() req['user'].vote_like += 1 req['user'].save() elif request.POST.get('type') == 'user' and request.POST.get('user_id') is not None: try: data = json.loads(result)['data'] except json.JSONDecodeError: print 'failed to decode json %s' % result print url return HttpResponse('') except KeyError: logging.error('DATA not found in recent photos for user %s' % request.POST.get('user_id')) return HttpResponse('') try: user = User.objects.filter(instagram_id=data['id']).get() user.pic = data['profile_picture'] user.full_name = data['full_name'] user.save() except User.DoesNotExist: user = User() user.name = data['username'] user.instagram_id = data['id'] user.full_name = data['full_name'] user.pic = data['profile_picture'] user.photos = 0 user.vote_like = 0 user.vote_dislike = 0 try: user.last_subject_id = Subject.objects.get_current().id except AttributeError: logging.error('cannot find current subject!!!') user.last_subject_id = 0 user.last_subject_points = 0 user.save() else: try: j = json.loads(result) except json.JSONDecodeError: print 'failed to decode json %s' % result print url return HttpResponse('') # only disliking photos that wasn't previously liked if j.has_key('meta') and j['meta'].has_key('error_message') and j['meta'][ 'error_message'] == 'the user has not liked this media': p = Photo.objects.get_by_instagram_id(request.POST.get('media_id')) p.dislikes += 1 p.save() req['user'].vote_dislike += 1 req['user'].save() return HttpResponse('') # logging.warning('API call failed with %s' % result) return HttpResponse('')
def github_check(request): type = '1' request_code = request.GET.get("code") oauth_git = OAuthGithub(settings.GITHUB_CLIENT_ID, settings.GITHUB_CLIENT_SECRET, settings.GITHUB_CALLBACK_URL) try: oauth_git.get_access_token(request_code) # 获取access token time.sleep(0.1) # 此处需要休息一下,避免发送urlopen的10060错误 except Exception as e: # 获取token失败,反馈失败信息 print(e) return render(request, 'login.html', {"error": "获取token失败"}) infos = oauth_git.get_user_info() # 获取用户信息 print("用户信息: " + str(infos)) open_id = infos.get('id', '') nickname = infos.get('login', '') image_url = infos.get('avatar_url', '') email = infos.get('email', '') oauth_check = OAuth.objects.filter(openid=open_id).only('openid', 'user').first() if oauth_check: # 已存在该用户,直接登录 user = User.objects.get(id=oauth_check.user.id) if user.login_power == 1: request.session['user_name'] = user.user_name # (将用户信息存入session) request.session['user_id'] = user.id request.session['user_authority'] = user.user_authority return HttpResponseRedirect('/') # 回到主页 else: info = '该用户无登录权限,请联系管理员解封' return HttpResponseRedirect(reverse('oauth:github_response', kwargs={'info': info})) # 响应页面 else: if email != '': user = User.objects.filter(email=email).only('id', 'user_name', 'user_authority', 'login_power').first() if user: # 该邮箱对应的用户已经存在 oauth_user = OAuth(openid=open_id, user_id=user.id, type=type) oauth_user.save() if user.login_power == 1: request.session['user_name'] = user.user_name # (将用户信息存入session) request.session['user_id'] = user.id request.session['user_authority'] = user.user_authority return HttpResponseRedirect('/') # 回到主页 else: info = '该用户无登录权限,请联系管理员解封' return HttpResponseRedirect(reverse('oauth:github_response', kwargs={'info': info})) # 相应页面 else: # 邮箱对应的用户不存在,将github信息和用户信息写入数据库 if User.objects.filter(user_name=nickname): # 用户名重复 nickname = 'CM-' + nickname img_path = upload_user_img(image_url) if User.objects.count() == 0: user_o = User(user_img=img_path, user_name=nickname, password=make_password(nickname), email=email, user_authority=1, login_power=1, login_state=0) else: user_o = User(user_img=img_path, user_name=nickname, password=make_password(nickname), email=email, user_authority=0, login_power=1, login_state=0) user_o.save() oauth_user = OAuth(openid=open_id, user_id=user_o.id, type=type) oauth_user.save() request.session['user_name'] = user_o.user_name request.session['user_id'] = user_o.id request.session['user_authority'] = user_o.user_authority info = '授权登录成功,初始密码为用户名' return HttpResponseRedirect(reverse('oauth:github_response', kwargs={'info': info})) # 响应页面 else: info = '你的github账号尚未绑定邮箱' return HttpResponseRedirect(reverse('oauth:github_response', kwargs={'info': info})) # 响应页面
def build_sample_db(): """ Populate a small db with some example entries. """ db.drop_all() db.create_all() # Create sample Users first_names = [ 'Harry', 'Amelia', 'Oliver', 'Jack', 'Isabella', 'Charlie', 'Sophie', 'Mia', 'Jacob', 'Thomas', 'Emily', 'Lily', 'Ava', 'Isla', 'Alfie', 'Olivia', 'Jessica', 'Riley', 'William', 'James', 'Geoffrey', 'Lisa', 'Benjamin', 'Stacey', 'Lucy' ] last_names = [ 'Brown', 'Brown', 'Patel', 'Jones', 'Williams', 'Johnson', 'Taylor', 'Thomas', 'Roberts', 'Khan', 'Clarke', 'Clarke', 'Clarke', 'James', 'Phillips', 'Wilson', 'Ali', 'Mason', 'Mitchell', 'Rose', 'Davis', 'Davies', 'Rodriguez', 'Cox', 'Alexander' ] countries = [ ("ZA", "South Africa", 27, "ZAR", "Africa/Johannesburg"), ("BF", "Burkina Faso", 226, "XOF", "Africa/Ouagadougou"), ("US", "United States of America", 1, "USD", "America/New_York"), ("BR", "Brazil", 55, "BRL", "America/Sao_Paulo"), ("TZ", "Tanzania", 255, "TZS", "Africa/Dar_es_Salaam"), ("DE", "Germany", 49, "EUR", "Europe/Berlin"), ("CN", "China", 86, "CNY", "Asia/Shanghai"), ] user_list = [] for i in range(len(first_names)): user = User() country = random.choice(countries) user.type = random.choice(AVAILABLE_USER_TYPES)[0] user.first_name = first_names[i] user.last_name = last_names[i] user.email = first_names[i].lower() + "@example.com" user.website = "https://www.example.com" user.ip_address = "127.0.0.1" user.coutry = country[1] user.currency = country[3] user.timezone = country[4] user.dialling_code = country[2] user.local_phone_number = '0' + ''.join( random.choices('123456789', k=9)) user_list.append(user) db.session.add(user) # Create sample Tags tag_list = [] for tmp in [ "YELLOW", "WHITE", "BLUE", "GREEN", "RED", "BLACK", "BROWN", "PURPLE", "ORANGE" ]: tag = Tag() tag.name = tmp tag_list.append(tag) db.session.add(tag) # Create sample Posts sample_text = [{ 'title': "de Finibus Bonorum et Malorum - Part I", 'content': "Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod tempor \ incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud \ exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure \ dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. \ Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt \ mollit anim id est laborum." }, { 'title': "de Finibus Bonorum et Malorum - Part II", 'content': "Sed ut perspiciatis unde omnis iste natus error sit voluptatem accusantium doloremque \ laudantium, totam rem aperiam, eaque ipsa quae ab illo inventore veritatis et quasi architecto \ beatae vitae dicta sunt explicabo. Nemo enim ipsam voluptatem quia voluptas sit aspernatur \ aut odit aut fugit, sed quia consequuntur magni dolores eos qui ratione voluptatem sequi \ nesciunt. Neque porro quisquam est, qui dolorem ipsum quia dolor sit amet, consectetur, \ adipisci velit, sed quia non numquam eius modi tempora incidunt ut labore et dolore magnam \ aliquam quaerat voluptatem. Ut enim ad minima veniam, quis nostrum exercitationem ullam \ corporis suscipit laboriosam, nisi ut aliquid ex ea commodi consequatur? Quis autem vel eum \ iure reprehenderit qui in ea voluptate velit esse quam nihil molestiae consequatur, vel illum \ qui dolorem eum fugiat quo voluptas nulla pariatur?" }, { 'title': "de Finibus Bonorum et Malorum - Part III", 'content': "At vero eos et accusamus et iusto odio dignissimos ducimus qui blanditiis praesentium \ voluptatum deleniti atque corrupti quos dolores et quas molestias excepturi sint occaecati \ cupiditate non provident, similique sunt in culpa qui officia deserunt mollitia animi, id \ est laborum et dolorum fuga. Et harum quidem rerum facilis est et expedita distinctio. Nam \ libero tempore, cum soluta nobis est eligendi optio cumque nihil impedit quo minus id quod \ maxime placeat facere possimus, omnis voluptas assumenda est, omnis dolor repellendus. \ Temporibus autem quibusdam et aut officiis debitis aut rerum necessitatibus saepe eveniet \ ut et voluptates repudiandae sint et molestiae non recusandae. Itaque earum rerum hic tenetur \ a sapiente delectus, ut aut reiciendis voluptatibus maiores alias consequatur aut perferendis \ doloribus asperiores repellat." }] for user in user_list: entry = random.choice(sample_text) # select text at random post = Post() post.user = user post.title = "{}'s opinion on {}".format(user.first_name, entry['title']) post.text = entry['content'] post.background_color = random.choice( ["#cccccc", "red", "lightblue", "#0f0"]) tmp = int(1000 * random.random()) # random number between 0 and 1000: post.date = datetime.datetime.now() - datetime.timedelta(days=tmp) post.tags = random.sample(tag_list, 2) # select a couple of tags at random db.session.add(post) # Create a sample Tree structure trunk = Tree(name="Trunk") db.session.add(trunk) for i in range(5): branch = Tree() branch.name = "Branch " + str(i + 1) branch.parent = trunk db.session.add(branch) for j in range(5): leaf = Tree() leaf.name = "Leaf " + str(j + 1) leaf.parent = branch db.session.add(leaf) db.session.commit() return
class SiteRequestHandler(TemplateView): def __init__(self): self.template_vals = {} ## Don not define self.app_context there, it will override in sub class when use in render* method def initialize(self, request): TemplateView.initialize(self, request) ## some for authorize # self.login_user = users.get_current_user() self.login_user = auth.authenticate(username="******", password="******") self.is_login = self.login_user is not None self.loginurl = reverse(login) # users.create_login_url(self.request.path) self.logouturl = reverse(logout) # users.create_logout_url(self.request.path) # self.is_admin = users.is_current_user_admin() self.is_admin = False # TODO: make it valid # three status: admin author login if self.is_admin: self.auth = "admin" self.author = User.all().filter("email =", self.login_user.email()).get() if not self.author: # init author database self.author = User(dispname=self.login_user.nickname(), email=self.login_user.email()) self.author.isadmin = True self.author.user = self.login_user self.author.put() elif self.is_login: self.author = User.all().filter("email =", self.login_user.email()).get() if self.author: self.auth = "author" else: self.auth = "login" else: self.auth = "guest" try: # self.referer = self.request.headers['referer'] self.referer = self.request.META["HTTP_REFERER"] except: self.referer = None ### TODO: check code position def error(self, errorcode, message="an error occured"): if errorcode == 404: message = ( "Sorry, we were not able to find the requested page. We have logged this error and will look into it." ) elif errorcode == 403: message = "Sorry, that page is reserved for administrators. " elif errorcode == 500: message = "Sorry, the server encountered an error. We have logged this error and will look into it." message += "<p><pre>" + traceback.format_exc() + "</pre><br></p>" # self.template_vals.update( {'errorcode':errorcode,'message':message}) # TODO:zy # if errorcode>0: # self.response.set_status(errorcode) # errorfile=getattr(self.blog.theme,'error'+str(errorcode)) # logging.debug(errorfile) ## if not errorfile: ## errorfile=self.blog.theme.error errorfile = "error" + str(errorcode) + ".html" # try: # content=micolog_template.render(self.blog.theme,errorfile, self.template_vals) # except TemplateDoesNotExist: # try: # content=micolog_template.render(self.blog.theme,"error.html", self.template_vals) # except TemplateDoesNotExist: # content=micolog_template.render(self.blog.default_theme,"error.html", self.template_vals) # except: # content=message # except: # content=message # self.response.out.write(content) return self.render(errorfile, {"errorcode": errorcode, "message": message}) def message(self, msg, returl=None, title="Infomation"): return self.render("msg", {"message": msg, "title": title, "returl": returl}) def render(self, template_file, params={}, mimetype=None, status=None, content_type=None): """ Helper method to render the appropriate template """ params.update(self.template_vals) template = get_template_uri(self.app_context, template_file) t = loader.get_template(template) c = RequestContext(self.request, params) self.response.write(t.render(c)) if mimetype: content_type = mimetype if content_type: self.response["Content-Type"] = content_type # response = HttpResponse(t.render(c), **kargs) def render2(self, template_file, params={}, **kargs): self.render(template_file, params, **kargs) def render2_bak(self, template_file, params={}): """ Helper method to render the appropriate template """ params.update(self.template_vals) template = get_template_uri(self.app_context, template_file) return shortcuts.render_to_response( template_name=template, dictionary=params, context_instance=RequestContext(self.request) ) def param(self, name, **kw): method = getattr(self.request, self.request.method) method2 = getattr(self.request, self.request.method == "GET" and "POST" or "GET") ret = method.get(name) if not ret: ret = method2.get(name, **kw) return ret and ret or "" def paramstr(self, name, **kw): return self.param(name, **kw) def paramint(self, name, default=0): value = self.param(name) try: return int(value) except: return default def parambool(self, name, default=False): value = self.param(name) try: return value == "on" except: return default def paramfloat(self, name, default=0.00): value = self.param(name) try: return float(value) except: return default def paramlist(self, name, **kw): lst = self.param(name) return lst and lst.split(",") or [] def write(self, s): self.response.out.write(s) def chk_login(self, redirect_url="/"): if self.is_login: return True else: self.redirect(redirect_url) return False def chk_admin(self, redirect_url="/"): if self.is_admin: return True else: self.redirect(redirect_url) return False def redirect(self, to, *args, **kwargs): if kwargs.pop("permanent", False): self.response.status_code = 301 else: self.response.status_code = 302 # If it's a model, use get_absolute_url() iri = to if hasattr(to, "get_absolute_url"): iri = to.get_absolute_url() else: # Next try a reverse URL resolution. try: iri = urlresolvers.reverse(to, args=args, kwargs=kwargs) except urlresolvers.NoReverseMatch: # If this is a callable, re-raise. if callable(to): raise # If this doesn't "feel" like a URL, re-raise. if "/" not in to and "." not in to: raise self.response["Location"] = iri_to_uri(iri)
def controlleruser(request): session = None try: session = request.session['userid'] except KeyError: pass if session==None: return redirect("/admin/") user = manage.searchById(request.session['userid']) manager = ManageUser() action = request.POST['action']; if action is not None: if str(action).__eq__(''): return '' else: if str(action).__eq__(Action.CREER): type = request.POST['type'] username = request.POST['username'] password = request.POST['password'] firstname = request.POST['firstname'] lastname = request.POST['lastname'] email = request.POST['email'] if type!=None and username!=None and password!=None and firstname!=None and lastname!=None and email!=None: user1 = User(type=type, active=True, username=username, password=password, firstname=firstname, lastname=lastname,email=email) try: user1.id=request.POST['id'] except: pass try: valid = True t = get_template('admin/user/form.html') dic = {'login':True,'type':Type(),'action':Action.CREER,'user':user} dic['type1'] = str(type) dic['username'] = str(username) dic['firstname'] = str(firstname) dic['lastname'] = str(lastname) dic['email'] = str(email) if 'id' in request.POST: if manager.iscreateuser(username): dic['error2'] = 'Already exist' valid = False if manager.isexistmail(email): dic['error6'] = 'Already exist' valid = False if not valid: html = t.render(Context(dic)) return HttpResponse(html) user1.save() if user1.type.__eq__(Type.PROF): prof=Professor() prof.nom=user1.lastname prof.prenom=user1.firstname prof.email=user1.email p=Professor.objects.get(id=prof.save()) userprof=UserProf() userprof.user=user1 userprof.professeur=p userprof.save() subject, from_email, to = 'System descriptif cours ESIH', '*****@*****.**', prof.email link='<a href="http://ancient-ridge-9094.herokuapp.com/">http://ancient-ridge-9094.herokuapp.com/</a>' html_content ='Salut {} {}!<p> Votre compte est << {} >> et mot de passe << {} >>. Cliquer sur ce lien {} pour connecter au systeme descriptif cours de l\'ESIH.</p>'.format(prof.prenom,prof.nom,username,password,link) msg = EmailMultiAlternatives(subject, '', from_email, [to]) msg.attach_alternative(html_content, "text/html") msg.send() message = "The account {} has created for {} <a href=\"/admin/user/list/\">Retour</a>".format(type,firstname) t = get_template('admin/user/repform.html') html = t.render(Context({'login':True,'message':message,'user':user})) return HttpResponse(html) except IntegrityError: message = "Error " t = get_template('admin/user/repform.html') html = t.render(Context({'login':True,'message':message,'user':user})) return HttpResponse(html) if str(request.POST['action']).__eq__(Action.SUCCES_DEL): #try: user2 = manage.searchById(request.POST['id']) if user2.type.__eq__(Type.PROF): userp=UserProf.objects.filter(user_id=user2.id)[0] p = Professor.objects.get(id=userp.professeur.id) for us in UserProf.objects.all(): if us.id==user2.id: us.delete() p.delete() user2.delete() title = 'Supression' message = "{} a ete suprimé avec succès.".format(user2) color='#999999' #except: # title = 'Avertissement!!!' # color ='red' # message = "Une erreur c'est produite! Le système n'arrive pas à supprimer l'utilisateur demandé." dic = {'login':True,'nom': '', 'user': user,'message':message,'color':color,'title':title} t = get_template('admin/user/succdel.html') html = t.render(Context(dic)) return HttpResponse(html)
tag.min_tag_id = int(data['pagination']['min_tag_id']) tag.save() except KeyError: pass if not data.has_key('data'): logging.warning('No data in fetched url: %s' % url) return logging.info('Downloaded %d photos for tag #%s' % (len(data['data']), tag_name)) for d in data['data']: Photo().add_or_update(d) u = User.objects.get_by_name(d['user']['username']) if u is None: u = User() u.instagram_id = d['user']['id'] u.name = d['user']['username'] u.pic = d['user']['profile_picture'] # u.full_name = d['user']['full_name'] u.points = 0 u.vote_like = 0 u.vote_dislike = 0 try: u.last_subject_id = Subject.objects.get_current().id except AttributeError: logging.error('cannot find current subject!!!') u.last_subject_id = 0 u.last_subject_points = 0 u.save()
def create_user(username, password): user = User(username=username, password=md5(password)) user.save()
def index(request): if request.method == "POST" and request.POST.has_key("user"): u = json.loads(request.POST["user"]) try: user = User.objects.filter(instagram_id=u["instagram_id"]).get() user.token = u["token"] user.access_token = u["access_token"] # instagram's one user.pic = u["pic"] user.full_name = u["full_name"] user.save() except User.DoesNotExist: user = User() user.token = u["token"] user.access_token = u["access_token"] user.name = u["name"] user.instagram_id = u["instagram_id"] user.full_name = u["full_name"] user.pic = u["pic"] user.photos = 0 user.vote_like = u["vote_like"] user.vote_dislike = u["vote_dislike"] try: user.last_subject_id = Subject.objects.get_current().id except AttributeError: logging.error("cannot find current subject!!!") user.last_subject_id = 0 user.last_subject_points = 0 user.save() return {"body": ""}