diff --git a/app/src/main/java/com/campusaula/edbole/kanban_clone_android/ui/CreateProjectActivity.kt b/app/src/main/java/com/campusaula/edbole/kanban_clone_android/ui/CreateProjectActivity.kt index c516c8d..a0e80e4 100644 --- a/app/src/main/java/com/campusaula/edbole/kanban_clone_android/ui/CreateProjectActivity.kt +++ b/app/src/main/java/com/campusaula/edbole/kanban_clone_android/ui/CreateProjectActivity.kt @@ -1,13 +1,34 @@ package com.campusaula.edbole.kanban_clone_android.ui +import android.content.Intent import android.os.Bundle +import android.util.Log +import android.widget.AutoCompleteTextView +import android.widget.Button +import android.widget.MultiAutoCompleteTextView +import android.widget.Toast import androidx.activity.enableEdgeToEdge import androidx.appcompat.app.AppCompatActivity import androidx.core.view.ViewCompat import androidx.core.view.WindowInsetsCompat +import androidx.lifecycle.lifecycleScope import com.campusaula.edbole.kanban_clone_android.R +import com.campusaula.edbole.kanban_clone_android.kanban.ProjectCreate +import com.campusaula.edbole.kanban_clone_android.network.ApiService +import com.campusaula.edbole.kanban_clone_android.network.RetrofitInstance +import com.google.android.material.floatingactionbutton.FloatingActionButton +import kotlinx.coroutines.launch + class CreateProjectActivity : AppCompatActivity() { + + private lateinit var api: ApiService + + private lateinit var returnActionButton : FloatingActionButton + private lateinit var newProjectName : AutoCompleteTextView + private lateinit var newProjectDescription : AutoCompleteTextView + private lateinit var newProjectCreateButton : Button + override fun onCreate(savedInstanceState: Bundle?) { super.onCreate(savedInstanceState) enableEdgeToEdge() @@ -17,5 +38,51 @@ class CreateProjectActivity : AppCompatActivity() { v.setPadding(systemBars.left, systemBars.top, systemBars.right, systemBars.bottom) insets } + + api = RetrofitInstance.getRetrofit(applicationContext).create(ApiService::class.java) + + returnActionButton = findViewById(R.id.returnActionButton) + returnActionButton.setOnClickListener { finish() } + + newProjectName = findViewById(R.id.newProjectName) + newProjectDescription = findViewById(R.id.newProjectDescription) + + newProjectCreateButton = findViewById(R.id.newProjectCreateButton) + newProjectCreateButton.setOnClickListener { + val projectName = newProjectName.text.toString() + val projectDescription = newProjectDescription.text.toString() + + if (projectName.isEmpty() || projectDescription.isEmpty()) { + Toast + .makeText(this, "Please fill in all fields", Toast.LENGTH_SHORT) + .show() + return@setOnClickListener + } + + lifecycleScope.launch { + + val projectCreate : ProjectCreate = ProjectCreate(projectName, projectDescription) + val response = api.createProject(projectCreate) + + if (response.isSuccessful){ + Toast + .makeText(this@CreateProjectActivity, "Project created successfully", Toast.LENGTH_SHORT) + .show() + Log.d("CreateProjectActivity", "Created project: ${response.body()}") + startActivity(Intent(this@CreateProjectActivity, MainActivity::class.java)) + } else { + Log.e("CreateProjectActivity", "Error creating project: ${response.code()} - ${response.message()}") + Toast + .makeText(this@CreateProjectActivity, "Error creating project", Toast.LENGTH_SHORT) + .show() + } + + } + + } + + + + } } \ No newline at end of file diff --git a/app/src/main/res/layout/activity_create_project.xml b/app/src/main/res/layout/activity_create_project.xml index 68de28d..e833cd0 100644 --- a/app/src/main/res/layout/activity_create_project.xml +++ b/app/src/main/res/layout/activity_create_project.xml @@ -7,4 +7,89 @@ android:layout_height="match_parent" tools:context=".ui.CreateProjectActivity"> + + + + + + + + + + + + +