# -*- coding: utf-8 -*-
# Generated by Django 1.9.1 on 2016-03-03 18:30
from __future__ import unicode_literals

from django.db import migrations, models
import django.db.models.deletion


class Migration(migrations.Migration):

    initial = True

    dependencies = [
        ('auth', '0007_alter_validators_add_error_messages'),
        ('contenttypes', '0002_remove_content_type_name'),
    ]

    operations = [
        migrations.CreateModel(
            name='Experiment',
            fields=[
                ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
                ('label', models.CharField(max_length=32, unique=True)),
                ('verbose_name', models.CharField(blank=True, max_length=128, null=True)),
                ('description', models.TextField(blank=True, null=True)),
                ('estimated_length', models.CharField(blank=True, max_length=16, null=True)),
                ('allow_repeats', models.BooleanField(help_text="Should participants be able to repeat this experiment? Does not mean they'll get payed twice, but this might create redundant data?")),
                ('max_repeats', models.SmallIntegerField(blank=True, help_text='If repeats are permitted, you can set a limit of repeats here.', null=True)),
                ('enforce_finish', models.BooleanField(help_text='Check this to prevent subjects from starting new participations when they already have incomplete ones pending.')),
                ('max_pending', models.PositiveSmallIntegerField(blank=True, help_text='If subjects are allowed to have many unfinished participations, you can set the maximum here', null=True)),
                ('compensated', models.BooleanField(default=False, help_text='True if some kind of monetary compensation is currently available for subjects who complete the experiment')),
                ('max_payouts', models.IntegerField(blank=True, help_text='How many times can a subject get payed (each payout needs a new participation)', null=True)),
                ('allow_do_overs', models.BooleanField(default=False, help_text='Should we allow subjects to erase non-claimed payments and create a better one by redoing an exp. ?')),
                ('funds_remaining', models.FloatField(blank=True, help_text='How much money is still available to pay subjects. This is a live setting so better to change this programmatically, ask the administrator.', null=True)),
                ('is_active', models.BooleanField(help_text='Uncheck to remove this experiment from being displayed and served on the site.')),
                ('paypal_client_id', models.CharField(blank=True, help_text='If you plan on paying your subjects via Paypal, put the client id given to you when you registered your developer account. See: https://developer.paypal.com/developer/applications/', max_length=128, null=True)),
                ('paypal_secret', models.CharField(blank=True, help_text='The secret key given to you by PayPal', max_length=128, null=True)),
                ('block_models', models.ManyToManyField(related_name='experiments', to='contenttypes.ContentType')),
                ('research_group', models.OneToOneField(blank=True, null=True, on_delete=django.db.models.deletion.CASCADE, to='auth.Group')),
                ('settings_model', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='contenttypes.ContentType')),
            ],
            options={
                'abstract': False,
            },
        ),
    ]
