class Migration(migrations.Migration): initial = True dependencies = [] operations = [ migrations.CreateModel( name='BooleanProductVote', fields=[ ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), ('votes', models.IntegerField(default=0)), ('attribute', models.CharField( max_length=100, validators=[ networkapi.buyersguide.validators.ValueListValidator( valid_values=['confidence']) ])), ], options={ 'abstract': False, }, ), migrations.CreateModel( name='BuyersGuideProductCategory', fields=[ ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), ('name', models.CharField(max_length=100)), ('description', models.TextField( blank=True, help_text= 'Description of the product category. Max. 300 characters.', max_length=300)), ('featured', models.BooleanField( default=False, help_text= "Featured category will appear first on Buyer's Guide site nav" )), ('hidden', models.BooleanField( default=False, help_text= "Hidden categories will not appear in the Buyer's Guide site nav at all" )), ('slug', models.SlugField( blank=True, help_text= 'A URL-friendly version of the product name. This is an auto-generated field.' )), ], options={ 'verbose_name': 'Buyers Guide Product Category', 'verbose_name_plural': 'Buyers Guide Product Categories', }, ), migrations.CreateModel( name='Product', fields=[ ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), ('draft', models.BooleanField( default=True, help_text= 'When checked, this product will only show for CMS-authenticated users' )), ('adult_content', models.BooleanField( default=False, help_text= 'When checked, product thumbnail will appear blurred as well as have an 18+ badge on it' )), ('review_date', models.DateField(help_text='Review date of this product')), ('name', models.CharField(blank=True, help_text='Name of Product', max_length=100)), ('slug', models.CharField(blank=True, default=None, editable=False, help_text='slug used in urls', max_length=256)), ('company', models.CharField(blank=True, help_text='Name of Company', max_length=100)), ('blurb', models.TextField(blank=True, help_text='Description of the product', max_length=5000)), ('url', models.URLField(blank=True, help_text='Link to this product page', max_length=2048)), ('price', models.CharField(blank=True, help_text='Price', max_length=100)), ('image', models.FileField(blank=True, help_text='Image representing this product', max_length=2048, upload_to=networkapi.buyersguide.pagemodels. get_product_image_upload_path. get_product_image_upload_path)), ('cloudinary_image', cloudinary.models.CloudinaryField( blank=True, help_text= 'Image representing this product - hosted on Cloudinary', max_length=255, verbose_name='image')), ('meets_minimum_security_standards', models.BooleanField( help_text= 'Does this product meet minimum security standards?', null=True)), ('uses_encryption', networkapi.buyersguide.fields.ExtendedYesNoField( help_text='Does the product use encryption?')), ('uses_encryption_helptext', models.TextField(blank=True, max_length=5000)), ('security_updates', networkapi.buyersguide.fields.ExtendedYesNoField( help_text='Security updates?')), ('security_updates_helptext', models.TextField(blank=True, max_length=5000)), ('strong_password', networkapi.buyersguide.fields.ExtendedYesNoField()), ('strong_password_helptext', models.TextField(blank=True, max_length=5000)), ('manage_vulnerabilities', networkapi.buyersguide.fields.ExtendedYesNoField( help_text='Manages security vulnerabilities?')), ('manage_vulnerabilities_helptext', models.TextField(blank=True, max_length=5000)), ('privacy_policy', networkapi.buyersguide.fields.ExtendedYesNoField( help_text='Does this product have a privacy policy?')), ('privacy_policy_helptext', models.TextField(blank=True, max_length=5000)), ('share_data', models.BooleanField( help_text= 'Does the maker share data with other companies?', null=True)), ('share_data_helptext', models.TextField(blank=True, max_length=5000)), ('how_does_it_share', models.CharField( blank=True, help_text='How does this product handle data?', max_length=5000)), ('user_friendly_privacy_policy', networkapi.buyersguide.fields.ExtendedYesNoField( help_text= 'Does this product have a user-friendly privacy policy?') ), ('user_friendly_privacy_policy_helptext', models.TextField(blank=True, max_length=5000)), ('worst_case', models.CharField( blank=True, help_text= "What's the worst thing that could happen by using this product?", max_length=5000)), ('phone_number', models.CharField(blank=True, help_text='Phone Number', max_length=100)), ('live_chat', models.CharField(blank=True, help_text='Live Chat', max_length=100)), ('email', models.CharField(blank=True, help_text='Email', max_length=100)), ('twitter', models.CharField(blank=True, help_text='Twitter username', max_length=100)), ('product_category', models.ManyToManyField( blank=True, related_name='pniproduct', to='buyersguide.BuyersGuideProductCategory')), ('related_products', models.ManyToManyField(blank=True, related_name='related_pniproduct', to='buyersguide.Product')), ], options={ 'ordering': ['id'], }, ), migrations.CreateModel( name='RangeProductVote', fields=[ ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), ('votes', models.IntegerField(default=0)), ('attribute', models.CharField( max_length=100, validators=[ networkapi.buyersguide.validators.ValueListValidator( valid_values=['creepiness']) ])), ('average', models.IntegerField(validators=[ django.core.validators.MinValueValidator(1), django.core.validators.MaxValueValidator(100) ])), ('product', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, related_name='range_product_votes', to='buyersguide.Product')), ], options={ 'abstract': False, }, ), migrations.CreateModel( name='Update', fields=[ ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), ('source', models.URLField(help_text='Link to source', max_length=2048)), ('title', models.CharField(max_length=256)), ('author', models.CharField(blank=True, max_length=256)), ('featured', models.BooleanField( default=False, help_text='feature this update at the top of the list?')), ('snippet', models.TextField(blank=True, max_length=5000)), ], ), migrations.CreateModel( name='GeneralProduct', fields=[ ('product_ptr', models.OneToOneField( auto_created=True, on_delete=django.db.models.deletion.CASCADE, parent_link=True, primary_key=True, serialize=False, to='buyersguide.Product')), ('camera_device', networkapi.buyersguide.fields.ExtendedYesNoField( help_text='Does this device have or access a camera?')), ('camera_app', networkapi.buyersguide.fields.ExtendedYesNoField( help_text='Does the app have or access a camera?')), ('microphone_device', networkapi.buyersguide.fields.ExtendedYesNoField( help_text='Does this Device have or access a microphone?') ), ('microphone_app', networkapi.buyersguide.fields.ExtendedYesNoField( help_text='Does this app have or access a microphone?')), ('location_device', networkapi.buyersguide.fields.ExtendedYesNoField( help_text='Does this product access your location?')), ('location_app', networkapi.buyersguide.fields.ExtendedYesNoField( help_text='Does this app access your location?')), ('delete_data', models.BooleanField( help_text='Can you request data be deleted?', null=True)), ('delete_data_helptext', models.TextField(blank=True, max_length=5000)), ('parental_controls', networkapi.buyersguide.fields.ExtendedYesNoField( help_text='Are there rules for children?', null=True)), ('child_rules_helptext', models.TextField(blank=True, max_length=5000)), ('collects_biometrics', networkapi.buyersguide.fields.ExtendedYesNoField( help_text='Does this product collect biometric data?')), ('collects_biometrics_helptext', models.TextField(blank=True, max_length=5000)), ], options={ 'abstract': False, }, bases=('buyersguide.product', ), ), migrations.CreateModel( name='SoftwareProduct', fields=[ ('product_ptr', models.OneToOneField( auto_created=True, on_delete=django.db.models.deletion.CASCADE, parent_link=True, primary_key=True, serialize=False, to='buyersguide.Product')), ('handles_recordings_how', models.TextField( blank=True, help_text='How does this software handle your recordings', max_length=5000)), ('recording_alert', networkapi.buyersguide.fields.ExtendedYesNoField( help_text='Alerts when calls are being recorded?', null=True)), ('recording_alert_helptext', models.TextField(blank=True, max_length=5000)), ('signup_with_email', models.BooleanField(help_text='Email required to sign up?', null=True)), ('signup_with_phone', models.BooleanField( help_text='Phone number required to sign up?', null=True)), ('signup_with_third_party', models.BooleanField( help_text='Third Party account required to sign up?', null=True)), ('signup_methods_helptext', models.TextField( blank=True, help_text= 'Describe the kind of contact information requirements for signing up for this product', max_length=5000)), ('medical_privacy_compliant', models.BooleanField( help_text='Compliant with US medical privacy laws?', null=True)), ('medical_privacy_compliant_helptext', models.TextField(blank=True, max_length=5000)), ('host_controls', models.TextField(blank=True, max_length=5000)), ('easy_to_learn_and_use', models.BooleanField( help_text='Is it easy to learn & use the features?', null=True)), ('easy_to_learn_and_use_helptext', models.TextField(blank=True, max_length=5000)), ], options={ 'abstract': False, }, bases=('buyersguide.product', ), ), migrations.CreateModel( name='RangeVoteBreakdown', fields=[ ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), ('count', models.IntegerField(default=0)), ('bucket', models.IntegerField(validators=[ networkapi.buyersguide.validators.ValueListValidator( valid_values=[0, 1, 2, 3, 4]) ])), ('product_vote', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='buyersguide.RangeProductVote')), ], options={ 'abstract': False, }, ), migrations.CreateModel( name='RangeVote', fields=[ ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), ('created_at', models.DateTimeField(auto_now_add=True)), ('attribute', models.CharField( max_length=100, validators=[ networkapi.buyersguide.validators.ValueListValidator( valid_values=['creepiness']) ])), ('value', models.IntegerField(validators=[ django.core.validators.MinValueValidator(1), django.core.validators.MaxValueValidator(100) ])), ('product', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='buyersguide.Product')), ], options={ 'abstract': False, }, ), migrations.CreateModel( name='ProductPrivacyPolicyLink', fields=[ ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), ('sort_order', models.IntegerField(blank=True, editable=False, null=True)), ('label', models.CharField( help_text='Label for this link on the product page', max_length=500)), ('url', models.URLField(blank=True, help_text='Privacy policy URL', max_length=2048)), ('product', modelcluster.fields.ParentalKey( on_delete=django.db.models.deletion.CASCADE, related_name='privacy_policy_links', to='buyersguide.Product')), ], options={ 'verbose_name': 'Buyers Guide Product Privacy Policy link', 'verbose_name_plural': 'Buyers Guide Product Privacy Policy links', }, ), migrations.AddField( model_name='product', name='updates', field=models.ManyToManyField(blank=True, related_name='pniproduct', to='buyersguide.Update'), ), migrations.CreateModel( name='BooleanVoteBreakdown', fields=[ ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), ('count', models.IntegerField(default=0)), ('bucket', models.IntegerField(validators=[ networkapi.buyersguide.validators.ValueListValidator( valid_values=[0, 1]) ])), ('product_vote', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='buyersguide.BooleanProductVote')), ], options={ 'abstract': False, }, ), migrations.CreateModel( name='BooleanVote', fields=[ ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), ('created_at', models.DateTimeField(auto_now_add=True)), ('attribute', models.CharField( max_length=100, validators=[ networkapi.buyersguide.validators.ValueListValidator( valid_values=['confidence']) ])), ('value', models.BooleanField()), ('product', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='buyersguide.Product')), ], options={ 'abstract': False, }, ), migrations.AddField( model_name='booleanproductvote', name='product', field=models.ForeignKey( on_delete=django.db.models.deletion.CASCADE, related_name='boolean_product_votes', to='buyersguide.Product'), ), migrations.RunPython(create_default_categories), ]
class Migration(migrations.Migration): dependencies = [ ('buyersguide', '0034_auto_20200113_1514'), ] operations = [ migrations.CreateModel( name='BaseProduct', fields=[ ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), ('draft', models.BooleanField( default=True, help_text= 'When checked, this product will only show for CMS-authenticated users' )), ('adult_content', models.BooleanField( default=False, help_text= 'When checked, product thumbnail will appear blurred as well as have an 18+ badge on it' )), ('review_date', models.DateField(help_text='Review date of this product')), ('name', models.CharField(blank=True, help_text='Name of Product', max_length=100)), ('slug', models.CharField(blank=True, default=None, editable=False, help_text='slug used in urls', max_length=256)), ('company', models.CharField(blank=True, help_text='Name of Company', max_length=100)), ('blurb', models.TextField(blank=True, help_text='Description of the product', max_length=5000)), ('url', models.URLField(blank=True, help_text='Link to this product page', max_length=2048)), ('price', models.CharField(blank=True, help_text='Price', max_length=100)), ('image', models.FileField(blank=True, help_text='Image representing this product', max_length=2048, upload_to=networkapi.buyersguide.pagemodels. get_product_image_upload_path. get_product_image_upload_path)), ('cloudinary_image', cloudinary.models.CloudinaryField( blank=True, help_text= 'Image representing this product - hosted on Cloudinary', max_length=255, verbose_name='image')), ('meets_minimum_security_standards', models.BooleanField( help_text= 'Does this product meet minimum security standards?', null=True)), ('uses_encryption', networkapi.buyersguide.fields.ExtendedYesNoField( help_text='Does the product use encryption?')), ('uses_encryption_helptext', models.TextField(blank=True, max_length=5000)), ('security_updates', networkapi.buyersguide.fields.ExtendedYesNoField( help_text='Security updates?')), ('security_updates_helptext', models.TextField(blank=True, max_length=5000)), ('strong_password', networkapi.buyersguide.fields.ExtendedYesNoField()), ('strong_password_helptext', models.TextField(blank=True, max_length=5000)), ('manage_vulnerabilities', networkapi.buyersguide.fields.ExtendedYesNoField( help_text='Manages security vulnerabilities?')), ('manage_vulnerabilities_helptext', models.TextField(blank=True, max_length=5000)), ('privacy_policy', networkapi.buyersguide.fields.ExtendedYesNoField( help_text='Does this product have a privacy policy?')), ('privacy_policy_helptext', models.TextField(blank=True, max_length=5000)), ('share_data', models.BooleanField( help_text= 'Does the maker share data with other companies?', null=True)), ('share_data_helptext', models.TextField(blank=True, max_length=5000)), ('how_does_it_share', models.CharField( blank=True, help_text='How does this product handle data?', max_length=5000)), ('user_friendly_privacy_policy', networkapi.buyersguide.fields.ExtendedYesNoField( help_text= 'Does this product have a user-friendly privacy policy?') ), ('user_friendly_privacy_policy_helptext', models.TextField(blank=True, max_length=5000)), ('worst_case', models.CharField( blank=True, help_text= "What's the worst thing that could happen by using this product?", max_length=5000)), ('phone_number', models.CharField(blank=True, help_text='Phone Number', max_length=100)), ('live_chat', models.CharField(blank=True, help_text='Live Chat', max_length=100)), ('email', models.CharField(blank=True, help_text='Email', max_length=100)), ('twitter', models.CharField(blank=True, help_text='Twitter username', max_length=100)), ('product_category', models.ManyToManyField( blank=True, related_name='pniproduct', to='buyersguide.BuyersGuideProductCategory')), ('related_products', models.ManyToManyField(blank=True, related_name='related_pniproduct', to='buyersguide.BaseProduct')), ('updates', models.ManyToManyField(blank=True, related_name='pniproduct', to='buyersguide.Update')), ], options={ 'abstract': False, }, ), migrations.CreateModel( name='BaseProductPrivacyPolicyLink', fields=[ ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), ('sort_order', models.IntegerField(blank=True, editable=False, null=True)), ('label', models.CharField( help_text='Label for this link on the product page', max_length=500)), ('url', models.URLField(blank=True, help_text='Privacy policy URL', max_length=2048)), ('product', modelcluster.fields.ParentalKey( on_delete=django.db.models.deletion.CASCADE, related_name='privacy_policy_links', to='buyersguide.BaseProduct')), ], options={ 'verbose_name': 'Buyers Guide Product Privacy Policy link', 'verbose_name_plural': 'Buyers Guide Product Privacy Policy links', }, ), migrations.CreateModel( name='GeneralProduct', fields=[ ('baseproduct_ptr', models.OneToOneField( auto_created=True, on_delete=django.db.models.deletion.CASCADE, parent_link=True, primary_key=True, serialize=False, to='buyersguide.BaseProduct')), ('camera_device', networkapi.buyersguide.fields.ExtendedYesNoField( help_text='Does this device have or access a camera?')), ('camera_app', networkapi.buyersguide.fields.ExtendedYesNoField( help_text='Does the app have or access a camera?')), ('microphone_device', networkapi.buyersguide.fields.ExtendedYesNoField( help_text='Does this Device have or access a microphone?') ), ('microphone_app', networkapi.buyersguide.fields.ExtendedYesNoField( help_text='Does this app have or access a microphone?')), ('location_device', networkapi.buyersguide.fields.ExtendedYesNoField( help_text='Does this product access your location?')), ('location_app', networkapi.buyersguide.fields.ExtendedYesNoField( help_text='Does this app access your location?')), ('delete_data', models.BooleanField( help_text='Can you request data be deleted?', null=True)), ('delete_data_helptext', models.TextField(blank=True, max_length=5000)), ('parental_controls', networkapi.buyersguide.fields.ExtendedYesNoField( help_text='Are there rules for children?', null=True)), ('child_rules_helptext', models.TextField(blank=True, max_length=5000)), ('collects_biometrics', networkapi.buyersguide.fields.ExtendedYesNoField( help_text='Does this product collect biometric data?')), ('collects_biometrics_helptext', models.TextField(blank=True, max_length=5000)), ], options={ 'abstract': False, }, bases=('buyersguide.baseproduct', ), ), migrations.CreateModel( name='SoftwareProduct', fields=[ ('baseproduct_ptr', models.OneToOneField( auto_created=True, on_delete=django.db.models.deletion.CASCADE, parent_link=True, primary_key=True, serialize=False, to='buyersguide.BaseProduct')), ], options={ 'abstract': False, }, bases=('buyersguide.baseproduct', ), ), ]
class Migration(migrations.Migration): initial = True dependencies = [ migrations.swappable_dependency(settings.AUTH_USER_MODEL), ('account', '0001_initial'), ] operations = [ migrations.CreateModel( name='Announcement', fields=[ ('announcement_id', models.AutoField(primary_key=True, serialize=False)), ('title', models.CharField(max_length=31)), ('body', models.TextField()), ('post_date', models.DateField(auto_now_add=True, null=True)), ], options={ 'db_table': 'at_announcements', }, ), migrations.CreateModel( name='Assignment', fields=[ ('assignment_id', models.AutoField(primary_key=True, serialize=False)), ('assignment_num', models.PositiveSmallIntegerField( default=1, validators=[django.core.validators.MinValueValidator(1) ])), ('title', models.CharField(max_length=31, null=True)), ('description', models.TextField(null=True)), ('start_date', models.DateField(null=True)), ('due_date', models.DateField(null=True)), ('worth', models.PositiveSmallIntegerField( choices=[(0, '0 %'), (10, '10 %'), (15, '15 %'), (20, '20 %'), (25, '25 %'), (30, '30 %'), (35, '35 %'), (40, '40 %'), (45, '45 %'), (50, '50 %'), (55, '55 %'), (60, '60 %'), (65, '65 %'), (70, '70 %'), (75, '75 %'), (80, '80 %'), (85, '85 %'), (90, '90 %'), (95, '95 %'), (100, '100 %')], default=0, validators=[ django.core.validators.MinValueValidator(0), django.core.validators.MaxValueValidator(100) ])), ], options={ 'db_table': 'at_assignments', }, ), migrations.CreateModel( name='AssignmentSubmission', fields=[ ('submission_id', models.AutoField(primary_key=True, serialize=False)), ('percent', models.FloatField(default=0)), ('earned_marks', models.FloatField(default=0)), ('total_marks', models.PositiveSmallIntegerField(default=0)), ('submission_date', models.DateTimeField(auto_now=True, null=True)), ('is_finished', models.BooleanField(default=False)), ('assignment', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='registrar.Assignment')), ('student', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='account.Student')), ], options={ 'db_table': 'at_assignment_submissions', }, ), migrations.CreateModel( name='Category', fields=[ ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), ('name', models.CharField(db_index=True, max_length=150)), ('slug', models.SlugField(max_length=150, unique=True)), ('created_at', models.DateTimeField(auto_now_add=True)), ('updated_at', models.DateTimeField(auto_now=True)), ('image', cloudinary.models.CloudinaryField(blank=True, max_length=255, null=True, verbose_name='image')), ], options={ 'verbose_name': 'category', 'verbose_name_plural': 'categories', 'ordering': ('name', ), }, ), migrations.CreateModel( name='Course', fields=[ ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), ('title', models.CharField(max_length=127)), ('sub_title', models.CharField(max_length=127)), ('description', models.TextField(null=True)), ('start_date', models.DateField(null=True)), ('finish_date', models.DateField(null=True)), ('is_official', models.BooleanField(default=False)), ('status', models.PositiveSmallIntegerField(default=0)), ('image', cloudinary.models.CloudinaryField(blank=True, max_length=255, null=True, verbose_name='image')), ('price', models.DecimalField(blank=True, decimal_places=2, default=0.0, max_digits=7)), ('discount_price', models.DecimalField(blank=True, decimal_places=2, default=0.0, max_digits=7)), ('category', models.ForeignKey(default='Leadership', on_delete=django.db.models.deletion.CASCADE, related_name='courses', to='registrar.Category')), ('students', models.ManyToManyField(to='account.Student')), ('teacher', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='account.Teacher')), ], options={ 'db_table': 'at_courses', }, ), migrations.CreateModel( name='CourseDiscussionPost', fields=[ ('post_id', models.AutoField(primary_key=True, serialize=False)), ('title', models.CharField(max_length=127)), ('text', models.TextField(blank=True, null=True)), ('date', models.DateTimeField(auto_now=True, null=True)), ('user', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to=settings.AUTH_USER_MODEL)), ], options={ 'db_table': 'at_course_discussion_posts', }, ), migrations.CreateModel( name='CourseDiscussionThread', fields=[ ('thread_id', models.AutoField(primary_key=True, serialize=False)), ('title', models.CharField(max_length=127)), ('text', models.TextField(blank=True, null=True)), ('date', models.DateTimeField(auto_now=True, null=True)), ('course', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='registrar.Course')), ('posts', models.ManyToManyField(to='registrar.CourseDiscussionPost')), ('user', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to=settings.AUTH_USER_MODEL)), ], options={ 'db_table': 'at_course_discussion_threads', }, ), migrations.CreateModel( name='CourseFinalMark', fields=[ ('credit_id', models.AutoField(primary_key=True, serialize=False)), ('percent', models.FloatField( default=0, validators=[ django.core.validators.MinValueValidator(0), django.core.validators.MaxValueValidator(100) ])), ('is_public', models.BooleanField(default=False)), ('course', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='registrar.Course')), ('student', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='account.Student')), ], options={ 'db_table': 'at_course_final_marks', }, ), migrations.CreateModel( name='CourseSetting', fields=[ ('settings_id', models.AutoField(primary_key=True, serialize=False)), ('final_exam_percent', models.FloatField( default=50, validators=[ django.core.validators.MinValueValidator(0), django.core.validators.MaxValueValidator(100) ])), ('course_percent', models.FloatField( default=50, validators=[ django.core.validators.MinValueValidator(0), django.core.validators.MaxValueValidator(100) ])), ('course', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='registrar.Course')), ], options={ 'db_table': 'at_course_settings', }, ), migrations.CreateModel( name='CourseSubmission', fields=[ ('review_id', models.AutoField(primary_key=True, serialize=False)), ('status', models.PositiveSmallIntegerField(default=2)), ('from_submitter', models.TextField(null=True)), ('from_reviewer', models.TextField(null=True)), ('review_date', models.DateField(auto_now=True, null=True)), ('submission_date', models.DateField(auto_now=True, null=True)), ('course', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='registrar.Course')), ], options={ 'db_table': 'at_course_submissions', }, ), migrations.CreateModel( name='EssayQuestion', fields=[ ('question_id', models.AutoField(primary_key=True, serialize=False)), ('question_num', models.PositiveSmallIntegerField( default=1, validators=[django.core.validators.MinValueValidator(1) ])), ('title', models.CharField(default='', max_length=31)), ('description', models.TextField(default='')), ('marks', models.PositiveSmallIntegerField( default=1, validators=[django.core.validators.MinValueValidator(1) ])), ('assignment', models.ForeignKey(null=True, on_delete=django.db.models.deletion.CASCADE, to='registrar.Assignment')), ], options={ 'db_table': 'at_essay_questions', }, ), migrations.CreateModel( name='EssaySubmission', fields=[ ('submission_id', models.AutoField(primary_key=True, serialize=False)), ('file', models.FileField(upload_to='uploads')), ('submission_date', models.DateTimeField(auto_now=True, null=True)), ('marks', models.FloatField( default=0, validators=[django.core.validators.MinValueValidator(0) ])), ('question', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='registrar.EssayQuestion')), ], options={ 'db_table': 'at_essay_submissions', }, ), migrations.CreateModel( name='Exam', fields=[ ('exam_id', models.AutoField(primary_key=True, serialize=False)), ('exam_num', models.PositiveSmallIntegerField( default=1, validators=[django.core.validators.MinValueValidator(1) ])), ('title', models.CharField(max_length=31, null=True)), ('description', models.TextField(null=True)), ('start_date', models.DateField(null=True)), ('due_date', models.DateField(null=True)), ('worth', models.PositiveSmallIntegerField( choices=[(0, '0 %'), (10, '10 %'), (15, '15 %'), (20, '20 %'), (25, '25 %'), (30, '30 %'), (35, '35 %'), (40, '40 %'), (45, '45 %'), (50, '50 %'), (55, '55 %'), (60, '60 %'), (65, '65 %'), (70, '70 %'), (75, '75 %'), (80, '80 %'), (85, '85 %'), (90, '90 %'), (95, '95 %'), (100, '100 %')], default=0, validators=[ django.core.validators.MinValueValidator(0), django.core.validators.MaxValueValidator(100) ])), ('is_final', models.BooleanField(default=False)), ('course', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, related_name='exams', to='registrar.Course')), ], options={ 'db_table': 'at_exams', }, ), migrations.CreateModel( name='ExamSubmission', fields=[ ('submission_id', models.AutoField(primary_key=True, serialize=False)), ('percent', models.FloatField(default=0)), ('earned_marks', models.FloatField(default=0)), ('total_marks', models.PositiveSmallIntegerField(default=0)), ('submission_date', models.DateField(auto_now=True, null=True)), ('is_finished', models.BooleanField(default=False)), ('exam', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='registrar.Exam')), ('student', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='account.Student')), ], options={ 'db_table': 'at_exam_submissions', }, ), migrations.CreateModel( name='FileUpload', fields=[ ('upload_id', models.AutoField(primary_key=True, serialize=False)), ('type', models.PositiveSmallIntegerField(default=0)), ('title', models.CharField(max_length=127, null=True)), ('description', models.TextField(null=True)), ('upload_date', models.DateField(auto_now=True, null=True)), ('file', cloudinary.models.CloudinaryField(max_length=255, null=True, verbose_name='fileupload')), ('user', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to=settings.AUTH_USER_MODEL)), ], options={ 'db_table': 'at_file_uploads', }, ), migrations.CreateModel( name='Lecture', fields=[ ('lecture_id', models.AutoField(primary_key=True, serialize=False)), ('lecture_num', models.PositiveSmallIntegerField( default=1, validators=[django.core.validators.MinValueValidator(1) ])), ('week_num', models.PositiveSmallIntegerField( default=1, validators=[django.core.validators.MinValueValidator(1) ])), ('title', models.CharField(default='', max_length=63, null=True)), ('description', models.TextField(default='', null=True)), ('youtube_url', models.URLField(blank=True, null=True)), ('vimeo_url', models.URLField(blank=True, null=True)), ('bliptv_url', models.URLField(blank=True, null=True)), ('preferred_service', models.CharField(choices=[('1', 'YouTube'), ('2', 'Vimeo')], default='1', max_length=1)), ('course', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, related_name='lectures', to='registrar.Course')), ('notes', models.ManyToManyField(to='registrar.FileUpload')), ], options={ 'db_table': 'at_lectures', }, ), migrations.CreateModel( name='Module', fields=[ ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), ('module_number', models.PositiveSmallIntegerField( default=1, validators=[django.core.validators.MinValueValidator(1) ])), ('module_title', models.CharField(max_length=80)), ('module_duration', models.CharField(max_length=191)), ('module_description', models.TextField()), ('course', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, related_name='modules', to='registrar.Course')), ], options={ 'db_table': 'at_modules', }, ), migrations.CreateModel( name='MultipleChoiceQuestion', fields=[ ('question_id', models.AutoField(primary_key=True, serialize=False)), ('question_num', models.PositiveSmallIntegerField( default=1, validators=[django.core.validators.MinValueValidator(1) ])), ('title', models.CharField(blank=True, default='', max_length=31)), ('description', models.TextField(default='')), ('a', models.CharField(max_length=255, null=True)), ('a_is_correct', models.BooleanField(default=False)), ('b', models.CharField(max_length=255, null=True)), ('b_is_correct', models.BooleanField(default=False)), ('c', models.CharField(blank=True, max_length=255, null=True)), ('c_is_correct', models.BooleanField(default=False)), ('d', models.CharField(blank=True, max_length=255, null=True)), ('d_is_correct', models.BooleanField(default=False)), ('e', models.CharField(blank=True, max_length=255, null=True)), ('e_is_correct', models.BooleanField(default=False)), ('f', models.CharField(blank=True, max_length=255, null=True)), ('f_is_correct', models.BooleanField(default=False)), ('marks', models.PositiveSmallIntegerField( default=1, validators=[django.core.validators.MinValueValidator(1) ])), ('assignment', models.ForeignKey(null=True, on_delete=django.db.models.deletion.CASCADE, to='registrar.Assignment')), ('exam', models.ForeignKey(null=True, on_delete=django.db.models.deletion.CASCADE, to='registrar.Exam')), ], options={ 'db_table': 'at_multiple_choice_questions', }, ), migrations.CreateModel( name='MultipleChoiceSubmission', fields=[ ('submission_id', models.AutoField(primary_key=True, serialize=False)), ('a', models.BooleanField(default=False)), ('b', models.BooleanField(default=False)), ('c', models.BooleanField(default=False)), ('d', models.BooleanField(default=False)), ('e', models.BooleanField(default=False)), ('f', models.BooleanField(default=False)), ('marks', models.FloatField( default=0, validators=[django.core.validators.MinValueValidator(0) ])), ('submission_date', models.DateTimeField(auto_now=True, null=True)), ('question', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='registrar.MultipleChoiceQuestion')), ('student', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='account.Student')), ], options={ 'db_table': 'at_multiple_choice_submissions', }, ), migrations.CreateModel( name='PeerReview', fields=[ ('review_id', models.AutoField(max_length=11, primary_key=True, serialize=False)), ('marks', models.PositiveSmallIntegerField( choices=[(0, '0 Star'), (1, '1 Star'), (2, '2 Stars'), (3, '3 Stars'), (4, '4 Stars'), (5, '5 Stars')], default=0, validators=[ django.core.validators.MinValueValidator(0), django.core.validators.MaxValueValidator(5) ])), ('text', models.TextField(blank=True, null=True)), ('date', models.DateTimeField(auto_now=True, null=True)), ('user', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to=settings.AUTH_USER_MODEL)), ], options={ 'db_table': 'at_peer_reviews', }, ), migrations.CreateModel( name='Policy', fields=[ ('policy_id', models.AutoField(primary_key=True, serialize=False)), ('file', cloudinary.models.CloudinaryField( max_length=255, null=True, verbose_name='policyfiles')), ('course', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='registrar.Course')), ], options={ 'db_table': 'at_policys', }, ), migrations.CreateModel( name='Quick_Overview', fields=[ ('quickoverview_id', models.AutoField(primary_key=True, serialize=False)), ('description', models.TextField(default='', max_length=60, null=True)), ('course', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, related_name='quickoverview', to='registrar.Course')), ], options={ 'db_table': 'at_quickoverview', }, ), migrations.CreateModel( name='Quiz', fields=[ ('quiz_id', models.AutoField(primary_key=True, serialize=False)), ('quiz_num', models.PositiveSmallIntegerField( default=1, validators=[django.core.validators.MinValueValidator(0) ])), ('title', models.CharField(max_length=31, null=True)), ('description', models.TextField(null=True)), ('start_date', models.DateField(null=True)), ('due_date', models.DateField(null=True)), ('worth', models.PositiveSmallIntegerField( choices=[(0, '0 %'), (10, '10 %'), (15, '15 %'), (20, '20 %'), (25, '25 %'), (30, '30 %'), (35, '35 %'), (40, '40 %'), (45, '45 %'), (50, '50 %'), (55, '55 %'), (60, '60 %'), (65, '65 %'), (70, '70 %'), (75, '75 %'), (80, '80 %'), (85, '85 %'), (90, '90 %'), (95, '95 %'), (100, '100 %')], default=0, validators=[ django.core.validators.MinValueValidator(0), django.core.validators.MaxValueValidator(100) ])), ('course', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='registrar.Course')), ], options={ 'db_table': 'at_quizzes', }, ), migrations.CreateModel( name='QuizSubmission', fields=[ ('submission_id', models.AutoField(primary_key=True, serialize=False)), ('percent', models.FloatField(default=0)), ('earned_marks', models.FloatField(default=0)), ('total_marks', models.PositiveSmallIntegerField(default=0)), ('submission_date', models.DateField(auto_now=True, null=True)), ('is_finished', models.BooleanField(default=False)), ('quiz', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='registrar.Quiz')), ('student', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='account.Student')), ], options={ 'db_table': 'at_quiz_submissions', }, ), migrations.CreateModel( name='ResponseQuestion', fields=[ ('question_id', models.AutoField(primary_key=True, serialize=False)), ('question_num', models.PositiveSmallIntegerField( default=1, validators=[django.core.validators.MinValueValidator(1) ])), ('title', models.CharField(default='', max_length=31)), ('description', models.TextField(default='')), ('answer', models.TextField(default='')), ('marks', models.PositiveSmallIntegerField( default=1, validators=[django.core.validators.MinValueValidator(1) ])), ('assignment', models.ForeignKey(null=True, on_delete=django.db.models.deletion.CASCADE, to='registrar.Assignment')), ('exam', models.ForeignKey(null=True, on_delete=django.db.models.deletion.CASCADE, to='registrar.Exam')), ('quiz', models.ForeignKey(null=True, on_delete=django.db.models.deletion.CASCADE, to='registrar.Quiz')), ], options={ 'db_table': 'at_response_questions', }, ), migrations.CreateModel( name='ResponseSubmission', fields=[ ('submission_id', models.AutoField(primary_key=True, serialize=False)), ('answer', models.TextField(default='')), ('marks', models.FloatField( default=0, validators=[django.core.validators.MinValueValidator(0) ])), ('submission_date', models.DateTimeField(auto_now=True, null=True)), ('question', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='registrar.ResponseQuestion')), ('reviews', models.ManyToManyField(to='registrar.PeerReview')), ('student', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='account.Student')), ], options={ 'db_table': 'at_response_submissions', }, ), migrations.CreateModel( name='Syllabus', fields=[ ('syllabus_id', models.AutoField(primary_key=True, serialize=False)), ('file', cloudinary.models.CloudinaryField( max_length=255, null=True, verbose_name='syllabusfiles')), ('course', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='registrar.Course')), ], options={ 'db_table': 'at_syllabus', }, ), migrations.CreateModel( name='TrueFalseQuestion', fields=[ ('question_id', models.AutoField(primary_key=True, serialize=False)), ('question_num', models.PositiveSmallIntegerField( default=1, validators=[django.core.validators.MinValueValidator(1) ])), ('title', models.CharField(default='', max_length=31)), ('description', models.TextField(default='')), ('true_choice', models.CharField(max_length=127, null=True)), ('false_choice', models.CharField(max_length=127, null=True)), ('answer', models.BooleanField(default=False)), ('marks', models.PositiveSmallIntegerField( default=1, validators=[django.core.validators.MinValueValidator(1) ])), ('assignment', models.ForeignKey(null=True, on_delete=django.db.models.deletion.CASCADE, to='registrar.Assignment')), ('exam', models.ForeignKey(null=True, on_delete=django.db.models.deletion.CASCADE, to='registrar.Exam')), ('quiz', models.ForeignKey(null=True, on_delete=django.db.models.deletion.CASCADE, to='registrar.Quiz')), ], options={ 'db_table': 'at_true_false_questions', }, ), migrations.CreateModel( name='TrueFalseSubmission', fields=[ ('submission_id', models.AutoField(primary_key=True, serialize=False)), ('answer', models.BooleanField(default=False)), ('submission_date', models.DateTimeField(auto_now=True, null=True)), ('marks', models.FloatField( default=0, validators=[django.core.validators.MinValueValidator(0) ])), ('question', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='registrar.TrueFalseQuestion')), ('student', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='account.Student')), ], options={ 'db_table': 'at_true_false_submissions', }, ), migrations.CreateModel( name='Unit', fields=[ ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), ('unit_number', models.PositiveSmallIntegerField( default=1, validators=[django.core.validators.MinValueValidator(1) ])), ('unit_title', models.CharField(max_length=191)), ('unit_description', models.TextField()), ('module', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, related_name='units', to='registrar.Module')), ], options={ 'db_table': 'at_units', }, ), migrations.AddField( model_name='multiplechoicequestion', name='quiz', field=models.ForeignKey( null=True, on_delete=django.db.models.deletion.CASCADE, to='registrar.Quiz'), ), migrations.AddField( model_name='essaysubmission', name='reviews', field=models.ManyToManyField(to='registrar.PeerReview'), ), migrations.AddField( model_name='essaysubmission', name='student', field=models.ForeignKey( on_delete=django.db.models.deletion.CASCADE, to='account.Student'), ), migrations.AddField( model_name='essayquestion', name='exam', field=models.ForeignKey( null=True, on_delete=django.db.models.deletion.CASCADE, to='registrar.Exam'), ), migrations.AddField( model_name='essayquestion', name='quiz', field=models.ForeignKey( null=True, on_delete=django.db.models.deletion.CASCADE, to='registrar.Quiz'), ), migrations.AddField( model_name='assignment', name='course', field=models.ForeignKey( on_delete=django.db.models.deletion.CASCADE, to='registrar.Course'), ), migrations.AddField( model_name='announcement', name='course', field=models.ForeignKey( on_delete=django.db.models.deletion.CASCADE, to='registrar.Course'), ), ]
class Migration(migrations.Migration): initial = True dependencies = [ migrations.swappable_dependency(settings.AUTH_USER_MODEL), ('account', '__first__'), ] operations = [ migrations.CreateModel( name='Announcement', fields=[ ('announcement_id', models.AutoField(primary_key=True, serialize=False)), ('title', models.CharField(max_length=31)), ('body', models.TextField()), ('post_date', models.DateField(auto_now_add=True, null=True)), ], options={ 'db_table': 'at_announcements', }, ), migrations.CreateModel( name='Assignment', fields=[ ('assignment_id', models.AutoField(primary_key=True, serialize=False)), ('assignment_num', models.PositiveSmallIntegerField( default=1, validators=[django.core.validators.MinValueValidator(1) ])), ('title', models.CharField(max_length=31, null=True)), ('description', models.TextField(null=True)), ('start_date', models.DateField(null=True)), ('due_date', models.DateField(null=True)), ('worth', models.PositiveSmallIntegerField( choices=[(0, '0 %'), (10, '10 %'), (15, '15 %'), (20, '20 %'), (25, '25 %'), (30, '30 %'), (35, '35 %'), (40, '40 %'), (45, '45 %'), (50, '50 %'), (55, '55 %'), (60, '60 %'), (65, '65 %'), (70, '70 %'), (75, '75 %'), (80, '80 %'), (85, '85 %'), (90, '90 %'), (95, '95 %'), (100, '100 %')], default=0, validators=[ django.core.validators.MinValueValidator(0), django.core.validators.MaxValueValidator(100) ])), ], options={ 'db_table': 'at_assignments', }, ), migrations.CreateModel( name='AssignmentSubmission', fields=[ ('submission_id', models.AutoField(primary_key=True, serialize=False)), ('percent', models.FloatField(default=0)), ('earned_marks', models.FloatField(default=0)), ('total_marks', models.PositiveSmallIntegerField(default=0)), ('submission_date', models.DateTimeField(auto_now=True, null=True)), ('is_finished', models.BooleanField(default=False)), ('assignment', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='registrar.Assignment')), ('student', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='account.Student')), ], options={ 'db_table': 'at_assignment_submissions', }, ), migrations.CreateModel( name='Course', fields=[ ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), ('title', models.CharField(max_length=127)), ('sub_title', models.CharField(max_length=127)), ('category', models.CharField(choices=[ ('Aeronautics & Astronautics', 'Aeronautics & Astronautics'), ('Anesthesia', 'Anesthesia'), ('Anthropology', 'Anthropology'), ('Applied Physics', 'Applied Physics'), ('Art or Art History', 'Art & Art History'), ('Astrophysics', 'Astrophysics'), ('Biochemistry', 'Biochemistry'), ('Bioengineering', 'Bioengineering'), ('Biology', 'Biology'), ('Business', 'Business'), ('Cardiothoracic Surgery', 'Cardiothoracic Surgery'), ('Chemical and Systems Biology', 'Chemical and Systems Biology'), ('Chemical Engineering', 'Chemical Engineering'), ('Chemistry', 'Chemistry'), ('Civil and Environmental Engineering', 'Civil and Environmental Engineering'), ('Classics', 'Classics'), ('Communication', 'Communication'), ('Comparative Literature', 'Comparative Literature'), ('Comparative Medicine', 'Comparative Medicine'), ('Computer Science', 'Computer Science'), ('Dermatology', 'Dermatology'), ('Developmental Biology', 'Developmental Biology'), ('East Asian Languages and Cultures', 'East Asian Languages and Cultures'), ('Economics', 'Economics'), ('Education', 'Education'), ('Electrical Engineering', 'Electrical Engineering'), ('English', 'English'), ('French', 'French'), ('Genetics', 'Genetics'), ('General Eduction', 'General Education'), ('Geological and Environmental Sciences', 'Geological and Environmental Sciences'), ('Geophysics', 'Geophysics'), ('Health', 'Health'), ('History', 'History'), ('Latin American Cultures', 'Latin American Cultures'), ('Law School', 'Law School'), ('Linguistics', 'Linguistics'), ('Management', 'Management'), ('Materials Science', 'Materials Science'), ('Mathematics', 'Mathematics'), ('Mechanical Engineering', 'Mechanical Engineering'), ('Medicine', 'Medicine'), ('Microbiology and Immunology', 'Microbiology and Immunology'), ('Molecular and Cellular Physiology', 'Molecular and Cellular Physiology'), ('Music', 'Music'), ('Neurobiology', 'Neurobiology'), ('Neurology', 'Neurology'), ('Neurosurgery', 'Neurosurgery'), ('Obstetrics and Gynecology', 'Obstetrics and Gynecology'), ('Ophthalmology', 'Ophthalmology'), ('Orthopaedic Surgery', 'Orthopaedic Surgery'), ('Other', 'Other'), ('Otolaryngology', 'Otolaryngology'), ('Pathology', 'Pathology'), ('Pediatrics', 'Pediatrics'), ('Philosophy', 'Philosophy'), ('Physics', 'Physics'), ('Political Science', 'Political Science'), ('Psychiatry', 'Psychiatry'), ('Psychology', 'Psychology'), ('Radiation Oncology', 'Radiation Oncology'), ('Radiology', 'Radiology'), ('Religious Studies', 'Religious Studies'), ('Slavic Languages and Literature', 'Slavic Languages and Literature'), ('Sociology', 'Sociology'), ('Statistics', 'Statistics'), ('Surgery', 'Surgery'), ('Theater and Performance Studies', 'Theater and Performance Studies'), ('Urology', 'Urology') ], default='General Education', max_length=127)), ('description', models.TextField(null=True)), ('start_date', models.DateField(null=True)), ('finish_date', models.DateField(null=True)), ('is_official', models.BooleanField(default=False)), ('status', models.PositiveSmallIntegerField(default=0)), ('image', cloudinary.models.CloudinaryField(blank=True, max_length=255, null=True, verbose_name='image')), ('students', models.ManyToManyField(to='account.Student')), ('teacher', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='account.Teacher')), ], options={ 'db_table': 'at_courses', }, ), migrations.CreateModel( name='CourseDiscussionPost', fields=[ ('post_id', models.AutoField(primary_key=True, serialize=False)), ('title', models.CharField(max_length=127)), ('text', models.TextField(blank=True, null=True)), ('date', models.DateTimeField(auto_now=True, null=True)), ('user', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to=settings.AUTH_USER_MODEL)), ], options={ 'db_table': 'at_course_discussion_posts', }, ), migrations.CreateModel( name='CourseDiscussionThread', fields=[ ('thread_id', models.AutoField(primary_key=True, serialize=False)), ('title', models.CharField(max_length=127)), ('text', models.TextField(blank=True, null=True)), ('date', models.DateTimeField(auto_now=True, null=True)), ('course', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='registrar.Course')), ('posts', models.ManyToManyField(to='registrar.CourseDiscussionPost')), ('user', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to=settings.AUTH_USER_MODEL)), ], options={ 'db_table': 'at_course_discussion_threads', }, ), migrations.CreateModel( name='CourseFinalMark', fields=[ ('credit_id', models.AutoField(primary_key=True, serialize=False)), ('percent', models.FloatField( default=0, validators=[ django.core.validators.MinValueValidator(0), django.core.validators.MaxValueValidator(100) ])), ('is_public', models.BooleanField(default=False)), ('course', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='registrar.Course')), ('student', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='account.Student')), ], options={ 'db_table': 'at_course_final_marks', }, ), migrations.CreateModel( name='CourseSetting', fields=[ ('settings_id', models.AutoField(primary_key=True, serialize=False)), ('final_exam_percent', models.FloatField( default=50, validators=[ django.core.validators.MinValueValidator(0), django.core.validators.MaxValueValidator(100) ])), ('course_percent', models.FloatField( default=50, validators=[ django.core.validators.MinValueValidator(0), django.core.validators.MaxValueValidator(100) ])), ('course', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='registrar.Course')), ], options={ 'db_table': 'at_course_settings', }, ), migrations.CreateModel( name='CourseSubmission', fields=[ ('review_id', models.AutoField(primary_key=True, serialize=False)), ('status', models.PositiveSmallIntegerField(default=2)), ('from_submitter', models.TextField(null=True)), ('from_reviewer', models.TextField(null=True)), ('review_date', models.DateField(auto_now=True, null=True)), ('submission_date', models.DateField(auto_now=True, null=True)), ('course', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='registrar.Course')), ], options={ 'db_table': 'at_course_submissions', }, ), migrations.CreateModel( name='EssayQuestion', fields=[ ('question_id', models.AutoField(primary_key=True, serialize=False)), ('question_num', models.PositiveSmallIntegerField( default=1, validators=[django.core.validators.MinValueValidator(1) ])), ('title', models.CharField(default='', max_length=31)), ('description', models.TextField(default='')), ('marks', models.PositiveSmallIntegerField( default=1, validators=[django.core.validators.MinValueValidator(1) ])), ('assignment', models.ForeignKey(null=True, on_delete=django.db.models.deletion.CASCADE, to='registrar.Assignment')), ], options={ 'db_table': 'at_essay_questions', }, ), migrations.CreateModel( name='EssaySubmission', fields=[ ('submission_id', models.AutoField(primary_key=True, serialize=False)), ('file', models.FileField(upload_to='uploads')), ('submission_date', models.DateTimeField(auto_now=True, null=True)), ('marks', models.FloatField( default=0, validators=[django.core.validators.MinValueValidator(0) ])), ('question', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='registrar.EssayQuestion')), ], options={ 'db_table': 'at_essay_submissions', }, ), migrations.CreateModel( name='Exam', fields=[ ('exam_id', models.AutoField(primary_key=True, serialize=False)), ('exam_num', models.PositiveSmallIntegerField( default=1, validators=[django.core.validators.MinValueValidator(1) ])), ('title', models.CharField(max_length=31, null=True)), ('description', models.TextField(null=True)), ('start_date', models.DateField(null=True)), ('due_date', models.DateField(null=True)), ('worth', models.PositiveSmallIntegerField( choices=[(0, '0 %'), (10, '10 %'), (15, '15 %'), (20, '20 %'), (25, '25 %'), (30, '30 %'), (35, '35 %'), (40, '40 %'), (45, '45 %'), (50, '50 %'), (55, '55 %'), (60, '60 %'), (65, '65 %'), (70, '70 %'), (75, '75 %'), (80, '80 %'), (85, '85 %'), (90, '90 %'), (95, '95 %'), (100, '100 %')], default=0, validators=[ django.core.validators.MinValueValidator(0), django.core.validators.MaxValueValidator(100) ])), ('is_final', models.BooleanField(default=False)), ('course', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='registrar.Course')), ], options={ 'db_table': 'at_exams', }, ), migrations.CreateModel( name='ExamSubmission', fields=[ ('submission_id', models.AutoField(primary_key=True, serialize=False)), ('percent', models.FloatField(default=0)), ('earned_marks', models.FloatField(default=0)), ('total_marks', models.PositiveSmallIntegerField(default=0)), ('submission_date', models.DateField(auto_now=True, null=True)), ('is_finished', models.BooleanField(default=False)), ('exam', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='registrar.Exam')), ('student', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='account.Student')), ], options={ 'db_table': 'at_exam_submissions', }, ), migrations.CreateModel( name='FileUpload', fields=[ ('upload_id', models.AutoField(primary_key=True, serialize=False)), ('type', models.PositiveSmallIntegerField(default=0)), ('title', models.CharField(max_length=127, null=True)), ('description', models.TextField(null=True)), ('upload_date', models.DateField(auto_now=True, null=True)), ('file', cloudinary.models.CloudinaryField(max_length=255, null=True, verbose_name='fileupload')), ('user', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to=settings.AUTH_USER_MODEL)), ], options={ 'db_table': 'at_file_uploads', }, ), migrations.CreateModel( name='Lecture', fields=[ ('lecture_id', models.AutoField(primary_key=True, serialize=False)), ('lecture_num', models.PositiveSmallIntegerField( default=1, validators=[django.core.validators.MinValueValidator(1) ])), ('week_num', models.PositiveSmallIntegerField( default=1, validators=[django.core.validators.MinValueValidator(1) ])), ('title', models.CharField(default='', max_length=63, null=True)), ('description', models.TextField(default='', null=True)), ('youtube_url', models.URLField(blank=True, null=True)), ('vimeo_url', models.URLField(blank=True, null=True)), ('bliptv_url', models.URLField(blank=True, null=True)), ('preferred_service', models.CharField(choices=[('1', 'YouTube'), ('2', 'Vimeo')], default='1', max_length=1)), ('course', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='registrar.Course')), ('notes', models.ManyToManyField(to='registrar.FileUpload')), ], options={ 'db_table': 'at_lectures', }, ), migrations.CreateModel( name='MultipleChoiceQuestion', fields=[ ('question_id', models.AutoField(primary_key=True, serialize=False)), ('question_num', models.PositiveSmallIntegerField( default=1, validators=[django.core.validators.MinValueValidator(1) ])), ('title', models.CharField(blank=True, default='', max_length=31)), ('description', models.TextField(default='')), ('a', models.CharField(max_length=255, null=True)), ('a_is_correct', models.BooleanField(default=False)), ('b', models.CharField(max_length=255, null=True)), ('b_is_correct', models.BooleanField(default=False)), ('c', models.CharField(blank=True, max_length=255, null=True)), ('c_is_correct', models.BooleanField(default=False)), ('d', models.CharField(blank=True, max_length=255, null=True)), ('d_is_correct', models.BooleanField(default=False)), ('e', models.CharField(blank=True, max_length=255, null=True)), ('e_is_correct', models.BooleanField(default=False)), ('f', models.CharField(blank=True, max_length=255, null=True)), ('f_is_correct', models.BooleanField(default=False)), ('marks', models.PositiveSmallIntegerField( default=1, validators=[django.core.validators.MinValueValidator(1) ])), ('assignment', models.ForeignKey(null=True, on_delete=django.db.models.deletion.CASCADE, to='registrar.Assignment')), ('exam', models.ForeignKey(null=True, on_delete=django.db.models.deletion.CASCADE, to='registrar.Exam')), ], options={ 'db_table': 'at_multiple_choice_questions', }, ), migrations.CreateModel( name='MultipleChoiceSubmission', fields=[ ('submission_id', models.AutoField(primary_key=True, serialize=False)), ('a', models.BooleanField(default=False)), ('b', models.BooleanField(default=False)), ('c', models.BooleanField(default=False)), ('d', models.BooleanField(default=False)), ('e', models.BooleanField(default=False)), ('f', models.BooleanField(default=False)), ('marks', models.FloatField( default=0, validators=[django.core.validators.MinValueValidator(0) ])), ('submission_date', models.DateTimeField(auto_now=True, null=True)), ('question', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='registrar.MultipleChoiceQuestion')), ('student', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='account.Student')), ], options={ 'db_table': 'at_multiple_choice_submissions', }, ), migrations.CreateModel( name='PeerReview', fields=[ ('review_id', models.AutoField(max_length=11, primary_key=True, serialize=False)), ('marks', models.PositiveSmallIntegerField( choices=[(0, '0 Star'), (1, '1 Star'), (2, '2 Stars'), (3, '3 Stars'), (4, '4 Stars'), (5, '5 Stars')], default=0, validators=[ django.core.validators.MinValueValidator(0), django.core.validators.MaxValueValidator(5) ])), ('text', models.TextField(blank=True, null=True)), ('date', models.DateTimeField(auto_now=True, null=True)), ('user', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to=settings.AUTH_USER_MODEL)), ], options={ 'db_table': 'at_peer_reviews', }, ), migrations.CreateModel( name='Policy', fields=[ ('policy_id', models.AutoField(primary_key=True, serialize=False)), ('file', cloudinary.models.CloudinaryField( max_length=255, null=True, verbose_name='policyfiles')), ('course', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='registrar.Course')), ], options={ 'db_table': 'at_policys', }, ), migrations.CreateModel( name='Quiz', fields=[ ('quiz_id', models.AutoField(primary_key=True, serialize=False)), ('quiz_num', models.PositiveSmallIntegerField( default=1, validators=[django.core.validators.MinValueValidator(0) ])), ('title', models.CharField(max_length=31, null=True)), ('description', models.TextField(null=True)), ('start_date', models.DateField(null=True)), ('due_date', models.DateField(null=True)), ('worth', models.PositiveSmallIntegerField( choices=[(0, '0 %'), (10, '10 %'), (15, '15 %'), (20, '20 %'), (25, '25 %'), (30, '30 %'), (35, '35 %'), (40, '40 %'), (45, '45 %'), (50, '50 %'), (55, '55 %'), (60, '60 %'), (65, '65 %'), (70, '70 %'), (75, '75 %'), (80, '80 %'), (85, '85 %'), (90, '90 %'), (95, '95 %'), (100, '100 %')], default=0, validators=[ django.core.validators.MinValueValidator(0), django.core.validators.MaxValueValidator(100) ])), ('course', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='registrar.Course')), ], options={ 'db_table': 'at_quizzes', }, ), migrations.CreateModel( name='QuizSubmission', fields=[ ('submission_id', models.AutoField(primary_key=True, serialize=False)), ('percent', models.FloatField(default=0)), ('earned_marks', models.FloatField(default=0)), ('total_marks', models.PositiveSmallIntegerField(default=0)), ('submission_date', models.DateField(auto_now=True, null=True)), ('is_finished', models.BooleanField(default=False)), ('quiz', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='registrar.Quiz')), ('student', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='account.Student')), ], options={ 'db_table': 'at_quiz_submissions', }, ), migrations.CreateModel( name='ResponseQuestion', fields=[ ('question_id', models.AutoField(primary_key=True, serialize=False)), ('question_num', models.PositiveSmallIntegerField( default=1, validators=[django.core.validators.MinValueValidator(1) ])), ('title', models.CharField(default='', max_length=31)), ('description', models.TextField(default='')), ('answer', models.TextField(default='')), ('marks', models.PositiveSmallIntegerField( default=1, validators=[django.core.validators.MinValueValidator(1) ])), ('assignment', models.ForeignKey(null=True, on_delete=django.db.models.deletion.CASCADE, to='registrar.Assignment')), ('exam', models.ForeignKey(null=True, on_delete=django.db.models.deletion.CASCADE, to='registrar.Exam')), ('quiz', models.ForeignKey(null=True, on_delete=django.db.models.deletion.CASCADE, to='registrar.Quiz')), ], options={ 'db_table': 'at_response_questions', }, ), migrations.CreateModel( name='ResponseSubmission', fields=[ ('submission_id', models.AutoField(primary_key=True, serialize=False)), ('answer', models.TextField(default='')), ('marks', models.FloatField( default=0, validators=[django.core.validators.MinValueValidator(0) ])), ('submission_date', models.DateTimeField(auto_now=True, null=True)), ('question', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='registrar.ResponseQuestion')), ('reviews', models.ManyToManyField(to='registrar.PeerReview')), ('student', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='account.Student')), ], options={ 'db_table': 'at_response_submissions', }, ), migrations.CreateModel( name='Syllabus', fields=[ ('syllabus_id', models.AutoField(primary_key=True, serialize=False)), ('file', cloudinary.models.CloudinaryField( max_length=255, null=True, verbose_name='syllabusfiles')), ('course', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='registrar.Course')), ], options={ 'db_table': 'at_syllabus', }, ), migrations.CreateModel( name='TrueFalseQuestion', fields=[ ('question_id', models.AutoField(primary_key=True, serialize=False)), ('question_num', models.PositiveSmallIntegerField( default=1, validators=[django.core.validators.MinValueValidator(1) ])), ('title', models.CharField(default='', max_length=31)), ('description', models.TextField(default='')), ('true_choice', models.CharField(max_length=127, null=True)), ('false_choice', models.CharField(max_length=127, null=True)), ('answer', models.BooleanField(default=False)), ('marks', models.PositiveSmallIntegerField( default=1, validators=[django.core.validators.MinValueValidator(1) ])), ('assignment', models.ForeignKey(null=True, on_delete=django.db.models.deletion.CASCADE, to='registrar.Assignment')), ('exam', models.ForeignKey(null=True, on_delete=django.db.models.deletion.CASCADE, to='registrar.Exam')), ('quiz', models.ForeignKey(null=True, on_delete=django.db.models.deletion.CASCADE, to='registrar.Quiz')), ], options={ 'db_table': 'at_true_false_questions', }, ), migrations.CreateModel( name='TrueFalseSubmission', fields=[ ('submission_id', models.AutoField(primary_key=True, serialize=False)), ('answer', models.BooleanField(default=False)), ('submission_date', models.DateTimeField(auto_now=True, null=True)), ('marks', models.FloatField( default=0, validators=[django.core.validators.MinValueValidator(0) ])), ('question', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='registrar.TrueFalseQuestion')), ('student', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='account.Student')), ], options={ 'db_table': 'at_true_false_submissions', }, ), migrations.AddField( model_name='multiplechoicequestion', name='quiz', field=models.ForeignKey( null=True, on_delete=django.db.models.deletion.CASCADE, to='registrar.Quiz'), ), migrations.AddField( model_name='essaysubmission', name='reviews', field=models.ManyToManyField(to='registrar.PeerReview'), ), migrations.AddField( model_name='essaysubmission', name='student', field=models.ForeignKey( on_delete=django.db.models.deletion.CASCADE, to='account.Student'), ), migrations.AddField( model_name='essayquestion', name='exam', field=models.ForeignKey( null=True, on_delete=django.db.models.deletion.CASCADE, to='registrar.Exam'), ), migrations.AddField( model_name='essayquestion', name='quiz', field=models.ForeignKey( null=True, on_delete=django.db.models.deletion.CASCADE, to='registrar.Quiz'), ), migrations.AddField( model_name='assignment', name='course', field=models.ForeignKey( on_delete=django.db.models.deletion.CASCADE, to='registrar.Course'), ), migrations.AddField( model_name='announcement', name='course', field=models.ForeignKey( on_delete=django.db.models.deletion.CASCADE, to='registrar.Course'), ), ]
class Migration(migrations.Migration): initial = True dependencies = [ migrations.swappable_dependency(settings.AUTH_USER_MODEL), ] operations = [ migrations.CreateModel( name='Faq', fields=[ ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), ('created_at', models.DateField(auto_now_add=True, verbose_name='Date de création')), ('updated_at', models.DateField( auto_now=True, verbose_name='Date de la dernière modification')), ('question', models.CharField(max_length=200, verbose_name='Question')), ('response', models.TextField(verbose_name='Reponse')), ], options={ 'abstract': False, }, ), migrations.CreateModel( name='Galery', fields=[ ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), ('created_at', models.DateField(auto_now_add=True, verbose_name='Date de création')), ('updated_at', models.DateField( auto_now=True, verbose_name='Date de la dernière modification')), ('name', models.CharField(max_length=250, verbose_name="Nom de l'album")), ('slug', models.SlugField(blank=True)), ('description', models.TextField(blank=True, verbose_name='Description')), ('is_visible', models.BooleanField(default=True, verbose_name='Visible sur le site ?')), ('creator', models.ForeignKey(blank=True, on_delete=django.db.models.deletion.CASCADE, to=settings.AUTH_USER_MODEL)), ], options={ 'verbose_name': 'Album', 'verbose_name_plural': 'Albums', }, ), migrations.CreateModel( name='PostCategory', fields=[ ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), ('created_at', models.DateField(auto_now_add=True, verbose_name='Date de création')), ('updated_at', models.DateField( auto_now=True, verbose_name='Date de la dernière modification')), ('name', models.CharField(max_length=100, verbose_name='Nom')), ('slug', models.SlugField(blank=True)), ], options={ 'abstract': False, }, ), migrations.CreateModel( name='RevueInterface', fields=[ ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), ('created_at', models.DateField(auto_now_add=True, verbose_name='Date de création')), ('updated_at', models.DateField( auto_now=True, verbose_name='Date de la dernière modification')), ('subject', models.TextField(verbose_name='Sujet')), ('file', models.FileField(upload_to='', verbose_name='Joindre un fichier')), ], options={ 'verbose_name': 'Revue interface', 'verbose_name_plural': 'Revues interfaces', }, ), migrations.CreateModel( name='StrategicComity', fields=[ ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), ('created_at', models.DateField(auto_now_add=True, verbose_name='Date de création')), ('updated_at', models.DateField( auto_now=True, verbose_name='Date de la dernière modification')), ('object', models.CharField(max_length=100, verbose_name='Objet')), ('content', models.TextField(verbose_name='Message')), ('file', models.FileField(blank=True, upload_to='', verbose_name='Fichier joint')), ], options={ 'verbose_name': 'Communiqué Comité Stratégique', 'verbose_name_plural': 'Communiqué(s) Comité Stratégique', }, ), migrations.CreateModel( name='Post', fields=[ ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), ('created_at', models.DateField(auto_now_add=True, verbose_name='Date de création')), ('updated_at', models.DateField( auto_now=True, verbose_name='Date de la dernière modification')), ('title', models.CharField(max_length=255, verbose_name="Titre de l'article")), ('slug', models.SlugField(blank=True)), ('content', models.TextField(verbose_name="Contenu de l'article")), ('image', cloudinary.models.CloudinaryField( blank=True, max_length=255, verbose_name='Image de couverture')), ('is_visible', models.BooleanField(default=True, verbose_name='Visible sur le site ?')), ('category', models.ManyToManyField(blank=True, related_name='posts', to='com.PostCategory', verbose_name="Categories d'article")), ('creator', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to=settings.AUTH_USER_MODEL)), ], options={ 'verbose_name': 'Article de blog', 'verbose_name_plural': 'Articles de blog', }, ), migrations.CreateModel( name='News', fields=[ ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), ('created_at', models.DateField(auto_now_add=True, verbose_name='Date de création')), ('updated_at', models.DateField( auto_now=True, verbose_name='Date de la dernière modification')), ('title', models.CharField(max_length=255, verbose_name="Titre de l'actualité")), ('slug', models.SlugField(blank=True)), ('image', cloudinary.models.CloudinaryField( blank=True, max_length=255, verbose_name='Image de couverture')), ('content', models.TextField(verbose_name="Contenu de l'article")), ('is_visible', models.BooleanField(default=True, verbose_name='Visible sur le site ?')), ('category', models.ManyToManyField(blank=True, related_name='news', to='com.PostCategory')), ('creator', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to=settings.AUTH_USER_MODEL)), ], options={ 'verbose_name': 'Actualité', 'verbose_name_plural': 'Actualités', }, ), migrations.CreateModel( name='GaleryImage', fields=[ ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), ('created_at', models.DateField(auto_now_add=True, verbose_name='Date de création')), ('updated_at', models.DateField( auto_now=True, verbose_name='Date de la dernière modification')), ('image', cloudinary.models.CloudinaryField(max_length=255, verbose_name='image')), ('galery', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, related_name='images', to='com.Galery', verbose_name='Album')), ], options={ 'abstract': False, }, ), migrations.CreateModel( name='Event', fields=[ ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), ('created_at', models.DateField(auto_now_add=True, verbose_name='Date de création')), ('updated_at', models.DateField( auto_now=True, verbose_name='Date de la dernière modification')), ('title', models.CharField(max_length=100, verbose_name='Titre')), ('slug', models.SlugField(blank=True)), ('start_date', models.DateField(blank=True, verbose_name='Date de debut')), ('end_date', models.DateField(blank=True, verbose_name='Date de fin')), ('start_time', models.TimeField(blank=True, verbose_name='Heure de debut')), ('end_time', models.TimeField(blank=True, verbose_name='Heure de Fin')), ('description', models.TextField(blank=True, verbose_name='Description')), ('location', models.CharField(blank=True, max_length=50, verbose_name='Lieu')), ('location_city', models.CharField(default='Yaoundé', max_length=50, verbose_name='Ville')), ('expired', models.BooleanField(default=False, verbose_name='Expiré')), ('image', cloudinary.models.CloudinaryField( blank=True, max_length=255, null=True, verbose_name='Image de couverture')), ('published', models.BooleanField(default=True, verbose_name='Publier')), ('creator', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, related_name='events', to=settings.AUTH_USER_MODEL)), ('galery', models.ForeignKey(blank=True, on_delete=django.db.models.deletion.CASCADE, to='com.Galery', verbose_name='Joindre un album photos')), ('registration', models.ManyToManyField(blank=True, related_name='register_events', to=settings.AUTH_USER_MODEL, verbose_name='Inscris')), ], options={ 'verbose_name': 'Agenda', 'verbose_name_plural': 'Agendas', }, ), migrations.CreateModel( name='Document', fields=[ ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), ('created_at', models.DateField(auto_now_add=True, verbose_name='Date de création')), ('updated_at', models.DateField( auto_now=True, verbose_name='Date de la dernière modification')), ('title', models.CharField(blank=True, max_length=100, verbose_name='Nom du document')), ('file', models.FileField(upload_to='documents/', verbose_name='Fichier')), ('creator', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to=settings.AUTH_USER_MODEL, verbose_name='Propriétaire')), ], options={ 'abstract': False, }, ), ]
class Migration(migrations.Migration): initial = True dependencies = [] operations = [ migrations.CreateModel( name='About', fields=[ ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), ('created_at', models.DateField(auto_now_add=True, verbose_name='Date de création')), ('updated_at', models.DateField( auto_now=True, verbose_name='Date de la dernière modification')), ('content', models.TextField(verbose_name='Contenu de a propos')), ('language', models.CharField( choices=[('en', 'Anglaise'), ('fr', 'Française')], max_length=10, verbose_name='Version de langue du fichier')), ], options={ 'verbose_name': 'A propos', 'verbose_name_plural': 'A propos', }, ), migrations.CreateModel( name='ActionPlan', fields=[ ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), ('created_at', models.DateField(auto_now_add=True, verbose_name='Date de création')), ('updated_at', models.DateField( auto_now=True, verbose_name='Date de la dernière modification')), ('title', models.CharField( blank=True, help_text= 'Ce champs est facultatif, à defaut le nom du fichier sera utilisé commme Intitulé', max_length=200, verbose_name='Intitulé ou petite description')), ('file', models.FileField(upload_to='', verbose_name="Fichier du plan d'action")), ('file_name', models.CharField(blank=True, max_length=100)), ('language', models.CharField( choices=[('en', 'Anglaise'), ('fr', 'Française')], max_length=10, verbose_name='Version de langue du fichier')), ], options={ 'verbose_name': "Plan d'action", 'verbose_name_plural': "Plans d'actions", }, ), migrations.CreateModel( name='AdhesionCondition', fields=[ ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), ('created_at', models.DateField(auto_now_add=True, verbose_name='Date de création')), ('updated_at', models.DateField( auto_now=True, verbose_name='Date de la dernière modification')), ('content', models.TextField( help_text= 'Lister les conditions séparées par des virgules(,) exceptée la dernière !', verbose_name="Liste des conditions d'adhésion")), ('file', models.FileField(blank=True, upload_to='', verbose_name='Joindre un fichier')), ('language', models.CharField(choices=[('en', 'Anglaise'), ('fr', 'Française')], max_length=3, verbose_name='Version de langue')), ], options={ 'verbose_name': "Condition d'adhésion", 'verbose_name_plural': "Conditions d'adhésion", }, ), migrations.CreateModel( name='Coord', fields=[ ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), ('created_at', models.DateField(auto_now_add=True, verbose_name='Date de création')), ('updated_at', models.DateField( auto_now=True, verbose_name='Date de la dernière modification')), ('content', tinymce.models.HTMLField(verbose_name='Contenu')), ('language', models.CharField(choices=[('en', 'Anglaise'), ('fr', 'Française')], max_length=3, verbose_name='Version de langue')), ], options={ 'verbose_name': 'Coordonnée', 'verbose_name_plural': 'Coordonnées', }, ), migrations.CreateModel( name='Filiere', fields=[ ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), ('created_at', models.DateField(auto_now_add=True, verbose_name='Date de création')), ('updated_at', models.DateField( auto_now=True, verbose_name='Date de la dernière modification')), ('content', tinymce.models.HTMLField(verbose_name='Contenu')), ('language', models.CharField( choices=[('en', 'Anglaise'), ('fr', 'Française')], max_length=3, verbose_name='Version de langue du fichier')), ('file', models.FileField(blank=True, upload_to='', verbose_name='Fichier joint')), ('both_fr_en', models.BooleanField(verbose_name='Pour les deux langues ?')), ], options={ 'verbose_name': 'Filière et Formation', 'verbose_name_plural': 'Filières et Formations', }, ), migrations.CreateModel( name='Footer', fields=[ ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), ('created_at', models.DateField(auto_now_add=True, verbose_name='Date de création')), ('updated_at', models.DateField( auto_now=True, verbose_name='Date de la dernière modification')), ('text', models.TextField(verbose_name='Texte')), ], options={ 'verbose_name': 'Pied de page', 'verbose_name_plural': 'Pieds de page', }, ), migrations.CreateModel( name='GeneralAssembly', fields=[ ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), ('created_at', models.DateField(auto_now_add=True, verbose_name='Date de création')), ('updated_at', models.DateField( auto_now=True, verbose_name='Date de la dernière modification')), ('description', models.TextField(verbose_name='Description du contenu')), ('date', models.DateField(blank=True, verbose_name='Assemblée générale du')), ('version', models.CharField( blank=True, choices=[('en', 'Anglaise'), ('fr', 'Française')], max_length=3, verbose_name='Version de langue du fichier')), ('file', models.FileField(blank=True, upload_to='', verbose_name='Fichier joint')), ], options={ 'verbose_name': 'Assemblée Générale', 'verbose_name_plural': 'Assemblées Générales', }, ), migrations.CreateModel( name='InstitutionalPresentation', fields=[ ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), ('created_at', models.DateField(auto_now_add=True, verbose_name='Date de création')), ('updated_at', models.DateField( auto_now=True, verbose_name='Date de la dernière modification')), ('content', tinymce.models.HTMLField(verbose_name='Contenu')), ('language', models.CharField( choices=[('en', 'Anglaise'), ('fr', 'Française')], max_length=3, verbose_name='Version de langue du fichier')), ('file', models.FileField(blank=True, upload_to='', verbose_name='Fichier joint')), ('both_fr_en', models.BooleanField(verbose_name='Pour les deux langues ?')), ], options={ 'verbose_name': 'Présentation institutionelle', 'verbose_name_plural': 'Présentation institutionelles', }, ), migrations.CreateModel( name='InternalRegulation', fields=[ ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), ('created_at', models.DateField(auto_now_add=True, verbose_name='Date de création')), ('updated_at', models.DateField( auto_now=True, verbose_name='Date de la dernière modification')), ('content', tinymce.models.HTMLField(blank=True, verbose_name='Texte régit')), ('file', models.FileField(blank=True, upload_to='', verbose_name='Joindre le fichier')), ('language', models.CharField( choices=[('en', 'Anglaise'), ('fr', 'Française')], max_length=10, verbose_name='Version de langue du fichier')), ], options={ 'verbose_name': 'Règlement interieur', 'verbose_name_plural': 'Règlements interieurs', }, ), migrations.CreateModel( name='SocialNetwork', fields=[ ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), ('created_at', models.DateField(auto_now_add=True, verbose_name='Date de création')), ('updated_at', models.DateField( auto_now=True, verbose_name='Date de la dernière modification')), ('name', models.CharField(max_length=20, verbose_name='Nom du réseau social')), ('type', models.CharField(choices=[('facebook', 'Facebook'), ('twitter', 'Twitter'), ('telegram', 'Telegram'), ('linkedin', 'LinkedIn')], max_length=10, verbose_name='Type du réseau')), ('accessibility', models.CharField(choices=[('private', 'Membre seulement'), ('public', 'Public')], default='public', max_length=10, verbose_name='Visibilité')), ('link', models.URLField(verbose_name='Lien direct du réseau social')), ], options={ 'verbose_name': 'Réseau Social', 'verbose_name_plural': 'Résaux sociaux', }, ), migrations.CreateModel( name='Status', fields=[ ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), ('created_at', models.DateField(auto_now_add=True, verbose_name='Date de création')), ('updated_at', models.DateField( auto_now=True, verbose_name='Date de la dernière modification')), ('content', tinymce.models.HTMLField(blank=True, verbose_name='Texte régit')), ('file', models.FileField( blank=True, upload_to='', verbose_name='Joindre le fichier de statut')), ('language', models.CharField( choices=[('en', 'Anglaise'), ('fr', 'Française')], max_length=10, verbose_name='Version de langue du fichier')), ], options={ 'verbose_name': "Statut de l'association", 'verbose_name_plural': "Statuts de l'association", }, ), migrations.CreateModel( name='StrategicComity', fields=[ ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), ('created_at', models.DateField(auto_now_add=True, verbose_name='Date de création')), ('updated_at', models.DateField( auto_now=True, verbose_name='Date de la dernière modification')), ('full_name', models.CharField(max_length=150, verbose_name='Nom complet')), ('title', models.CharField(max_length=180, verbose_name="Titre à l'ADEN")), ('rule', models.CharField(max_length=150, verbose_name='Fonction ou Role')), ('location', models.CharField(max_length=150, verbose_name='Domicile')), ('promotion', models.CharField(max_length=80, verbose_name='Promotion')), ('photo', cloudinary.models.CloudinaryField(max_length=255, verbose_name='Photo')), ('grade', models.CharField(choices=[('1', 'Niveau 1'), ('2', 'Niveau 2'), ('3', 'Niveau 3')], max_length=2, verbose_name='Priorité')), ], options={ 'verbose_name': 'Comité Stratégique', 'verbose_name_plural': 'Comités Stratégiques', }, ), ]
class Migration(migrations.Migration): initial = True dependencies = [ migrations.swappable_dependency(settings.AUTH_USER_MODEL), ] operations = [ migrations.CreateModel( name='Course', fields=[ ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), ('name', models.CharField(max_length=200, unique=True)), ('description', models.TextField(blank=True, max_length=500)), ], ), migrations.CreateModel( name='Subject', fields=[ ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), ('name', models.CharField(max_length=200)), ('image', cloudinary.models.CloudinaryField(blank=True, max_length=255, null=True, verbose_name='image')), ('description', models.TextField(blank=True, max_length=500)), ('course', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, related_name='subjects', to='curriculum.course')), ], ), migrations.CreateModel( name='Lesson', fields=[ ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), ('lesson_id', models.CharField(max_length=100, unique=True)), ('created_at', models.DateTimeField(auto_now_add=True)), ('name', models.CharField(max_length=300)), ('position', models.PositiveSmallIntegerField(verbose_name='Chapter no.')), ('video', models.FileField( blank=True, null=True, upload_to=curriculum.models.save_lesson_files, verbose_name='Video')), ('ppt', models.FileField( blank=True, upload_to=curriculum.models.save_lesson_files, verbose_name='Presentation')), ('notes', models.FileField( blank=True, upload_to=curriculum.models.save_lesson_files, verbose_name='Notes')), ('course', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='curriculum.course')), ('created_by', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to=settings.AUTH_USER_MODEL)), ('subject', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, related_name='lessons', to='curriculum.subject')), ], options={ 'ordering': ['position'], }, ), migrations.CreateModel( name='CoursePayment', fields=[ ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), ('order_id', models.CharField(blank=True, max_length=40, null=True)), ('paid', models.BooleanField(default=False)), ('course', models.ForeignKey(blank=True, on_delete=django.db.models.deletion.CASCADE, to='curriculum.course')), ('user', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to=settings.AUTH_USER_MODEL)), ], ), migrations.CreateModel( name='Comment', fields=[ ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), ('content', models.TextField(max_length=500)), ('publish', models.DateTimeField(auto_now_add=True)), ('lft', models.PositiveIntegerField(editable=False)), ('rght', models.PositiveIntegerField(editable=False)), ('tree_id', models.PositiveIntegerField(db_index=True, editable=False)), ('level', models.PositiveIntegerField(editable=False)), ('author', models.ForeignKey(null=True, on_delete=django.db.models.deletion.CASCADE, to=settings.AUTH_USER_MODEL)), ('lesson', models.ForeignKey(null=True, on_delete=django.db.models.deletion.CASCADE, related_name='comments', to='curriculum.lesson')), ('parent', mptt.fields.TreeForeignKey( blank=True, null=True, on_delete=django.db.models.deletion.CASCADE, related_name='children', to='curriculum.comment')), ], options={ 'abstract': False, }, ), ]
class Migration(migrations.Migration): dependencies = [ ('core', '0005_pyale'), ] operations = [ migrations.CreateModel( name='Letting', fields=[ ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), ('letting_type', models.CharField(max_length=50)), ('letting_start_date', models.DateField()), ('letting_end_date', models.DateField()), ('deposit', models.CharField(max_length=512)), ('deposit_refunded', models.BooleanField(blank=True, null=True)), ('deposit_refund_date', models.DateTimeField(blank=True, null=True)), ('total_letting_cost', models.CharField( help_text='Total Cost for the letting period', max_length=512)), ('service_charge', models.CharField(max_length=100)), ('payment_schedule', models.CharField(choices=[('Annual', 'annual'), ('Quarterly', 'quarterly'), ('Monthly', 'monthly')], help_text='Monthly, Quarterly or Annually', max_length=100)), ], ), migrations.CreateModel( name='Payment', fields=[ ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), ('payment_reference', models.CharField(max_length=255)), ('payment_date', models.DateTimeField()), ], ), migrations.CreateModel( name='PaymentSchedule', fields=[ ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), ('amount_due', models.CharField( help_text= 'The amount to be paid per cycle e.g. the amount per month or per quarter', max_length=512)), ('payment_status', models.BooleanField()), ('payment_date', models.DateTimeField(blank=True, null=True)), ('payment_cycle', models.CharField(max_length=100)), ('letting', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='core.Letting')), ], ), migrations.CreateModel( name='Property', fields=[ ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), ('category', models.CharField(choices=[('Residential', 'residential'), ('Commercial', 'commercial')], max_length=255)), ('total_cost', models.CharField(max_length=512)), ('description', models.TextField()), ('specs', django.contrib.postgres.fields.ArrayField( base_field=models.CharField(max_length=512), size=None)), ('title', models.CharField(max_length=512, unique=True)), ], ), migrations.CreateModel( name='PropertyImage', fields=[ ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), ('image', cloudinary.models.CloudinaryField(max_length=255, verbose_name='image')), ('name', models.CharField(max_length=255, unique=True)), ('realty', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='core.Property')), ], ), migrations.CreateModel( name='Tenant', fields=[ ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), ('bio', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to=settings.AUTH_USER_MODEL)), ], ), migrations.CreateModel( name='TenantDocument', fields=[ ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), ('document', models.FileField(upload_to='')), ('date_created', models.DateTimeField(auto_now_add=True)), ('date_modified', models.DateTimeField(auto_now=True)), ('name', models.CharField(max_length=255, unique=True)), ('tenant', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='core.Tenant')), ], ), migrations.AddField( model_name='payment', name='tenant', field=models.ForeignKey( on_delete=django.db.models.deletion.CASCADE, to='core.Tenant'), ), migrations.AddField( model_name='letting', name='realty', field=models.ForeignKey( on_delete=django.db.models.deletion.CASCADE, to='core.Property'), ), migrations.AddField( model_name='letting', name='tenant', field=models.ForeignKey( on_delete=django.db.models.deletion.CASCADE, to='core.Tenant'), ), ]
class Migration(migrations.Migration): initial = True dependencies = [] operations = [ migrations.CreateModel( name='MyUser', fields=[ ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), ('password', models.CharField(max_length=128, verbose_name='password')), ('last_login', models.DateTimeField(blank=True, null=True, verbose_name='last login')), ('user_type', models.CharField(choices=[('Job Seeker', 'Job Seeker'), ('Company', 'Company')], default='Job Seeker', max_length=20, verbose_name='User Type')), ('avatar', cloudinary.models.CloudinaryField(blank=True, max_length=255, null=True, verbose_name='User Image')), ('email', models.EmailField(max_length=254, unique=True, verbose_name='Email Address')), ('first_name', models.CharField(blank=True, max_length=40, null=True, verbose_name='First Name')), ('last_name', models.CharField(blank=True, max_length=40, null=True, verbose_name='Last Name')), ('uuid', models.UUIDField(default=uuid.uuid4, editable=False)), ('accepting_terms', models.BooleanField(default=False, verbose_name='Terms & Condition')), ('is_superuser', models.BooleanField(default=False, verbose_name='Super User')), ('is_staff', models.BooleanField(default=False, verbose_name='Staff')), ('is_active', models.BooleanField(default=False, verbose_name='Status')), ('created_at', models.DateTimeField(auto_now_add=True, verbose_name='Created Date')), ('updated_at', models.DateTimeField(auto_now=True, verbose_name='Updated Date')), ], options={ 'verbose_name_plural': 'User', 'verbose_name': 'User', }, ), migrations.CreateModel( name='AbstractUser', fields=[ ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), ('avatar', cloudinary.models.CloudinaryField(blank=True, max_length=255, null=True, verbose_name='User Image')), ('email', models.EmailField(max_length=254, unique=True, verbose_name='Email Address')), ('contact_number', models.CharField(max_length=15, verbose_name='Contact Number')), ('created_at', models.DateTimeField(auto_now_add=True, verbose_name='Created Date')), ('updated_at', models.DateTimeField(auto_now=True, verbose_name='Updated Date')), ], ), migrations.CreateModel( name='AppliedJobs', fields=[ ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), ('reason', models.TextField()), ('resume', cloudinary.models.CloudinaryField(blank=True, max_length=255, null=True)), ('status', models.CharField(choices=[('Applied', 'Applied'), ('Completed', 'Completed')], default='Applied', max_length=20, verbose_name='Applied Job Status')), ('created_at', models.DateTimeField(auto_now_add=True, verbose_name='Created Date')), ('updated_at', models.DateTimeField(auto_now=True, verbose_name='Updated Date')), ], options={ 'verbose_name_plural': 'Applied Jobs', 'ordering': ('-updated_at', ), }, ), migrations.CreateModel( name='Area', fields=[ ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), ('name', models.CharField(default='', max_length=50, unique=True, verbose_name='Name')), ('is_active', models.BooleanField(default=True)), ('created_by', models.CharField(choices=[('AM', 'AM'), ('USER', 'USER')], default='AM', max_length=20, verbose_name='Created By')), ], options={ 'verbose_name_plural': 'Area', 'ordering': ('name', ), }, ), migrations.CreateModel( name='Career', fields=[ ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), ('email', models.EmailField(max_length=254, verbose_name='User Email')), ('first_name', models.CharField(blank=True, max_length=40, null=True, verbose_name='First Name')), ('last_name', models.CharField(blank=True, max_length=40, null=True, verbose_name='Last Name')), ('message', models.TextField(blank=True, null=True, verbose_name='Message')), ('mobile_number', models.CharField(blank=True, max_length=15, null=True, verbose_name='Mobile Number')), ('resume', models.FileField(blank=True, null=True, upload_to='')), ('profession', models.CharField(choices=[ ('One Time Project', 'One Time Project'), ('On going Project', 'On going Project'), ('To be decided', 'To be decided') ], default='One Time Project', max_length=50, verbose_name='Select Profession')), ], ), migrations.CreateModel( name='ContactUs', fields=[ ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), ('email', models.EmailField(max_length=254, verbose_name='User Email')), ('first_name', models.CharField(blank=True, max_length=40, null=True, verbose_name='First Name')), ('last_name', models.CharField(blank=True, max_length=40, null=True, verbose_name='Last Name')), ('message', models.TextField(blank=True, null=True, verbose_name='Message')), ('mobile_number', models.CharField(blank=True, max_length=15, null=True, verbose_name='Mobile Number')), ], ), migrations.CreateModel( name='Education', fields=[ ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), ('name', models.CharField(default='', max_length=50, unique=True, verbose_name='Name')), ('is_active', models.BooleanField(default=True)), ('created_by', models.CharField(choices=[('AM', 'AM'), ('USER', 'USER')], default='AM', max_length=20, verbose_name='Created By')), ], options={ 'verbose_name_plural': 'Education', 'ordering': ('name', ), }, ), migrations.CreateModel( name='EducationDetails', fields=[ ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), ('school', models.CharField(max_length=100, verbose_name='School Name')), ('degree', models.CharField(max_length=100, verbose_name='Degree Name')), ('field_of_study', models.CharField(max_length=100, verbose_name='Field of Study')), ('grade', models.CharField(max_length=100, verbose_name='Grade')), ('activities_socities', models.TextField(verbose_name='Activities and societies')), ('from_year', models.CharField(max_length=4, verbose_name='From Year')), ('to_year', models.CharField(max_length=4, verbose_name='To Year')), ('description', models.TextField(verbose_name='Description')), ], options={ 'verbose_name_plural': 'Education Details', }, ), migrations.CreateModel( name='Employment', fields=[ ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), ('title', models.CharField(max_length=100, verbose_name='Title')), ('company', models.CharField(max_length=100, verbose_name='Company')), ('location', models.CharField(max_length=100, verbose_name='location')), ('from_month', models.CharField(choices=[('1', 'January'), ('2', 'February'), ('3', 'March'), ('4', 'April'), ('5', 'May'), ('6', 'June'), ('7', 'July'), ('8', 'August'), ('9', 'September'), ('10', 'October'), ('11', 'November'), ('12', 'December')], max_length=15, verbose_name='From Month')), ('from_year', models.CharField(max_length=4, verbose_name='From Year')), ('to_month', models.CharField(choices=[('1', 'January'), ('2', 'February'), ('3', 'March'), ('4', 'April'), ('5', 'May'), ('6', 'June'), ('7', 'July'), ('8', 'August'), ('9', 'September'), ('10', 'October'), ('11', 'November'), ('12', 'December')], max_length=15, verbose_name='To Month')), ('to_year', models.CharField(max_length=4, verbose_name='To Year')), ('currently', models.BooleanField(default=False)), ('description', models.TextField(verbose_name='Description')), ], options={ 'verbose_name_plural': 'Employment History', }, ), migrations.CreateModel( name='FavouriteJobs', fields=[ ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), ('status', models.BooleanField(default=False)), ('created_at', models.DateTimeField(auto_now_add=True, verbose_name='Created Date')), ('updated_at', models.DateTimeField(auto_now=True, verbose_name='Updated Date')), ], options={ 'verbose_name_plural': 'Favourite Jobs', 'ordering': ('-updated_at', ), }, ), migrations.CreateModel( name='Industry', fields=[ ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), ('name', models.CharField(default='', max_length=50, unique=True, verbose_name='Name')), ('is_active', models.BooleanField(default=True)), ('created_by', models.CharField(choices=[('AM', 'AM'), ('USER', 'USER')], default='AM', max_length=20, verbose_name='Created By')), ], options={ 'verbose_name_plural': 'Industry', 'ordering': ('name', ), }, ), migrations.CreateModel( name='JobManagement', fields=[ ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), ('job_name', models.CharField(max_length=40)), ('uuid', models.UUIDField(default=uuid.uuid4, editable=False)), ('country', django_countries.fields.CountryField(max_length=2)), ('description', models.TextField()), ('duration', models.CharField(choices=[('0-3', '0-3'), ('3-6', '3-6'), ('6-12', '6-12'), ('12+', '12+')], default='0-3', max_length=10, verbose_name='Month')), ('type_of_project', models.CharField( choices=[('One Time Project', 'One Time Project'), ('On going Project', 'On going Project'), ('To be decided', 'To be decided')], default='One Time Project', max_length=50, verbose_name='What type of project you have?')), ('number_of_employees', models.IntegerField( default=0, verbose_name='How much employee you need?')), ('payment', models.CharField(choices=[('Pay by Hour', 'Pay by Hour'), ('Pay by Fixed Price', 'Pay by Fixed Price')], default='Pay by Hour', max_length=50, verbose_name='How would you like to pay?')), ('credit', models.CharField(choices=[('$10/HR', '$10/HR'), ('$20/HR', '$20/HR'), ('$30/HR', '$30/HR'), ('others', 'others')], default='$10/HR', max_length=30, verbose_name='Desired Salary')), ('is_active', models.BooleanField(default=True)), ('created_at', models.DateTimeField(auto_now_add=True, verbose_name='Created Date')), ('area', models.ManyToManyField(related_name='post_job_area', to='analyticsmaven.Area')), ], options={ 'verbose_name_plural': 'Job Management', 'verbose_name': 'Job Details', 'ordering': ('-created_at', ), }, ), migrations.CreateModel( name='Language', fields=[ ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), ('language', models.CharField(blank=True, max_length=40, null=True, verbose_name='Language')), ], ), migrations.CreateModel( name='Skills', fields=[ ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), ('name', models.CharField(default='', max_length=50, unique=True, verbose_name='Name')), ('is_active', models.BooleanField(default=True)), ('created_by', models.CharField(choices=[('AM', 'AM'), ('USER', 'USER')], default='AM', max_length=20, verbose_name='Created By')), ], options={ 'verbose_name_plural': 'Tools & Language', 'ordering': ('name', ), }, ), migrations.CreateModel( name='UserLanguageRate', fields=[ ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), ('rate', models.CharField(default=0, max_length=1, verbose_name='Language Rate')), ('language', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, related_name='language_rate', to='analyticsmaven.Language')), ('user', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, related_name='user_language', to=settings.AUTH_USER_MODEL)), ], ), migrations.CreateModel( name='UserSkillRate', fields=[ ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), ('rate', models.CharField(default=0, max_length=1, verbose_name='Skill Rate')), ('skill', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, related_name='skill', to='analyticsmaven.Skills')), ('user', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, related_name='user_skill', to=settings.AUTH_USER_MODEL)), ], ), migrations.CreateModel( name='Company', fields=[ ('abstractuser_ptr', models.OneToOneField( auto_created=True, on_delete=django.db.models.deletion.CASCADE, parent_link=True, primary_key=True, serialize=False, to='analyticsmaven.AbstractUser')), ('company_name', models.CharField(blank=True, max_length=40, null=True, verbose_name='Company Name')), ('country', django_countries.fields.CountryField(max_length=2)), ('profile_completion', models.IntegerField(default=0)), ('industry', models.ManyToManyField(related_name='company_industry', to='analyticsmaven.Industry')), ('language', models.ManyToManyField(related_name='company_language', to='analyticsmaven.Language')), ('tools_and_language', models.ManyToManyField( related_name='company_tools_and_language', to='analyticsmaven.Skills')), ('user', models.OneToOneField( on_delete=django.db.models.deletion.CASCADE, related_name='company', to=settings.AUTH_USER_MODEL)), ], options={ 'verbose_name_plural': 'Company Management', }, bases=('analyticsmaven.abstractuser', ), ), migrations.CreateModel( name='JobSeeker', fields=[ ('abstractuser_ptr', models.OneToOneField( auto_created=True, on_delete=django.db.models.deletion.CASCADE, parent_link=True, primary_key=True, serialize=False, to='analyticsmaven.AbstractUser')), ('first_name', models.CharField(blank=True, max_length=40, null=True, verbose_name='First Name')), ('last_name', models.CharField(blank=True, max_length=40, null=True, verbose_name='Last Name')), ('experience_level', models.CharField(blank=True, choices=[('Expert', 'Expert'), ('Beginner', 'Beginner'), ('Average', 'Average')], max_length=30, null=True)), ('professional_title', models.CharField(default='', max_length=100, verbose_name='Professional Title')), ('overview', models.CharField(default='', max_length=100, verbose_name='Overview')), ('week_availability', models.CharField(blank=True, choices=[('4-8', '4-8 Hrs'), ('8-16', '8-16 Hrs'), ('16-30', '16-30 Hrs'), ('30-48', '30-48 Hrs')], max_length=10, null=True, verbose_name='Availability in Week')), ('country', django_countries.fields.CountryField(max_length=2)), ('postal_code', models.CharField(blank=True, max_length=10, null=True, verbose_name='Postal Code')), ('city', models.CharField(blank=True, max_length=50, null=True, verbose_name='City')), ('phone_no', models.CharField(blank=True, max_length=20, null=True, verbose_name='Phone Nubmer')), ('timezone', timezone_field.fields.TimeZoneField(blank=True, null=True)), ('profile_completion', models.IntegerField(default=0)), ('area', models.ManyToManyField(related_name='job_seeker_area', to='analyticsmaven.Area')), ('education', models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.CASCADE, related_name='job_seeker_education', to='analyticsmaven.Education')), ('industry', models.ManyToManyField(related_name='job_seeker_industry', to='analyticsmaven.Industry')), ('language_known', models.ManyToManyField(related_name='job_seeker_language', to='analyticsmaven.Language')), ('tools_and_language', models.ManyToManyField( related_name='job_seeker_tools_and_language', to='analyticsmaven.Skills')), ('user', models.OneToOneField( on_delete=django.db.models.deletion.CASCADE, related_name='job_seeker', to=settings.AUTH_USER_MODEL)), ], options={ 'verbose_name_plural': 'Job Seeker Management', }, bases=('analyticsmaven.abstractuser', ), ), migrations.AddField( model_name='jobmanagement', name='language', field=models.ManyToManyField( related_name='post_job_language_jobmanagement', to='analyticsmaven.Language'), ), migrations.AddField( model_name='jobmanagement', name='tools_and_language', field=models.ManyToManyField( related_name='post_job_tools_and_language_jobmanagement', to='analyticsmaven.Skills'), ), migrations.AddField( model_name='favouritejobs', name='job', field=models.ForeignKey( on_delete=django.db.models.deletion.CASCADE, related_name='favourite_job', to='analyticsmaven.JobManagement'), ), migrations.AddField( model_name='favouritejobs', name='user', field=models.ForeignKey( on_delete=django.db.models.deletion.CASCADE, related_name='favourite_job_user', to=settings.AUTH_USER_MODEL), ), migrations.AddField( model_name='appliedjobs', name='job', field=models.ForeignKey( on_delete=django.db.models.deletion.CASCADE, related_name='applied_job', to='analyticsmaven.JobManagement'), ), migrations.AddField( model_name='appliedjobs', name='user', field=models.ForeignKey( on_delete=django.db.models.deletion.CASCADE, related_name='applied_user', to=settings.AUTH_USER_MODEL), ), migrations.AddField( model_name='jobmanagement', name='company_name', field=models.ForeignKey( blank=True, null=True, on_delete=django.db.models.deletion.CASCADE, related_name='company_name_jobmanagement', to='analyticsmaven.Company'), ), migrations.AddField( model_name='employment', name='seeker', field=models.ForeignKey( on_delete=django.db.models.deletion.CASCADE, related_name='job_seeker_employment', to='analyticsmaven.JobSeeker'), ), migrations.AddField( model_name='educationdetails', name='seeker', field=models.ForeignKey( on_delete=django.db.models.deletion.CASCADE, related_name='job_seeker_education', to='analyticsmaven.JobSeeker'), ), ]
class Migration(migrations.Migration): dependencies = [ ('API', '0008_auto_20171213_2310'), ] operations = [ migrations.AlterModelOptions( name='category', options={'verbose_name_plural': 'Categories'}, ), migrations.AlterField( model_name='asset', name='image_link', field=cloudinary.models.CloudinaryField( blank=True, max_length=255, null=True, validators=[ server.API.models.ValidateFileType('jpg', 'jpeg', 'png', 'bmp', 'gif') ]), ), migrations.AlterField( model_name='catalog', name='image_link', field=cloudinary.models.CloudinaryField( blank=True, max_length=255, null=True, validators=[ server.API.models.ValidateFileType('jpg', 'jpeg', 'png', 'bmp', 'gif') ]), ), migrations.AlterField( model_name='catalog', name='pdf', field=models.FileField( blank=True, null=True, upload_to='', validators=[server.API.models.ValidateFileType('pdf')]), ), migrations.AlterField( model_name='category', name='image_link', field=cloudinary.models.CloudinaryField( blank=True, max_length=255, null=True, validators=[ server.API.models.ValidateFileType('jpg', 'jpeg', 'png', 'bmp', 'gif') ]), ), migrations.AlterField( model_name='product', name='image_link', field=cloudinary.models.CloudinaryField( blank=True, max_length=255, null=True, validators=[ server.API.models.ValidateFileType('jpg', 'jpeg', 'png', 'bmp', 'gif') ]), ), ]
class Migration(migrations.Migration): initial = True dependencies = [ migrations.swappable_dependency(settings.AUTH_USER_MODEL), ] operations = [ migrations.CreateModel( name='Carnet', fields=[ ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), ('created_at', models.DateField(auto_now_add=True, verbose_name='Date de création')), ('updated_at', models.DateField( auto_now=True, verbose_name='Date de la dernière modification')), ('title', models.CharField(max_length=100, verbose_name='Texte')), ('file', models.FileField(upload_to='', verbose_name='Fichier joint')), ], options={ 'abstract': False, }, ), migrations.CreateModel( name='Club', fields=[ ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), ('created_at', models.DateField(auto_now_add=True, verbose_name='Date de création')), ('updated_at', models.DateField( auto_now=True, verbose_name='Date de la dernière modification')), ('photo', cloudinary.models.CloudinaryField(max_length=255, verbose_name='Photo')), ('content', models.TextField(verbose_name='Contenu')), ('file', models.FileField(upload_to='', verbose_name='Fichier joint')), ], options={ 'abstract': False, }, ), migrations.CreateModel( name='Convention', fields=[ ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), ('created_at', models.DateField(auto_now_add=True, verbose_name='Date de création')), ('updated_at', models.DateField( auto_now=True, verbose_name='Date de la dernière modification')), ('label', models.CharField(max_length=150, verbose_name='Intitulé de la convention')), ('file', models.FileField(upload_to='', verbose_name='Fichier joint')), ], options={ 'verbose_name': 'Convention', 'verbose_name_plural': 'Conventions', }, ), migrations.CreateModel( name='International', fields=[ ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), ('created_at', models.DateField(auto_now_add=True, verbose_name='Date de création')), ('updated_at', models.DateField( auto_now=True, verbose_name='Date de la dernière modification')), ('name', models.CharField(max_length=50, verbose_name='Nom du groupe international')), ('link', models.URLField( verbose_name='Lien vers le groupe international')), ], options={ 'abstract': False, }, ), migrations.CreateModel( name='NetworkNews', fields=[ ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), ('created_at', models.DateField(auto_now_add=True, verbose_name='Date de création')), ('updated_at', models.DateField( auto_now=True, verbose_name='Date de la dernière modification')), ('title', models.CharField(max_length=150, verbose_name='Titre')), ('description', models.TextField(blank=True, verbose_name='Description')), ('link', models.URLField(blank=True, verbose_name='Lien de vers le details')), ('file', models.FileField(blank=True, upload_to='', verbose_name='Fichier')), ], options={ 'verbose_name': 'News', 'verbose_name_plural': 'News', }, ), migrations.CreateModel( name='Nomination', fields=[ ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), ('created_at', models.DateField(auto_now_add=True, verbose_name='Date de création')), ('updated_at', models.DateField( auto_now=True, verbose_name='Date de la dernière modification')), ('photo', cloudinary.models.CloudinaryField(max_length=255, verbose_name='Photo')), ('title', models.CharField(max_length=100, verbose_name='Texte')), ('file', models.FileField(upload_to='', verbose_name='Fichier joint')), ], options={ 'verbose_name': 'Nomination', 'verbose_name_plural': 'Nominations', }, ), migrations.CreateModel( name='InterGroup', fields=[ ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), ('created_at', models.DateField(auto_now_add=True, verbose_name='Date de création')), ('updated_at', models.DateField( auto_now=True, verbose_name='Date de la dernière modification')), ('name', models.CharField(max_length=100, verbose_name="Nom de l'association")), ('filiere_promo', models.CharField(max_length=100, verbose_name='Filière(s) - Promotion(s)')), ('siege', models.CharField(max_length=100, verbose_name='Siège')), ('contact', models.CharField(max_length=50, verbose_name='Contact')), ('members', models.ManyToManyField(blank=True, related_name='intergroups', to=settings.AUTH_USER_MODEL, verbose_name='Membres')), ('staff', models.ForeignKey( null=True, on_delete=django.db.models.deletion.SET_NULL, related_name='intergroup', to=settings.AUTH_USER_MODEL, verbose_name='Nom du président')), ], options={ 'verbose_name': 'Groupe international', 'verbose_name_plural': 'Groupes internationaux', }, ), migrations.CreateModel( name='Association', fields=[ ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), ('created_at', models.DateField(auto_now_add=True, verbose_name='Date de création')), ('updated_at', models.DateField( auto_now=True, verbose_name='Date de la dernière modification')), ('name', models.CharField(max_length=100, verbose_name="Nom de l'association")), ('filiere_promo', models.CharField(max_length=100, verbose_name='Filière(s) - Promotion(s)')), ('siege', models.CharField(max_length=100, verbose_name='Siège')), ('contact', models.CharField(max_length=50, verbose_name='Contact')), ('members', models.ManyToManyField(blank=True, related_name='associations', to=settings.AUTH_USER_MODEL, verbose_name='Membres')), ('staff', models.ForeignKey( null=True, on_delete=django.db.models.deletion.SET_NULL, related_name='association', to=settings.AUTH_USER_MODEL, verbose_name='Répresentant')), ], options={ 'verbose_name': 'Association', 'verbose_name_plural': 'Associations', }, ), ]
class Migration(migrations.Migration): initial = True dependencies = [ ('auth', '0011_update_proxy_permissions'), ] operations = [ migrations.CreateModel( name='Tag', fields=[ ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), ('tags', models.CharField(max_length=100)), ], ), migrations.CreateModel( name='User', fields=[ ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), ('password', models.CharField(max_length=128, verbose_name='password')), ('last_login', models.DateTimeField(blank=True, null=True, verbose_name='last login')), ('is_superuser', models.BooleanField( default=False, help_text= 'Designates that this user has all permissions without explicitly assigning them.', verbose_name='superuser status')), ('email', models.EmailField(max_length=40, unique=True)), ('first_name', models.CharField(blank=True, max_length=30)), ('last_name', models.CharField(blank=True, max_length=30)), ('is_active', models.BooleanField(default=True)), ('is_staff', models.BooleanField(default=False)), ('date_joined', models.DateTimeField(default=django.utils.timezone.now)), ('groups', models.ManyToManyField( blank=True, help_text= 'The groups this user belongs to. A user will get all permissions granted to each of their groups.', related_name='user_set', related_query_name='user', to='auth.Group', verbose_name='groups')), ('user_permissions', models.ManyToManyField( blank=True, help_text='Specific permissions for this user.', related_name='user_set', related_query_name='user', to='auth.Permission', verbose_name='user permissions')), ], options={ 'abstract': False, }, ), migrations.CreateModel( name='Profile', fields=[ ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), ('profile_picture', cloudinary.models.CloudinaryField(blank=True, max_length=255, verbose_name='picture')), ('bio', models.CharField(blank=True, max_length=100)), ('contacts', models.CharField(blank=True, max_length=30)), ('user', models.OneToOneField( on_delete=django.db.models.deletion.CASCADE, to=settings.AUTH_USER_MODEL)), ], ), migrations.CreateModel( name='InterventionRecord', fields=[ ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), ('title', models.CharField(max_length=50)), ('description', models.TextField(blank=True, null=True)), ('time_of_creation', models.DateTimeField(auto_now_add=True)), ('time_last_edit', models.DateTimeField(auto_now=True)), ('status', models.CharField(blank=True, choices=[('Under Investigation', 'Under Investigation'), ('rejected', 'rejected'), ('resolved', 'resolved')], max_length=20, null=True)), ('location', models.CharField(blank=True, max_length=50)), ('image', models.ImageField(blank=True, storage=cloudinary_storage.storage. MediaCloudinaryStorage(), upload_to='images/interventionimages/')), ('videos', models.FileField( blank=True, storage=cloudinary_storage.storage. VideoMediaCloudinaryStorage(), upload_to='videos/', validators=[cloudinary_storage.validators.validate_video ])), ('user', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to=settings.AUTH_USER_MODEL)), ], ), migrations.CreateModel( name='Flag', fields=[ ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), ('title', models.CharField(max_length=100)), ('description', models.TextField()), ('created', models.DateTimeField(auto_now_add=True)), ('updated', models.DateTimeField(auto_now_add=True)), ('latitude', models.DecimalField(decimal_places=6, default='', max_digits=9)), ('longitude', models.DecimalField(decimal_places=6, default='', max_digits=9)), ('image', models.ImageField(blank=True, storage=cloudinary_storage.storage. MediaCloudinaryStorage(), upload_to='images/flagimages/')), ('videos', models.FileField( blank=True, storage=cloudinary_storage.storage. VideoMediaCloudinaryStorage(), upload_to='videos/', validators=[cloudinary_storage.validators.validate_video ])), ('tags', models.ManyToManyField(to='IReporter.Tag')), ('user', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to=settings.AUTH_USER_MODEL)), ], options={ 'verbose_name_plural': 'Flags', }, ), ]