def signup(username, password, phonenum, deviceid): """ Handles put requests for signups from our Android app """ # hash the password pwhash = bcrypt.hashpw(password.encode('utf-8'), bcrypt.gensalt()) # check to see if a username is already in the database userexist = User.objects.filter(username=username).exists() if userexist: return "User already exists" user = User(username=username, pwhash=pwhash, phonenum=phonenum, deviceid=deviceid) user.save() device = Device(deviceid=deviceid, username=username, pendingrequest=False, requestgranted=False, imagebytes='') device.save() return "User and Device added"
def setUp(self): """Define the test client and other test variables.""" self.color = "Black" self.capacity = 32 self.os_version = "iOS 6" self.device_model = self.create_device_model() self.device = Device(color=self.color, capacity=self.capacity, os_version=self.os_version, device_model=self.device_model)
def setUp(self): """Prepare the dummy user account.""" username = "******" password = "******" self.__client = APIClient() self.__user = User.objects.create_user(username, '*****@*****.**', password) self.__basic_digest = "Basic " + base64.b64encode("{}:{}".format( username, password).encode('ascii')).decode('ascii') self.__device = Device(name="dummydevice", dreempy_version="1.2.3") self.__device.save()
def __process_record(cls, path): """Read, extract and store a single Dreem records data.""" try: record = h5py.File(path, 'r') except OSError: # The file is still copying. It will be considered again on next poll. return # These two attributes are stored as ASCII strings. username = str(record.attrs["user"], "utf-8") devicename = str(record.attrs["device"], "utf-8") # Retrieving the user try: user = User.objects.get(username=username) except ObjectDoesNotExist: print("Unknown user, skipping the record…") path.unlink() return # Retrieving the device try: device = Device.objects.get(name=devicename) except Device.DoesNotExist: # Temporary: we create the device print("Unknown device, inserting…") device = Device(name=devicename, dreempy_version=record.attrs["dreempy_version"]) device.save() record = Record( start_time=datetime.fromtimestamp(int(record.attrs["start_time"]), timezone(timedelta(hours=1))), stop_time=datetime.fromtimestamp(int(record.attrs["stop_time"]), timezone(timedelta(hours=1))), sleep_start_time=datetime.fromtimestamp( int(record.attrs["sleep_start_time"]), timezone(timedelta(hours=1))), sleep_stop_time=datetime.fromtimestamp( int(record.attrs["sleep_stop_time"]), timezone(timedelta(hours=1))), sleep_score=record.attrs["sleep_score"], number_of_stimulations=int(record.attrs["number_of_stimulations"]), number_of_wake=int(record.attrs["number_of_wake"]), hypnogram=JSONRenderer().render( record["reporting"]["dreemnogram"][()]), user=user, device=device) record.save() path.unlink()
def handle(self, *args, **options): try: contest = Contest.objects.all() contest.delete() contest_2014 = Contest() contest_2014.year = 2014 contest_2014.theme = 'Ritim' contest_2014.poster = 'http://beste.halici.com.tr/afis/2014.jpg' contest_2014.start_date = datetime.datetime(2014, 6, 1, 0, 0) contest_2014.final_date = datetime.datetime(2014, 11, 1, 0, 0) contest_2014.finish_date = datetime.datetime(2014, 12, 15, 0, 0) contest_2014.save() contest_2015 = Contest() contest_2015.year = 2015 contest_2014.theme = 'Attila Özdemiroğlu' contest_2014.poster = 'http://beste.halici.com.tr/afis/2015.jpg' contest_2015.start_date = datetime.datetime(2015, 6, 1, 0, 0) contest_2015.final_date = datetime.datetime(2015, 11, 1, 0, 0) contest_2015.finish_date = datetime.datetime(2015, 12, 15, 0, 0) contest_2015.save() devices = Device.objects.all() devices.delete() device = Device() device.name = 'Bilgisayar' device.save() softwares = Software.objects.all() softwares.delete() software = Software() software.name = 'FL Studio' software.save() stage_materials = StageMaterial.objects.all() stage_materials.delete() stage_material = StageMaterial() stage_material.name = 'Gitar' stage_material.save() contents = Content.objects.all() contents.delete() content_file = open('default_contents/api_content.csv', 'rb') reader = csv.reader(content_file) for row in reader: content = Content() content.create_date = row[1] content.title = row[2] content.link = row[3] content.content = row[4] content.category_name = row[5] content.is_active = True if row[7] == '1' else False content.is_for_static_content = True if row[8] == '1' else False content.save() content_vote = Content() content_vote.title = 'Oylama' content_vote.link = 'oylama' content_vote.category_name = 'link' content_vote.is_active = True content_vote.is_for_static_content = False content_vote.save() users = User.objects.all() users.delete() user = User() user.username = '******' user.email = '*****@*****.**' user.first_name = 'Abdullah' user.last_name = 'Karacabey' user.set_password('674311') user.addres = 'Bağlum' user.city = 'Ankara' user.save() compositions = Composition.objects.all() compositions.delete() composition_1 = Composition() composition_1.owner = user composition_1.contest = contest_2014 composition_1.name = 'İlk Şarkı' composition_1.url = 'https://s3-eu-west-1.amazonaws.com/gong-ir/temp_attachments/beste/1441108257899wjzK3Htv' composition_1.save() composition_1.softwares = [software] composition_1.devices = [device] composition_1.stage_materials = [stage_material] composition_2 = Composition(owner=user, contest=contest_2014) composition_2.name = 'İkinci Şarkı' composition_2.url = 'https://s3-eu-west-1.amazonaws.com/gong-ir/temp_attachments/beste/1441108257899wjzK3Htv' composition_2.save() composition_2.softwares = [software] composition_2.devices = [device] composition_2.stage_materials = [stage_material] composition_3 = Composition(owner=user, contest=contest_2015) composition_3.name = 'Üçüncü Şarkı' composition_3.url = 'https://s3-eu-west-1.amazonaws.com/gong-ir/temp_attachments/beste/1441108257899wjzK3Htv' composition_3.save() composition_3.softwares = [software] composition_3.devices = [device] composition_3.stage_materials = [stage_material] composition_4 = Composition(owner=user, contest=contest_2015) composition_4.name = 'Dördüncü Şarkı' composition_4.url = 'https://s3-eu-west-1.amazonaws.com/gong-ir/temp_attachments/beste/1441108257899wjzK3Htv' composition_4.save() composition_4.softwares = [software] composition_4.devices = [device] composition_4.stage_materials = [stage_material] composition_1.save() composition_2.save() composition_3.save() composition_4.save() print 'Default contents are created' except IOError: print 'File is not found'
def new_task(): post_json = request.get_json() # Kunde anlegen oder über ID selektieren customer = None cus_id = None if hasattr(post_json, "cusID"): cus_id = post_json["cusID"] else: customer = Customer( cus_title = post_json["gender"], cus_first_name = post_json["firstName"], cus_last_name = post_json["lastName"], cus_email = post_json["email"], cus_phone_no = post_json["prefixNumber"] + " " + post_json["phone"], cus_street = post_json["street"], cus_house_number = post_json["houseNumber"], cus_post_code = post_json["postCode"] ) db.session.add(customer) # pylint: disable=maybe-no-member db.session.commit() # pylint: disable=maybe-no-member cus_id = customer.cus_id # Gerät anlegen oder über ID selektieren device = None dev_id = None if hasattr(post_json, "devID"): dev_id = post_json["devID"] else: device = Device( dev_name = post_json["devName"], dev_model = post_json["devModel"], dev_category = post_json["categoryName"], dev_electronic_mechanical_type = post_json["electricalMechanical"], dev_mnf_name = post_json["manufacturerName"], ) db.session.add(device) # pylint: disable=maybe-no-member db.session.commit() # pylint: disable=maybe-no-member dev_id = device.dev_id new_task = Task( tsk_fault_description = post_json["faultDescription"], tsk_creation_date = datetime.now(), tsk_cus_id = cus_id, tsk_dev_id = dev_id, tsk_state = "new", tsk_next_step = "not_set", ) db.session.add(new_task) # pylint: disable=maybe-no-member db.session.commit() # pylint: disable=maybe-no-member tk = generate_token("customer", new_task.tsk_id) # QR-Code generieren image_file = generate_qrcode_label("customer", new_task.tsk_id, tk) # Files anlegen files = post_json["files"] for filename in files: new_file = Image(img_filename=filename, img_tsk_id=new_task.tsk_id) db.session.add(new_file) # pylint: disable=maybe-no-member db.session.commit() # pylint: disable=maybe-no-member # Token als neuer Token in der Session speichern. session['NEW_TOKEN'] = tk return {'tsk_id':new_task.tsk_id, 'tsk_token': tk}