Exemplo n.º 1
2
 private final function nettoyerBase()
 {
     return (bool) ORM::forTable(self::NOM_TABLE)->whereRaw('(NOW() - `date_activite`) >= ?', array(Config::DUREE_SESSION))->deleteMany();
 }
    $requestBody = $app->request()->getBody();
    $requestParams = json_decode($requestBody);
    $programExercise = ORM::for_table('program_exercises')->create();
    $programExercise->program_id = $programId;
    $programExercise->exercise_id = $requestParams->exercise_id;
    $programExercise->order_number = $requestParams->order_number;
    $programExercise->save();
    echo json_encode(["program_exercise_id" => $programExercise->id()]);
});
/**
 * Update a program exercise
 */
$app->put('/programs/:program_id/exercises/:program_exercise_id', function ($programId, $programExerciseId) use($app) {
    $requestBody = $app->request()->getBody();
    $requestParams = json_decode($requestBody);
    $programExercise = ORM::for_table('program_exercises')->find_one($programExerciseId);
    $programExercise->program_id = $programId;
    $programExercise->exercise_id = $requestParams->exercise_id;
    $programExercise->order_number = $requestParams->order_number;
    $programExercise->save();
    $programExercise = ORM::for_table('program_exercises')->find_one($programExerciseId)->as_array();
    echo json_encode($programExercise);
});
/**
 * Delete a program exercise id.
 */
$app->delete('/programs/:program_id/exercises/:program_exercise_id', function ($programId, $programExerciseId) use($app) {
    $programExercise = ORM::forTable('program_exercises')->findOne($programExerciseId);
    $programExercise->delete();
    $app->response()->setStatus(200);
});
Exemplo n.º 3
0
 public static function obtenirTout(Condition $conditions = NULL, $offset = 0, $limite = NULL)
 {
     $listeRecords = ORM::forTable(self::nomTable());
     // Prise en compte d'éventuelles conditions
     if ($conditions !== NULL) {
         $listeRecords->whereRaw($conditions->generer(), $conditions->listeValeurs());
     }
     // Pris en compte de l'éventuel limite
     if ($limite !== NULL) {
         $listeRecords->limit($limite);
     }
     // Prise en compte de l'éventuel offset
     $listeRecords->offset($offset);
     // Récupération des résultats
     $listeRecords = $listeRecords->findMany();
     $listeElements = array();
     // On récupère le nom de la classe instanciée pour pouvoir en retourner les objets
     $nomClasse = get_called_class();
     foreach ($listeRecords as $record) {
         $objet = new $nomClasse();
         // Hydration de l'objet
         $objet->setRecord($record);
         // Ajout dans la liste des résultats
         $listeElements[] = $objet;
     }
     return $listeElements;
 }
Exemplo n.º 4
0
 function i_get()
 {
     require 'idiorm/idiorm.php';
     require 'application/config/idiorm.php';
     $data = new stdClass();
     $data->songs = ORM::forTable('songs')->whereRaw('(`time` > ? AND `time` < ?)', array(0, 32))->orderByAsc('artist')->findResultSet();
     return $data;
 }
Exemplo n.º 5
0
 public function call()
 {
     $app = $this->app;
     if (isset($_SESSION['uid'])) {
         $env = $app->environment();
         $env['user'] = ORM::forTable('users')->findOne($_SESSION['uid']);
         $this->next->call();
     } else {
         $app->redirect(SITE_URL . '/login');
     }
 }
Exemplo n.º 6
0
 public function call()
 {
     $app = $this->app;
     $env = $app->environment();
     if (isset($_SESSION['uid'])) {
         $user = ORM::forTable('users')->findOne($_SESSION['uid']);
         $endpoint = array('id' => $_SESSION['username'], 'nick' => $user->nick, 'presence' => 'online', 'show' => 'available', 'status' => $user->status, 'url' => '#', 'pic_url' => Gravatar::url($user->login), 'role' => 'user');
         $env['endpoint'] = $endpoint;
     }
     $this->next->call();
 }
