Skip to content

Commit e748da7

Browse files
committed
Codi JC44 - Guardant en la BBDD les dades
1 parent 813948d commit e748da7

File tree

6 files changed

+52
-18
lines changed

6 files changed

+52
-18
lines changed

.idea/deploymentTargetSelector.xml

Lines changed: 0 additions & 11 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

.idea/misc.xml

Lines changed: 0 additions & 1 deletion
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

app/src/main/java/es/cibernarium/jetpackcomposeapp/MainActivity.kt

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -58,6 +58,7 @@ class MainActivity : ComponentActivity() {
5858
lateinit var usersDBHelper: miSQLiteHelper
5959
override fun onCreate(savedInstanceState: Bundle?) {
6060
super.onCreate(savedInstanceState)
61+
usersDBHelper = miSQLiteHelper(this) //El contexte o scope sera this
6162
setContent {
6263
JetpackComposeAppTheme {
6364
// A surface container using the 'background' color from the theme
@@ -73,7 +74,7 @@ class MainActivity : ComponentActivity() {
7374
.verticalScroll(scrollState)
7475
) {
7576
//PrimeraPantalla()
76-
NavegacioApp()
77+
NavegacioApp(usersDBHelper)
7778
}
7879
}
7980
}
Lines changed: 43 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,43 @@
1+
package es.cibernarium.jetpackcomposeapp
2+
3+
import android.content.ContentValues
4+
import android.content.Context
5+
import android.database.sqlite.SQLiteDatabase
6+
import android.database.sqlite.SQLiteOpenHelper
7+
import android.util.Log
8+
9+
class miSQLiteHelper(context: Context):SQLiteOpenHelper (
10+
//context, nom bases de dades, cursores si no són estandards, versió
11+
context,"ciber.db",null,1) {
12+
//Funcions obligatories per a Sqlite
13+
override fun onCreate(db: SQLiteDatabase?) {
14+
val ordreCreacio = "CREATE TABLE users " +
15+
"(_id INTEGER PRIMARY KEY AUTOINCREMENT," +
16+
"email TEXT," +
17+
"clau TEXT)"
18+
db!!.execSQL(ordreCreacio) //Afegim els !! per asegurar-li que no serà NULL
19+
}
20+
21+
override fun onUpgrade(db: SQLiteDatabase?, oldVersion: Int, newVersion: Int) {
22+
//Devant una actualització de versió en un entorn de test podriem borrar la taula i tornar a crearla
23+
val ordreBorrat = "DROP TABLE IF EXISTS users"
24+
db!!.execSQL(ordreBorrat)
25+
onCreate(db)
26+
}
27+
28+
//Funcions complementaries
29+
fun afegirDades(email:String,clau:String){
30+
//Crearem un element ContentValues que consisteix en un mapa
31+
// format per conjunts de claus i valors
32+
val dades = ContentValues()
33+
dades.put("email",email) //Crearem el camp o clau nom i li asignem
34+
// el valor amb la variable rebuda nom
35+
dades.put("clau",clau)
36+
37+
//Guardarem ara les dades
38+
val db = this.writableDatabase //Demanem accés en modo escriptura
39+
//Nom taula, comportament del nullColumnHack, dades
40+
db.insert("users",null, dades)
41+
db.close() //Tanquem la connexió amb la bd
42+
}
43+
}

app/src/main/java/es/cibernarium/jetpackcomposeapp/navegacio/NavegacioApp.kt

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -6,20 +6,21 @@ import androidx.navigation.compose.NavHost
66
import androidx.navigation.compose.composable
77
import androidx.navigation.compose.rememberNavController
88
import androidx.navigation.navArgument
9+
import es.cibernarium.jetpackcomposeapp.miSQLiteHelper
910
import es.cibernarium.jetpackcomposeapp.pantalles.LoginScreen
1011
import es.cibernarium.jetpackcomposeapp.pantalles.PrimeraPantalla
1112
import es.cibernarium.jetpackcomposeapp.pantalles.SegonaPantalla
1213
import es.cibernarium.jetpackcomposeapp.pantalles.SplashScreen
1314

1415
@Composable
15-
fun NavegacioApp(){
16+
fun NavegacioApp(usersDBHelper: miSQLiteHelper){
1617
val navController = rememberNavController()
1718
NavHost(navController = navController, startDestination = PantallesApp.SplashScreen.route) {
1819
composable(route = PantallesApp.SplashScreen.route) {
1920
SplashScreen(navController)
2021
}
2122
composable(route = PantallesApp.LoginScreen.route) {
22-
LoginScreen(navController)
23+
LoginScreen(navController,usersDBHelper)
2324
}
2425
composable(route = PantallesApp.PrimeraPantalla.route) {
2526
PrimeraPantalla(navController)

app/src/main/java/es/cibernarium/jetpackcomposeapp/pantalles/LoginScreen.kt

Lines changed: 4 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -36,9 +36,10 @@ import androidx.compose.ui.text.input.PasswordVisualTransformation
3636
import androidx.compose.ui.text.input.VisualTransformation
3737
import androidx.compose.ui.unit.dp
3838
import androidx.navigation.NavController
39+
import es.cibernarium.jetpackcomposeapp.miSQLiteHelper
3940

4041
@Composable
41-
fun LoginScreen(navController: NavController){
42+
fun LoginScreen(navController: NavController,usersDBHelper: miSQLiteHelper){
4243
//Quan la variable sigui true loguejara; False mostrarà per crear usuari
4344
val showLoginForm = rememberSaveable {
4445
mutableStateOf(true)
@@ -64,8 +65,8 @@ fun LoginScreen(navController: NavController){
6465
UserForm(
6566
isCreateAccount = true
6667
) { email, clau ->
67-
//Afegim un log per saber si és crea un compte
68-
Log.d("Refugios Libres", "Creant un compte amb $email i $clau")
68+
usersDBHelper.afegirDades(email.toString(),clau.toString())
69+
Log.d("Refugios Libres", "Guardant dades $email i $clau")
6970
}
7071
}
7172

0 commit comments

Comments
 (0)