/**
  * Display formular for one training
  * @param TrainingObject $SingleObject
  */
 protected function displaySingleFormularFor(TrainingObject $SingleObject)
 {
     if ($SingleObject->Weather()->isEmpty()) {
         $SingleObject->setWeatherForecast();
     }
     $Formular = new TrainingFormular($SingleObject, StandardFormular::$SUBMIT_MODE_CREATE);
     $Formular->setId('training');
     $Formular->setLayoutForFields(FormularFieldset::$LAYOUT_FIELD_W50);
     $Formular->display();
 }
示例#2
0
/**
 * Display formular for editing a training
 * Call:   call/call.Training.edit.php?id=
 */
require '../inc/class.Frontend.php';
use Runalyze\Model\Activity;
use Runalyze\View\Activity\Linker;
use Runalyze\View\Activity\Dataview;
$Frontend = new Frontend();
if (isset($_GET['delete']) && is_numeric($_GET['delete'])) {
    $Deleter = new Activity\Deleter(DB::getInstance(), Runalyze\Context::Factory()->activity($_GET['delete']));
    $Deleter->setAccountID(SessionAccountHandler::getId());
    $Deleter->delete();
    echo '<div class="panel-content"><p id="submit-info" class="error">' . __('The activity has been removed') . '</p></div>';
    echo '<script>$("#multi-edit-' . (int) $_GET['delete'] . '").remove();Runalyze.Statistics.resetUrl();Runalyze.reloadContent();</script>';
    exit;
}
$Training = new TrainingObject(Request::sendId());
$Activity = new Activity\Object($Training->getArray());
$Linker = new Linker($Activity);
$Dataview = new Dataview($Activity);
echo $Linker->editNavigation();
echo '<div class="panel-heading">';
echo '<h1>' . $Dataview->titleWithComment() . ', ' . $Dataview->dateAndDaytime() . '</h1>';
echo '</div>';
echo '<div class="panel-content">';
$Formular = new TrainingFormular($Training, StandardFormular::$SUBMIT_MODE_EDIT);
$Formular->setId('training');
$Formular->setLayoutForFields(FormularFieldset::$LAYOUT_FIELD_W50);
$Formular->display();
echo '</div>';
示例#3
0
 /**
  * Update object in database
  */
 public function update()
 {
     $DB = DB::getInstance();
     $AccountID = SessionAccountHandler::getId();
     $OldData = isset($_POST['old-data']) ? unserialize(base64_decode($_POST['old-data'])) : array();
     if (!is_array($OldData)) {
         $OldData = array();
     }
     $NewActivity = $this->newActivityObject();
     $UpdaterActivity = new \Runalyze\Model\Activity\Updater($DB, $NewActivity, new \Runalyze\Model\Activity\Object($OldData));
     if (isset($OldData['routeid']) && $OldData['routeid'] > 0) {
         $UpdaterActivity->setRoute(\Runalyze\Context::Factory()->route($OldData['routeid']));
     } elseif ($this->get('route') != '') {
         $InserterRoute = new Runalyze\Model\Route\Inserter($DB, new Runalyze\Model\Route\Object(array(Runalyze\Model\Route\Object::NAME => $this->get('route'), Runalyze\Model\Route\Object::CITIES => $this->get('route'), Runalyze\Model\Route\Object::DISTANCE => $this->get('distance'))));
         $InserterRoute->setAccountID($AccountID);
         $InserterRoute->insert();
         $NewActivity->set(Runalyze\Model\Activity\Object::ROUTEID, $InserterRoute->insertedID());
     }
     $UpdaterActivity->setTrackdata(\Runalyze\Context::Factory()->trackdata($this->id()));
     $UpdaterActivity->setEquipmentIDs(TrainingFormular::readEquipmentFromPost($NewActivity->sportid()), isset($_POST['equipment_old']) ? explode(',', $_POST['equipment_old']) : array());
     $UpdaterActivity->setAccountID($AccountID);
     $UpdaterActivity->update();
     if (isset($OldData['routeid']) && isset($OldData['route'])) {
         $UpdaterRoute = new \Runalyze\Model\Route\Updater($DB, new Runalyze\Model\Route\Object(array('id' => $OldData['routeid'], Runalyze\Model\Route\Object::NAME => $this->get('route'), Runalyze\Model\Route\Object::CITIES => $this->get('route'))), new Runalyze\Model\Route\Object(array('id' => $OldData['routeid'], Runalyze\Model\Route\Object::NAME => $OldData['route'], Runalyze\Model\Route\Object::CITIES => $OldData['route'])));
         $UpdaterRoute->setAccountID($AccountID);
         $UpdaterRoute->update();
     }
 }