Updated 07/11

This commit is contained in:
2019-11-07 18:11:41 +11:00
parent 34571fee71
commit 59e9c962a3
8 changed files with 80 additions and 217 deletions

View File

@@ -1,120 +1,8 @@
<component name="ProjectCodeStyleConfiguration"> <component name="ProjectCodeStyleConfiguration">
<code_scheme name="Project" version="173"> <code_scheme name="Project" version="173">
<AndroidXmlCodeStyleSettings>
<option name="USE_CUSTOM_SETTINGS" value="true" />
</AndroidXmlCodeStyleSettings>
<JetCodeStyleSettings> <JetCodeStyleSettings>
<option name="CODE_STYLE_DEFAULTS" value="KOTLIN_OFFICIAL" /> <option name="CODE_STYLE_DEFAULTS" value="KOTLIN_OFFICIAL" />
</JetCodeStyleSettings> </JetCodeStyleSettings>
<XML>
<option name="XML_KEEP_LINE_BREAKS" value="false" />
<option name="XML_ALIGN_ATTRIBUTES" value="false" />
<option name="XML_SPACE_INSIDE_EMPTY_TAG" value="true" />
</XML>
<codeStyleSettings language="XML">
<option name="FORCE_REARRANGE_MODE" value="1" />
<indentOptions>
<option name="CONTINUATION_INDENT_SIZE" value="4" />
</indentOptions>
<arrangement>
<rules>
<section>
<rule>
<match>
<AND>
<NAME>xmlns:android</NAME>
<XML_NAMESPACE>^$</XML_NAMESPACE>
</AND>
</match>
</rule>
</section>
<section>
<rule>
<match>
<AND>
<NAME>xmlns:.*</NAME>
<XML_NAMESPACE>^$</XML_NAMESPACE>
</AND>
</match>
<order>BY_NAME</order>
</rule>
</section>
<section>
<rule>
<match>
<AND>
<NAME>.*:id</NAME>
<XML_NAMESPACE>http://schemas.android.com/apk/res/android</XML_NAMESPACE>
</AND>
</match>
</rule>
</section>
<section>
<rule>
<match>
<AND>
<NAME>.*:name</NAME>
<XML_NAMESPACE>http://schemas.android.com/apk/res/android</XML_NAMESPACE>
</AND>
</match>
</rule>
</section>
<section>
<rule>
<match>
<AND>
<NAME>name</NAME>
<XML_NAMESPACE>^$</XML_NAMESPACE>
</AND>
</match>
</rule>
</section>
<section>
<rule>
<match>
<AND>
<NAME>style</NAME>
<XML_NAMESPACE>^$</XML_NAMESPACE>
</AND>
</match>
</rule>
</section>
<section>
<rule>
<match>
<AND>
<NAME>.*</NAME>
<XML_NAMESPACE>^$</XML_NAMESPACE>
</AND>
</match>
<order>BY_NAME</order>
</rule>
</section>
<section>
<rule>
<match>
<AND>
<NAME>.*</NAME>
<XML_NAMESPACE>http://schemas.android.com/apk/res/android</XML_NAMESPACE>
</AND>
</match>
<order>ANDROID_ATTRIBUTE_ORDER</order>
</rule>
</section>
<section>
<rule>
<match>
<AND>
<NAME>.*</NAME>
<XML_NAMESPACE>.*</XML_NAMESPACE>
</AND>
</match>
<order>BY_NAME</order>
</rule>
</section>
</rules>
</arrangement>
</codeStyleSettings>
<codeStyleSettings language="kotlin"> <codeStyleSettings language="kotlin">
<option name="CODE_STYLE_DEFAULTS" value="KOTLIN_OFFICIAL" /> <option name="CODE_STYLE_DEFAULTS" value="KOTLIN_OFFICIAL" />
</codeStyleSettings> </codeStyleSettings>

View File

