123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145 |
- // ignore_for_file: must_call_super, prefer_typing_uninitialized_variables
- import 'package:dio/dio.dart';
- import 'package:flutter/material.dart';
- import 'package:namer_app/footer.dart';
- import 'package:namer_app/header.dart';
- import 'package:namer_app/service/edit_user.dart';
- import '../globals.dart';
- // ignore: must_be_immutable
- class EditUserPage extends StatefulWidget {
- var id;
- EditUserPage({super.key, required this.id});
- @override
- State<EditUserPage> createState() => _EditUserPageState();
- }
- class _EditUserPageState extends State<EditUserPage>{
- var jsonList;
- @override
- void initState(){
- getData();
- }
- void getData() async {
- try {
- var response = await Dio()
- .get('http://localhost:8080/api/v1/users/${widget.id}',
- options: Options(headers: headers));
- if (response.statusCode == 200) {
- setState(() {
- jsonList = response.data['results'] as List;
- });
- } else {
- print(response.statusCode);
- }
- } catch (e) {
- print(e);
- }
- }
- @override
- Widget build(BuildContext context) {
- // TextEditingController usernameController = jsonList['username'];
- // TextEditingController nameController = jsonList['name'];
- var usernameController = TextEditingController();
- var nameController = TextEditingController();
- // usernameController.text = jsonList['username'];
- // nameController.text = jsonList['name'];
- return Scaffold(
- appBar: CustomAppbar(),
- backgroundColor: Colors.white,
- body: Column(
- mainAxisAlignment: MainAxisAlignment.spaceEvenly,
- children: [
- Center(
- child: Row(
- mainAxisAlignment: MainAxisAlignment.center,
- children: [
- Text(
- 'EDIT USER',
- style: TextStyle(color: Colors.black, fontSize: 48),
- ),
- ],
- )),
- Column(
- children: [
- Padding(
- padding: const EdgeInsets.all(8.0),
- child: SizedBox(
- width: 396,
- child: TextField(
- decoration: InputDecoration(
- border: OutlineInputBorder(),
- focusedBorder: OutlineInputBorder(
- borderRadius: BorderRadius.all(Radius.circular(12)),
- borderSide: BorderSide(color: Colors.black)),
- enabledBorder: OutlineInputBorder(
- borderRadius: BorderRadius.all(Radius.circular(12)),
- borderSide: BorderSide(color: Colors.black)),
- labelText: 'Enter Username', //todo get data
- labelStyle: TextStyle(color: Colors.black),
- filled: true,
- fillColor: Colors.white.withOpacity(0.25)),
- cursorColor: Colors.black,
- style: TextStyle(color: Colors.black),
- controller: usernameController,
- ),
- ),
- ),
- Padding(
- padding: const EdgeInsets.all(8.0),
- child: SizedBox(
- width: 396,
- child: TextField(
- decoration: InputDecoration(
- border: OutlineInputBorder(),
- focusedBorder: OutlineInputBorder(
- borderRadius: BorderRadius.all(Radius.circular(12)),
- borderSide: BorderSide(color: Colors.black)),
- enabledBorder: OutlineInputBorder(
- borderRadius: BorderRadius.all(Radius.circular(12)),
- borderSide: BorderSide(color: Colors.black)),
- labelText: 'Enter Name', //todo get data
- labelStyle: TextStyle(color: Colors.black),
- filled: true,
- fillColor: Colors.white.withOpacity(0.25)),
- cursorColor: Colors.black,
- style: TextStyle(color: Colors.black),
- controller: nameController,
- ),
- ),
- ),
- Padding(
- padding: const EdgeInsets.all(20.0),
- child: SizedBox(
- width: 396,
- height: 61,
- child: ElevatedButton(
- onPressed: () => edit(context, jsonList['id'], usernameController.text, nameController.text),
- style: ElevatedButton.styleFrom(
- backgroundColor: Colors.black, //todo putih lage
- side: BorderSide(color: Colors.white),
- shape: RoundedRectangleBorder(
- borderRadius: BorderRadius.circular(12.0),
- ),
- ),
- child: Text(
- 'Edit',
- style: TextStyle(color: Colors.white),
- ),
- ),
- ),
- ),
- ],
- ),
- ],
- ),
- bottomNavigationBar: Footer(),
- );
- }
- }
|