Exemplo n.º 7
0
});
/**
 * PUT request for workout
 */
$app->put('/workouts/:workout_id', function ($workoutId) use($app) {
    $requestBody = $app->request()->getBody();
    $requestParams = json_decode($requestBody);
    $workout = ORM::forTable('workout')->findOne($workoutId);
    $workout->user_id = 0;
    $workout->program_id = $requestParams->program_id;
    $workout->date = $requestParams->date;
    $workout->user_weight = $requestParams->user_weight;
    $workout->user_rhr = $requestParams->user_rhr;
    $workout->start_time = $requestParams->start_time;
    $workout->end_time = $requestParams->end_time;
    $workout->comments = $requestParams->comments;
    if (!$workout->save()) {
        $app->response()->setStatus(500);
    } else {
        echo json_encode(["workout_id" => $workoutId]);
    }
});
/**
 * DELETE request for workout
 */
$app->delete('/workouts/:workout_id', function ($workoutId) use($app) {
    $program = ORM::forTable('workout')->findOne($workoutId);
    if (!$program->delete()) {
        $app->response()->setStatus(500);
    }
});
    if ($workoutExercise->save()) {
        $app->response->body(json_encode(["workout_exercise_id" => $workoutExercise->workout_exercise_id]));
    } else {
        $app->response()->setStatus(500);
    }
});
/**
 * PUT request for workout exercise
 */
$app->put('/workouts/:workout_id/exercises/:workout_exercise_id', function ($workoutId, $workoutExerciseId) use($app) {
    $requestBody = $app->request()->getBody();
    $requestParams = json_decode($requestBody);
    $workoutExercise = ORM::forTable('workout_exercises')->findOne($workoutExerciseId);
    $workoutExercise->workout_id = $workoutId;
    $workoutExercise->exercise_id = $requestParams->exercise_id;
    $workoutExercise->instructions = $requestParams->instructions;
    $workoutExercise->comment = $requestParams->comment;
    $workoutExercise->order_number = $requestParams->order_number;
    if (!$workoutExercise->save()) {
        $app->response()->setStatus(500);
    }
});
/**
 * DELETE request for workout exercise
 */
$app->delete('/workouts/:workout_id/exercises/:workout_exercise_id', function ($workoutId, $workoutExerciseId) use($app) {
    $workoutExercise = ORM::forTable('workout_exercises')->findOne($workoutExerciseId);
    if (!$workoutExercise->delete()) {
        $app->response()->setStatus(500);
    }
});
Exemplo n.º 9
0
 public function testClearingInvalidCache()
 {
     $this->setExpectedException('Exception');
     Orm::configure('caching', true);
     Orm::configure('caching_driver', 'invalid');
     try {
         ORM::forTable('widget')->where('name', 'Fred')->where('age', 17)->findOne();
     } catch (Exception $e) {
         Orm::clearCache();
     }
 }
Exemplo n.º 10
0
<?php

adminOnly();
if ($_POST) {
    $id = (int) $_POST['id'];
    $description = trim($_POST['description']);
    $image = isset($_POST['image']) ? filter_var(trim($_POST['image']), FILTER_VALIDATE_URL) : '';
    if (!($perle = ORM::forTable('perles_posts')->findOne($id))) {
        $_SESSION['message'] = 'Pērle netika atrasta.';
    } elseif (!getimagesize($image)) {
        $_SESSION['message'] = 'Tas nav attēls.';
    } else {
        /**
         * Gotta delete the image from assets folder
         * if it exists there (basically has been uploaded)
         */
        deleteUploadedImage(basename($perle->image));
        $perle->description = $description;
        $perle->image = protocolRelativeUrl($image);
        $perle->save();
        $_SESSION['message'] = 'Pērle saglabata.';
    }
    if (isset($_POST['ref']) && !empty($_POST['ref'])) {
        redirect(urldecode($_POST['ref']));
    }
}
redirect($config['url']);
Exemplo n.º 11
0
 /**
  * Check passed auth token
  *
  * @param string $authToken
  * @return boolean
  */
 protected function verify($authToken)
 {
     $user = \ORM::forTable('users')->where('apikey', $authToken)->findOne();
     if (false !== $user) {
         $this->app->user = $user->asArray();
         return true;
     }
     return false;
 }
Exemplo n.º 12
0
        die;
    }
} else {
    /**
     * Redirect to newest pearl to show the identifier in url (for sharing purpouses)
     */
    header('Location: ' . $config['url'] . '/' . strtotime($perle->created));
    die;
}
/**
 * Next and prev
 *
 * False if not found
 */
$prev = ORM::forTable('perles_posts')->where('active', 1)->whereRaw('`id` = (SELECT max(`id`) FROM `perles_posts` WHERE `id` < ? AND `active` = 1)', array($perle->id))->findOne();
$next = ORM::forTable('perles_posts')->where('active', 1)->whereRaw('`id` = (SELECT min(`id`) FROM `perles_posts` WHERE `id` > ? AND `active` = 1)', array($perle->id))->findOne();
// ------------------------------------------------------------------ //
require 'layout/header.php';
?>

    <?php 
if ($perle) {
    ?>
        <ul id="pager" class="pager">
            <?php 
    if ($next) {
        ?>
                <li class="previous"><a href="<?php 
        echo $config['url'];
        ?>
/<?php 
Exemplo n.º 13
0
 public function validaNotesContactID($note)
 {
     if (isset($note['body']) && empty($note['body'])) {
         $this->addError('notes', 'contact_id', 'contact_id cannot be empty');
     }
     $results = \ORM::forTable('notes')->where('contact_id', $note['contact_id'])->count();
     if (!$results) {
         $this->addError('notes', 'contact_id', 'contact_id dont exists');
     }
     return $this->hasErrors();
 }
Exemplo n.º 14
0
 * POST request for programs
 */
$app->post('/programs', function () use($app) {
    $requestBody = $app->request()->getBody();
    $requestParams = json_decode($requestBody);
    $program = ORM::forTable('programs')->create();
    // TODO: replace with real user id
    $program->user_id = 0;
    $program->name = $requestParams->name;
    $program->save();
    echo json_encode(["program_id" => $program->id()]);
});
/**
 * PUT request for programs
 * TODO Access control
 */
$app->put('/programs/:id', function ($id) use($app) {
    $requestBody = $app->request()->getBody();
    $requestParams = json_decode($requestBody);
    $program = ORM::forTable('programs')->findOne($id);
    $program->name = $requestParams->name;
    return $program->save();
});
/**
 * DELETE request for programs
 * TODO Access control
 */
$app->delete('/programs/:id', function ($id) use($app) {
    $program = ORM::forTable('programs')->findOne($id);
    return $program->delete();
});
Exemplo n.º 15
0
                            return;
                        } else {
                            throw new Exception("Unable to save note");
                        }
                    } else {
                        throw new ValidationException("Invalid data", 0, $errors);
                    }
                }
            }
            $app->notFound();
        })->via('PUT', 'PATCH');
        // Delete single note
        $app->delete('/contacts/:id/notes/:note_id', function ($id, $note_id) use($app, $log) {
            $contact = \ORM::forTable('contacts')->select('id')->findOne($id);
            if ($contact) {
                $note = \ORM::forTable('notes')->findOne($note_id);
                if ($note) {
                    $note->delete();
                    $app->halt(204);
                }
            }
            $app->notFound();
        });
    });
});
// Public human readable home page
$app->get('/', function () use($app, $log) {
    echo "<h1>Hello, this can be the public App Interface</h1>";
});
// JSON friendly errors
// NOTE: debug must be false
Exemplo n.º 16
0
<?php

require __DIR__ . '/lib.php';
require __DIR__ . '/vendor/autoload.php';
$map = ['answer', 'question', 'user'];
$n = count($map) - 1;
$url = 'http://3.xctest.sinaapp.com/upload';
while (1) {
    $i = rand(0, $n);
    $type = $map[$i];
    $entry = ORM::forTable($type)->where('is_upload', 0)->findOne();
    $data = ['type' => $type, 'data' => $entry->toArray()];
    $ch = curl_init($url);
    curl_setopt($ch, CURLOPT_POST, 1);
    curl_setopt($ch, CURLOPT_POSTFIELDS, $data);
    $content = curl_exec($ch);
    $response = json_decode($content, true);
    if (json_last_error()) {
        app_log('error: json decode error %s', json_last_error());
        throw new Exception("json decode error", 1);
    }
    if (empty($response)) {
        app_log('error: response empty');
        throw new Exception("response empty", 1);
    }
    if ($response['code'] !== 0) {
        app_log('error: response code %s message %s', $response['code'], $response['message']);
        throw new Exception("response code " . $response['code'], 1);
    }
    $entry->is_upload = 1;
    $entry->save();
Exemplo n.º 17
0
<?php

$type = _post('type');
$data = _post('data');
app_log('recieve type %s with %s', $type, json_encode($data));
$entry = ORM::forTable($type)->findOne($data['id']);
if ($entry) {
    $code = 1;
    $message = 'has entry';
} else {
    $entry = ORM::forTable('entry')->create();
    $code = 0;
    $message = 'ok';
}
$entry->set($data);
$entry->save();
echo json_encode(array('code' => $code, 'message' => $message));
app_log('recieve type %s with %s', $type, json_encode($data));
Exemplo n.º 18
0
})->name('doSignup');
/**
 *-------------------------------------------
 * User Login
 *-------------------------------------------
 */
$app->get('/login', function () use($app) {
    $app->render("login.html");
})->name('login');
$app->post('/login', function () use($app) {
    $req = $app->request();
    $login = $req->post('login');
    $password = $req->post('password');
    $user = ORM::forTable('users')->where('username', $login)->findOne();
    if (!$user) {
        $user = ORM::forTable('users')->where('email', $login)->findOne();
    }
    $error = null;
    if ($user && password_verify($password, $user->password)) {
        $_SESSION['uid'] = $user->id;
        $_SESSION['username'] = $user->username;
        $_SESSION['siteid'] = $user->siteid;
        $_SESSION['user_role'] = $user->role;
        $app->redirect(SITE_URL . '/console.php/');
    } else {
        $app->flash('error', '账户或密码错误');
        $app->redirect(SITE_URL . '/login');
    }
})->name('doLogin');
/**
 *-------------------------------------------
Exemplo n.º 19
0
<?php

/**
 * Get all pearls
 */
$perles = ORM::forTable('perles_posts')->where('active', 1)->orderByDesc('created')->findMany();
$counter = count($perles);
// ------------------------------------------------------------------ //
$config['title-affix'] = $perles ? "Siena" : "Tukšs maiss";
require 'layout/header.php';
?>

    <?php 