@@ -1,7 +0,0 @@
<component name="ProjectDictionaryState">
<dictionary name="h_mal">
<words>
<w>mandetory</w>
</words>
</dictionary>
</component>

12
.idea/misc.xml generated
View File

@@ -1,14 +1,4 @@
<?xml version="1.0" encoding="UTF-8"?> <?xml version="1.0" encoding="UTF-8"?>
<project version="4"> <project version="4">
<component name="CMakeSettings"> <component name="ProjectRootManager" version="2" languageLevel="JDK_1_7" project-jdk-name="1.8" project-jdk-type="JavaSDK" />
<configurations>
<configuration PROFILE_NAME="Debug" CONFIG_NAME="Debug" />
</configurations>
</component>
<component name="ProjectRootManager" version="2" languageLevel="JDK_1_8" project-jdk-name="1.8" project-jdk-type="JavaSDK">
<output url="file://$PROJECT_DIR$/build/classes" />
</component>
<component name="ProjectType">
<option name="id" value="Android" />
</component>
</project> </project>

6
.idea/vcs.xml generated
View File

@@ -1,10 +1,6 @@
<?xml version="1.0" encoding="UTF-8"?> <?xml version="1.0" encoding="UTF-8"?>
<project version="4"> <project version="4">
<component name="VcsDirectoryMappings"> <component name="VcsDirectoryMappings">
<mapping directory="$PROJECT_DIR$/Android-project" vcs="Git" /> <mapping directory="$PROJECT_DIR$" vcs="Git" />
<mapping directory="$PROJECT_DIR$/Days_left--Kotlin-" vcs="Git" />
<mapping directory="$PROJECT_DIR$/Farmr" vcs="Git" />
<mapping directory="$PROJECT_DIR$/Firebase_function" vcs="Git" />
<mapping directory="$PROJECT_DIR$/Udacity_Score_Keeper_App" vcs="Git" />
</component> </component>
</project> </project>

View File

