Example #1
0
 /**
  * Execute the console command.
  *
  * @return mixed
  */
 public function handle()
 {
     $voteoptions = Voteoption::all();
     $votes = Vote::all();
     $members = Votemember::all();
     $groups = Votegroup::all();
     $score = [];
     foreach ($votes as $vote) {
         foreach ($voteoptions as $voteoption) {
             if ($vote['voteoption_hash'] == $voteoption['hash']) {
                 $score[] = $voteoption['votemember_id'];
             }
         }
     }
     $score = array_count_values($score);
     foreach ($score as $key => $vote) {
         foreach ($members as $member) {
             if ($member['id'] == $key) {
                 $member['votes'] = $vote;
             }
             foreach ($groups as $group) {
                 if ($group['id'] == $member['votegroup_id']) {
                     $member['group'] = $group['name'];
                 }
             }
         }
         foreach ($members as $member) {
             if (!isset($member['votes'])) {
                 $member['votes'] = 0;
             }
         }
     }
     Storage::disk('local')->put('votes.json', json_encode($members));
     $groups = $members;
     $groupscore = [];
     foreach ($groups as $group) {
         if (isset($groupscore[$group['group']])) {
             $groupscore[$group['group']]['votes'] = $groupscore[$group['group']]['votes'] + $group['votes'];
         } else {
             $rand = ['0', '1', '2', '3', '4', '5', '6', '7', '8', '9', 'a', 'b', 'c', 'd', 'e', 'f'];
             $color = '#' . $rand[rand(0, 15)] . $rand[rand(0, 15)] . $rand[rand(0, 15)] . $rand[rand(0, 15)] . $rand[rand(0, 15)] . $rand[rand(0, 15)];
             $groupscore[$group['group']] = ['votes' => $group['votes'], 'color' => $color];
         }
     }
     $totalvotes = Vote::count();
     foreach ($groupscore as $key => $group) {
         $groupscore[$key]['cut'] = $groupscore[$key]['votes'] / $totalvotes * 100;
     }
     Storage::disk('local')->put('groupvotes.json', json_encode($groupscore));
     $this->info("All votes are counted and saved in votes.json");
 }
 /**
  * Execute the console command.
  *
  * @return mixed
  */
 public function handle()
 {
     $this->info("Generating new hashes");
     $members = Votemember::all();
     if (!($versionnumber = Voteoption::orderBy('created_at', 'desc')->first()->versionnumber + 1)) {
         $versionnumber = 0;
     }
     foreach ($members as $member) {
         $voteopt = new Voteoption();
         $voteopt->hash = Hash::make(date('Yis') . str_random(20) . date('siY'));
         $voteopt->form_hash = Hash::make(date('Yis') . str_random(20) . date('siY'));
         $voteopt->votemember_id = $member->id;
         $voteopt->versionnumber = $versionnumber;
         $voteopt->save();
     }
     $this->info("Done!");
 }
 public function run()
 {
     $votemembers = [['votegroup_id' => '1', 'name' => 'Sybrand van Haersma Buma'], ['votegroup_id' => '1', 'name' => 'Mona Keijzer'], ['votegroup_id' => '1', 'name' => 'Sander de Rouwe'], ['votegroup_id' => '2', 'name' => 'Geert Wilders'], ['votegroup_id' => '2', 'name' => 'Fleur Agema'], ['votegroup_id' => '2', 'name' => 'Martin Bosma'], ['votegroup_id' => '3', 'name' => 'Henk Knol'], ['votegroup_id' => '4', 'name' => 'Diederik Samsom'], ['votegroup_id' => '4', 'name' => 'Jetta Klijnsma'], ['votegroup_id' => '4', 'name' => 'Ronald Plasterk'], ['votegroup_id' => '5', 'name' => 'Mark Rutte'], ['votegroup_id' => '5', 'name' => 'Edith Schippers'], ['votegroup_id' => '5', 'name' => 'Stef Blok'], ['votegroup_id' => '6', 'name' => 'Emile Roemer'], ['votegroup_id' => '6', 'name' => 'Renske Leijten'], ['votegroup_id' => '6', 'name' => 'Ronald van Raak'], ['votegroup_id' => '7', 'name' => 'Jolande Sap'], ['votegroup_id' => '7', 'name' => 'Bram van Ojik'], ['votegroup_id' => '7', 'name' => 'Liesbeth van Tongeren'], ['votegroup_id' => '8', 'name' => 'Alexander Pechtold'], ['votegroup_id' => '8', 'name' => 'Stientje van Veldhoven'], ['votegroup_id' => '8', 'name' => 'Wouter Koolmees'], ['votegroup_id' => '9', 'name' => 'Arie Slob'], ['votegroup_id' => '9', 'name' => 'Joël Voordewind'], ['votegroup_id' => '9', 'name' => 'Carola Schouten'], ['votegroup_id' => '10', 'name' => 'Marianne Thieme'], ['votegroup_id' => '10', 'name' => 'Esther Ouwehand'], ['votegroup_id' => '10', 'name' => 'Frank Wassenberg'], ['votegroup_id' => '11', 'name' => 'Kees van der Staaij'], ['votegroup_id' => '11', 'name' => 'Elbert Dijkgraaf'], ['votegroup_id' => '11', 'name' => 'Henk ten Hoeve'], ['votegroup_id' => '12', 'name' => 'Jabik van der Bij'], ['votegroup_id' => '12', 'name' => 'Roelof Bisschop']];
     Votemember::insert($votemembers);
 }