Implemented icons for basket products

This commit is contained in:
Kevin Frantz 2018-07-15 16:50:26 +02:00
parent 1492282ae5
commit 306c38c2b2
4 changed files with 20 additions and 7 deletions

View File

@ -4,21 +4,24 @@ Coding challenge for a online shop
### requirements
1. Create a web application with PHP which works like a really small online shop. ✓
2. Create a database with at least 20 products automatically per script. ✓
3. Create a product listing which display all products from the database. &#10003; <br> The following information are required:
3. Create a product listing which display all products from the database. &#10003;
<br> The following information are required:
- price net and gross &#10003;
- image &#10003;
- product name &#10003;
- color &#10003;
4. Add a “to the basket” button to each product in the listing. &#10003;
5. Make the product basket work and display all products which are in the basket as a list with
small images.
small images. &#10003;
6. Create a login and registration with e-mail address, password and a name. &#10003;
7. The login should be session based. &#10003;
8. Create a checkout which is shown when the user is logged in. &#10003;
9. The user should be able to choose between 2 payment methods. Call them method1 &#10003; and
9. The user should be able to choose between 2 payment methods. &#10003;
<br> Call them method1 &#10003; and
method2 &#10003;.
10. Store the order at the database. &#10003;
11. Add a color filter to the product list. The user should be able to filter the listing with the existing colors. &#10003;
11. Add a color filter to the product list.&#10003;
<br> The user should be able to filter the listing with the existing colors. &#10003;
### specifications
- Please use PHP &#10003;, MySQL &#10003; and HTML &#10003;. You can also use CSS, JavaScript, Bootstrap &#10003; and jQuery.
- Save your code online at github. &#10003;
@ -27,14 +30,14 @@ method2 &#10003;.
- Use transactions if it makes sense. &#10003;
- Please cover your code with unit tests. &#10003;
### time frame
one weekend
- one weekend
## start
To run the program execute:
```bash
bash ./start.sh
```
### Attention
This is a demo program; Everytime when you start the demo the database will be reset.
This is a demo program; Everytime when you restart the demo the database will be reset.
### requirements
The start.sh file needs docker and docker-compose.
@ -44,4 +47,4 @@ To run the tests execute:
```bash
bash ./test.sh
```
Tests just exist for the core and the entities. UnitTest you will find in the directory of the unit.
Tests just exist for the core, the entities and some other files. UnitTest you will find in the directory of the unit.

View File

@ -22,5 +22,7 @@ interface ImageInterface
* @return string
*/
public function getThumbnail():string;
public function getIcon():string;
}

View File

@ -31,5 +31,11 @@ final class UrlImage implements ImageInterface
{
$this->path = $path;
}
public function getIcon(): string
{
return str_replace('200/300', '50/50', $this->path);
}
}

View File

@ -11,6 +11,7 @@ basket
<th>price(net)</th>
<th>tax (%)</th>
<th>price (gross)</th>
<th>image</th>
</tr>
{% for product in basket.products %}
<tr>
@ -19,6 +20,7 @@ basket
<td>{{product.price.netto.float}} {{product.price.netto.symbol}}</td>
<td>{{product.price.tax}}</td>
<td>{{product.price.gross.float}} {{product.price.gross.symbol}}</td>
<td><img src="{{product.image.icon }}" /></td>
</tr>
{% endfor %}
</table>