Exemplo n.º 1
0
 public function onRun()
 {
     $this->addJs("/plugins/delphinium/blossom/assets/javascript/grade.js");
     $this->addCss("/plugins/delphinium/blossom/assets/css/animate.css");
     $this->addCss("/plugins/delphinium/blossom/assets/css/grade.css");
     $this->addCss("/plugins/delphinium/blossom/assets/css/main.css");
     $instance = GradeModel::find($this->property('Instance'));
     $this->page['XP'] = $this->property('XP');
     $this->page['gradeBonus'] = $this->property('Bonus');
     $this->page['gradeAnimate'] = $instance->Animate;
     $this->page['gradeSize'] = $instance->Size;
     $this->getGradeData();
 }
Exemplo n.º 2
0
 public function onRun()
 {
     $instance = GradeModel::find($this->property('gradeInstance'));
     if (!is_null($this->property('experienceInstance'))) {
         $experienceInstance = ExperienceModel::find($this->property('experienceInstance'));
         $exComp = new ExperienceComponent();
         //set class variables
         $stDate = new DateTime($experienceInstance->start_date);
         $endDate = new DateTime($experienceInstance->end_date);
         $ptsPerSecond = $exComp->getPtsPerSecond($stDate, $endDate, $experienceInstance->total_points);
         $exComp->setPtsPerSecond($ptsPerSecond);
         $exComp->setStartDate($stDate);
         $exComp->setBonusPerSecond($experienceInstance->bonus_per_day / 24 / 60 / 60);
         $exComp->setBonusSeconds($experienceInstance->bonus_days * 24 * 60 * 60);
         $exComp->setPenaltyPerSecond($experienceInstance->penalty_per_day / 24 / 60 / 60);
         $exComp->setPenaltySeconds($experienceInstance->penalty_days * 24 * 60 * 60);
         $points = $exComp->getUserPoints();
         $milestonesDesc = Milestone::where('experience_id', '=', $experienceInstance->id)->orderBy('points', 'desc')->get();
         $mileClearance = $exComp->getMilestoneClearanceInfo($milestonesDesc);
         $bonusPenalties = 0;
         foreach ($mileClearance as $item) {
             if ($item->cleared) {
                 $bonusPenalties = $bonusPenalties + $item->bonusPenalty;
             }
         }
         $this->page['XP'] = round($points, 2);
         $this->page['gradeBonus'] = round($bonusPenalties, 2);
     } else {
         $this->page['XP'] = 0;
         $this->page['gradeBonus'] = 0;
     }
     //todo: get the bonus, etc from blade, not from experience
     $this->page['gradeSize'] = $instance->Size;
     $this->getGradeData();
     $this->addJs("/plugins/delphinium/blossom/assets/javascript/grade.js");
     $this->addCss("/plugins/delphinium/blossom/assets/css/animate.css");
     $this->addCss("/plugins/delphinium/blossom/assets/css/grade.css");
     $this->addCss("/plugins/delphinium/blossom/assets/css/main.css");
 }
Exemplo n.º 3
0
 public function onRun()
 {
     $instance = GradeModel::find($this->property('gradeInstance'));
     if (!is_null($this->property('experienceInstance'))) {
         $exComp = new ExperienceComponent();
         $exComp->initVariables($this->property('experienceInstance'));
         $points = $exComp->getUserPoints();
         $bonusPenaltiesObj = $exComp->calculateTotalBonusPenalties($this->property('experienceInstance'));
         $totalBonusPenalties = $bonusPenaltiesObj->bonus + $bonusPenaltiesObj->penalties;
         //penalties come with negative sign
         $this->page['XP'] = round($points, 2);
         $this->page['gradeBonus'] = round($totalBonusPenalties, 2);
     } else {
         $this->page['XP'] = 0;
         $this->page['gradeBonus'] = 0;
     }
     //todo: get the bonus, etc from blade, not from experience
     $this->page['gradeSize'] = $instance->Size;
     $this->getGradeData();
     $this->addJs("/plugins/delphinium/blossom/assets/javascript/grade.js");
     $this->addCss("/plugins/delphinium/blossom/assets/css/animate.css");
     $this->addCss("/plugins/delphinium/blossom/assets/css/grade.css");
     $this->addCss("/plugins/delphinium/blossom/assets/css/main.css");
 }