Sprankelprachtig aan/afmeldsysteem

seeds.rb 2.9KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119
  1. # This file should contain all the record creation needed to seed the database with its default values.
  2. # The data can then be loaded with the rails db:seed command (or created alongside the database with db:setup).
  3. #
  4. # Examples:
  5. #
  6. # movies = Movie.create([{ name: 'Star Wars' }, { name: 'Lord of the Rings' }])
  7. # Character.create(name: 'Luke', movie: movies.first)
  8. p = Person.create!(
  9. first_name: 'Maarten',
  10. infix: 'van den',
  11. last_name: 'Berg',
  12. birth_date: (Faker::Date.between(21.years.ago, Date.today)),
  13. email: 'maarten@maartenberg.nl.eu.org',
  14. is_admin: true
  15. )
  16. u = User.create!(
  17. email: 'maarten@maartenberg.nl.eu.org',
  18. person: p,
  19. password: 'aardbei123',
  20. password_confirmation: 'aardbei123'
  21. )
  22. p2 = Person.create!(
  23. first_name: 'Henkie',
  24. last_name: 'Gekke',
  25. birth_date: (Faker::Date.between(21.years.ago, Date.today)),
  26. email: 'gekkehenkie@maartenberg.nl.eu.org'
  27. )
  28. g = Group.create!(
  29. name: 'Teststam'
  30. )
  31. 2.times do |i|
  32. gr = Group.create!(
  33. name: Faker::Team.name
  34. )
  35. end
  36. 15.times do |i|
  37. person = Person.create!(
  38. first_name: (Faker::Name.first_name),
  39. last_name: (Faker::Name.last_name),
  40. birth_date: (Faker::Date.between(21.years.ago, Date.today)),
  41. email: "testuser#{i}@maartenberg.nl.eu.org"
  42. )
  43. end
  44. a = Activity.create!(
  45. public_name: 'Fikkie stoken ofzo',
  46. secret_name: 'Bosbrandopkomst',
  47. description: 'Een scout trekt er samen met anderen op uit',
  48. location: 'In het bos in het bos',
  49. start: 4.weeks.since,
  50. end: 4.weeks.since + 2.hours,
  51. deadline: 3.weeks.since,
  52. show_hidden: false,
  53. group: g
  54. )
  55. Group.all.each do |g|
  56. 10.times do |i|
  57. if Faker::Boolean.boolean(0.25)
  58. secret_name = Faker::Hacker.ingverb
  59. else
  60. secret_name = nil
  61. end
  62. starttime = Faker::Time.between(DateTime.now, 1.years.since, :morning)
  63. endtime = Faker::Time.between(1.hours.since(starttime), 1.days.since(starttime), :afternoon)
  64. deadline = 5.days.ago(starttime)
  65. puts starttime
  66. puts endtime
  67. puts deadline
  68. act = Activity.create!(
  69. public_name: Faker::Hacker.ingverb,
  70. secret_name: secret_name,
  71. description: Faker::Hipster.sentence,
  72. location: Faker::Address.city,
  73. start: starttime,
  74. end: endtime,
  75. deadline: deadline,
  76. show_hidden: Faker::Boolean.boolean,
  77. group: g
  78. )
  79. end
  80. end
  81. Person.all.each do |p|
  82. Group.all.each do |g|
  83. if Faker::Boolean.boolean(0.75)
  84. mem = Member.create!(
  85. person: p,
  86. group: g,
  87. is_leader: Faker::Boolean.boolean(0.1)
  88. )
  89. g.activities.each do |a|
  90. if Faker::Boolean.boolean(0.15)
  91. notes = Faker::Hipster.sentence
  92. else
  93. notes = nil
  94. end
  95. part = Participant.create!(
  96. activity: a,
  97. person: p,
  98. is_organizer: Faker::Boolean.boolean(0.1),
  99. attending: [true, false, nil].sample,
  100. notes: notes
  101. )
  102. end
  103. end
  104. end
  105. end