Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
13 changes: 8 additions & 5 deletions .idea/misc.xml

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

1 change: 1 addition & 0 deletions app/build.gradle
Original file line number Diff line number Diff line change
Expand Up @@ -24,6 +24,7 @@ android {
}
buildFeatures {
viewBinding true
dataBinding true
}
compileOptions {
sourceCompatibility JavaVersion.VERSION_1_8
Expand Down
5 changes: 5 additions & 0 deletions app/src/main/AndroidManifest.xml
Original file line number Diff line number Diff line change
Expand Up @@ -3,6 +3,8 @@
package="com.harshad.projectclean">

<uses-permission android:name="android.permission.INTERNET" />
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE"
android:maxSdkVersion="28" />

<application
android:allowBackup="true"
Expand All @@ -11,6 +13,9 @@
android:roundIcon="@mipmap/ic_launcher_round"
android:supportsRtl="true"
android:theme="@style/Theme.ProjectClean">
<activity
android:name=".CreatePost"
android:exported="false" />
<activity
android:name=".ProfileSetup"
android:exported="false" />
Expand Down
67 changes: 67 additions & 0 deletions app/src/main/java/com/harshad/projectclean/CreatePost.kt
Original file line number Diff line number Diff line change
@@ -0,0 +1,67 @@
package com.harshad.projectclean

import android.app.Activity
import android.content.Intent
import android.os.Bundle
import android.os.Environment
import android.util.Log
import android.widget.AdapterView.OnItemClickListener
import android.widget.ArrayAdapter
import android.widget.AutoCompleteTextView
import android.widget.Toast
import androidx.appcompat.app.AppCompatActivity
import androidx.core.net.toFile
import com.github.dhaval2404.imagepicker.ImagePicker
import com.harshad.projectclean.databinding.ActivityCreatePostBinding


class CreatePost : AppCompatActivity() {
private lateinit var binding: ActivityCreatePostBinding

val items = arrayOf("Option 1", "Option 2", "Option 3")
lateinit var actv :AutoCompleteTextView
lateinit var adapterItems : ArrayAdapter<String>

override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
binding = ActivityCreatePostBinding.inflate(layoutInflater)
val view = binding.root
setContentView(view)

actv = binding.dropMenu

adapterItems = ArrayAdapter<String>(this,R.layout.list_item,items)
actv.setAdapter(adapterItems)

actv.setOnItemClickListener(OnItemClickListener { parent, view, position, id ->
val item = parent.getItemAtPosition(position).toString()
Toast.makeText(applicationContext, "Item: $item", Toast.LENGTH_SHORT).show()
})



ImagePicker.with(this).galleryMimeTypes(arrayOf("image/*"))
.compress(1024)
.saveDir(getExternalFilesDir(Environment.DIRECTORY_PICTURES)!!
).start()


}

override fun onActivityResult(requestCode: Int, resultCode: Int, data: Intent?) {
super.onActivityResult(requestCode, resultCode, data)

if(resultCode== Activity.RESULT_OK && requestCode== ImagePicker.REQUEST_CODE) {


// binding.ivGriImg.setImageBitmap()
binding.ivGriImg.setImageURI(data?.data)

Log.d("Asach","${data?.data}")
// var s1= data?.data?.toFile()
// Log.d("Bdach",s1.toString())

}

}
}
Original file line number Diff line number Diff line change
Expand Up @@ -24,7 +24,7 @@ class DisplayGrievance : AppCompatActivity() {
fun getGriData(context:Context){
var apiClient: ApiClient = ApiClient()
var sharedPref = getSharedPreferences("SP", Context.MODE_PRIVATE)
apiClient.grievanceApiRequests().getGrievanceData(token = "Token ${sharedPref.getString("auth_token","No auth token").toString()}")
apiClient.grievanceApiRequests().getGrievanceData(token = "Token 5de1b0199b814610bb91a7328e7eccabdfff4c8c")
.enqueue(object: Callback<GrievancesListResponse> {
override fun onResponse(
call: Call<GrievancesListResponse>,
Expand All @@ -35,7 +35,7 @@ class DisplayGrievance : AppCompatActivity() {
var recy_grievance_list = findViewById<RecyclerView>(R.id.recy_grievance_list)
recy_grievance_list.adapter = GrievanceRecycleViewAdapter(context,gri_resposne!!.gri_data)
recy_grievance_list.layoutManager = LinearLayoutManager(context)
Log.d("Gri Data","Response Success ${gri_resposne?.gri_data}")
Log.d("Gri Data","Response Success ${gri_resposne.gri_data}")
}

override fun onFailure(call: Call<GrievancesListResponse>, t: Throwable) {
Expand Down
56 changes: 19 additions & 37 deletions app/src/main/java/com/harshad/projectclean/LoginActivity.kt
Original file line number Diff line number Diff line change
Expand Up @@ -5,10 +5,6 @@ import android.content.Intent
import android.content.SharedPreferences
import androidx.appcompat.app.AppCompatActivity
import android.os.Bundle
import android.util.Log
import android.widget.Button
import android.widget.CheckBox
import android.widget.TextView
import android.widget.Toast
import com.harshad.projectclean.APIRequests.ApiClient
import com.harshad.projectclean.APIRequests.authentication_data_class.LoginRequest
Expand All @@ -17,12 +13,10 @@ import com.harshad.projectclean.databinding.ActivityLoginBinding
import retrofit2.Call
import retrofit2.Callback
import retrofit2.Response
import kotlin.math.log

class LoginActivity : AppCompatActivity() {
lateinit var sharedPref: SharedPreferences
lateinit var sharedPref : SharedPreferences

private var isRemembered = false
private lateinit var binding: ActivityLoginBinding


Expand All @@ -32,7 +26,7 @@ class LoginActivity : AppCompatActivity() {
val view = binding.root
setContentView(view)

binding.textRegister.setOnClickListener {
binding.textRegister.setOnClickListener{
val intent = Intent(this, RegisterActivity::class.java)
startActivity(intent)
finish()
Expand All @@ -41,16 +35,13 @@ class LoginActivity : AppCompatActivity() {
sharedPref = getSharedPreferences("SP", Context.MODE_PRIVATE)


binding.btnLogin.setOnClickListener {
if (binding.edUsername.text.trim().isNotEmpty() || binding.edPassword.text.trim()
.isNotEmpty()
) {
val username: String = binding.edUsername.text.trim().toString()
val password: String = binding.edPassword.text.trim().toString()
validate()
login(this, username, password)
binding.btnLogin.setOnClickListener{
if(binding.edUsername.text.trim().isNotEmpty() || binding.edPassword.text.trim().isNotEmpty()){
val username:String = binding.edUsername.text.trim().toString()
val password:String = binding.edPassword.text.trim().toString()
login(this,username,password)

val editor: SharedPreferences.Editor = sharedPref.edit()
val editor : SharedPreferences.Editor = sharedPref.edit()
//editor.putString("username", username)
//editor.putString("pass", password)
editor.putBoolean("REMEMBER", true)
Expand All @@ -60,11 +51,13 @@ class LoginActivity : AppCompatActivity() {
//Toast.makeText(this,"Remember",Toast.LENGTH_LONG).show()



val intent = Intent(this, MainActivity::class.java)
startActivity(intent)
finish()
} else {
Toast.makeText(this, "Enter Info", Toast.LENGTH_LONG).show()
}
else{
Toast.makeText(this,"Enter Info",Toast.LENGTH_LONG).show()
}
}
}
Expand All @@ -73,39 +66,28 @@ class LoginActivity : AppCompatActivity() {
val apiClient: ApiClient = ApiClient()
val editor: SharedPreferences.Editor = sharedPref.edit()

apiClient.authenticationApiRequests()
.login(LoginRequest(email = email, password = password))
.enqueue(object : Callback<LoginResponse> {
apiClient.authenticationApiRequests().login(LoginRequest(email = email,password = password))
.enqueue(object :Callback<LoginResponse>{
override fun onResponse(
call: Call<LoginResponse>,
response: Response<LoginResponse>
) {
val loginResponse = response.body()
if (loginResponse?.auth_token != null) {
if(loginResponse?.auth_token != null){
editor.putString("auth_token", loginResponse.auth_token)
editor.apply()
Toast.makeText(
context,
"Successful Login ${loginResponse.auth_token}",
Toast.LENGTH_LONG
).show()
Toast.makeText(context,"Successful Login ${loginResponse.auth_token}",Toast.LENGTH_LONG).show()

}

}

override fun onFailure(call: Call<LoginResponse>, t: Throwable) {
Toast.makeText(context, "Login Unsuccessful", Toast.LENGTH_LONG).show()
Toast.makeText(context,"Login Unsuccessful",Toast.LENGTH_LONG).show()
}
})
}
fun validate(): Boolean {
if (binding.edUsername.text.trim().isNotEmpty() || binding.edPassword.text.trim()
.isNotEmpty()
) {
return true
}
return true

}


}
12 changes: 12 additions & 0 deletions app/src/main/java/com/harshad/projectclean/MainActivity.kt
Original file line number Diff line number Diff line change
Expand Up @@ -31,6 +31,18 @@ class MainActivity : AppCompatActivity() {
finish()
}

binding.fabNew.setOnClickListener {
val intent = Intent(this, CreatePost::class.java)
startActivity(intent)
finish()
}

binding.btnProfileSetup.setOnClickListener {
val intent = Intent(this, ProfileSetup::class.java)
startActivity(intent)
finish()
}

binding.btnLogin.setOnClickListener{
val intent = Intent(this, LoginActivity::class.java)
startActivity(intent)
Expand Down
13 changes: 5 additions & 8 deletions app/src/main/java/com/harshad/projectclean/ProfileSetup.kt
Original file line number Diff line number Diff line change
Expand Up @@ -8,6 +8,7 @@ import androidx.appcompat.app.AppCompatActivity
import android.os.Bundle
import android.os.Environment
import android.util.Log
import androidx.core.net.toFile
import com.github.dhaval2404.imagepicker.ImagePicker
import com.harshad.projectclean.databinding.ActivityProfileSetupBinding

Expand All @@ -32,11 +33,8 @@ class ProfileSetup : AppCompatActivity() {
finish()
}
binding.fabImg.setOnClickListener {
ImagePicker.with(this).crop(1f, 1f).galleryMimeTypes(arrayOf("image/*"))
.maxResultSize(720, 720).saveDir(
getExternalFilesDir(
Environment.DIRECTORY_PICTURES
)!!
ImagePicker.with(this).galleryMimeTypes(arrayOf("image/*"))
.maxResultSize(128, 128).saveDir(getExternalFilesDir(Environment.DIRECTORY_PICTURES)!!
).start()
}

Expand All @@ -51,9 +49,8 @@ class ProfileSetup : AppCompatActivity() {
binding.profileImage.setImageURI(data?.data)
Log.d("Asach","${data?.data}")

var s1:String
s1 = data?.data.toString()
Log.d("Bdach",s1)
var s1= data?.data?.toFile()
Log.d("Bdach",s1.toString())

}

Expand Down
27 changes: 14 additions & 13 deletions app/src/main/java/com/harshad/projectclean/RegisterActivity.kt
Original file line number Diff line number Diff line change
Expand Up @@ -9,7 +9,7 @@ import android.widget.Toast
import com.harshad.projectclean.databinding.ActivityRegisterBinding

class RegisterActivity : AppCompatActivity() {
lateinit var sharedPref : SharedPreferences
lateinit var sharedPref: SharedPreferences

private lateinit var binding: ActivityRegisterBinding

Expand All @@ -21,7 +21,7 @@ class RegisterActivity : AppCompatActivity() {



binding.textLogin.setOnClickListener{
binding.textLogin.setOnClickListener {
val intent = Intent(this, LoginActivity::class.java)
startActivity(intent)
finish()
Expand All @@ -30,33 +30,34 @@ class RegisterActivity : AppCompatActivity() {
sharedPref = getSharedPreferences("SP", Context.MODE_PRIVATE)


binding.btnSignup.setOnClickListener{
if(validate()){
val phoneno:String = binding.edPhoneno.text.toString()
val username:String = binding.edUsername.text.toString()
val password:String = binding.edPassword.text.toString()
val editor : SharedPreferences.Editor =sharedPref.edit()
binding.btnSignup.setOnClickListener {
if (validate()) {
val phoneno: String = binding.edPhoneno.text.toString()
val username: String = binding.edUsername.text.toString()
val password: String = binding.edPassword.text.toString()
val editor: SharedPreferences.Editor = sharedPref.edit()
editor.putString("username", username)
editor.putString("phoneno", phoneno)

editor.apply()



Toast.makeText(this,"Profile", Toast.LENGTH_LONG).show()
Toast.makeText(this, "Profile", Toast.LENGTH_LONG).show()

val intent = Intent(this, ProfileSetup::class.java)
// intent.putExtra("Username",username)
// intent.putExtra("Phoneno",phoneno)
startActivity(intent)
finish()
}
else{
Toast.makeText(this,"Enter Info", Toast.LENGTH_LONG).show()
} else {
Toast.makeText(this, "Enter Info", Toast.LENGTH_LONG).show()
}
}
}

private fun validate(): Boolean {
return (binding.edUsername.text.trim().isNotEmpty() )
return true

}
}
Original file line number Diff line number Diff line change
@@ -1,7 +1,6 @@
package com.harshad.projectclean.grievance_recycler_view_classes

import android.content.Context
import android.util.Log
import android.view.LayoutInflater
import android.view.View
import android.view.ViewGroup
Expand All @@ -22,7 +21,7 @@ class GrievanceRecycleViewAdapter(private val context: Context, private val grie
}

override fun onBindViewHolder(holder: GrievanceViewHolder, position: Int) {
Glide.with(context).load(grievance_list[position].gri_img).into(holder.gri_img)
Glide.with(context).load("${URLConstants.BASE_URL}${grievance_list[position].gri_img}").into(holder.gri_img)
holder.gri_title.text = grievance_list[position].gri_title
holder.gri_desc.text = grievance_list[position].gri_desc

Expand Down
Loading