Skip to content
Snippets Groups Projects
Commit 989dfa22 authored by Nicolas Dausque's avatar Nicolas Dausque
Browse files

mergation

parents a81f67c3 6ddb267e
Branches
No related tags found
No related merge requests found
Showing
with 126 additions and 27 deletions
......@@ -19,7 +19,7 @@ Prise de stupeur et de tremblements, la dév sénior du pôle, Eve D. Lopper, at
Premièrement, ~~on va~~ vous allez faire du Java, parce que le Java, c'est connu.
Rien de bien compliqué pour commencer, juste un singleton [comme il ne faut plus en faire](https://en.wikipedia.org/wiki/Singleton_pattern).
Vous vous en doutez, vu que c'est du Java et pas du Kotlin comme annoncé, vous pouvez le faire un peu où vous voulez. **MAIS** sachez que vous en quand même besoin dans un futur très proche, donc on vous conseille de le faire dans le projet, dans les sources côté java.
Vous vous en doutez, vu que c'est du Java et pas du Kotlin comme annoncé, vous pouvez le faire un peu où vous voulez. **MAIS** sachez que vous en aurez quand même besoin dans un futur très proche, donc on vous conseille de le faire dans le projet, dans les sources côté java.
##### TODO (vous pouvez les cocher même si ça ne sert à rien) :
- [ ] Créer une classe _Image_ qui représente une image (fallait le préciser quand même) et qui comporte un titre _title_ et un url _url_
......
package com.tpKotlin.glhf.tpkotlin.dao
import com.tpKotlin.glhf.tpkotlin.entity.Meme
interface ImageAccessorDao {
fun getImg(nom: String): Any
fun getAll(): List<Any>
fun saveMeme(meme: Meme)
}
\ No newline at end of file
package com.tpKotlin.glhf.tpkotlin.dao
import com.tpKotlin.glhf.tpkotlin.entity.FavDir
import com.tpKotlin.glhf.tpkotlin.entity.Meme
import com.tpKotlin.glhf.tpkotlin.tools.FileManager
class ImageAccessorDaoImpl : ImageAccessorDao {
override fun getImg(nom: String) {
Thread.sleep(1000L) //celui qui retire çeci sera maudit pendant 3 generations (la sienne incluse)
return LimageAssocieeAuNomDansLaPseudoBase
return
}
override fun getAll(): List<Any> {
var liste = FavDir.getAll()
for (img in liste) {
this.getImg(img.name);
this.getImg("img.name");
}
return liste;
}
override fun saveMeme(meme: Meme) {
FileManager.saveMemeInFile(meme.nom, meme.url)
}
}
\ No newline at end of file
......@@ -2,6 +2,7 @@ package com.tpKotlin.glhf.tpkotlin.entity
//import javax.persistence.*
import java.time.LocalDateTime
import com.tpKotlin.glhf.tpkotlin.tools.FileManager
//import com.tpKotlin.glhf.tpkotlin.extension.toSlug
......@@ -31,16 +32,22 @@ import java.time.LocalDateTime
object FavDir {
val name: String = "FavDir"
val list: MutableList<String> = mutableListOf("hdlof oods q")
init {
println("Dossier de favoris crée")
if (FileManager.thereIsSomethingInTheFile()) {
FileManager.loadAllFromFile()
}
}
fun addMeme(src: String) {
list.add(src)
FileManager.saveMemeInFile(src, src)
}
fun rmMeme(src: String) {
list.remove(src)
fun addMeme(meme: Meme) {
//TODO ajouterd dans la liste de Meme et pas de String
FileManager.saveMemeInFile(meme.nom, meme.url)
}
@JvmStatic
......@@ -56,8 +63,8 @@ object FavDir {
fun getAll(): MutableList<String> {
return list
}
}
data class Meme(var nom: String, var url: String)
package com.tpKotlin.glhf.tpkotlin.tools
import java.io.File
import com.tpKotlin.glhf.tpkotlin.entity.FavDir
import com.tpKotlin.glhf.tpkotlin.entity.Meme
import java.io.FileOutputStream
object FileManager {
val FILE_NAME = "monTonton.sappellePasRichard"
val PATH_TO_FILE = "src/main/resources/files/"
fun thereIsSomethingInTheFile(): Boolean {
File(PATH_TO_FILE + FILE_NAME).bufferedReader().lines().use { lines ->
for (line in lines) {
if (!line.startsWith('#')) {
return true
}
}
}
return false
}
fun loadAllFromFile() {
lateinit var tab: List<String>
File(PATH_TO_FILE + FILE_NAME).forEachLine {
if (!it.startsWith('#')) {
tab = it.split(" ")
if (tab.size == 2)
FavDir.addMeme(Meme(tab[0], tab[1]))
}
}
}
fun saveMemeInFile(name: String, url: String) {
FileOutputStream(File(PATH_TO_FILE + FILE_NAME), true)
.bufferedWriter()
.use {
it.newLine()
it.write(name.trim() + " " + url.trim())
}
}
}
\ No newline at end of file
# Pour sauvegarder vos images pour qu'elles soient rechargées
# une fois l'appli redémarrée (déso on avait la flemme de faire
# une db), on stock les noms/url ici.
#
# FORMAT :
# titre url
#
test https://i.pinimg.com/originals/5e/df/c6/5edfc6638e8068fcae834432e5ef8d33.jpg
......@@ -24,8 +24,6 @@
</div>
</div>
</div>
</body>
</html>
\ No newline at end of file
......@@ -20,7 +20,7 @@
Meme name:
</div>
<div class="col-sm-auto">
<input type="text" name="Name" value="nom">
<input type="text" name="Name" placeholder="Nom">
</div>
</div><br>
<div class="row">
......@@ -28,7 +28,7 @@
URL img:
</div>
<div class="col-sm-auto">
<input type="text" name="URL" value="img">
<input type="text" name="URL" placeholder="URL de l'image">
</div>
</div><br>
<div class="row">
......
......@@ -8,7 +8,7 @@
<div class="container bar-content">
<div class="onglet-title">
<p class="title">
<img class="logo" src="https://upload.wikimedia.org/wikipedia/commons/thumb/7/74/Kotlin-logo.svg/1024px-Kotlin-logo.svg.png"/>
<a href="/index"><img class="logo" src="https://upload.wikimedia.org/wikipedia/commons/thumb/7/74/Kotlin-logo.svg/1024px-Kotlin-logo.svg.png"/></a>
TP Kotlin
</p>
</div>
......
......@@ -9,7 +9,32 @@
<title>${msg}</title>
</head>
<body>
<c:import url="/WEB-INF/jsp/footer.jsp"/>
<div class="vertical-center">
<div class="container">
<div class="row justify-content-center">
<h1>Bienvenue !</h1>
</div><br>
<div class="row justify-content-center">
<div class="col-md-7">
<p class="center">
Voici le TP Kotlin que tout le monde attendez ! (C'est le cas hein ?) <br><br>
Pour vous aider au cours de ces exercices fabuleux, trois coll&egrave;gues sont la pour vous donner un coup de main
ou des indications.<br><br>
Bien &eacute;videmment vous savez comment s'appellent ces trois personnes.<br> Mais on va quand m&ecirc;me vous donner leurs noms au cas
ou vous auriez un trou de m&eacute;moire.
</p>
</div>
</div><br>
<div class="row justify-content-center">
<div class="col-md-8">
<ul>
<li>Thomas (Le mec grand, dark, avec une barbe)</li>
<li>Nicolas (Il a des lunettes mais il peut quand m&ecirc;me te p&eacute;ter la gueule Ok ?!)</li>
<li>Valentin (Le dernier, tu devrais &ecirc;tre capable de deviner qui c'est)</li>
</ul>
</div>
</div>
</div>
</div>
</body>
</html>
\ No newline at end of file
......@@ -13,3 +13,11 @@
.center {
text-align: center;
}
.vertical-center {
min-height: 80%;
min-height: 80vh;
display: flex;
align-items: center;
}
\ No newline at end of file
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment