def test_reverse(self): for w in 1, 2, 3, 4: self.assertEqual(audioop.reverse(b'', w), b'') self.assertEqual(audioop.reverse(bytearray(), w), b'') self.assertEqual(audioop.reverse(memoryview(b''), w), b'') self.assertEqual(audioop.reverse(packs[w](0, 1, 2), w), packs[w](2, 1, 0))
def clientlogout(request): try: del request.session['user_id'] return HttpResponseRedirect(reverse('onlinetest:index')) except: pass return HttpResponseRedirect(reverse('onlinetest:index'))
def do_process(self, arg): num_peaks = int(arg) self.sample_file.rewind() self.output_data = b'' input_data = self.sample_file.readframes(self.sample_file.getnframes()) peak_duration = self.sample_file.getframerate( ) * self.sample_file.getnchannels() // 1000 * 250 #using audioop.findmax(fragment, length) global COUNT COUNT = 0 peaks = _find_maxes(input_data, peak_duration, 0, len(input_data), num_peaks) #peaks = peaks[0:num_peaks] peaks.sort() insert = 0 for i in range(num_peaks): start = insert * 2 stop = (peaks[i] + peak_duration) * 2 insert = peaks[i] + peak_duration self.output_data += audioop.reverse( input_data[start:stop], self.sample_file.getsampwidth()) self.output_data += audioop.reverse(input_data[insert * 2:], self.sample_file.getsampwidth()) print('finished with data lengths: in: {} out: {}'.format( len(self.output_data), len(input_data))) #find the maximums, then search in the remaining data #continue until len(peaks) == num_peaks #build up output_data using audioop.reverse(fragment, sample_file.getsampwidth()) return False
def studentlogout(request): try: del request.session['studentuid'] del request.session['test_id'] return HttpResponseRedirect(reverse('onlinetest:index')) except: pass return HttpResponseRedirect(reverse('onlinetest:index'))
def ad_content_edit(request): """ 数据管理添加,编辑 :param request: :return: """ action = getattr(request, request.method).get('action', None) if action is None: return HttpResponseRedirect(reverse("404")) if request.method == 'GET': if action == 'add': title = "添加" return render(request, 'table/ad-content-edit.html', locals()) if action == 'edit': title = "编辑" _id = ObjectId(request.GET.get('_id')) db = get_db() content = db.ebf_qq.find_one({'_id': _id}) system_time = utc2local( content['system_time']).strftime("%Y-%m-%d %H:%M:%S") content = { key.strip('_'): str(value) for key, value in content.items() } return render(request, 'table/ad-content-edit.html', locals()) elif request.method == 'POST': try: if action == 'add': system_time = request.POST.get('system_time', None) online_number = request.POST.get('online_number', None) content = { 'online_number': online_number, 'system_time': system_time } db = get_db() posts = db.ebf_qq posts.insert(content) return HttpResponse(json.dumps({"status": 0})) elif action == 'edit': _id = request.POST.get('_id', None) online_number = request.POST.get('online_number', None) content = { 'online_number': online_number, 'system_time': datetime.datetime.utcnow() } db = get_db() posts = db.ebf_qq _id = ObjectId(_id) posts.update({"_id": _id}, content) return HttpResponse(json.dumps({"status": 0})) except Exception as e: print(e) return HttpResponse(json.dumps({"status": -1})) else: return HttpResponseRedirect(reverse("404"))
def activeted(self, obj): img = '' text = '' if obj.activeted: img = u'<img src="/static/admin/img/icon-yes.gif" alt="Активований">' text = u'Видалити' url = reverse('delete', args=[obj.pk]) else: img = u'<img src="/static/admin/img/icon-no.gif" alt="Не активований">' text = u'Активувати' url = reverse('activate', args=[obj.pk]) return "%s <a href='%s'>%s</a>" % (img, url, text)
def authenticate_user(request): username = request.POST['username'] password = request.POST['password'] user = authenticate(username=username, password=password) if user is not None: if user.is_active: login(request, user) print "Logged in" return HttpResponseRedirect(reverse('profil')) else: return HttpResponseRedirect(reverse('index')) else: return HttpResponseRedirect(reverse('index'))
def test_debug(self): self.guest = Client() test_context={'text': 'terminator', 'id': 2000, 'group': self.group} response = self.guest.get('new/', test_context) self.assertEqual(response.status_code, 200, msg='Проблемы на странице поста для редактирования.') response = self.guest.post(reverse('new_post'), data) response = self.guest.get(reverse('index')) self.assertContains(response, 'terminator222', msg_prefix='Проблема после редактирования текста' ) response = self.client.get('<str:username>/<int:post_id>/edit/') self.assertContains(response, 'termo', msg_prefix='Проблема после редактирования группы' )
def new_project(request): form = None if request.method == 'GET': """ Show all test case Show status of testcase """ user = request.user project_list = models.rrt_project.objects.all().order_by( '-modify_time')[0:5] testsuit_list = models.rrt_testsuit.objects.all().order_by( '-create_time')[0:5] context = { 'project_list': project_list, 'testsuit_list': testsuit_list, 'user': user } return render(request, 'management/new_project.html', context) elif request.method == 'POST': form = New_Project_Form(request.POST) if form.is_valid(): new_project_information = form.cleaned_data project_name = new_project_information['project_name'] project_description = new_project_information[ 'project_description'] project_list = rrt_project.objects.filter( project_name=project_name) if len(project_list) < 1: project = rrt_project(project_name=project_name, project_description=project_description) project.save() project_id = rrt_project.objects.get(project_name=project_name) return HttpResponseRedirect( reverse('management:project_overview_detail', args=(project_id.id, ))) else: project_id = rrt_project.objects.get(project_name=project_name) return HttpResponseRedirect( reverse('management:project_overview_detail', args=(project_id.id, ))) else: # 弹出alert窗口 # 弹出alert窗口 return render( request, 'management/error.html', { 'error_message': "You didn't input valid project name.", })
def new_version(request): type_id = request.POST["type_id"] src_ver_id = request.POST.get('src_ver_id') form = NewVerForm(request.POST) if form.is_valid(): channelsappversion = form.save() remark = "" if src_ver_id: src_ver = CmsChannelsAppVersion.objects.get(id=src_ver_id) src_ver_text = src_ver.app_version src_type_text = get_nav_text(src_ver.type_id) type_text = get_nav_text(type_id) remark = "在%s下新建了版本%s,它是由%s%s版本复制而来" % ( type_text, channelsappversion.app_version, src_type_text, src_ver_text) if CMS_CHECK_ON: CmsCheck(module=CmsModule.MAIN_CHANNEL, table_name='CmsChannelsAppVersion', data_id=channelsappversion.id, op_type=CheckOpType.NEW, remark=remark, alter_person=request.user.username, alter_date=time.strftime("%Y-%m-%d %X", time.localtime())).save() if src_ver_id: copy_version(src_ver_id, channelsappversion.id, request) return HttpResponseRedirect(reverse('main_index') + "?t=%s" % type_id)
def edit_service(request, template_name): id = request.GET.get("id") if request.method == "POST": services = CmsServices.objects.get(id=id) form = ServiceForm(request.POST, instance=services) if form.is_valid(): form.save() if CMS_CHECK_ON: CmsCheck(module=CmsModule.MAIN_SERVICE, table_name='CmsServices', data_id=id, op_type=CheckOpType.EDIT, alter_person=request.user.username, alter_date=time.strftime("%Y-%m-%d %X", time.localtime())).save() return HttpResponseRedirect(reverse('services')) else: services = CmsServices.objects.get(id=id) form = ServiceForm(instance=services) errors, fields = format_form(form) scenes = get_scenes() actions = get_actions_select() citygroups = get_city_group() cities = get_city_list() return render_to_response(template_name, { "scenes": scenes, "actions": actions, "citygroups": citygroups, "cities": cities, "id": id, "fields": fields, "errors": errors }, context_instance=RequestContext(request))
def post_delete(request, p_id): p = get_object_or_404(Post, id=p_id) if p.user == request.user: p.delete() return HttpResponseRedirect(reverse('blog.main')) else: return HttpResponseNotAllowed()
def signup(request): if request.method == 'GET': return render(request, 'sign-up.html', {'form': SignupForm()}) # elif request.method == 'POST' form = SignupForm(request.POST) if form.is_valid(): user = User.objects.create_user(username=form.cleaned_data['username'], password=form.cleaned_data['password']) p = Person() p.user = user user.save() p.save() s = Studentity() s.person = p s.student_id = form.cleaned_data['student_id'] s.department = Department.objects.get(name='unknown') s.save() return HttpResponseRedirect(reverse('registration_select_initial_tags', args=[user.username, p.id])) else: return render(request, 'sign-up.html', {'form': form, 'status': 'Notice errors below:'})
def studentRegSave(request): try: if request.method == 'POST': addstudent = StudentRegForm(request.POST) if addstudent.is_valid(): emailcheck = StudentProfile.objects.filter( email=addstudent.cleaned_data.get('email').strip()) if (emailcheck.count() > 0): return HttpResponse( "<center><h2>This email is already registered.</h2></center>" ) else: p = StudentProfile( name=addstudent.cleaned_data.get('name').strip(), email=addstudent.cleaned_data.get('email').strip(), rollno=addstudent.cleaned_data.get('rollno').strip(), password=addstudent.cleaned_data.get( 'password').strip(), client=addstudent.cleaned_data.get('client').strip(), ) p.save() request.session['studentuid'] = p.id return HttpResponseRedirect(reverse('onlinetest:yourtest')) except: return HttpResponse("Something went wrong")
def test_two_past_questions(self): create_question(question_text="Past question 1.", days=-30) create_question(question_text="Past question 2.", days=-5) response = self.client.get(reverse('polls:index')) self.assertQuerysetEqual( response.context['latest_question_list'], ['<Question: Past question 2.>', '<Question: Past question 1.>'])
def make_html_content_and_add_tags(self): # 해시태그에 해당하는 정규표현식 p = re.compile(r'(#\w+)') # findall메서드로 해시태그 문자열들을 가져옴 tag_name_list = re.findall(p, self.content) # 기존 content(Comment내용)을 변수에 할당 ori_content = self.content # 문자열들을 순회하며 for tag_name in tag_name_list: # Tag객체를 가져오거나 생성, 생성여부는 쓰지않는 변수이므로 _처리 tag, _ = Tag.objects.get_or_create(name=tag_name.replace('#', '')) # 기존 content의 내용을 변경 change_tag = '<a href="{url}" class="hash-tag">{tag_name}</a>'.format( # url=reverse('post:hashtag_post_list', args=[tag_name.replace('#', '')]), url=reverse('post:hashtag_post_list', kwargs={'tag_name': tag_name.replace('#', '')}), tag_name=tag_name ) ori_content = re.sub(r'{}(?![<\w])'.format(tag_name), change_tag, ori_content, count=1) # content에 포함된 Tag목록을 자신의 tags필드에 추가 if not self.tags.filter(pk=tag.pk).exists(): self.tags.add(tag) # 편집이 완료된 문자열을 html_content에 저장 self.html_content = ori_content super().save(update_fields=['html_content'])
def upload_hrl(request): try: upload_folder = r"./upload" try: shutil.rmtree(upload_folder) except: print "Delete upload folder failed" upload_file = request.FILES.get('file') project_name = request.POST.get('project_name') project_id = rrt_project.objects.get(project_name=project_name) print upload_file.name if upload_file.name[-4:] == ".rar": azip = rarfile.RarFile(upload_file) elif upload_file.name[-4:] == ".zip": azip = zipfile.ZipFile(upload_file) else: return "error" print(azip.namelist()) azip.extractall("upload") audio_folder = r"./Audiofile" hrl_folder = r"./Hrlfile" if not os.path.exists(audio_folder): os.makedirs(audio_folder) if not os.path.exists(hrl_folder): os.makedirs(hrl_folder) put_hrl_into_database(audio_folder, hrl_folder, project_name) return HttpResponseRedirect( reverse('management:project_overview_detail', args=(project_id.id, ))) except: shutil.rmtree(upload_folder) HttpResponse("error")
def studenthome(request): try: if request.session.has_key('test_id'): return render(request, 'onlinetest/studenthome.html') else: return HttpResponseRedirect(reverse('onlinetest:studentlogin')) except: return HttpResponse("Something went wrong")
def delete_book(request): if request.method == 'POST': book_id = request.POST.get('book_id') cursor = get_corsor() cursor.execute("delete from list where id=%s" % book_id) return redirect(reverse('index')) else: raise RuntimeError("Error deleting")
def upload_csv(request): data = {} if "GET" == request.method: return render(request, "CSV/upload_csv.html", data) # if not GET, then proceed try: csv_file = request.FILES["csv_file"] if not csv_file.name.endswith('.csv'): messages.error(request, 'File is not CSV type') return HttpResponseRedirect(reverse("CSVapp:upload_csv")) #if file is too large, return if csv_file.multiple_chunks(): messages.error( request, "Uploaded file is too big (%.2f MB)." % (csv_file.size / (1000 * 1000), )) return HttpResponseRedirect(reverse("CSV:upload_csv")) file_data = csv_file.read().decode("utf-8") lines = file_data.split("\n") #loop over the lines and save them in db. If error , store as string and then display for line in lines: fields = line.split(",") data_dict = {} data_dict["name"] = fields[0] data_dict["start_date_time"] = fields[1] data_dict["end_date_time"] = fields[2] data_dict["notes"] = fields[3] try: form = EventsForm(data_dict) if form.is_valid(): form.save() else: logging.getLogger("error_logger").error( form.errors.as_json()) except Exception as e: logging.getLogger("error_logger").error(repr(e)) pass except Exception as e: logging.getLogger("error_logger").error("Unable to upload file. " + repr(e)) messages.error(request, "Unable to upload file. " + repr(e)) return HttpResponseRedirect(reverse("CSVapp:upload_csv"))
def get(self, request, *args, **kwargs): backend = kwargs.pop('backend') try: return complete(request, backend, *args, **kwargs) except AuthFailed: messages.error( request, "Your Google Apps domain isn't authorized for this app") return HttpResponseRedirect(reverse('home'))
def test_detail_rater_return_new_rating(self): test_user = User.objects.create_user('test', '*****@*****.**', 'pass') test_user.save() time = timezone.now() rating = Rating(rater=1, movie=3, rating=5, timestamp=time) rating.save() response = self.client.get(reverse('detail_rater', args=[rater.id])) self.assertContains(response, 'Testing')
def edit_specialtopic(request, template_name): """ 编辑专题 url :{% url 'edit_specialtopic' %}?id={{ id }} :请求方式: Get :请求参数:id :返回数据:scenes 场景列表 citygroups 城市分组列表,cities 所有城市(列表) actions 动作列表 open_type 类型 :[[id,name],[id,name],....] :请求方式:Post :请求参数:数据库字段(input name) """ id = request.GET.get("id") specialtopic = CmsSpecialTopic.objects.get(id=id) if request.method == "POST": form = SpecialTopicForm(request.POST, instance=specialtopic) if form.is_valid(): form.save() if CMS_CHECK_ON: CmsCheck(module=CmsModule.MAIN_TOPIC, table_name='CmsSpecialTopic', data_id=id, op_type=CheckOpType.EDIT).save() find_page_views = CmsViewFindTopic.objects.filter(topic_id=id) # 更新时间同步 for find_page_view in find_page_views: find_page_view.update_time = specialtopic.update_time find_page_view.save() if CMS_CHECK_ON: CmsCheck(module=CmsModule.MAIN_TOPIC, table_name='CmsViewFindTopic', data_id=find_page_view.id, op_type=CheckOpType.EDIT, is_show=0, alter_person=request.user.username, alter_date=time.strftime( "%Y-%m-%d %X", time.localtime())).save() return HttpResponseRedirect(reverse("specialtopics")) else: form = SpecialTopicForm(instance=specialtopic) errors, fields = format_form(form) citygroups = get_city_group() actions = get_actions_select() cities = get_city_list() scenes = get_scenes() return render_to_response(template_name, { "fields": fields, "errors": errors, "citygroups": citygroups, "actions": actions, "cities": cities, "scenes": scenes, "open_type": open_type, "id": id }, context_instance=RequestContext(request))
def message(request, code): if code == 'password_reset': message = _( '<strong>We have sent you an email!</strong> Please, follow the instructions to reset your password.') messages.add_message(request, messages.INFO, message) # return render(request, 'accounts/echo.html', locals()) # return redirect(reverse('accounts:password_reset')) if code == 'password_reset_confirm': messages.add_message(request, messages.INFO, _( '<strong>Success!</strong> You have changed your password.')) return redirect(reverse('accounts:login')) if code == 'password_change_done': messages.add_message(request, messages.INFO, _( '<strong>Success!</strong> You have changed your password.')) return redirect(reverse('accounts:password_change')) return redirect(reverse('accounts:profile_edit'))
def reverse_audio(old_file_name, new_file_name): with wave.open(old_file_name) as fd: params = fd.getparams() frames = fd.readframes(1000000) frames = audioop.reverse(frames, params.sampwidth) with wave.open(new_file_name, 'wb') as fd: fd.setparams(params) fd.writeframes(frames)
def post(self, request, *args, **kwargs): for instrument in self.instruments: for s in self.suffix: key = '%s_%s' % (instrument, s) if key in request.POST: price = request.POST.get(key) if price: price_redis.set(key, price) url = reverse('forex:main') return HttpResponseRedirect(url)
def setScratchInfo(self, direction): self.pos = int(direction*self.chunk + self.pos)%self.readaudio.getnframes() if direction < 0: self.readaudio.setpos(self.pos) self.data = audioop.reverse(self.readaudio.readframes(self.chunk), 2) self.readaudio.setpos(self.pos) else: self.data = self.readaudio.readframes(self.chunk) self.readaudio.setpos(self.pos) self.stream.write(self.data) time.sleep(self.sleep)
def book_add(request): if request.method == 'GET': return render(request, 'book_add.html') else: name = request.POST.get("name") author = request.POST.get("author") cursor = get_corsor() cursor.execute( "insert into list(id, name, people) values(null, '%s', '%s')" % (name, author)) return redirect(reverse('index'))
def post(request): form = UserCreateForm(request.POST) if form.is_valid(): user = form.save() login(request, user) # TODO send welcome email return HttpResponseRedirect(reverse('home')) return render(request, 'registration/register.html', dict(form=form))
def choise_finished(self, obj): img = '' text = '' if obj.finished: img = '<img src="/static/admin/img/icon-yes.gif" alt="Finished">' text = 'finished' return "%s-%s" % (img, text) else: img = '<img src="/static/admin/img/icon-no.gif" alt="No_Finished">' text = '-add' url = reverse('finished', args=[obj.pk]) return "%s <a href='%s'>%s</a>" % (img, url, text)
def choise_finished(self, obj): img = '' text = '' if obj.finished: img = '<img src="/static/admin/img/icon-yes.gif" alt="Finished">' text = 'finished' return "%s-%s" % (img,text) else: img = '<img src="/static/admin/img/icon-no.gif" alt="No_Finished">' text = '-add' url = reverse('finished', args=[obj.pk]) return "%s <a href='%s'>%s</a>" % (img, url, text)
def home(request): if (request.user.is_authenticated): # user is logged in if (request.user.is_superuser): # user is superuser return render(request, 'home/index.html') else: # user is normal user return render(request, 'home/index.html') else: # user has not logged in, redirect to login page return HttpResponseRedirect(reverse('login:index'))
def page_context(context, element_id, _re_language=re.compile(r'[_-]'), *args, **kwargs): request: HttpRequest = context['request'] user = request.user return json_script( dict(locale=_re_language.split(translation.get_language())[0], user=UserSerializer(instance=user).data, groups=tuple(user.groups.values_list('name', flat=True)), djangoAdminUrl=reverse('admin:index') if user.is_staff else '', logoutUrl=reverse('logout'), languages=[(k, translation.gettext(v)) for k, v in settings.LANGUAGES], version=settings.VERSION, messages=[ dict(text=str(m), type=m.level_tag) for m in get_messages(request) ]), element_id)
def login_view(request): if request.method == 'POST': username = request.POST.get('username') password = request.POST.get('password') user = authenticate(request, username=username, password=password) if user is not None: login(request, user) if request.GET.get('next'): return HttpResponseRedirect(request.GET.get('next')) return HttpResponseRedirect(reverse('cms:Cmspost_list')) else: context = { 'username': username, 'error': 'كاربري با اين مشخصات يافت نشد' } else: if request.user.is_authenticated: return HttpResponseRedirect(reverse('cms:Cmspost_list')) context = {} return render(request, 'accounts/login.html', {})
def vote(request, question_id): p = get_object_or_404(Question, pk=question_id) try: selected_choise = p.choise_set.get(pk=request.POST['']) except(KeyError, Choise.DoesNotExist): return render(request, 'polls/detail.html', { 'question': p, 'error_message': "You didn't select a choice.", }) else: selected_choise.votes += 1 selected_choise.save() return HttpResponseRedirect(reverse('polls:results', args=(p.id,)))
def vote(request, fio_id): p = get_object_or_404(FIO, pk=fio_id) try: selected_choice = p.age except (KeyError, FIO.DoesNotExist): # Redisplay the question voting form. return render(request, 'app_main/detail.html', { 'question': p, 'error_message': "You didn't select a choice.", }) else: selected_choice += 1 selected_choice.save() # Always return an HttpResponseRedirect after successfully dealing # with POST data. This prevents data from being posted twice if a # user hits the Back button. return HttpResponseRedirect(reverse('main1:results', args=(p.id,)))
def customers_edit(request, pk=None): if pk: customer = Customer.objects.get(id=pk) else: customer = Customer(id=1) if request.POST: form = CustomerForm(request.POST, instance=customer) if form.is_valid(): form.save() # If the save was successful, redirect to another page redirect_url = reverse('produtos') return HttpResponseRedirect(redirect_url) else: form = CustomerForm(instance=customer) return render(request, 'customer_form.html', {'form': form, 'customer': customer})
def reverse_wav_file(file_path): """ Flips wave file on given path and saves it """ file_path = os.path.sep.join(file_path.split("/")) reversed_file = file_path + "_r.wav" if os.path.exists(reversed_file): return reversed_file with open(reversed_file, "w") as fr: f = wave.open(file_path) frames = f.getnframes() data = f.readframes(frames) reversed = audioop.reverse(data, 2) # '2' is the sample width fr = wave.open(fr) # Must set params but leave # of frames empty fr.setparams((2, 2, 44100, "", "NONE", "not compressed")) fr.writeframesraw(reversed) return reversed_file
def test_reverse(self): self.assertEqual(audioop.reverse(data[0], 1), '\2\1\0')
def reverse(self): """Reverse the sound.""" assert not self.__locked self.__frames = audioop.reverse(self.__frames, self.__samplewidth) return self
def testreverse(data): if audioop.reverse(data[0], 1) <> '\2\1\0': return 0 return 1
def reverse(self): return self._spawn( data=audioop.reverse(self._data, self.sample_width) )
def testreverse(data): if verbose: print 'reverse' if audioop.reverse(data[0], 1) <> '\2\1\0': return 0 return 1
def get_absolute_url(self): return reverse('author-detail', kwargs={'pk': self.nombre})
def on_the_map(self,obj): text = u'Подивитися на карті' url = reverse('roat', args=[obj.pk]) return "<a href='%s'>%s</a>" % (url, text)
def reverse(snd): return audioop.reverse(snd, audio_params[1])
def test_unauth_eating_page(self): url = reverse('eating_page') res = self.app.get(url) self.assertEquals(res.status_code, 302, 'Eating page is avalible for unauth user')
def test_auth_eating_page(self): url = reverse('eating_page') res = self.app.get(url, user=self.user) self.assertEquals(res.status_code, 200, 'Eating page is unavalible')
def test_unauth_food_page(self): url = reverse('food_page') res = self.app.get(url) self.assertEquals(res.status_code, 302, 'Food page is avalible for unauth user')
def test_auth_food_page(self): url = reverse('food_page') res = self.app.get(url, user=self.user) self.assertEquals(res.status_code, 200, 'Food page is unavalible')
def reverse(snd): return audioop.reverse(snd, BIT_WIDTH)
def logout(request): auth.logout(request) return redirect(reverse("teacher_login_portal"))
def get_absolute_url(self): return reverse('DB:index', kwargs={'pk': self.pk})
def test_reverse(self): for w in 1, 2, 4: self.assertEqual(audioop.reverse(b"", w), b"") self.assertEqual(audioop.reverse(packs[w](0, 1, 2), w), packs[w](2, 1, 0))
def test_detail_rater_404(self): url = reverse('detail_rater', args=[100]) response = self.client.get(url) self.assertEqual(response.status_code, 404, msg='not found')
def get_absolute_url(self): return reverse('mobile_detail', keywargs={'pk': self.pk})