Skip to content

Instantly share code, notes, and snippets.

View elmarputz's full-sized avatar

Elmar Putz elmarputz

  • Studio Mitte Digital Media GmbH
  • Linz, Austria
View GitHub Profile
@elmarputz
elmarputz / index.html
Created March 13, 2017 12:13
Bookstore index
<!DOCTYPE html>
<html ng-app='bookstore'>
<head>
<meta charset="utf-8">
<title>Bookstore</title>
<!-- Latest compiled and minified CSS -->
<link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/css/bootstrap.min.css" integrity="sha384-BVYiiSIFeK1dGmJRAkycuHAHRg32OmUcww7on3RYdg4Va+PmSTsz/K68vbdEjh4u" crossorigin="anonymous">
@elmarputz
elmarputz / booklist.php
Created March 18, 2017 09:47
booklist.php
<? use Bookshop\ShoppingCart, Bookshop\Util; ?>
<table class="table">
<thead>
<tr>
<th>
Title
</th>
<th>
Author
@elmarputz
elmarputz / login.php
Created March 18, 2017 12:46
login.php
<?php
use Bookshop\AuthenticationManager;
use Bookshop\Util;
if (AuthenticationManager::isAuthenticated()) {
Util::redirect("index.php");
}
$userName = isset($_REQUEST['userName']) ? $_REQUEST['userName'] : null;
?>
@elmarputz
elmarputz / book_form.html
Created March 24, 2017 09:39
book_form.html
<h2>Administrationsbereich</h2>
<div class="container">
<div class="row">
<div class="col-md-6">
<h3 ng-hide="isEditMode">Neues Buch anlegen</h3>
<h3 ng-show="isEditMode">Buch editieren</h3>
<form name="bookForm" novalidate>
<div id="navbar" class="navbar-collapse collapse">
<form class="navbar-form navbar-right" ng-submit="login()" ng-controller="LoginCtrl" ng-show="!loggedIn">
<div ng-class="{ 'alert': flash, 'alert-success': flash.type === 'success', 'alert-danger': flash.type === 'error' }" ng-if="flash" ng-bind="flash.message"></div>
<div class="form-group">
<input type="text" placeholder="User" class="form-control" ng-model="username">
</div>
<div class="form-group">
<input type="password" placeholder="Password" class="form-control" ng-model="password">
</div>
<input type="submit" class="btn btn-success" value="Login">
// PAGES Routes
Router::scope('/', ['controller' => 'Pages'], function($routes) {
$routes->extensions('json');
$routes->connect('/forbidden', ['action'=>'forbidden']);
$routes->connect('/unauthorized', ['action'=>'unauthorized']);
});
@elmarputz
elmarputz / Controller.php
Last active April 29, 2017 10:34
Controller.php
/**
*
* @param string $nameOnCard
* @param integer $cardNumber
* @return bool
*/
protected function processCheckout(string $nameOnCard = null, string $cardNumber = null) : bool {
$errors = array();
$nameOnCard = trim($nameOnCard);
@elmarputz
elmarputz / footer.php
Created April 29, 2017 09:47
footer.php
@elmarputz
elmarputz / checkout.php
Created April 29, 2017 10:22
checkout.php
<?php
use Bookshop\ShoppingCart;
use Bookshop\Util;
use Bookshop\AuthenticationManager;
$nameOnCard = isset($_REQUEST['nameOnCard']) ? $_REQUEST['nameOnCard'] : null;
$cardNumber = isset($_REQUEST['cardNumber']) ? $_REQUEST['cardNumber'] : null;
require_once('views/partials/header.php');
@elmarputz
elmarputz / DataManager_mock.php
Created April 29, 2017 10:47
DataManager_mock.php
<?php
namespace Data;
use Bookshop\Category;
use Bookshop\Book;
use Bookshop\User;
/**
* DataManager