@@ -84,37 +84,39 @@ class AddShiftActivity : AppCompatActivity() {
intent.getStringExtra(SHIFT_ID)?.let { intent.getStringExtra(SHIFT_ID)?.let {
progress_bar.visibility = View.VISIBLE progress_bar.visibility = View.VISIBLE
mDatabase.child(USER_FIREBASE).child(auth.uid!!).child(SHIFT_FIREBASE).child(it) val ref = mDatabase.child(USER_FIREBASE).child(auth.uid!!).child(SHIFT_FIREBASE).child(it)
.addListenerForSingleValueEvent(object : ValueEventListener{
override fun onCancelled(p0: DatabaseError) {
progress_bar.visibility = View.GONE
}
override fun onDataChange(dataSnapshot: DataSnapshot) { ref.keepSynced(true)
progress_bar.visibility = View.GONE ref.addListenerForSingleValueEvent(object : ValueEventListener{
val shiftObject:ShiftObject? = dataSnapshot.getValue(ShiftObject::class.java) override fun onCancelled(p0: DatabaseError) {
progress_bar.visibility = View.GONE
}
shiftObject?.let {shift -> override fun onDataChange(dataSnapshot: DataSnapshot) {
abnObject = shift.abnObject progress_bar.visibility = View.GONE
taskObject = shift.taskObject val shiftObject:ShiftObject? = dataSnapshot.getValue(ShiftObject::class.java)
shift.timeObject?.timeIn?.let { shiftObject?.let {shift ->
timeObject = shift.timeObject abnObject = shift.abnObject
setTimeSummary() taskObject = shift.taskObject
Toast.makeText(baseContext,"toasted",Toast.LENGTH_SHORT)
}
if (shift.taskObject?.workType.equals(PIECE)) { shift.timeObject?.timeIn?.let {
units.setText(shift.unitsCount.toString()) timeObject = shift.timeObject
} setTimeSummary()
Toast.makeText(baseContext,"toasted",Toast.LENGTH_SHORT)
date.setText(shiftObject.shiftDate)
setTaskCard()
setEmployerCard()
} }
if (shift.taskObject?.workType.equals(PIECE)) {
units.setText(shift.unitsCount.toString())
}
date.setText(shiftObject.shiftDate)
setTaskCard()
setEmployerCard()
} }
}) }
})
} }
} }
@@ -168,7 +170,8 @@ class AddShiftActivity : AppCompatActivity() {
progress_bar.visibility = View.VISIBLE progress_bar.visibility = View.VISIBLE
shiftReference.setValue(shiftobj).addOnCompleteListener{task -> shiftReference.setValue(shiftobj).addOnCompleteListener{task ->
Log.i("Firebase", "onComplete: " + task.getResult()!!) Log.i("Firebase", "onComplete: " + task.getResult()!!)
if (task.isSuccessful()) { if (task.isSuccessful) {
Toast.makeText(this, "Shift Successfully submitted", Toast.LENGTH_LONG).show()
finish() finish()
}else{ }else{
Toast.makeText(baseContext,"Could not submit shift", Toast.LENGTH_SHORT).show() Toast.makeText(baseContext,"Could not submit shift", Toast.LENGTH_SHORT).show()
@@ -217,47 +220,49 @@ class AddShiftActivity : AppCompatActivity() {
val cont: Context = this val cont: Context = this
if (abnObject != null) { if (abnObject != null) {
mDatabase.child(EMPLOYER_FIREBASE).child(abnObject!!.abn!!).child(TASK_FIREBASE) val ref = mDatabase.child(EMPLOYER_FIREBASE).child(abnObject!!.abn!!).child(TASK_FIREBASE)
.addListenerForSingleValueEvent(object : ValueEventListener{
override fun onCancelled(p0: DatabaseError) {
} ref.keepSynced(true)
ref.addListenerForSingleValueEvent(object : ValueEventListener{
override fun onCancelled(p0: DatabaseError) {
override fun onDataChange(p0: DataSnapshot) { }
var list = ArrayList<TaskObject>()
p0.exists().let {
for (snapshot in p0.children){ override fun onDataChange(p0: DataSnapshot) {
list.add(snapshot.getValue(TaskObject::class.java)!!) var list = ArrayList<TaskObject>()
} p0.exists().let {
for (snapshot in p0.children){
list.add(snapshot.getValue(TaskObject::class.java)!!)
} }
val dialogView = LayoutInflater.from(cont).inflate(R.layout.dialog_previous_abns_used, null)
val dialogListAdapter = DialogListAdapter(cont, list)
dialogView.list_item_list_dialog.setAdapter(dialogListAdapter)
val builder = AlertDialog.Builder(cont)
builder.setView(dialogView)
val alertDialog = builder.create()
alertDialog.show()
dialogView.button_list_dialog.setOnClickListener(View.OnClickListener {
val intent = Intent(cont, AddItemActivity::class.java)
intent.putExtra(REQUEST, TASKREQUEST)
startActivityForResult(intent, TASKREQUEST)
alertDialog.dismiss()
})
dialogView.list_item_list_dialog.setOnItemClickListener(AdapterView.OnItemClickListener { parent, view, position, id ->
taskObject = list.get(position)
setTaskCard()
alertDialog.dismiss()
})
progress_bar.setVisibility(View.GONE)
} }
})
val dialogView = LayoutInflater.from(cont).inflate(R.layout.dialog_previous_abns_used, null)
val dialogListAdapter = DialogListAdapter(cont, list)
dialogView.list_item_list_dialog.setAdapter(dialogListAdapter)
val builder = AlertDialog.Builder(cont)
builder.setView(dialogView)
val alertDialog = builder.create()
alertDialog.show()
dialogView.button_list_dialog.setOnClickListener(View.OnClickListener {
val intent = Intent(cont, AddItemActivity::class.java)
intent.putExtra(REQUEST, TASKREQUEST)
startActivityForResult(intent, TASKREQUEST)
alertDialog.dismiss()
})
dialogView.list_item_list_dialog.setOnItemClickListener(AdapterView.OnItemClickListener { parent, view, position, id ->
taskObject = list.get(position)
setTaskCard()
alertDialog.dismiss()
})
progress_bar.setVisibility(View.GONE)
}
})
} else { } else {
val intent = Intent(this@AddShiftActivity, AddItemActivity::class.java) val intent = Intent(this@AddShiftActivity, AddItemActivity::class.java)
intent.putExtra(REQUEST, TASKREQUEST) intent.putExtra(REQUEST, TASKREQUEST)

View File

@@ -21,7 +21,4 @@ class FirebaseClass {
} }
} }

View File

@@ -23,6 +23,7 @@ import com.appttude.h_mal.days_left_kotlin.FirebaseClass.Companion.SHIFT_ID
import com.appttude.h_mal.days_left_kotlin.FirebaseClass.Companion.USER_FIREBASE import com.appttude.h_mal.days_left_kotlin.FirebaseClass.Companion.USER_FIREBASE
import com.appttude.h_mal.days_left_kotlin.FirebaseClass.Companion.auth import com.appttude.h_mal.days_left_kotlin.FirebaseClass.Companion.auth
import com.appttude.h_mal.days_left_kotlin.FirebaseClass.Companion.mDatabase import com.appttude.h_mal.days_left_kotlin.FirebaseClass.Companion.mDatabase
import com.appttude.h_mal.days_left_kotlin.MainActivity.Companion.ref
import com.appttude.h_mal.days_left_kotlin.Objects.AbnObject import com.appttude.h_mal.days_left_kotlin.Objects.AbnObject
import com.appttude.h_mal.days_left_kotlin.Objects.ShiftObject import com.appttude.h_mal.days_left_kotlin.Objects.ShiftObject
import com.google.firebase.database.DatabaseReference import com.google.firebase.database.DatabaseReference
@@ -41,17 +42,8 @@ import kotlin.collections.ArrayList
class FragmentList : androidx.fragment.app.Fragment() { class FragmentList : androidx.fragment.app.Fragment() {
lateinit var reference : DatabaseReference
lateinit var fireAdapter:FireAdapter lateinit var fireAdapter:FireAdapter
override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
reference = mDatabase.child(USER_FIREBASE).child(auth.uid!!).child(SHIFT_FIREBASE)
reference.keepSynced(true)
}
override fun onCreateView( override fun onCreateView(
inflater: LayoutInflater, container: ViewGroup?, inflater: LayoutInflater, container: ViewGroup?,
savedInstanceState: Bundle? savedInstanceState: Bundle?
@@ -63,7 +55,7 @@ class FragmentList : androidx.fragment.app.Fragment() {
super.onActivityCreated(savedInstanceState) super.onActivityCreated(savedInstanceState)
//set custom firebase adapter on listview //set custom firebase adapter on listview
fireAdapter = FireAdapter(activity, ShiftObject::class.java,R.layout.list_item,reference) fireAdapter = FireAdapter(activity, ShiftObject::class.java,R.layout.list_item,ref)
page_two_list.adapter = fireAdapter page_two_list.adapter = fireAdapter
page_two_list.setOnItemClickListener(object : AdapterView.OnItemClickListener{ page_two_list.setOnItemClickListener(object : AdapterView.OnItemClickListener{
@@ -121,20 +113,20 @@ class FragmentList : androidx.fragment.app.Fragment() {
alt_bld.setSingleChoiceItems(grpname, checkedItem) { dialog, item -> alt_bld.setSingleChoiceItems(grpname, checkedItem) { dialog, item ->
when (item) { when (item) {
0 -> { 0 -> {
val q1 = reference.orderByChild("abnObject/companyName").equalTo("GREEN CLOUD NURSERY") val q1 = ref.orderByChild("abnObject/companyName").equalTo("GREEN CLOUD NURSERY")
fireAdapter = FireAdapter(activity, ShiftObject::class.java, R.layout.list_item, q1) fireAdapter = FireAdapter(activity, ShiftObject::class.java, R.layout.list_item, q1)
} }
1 -> fireAdapter = FireAdapter( 1 -> fireAdapter = FireAdapter(
activity, activity,
ShiftObject::class.java, ShiftObject::class.java,
R.layout.list_item, R.layout.list_item,
reference.orderByChild("dateTimeAdded") ref.orderByChild("dateTimeAdded")
) )
2 -> fireAdapter = FireAdapter( 2 -> fireAdapter = FireAdapter(
activity, activity,
ShiftObject::class.java, ShiftObject::class.java,
R.layout.list_item, R.layout.list_item,
reference.orderByChild("shiftDate") ref.orderByChild("shiftDate")
) )
} }
page_two_list.adapter = fireAdapter page_two_list.adapter = fireAdapter
@@ -198,7 +190,7 @@ class FragmentList : androidx.fragment.app.Fragment() {
typeDialog.setSingleChoiceItems( typeDialog.setSingleChoiceItems(
arrayOf("Hourly", "Piece Rate"), -1 arrayOf("Hourly", "Piece Rate"), -1
) { dialog, which -> ) { dialog, which ->
val q1 = reference.orderByChild("taskObject/workType").equalTo(typeString[which]) val q1 = ref.orderByChild("taskObject/workType").equalTo(typeString[which])
fireAdapter = FireAdapter(activity, ShiftObject::class.java, R.layout.list_item, q1) fireAdapter = FireAdapter(activity, ShiftObject::class.java, R.layout.list_item, q1)
page_two_list.adapter = fireAdapter page_two_list.adapter = fireAdapter
@@ -222,9 +214,9 @@ class FragmentList : androidx.fragment.app.Fragment() {
fun applyFilter(arg1: String, arg2: String?) { fun applyFilter(arg1: String, arg2: String?) {
val q1: Query val q1: Query
if (arg2 == null) { if (arg2 == null) {
q1 = reference.orderByChild("abnObject/abn").equalTo(arg1) q1 = ref.orderByChild("abnObject/abn").equalTo(arg1)
} else { } else {
q1 = reference.orderByChild("shiftDate").startAt(arg1).endAt(arg2) q1 = ref.orderByChild("shiftDate").startAt(arg1).endAt(arg2)
} }
fireAdapter = FireAdapter(activity, ShiftObject::class.java, R.layout.list_item, q1) fireAdapter = FireAdapter(activity, ShiftObject::class.java, R.layout.list_item, q1)

View File

@@ -31,6 +31,7 @@ import kotlinx.android.synthetic.main.nav_header_main.view.*
class MainActivity : AppCompatActivity() { class MainActivity : AppCompatActivity() {
companion object{ companion object{
var shiftList = ArrayList<ShiftObject>() var shiftList = ArrayList<ShiftObject>()
val ref = mDatabase.child(USER_FIREBASE).child(auth.uid as String).child(SHIFT_FIREBASE)
} }
lateinit var fragmentManager: FragmentManager lateinit var fragmentManager: FragmentManager
@@ -158,7 +159,8 @@ class MainActivity : AppCompatActivity() {
val uid = auth.uid as String val uid = auth.uid as String
progBar.visibility = View.VISIBLE progBar.visibility = View.VISIBLE
mDatabase.child(USER_FIREBASE).child(uid).child(SHIFT_FIREBASE).addValueEventListener(object : ValueEventListener { ref.keepSynced(true)
ref.addValueEventListener(object : ValueEventListener {
override fun onCancelled(p0: DatabaseError) { override fun onCancelled(p0: DatabaseError) {
progBar.visibility = View.GONE progBar.visibility = View.GONE
} }