if ($perles) {
    ?>
        <div id="pearl-wall">
            <div id="overlay" style="display: none;"><img src="<?php 
    echo $config['url'];
    ?>
/assets/images/loading.gif" alt="Loading images"></div>
            <?php 
    foreach ($perles as $perle) {
        ?>
                <div class="wall-item">
                    <p><b>Pērle nr. <?php 
        echo $counter;
        ?>
</b> <small class="text-muted"><?php 
        echo date('d.m.Y', strtotime($perle->created));
        ?>
</small></p>
Exemplo n.º 20
0
# instantiates a new Slim Application
$app = new \Slim\Slim(['view' => new \Slim\Views\Blade(), 'templates.path' => '../templates']);
#setup templates compiled cache
$view = $app->view();
$view->parserOptions = ['debug' => true, 'cache' => "../html_cache"];
# defines a route for the GET method
$app->get("/todos", function () use($app) {
    $todos = ORM::forTable('todos')->select(array('todos.id', 'todos.task', 'lookup.value'))->join('lookup', ['todos.status', '=', 'lookup.code'])->findMany();
    $app->render('todos.index', compact('todos', 'app'));
    //var_dump(ORM::get_query_log(), $todos);
})->name('todos.index');
# defines a route for the GET method
/*$app->get("/todos/:id", function($id) use ($app){
		$todo = ORM::forTable('todos')->findOne($id);
		$app->render('todos.show', compact('todo'));
	});*/
# defines a route for the GET method
$app->get("/todos/:id/update/status/:status", function ($id, $status) use($app) {
    # We get the status code firts the status code they passed
    $status = ORM::forTable('lookup')->where(['type' => 'todo.status', 'value' => $status])->findOne();
    # Then we get the corresponding todo item for the id
    $todo = ORM::forTable('todos')->findOne($id);
    # We update its code value		//$todo->status = $status->code;
    $todo->set('status', $status->code);
    # We save it into the database
    $todo->save();
    //var_dump(ORM::get_query_log());
    $app->redirect('/todos');
})->conditions(['status' => '(new|working|done|archived)'])->name('todo.update');
# Actually runs the application
$app->run();
Exemplo n.º 21
0
<?php

$p = _get('p') ?: 1;
$limit = 100;
$offset = ($p - 1) * 100;
$orm = ORM::forTable('answer')->join('question', array('answer.q_id', '=', 'question.id'))->join('user', array('answer.user', '=', 'user.name'))->select('*')->select('answer.id', 'aid')->offset($offset)->limit($limit);
if ($upvote = _get('upvote')) {
    $orm->whereGt('answer.vote', $upvote);
}
if ($kw = _get('kw')) {
    $orm->whereRaw('(question.title like ? or user.nick_name like ?)', array("%{$kw}%", "%{$kw}%"));
}
$answers = $orm->findMany();
$style = _get('style', 'normal');
$title = '知乎箱底';
include dirname(__DIR__) . '/view/admin.phtml';
Exemplo n.º 22
0
 public function validateContact($contact = array(), $action = 'create')
 {
     $errors = array();
     if (!empty($contact['notes'])) {
         $notes = $contact['notes'];
         unset($contact['notes']);
     }
     $contact = filter_var_array($contact, array('id' => FILTER_SANITIZE_NUMBER_INT, 'firstname' => FILTER_SANITIZE_STRING, 'lastname' => FILTER_SANITIZE_STRING, 'email' => FILTER_SANITIZE_EMAIL, 'phone' => FILTER_SANITIZE_STRING), false);
     switch ($action) {
         case 'update':
             if (empty($contact['id'])) {
                 $errors['contact'][] = array('field' => 'id', 'message' => 'ID cannot be empty on update');
                 break;
             }
             if (isset($contact['firstname']) && empty($contact['firstname'])) {
                 $errors['contact'][] = array('field' => 'firstname', 'message' => 'First name cannot be empty');
             }
             if (isset($contact['email'])) {
                 if (empty($contact['email'])) {
                     $errors['contact'][] = array('field' => 'email', 'message' => 'Email address cannot be empty');
                     break;
                 }
                 if (false === filter_var($contact['email'], FILTER_VALIDATE_EMAIL)) {
                     $errors['contact'][] = array('field' => 'email', 'message' => 'Email address is invalid');
                     break;
                 }
                 // Test for unique email
                 $results = \ORM::forTable('contacts')->where('email', $contact['email'])->findOne();
                 if (false !== $results && $results->id !== $contact['id']) {
                     $errors['contact'][] = array('field' => 'email', 'message' => 'Email address already exists');
                 }
             }
             break;
         case 'create':
         default:
             if (empty($contact['firstname'])) {
                 $errors['contact'][] = array('field' => 'firstname', 'message' => 'First name cannot be empty');
             }
             if (empty($contact['email'])) {
                 $errors['contact'][] = array('field' => 'email', 'message' => 'Email address cannot be empty');
             } elseif (false === filter_var($contact['email'], FILTER_VALIDATE_EMAIL)) {
                 $errors['contact'][] = array('field' => 'email', 'message' => 'Email address is invalid');
             } else {
                 // Test for unique email
                 $results = \ORM::forTable('contacts')->where('email', $contact['email'])->count();
                 if ($results > 0) {
                     $errors['contact'][] = array('field' => 'email', 'message' => 'Email address already exists');
                 }
             }
             break;
     }
     if (!empty($notes) && is_array($notes)) {
         $noteCount = count($notes);
         for ($i = 0; $i < $noteCount; $i++) {
             $noteErrors = $this->validateNote($notes[$i], $action);
             if (!empty($noteErrors)) {
                 $errors['notes'][] = $noteErrors;
                 unset($noteErrors);
             }
         }
     }
     return $errors;
 }
Exemplo n.º 23
0
function getMainCat5ById($id, $id2, $id3, $id4)
{
    $query = ORM::forTable("sms_subsubcat")->where("PROJID", $id)->where("cat2Id", $id2)->where("cat3Id", $id3)->where("cat4Id", $id4)->whereNotEqual("cat5Id", 0)->orderByAsc("PROJID")->findMany();
    return $query;
}
Exemplo n.º 24
0
            <div class="navbar-header">
                <button type="button" class="navbar-toggle collapsed" data-toggle="collapse" data-target="#navbar" aria-expanded="false" aria-controls="navbar">
                    <span class="sr-only">Toggle navigation</span>
                    <span class="icon-bar"></span>
                    <span class="icon-bar"></span>
                    <span class="icon-bar"></span>
                </button>
                <a class="navbar-brand" href="<?php 
echo $config['url'];
?>
">Exs Pērles</a>
            </div>

            <div id="navbar" class="navbar-collapse collapse">
                <?php 
$count = ORM::forTable('perles_posts')->where('active', 0)->count();
?>
                <ul class="nav navbar-nav navbar-right">
                    <li<?php 
if ($view === 'home') {
    echo ' class="active"';
}
?>
><a href="<?php 
echo $config['url'];
?>
">Sākums</a></li>
                    <li<?php 
if ($view === 'wall') {
    echo ' class="active"';
}
Exemplo n.º 25
0
if (!empty($_POST)) {
    // Create a new contact object
    $contact = ORM::forTable('contact')->create();
    // SHOULD BE MORE ERROR CHECKING HERE!
    // Set the properties of the object
    $contact->name = $_POST['name'];
    $contact->email = $_POST['email'];
    // Save the object to the database
    $contact->save();
    // Redirect to self.
    header('Location: ' . basename(__FILE__));
    exit;
}
// Get a list of all contacts from the database
$count = ORM::forTable('contact')->count();
$contact_list = ORM::forTable('contact')->findMany();
?>

<html>
    <head>
        <title>Idiorm Demo</title>
    </head>

    <body>
    
        <h1>Idiorm Demo</h1>

        <h2>Contact List (<?php 
echo $count;
?>
 contacts)</h2>
Exemplo n.º 26
0
 /**
  * Table query
  *
  * @param string $table table name
  * @return Query 
  */
 private function T($table)
 {
     return \ORM::forTable($this->prefix($table));
 }
    $workoutExerciseSet->load = $requestParams->load;
    if ($workoutExerciseSet->save()) {
        $app->response->body(json_encode(["workout_exercise_set_id" => $workoutExerciseSet->workout_exercise_set_id]));
    } else {
        $app->response()->setStatus(500);
    }
});
/**
 * PUT request for workout exercise
 */
$app->put('/workoutexercise/:workout_exercise_id/sets/:workout_exercise_set_id', function ($workoutExerciseId, $workoutExerciseSetId) use($app) {
    $requestBody = $app->request()->getBody();
    $requestParams = json_decode($requestBody);
    $workoutExerciseSet = ORM::forTable('workout_exercise_sets')->findOne($workoutExerciseSetId);
    $workoutExerciseSet->set_number = $requestParams->set_number;
    $workoutExerciseSet->repetitions = $requestParams->repetitions;
    $workoutExerciseSet->load_type_id = $requestParams->load_type_id;
    $workoutExerciseSet->load = $requestParams->load;
    if (!$workoutExerciseSet->save()) {
        $app->response()->setStatus(500);
    }
});
/**
 * DELETE request for workout exercise
 */
$app->delete('/workoutexercise/:workout_exercise_id/sets/:workout_exercise_set_id', function ($workoutExerciseId, $workoutExerciseSetId) use($app) {
    $workoutExercise = ORM::forTable('workout_exercise_sets')->findOne($workoutExerciseSetId);
    if (!$workoutExercise->delete()) {
        $app->response()->setStatus(500);
    }
});
Exemplo n.º 28
-1
<?php

/**
 * Get auth data
 */
$password = ORM::forTable('perles_password')->findOne();
$tokens = ORM::forTable('perles_tokens');
/**
 * Persistent login
 */
