diff --git a/Android/app/build.gradle b/Android/app/build.gradle index 8968c27..fa8ec02 100644 --- a/Android/app/build.gradle +++ b/Android/app/build.gradle @@ -34,7 +34,6 @@ android { } dependencies { - implementation 'androidx.core:core-ktx:1.7.0' implementation 'androidx.appcompat:appcompat:1.6.1' implementation 'com.google.android.material:material:1.11.0' diff --git a/Android/app/src/main/AndroidManifest.xml b/Android/app/src/main/AndroidManifest.xml index c0ca71d..5936808 100644 --- a/Android/app/src/main/AndroidManifest.xml +++ b/Android/app/src/main/AndroidManifest.xml @@ -23,5 +23,6 @@ + \ No newline at end of file diff --git a/Android/app/src/main/java/com/example/mathseduc/MainActivity.kt b/Android/app/src/main/java/com/example/mathseduc/MainActivity.kt index 67d9bf6..1645d32 100644 --- a/Android/app/src/main/java/com/example/mathseduc/MainActivity.kt +++ b/Android/app/src/main/java/com/example/mathseduc/MainActivity.kt @@ -22,6 +22,8 @@ class MainActivity : AppCompatActivity() { btnSolo.setOnClickListener { // Traitement pour le bouton Solo // Vous pouvez ajouter le code correspondant ici + val intent = Intent(this, QuizMultiActivity::class.java) + startActivity(intent) } btnMulti.setOnClickListener { diff --git a/Android/app/src/main/java/com/example/mathseduc/MultiActivity.kt b/Android/app/src/main/java/com/example/mathseduc/MultiActivity.kt index 3d68480..e114a92 100644 --- a/Android/app/src/main/java/com/example/mathseduc/MultiActivity.kt +++ b/Android/app/src/main/java/com/example/mathseduc/MultiActivity.kt @@ -7,11 +7,9 @@ import android.util.Log import android.view.LayoutInflater import android.view.View import android.view.ViewGroup -import android.widget.ArrayAdapter -import android.widget.Button -import android.widget.ListView -import android.widget.TextView +import android.widget.* import androidx.appcompat.app.AppCompatActivity +import com.example.mathseduc.controllers.ControllerChapter import com.example.mathseduc.controllers.ControllerLobby import com.example.mathseduc.controllers.ControllerUtiliser import com.example.mathseduc.models.Lobby @@ -35,17 +33,22 @@ class MultiActivity : AppCompatActivity() { listView.adapter = adapter listView.setOnItemClickListener { _, _, position, _ -> - val formDataBuilder = MultipartBody.Builder().setType(MultipartBody.FORM) - formDataBuilder.addFormDataPart("idplayer", MainActivity.idPlayerConnected.toString()) - formDataBuilder.addFormDataPart("idlobby", serverList[position].id.toString()) - formDataBuilder.addFormDataPart("playertime", "0") - ControllerUtiliser.createUtiliserByIdLobby(formDataBuilder) - - val intent = Intent(this, ServerDetailsActivity::class.java) - intent.putExtra("serverName", serverList[position].name) - intent.putExtra("lobbyId", serverList[position].id) - startActivity(intent) + if (ControllerLobby.getNbPlayerInLobby(serverList[position].id) < serverList[position].nbplayers){ + val formDataBuilder = MultipartBody.Builder().setType(MultipartBody.FORM) + formDataBuilder.addFormDataPart("idplayer", MainActivity.idPlayerConnected.toString()) + formDataBuilder.addFormDataPart("idlobby", serverList[position].id.toString()) + formDataBuilder.addFormDataPart("playertime", "0") + + ControllerUtiliser.createUtiliserByIdLobby(formDataBuilder) + + val intent = Intent(this, ServerDetailsActivity::class.java) + intent.putExtra("serverName", serverList[position].name) + intent.putExtra("lobbyId", serverList[position].id) + startActivity(intent) + } else { + Toast.makeText(this, "Oh nan, le serveur est déja plein ! Réessayer plus tard.", Toast.LENGTH_SHORT).show() + } } } else { Log.e("MultiActivity", "Error fetching server list") @@ -97,10 +100,11 @@ class MultiActivity : AppCompatActivity() { val difficulty = currentLobbyView!!.findViewById(R.id.difficulty) name.text = mLobbies[position].name - nbplayers.text = mLobbies[position].nbplayers.toString() - idchapter.text = mLobbies[position].idchapter.toString() + nbplayers.text = ControllerLobby.getNbPlayerInLobby(mLobbies[position].id).toString() + "/" + mLobbies[position].nbplayers.toString() + idchapter.text = ControllerChapter.getChapterNameById(mLobbies[position].idchapter) difficulty.text = mLobbies[position].difficulty.toString() + // Visual Feedback for Selection /* if (selectedItem == position) diff --git a/Android/app/src/main/java/com/example/mathseduc/QuizMultiActivity.kt b/Android/app/src/main/java/com/example/mathseduc/QuizMultiActivity.kt new file mode 100644 index 0000000..0404e7b --- /dev/null +++ b/Android/app/src/main/java/com/example/mathseduc/QuizMultiActivity.kt @@ -0,0 +1,64 @@ +package com.example.mathseduc + +import android.os.Bundle +import android.os.CountDownTimer +import android.widget.Button +import android.widget.ProgressBar +import android.widget.Toast +import androidx.appcompat.app.AppCompatActivity + +class QuizMultiActivity : AppCompatActivity() { + + private lateinit var countDownTimer: CountDownTimer + + var progressBarValue : Int = 0 + var chronoValue : Int = 0 + + + + override fun onCreate(savedInstanceState: Bundle?) { + super.onCreate(savedInstanceState) + setContentView(R.layout.activity_quiz_multi) + + var progressBar1 = findViewById(R.id.progressBar1) + var chrono = findViewById(R.id.chrono) + + progressBar1.max = 100 + chrono.max = 30 + + + + var incrementeButton = findViewById