if (isset($_COOKIE['persistent']) && !isset($_SESSION['login'])) {
    /**
     * Get the token from cookies
     */
    $_token = $_COOKIE['persistent'];
    /**
     * Loop through all tokens from database and check them
     * If true, stop.
     */
    $_login = false;
    foreach ($tokens->findMany() as $token) {
        if (password_verify($_token, $token->hash)) {
            $_login = true;
            break;
        }
    }
    if ($_login) {
        /**
         * Login and redirect to homepage
         */
        $_SESSION['login'] = true;
Exemplo n.º 29
-1
    if ($isUniqueName) {
        $exercise = ORM::forTable('exercises')->create();
        $exercise->name = $requestParams->name;
        $exercise->description = $requestParams->description;
        $exercise->save();
        echo json_encode(["exercise_id" => $exercise->id()]);
    }
});
/**
 * PUT request for exercises
 */
$app->put('/exercises/:id', function ($id) use($app) {
    $requestBody = $app->request()->getBody();
    $requestParams = json_decode($requestBody);
    $uniqueCheck = ORM::forTable('exercises')->where('name', $requestParams->name)->findOne();
    $isUniqueName = empty($uniqueCheck) || $uniqueCheck['exercise_id'] == $id;
    if ($isUniqueName) {
        $exercise = ORM::forTable('exercises')->findOne($id);
        $exercise->name = $requestParams->name;
        $exercise->description = $requestParams->description;
        $exercise->save();
        echo json_encode(["name" => $requestParams->name, "description" => $requestParams->description]);
    }
});
/**
 * DELETE request for exercises
 */
$app->delete('/exercises/:id', function ($id) use($app) {
    $exercise = ORM::forTable('exercises')->findOne($id);
    return $exercise->delete();
});
Exemplo n.º 30
-2
            if ($upload) {
                $ext = explode('.', $f['name']);
                $ext = end($ext);
                $dir = getcwd() . '/assets/images/';
                $filePath = $dir . strtotime($date) . '.' . $ext;
                umask(0);
                move_uploaded_file($image, $filePath);
                // Just to keep stuff consistent, I'm replacing image with the relative url to the image.
                $image = $config['url'] . '/assets/images/' . basename($filePath);
            } else {
                $_SESSION['message'] = 'Attela augšupielādes kļūda. Attelam jābūt mazakam par ' . $maxsize . 'mb.';
            }
            /**
             * Save the image in the database
             */
            $perle = ORM::forTable('perles_posts')->create();
            $perle->image = protocolRelativeUrl($image);
            $perle->description = htmlspecialchars($description);
            $perle->active = $setToActive && isAdmin() ? 1 : 0;
            $perle->ip = $_SERVER['REMOTE_ADDR'];
            $perle->setExpr('created', 'NOW()');
            $perle->save();
            $_SESSION['message'] = $setToActive && isAdmin() ? 'Attēls pievienots.' : 'Attēls pievienots apskatīšanai.';
        } else {
            $_SESSION['message'] = 'Tas nav attēls.';
        }
    }
    redirect($config['url'] . '/' . $view);
}
$config['title-affix'] = "Iesūti savu bildi";
require 'layout/header.php';