[
  {
    "path": ".gitignore",
    "content": "*.iml\n.gradle\n/local.properties\n/.idea/caches\n/.idea/libraries\n/.idea/modules.xml\n/.idea/workspace.xml\n/.idea/navEditor.xml\n/.idea/assetWizardSettings.xml\n.DS_Store\n/build\n/captures\n.externalNativeBuild\n.cxx\n"
  },
  {
    "path": ".idea/.name",
    "content": "Farming App"
  },
  {
    "path": ".idea/codeStyles/Project.xml",
    "content": "<component name=\"ProjectCodeStyleConfiguration\">\n  <code_scheme name=\"Project\" version=\"173\">\n    <JetCodeStyleSettings>\n      <option name=\"CODE_STYLE_DEFAULTS\" value=\"KOTLIN_OFFICIAL\" />\n    </JetCodeStyleSettings>\n    <codeStyleSettings language=\"XML\">\n      <indentOptions>\n        <option name=\"CONTINUATION_INDENT_SIZE\" value=\"4\" />\n      </indentOptions>\n      <arrangement>\n        <rules>\n          <section>\n            <rule>\n              <match>\n                <AND>\n                  <NAME>xmlns:android</NAME>\n                  <XML_ATTRIBUTE />\n                  <XML_NAMESPACE>^$</XML_NAMESPACE>\n                </AND>\n              </match>\n            </rule>\n          </section>\n          <section>\n            <rule>\n              <match>\n                <AND>\n                  <NAME>xmlns:.*</NAME>\n                  <XML_ATTRIBUTE />\n                  <XML_NAMESPACE>^$</XML_NAMESPACE>\n                </AND>\n              </match>\n              <order>BY_NAME</order>\n            </rule>\n          </section>\n          <section>\n            <rule>\n              <match>\n                <AND>\n                  <NAME>.*:id</NAME>\n                  <XML_ATTRIBUTE />\n                  <XML_NAMESPACE>http://schemas.android.com/apk/res/android</XML_NAMESPACE>\n                </AND>\n              </match>\n            </rule>\n          </section>\n          <section>\n            <rule>\n              <match>\n                <AND>\n                  <NAME>.*:name</NAME>\n                  <XML_ATTRIBUTE />\n                  <XML_NAMESPACE>http://schemas.android.com/apk/res/android</XML_NAMESPACE>\n                </AND>\n              </match>\n            </rule>\n          </section>\n          <section>\n            <rule>\n              <match>\n                <AND>\n                  <NAME>name</NAME>\n                  <XML_ATTRIBUTE />\n                  <XML_NAMESPACE>^$</XML_NAMESPACE>\n                </AND>\n              </match>\n            </rule>\n          </section>\n          <section>\n            <rule>\n              <match>\n                <AND>\n                  <NAME>style</NAME>\n                  <XML_ATTRIBUTE />\n                  <XML_NAMESPACE>^$</XML_NAMESPACE>\n                </AND>\n              </match>\n            </rule>\n          </section>\n          <section>\n            <rule>\n              <match>\n                <AND>\n                  <NAME>.*</NAME>\n                  <XML_ATTRIBUTE />\n                  <XML_NAMESPACE>^$</XML_NAMESPACE>\n                </AND>\n              </match>\n              <order>BY_NAME</order>\n            </rule>\n          </section>\n          <section>\n            <rule>\n              <match>\n                <AND>\n                  <NAME>.*</NAME>\n                  <XML_ATTRIBUTE />\n                  <XML_NAMESPACE>http://schemas.android.com/apk/res/android</XML_NAMESPACE>\n                </AND>\n              </match>\n              <order>ANDROID_ATTRIBUTE_ORDER</order>\n            </rule>\n          </section>\n          <section>\n            <rule>\n              <match>\n                <AND>\n                  <NAME>.*</NAME>\n                  <XML_ATTRIBUTE />\n                  <XML_NAMESPACE>.*</XML_NAMESPACE>\n                </AND>\n              </match>\n              <order>BY_NAME</order>\n            </rule>\n          </section>\n        </rules>\n      </arrangement>\n    </codeStyleSettings>\n    <codeStyleSettings language=\"kotlin\">\n      <option name=\"CODE_STYLE_DEFAULTS\" value=\"KOTLIN_OFFICIAL\" />\n    </codeStyleSettings>\n  </code_scheme>\n</component>"
  },
  {
    "path": ".idea/codeStyles/codeStyleConfig.xml",
    "content": "<component name=\"ProjectCodeStyleConfiguration\">\n  <state>\n    <option name=\"USE_PER_PROJECT_SETTINGS\" value=\"true\" />\n  </state>\n</component>"
  },
  {
    "path": ".idea/compiler.xml",
    "content": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<project version=\"4\">\n  <component name=\"CompilerConfiguration\">\n    <bytecodeTargetLevel target=\"1.8\" />\n  </component>\n</project>"
  },
  {
    "path": ".idea/gradle.xml",
    "content": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<project version=\"4\">\n  <component name=\"GradleMigrationSettings\" migrationVersion=\"1\" />\n  <component name=\"GradleSettings\">\n    <option name=\"linkedExternalProjectsSettings\">\n      <GradleProjectSettings>\n        <option name=\"testRunner\" value=\"PLATFORM\" />\n        <option name=\"distributionType\" value=\"DEFAULT_WRAPPED\" />\n        <option name=\"externalProjectPath\" value=\"$PROJECT_DIR$\" />\n        <option name=\"gradleJvm\" value=\"1.8\" />\n        <option name=\"modules\">\n          <set>\n            <option value=\"$PROJECT_DIR$\" />\n            <option value=\"$PROJECT_DIR$/app\" />\n          </set>\n        </option>\n        <option name=\"resolveModulePerSourceSet\" value=\"false\" />\n      </GradleProjectSettings>\n    </option>\n  </component>\n</project>"
  },
  {
    "path": ".idea/jarRepositories.xml",
    "content": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<project version=\"4\">\n  <component name=\"RemoteRepositoriesConfiguration\">\n    <remote-repository>\n      <option name=\"id\" value=\"central\" />\n      <option name=\"name\" value=\"Maven Central repository\" />\n      <option name=\"url\" value=\"https://repo1.maven.org/maven2\" />\n    </remote-repository>\n    <remote-repository>\n      <option name=\"id\" value=\"jboss.community\" />\n      <option name=\"name\" value=\"JBoss Community repository\" />\n      <option name=\"url\" value=\"https://repository.jboss.org/nexus/content/repositories/public/\" />\n    </remote-repository>\n    <remote-repository>\n      <option name=\"id\" value=\"BintrayJCenter\" />\n      <option name=\"name\" value=\"BintrayJCenter\" />\n      <option name=\"url\" value=\"https://jcenter.bintray.com/\" />\n    </remote-repository>\n    <remote-repository>\n      <option name=\"id\" value=\"Google\" />\n      <option name=\"name\" value=\"Google\" />\n      <option name=\"url\" value=\"https://dl.google.com/dl/android/maven2/\" />\n    </remote-repository>\n    <remote-repository>\n      <option name=\"id\" value=\"maven\" />\n      <option name=\"name\" value=\"maven\" />\n      <option name=\"url\" value=\"https://jitpack.io\" />\n    </remote-repository>\n    <remote-repository>\n      <option name=\"id\" value=\"MavenRepo\" />\n      <option name=\"name\" value=\"MavenRepo\" />\n      <option name=\"url\" value=\"https://repo.maven.apache.org/maven2/\" />\n    </remote-repository>\n  </component>\n</project>"
  },
  {
    "path": ".idea/misc.xml",
    "content": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<project version=\"4\">\n  <component name=\"ProjectRootManager\" version=\"2\" languageLevel=\"JDK_1_8\" default=\"true\" project-jdk-name=\"1.8\" project-jdk-type=\"JavaSDK\">\n    <output url=\"file://$PROJECT_DIR$/build/classes\" />\n  </component>\n  <component name=\"ProjectType\">\n    <option name=\"id\" value=\"Android\" />\n  </component>\n</project>"
  },
  {
    "path": ".idea/render.experimental.xml",
    "content": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<project version=\"4\">\n  <component name=\"RenderSettings\">\n    <option name=\"showDecorations\" value=\"true\" />\n  </component>\n</project>"
  },
  {
    "path": ".idea/runConfigurations.xml",
    "content": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<project version=\"4\">\n  <component name=\"RunConfigurationProducerService\">\n    <option name=\"ignoredProducers\">\n      <set>\n        <option value=\"org.jetbrains.plugins.gradle.execution.test.runner.AllInPackageGradleConfigurationProducer\" />\n        <option value=\"org.jetbrains.plugins.gradle.execution.test.runner.TestClassGradleConfigurationProducer\" />\n        <option value=\"org.jetbrains.plugins.gradle.execution.test.runner.TestMethodGradleConfigurationProducer\" />\n      </set>\n    </option>\n  </component>\n</project>"
  },
  {
    "path": ".idea/shelf/Uncommitted_changes_before_Checkout_at_25-01-2021_21_36_[Default_Changelist]/shelved.patch",
    "content": "Index: .idea/misc.xml\nIDEA additional info:\nSubsystem: com.intellij.openapi.diff.impl.patch.BaseRevisionTextPatchEP\n<+><?xml version=\\\"1.0\\\" encoding=\\\"UTF-8\\\"?>\\r\\n<project version=\\\"4\\\">\\r\\n  <component name=\\\"ProjectRootManager\\\" version=\\\"2\\\" languageLevel=\\\"JDK_1_7\\\" project-jdk-name=\\\"1.8\\\" project-jdk-type=\\\"JavaSDK\\\">\\r\\n    <output url=\\\"file://$PROJECT_DIR$/build/classes\\\" />\\r\\n  </component>\\r\\n  <component name=\\\"ProjectType\\\">\\r\\n    <option name=\\\"id\\\" value=\\\"Android\\\" />\\r\\n  </component>\\r\\n</project>\nSubsystem: com.intellij.openapi.diff.impl.patch.CharsetEP\n<+>UTF-8\n===================================================================\n--- .idea/misc.xml\t(revision 10b3406bcaf78db23f771ddbc45bfbe5986f0031)\n+++ .idea/misc.xml\t(date 1611590755469)\n@@ -1,6 +1,6 @@\n <?xml version=\"1.0\" encoding=\"UTF-8\"?>\n <project version=\"4\">\n-  <component name=\"ProjectRootManager\" version=\"2\" languageLevel=\"JDK_1_7\" project-jdk-name=\"1.8\" project-jdk-type=\"JavaSDK\">\n+  <component name=\"ProjectRootManager\" version=\"2\" languageLevel=\"JDK_1_8\" default=\"true\" project-jdk-name=\"1.8\" project-jdk-type=\"JavaSDK\">\n     <output url=\"file://$PROJECT_DIR$/build/classes\" />\n   </component>\n   <component name=\"ProjectType\">\n"
  },
  {
    "path": ".idea/shelf/Uncommitted_changes_before_Checkout_at_25-01-2021_21_36__Default_Changelist_.xml",
    "content": "<changelist name=\"Uncommitted_changes_before_Checkout_at_25-01-2021_21_36_[Default_Changelist]\" date=\"1611590792291\" recycled=\"false\" toDelete=\"true\">\n  <option name=\"PATH\" value=\"$PROJECT_DIR$/.idea/shelf/Uncommitted_changes_before_Checkout_at_25-01-2021_21_36_[Default_Changelist]/shelved.patch\" />\n  <option name=\"DESCRIPTION\" value=\"Uncommitted changes before Checkout at 25-01-2021 21:36 [Default Changelist]\" />\n</changelist>"
  },
  {
    "path": ".idea/shelf/Uncommitted_changes_before_Update_at_30-12-2020_21_59_[Default_Changelist]/shelved.patch",
    "content": "Index: app/src/main/java/com/project/farmingapp/viewmodel/AuthViewModel.kt\nIDEA additional info:\nSubsystem: com.intellij.openapi.diff.impl.patch.BaseRevisionTextPatchEP\n<+>package com.project.farmingapp.viewmodel\\r\\n\\r\\nimport android.view.View\\r\\nimport androidx.lifecycle.ViewModel\\r\\nimport com.project.farmingapp.model.AuthRepository\\r\\n\\r\\nclass AuthViewModel : ViewModel() {\\r\\n\\r\\n    var name: String? = null\\r\\n    var mobNo: String? = null\\r\\n    var email: String? = null\\r\\n    var city: String? = null\\r\\n    var password: String? = null\\r\\n    var confPassword: String? = null\\r\\n    var userType:String? = \\\"normal\\\"\\r\\n    var authListener: AuthListener? = null\\r\\n\\r\\n    fun signupButtonClicked(view: View) {\\r\\n        authListener!!.onStarted()\\r\\n        if (name.isNullOrEmpty() || mobNo.toString().length != 10 || mobNo == null || password.isNullOrEmpty() || confPassword.isNullOrEmpty() || city.isNullOrEmpty()) {\\r\\n            // Failure\\r\\n            authListener!!.onFailure(\\\"Error Occurred\\\")\\r\\n            return\\r\\n        }\\r\\n        // Success\\r\\n        var data = hashMapOf(\\r\\n            \\\"name\\\" to name,\\r\\n            \\\"mobNo\\\" to mobNo,\\r\\n            \\\"email\\\" to email,\\r\\n            \\\"city\\\" to city,\\r\\n            \\\"userType\\\" to userType\\r\\n        )\\r\\n        val authRepo = AuthRepository().signInWithEmail(email!!, password!!, data)\\r\\n\\r\\n        authListener?.onSuccess(authRepo)\\r\\n\\r\\n    }\\r\\n\\r\\n    fun googleSignupButtonClicked(view: View) {\\r\\n        //\\r\\n\\r\\n//        val gso = GoogleSignInOptions.Builder(GoogleSignInOptions.DEFAULT_SIGN_IN)\\r\\n//            .requestIdToken(getString(R.string.default_web_client_id))\\r\\n//            .requestEmail()\\r\\n//            .build()\\r\\n//        googleSignInClient = GoogleSignIn.getClient(this, gso)\\r\\n\\r\\n\\r\\n    }\\r\\n\\r\\n\\r\\n}\nSubsystem: com.intellij.openapi.diff.impl.patch.CharsetEP\n<+>UTF-8\n===================================================================\n--- app/src/main/java/com/project/farmingapp/viewmodel/AuthViewModel.kt\t(revision d0dcb8b4662cad8592336090eac9f8e56ae7147e)\n+++ app/src/main/java/com/project/farmingapp/viewmodel/AuthViewModel.kt\t(date 1609342945111)\n@@ -15,6 +15,9 @@\n     var userType:String? = \"normal\"\n     var authListener: AuthListener? = null\n \n+    var loginmail:String?=null\n+    var loginpwd:String?=null\n+\n     fun signupButtonClicked(view: View) {\n         authListener!!.onStarted()\n         if (name.isNullOrEmpty() || mobNo.toString().length != 10 || mobNo == null || password.isNullOrEmpty() || confPassword.isNullOrEmpty() || city.isNullOrEmpty()) {\n@@ -48,5 +51,20 @@\n \n     }\n \n+//bharat try new2\n+\n+    fun loginButtonClicked(view: View) {\n+        authListener!!.onStarted()\n+        if (loginmail.isNullOrEmpty() || loginpwd.isNullOrEmpty()) {\n+            // Failure\n+            authListener!!.onFailure(\"Error Occurred\")\n+            return\n+        }\n+        // Success\n \n+        val authRepo = AuthRepository().loginWithEmail(loginmail!!, loginpwd!!)\n+\n+        authListener?.onSuccess(authRepo)\n+\n+    }\n }\n\\ No newline at end of file\nIndex: app/src/main/AndroidManifest.xml\nIDEA additional info:\nSubsystem: com.intellij.openapi.diff.impl.patch.BaseRevisionTextPatchEP\n<+><?xml version=\\\"1.0\\\" encoding=\\\"utf-8\\\"?>\\r\\n<manifest xmlns:android=\\\"http://schemas.android.com/apk/res/android\\\"\\r\\n    package=\\\"com.project.farmingapp\\\">\\r\\n\\r\\n    <uses-permission android:name=\\\"android.permission.INTERNET\\\" />\\r\\n\\r\\n    <application\\r\\n        android:allowBackup=\\\"true\\\"\\r\\n        android:icon=\\\"@mipmap/ic_launcher\\\"\\r\\n        android:label=\\\"@string/app_name\\\"\\r\\n        android:roundIcon=\\\"@mipmap/ic_launcher_round\\\"\\r\\n        android:supportsRtl=\\\"true\\\"\\r\\n        android:theme=\\\"@style/AppTheme\\\">\\r\\n        <activity android:name=\\\".view.auth.SignupActivity\\\"><intent-filter>\\r\\n            <action android:name=\\\"android.intent.action.MAIN\\\" />\\r\\n\\r\\n            <category android:name=\\\"android.intent.category.LAUNCHER\\\" />\\r\\n        </intent-filter></activity>\\r\\n        <activity android:name=\\\".view.auth.LoginActivity\\\">\\r\\n\\r\\n        </activity>\\r\\n    </application>\\r\\n\\r\\n</manifest>\nSubsystem: com.intellij.openapi.diff.impl.patch.CharsetEP\n<+>UTF-8\n===================================================================\n--- app/src/main/AndroidManifest.xml\t(revision d0dcb8b4662cad8592336090eac9f8e56ae7147e)\n+++ app/src/main/AndroidManifest.xml\t(date 1609342664080)\n@@ -11,13 +11,15 @@\n         android:roundIcon=\"@mipmap/ic_launcher_round\"\n         android:supportsRtl=\"true\"\n         android:theme=\"@style/AppTheme\">\n-        <activity android:name=\".view.auth.SignupActivity\"><intent-filter>\n-            <action android:name=\"android.intent.action.MAIN\" />\n+        <activity android:name=\".view.auth.SignupActivity\">\n+\n+        </activity>\n+        <activity android:name=\".view.auth.LoginActivity\">\n+            <intent-filter>\n+                <action android:name=\"android.intent.action.MAIN\" />\n \n-            <category android:name=\"android.intent.category.LAUNCHER\" />\n-        </intent-filter></activity>\n-        <activity android:name=\".view.auth.LoginActivity\">\n-\n+                <category android:name=\"android.intent.category.LAUNCHER\" />\n+            </intent-filter>\n         </activity>\n     </application>\n \nIndex: app/src/main/java/com/project/farmingapp/view/auth/LoginActivity.kt\nIDEA additional info:\nSubsystem: com.intellij.openapi.diff.impl.patch.BaseRevisionTextPatchEP\n<+>package com.project.farmingapp.view.auth\\r\\n\\r\\nimport android.content.Intent\\r\\nimport androidx.appcompat.app.AppCompatActivity\\r\\nimport android.os.Bundle\\r\\nimport com.project.farmingapp.R\\r\\nimport kotlinx.android.synthetic.main.activity_login.*\\r\\n\\r\\nclass LoginActivity : AppCompatActivity() {\\r\\n    override fun onCreate(savedInstanceState: Bundle?) {\\r\\n        super.onCreate(savedInstanceState)\\r\\n        setContentView(R.layout.activity_login)\\r\\n\\r\\n        createaccountText.setOnClickListener {\\r\\n            Intent(this, SignupActivity::class.java).also {\\r\\n                startActivity(it)\\r\\n            }\\r\\n        }\\r\\n\\r\\n    }\\r\\n}\nSubsystem: com.intellij.openapi.diff.impl.patch.CharsetEP\n<+>UTF-8\n===================================================================\n--- app/src/main/java/com/project/farmingapp/view/auth/LoginActivity.kt\t(revision d0dcb8b4662cad8592336090eac9f8e56ae7147e)\n+++ app/src/main/java/com/project/farmingapp/view/auth/LoginActivity.kt\t(date 1609343274046)\n@@ -3,13 +3,32 @@\n import android.content.Intent\n import androidx.appcompat.app.AppCompatActivity\n import android.os.Bundle\n+import androidx.databinding.DataBindingUtil\n+import androidx.lifecycle.LiveData\n+import androidx.lifecycle.Observer\n+import androidx.lifecycle.ViewModelProviders\n import com.project.farmingapp.R\n+import com.project.farmingapp.databinding.ActivityLoginBinding\n+import com.project.farmingapp.databinding.ActivitySignupBinding\n+import com.project.farmingapp.utilities.hide\n+import com.project.farmingapp.utilities.show\n+import com.project.farmingapp.utilities.toast\n+import com.project.farmingapp.viewmodel.AuthListener\n+import com.project.farmingapp.viewmodel.AuthViewModel\n import kotlinx.android.synthetic.main.activity_login.*\n+import kotlinx.android.synthetic.main.activity_signup.*\n \n-class LoginActivity : AppCompatActivity() {\n+class LoginActivity : AppCompatActivity(),AuthListener {\n     override fun onCreate(savedInstanceState: Bundle?) {\n         super.onCreate(savedInstanceState)\n-        setContentView(R.layout.activity_login)\n+\n+\n+        val binding: ActivityLoginBinding =\n+            DataBindingUtil.setContentView(this, R.layout.activity_login)\n+        val viewModel = ViewModelProviders.of(this).get(AuthViewModel::class.java)\n+        binding.authViewModel = viewModel\n+\n+        viewModel.authListener = this\n \n         createaccountText.setOnClickListener {\n             Intent(this, SignupActivity::class.java).also {\n@@ -18,4 +37,22 @@\n         }\n \n     }\n+\n+    override fun onStarted() {\n+        progressLogin.show()\n+    }\n+\n+    override fun onSuccess(authRepo: LiveData<String>) {\n+        authRepo.observe(this, Observer {\n+            progressLogin.hide()\n+            if (it.toString() == \"Success\") {\n+                toast(\"Login successful\")\n+            }\n+        })\n+    }\n+\n+    override fun onFailure(message: String) {\n+        progressLogin.hide()\n+        toast(\"Failure\")\n+    }\n }\n\\ No newline at end of file\nIndex: app/src/main/java/com/project/farmingapp/model/AuthRepository.kt\nIDEA additional info:\nSubsystem: com.intellij.openapi.diff.impl.patch.BaseRevisionTextPatchEP\n<+>package com.project.farmingapp.model\\r\\n\\r\\nimport android.content.Intent\\r\\nimport android.util.Log\\r\\nimport android.widget.Toast\\r\\nimport androidx.lifecycle.LiveData\\r\\nimport androidx.lifecycle.MutableLiveData\\r\\nimport com.google.android.gms.auth.api.signin.GoogleSignInClient\\r\\nimport com.google.firebase.auth.FirebaseAuth\\r\\nimport com.google.firebase.firestore.FirebaseFirestore\\r\\n\\r\\nclass AuthRepository {\\r\\n\\r\\n    lateinit var googleSignInClient: GoogleSignInClient\\r\\n    val firebaseAuth = FirebaseAuth.getInstance()\\r\\n    lateinit var firebaseDb: FirebaseFirestore\\r\\n    fun signInWithEmail(email: String, password: String, otherData: HashMap<String, String?>): LiveData<String> {\\r\\n\\r\\n        firebaseDb = FirebaseFirestore.getInstance()\\r\\n        val data = MutableLiveData<String>()\\r\\n        val data2 = MutableLiveData<String>()\\r\\n        firebaseAuth.createUserWithEmailAndPassword(email, password).addOnCompleteListener {\\r\\n            if (it.isSuccessful) {\\r\\n\\r\\n//                Log.d(\\\"AuthRepo\\\", it.result!!.additionalUserInfo.toString())\\r\\n//                Log.d(\\\"AuthRepo2\\\", data.value)\\r\\n\\r\\n                firebaseDb!!.collection(\\\"users\\\").document(\\\"${email}\\\")\\r\\n                    .set(otherData)\\r\\n                    .addOnSuccessListener {\\r\\n                        data.value = \\\"Success\\\"\\r\\n//                        Toast.makeText(this, \\\"Data added\\\", Toast.LENGTH_SHORT).show()\\r\\n//                        Intent(this, LoginActivity::class.java).also {\\r\\n//                            startActivity(it)\\r\\n//                        }\\r\\n//                        data2.value = \\\"Success\\\"\\r\\n                    }\\r\\n                    .addOnFailureListener { Exception ->\\r\\n                        {\\r\\n                            data.value = \\\"Failure\\\"\\r\\n//                            data2.value = \\\"Failure\\\"\\r\\n//                            Toast.makeText(this, \\\"Error: ${Exception}\\\", Toast.LENGTH_SHORT).show()\\r\\n                        }\\r\\n                    }\\r\\n\\r\\n            } else if (it.isCanceled) {\\r\\n\\r\\n            }\\r\\n\\r\\n        }.addOnFailureListener {\\r\\n            Log.d(\\\"AuthRepo\\\", it.message)\\r\\n            data.value = it.message\\r\\n        }\\r\\n\\r\\n        return data\\r\\n    }\\r\\n\\r\\n    fun signInGoogle(){\\r\\n\\r\\n//        val gso = GoogleSignInOptions.Builder(GoogleSignInOptions.DEFAULT_SIGN_IN)\\r\\n//            .requestIdToken(getString(R.string.default_web_client_id))\\r\\n//            .requestEmail()\\r\\n//            .build()\\r\\n//        googleSignInClient = GoogleSignIn.getClient(this, gso)\\r\\n\\r\\n    }\\r\\n\\r\\n}\nSubsystem: com.intellij.openapi.diff.impl.patch.CharsetEP\n<+>UTF-8\n===================================================================\n--- app/src/main/java/com/project/farmingapp/model/AuthRepository.kt\t(revision d0dcb8b4662cad8592336090eac9f8e56ae7147e)\n+++ app/src/main/java/com/project/farmingapp/model/AuthRepository.kt\t(date 1609345661739)\n@@ -65,4 +65,31 @@\n \n     }\n \n+\n+    //bharat try new code here\n+    fun loginWithEmail(email: String, password: String): LiveData<String> {\n+\n+        firebaseDb = FirebaseFirestore.getInstance()\n+        val data = MutableLiveData<String>()\n+        firebaseAuth.signInWithEmailAndPassword(email, password).addOnCompleteListener {\n+            if (it.isSuccessful) {\n+                data.value=\"Success\"\n+\n+//                Log.d(\"AuthRepo\", it.result!!.additionalUserInfo.toString())\n+//                Log.d(\"AuthRepo2\", data.value)\n+\n+\n+            } else if (it.isCanceled) {\n+\n+            }\n+\n+        }.addOnFailureListener {\n+            Log.d(\"AuthRepo\", it.message)\n+            data.value = it.message\n+        }\n+\n+        return data\n+    }\n+\n+\n }\n\\ No newline at end of file\nIndex: app/src/main/res/layout/activity_login.xml\nIDEA additional info:\nSubsystem: com.intellij.openapi.diff.impl.patch.BaseRevisionTextPatchEP\n<+><?xml version=\\\"1.0\\\" encoding=\\\"utf-8\\\"?>\\r\\n\\r\\n<layout xmlns:android=\\\"http://schemas.android.com/apk/res/android\\\"\\r\\n    xmlns:app=\\\"http://schemas.android.com/apk/res-auto\\\"\\r\\n    xmlns:tools=\\\"http://schemas.android.com/tools\\\">\\r\\n    <data>\\r\\n        <variable\\r\\n            name=\\\"authViewModel\\\"\\r\\n            type=\\\"com.project.farmingapp.viewmodel.AuthViewModel\\\" />\\r\\n    </data>\\r\\n\\r\\n    <ScrollView\\r\\n        android:layout_width=\\\"match_parent\\\"\\r\\n        android:fillViewport=\\\"true\\\"\\r\\n        android:layout_height=\\\"match_parent\\\">\\r\\n\\r\\n        <androidx.constraintlayout.widget.ConstraintLayout\\r\\n            android:layout_width=\\\"match_parent\\\"\\r\\n            android:layout_height=\\\"match_parent\\\"\\r\\n\\r\\n            android:background=\\\"@drawable/authback\\\"\\r\\n            tools:context=\\\".view.auth.LoginActivity\\\">\\r\\n\\r\\n\\r\\n            <TextView\\r\\n                android:id=\\\"@+id/titleTextLogin\\\"\\r\\n                android:layout_width=\\\"wrap_content\\\"\\r\\n                android:layout_height=\\\"wrap_content\\\"\\r\\n                android:text=\\\"Farming App\\\"\\r\\n                android:textColor=\\\"#fff\\\"\\r\\n                android:textSize=\\\"30sp\\\"\\r\\n                android:textStyle=\\\"bold\\\"\\r\\n                app:layout_constraintBottom_toTopOf=\\\"@id/title2TextLogin\\\"\\r\\n                app:layout_constraintEnd_toEndOf=\\\"parent\\\"\\r\\n                app:layout_constraintStart_toStartOf=\\\"parent\\\"\\r\\n                app:layout_constraintTop_toTopOf=\\\"parent\\\"\\r\\n                />\\r\\n\\r\\n            <TextView\\r\\n                android:id=\\\"@+id/title2TextLogin\\\"\\r\\n                android:layout_width=\\\"wrap_content\\\"\\r\\n                android:layout_height=\\\"wrap_content\\\"\\r\\n                android:text=\\\"Login\\\"\\r\\n                android:textSize=\\\"17sp\\\"\\r\\n                android:textColor=\\\"#fff\\\"\\r\\n                app:layout_constraintBottom_toTopOf=\\\"@id/guide2\\\"\\r\\n                app:layout_constraintEnd_toEndOf=\\\"parent\\\"\\r\\n                app:layout_constraintHorizontal_bias=\\\"0.5\\\"\\r\\n                app:layout_constraintStart_toStartOf=\\\"parent\\\"\\r\\n                app:layout_constraintTop_toBottomOf=\\\"@id/titleTextLogin\\\" />\\r\\n\\r\\n            <androidx.constraintlayout.widget.Guideline\\r\\n                android:id=\\\"@+id/guide2\\\"\\r\\n                android:layout_width=\\\"match_parent\\\"\\r\\n                android:layout_height=\\\"wrap_content\\\"\\r\\n                android:orientation=\\\"horizontal\\\"\\r\\n                app:layout_constraintGuide_percent=\\\"0.15\\\" />\\r\\n\\r\\n            <com.google.android.material.textfield.TextInputLayout\\r\\n                android:id=\\\"@+id/emailContLogin\\\"\\r\\n                android:layout_width=\\\"match_parent\\\"\\r\\n                android:layout_height=\\\"wrap_content\\\"\\r\\n                android:layout_marginHorizontal=\\\"30dp\\\"\\r\\n                android:layout_marginTop=\\\"120dp\\\"\\r\\n                android:textColorHint=\\\"#60AA39\\\"\\r\\n                app:layout_constraintBottom_toTopOf=\\\"@id/passwordContLogin\\\"\\r\\n                app:layout_constraintStart_toStartOf=\\\"parent\\\"\\r\\n                app:layout_constraintTop_toBottomOf=\\\"@id/guide2\\\"\\r\\n                app:layout_constraintVertical_bias=\\\"0.0\\\">\\r\\n\\r\\n                <com.google.android.material.textfield.TextInputEditText\\r\\n                    android:id=\\\"@+id/emailEditLogin\\\"\\r\\n                    android:layout_width=\\\"match_parent\\\"\\r\\n                    android:layout_height=\\\"wrap_content\\\"\\r\\n                    android:backgroundTint=\\\"#0060AA39\\\"\\r\\n                    android:hint=\\\"Email\\\"\\r\\n                    android:textColor=\\\"#fff\\\"\\r\\n                    android:textStyle=\\\"bold\\\" />\\r\\n            </com.google.android.material.textfield.TextInputLayout>\\r\\n\\r\\n            <com.google.android.material.textfield.TextInputLayout\\r\\n                android:id=\\\"@+id/passwordContLogin\\\"\\r\\n                android:layout_width=\\\"match_parent\\\"\\r\\n                android:layout_height=\\\"wrap_content\\\"\\r\\n                android:layout_marginHorizontal=\\\"30dp\\\"\\r\\n                android:textColorHint=\\\"#60AA39\\\"\\r\\n                app:counterEnabled=\\\"false\\\"\\r\\n                app:counterMaxLength=\\\"10\\\"\\r\\n                app:passwordToggleTint=\\\"#fff\\\"\\r\\n                app:layout_constraintBottom_toTopOf=\\\"@id/loginBtnLogin\\\"\\r\\n                app:layout_constraintStart_toStartOf=\\\"parent\\\"\\r\\n                app:layout_constraintTop_toBottomOf=\\\"@id/emailContLogin\\\">\\r\\n\\r\\n                <com.google.android.material.textfield.TextInputEditText\\r\\n                    android:id=\\\"@+id/passwordEditLogin\\\"\\r\\n                    android:layout_width=\\\"match_parent\\\"\\r\\n                    android:layout_height=\\\"wrap_content\\\"\\r\\n                    android:backgroundTint=\\\"#0060AA39\\\"\\r\\n                    android:hint=\\\"Password\\\"\\r\\n                    android:inputType=\\\"phone\\\"\\r\\n                    android:textColor=\\\"#fff\\\"\\r\\n                    android:textStyle=\\\"bold\\\" />\\r\\n            </com.google.android.material.textfield.TextInputLayout>\\r\\n\\r\\n\\r\\n            <com.google.android.material.button.MaterialButton\\r\\n                android:id=\\\"@+id/loginBtnLogin\\\"\\r\\n                android:layout_width=\\\"100dp\\\"\\r\\n                android:layout_height=\\\"wrap_content\\\"\\r\\n                android:layout_marginTop=\\\"30dp\\\"\\r\\n\\r\\n                android:background=\\\"@drawable/all_buttons\\\"\\r\\n                android:padding=\\\"15sp\\\"\\r\\n                android:text=\\\"Login\\\"\\r\\n                android:textAlignment=\\\"center\\\"\\r\\n                android:textAllCaps=\\\"false\\\"\\r\\n                android:textColor=\\\"#fff\\\"\\r\\n                android:textStyle=\\\"bold\\\"\\r\\n                app:layout_constraintBottom_toTopOf=\\\"@id/orTextLogin\\\"\\r\\n                app:layout_constraintEnd_toEndOf=\\\"parent\\\"\\r\\n                app:layout_constraintHorizontal_bias=\\\"0.498\\\"\\r\\n                app:layout_constraintStart_toStartOf=\\\"parent\\\"\\r\\n                app:layout_constraintTop_toBottomOf=\\\"@id/passwordContLogin\\\" />\\r\\n\\r\\n            <TextView\\r\\n                android:id=\\\"@+id/orTextLogin\\\"\\r\\n                android:layout_width=\\\"wrap_content\\\"\\r\\n                android:layout_height=\\\"wrap_content\\\"\\r\\n                android:layout_marginTop=\\\"10dp\\\"\\r\\n                android:text=\\\"OR\\\"\\r\\n                android:textColor=\\\"#fff\\\"\\r\\n                android:textStyle=\\\"bold\\\"\\r\\n                app:layout_constraintEnd_toEndOf=\\\"parent\\\"\\r\\n                app:layout_constraintStart_toStartOf=\\\"parent\\\"\\r\\n                app:layout_constraintTop_toBottomOf=\\\"@+id/loginBtnLogin\\\" />\\r\\n\\r\\n            <com.google.android.gms.common.SignInButton\\r\\n                android:id=\\\"@+id/signGoogleBtnLogin\\\"\\r\\n                android:layout_width=\\\"130dp\\\"\\r\\n                android:layout_height=\\\"wrap_content\\\"\\r\\n                android:layout_marginTop=\\\"10dp\\\"\\r\\n                app:layout_constraintEnd_toEndOf=\\\"parent\\\"\\r\\n                app:layout_constraintHorizontal_bias=\\\"0.498\\\"\\r\\n                app:layout_constraintStart_toStartOf=\\\"parent\\\"\\r\\n                app:layout_constraintTop_toBottomOf=\\\"@id/orTextLogin\\\"\\r\\n                app:layout_constraintVertical_bias=\\\"0.0\\\" />\\r\\n\\r\\n            <TextView\\r\\n                android:id=\\\"@+id/createaccountText\\\"\\r\\n                android:layout_width=\\\"wrap_content\\\"\\r\\n                android:layout_height=\\\"wrap_content\\\"\\r\\n                android:text=\\\"Don't have an account? Create account\\\"\\r\\n                android:textColor=\\\"#fff\\\"\\r\\n                android:textSize=\\\"15sp\\\"\\r\\n                android:textStyle=\\\"bold\\\"\\r\\n                app:layout_constraintBottom_toBottomOf=\\\"parent\\\"\\r\\n                app:layout_constraintEnd_toEndOf=\\\"parent\\\"\\r\\n                app:layout_constraintStart_toStartOf=\\\"parent\\\"\\r\\n                app:layout_constraintTop_toBottomOf=\\\"@+id/signGoogleBtnLogin\\\" />\\r\\n          \\\" />\\r\\n\\r\\n        </androidx.constraintlayout.widget.ConstraintLayout>\\r\\n    </ScrollView>\\r\\n</layout>\\r\\n\\r\\n\nSubsystem: com.intellij.openapi.diff.impl.patch.CharsetEP\n<+>UTF-8\n===================================================================\n--- app/src/main/res/layout/activity_login.xml\t(revision d0dcb8b4662cad8592336090eac9f8e56ae7147e)\n+++ app/src/main/res/layout/activity_login.xml\t(date 1609342862034)\n@@ -69,6 +69,7 @@\n                 app:layout_constraintVertical_bias=\"0.0\">\n \n                 <com.google.android.material.textfield.TextInputEditText\n+                    android:text=\"@={authViewModel.loginmail}\"\n                     android:id=\"@+id/emailEditLogin\"\n                     android:layout_width=\"match_parent\"\n                     android:layout_height=\"wrap_content\"\n@@ -92,6 +93,7 @@\n                 app:layout_constraintTop_toBottomOf=\"@id/emailContLogin\">\n \n                 <com.google.android.material.textfield.TextInputEditText\n+                    android:text=\"@={authViewModel.loginpwd}\"\n                     android:id=\"@+id/passwordEditLogin\"\n                     android:layout_width=\"match_parent\"\n                     android:layout_height=\"wrap_content\"\n@@ -102,8 +104,18 @@\n                     android:textStyle=\"bold\" />\n             </com.google.android.material.textfield.TextInputLayout>\n \n-\n+            <ProgressBar\n+                android:id=\"@+id/progressLogin\"\n+                android:visibility=\"invisible\"\n+                android:layout_width=\"wrap_content\"\n+                android:layout_height=\"wrap_content\"\n+                app:layout_constraintBottom_toBottomOf=\"parent\"\n+                app:layout_constraintEnd_toEndOf=\"parent\"\n+                app:layout_constraintHorizontal_bias=\"0.5\"\n+                app:layout_constraintStart_toStartOf=\"parent\"\n+                app:layout_constraintTop_toTopOf=\"parent\" />\n             <com.google.android.material.button.MaterialButton\n+                android:onClick=\"@{authViewModel::loginButtonClicked}\"\n                 android:id=\"@+id/loginBtnLogin\"\n                 android:layout_width=\"100dp\"\n                 android:layout_height=\"wrap_content\"\nIndex: .idea/jarRepositories.xml\nIDEA additional info:\nSubsystem: com.intellij.openapi.diff.impl.patch.BaseRevisionTextPatchEP\n<+><?xml version=\\\"1.0\\\" encoding=\\\"UTF-8\\\"?>\\r\\n<project version=\\\"4\\\">\\r\\n  <component name=\\\"RemoteRepositoriesConfiguration\\\">\\r\\n    <remote-repository>\\r\\n      <option name=\\\"id\\\" value=\\\"central\\\" />\\r\\n      <option name=\\\"name\\\" value=\\\"Maven Central repository\\\" />\\r\\n      <option name=\\\"url\\\" value=\\\"https://repo1.maven.org/maven2\\\" />\\r\\n    </remote-repository>\\r\\n    <remote-repository>\\r\\n      <option name=\\\"id\\\" value=\\\"jboss.community\\\" />\\r\\n      <option name=\\\"name\\\" value=\\\"JBoss Community repository\\\" />\\r\\n      <option name=\\\"url\\\" value=\\\"https://repository.jboss.org/nexus/content/repositories/public/\\\" />\\r\\n    </remote-repository>\\r\\n    <remote-repository>\\r\\n      <option name=\\\"id\\\" value=\\\"BintrayJCenter\\\" />\\r\\n      <option name=\\\"name\\\" value=\\\"BintrayJCenter\\\" />\\r\\n      <option name=\\\"url\\\" value=\\\"https://jcenter.bintray.com/\\\" />\\r\\n    </remote-repository>\\r\\n    <remote-repository>\\r\\n      <option name=\\\"id\\\" value=\\\"Google\\\" />\\r\\n      <option name=\\\"name\\\" value=\\\"Google\\\" />\\r\\n      <option name=\\\"url\\\" value=\\\"https://dl.google.com/dl/android/maven2/\\\" />\\r\\n    </remote-repository>\\r\\n  </component>\\r\\n</project>\nSubsystem: com.intellij.openapi.diff.impl.patch.CharsetEP\n<+>UTF-8\n===================================================================\n--- .idea/jarRepositories.xml\t(revision d0dcb8b4662cad8592336090eac9f8e56ae7147e)\n+++ .idea/jarRepositories.xml\t(date 1609303744590)\n@@ -21,5 +21,10 @@\n       <option name=\"name\" value=\"Google\" />\n       <option name=\"url\" value=\"https://dl.google.com/dl/android/maven2/\" />\n     </remote-repository>\n+    <remote-repository>\n+      <option name=\"id\" value=\"maven\" />\n+      <option name=\"name\" value=\"maven\" />\n+      <option name=\"url\" value=\"https://jitpack.io\" />\n+    </remote-repository>\n   </component>\n </project>\n\\ No newline at end of file\nIndex: .idea/gradle.xml\nIDEA additional info:\nSubsystem: com.intellij.openapi.diff.impl.patch.BaseRevisionTextPatchEP\n<+><?xml version=\\\"1.0\\\" encoding=\\\"UTF-8\\\"?>\\r\\n<project version=\\\"4\\\">\\r\\n  <component name=\\\"GradleMigrationSettings\\\" migrationVersion=\\\"1\\\" />\\r\\n  <component name=\\\"GradleSettings\\\">\\r\\n    <option name=\\\"linkedExternalProjectsSettings\\\">\\r\\n      <GradleProjectSettings>\\r\\n        <option name=\\\"testRunner\\\" value=\\\"PLATFORM\\\" />\\r\\n        <option name=\\\"distributionType\\\" value=\\\"DEFAULT_WRAPPED\\\" />\\r\\n        <option name=\\\"externalProjectPath\\\" value=\\\"$PROJECT_DIR$\\\" />\\r\\n        <option name=\\\"gradleJvm\\\" value=\\\"1.8\\\" />\\r\\n        <option name=\\\"modules\\\">\\r\\n          <set>\\r\\n            <option value=\\\"$PROJECT_DIR$\\\" />\\r\\n            <option value=\\\"$PROJECT_DIR$/app\\\" />\\r\\n          </set>\\r\\n        </option>\\r\\n        <option name=\\\"resolveModulePerSourceSet\\\" value=\\\"false\\\" />\\r\\n      </GradleProjectSettings>\\r\\n    </option>\\r\\n  </component>\\r\\n</project>\nSubsystem: com.intellij.openapi.diff.impl.patch.CharsetEP\n<+>UTF-8\n===================================================================\n--- .idea/gradle.xml\t(revision d0dcb8b4662cad8592336090eac9f8e56ae7147e)\n+++ .idea/gradle.xml\t(date 1609303744597)\n@@ -15,6 +15,7 @@\n           </set>\n         </option>\n         <option name=\"resolveModulePerSourceSet\" value=\"false\" />\n+        <option name=\"useQualifiedModuleNames\" value=\"true\" />\n       </GradleProjectSettings>\n     </option>\n   </component>\nIndex: build.gradle\nIDEA additional info:\nSubsystem: com.intellij.openapi.diff.impl.patch.BaseRevisionTextPatchEP\n<+>// Top-level build file where you can add configuration options common to all sub-projects/modules.\\r\\nbuildscript {\\r\\n    ext.kotlin_version = \\\"1.3.72\\\"\\r\\n    repositories {\\r\\n        google()\\r\\n        jcenter()\\r\\n    }\\r\\n    dependencies {\\r\\n\\r\\n        classpath \\\"com.android.tools.build:gradle:4.0.1\\\"\\r\\n        classpath \\\"org.jetbrains.kotlin:kotlin-gradle-plugin:$kotlin_version\\\"\\r\\n\\r\\n        // NOTE: Do not place your application dependencies here; they belong\\r\\n        classpath 'com.google.gms:google-services:4.3.4'\\r\\n        // in the individual module build.gradle files\\r\\n        classpath \\\"androidx.navigation:navigation-safe-args-gradle-plugin:2.1.0-alpha05\\\"\\r\\n    }\\r\\n}\\r\\n\\r\\nallprojects {\\r\\n    repositories {\\r\\n        google()\\r\\n        jcenter()\\r\\n    }\\r\\n}\\r\\n\\r\\ntask clean(type: Delete) {\\r\\n    delete rootProject.buildDir\\r\\n}\nSubsystem: com.intellij.openapi.diff.impl.patch.CharsetEP\n<+>UTF-8\n===================================================================\n--- build.gradle\t(revision d0dcb8b4662cad8592336090eac9f8e56ae7147e)\n+++ build.gradle\t(date 1609303727423)\n@@ -21,6 +21,7 @@\n     repositories {\n         google()\n         jcenter()\n+\n     }\n }\n \nIndex: .idea/misc.xml\nIDEA additional info:\nSubsystem: com.intellij.openapi.diff.impl.patch.BaseRevisionTextPatchEP\n<+><?xml version=\\\"1.0\\\" encoding=\\\"UTF-8\\\"?>\\r\\n<project version=\\\"4\\\">\\r\\n  <component name=\\\"ProjectRootManager\\\" version=\\\"2\\\" languageLevel=\\\"JDK_1_7\\\" default=\\\"true\\\" project-jdk-name=\\\"1.8\\\" project-jdk-type=\\\"JavaSDK\\\">\\r\\n    <output url=\\\"file://$PROJECT_DIR$/build/classes\\\" />\\r\\n  </component>\\r\\n  <component name=\\\"ProjectType\\\">\\r\\n    <option name=\\\"id\\\" value=\\\"Android\\\" />\\r\\n  </component>\\r\\n</project>\nSubsystem: com.intellij.openapi.diff.impl.patch.CharsetEP\n<+>UTF-8\n===================================================================\n--- .idea/misc.xml\t(revision d0dcb8b4662cad8592336090eac9f8e56ae7147e)\n+++ .idea/misc.xml\t(date 1609303801213)\n@@ -1,6 +1,6 @@\n <?xml version=\"1.0\" encoding=\"UTF-8\"?>\n <project version=\"4\">\n-  <component name=\"ProjectRootManager\" version=\"2\" languageLevel=\"JDK_1_7\" default=\"true\" project-jdk-name=\"1.8\" project-jdk-type=\"JavaSDK\">\n+  <component name=\"ProjectRootManager\" version=\"2\" languageLevel=\"JDK_1_8\" default=\"true\" project-jdk-name=\"1.8\" project-jdk-type=\"JavaSDK\">\n     <output url=\"file://$PROJECT_DIR$/build/classes\" />\n   </component>\n   <component name=\"ProjectType\">\nIndex: app/build.gradle\nIDEA additional info:\nSubsystem: com.intellij.openapi.diff.impl.patch.BaseRevisionTextPatchEP\n<+>apply plugin: 'com.android.application'\\r\\napply plugin: 'kotlin-android'\\r\\napply plugin: 'kotlin-android-extensions'\\r\\napply plugin: 'kotlin-kapt'\\r\\napply plugin: \\\"androidx.navigation.safeargs\\\"\\r\\napply plugin: 'com.google.gms.google-services'\\r\\n\\r\\n\\r\\nandroid {\\r\\n    compileSdkVersion 29\\r\\n    buildToolsVersion \\\"29.0.2\\\"\\r\\n\\r\\n    defaultConfig {\\r\\n        applicationId \\\"com.project.farmingapp\\\"\\r\\n        minSdkVersion 21\\r\\n        targetSdkVersion 29\\r\\n        versionCode 1\\r\\n        versionName \\\"1.0\\\"\\r\\n\\r\\n        testInstrumentationRunner \\\"androidx.test.runner.AndroidJUnitRunner\\\"\\r\\n    }\\r\\n\\r\\n    buildTypes {\\r\\n        release {\\r\\n            minifyEnabled false\\r\\n            proguardFiles getDefaultProguardFile('proguard-android-optimize.txt'), 'proguard-rules.pro'\\r\\n        }\\r\\n    }\\r\\n    dataBinding {\\r\\n        enabled = true\\r\\n    }\\r\\n}\\r\\n\\r\\ndependencies {\\r\\n\\r\\n\\r\\n    implementation fileTree(dir: \\\"libs\\\", include: [\\\"*.jar\\\"])\\r\\n    implementation \\\"org.jetbrains.kotlin:kotlin-stdlib:$kotlin_version\\\"\\r\\n    implementation 'androidx.core:core-ktx:1.3.2'\\r\\n    implementation 'androidx.appcompat:appcompat:1.2.0'\\r\\n    implementation 'androidx.constraintlayout:constraintlayout:2.0.4'\\r\\n    implementation 'com.google.android.gms:play-services-auth:19.0.0'\\r\\n    implementation 'com.google.firebase:firebase-auth:16.0.5'\\r\\n    testImplementation 'junit:junit:4.12'\\r\\n    androidTestImplementation 'androidx.test.ext:junit:1.1.2'\\r\\n    androidTestImplementation 'androidx.test.espresso:espresso-core:3.3.0'\\r\\n\\r\\n\\r\\n    // retrofit and GSON\\r\\n    implementation 'com.squareup.retrofit2:retrofit:2.6.0'\\r\\n    implementation 'com.squareup.retrofit2:converter-gson:2.6.0'\\r\\n\\r\\n    // Kotlin coroutines\\r\\n    implementation 'org.jetbrains.kotlinx:kotlinx-coroutines-android:1.1.1'\\r\\n    implementation 'org.jetbrains.kotlinx:kotlinx-coroutines-core:1.1.1'\\r\\n\\r\\n    // ViewModel and LiveData\\r\\n    implementation 'androidx.lifecycle:lifecycle-extensions:2.0.0'\\r\\n\\r\\n\\r\\n// New Material Design\\r\\n    implementation 'com.google.android.material:material:1.1.0-alpha07'\\r\\n\\r\\n    // Kodein Dependency Injection\\r\\n    implementation 'org.kodein.di:kodein-di-generic-jvm:6.2.1'\\r\\n    implementation 'org.kodein.di:kodein-di-framework-android-x:6.2.1'\\r\\n\\r\\n    // Android Room\\r\\n    implementation 'androidx.room:room-runtime:2.1.0-rc01'\\r\\n    implementation 'androidx.room:room-ktx:2.1.0-rc01'\\r\\n    kapt 'androidx.room:room-compiler:2.1.0-rc01'\\r\\n\\r\\n// Android Navigation Architecture\\r\\n    implementation 'androidx.navigation:navigation-fragment-ktx:2.1.0-alpha05'\\r\\n    implementation 'androidx.navigation:navigation-ui-ktx:2.1.0-alpha05'\\r\\n\\r\\n    implementation platform('com.google.firebase:firebase-bom:26.2.0')\\r\\n    implementation 'com.google.firebase:firebase-firestore:21.5.0'\\r\\n    implementation 'com.google.firebase:firebase-storage:19.1.1'\\r\\n    implementation 'com.google.android.gms:play-services-auth:19.0.0'\\r\\n}\\r\\n\nSubsystem: com.intellij.openapi.diff.impl.patch.CharsetEP\n<+>UTF-8\n===================================================================\n--- app/build.gradle\t(revision d0dcb8b4662cad8592336090eac9f8e56ae7147e)\n+++ app/build.gradle\t(date 1609327434558)\n@@ -41,6 +41,7 @@\n     implementation 'androidx.constraintlayout:constraintlayout:2.0.4'\n     implementation 'com.google.android.gms:play-services-auth:19.0.0'\n     implementation 'com.google.firebase:firebase-auth:16.0.5'\n+    implementation 'com.google.firebase:firebase-firestore-ktx:22.0.1'\n     testImplementation 'junit:junit:4.12'\n     androidTestImplementation 'androidx.test.ext:junit:1.1.2'\n     androidTestImplementation 'androidx.test.espresso:espresso-core:3.3.0'\n"
  },
  {
    "path": ".idea/shelf/Uncommitted_changes_before_Update_at_30-12-2020_21_59_[Default_Changelist]1/shelved.patch",
    "content": ""
  },
  {
    "path": ".idea/shelf/Uncommitted_changes_before_Update_at_30-12-2020_21_59__Default_Changelist_.xml",
    "content": "<changelist name=\"Uncommitted_changes_before_Update_at_30-12-2020_21_59_[Default_Changelist]\" date=\"1609345750373\" recycled=\"false\" toDelete=\"true\">\n  <option name=\"PATH\" value=\"$PROJECT_DIR$/.idea/shelf/Uncommitted_changes_before_Update_at_30-12-2020_21_59_[Default_Changelist]/shelved.patch\" />\n  <option name=\"DESCRIPTION\" value=\"Uncommitted changes before Update at 30-12-2020 21:59 [Default Changelist]\" />\n</changelist>"
  },
  {
    "path": ".idea/vcs.xml",
    "content": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<project version=\"4\">\n  <component name=\"VcsDirectoryMappings\">\n    <mapping directory=\"$PROJECT_DIR$\" vcs=\"Git\" />\n  </component>\n</project>"
  },
  {
    "path": "LICENSE",
    "content": "MIT License\n\nCopyright (c) 2021 Het Suthar\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n"
  },
  {
    "path": "README.md",
    "content": "# 👨‍🌾 Agri India - One stop application for Indian Farmers\n\n✒️ This is an Android Application designed for our Indian farmers. \n\n✒️ The technology has become a part and parcel of everyone's life and it is also helping us to make our daily tasks easy.\nWe identified that in the Agriculture sector, the farmers are still lacking the best technology use cases. \n\n✒️ There are thousands of applications in the markets for farmers but they only provide the limited features.\n\n✒️ The main reason for creating this application was to combine every possible feature into the single app. This will remove the burden of managing multiple account and apps for farmers.\nThe application is also designed in such a way that it will be easy to use.\n<br /><br />\n\n\n## ✨ Features:\n- Government Yojna Awareness\n- E-commerce Platform\n- Daily APMC Price Updates\n- Community Network (Social Media)\n- Reading articles based on categories\n- Weather Forecasting\n<br /><br />\n\n## 📱 Technologies / Tools used for building this app includes:\n| Android Studio | Firebase | Kotlin | External APIs | Android OS |\n| --- | --- | --- | --- | --- |\n\n\n## 🤩 Designs:\n<img src=\"https://github.com/hetsuthar028/Farming-App/blob/master/Agri India.png\" />\n\n## 😀 If you liked the app, Please give it a ⭐ and fork the repository. 🤚🏻\n"
  },
  {
    "path": "app/.gitignore",
    "content": "/build"
  },
  {
    "path": "app/build.gradle",
    "content": "apply plugin: 'com.android.application'\napply plugin: 'kotlin-android'\napply plugin: 'kotlin-android-extensions'\napply plugin: 'kotlin-kapt'\napply plugin: \"androidx.navigation.safeargs\"\napply plugin: 'com.google.gms.google-services'\n\nrepositories {\n\n    mavenCentral()\n\n    flatDir {\n        dirs 'libs'\n    }\n}\n\nandroid {\n\n    compileOptions {\n        sourceCompatibility JavaVersion.VERSION_1_8\n        targetCompatibility JavaVersion.VERSION_1_8\n    }\n\n    compileSdkVersion 29\n    buildToolsVersion \"29.0.2\"\n\n    defaultConfig {\n        applicationId \"com.project.farmingapp\"\n        minSdkVersion 21\n        targetSdkVersion 29\n        versionCode 1\n        versionName \"1.0\"\n\n        testInstrumentationRunner \"androidx.test.runner.AndroidJUnitRunner\"\n    }\n\n    buildTypes {\n        release {\n            minifyEnabled false\n            proguardFiles getDefaultProguardFile('proguard-android-optimize.txt'), 'proguard-rules.pro'\n        }\n    }\n    dataBinding {\n        enabled = true\n    }\n}\n\ndependencies {\n\n\n    implementation fileTree(dir: \"libs\", include: [\"*.jar\"])\n    implementation \"org.jetbrains.kotlin:kotlin-stdlib:$kotlin_version\"\n    implementation 'androidx.core:core-ktx:1.3.2'\n    implementation 'androidx.appcompat:appcompat:1.2.0'\n    implementation 'androidx.constraintlayout:constraintlayout:2.0.4'\n    implementation 'com.google.android.gms:play-services-auth:19.0.0'\n    implementation 'com.google.firebase:firebase-auth:16.0.5'\n    implementation 'androidx.legacy:legacy-support-v4:1.0.0'\n    testImplementation 'junit:junit:4.12'\n    androidTestImplementation 'androidx.test.ext:junit:1.1.2'\n    androidTestImplementation 'androidx.test.espresso:espresso-core:3.3.0'\n\n\n    // retrofit and GSON\n    implementation 'com.squareup.retrofit2:retrofit:2.6.0'\n    implementation 'com.squareup.retrofit2:converter-gson:2.6.0'\n\n    // Kotlin coroutines\n    implementation 'org.jetbrains.kotlinx:kotlinx-coroutines-android:1.1.1'\n    implementation 'org.jetbrains.kotlinx:kotlinx-coroutines-core:1.1.1'\n\n    // ViewModel and LiveData\n    implementation 'androidx.lifecycle:lifecycle-extensions:2.0.0'\n\n    //Location\n    implementation 'com.google.android.gms:play-services-location:18.0.0'\n\n// New Material Design\n    implementation 'com.google.android.material:material:1.1.0-alpha07'\n\n    // Kodein Dependency Injection\n    implementation 'org.kodein.di:kodein-di-generic-jvm:6.2.1'\n    implementation 'org.kodein.di:kodein-di-framework-android-x:6.2.1'\n\n    // Android Room\n    implementation 'androidx.room:room-runtime:2.1.0-rc01'\n    implementation 'androidx.room:room-ktx:2.1.0-rc01'\n    kapt 'androidx.room:room-compiler:2.1.0-rc01'\n\n// Android Navigation Architecture\n    implementation 'androidx.navigation:navigation-fragment-ktx:2.1.0-alpha05'\n    implementation 'androidx.navigation:navigation-ui-ktx:2.1.0-alpha05'\n\n    implementation platform('com.google.firebase:firebase-bom:26.2.0')\n    implementation 'com.google.firebase:firebase-firestore:21.5.0'\n    implementation 'com.google.firebase:firebase-storage:19.1.1'\n    implementation 'com.google.android.gms:play-services-auth:19.0.0'\n\n    //Picasso\n    implementation 'com.squareup.picasso:picasso:2.71828'\n\n    //Glide\n    implementation 'com.github.bumptech.glide:glide:4.11.0'\n    annotationProcessor 'com.github.bumptech.glide:compiler:4.11.0'\n\n    implementation 'com.littlemango:stacklayoutmanager:1.0.5'\n\n    implementation 'com.azoft.carousellayoutmanager:carousel:1.4.4'\n\n    implementation \"com.jakewharton:butterknife:10.1.0\"\n    annotationProcessor \"com.jakewharton:butterknife-compiler:10.1.0\"\n\n\n    //carossal\n    implementation 'com.github.mohan-dev1248:PosterSlider:1.0.2'\n\n    //Realtime\n    implementation 'com.google.firebase:firebase-database-ktx'\n\n    //RazorPay\n    implementation 'com.razorpay:checkout:1.5.16'\n\n\n}\n"
  },
  {
    "path": "app/google-services.json",
    "content": "{\n  \"project_info\": {\n    \"project_number\": \"1089918384238\",\n    \"project_id\": \"farming-app-2fc2a\",\n    \"storage_bucket\": \"farming-app-2fc2a.appspot.com\"\n  },\n  \"client\": [\n    {\n      \"client_info\": {\n        \"mobilesdk_app_id\": \"1:1089918384238:android:4c17926368f206dcd48e7f\",\n        \"android_client_info\": {\n          \"package_name\": \"com.project.farmingapp\"\n        }\n      },\n      \"oauth_client\": [\n        {\n          \"client_id\": \"1089918384238-fiogt24o945tpa23267nhvapi7jic8jj.apps.googleusercontent.com\",\n          \"client_type\": 3\n        }\n      ],\n      \"api_key\": [\n        {\n          \"current_key\": \"AIzaSyAm2wobnn3z6sp6QD5uMcmlQMm2MzXTLgE\"\n        }\n      ],\n      \"services\": {\n        \"appinvite_service\": {\n          \"other_platform_oauth_client\": [\n            {\n              \"client_id\": \"1089918384238-fiogt24o945tpa23267nhvapi7jic8jj.apps.googleusercontent.com\",\n              \"client_type\": 3\n            }\n          ]\n        }\n      }\n    }\n  ],\n  \"configuration_version\": \"1\"\n}"
  },
  {
    "path": "app/proguard-rules.pro",
    "content": "# Add project specific ProGuard rules here.\n# You can control the set of applied configuration files using the\n# proguardFiles setting in build.gradle.\n#\n# For more details, see\n#   http://developer.android.com/guide/developing/tools/proguard.html\n\n# If your project uses WebView with JS, uncomment the following\n# and specify the fully qualified class name to the JavaScript interface\n# class:\n#-keepclassmembers class fqcn.of.javascript.interface.for.webview {\n#   public *;\n#}\n\n# Uncomment this to preserve the line number information for\n# debugging stack traces.\n#-keepattributes SourceFile,LineNumberTable\n\n# If you keep the line number information, uncomment this to\n# hide the original source file name.\n#-renamesourcefileattribute SourceFile"
  },
  {
    "path": "app/src/androidTest/java/com/project/farmingapp/ExampleInstrumentedTest.kt",
    "content": "package com.project.farmingapp\n\nimport androidx.test.platform.app.InstrumentationRegistry\nimport androidx.test.ext.junit.runners.AndroidJUnit4\n\nimport org.junit.Test\nimport org.junit.runner.RunWith\n\nimport org.junit.Assert.*\n\n/**\n * Instrumented test, which will execute on an Android device.\n *\n * See [testing documentation](http://d.android.com/tools/testing).\n */\n@RunWith(AndroidJUnit4::class)\nclass ExampleInstrumentedTest {\n    @Test\n    fun useAppContext() {\n        // Context of the app under test.\n        val appContext = InstrumentationRegistry.getInstrumentation().targetContext\n        assertEquals(\"com.project.farmingapp\", appContext.packageName)\n    }\n}"
  },
  {
    "path": "app/src/main/AndroidManifest.xml",
    "content": "<?xml version=\"1.0\" encoding=\"utf-8\"?>\n<manifest xmlns:android=\"http://schemas.android.com/apk/res/android\"\n    package=\"com.project.farmingapp\">\n\n    <uses-permission android:name=\"android.permission.INTERNET\" />\n    <uses-permission android:name=\"android.permission.ACCESS_FINE_LOCATION\" />\n    <!-- Needed only if your app targets Android 5.0 (API level 21) or higher. -->\n    <uses-feature android:name=\"android.hardware.location.gps\" />\n\n    <application\n        android:allowBackup=\"true\"\n        android:icon=\"@mipmap/ic_launcher\"\n        android:label=\"@string/app_name\"\n        android:roundIcon=\"@mipmap/ic_launcher_round\"\n        android:supportsRtl=\"true\"\n        android:theme=\"@style/AppTheme\">\n        <activity android:name=\".view.introscreen.IntroActivity\"\n            android:theme=\"@style/AppTheme2\">\n\n        </activity>\n        <activity android:name=\".view.ecommerce.RazorPayActivity\" />\n        <activity android:name=\".view.dashboard.DashboardActivity\">\n            <intent-filter>\n                <action android:name=\"android.intent.action.MAIN\" />\n\n                <category android:name=\"android.intent.category.LAUNCHER\" />\n            </intent-filter>\n        </activity>\n        <activity\n            android:name=\".view.auth.SignupActivity\"\n            android:noHistory=\"true\"\n            android:theme=\"@style/AppTheme2\" />\n        <activity\n            android:name=\".view.auth.LoginActivity\"\n            android:noHistory=\"true\"\n            android:theme=\"@style/AppTheme2\">\n\n        </activity>\n\n        <meta-data\n            android:name=\"com.razorpay.ApiKey\"\n            android:value=\"@string/key_id\" />\n        <meta-data\n            android:name=\"preloaded_fonts\"\n            android:resource=\"@array/preloaded_fonts\" />\n    </application>\n\n</manifest>"
  },
  {
    "path": "app/src/main/java/com/project/farmingapp/PrePaymentFragment.kt",
    "content": "package com.project.farmingapp\n\nimport android.app.Activity\nimport android.content.Intent\nimport android.os.Bundle\nimport android.util.Log\nimport androidx.fragment.app.Fragment\nimport android.view.LayoutInflater\nimport android.view.View\nimport android.view.ViewGroup\nimport android.widget.Toast\nimport com.project.farmingapp.view.ecommerce.RazorPayActivity\nimport com.razorpay.Checkout\nimport com.razorpay.PaymentResultListener\nimport kotlinx.android.synthetic.main.fragment_pre_payment.*\nimport org.json.JSONObject\n\n// TODO: Rename parameter arguments, choose names that match\n// the fragment initialization parameters, e.g. ARG_ITEM_NUMBER\nprivate const val ARG_PARAM1 = \"param1\"\nprivate const val ARG_PARAM2 = \"param2\"\n\n/**\n * A simple [Fragment] subclass.\n * Use the [PrePaymentFragment.newInstance] factory method to\n * create an instance of this fragment.\n */\nclass PrePaymentFragment : Fragment() {\n    // TODO: Rename and change types of parameters\n    private var param1: String? = null\n    private var param2: String? = null\n\n    override fun onCreate(savedInstanceState: Bundle?) {\n        super.onCreate(savedInstanceState)\n        arguments?.let {\n            param1 = it.getString(ARG_PARAM1)\n            param2 = it.getString(ARG_PARAM2)\n        }\n    }\n\n    override fun onCreateView(\n        inflater: LayoutInflater, container: ViewGroup?,\n        savedInstanceState: Bundle?\n    ): View? {\n        // Inflate the layout for this fragment\n        return inflater.inflate(R.layout.fragment_pre_payment, container, false)\n    }\n\n    override fun onViewCreated(view: View, savedInstanceState: Bundle?) {\n        super.onViewCreated(view, savedInstanceState)\n\n\n    }\n    companion object {\n        /**\n         * Use this factory method to create a new instance of\n         * this fragment using the provided parameters.\n         *\n         * @param param1 Parameter 1.\n         * @param param2 Parameter 2.\n         * @return A new instance of fragment PrePaymentFragment.\n         */\n        // TODO: Rename and change types and number of parameters\n        @JvmStatic\n        fun newInstance(param1: String, param2: String) =\n            PrePaymentFragment().apply {\n                arguments = Bundle().apply {\n                    putString(ARG_PARAM1, param1)\n                    putString(ARG_PARAM2, param2)\n                }\n            }\n    }\n\n\n\n}"
  },
  {
    "path": "app/src/main/java/com/project/farmingapp/adapter/ApmcAdapter.kt",
    "content": "package com.project.farmingapp.adapter\n\nimport android.content.Context\nimport android.view.LayoutInflater\nimport android.view.View\nimport android.view.ViewGroup\nimport android.widget.TextView\nimport androidx.recyclerview.widget.RecyclerView\nimport com.project.farmingapp.R\nimport com.project.farmingapp.model.data.APMCCustomRecords\nimport com.project.farmingapp.model.data.APMCMain\nimport com.project.farmingapp.model.data.APMCRecords\n\nclass ApmcAdapter(val context: Context, val data: List<APMCCustomRecords>) :\n    RecyclerView.Adapter<ApmcAdapter.ApmcViewHolder>() {\n    class ApmcViewHolder(itemView: View) : RecyclerView.ViewHolder(itemView) {\n\n        var market = itemView.findViewById<TextView>(R.id.apmcNameValue)\n        var location = itemView.findViewById<TextView>(R.id.apmcLocationValue)\n        var commodity = itemView.findViewById<TextView>(R.id.comodityname)\n        var min = itemView.findViewById<TextView>(R.id.minvalue)\n        var max = itemView.findViewById<TextView>(R.id.maxvalue)\n//        var modal=itemView.findViewById<TextView>(R.id.modalValueTextApmc)\n\n    }\n\n    override fun onCreateViewHolder(parent: ViewGroup, viewType: Int): ApmcViewHolder {\n        val view = LayoutInflater.from(context).inflate(R.layout.apmc_single_list, parent, false)\n        return ApmcViewHolder(view)\n    }\n\n    override fun getItemCount(): Int {\n        return data.size\n    }\n\n    override fun onBindViewHolder(holder: ApmcViewHolder, position: Int) {\n        val mainData = data[position]\n        holder.market.text = mainData.market\n        holder.location.text = mainData.district + \" , \" + mainData.state\n        for (i in mainData.commodity) {\n            holder.commodity.text = holder.commodity.text .toString()+ i + \"\\n\"\n        }\n        holder.commodity.text = holder.commodity.text.toString().trimEnd()\n\n        for (i in mainData.min_price){\n            holder.min.text = holder.min.text.toString() + i + \"\\n\"\n        }\n        holder.min.text = holder.min.text.toString().trimEnd()\n\n        for(i in mainData.max_price){\n            holder.max.text = holder.max.text.toString() + i + \"\\n\"\n        }\n        holder.max.text = holder.max.text.toString().trimEnd()\n\n//        holder.modal.text=mainData.modal_price\n    }\n}"
  },
  {
    "path": "app/src/main/java/com/project/farmingapp/adapter/ArticleListAdapter.kt",
    "content": "package com.project.farmingapp.adapter\n\nimport android.content.Context\nimport android.view.LayoutInflater\nimport android.view.View\nimport android.view.ViewGroup\nimport android.widget.AbsListView\nimport android.widget.AdapterView\nimport android.widget.ImageView\nimport android.widget.TextView\nimport androidx.cardview.widget.CardView\nimport androidx.recyclerview.widget.RecyclerView\nimport com.bumptech.glide.Glide\nimport com.bumptech.glide.load.resource.bitmap.RoundedCorners\nimport com.bumptech.glide.request.RequestOptions\nimport com.google.firebase.firestore.DocumentSnapshot\nimport com.project.farmingapp.R\nimport com.project.farmingapp.model.data.WeatherList\nimport com.project.farmingapp.utilities.CellClickListener\nimport org.kodein.di.android.androidCoreContextTranslators\nimport kotlin.math.round\n\nclass ArticleListAdapter(val context: Context, val articleListData: List<DocumentSnapshot>, private val cellClickListener: CellClickListener): RecyclerView.Adapter<ArticleListAdapter.ArticleListViewholder>() {\n    class ArticleListViewholder(itemView: View): RecyclerView.ViewHolder(itemView){\n        var articleName = itemView.findViewById<TextView>(R.id.descTextxArticleListFrag)\n        var articleImage = itemView.findViewById<ImageView>(R.id.imageArticleListFrag)\n        var articleCard = itemView.findViewById<CardView>(R.id.articleListCardArtListFrag)\n    }\n\n    override fun onCreateViewHolder(parent: ViewGroup, viewType: Int): ArticleListViewholder {\n        val view = LayoutInflater.from(context).inflate(R.layout.article_list_single, parent, false)\n        return ArticleListAdapter.ArticleListViewholder(view)\n    }\n\n    override fun getItemCount(): Int {\n        return articleListData.size\n    }\n\n    override fun onBindViewHolder(holder: ArticleListViewholder, position: Int) {\n        val singleArticle = articleListData[position]\n\n        holder.articleName.text = singleArticle.data!!.get(\"title\").toString()\n        holder.articleCard.setOnClickListener {\n            cellClickListener.onCellClickListener(singleArticle.data!!.get(\"title\").toString())\n        }\n        var list : List<String> = singleArticle.data!!.get(\"images\") as List<String>\n\n        Glide.with(holder.itemView.context)\n            .load(list[0])\n//            .apply(RequestOptions.bitmapTransform(\n//                RoundedCorners(20)\n//            ))\n            .into(holder.articleImage)\n\n    }\n}"
  },
  {
    "path": "app/src/main/java/com/project/farmingapp/adapter/AttributesNormalAdapter.kt",
    "content": "package com.project.farmingapp.adapter\n\nimport android.content.Context\nimport android.text.Layout\nimport android.view.LayoutInflater\nimport android.view.View\nimport android.view.ViewGroup\nimport androidx.recyclerview.widget.RecyclerView\nimport com.project.farmingapp.R\nimport kotlinx.android.synthetic.main.single_normal_attributes_ecomm.view.*\n\nclass AttributesNormalAdapter(val context: Context, val allData : List<Map<String, Any>>): RecyclerView.Adapter<AttributesNormalAdapter.AttributesNormalViewHolder>() {\n    class AttributesNormalViewHolder(itemView: View): RecyclerView.ViewHolder(itemView){\n\n    }\n\n    override fun onCreateViewHolder(parent: ViewGroup, viewType: Int): AttributesNormalViewHolder {\n        val view = LayoutInflater.from(context).inflate(R.layout.single_normal_attributes_ecomm, parent, false)\n        return AttributesNormalAdapter.AttributesNormalViewHolder(view)\n    }\n\n    override fun getItemCount(): Int {\n        return allData.size\n    }\n\n    override fun onBindViewHolder(holder: AttributesNormalViewHolder, position: Int) {\n        val currentData = allData[position]\n        for((key, value) in currentData){\n            holder.itemView.normalAttributeTitle.text = key.toString() + \" - \"\n            holder.itemView.normalAttributeValue.text = value.toString()\n        }\n    }\n}"
  },
  {
    "path": "app/src/main/java/com/project/farmingapp/adapter/AttributesSelectionAdapter.kt",
    "content": "package com.project.farmingapp.adapter\n\nimport android.content.Context\nimport android.graphics.Color\nimport android.graphics.Typeface\nimport android.text.style.TypefaceSpan\nimport android.view.LayoutInflater\nimport android.view.View\nimport android.view.ViewGroup\nimport android.widget.Toast\nimport androidx.recyclerview.widget.RecyclerView\nimport com.project.farmingapp.R\nimport com.project.farmingapp.utilities.CellClickListener\nimport kotlinx.android.synthetic.main.single_selection_attributes_ecomm.view.*\n\nclass AttributesSelectionAdapter(var context: Context, var allData: List<Map<String, Any>>, private val cellClickListener: CellClickListener): RecyclerView.Adapter<AttributesSelectionAdapter.AttributesSelectionViewHolder>() {\n    class AttributesSelectionViewHolder(itemView: View): RecyclerView.ViewHolder(itemView){\n\n    }\n\n    override fun onCreateViewHolder(\n        parent: ViewGroup,\n        viewType: Int\n    ): AttributesSelectionViewHolder {\n        val view = LayoutInflater.from(context).inflate(R.layout.single_selection_attributes_ecomm, parent, false)\n        return AttributesSelectionAdapter.AttributesSelectionViewHolder(view)\n    }\n\n    override fun getItemCount(): Int {\n        return allData.size\n    }\n\n    override fun onBindViewHolder(holder: AttributesSelectionViewHolder, position: Int) {\n        val currentData = allData[position] as Map<String, Any>\n\n\n        for ((key, values) in currentData){\n\n            cellClickListener.onCellClickListener(\"1 ${key}\")\n\n            holder.itemView.attributeTitle.text = key\n            var allValues = values as ArrayList<String>\n            var currentValue = allValues[0].toString().split(\" \")\n            holder.itemView.attribute1.text = currentValue[0].toString()\n            holder.itemView.attribute1Price.text = currentValue[1].toString()\n\n            currentValue = allValues[1].toString().split(\" \")\n            holder.itemView.attribute2.text = currentValue[0].toString()\n            holder.itemView.attribute2Price.text = currentValue[1].toString()\n\n            currentValue = allValues[2].toString().split(\" \")\n            holder.itemView.attribute3.text = currentValue[0].toString()\n            holder.itemView.attribute3Price.text = currentValue[1].toString()\n\n//            holder.itemView.attribute1.text = currentValue[0].toString()\n//            holder.itemView.attribute1Price.text = currentValue[1].toString()\n\n            holder.itemView.cardSize1.setOnClickListener {\n                cellClickListener.onCellClickListener(\"1 ${key}\")\n                Toast.makeText(context, \"You Clicked 1\", Toast.LENGTH_SHORT).show()\n                holder.itemView.cardSize1.backgroundTintList = context.getResources().getColorStateList(R.color.colorPrimary)\n                holder.itemView.attribute1.setTextColor(Color.parseColor(\"#FFFFFF\"))\n                holder.itemView.attribute1Price.setTextColor(Color.parseColor(\"#FFFFFF\"))\n                holder.itemView.attribute1.setTypeface(null, Typeface.BOLD)\n                holder.itemView.attribute1Price.setTypeface(null, Typeface.BOLD)\n\n                holder.itemView.cardSize2.backgroundTintList = context.getResources().getColorStateList(R.color.secondary)\n                holder.itemView.attribute2.setTextColor(Color.parseColor(\"#FF404A3A\"))\n                holder.itemView.attribute2Price.setTextColor(Color.parseColor(\"#FF404A3A\"))\n                holder.itemView.attribute2.setTypeface(null, Typeface.NORMAL)\n                holder.itemView.attribute2Price.setTypeface(null, Typeface.NORMAL)\n\n                holder.itemView.cardSize3.backgroundTintList = context.getResources().getColorStateList(R.color.secondary)\n                holder.itemView.attribute3.setTextColor(Color.parseColor(\"#FF404A3A\"))\n                holder.itemView.attribute3Price.setTextColor(Color.parseColor(\"#FF404A3A\"))\n                holder.itemView.attribute3.setTypeface(null, Typeface.NORMAL)\n                holder.itemView.attribute3Price.setTypeface(null, Typeface.NORMAL)\n            }\n\n            holder.itemView.cardSize2.setOnClickListener {\n                cellClickListener.onCellClickListener(\"2 ${key}\")\n\n\n                holder.itemView.cardSize2.backgroundTintList = context.getResources().getColorStateList(R.color.colorPrimary)\n                holder.itemView.attribute2.setTextColor(Color.parseColor(\"#FFFFFF\"))\n                holder.itemView.attribute2Price.setTextColor(Color.parseColor(\"#FFFFFF\"))\n                holder.itemView.attribute2.setTypeface(null, Typeface.BOLD)\n                holder.itemView.attribute2Price.setTypeface(null, Typeface.BOLD)\n\n                holder.itemView.cardSize3.backgroundTintList = context.getResources().getColorStateList(R.color.secondary)\n                holder.itemView.attribute3.setTextColor(Color.parseColor(\"#FF404A3A\"))\n                holder.itemView.attribute3Price.setTextColor(Color.parseColor(\"#FF404A3A\"))\n                holder.itemView.attribute3.setTypeface(null, Typeface.NORMAL)\n                holder.itemView.attribute3Price.setTypeface(null, Typeface.NORMAL)\n\n                holder.itemView.cardSize1.backgroundTintList = context.getResources().getColorStateList(R.color.secondary)\n                holder.itemView.attribute1.setTextColor(Color.parseColor(\"#FF404A3A\"))\n                holder.itemView.attribute1Price.setTextColor(Color.parseColor(\"#FF404A3A\"))\n                holder.itemView.attribute1.setTypeface(null, Typeface.NORMAL)\n                holder.itemView.attribute1Price.setTypeface(null, Typeface.NORMAL)\n\n                Toast.makeText(context, \"You Clicked 2\", Toast.LENGTH_SHORT).show()\n            }\n\n            holder.itemView.cardSize3.setOnClickListener {\n                cellClickListener.onCellClickListener(\"3 ${key}\")\n                Toast.makeText(context, \"You Clicked 3\", Toast.LENGTH_SHORT).show()\n\n                holder.itemView.cardSize3.backgroundTintList = context.getResources().getColorStateList(R.color.colorPrimary)\n                holder.itemView.attribute3.setTextColor(Color.parseColor(\"#FFFFFF\"))\n                holder.itemView.attribute3Price.setTextColor(Color.parseColor(\"#FFFFFF\"))\n                holder.itemView.attribute3.setTypeface(null, Typeface.BOLD)\n                holder.itemView.attribute3Price.setTypeface(null, Typeface.BOLD)\n\n                holder.itemView.cardSize1.backgroundTintList = context.getResources().getColorStateList(R.color.secondary)\n                holder.itemView.attribute1.setTextColor(Color.parseColor(\"#FF404A3A\"))\n                holder.itemView.attribute1Price.setTextColor(Color.parseColor(\"#FF404A3A\"))\n                holder.itemView.attribute1.setTypeface(null, Typeface.NORMAL)\n                holder.itemView.attribute1Price.setTypeface(null, Typeface.NORMAL)\n\n                holder.itemView.cardSize2.backgroundTintList = context.getResources().getColorStateList(R.color.secondary)\n                holder.itemView.attribute2.setTextColor(Color.parseColor(\"#FF404A3A\"))\n                holder.itemView.attribute2Price.setTextColor(Color.parseColor(\"#FF404A3A\"))\n                holder.itemView.attribute2.setTypeface(null, Typeface.NORMAL)\n                holder.itemView.attribute2Price.setTypeface(null, Typeface.NORMAL)\n            }\n        }\n    }\n}"
  },
  {
    "path": "app/src/main/java/com/project/farmingapp/adapter/CartItemsAdapter.kt",
    "content": "package com.project.farmingapp.adapter\n\nimport android.util.Log\nimport android.view.LayoutInflater\nimport android.view.View\nimport android.view.ViewGroup\nimport androidx.lifecycle.Observer\nimport androidx.recyclerview.widget.RecyclerView\nimport com.bumptech.glide.Glide\nimport com.google.firebase.auth.FirebaseAuth\nimport com.google.firebase.database.FirebaseDatabase\nimport com.google.firebase.firestore.FirebaseFirestore\nimport com.project.farmingapp.R\nimport com.project.farmingapp.utilities.CartItemBuy\nimport com.project.farmingapp.view.ecommerce.CartFragment\nimport com.project.farmingapp.viewmodel.EcommViewModel\nimport kotlinx.android.synthetic.main.single_cart_item.view.*\n\nclass CartItemsAdapter(\n    val context: CartFragment,\n    val allData: HashMap<String, Object>,\n    val cartitembuy: CartItemBuy\n) :\n    RecyclerView.Adapter<CartItemsAdapter.CartItemsViewHolder>() {\n    var itemCost = 0\n    var deliveryCharge = 0\n    var quantity = 0\n    class CartItemsViewHolder(itemView: View) : RecyclerView.ViewHolder(itemView) {\n\n    }\n\n    override fun onCreateViewHolder(parent: ViewGroup, viewType: Int): CartItemsViewHolder {\n        val view = LayoutInflater.from(context.context).inflate(R.layout.single_cart_item, parent, false)\n        return CartItemsAdapter.CartItemsViewHolder(view)\n    }\n\n    override fun getItemCount(): Int {\n        return allData.size\n    }\n\n    override fun onBindViewHolder(holder: CartItemsViewHolder, position: Int) {\n        val currentData = allData.entries.toTypedArray()[position]\n        val firebaseFirestore = FirebaseFirestore.getInstance()\n        val firebaseDatabase = FirebaseDatabase.getInstance()\n        val firebaseAuth = FirebaseAuth.getInstance()\n\n        val itemQtyRef =\n            firebaseDatabase.getReference(\"${firebaseAuth.currentUser!!.uid}\").child(\"cart\")\n                .child(\"${currentData.key}\").child(\"quantity\")\n\n        val itemRef =\n            firebaseDatabase.getReference(\"${firebaseAuth.currentUser!!.uid}\").child(\"cart\")\n                .child(\"${currentData.key}\")\n\n        holder.itemView.cartItemBuyBtn.setOnClickListener {\n            var qty = holder.itemView.quantityCountEcomm.text.toString().toInt()\n            var itemPrice =\n                holder.itemView.itemPriceCart.text.toString().split(\"₹\") as ArrayList<String>\n            var deliveryCharge = holder.itemView.deliveryChargeCart.text.toString().toInt()\n            Log.d(\"totalPrice\", quantity.toString())\n            Log.d(\"totalPrice\", itemCost.toString())\n            Log.d(\"totalPrice\", deliveryCharge.toString())\n            cartitembuy.addToOrders(\"${currentData.key}\", qty,itemPrice[1].toInt() , deliveryCharge)\n        }\n\n        holder.itemView.removeCartBtn.setOnClickListener {\n            itemRef.removeValue()\n        }\n\n        holder.itemView.increaseQtyBtn.setOnClickListener {\n\n            holder.itemView.quantityCountEcomm.text =\n                (holder.itemView.quantityCountEcomm.text.toString().toInt() + 1).toString()\n            itemQtyRef.setValue(holder.itemView.quantityCountEcomm.text.toString().toInt())\n        }\n\n        holder.itemView.decreaseQtyBtn.setOnClickListener {\n            if (holder.itemView.quantityCountEcomm.text.toString().toInt() != 1) {\n                holder.itemView.quantityCountEcomm.text =\n                    (holder.itemView.quantityCountEcomm.text.toString().toInt() - 1).toString()\n                itemQtyRef.setValue(holder.itemView.quantityCountEcomm.text.toString().toInt())\n            }\n        }\n\n        val curr = currentData.value as Map<String, Object>\n\n        val ecommViewModel = EcommViewModel()\n\n        ecommViewModel.getSpecificItem(\"${currentData.key}\").observe(context, Observer {\n            itemCost = it.get(\"price\").toString().toInt()\n            deliveryCharge = it.get(\"delCharge\").toString().toInt()\n            quantity = curr.get(\"quantity\").toString().toInt()\n            holder.itemView.itemNameCart.text = it.getString(\"title\").toString()\n            holder.itemView.itemPriceCart.text = \"\\u20B9\" + itemCost.toString()\n            holder.itemView.quantityCountEcomm.text = quantity.toString()\n            holder.itemView.deliveryChargeCart.text = deliveryCharge.toString()\n            holder.itemView.cartItemFirm.text = it.get(\"retailer\").toString()\n            holder.itemView.cartItemAvailability.text = it.get(\"availability\").toString()\n\n\n            val allImages = it.get(\"imageUrl\") as ArrayList<String>\n            Glide.with(context).load(allImages[0].toString()).into(holder.itemView.cartItemImage)\n            holder.itemView.cartItemBuyBtn.text = \"Buy Now: \" + \"\\u20B9\" + (itemCost!!*curr.get(\"quantity\").toString().toInt() + deliveryCharge!!).toString()\n        })\n    }\n}"
  },
  {
    "path": "app/src/main/java/com/project/farmingapp/adapter/CurrentWeatherAdapter.kt",
    "content": "package com.project.farmingapp.adapter\n\nimport android.content.Context\nimport android.util.Log\nimport android.view.LayoutInflater\nimport android.view.View\nimport android.view.ViewGroup\nimport android.view.animation.AnimationUtils\nimport android.widget.ImageView\nimport android.widget.TextView\nimport android.widget.Toast\nimport androidx.constraintlayout.widget.ConstraintLayout\nimport androidx.recyclerview.widget.RecyclerView\nimport com.bumptech.glide.Glide\nimport com.project.farmingapp.R\nimport com.project.farmingapp.model.data.WeatherList\nimport kotlinx.android.synthetic.main.post_with_image_sm.view.*\nimport kotlinx.android.synthetic.main.single_currentweather.view.*\n\nclass CurrentWeatherAdapter(val context: Context, val weatherrootdatas:List<WeatherList>):\n    RecyclerView.Adapter<CurrentWeatherAdapter.CurrentWeatherViewHolder>() {\n    class CurrentWeatherViewHolder(itemView: View): RecyclerView.ViewHolder(itemView) {\n        var Ctemp=itemView.findViewById<TextView>(R.id.temp)\n        var Cwedesc=itemView.findViewById<TextView>(R.id.desc)\n        var Cwelogo=itemView.findViewById<ImageView>(R.id.icon)\n        var CminTemp=itemView.findViewById<TextView>(R.id.minTemp)\n        var CmaxTemp=itemView.findViewById<TextView>(R.id.maxTemp)\n        var Chumidity=itemView.findViewById<TextView>(R.id.humidity)\n        var CtodayTitle=itemView.findViewById<TextView>(R.id.todayTitle)\n        var continer = itemView.findViewById<ConstraintLayout>(R.id.currentWeatherContainer)\n\n\n\n\n\n    }\n\n    override fun onCreateViewHolder(\n        parent: ViewGroup,\n        viewType: Int\n    ): CurrentWeatherAdapter.CurrentWeatherViewHolder {\n        val view= LayoutInflater.from(context).inflate(R.layout.single_currentweather,parent,false)\n        return CurrentWeatherAdapter.CurrentWeatherViewHolder(view)\n    }\n\n    override fun getItemCount(): Int {\n        return weatherrootdatas.size\n    }\n\n    override fun onBindViewHolder(holder: CurrentWeatherAdapter.CurrentWeatherViewHolder, position: Int) {\n        val weathernew =weatherrootdatas[position]\n        holder.Ctemp.text = (weathernew.main.temp - 273.15).toInt().toString() + \"\\u2103\"\n        holder.Cwedesc.text = weathernew.weather[0].description.toString().capitalize()\n\n        holder.CtodayTitle.text = \"Today, \" + weathernew.dt_txt.toString().slice(10..15)\n\n\n        Log.d(\"Something\", weathernew.dt_txt.toString().slice(10..-1))\n\n//        var tempMin = \"\"\n//        for(a in weathernew.main.temp_min){\n//        }\n        var ss = weathernew.main.temp_min.length\n        holder.CminTemp.text = (weathernew.main.temp_min.toDouble() - 273.1).toInt().toString()+ \"\\u2103\"\n//        holder.continer.animation = AnimationUtils.loadAnimation(context, R.anim.fade_scale)\n\n//        holder.itemView.setOnFocusChangeListener { view, b ->\n//\n//        }\n        holder.itemView.currentWeatherContainer.animation = AnimationUtils.loadAnimation(context, R.anim.fade_scale)\n\n        \n\n        holder.CmaxTemp.text = (weathernew.main.temp_max.toDouble() - 273.1).toInt().toString() + \"\\u2103\"\n        holder.Chumidity.text = weathernew.main.humidity.toString() + \"%\"\n        var iconcode=weathernew.weather[0].icon.toString()\n        var iconurl = \"https://openweathermap.org/img/w/\" + iconcode + \".png\";\n\n        Glide.with(holder.itemView.context)\n            .load(iconurl)\n            .into(holder.Cwelogo)\n    }\n}"
  },
  {
    "path": "app/src/main/java/com/project/farmingapp/adapter/DashboardEcomItemAdapter.kt",
    "content": "package com.project.farmingapp.adapter\n\nimport android.content.Context\nimport android.view.LayoutInflater\nimport android.view.View\nimport android.view.ViewGroup\nimport androidx.recyclerview.widget.RecyclerView\nimport com.bumptech.glide.Glide\nimport com.google.firebase.firestore.DocumentSnapshot\nimport com.project.farmingapp.R\nimport com.project.farmingapp.utilities.CellClickListener\nimport kotlinx.android.synthetic.main.single_dashboard_ecomm_item.view.*\n\n\nclass DashboardEcomItemAdapter(var context: Context,val allData: List<DocumentSnapshot>, val itemsToShow: List<Int>, val cellClickListener: CellClickListener): RecyclerView.Adapter<DashboardEcomItemAdapter.DashboardEcomItemViewHolder>() {\n    class DashboardEcomItemViewHolder(itemView: View): RecyclerView.ViewHolder(itemView){\n\n    }\n\n    override fun onCreateViewHolder(parent: ViewGroup, viewType: Int): DashboardEcomItemViewHolder {\n        val view = LayoutInflater.from(context).inflate(R.layout.single_dashboard_ecomm_item, parent, false)\n        return DashboardEcomItemViewHolder(view)\n    }\n\n    override fun getItemCount(): Int {\n        return itemsToShow.size\n    }\n\n    override fun onBindViewHolder(holder: DashboardEcomItemViewHolder, position: Int) {\n        val currentData = allData[itemsToShow[position]]\n\n        holder.itemView.itemTitle.text = currentData.get(\"title\").toString()\n        holder.itemView.itemPrice.text = \"\\u20B9\"  + currentData.get(\"price\").toString()\n        val allImages = currentData.get(\"imageUrl\") as ArrayList<String>\n        Glide.with(context).load(allImages[0]).into(holder.itemView.itemImage)\n        holder.itemView.setOnClickListener {\n            cellClickListener.onCellClickListener(currentData.id)\n        }\n\n    }\n\n}"
  },
  {
    "path": "app/src/main/java/com/project/farmingapp/adapter/EcommerceAdapter.kt",
    "content": "package com.project.farmingapp.adapter\n\nimport android.content.Context\nimport android.view.LayoutInflater\nimport android.view.View\nimport android.view.ViewGroup\nimport androidx.appcompat.view.menu.MenuView\nimport androidx.recyclerview.widget.RecyclerView\nimport com.bumptech.glide.Glide\nimport com.google.firebase.auth.FirebaseAuth\nimport com.google.firebase.firestore.DocumentSnapshot\nimport com.google.firebase.firestore.FirebaseFirestore\nimport com.project.farmingapp.R\nimport com.project.farmingapp.utilities.CellClickListener\nimport kotlinx.android.synthetic.main.post_with_image_sm.view.*\nimport kotlinx.android.synthetic.main.single_ecomm_item.view.*\n\nclass EcommerceAdapter(val context: Context, val ecommtListData : List<DocumentSnapshot>, private val cellClickListener: CellClickListener):RecyclerView.Adapter<EcommerceAdapter.EcommercceViewModel>() {\n\n    lateinit var firebaseAuth: FirebaseAuth\n    lateinit var firebaseFirestore: FirebaseFirestore\n    class EcommercceViewModel(itemView: View):RecyclerView.ViewHolder(itemView) {\n\n    }\n\n    override fun onCreateViewHolder(\n        parent: ViewGroup,\n        viewType: Int\n    ): EcommerceAdapter.EcommercceViewModel {\n        val view = LayoutInflater.from(context).inflate(R.layout.single_ecomm_item, parent, false)\n        return EcommerceAdapter.EcommercceViewModel(view)\n    }\n\n    override fun getItemCount(): Int {\n        return ecommtListData.size\n    }\n\n    override fun onBindViewHolder(holder: EcommerceAdapter.EcommercceViewModel, position: Int) {\n        val currentList = ecommtListData[position]\n        holder.itemView.ecommtitle.text = currentList.get(\"title\").toString()\n        holder.itemView.ecommPrice.text = \"\\u20B9 \"+currentList.get(\"price\").toString()\n        holder.itemView.ecommretailer.text = currentList.get(\"retailer\").toString()\n        holder.itemView.ecommItemAvailability.text = currentList.get(\"availability\").toString()\n        val allImages = currentList.get(\"imageUrl\") as List<String>\n        Glide.with(context).load(allImages[0].toString()).into(holder.itemView.ecommImage)\n        holder.itemView.ecommRating.rating = currentList.get(\"rating\").toString().toFloat()\n\n       holder.itemView.setOnClickListener {\n           cellClickListener.onCellClickListener(currentList.id.toString())\n       }\n\n    }\n}"
  },
  {
    "path": "app/src/main/java/com/project/farmingapp/adapter/IntroAdapter.kt",
    "content": "package com.project.farmingapp.adapter\n\nimport android.view.LayoutInflater\nimport android.view.View\nimport android.view.ViewGroup\nimport android.widget.ImageView\nimport android.widget.TextView\nimport androidx.recyclerview.widget.RecyclerView\nimport com.project.farmingapp.R\nimport com.project.farmingapp.model.data.IntroData\n\nclass IntroAdapter(private val introSlides: List<IntroData>): RecyclerView.Adapter<IntroAdapter.IntroViewHolder>() {\n    inner class IntroViewHolder(view: View) : RecyclerView.ViewHolder(view){\n\n        private val textTitle = view.findViewById<TextView>(R.id.sliderTitle)\n        private val textDescription = view.findViewById<TextView>(R.id.sliderDescription)\n        private val imageIcon = view.findViewById<ImageView>(R.id.imageSlider)\n\n        fun bind(introSlider: IntroData){\n            textTitle.text = introSlider.title\n            textDescription.text = introSlider.description\n            imageIcon.setImageResource(introSlider.image)\n\n        }\n    }\n\n    override fun onCreateViewHolder(parent: ViewGroup, viewType: Int): IntroViewHolder {\n        return IntroViewHolder(\n            LayoutInflater.from(parent.context).inflate(R.layout.single_slider_screen, parent, false)\n        )\n    }\n\n    override fun getItemCount(): Int {\n        return introSlides.size\n    }\n\n    override fun onBindViewHolder(holder: IntroViewHolder, position: Int) {\n        holder.bind(introSlides[position])\n    }\n}"
  },
  {
    "path": "app/src/main/java/com/project/farmingapp/adapter/MyOrdersAdapter.kt",
    "content": "package com.project.farmingapp.adapter\n\nimport android.content.Intent\nimport android.util.Log\nimport android.view.LayoutInflater\nimport android.view.View\nimport android.view.ViewGroup\nimport androidx.recyclerview.widget.RecyclerView\nimport com.bumptech.glide.Glide\nimport com.project.farmingapp.R\nimport com.project.farmingapp.utilities.CartItemBuy\nimport com.project.farmingapp.utilities.CellClickListener\nimport com.project.farmingapp.view.ecommerce.MyOrdersFragment\nimport com.project.farmingapp.view.ecommerce.RazorPayActivity\nimport com.project.farmingapp.viewmodel.EcommViewModel\nimport kotlinx.android.synthetic.main.single_myorder_item.view.*\nimport java.text.SimpleDateFormat\nimport java.time.LocalDate\nimport java.time.format.DateTimeFormatter\nimport java.util.*\nimport kotlin.collections.HashMap\n\nclass MyOrdersAdapter(\n    val context: MyOrdersFragment,\n    val allData: HashMap<String, Object>,\n    val cellClickListener: CellClickListener,\n    val cartItemBuy: CartItemBuy\n) : RecyclerView.Adapter<MyOrdersAdapter.MyOrdersViewHolder>() {\n    class MyOrdersViewHolder(itemView: View) : RecyclerView.ViewHolder(itemView) {\n\n    }\n\n    override fun onCreateViewHolder(parent: ViewGroup, viewType: Int): MyOrdersViewHolder {\n        val view = LayoutInflater.from(context.context)\n            .inflate(R.layout.single_myorder_item, parent, false)\n        return MyOrdersViewHolder(view)\n    }\n\n    override fun getItemCount(): Int {\n        return allData.size\n    }\n\n    override fun onBindViewHolder(holder: MyOrdersViewHolder, position: Int) {\n        val myOrder = allData.entries.toTypedArray()[position].value as HashMap<String, Object>\n        val viewModel = EcommViewModel()\n\n        val currentItemAllData = viewModel.getSpecificItem(\"${myOrder.get(\"productId\")}\")\n            .observe(context, androidx.lifecycle.Observer {\n                Log.d(\"MyOrdersAdapter\", it.toString())\n                holder.itemView.myOrderPinCode.text = myOrder.get(\"pincode\").toString()\n                holder.itemView.myOrderItemName.text = it!!.getString(\"title\")\n                holder.itemView.myOrderItemPrice.text =\n                    \"\\u20B9\" + (myOrder.get(\"quantity\").toString()\n                        .toInt() * myOrder.get(\"itemCost\").toString()\n                        .toInt() + myOrder.get(\"deliveryCost\").toString().toInt()).toString()\n                holder.itemView.myOrderPinCode.text =\n                    \"Pin Code: \" + myOrder.get(\"pincode\").toString()\n                holder.itemView.myOderDeliveryCharge.text = myOrder.get(\"deliveryCost\").toString()\n                holder.itemView.myOrderDeliveryStatus.text =\n                    myOrder.get(\"deliveryStatus\").toString()\n                val allImages = it.get(\"imageUrl\") as List<String>\n                Glide.with(context).load(allImages[0]).into(holder.itemView.myOderItemImage)\n                val date = myOrder.get(\"time\").toString().split(\" \") as List<String>\n                holder.itemView.myOrderTimeStamp.text = date[0].toString()\n            })\n        holder.itemView.myOrderPurchaseAgain.setOnClickListener {\n            cartItemBuy.addToOrders(myOrder.get(\"productId\").toString(), myOrder.get(\"quantity\").toString().toInt(), myOrder.get(\"itemCost\").toString().toInt(), myOrder.get(\"deliveryCost\").toString().toInt())\n        }\n        holder.itemView.setOnClickListener {\n            cellClickListener.onCellClickListener(\"${myOrder.get(\"productId\")}\")\n        }\n    }\n}"
  },
  {
    "path": "app/src/main/java/com/project/farmingapp/adapter/PaginationListener.kt",
    "content": "package com.project.farmingapp.adapter\n\nimport androidx.recyclerview.widget.LinearLayoutManager\nimport androidx.recyclerview.widget.RecyclerView\n\n\npublic abstract class PaginationListener : RecyclerView.OnScrollListener() {\n    companion object{\n        public val PAGE_START = 1\n    }\n\n    private var layoutManager: LinearLayoutManager? = null\n\n    /**\n     * Set scrolling threshold here (for now i'm assuming 10 item in one page)\n     */\n    private val PAGE_SIZE = 10\n\n    /**\n     * Supporting only LinearLayoutManager for now.\n     */\n    open fun PaginationListener(layoutManager: LinearLayoutManager) {\n        this.layoutManager = layoutManager\n    }\n\n    override fun onScrolled(recyclerView: RecyclerView, dx: Int, dy: Int) {\n        super.onScrolled(recyclerView, dx, dy)\n        val visibleItemCount = layoutManager!!.childCount\n        val totalItemCount = layoutManager!!.itemCount\n        val firstVisibleItemPosition = layoutManager!!.findFirstVisibleItemPosition()\n        if (!isLoading() && !isLastPage()) {\n            if (visibleItemCount + firstVisibleItemPosition >= totalItemCount && firstVisibleItemPosition >= 0 && totalItemCount >= PAGE_SIZE\n            ) {\n                loadMoreItems()\n            }\n        }\n    }\n\n    protected abstract fun loadMoreItems()\n    abstract fun isLastPage(): Boolean\n    abstract fun isLoading(): Boolean\n}"
  },
  {
    "path": "app/src/main/java/com/project/farmingapp/adapter/PostListUserProfileAdapter.kt",
    "content": "package com.project.farmingapp.adapter\n\nimport android.content.Context\nimport android.text.Layout\nimport android.text.format.DateUtils\nimport android.view.LayoutInflater\nimport android.view.View\nimport android.view.ViewGroup\nimport androidx.recyclerview.widget.RecyclerView\nimport com.bumptech.glide.Glide\nimport com.google.firebase.firestore.DocumentSnapshot\nimport com.project.farmingapp.R\nimport com.project.farmingapp.utilities.CellClickListener\nimport kotlinx.android.synthetic.main.user_profile_posts_single.view.*\n\nclass PostListUserProfileAdapter(val context: Context, var listData: ArrayList<DocumentSnapshot>, private val cellClickListener: CellClickListener) : RecyclerView.Adapter<PostListUserProfileAdapter.PostListUserProfileViewHolder>() {\n    class PostListUserProfileViewHolder(itemView: View): RecyclerView.ViewHolder(itemView){\n\n    }\n\n    override fun onCreateViewHolder(\n        parent: ViewGroup,\n        viewType: Int\n    ): PostListUserProfileViewHolder {\n        val view = LayoutInflater.from(context).inflate(R.layout.user_profile_posts_single, parent, false)\n        return PostListUserProfileAdapter.PostListUserProfileViewHolder(view)\n    }\n\n    override fun getItemCount(): Int {\n        return listData.size\n    }\n\n    override fun onBindViewHolder(holder: PostListUserProfileViewHolder, position: Int) {\n        val currentData = listData[position]\n\n        holder.itemView.userPostTitleUserProfileFrag.text = currentData.get(\"title\").toString()\n        holder.itemView.userPostUploadTimeUserProfileFrag.text = DateUtils.getRelativeTimeSpanString(currentData.get(\"timeStamp\") as Long)\n        holder.itemView.userPostProfileCard.setOnClickListener {\n            cellClickListener.onCellClickListener(currentData.id)\n        }\n        if (!currentData.get(\"imageUrl\").toString().isNullOrEmpty()){\n            Glide.with(context).load(currentData.getString(\"imageUrl\")).into(holder.itemView.userPostImageUserProfileFrag)\n        }\n    }\n}"
  },
  {
    "path": "app/src/main/java/com/project/farmingapp/adapter/SMPostListAdapter.kt",
    "content": "package com.project.farmingapp.adapter\n\nimport android.content.Context\nimport android.text.format.DateUtils\nimport android.util.Log\nimport android.view.LayoutInflater\nimport android.view.View\nimport android.view.ViewGroup\nimport android.view.animation.AnimationUtils\nimport android.webkit.WebSettings\nimport android.webkit.WebView\nimport android.webkit.WebViewClient\nimport androidx.recyclerview.widget.RecyclerView\nimport com.bumptech.glide.Glide\nimport com.google.firebase.auth.FirebaseAuth\nimport com.google.firebase.firestore.DocumentSnapshot\nimport com.google.firebase.firestore.FirebaseFirestore\nimport com.project.farmingapp.R\nimport kotlinx.android.synthetic.main.post_with_image_sm.view.*\n\n\nclass SMPostListAdapter(val context: Context, val postListData : List<DocumentSnapshot>): RecyclerView.Adapter<SMPostListAdapter.SMPostListViewModel>() {\n\n    lateinit var firebaseAuth: FirebaseAuth\n    lateinit var firebaseFirestore: FirebaseFirestore\n    class SMPostListViewModel(itemView: View): RecyclerView.ViewHolder(itemView){\n\n    }\n\n    override fun onCreateViewHolder(parent: ViewGroup, viewType: Int): SMPostListViewModel {\n        val view = LayoutInflater.from(context).inflate(R.layout.post_with_image_sm, parent, false)\n        return SMPostListAdapter.SMPostListViewModel(view)\n    }\n\n    override fun getItemCount(): Int {\n        return postListData.size\n    }\n\n    override fun onBindViewHolder(holder: SMPostListViewModel, position: Int) {\n        val currentPost = postListData[position]\n\n\n\n        holder.itemView.userNamePostSM.text = currentPost.get(\"name\").toString()\n        holder.itemView.userPostTitleValue.text = currentPost.get(\"title\").toString()\n        holder.itemView.userPostDescValue.text = currentPost.get(\"description\").toString()\n        holder.itemView.userPostUploadTime.text = DateUtils.getRelativeTimeSpanString(currentPost.get(\"timeStamp\") as Long)\n\n        val imageUrl = currentPost.get(\"imageUrl\")\n        Log.d(\"Post without Image1\", imageUrl.toString())\n\n\n        val uploadType = currentPost.get(\"uploadType\").toString()\n        if (uploadType == \"video\"){\n\n//            val mediaController: MediaController = MediaController(context.applicationContext)\n////            val uri: Uri = Uri.parse()\n//            mediaController.setAnchorView(holder.itemView.postVideoSM)\n//\n//            holder.itemView.postVideoSM.setZOrderMediaOverlay(true)\n//            holder.itemView.postVideoSM.setMediaController(mediaController)\n//\n//            Log.d(\"Upload Type 1 \", uploadType)\n//            holder.itemView.postVideoSM.setVideoPath(currentPost.getString(\"imageUrl\"))\n////            videoView1.requestFocus()\n//            holder.itemView.postVideoSM.setOnPreparedListener {\n//\n//            }\n//            holder.itemView.postVideoSM.start()\n//\n//            holder.itemView.postImageSM.visibility = View.GONE\n//            holder.itemView.postVideoSM.visibility = View.VISIBLE\n\n\n            // Web View\n\n            val webSet: WebSettings = holder.itemView.postVideoSM.settings\n            webSet.javaScriptEnabled = true\n            webSet.loadWithOverviewMode = true\n            webSet.useWideViewPort = true\n\n\n            holder.itemView.postVideoSM.setWebViewClient(object : WebViewClient() {\n                // autoplay when finished loading via javascript injection\n                override fun onPageFinished(view: WebView, url: String) {\n//                    holder.itemView.postVideoSM.loadUrl(\"javascript:(function() { document.getElementsByTagName('video')[0].play(); })()\")\n                }\n            })\n\n\n            holder.itemView.postVideoSM.loadUrl(currentPost.get(\"imageUrl\").toString())\n//            holder.itemView.postVideoSM.stopLoading()\n            holder.itemView.postImageSM.visibility = View.GONE\n            holder.itemView.postVideoSM.visibility = View.VISIBLE\n\n\n        } else if (uploadType == \"image\"){\n            Glide.with(context).load(currentPost.get(\"imageUrl\")).into(holder.itemView.postImageSM)\n            holder.itemView.postVideoSM.visibility = View.GONE\n\n            holder.itemView.postImageSM.visibility = View.VISIBLE\n            Log.d(\"Upload Type 2 \", uploadType)\n        }else if (uploadType.isEmpty() ){\n            Log.d(\"Post without Image2\", imageUrl.toString())\n            holder.itemView.postImageSM.visibility = View.GONE\n            holder.itemView.postVideoSM.visibility = View.GONE\n            Log.d(\"Upload Type 3 \", uploadType)\n        }\n\n        firebaseAuth = FirebaseAuth.getInstance()\n\n        holder.itemView.userProfileImageCard.animation = AnimationUtils.loadAnimation(context, R.anim.fade_transition)\n        holder.itemView.post_container.animation = AnimationUtils.loadAnimation(context, R.anim.fade_transition)\n\n\n        holder.itemView.post_container.animation = AnimationUtils.loadAnimation(context, R.anim.fade_transition)\n//        Glide.with(context).load(firebaseAuth.currentUser!!.photoUrl.toString()).into(holder.itemView.userProfileImagePost)\n        holder.itemView.userPostDescValue.setOnClickListener {\n            holder.itemView.userPostDescValue.maxLines = Int.MAX_VALUE\n        }\n\n\n\n        firebaseFirestore = FirebaseFirestore.getInstance()\n        firebaseFirestore.collection(\"users\").document(\"${currentPost.get(\"userID\")}\").get()\n            .addOnSuccessListener {\n                val profileImage = it.get(\"profileImage\").toString()\n                if (!profileImage.isNullOrEmpty()){\n                    Glide.with(context).load(it.get(\"profileImage\").toString()).into(holder.itemView.userProfileImagePost)\n                }\n            }\n    }\n}"
  },
  {
    "path": "app/src/main/java/com/project/farmingapp/adapter/WeatherAdapter.kt",
    "content": "package com.project.farmingapp.adapter\n\nimport android.content.Context\nimport android.util.Log\nimport android.view.LayoutInflater\nimport android.view.View\nimport android.view.ViewGroup\nimport android.widget.ImageView\nimport android.widget.TextView\nimport androidx.recyclerview.widget.RecyclerView\nimport com.bumptech.glide.Glide\nimport com.project.farmingapp.R\nimport com.project.farmingapp.model.data.WeatherList\nimport java.text.SimpleDateFormat\nimport java.time.LocalDateTime\nimport java.util.*\n\nclass WeatherAdapter(val context: Context, val weatherrootdatas: List<WeatherList>) :\n    RecyclerView.Adapter<WeatherAdapter.WeatherViewHolder>() {\n    class WeatherViewHolder(itemView: View) : RecyclerView.ViewHolder(itemView) {\n        var wedate = itemView.findViewById<TextView>(R.id.weatherDate)\n        var wedesc = itemView.findViewById<TextView>(R.id.weatherDescription)\n        var wemain = itemView.findViewById<TextView>(R.id.weatherTemperature)\n        var welogo = itemView.findViewById<ImageView>(R.id.weatherIcon)\n\n    }\n\n    override fun onCreateViewHolder(parent: ViewGroup, viewType: Int): WeatherViewHolder {\n        val view = LayoutInflater.from(context).inflate(R.layout.single_weather, parent, false)\n        return WeatherViewHolder(view)\n    }\n\n    override fun getItemCount(): Int {\n        return weatherrootdatas.size\n    }\n\n\n    override fun onBindViewHolder(holder: WeatherAdapter.WeatherViewHolder, position: Int) {\n        val weathernew = weatherrootdatas[position]\n\n        val inputFormat = SimpleDateFormat(\"yyyy-MM-dd\")\n        val outputFormat = SimpleDateFormat(\"dd/MM/yyyy\")\n\n        val date: Date = inputFormat.parse(weathernew.dt_txt.slice(0..9))\n        val outputDate = outputFormat.format(date)\n\n        Log.d(\"New Date\", outputDate.toString())\n\n        val we = weathernew.weather[0]\n        val we2 = weathernew.main\n        holder.wedate.text = outputDate\n        holder.wedesc.text = we.description.capitalize()\n        Log.d(\"weatherTemp\", we2.temp.toString())\n        val Temp = we2.temp - 273.15\n        holder.wemain.text = Temp.toInt().toString() + \"\\u2103\"\n\n        var iconcode = weathernew.weather[0].icon.toString()\n\n        var iconurl = \"https://openweathermap.org/img/w/\" + iconcode + \".png\";\n        Log.d(\"weatherlogo\", iconcode.toString())\n        Glide.with(holder.itemView.context)\n            .load(iconurl)\n            .into(holder.welogo)\n    }\n}"
  },
  {
    "path": "app/src/main/java/com/project/farmingapp/adapter/YojnaAdapter.kt",
    "content": "package com.project.farmingapp.adapter\n\nimport android.content.Context\nimport android.view.LayoutInflater\nimport android.view.View\nimport android.view.ViewGroup\nimport android.widget.ImageView\nimport android.widget.TextView\nimport androidx.cardview.widget.CardView\nimport androidx.recyclerview.widget.RecyclerView\nimport com.bumptech.glide.Glide\nimport com.google.firebase.firestore.DocumentSnapshot\nimport com.project.farmingapp.R\nimport com.project.farmingapp.utilities.CellClickListener\n\nclass YojnaAdapter(val context: Context, val yojnaData: List<DocumentSnapshot>, private val cellClickListener: CellClickListener): RecyclerView.Adapter<YojnaAdapter.YojnaListviewHolder>() {\n    class YojnaListviewHolder(itemview: View):RecyclerView.ViewHolder(itemview) {\n        var yojnaName = itemView.findViewById<TextView>(R.id.yojnaTitleYojnaList)\n        var yojnaImage = itemView.findViewById<ImageView>(R.id.yojnaImageYojnaList)\n        var yojnaDate = itemView.findViewById<TextView>(R.id.yojnaDateYojnaList)\n        var yojnaCard = itemView.findViewById<CardView>(R.id.singlelistyojnacard)\n        var yojnaStatus = itemView.findViewById<TextView>(R.id.yojnaStatusYojnaList)\n    }\n\n    override fun onCreateViewHolder(parent: ViewGroup, viewType: Int): YojnaListviewHolder {\n        val view = LayoutInflater.from(context).inflate(R.layout.single_yojna_list, parent, false)\n        return YojnaAdapter.YojnaListviewHolder(view)\n    }\n\n    override fun getItemCount(): Int {\n        return yojnaData.size\n    }\n\n    override fun onBindViewHolder(holder: YojnaListviewHolder, position: Int) {\n      val singleYojna=yojnaData[position]\n\n        holder.yojnaName.text = singleYojna.data!!.get(\"title\").toString()\n        holder.yojnaStatus.text = singleYojna.data!!.get(\"status\").toString()\n        holder.yojnaDate.text = singleYojna.data!!.get(\"launch\").toString()\n        val url = singleYojna.data!!.get(\"image\").toString()\n        Glide.with(holder.itemView.context)\n            .load(url)\n            .into(holder.yojnaImage)\n\n        holder.yojnaCard.setOnClickListener {\n            cellClickListener.onCellClickListener(singleYojna.data!!.get(\"title\").toString())\n        }\n    }\n\n\n}"
  },
  {
    "path": "app/src/main/java/com/project/farmingapp/model/APMCApi.kt",
    "content": "package com.project.farmingapp.model\n\nimport com.project.farmingapp.model.data.APMCMain\nimport com.project.farmingapp.model.data.WeatherRootList\nimport retrofit2.Call\nimport retrofit2.Retrofit\nimport retrofit2.converter.gson.GsonConverterFactory\nimport retrofit2.http.GET\nimport retrofit2.http.Query\n\n//https://api.data.gov.in/resource/9ef84268-d588-465a-a308-a864a43d0070?api-key=579b464db66ec23bdd000001987c65666f9c49656f0f9ef4fa3650e7&format=json&offset=0&limit=400\nconst val BASE_URL2 =\"https://api.data.gov.in/\"\nconst val API_KEY2 =\"579b464db66ec23bdd000001987c65666f9c49656f0f9ef4fa3650e7\"\ninterface apmcInterface {\n    @GET(\"resource/9ef84268-d588-465a-a308-a864a43d0070?api-key=$API_KEY2&format=json&offset=0&limit=7000\")\n    fun getapmc(@Query(\"limit\")limit:Int): Call<APMCMain>\n    @GET(\"resource/9ef84268-d588-465a-a308-a864a43d0070?api-key=$API_KEY2&format=json&offset=0&limit=7000\")\n    fun getSomeData(@Query(\"filters[district]\")filter:String):Call<APMCMain>\n\n}\nobject APMCApi {\n    val apmcInstances:apmcInterface\n    init {\n        val retrofit = Retrofit.Builder()\n            .baseUrl(BASE_URL2)\n            .addConverterFactory(GsonConverterFactory.create())\n            .build()\n\n        apmcInstances =retrofit.create(apmcInterface::class.java)\n    }\n}"
  },
  {
    "path": "app/src/main/java/com/project/farmingapp/model/APMCRepository.kt",
    "content": "package com.project.farmingapp.model\n\nclass APMCRepository {\n}"
  },
  {
    "path": "app/src/main/java/com/project/farmingapp/model/ArticleRepository.kt",
    "content": "package com.project.farmingapp.model\n\nimport android.util.Log\nimport androidx.lifecycle.LiveData\nimport androidx.lifecycle.MutableLiveData\nimport com.google.firebase.firestore.DocumentSnapshot\nimport com.google.firebase.firestore.FirebaseFirestore\nimport com.project.farmingapp.viewmodel.ArticleViewModel\nimport com.project.farmingapp.viewmodel.WeatherViewModel\n\nclass ArticleRepository {\n    lateinit var firebaseDb: FirebaseFirestore\n    var data = MutableLiveData<HashMap<String, Any>>()\n    val data2 = MutableLiveData<String>()\n    private lateinit var viewModel: ArticleViewModel\n    fun getSpecificFruitArticle(name: String): LiveData<String> {\n\n        firebaseDb = FirebaseFirestore.getInstance()\n        Log.d(\"ArticleRepo1\", \"Ss\")\n        firebaseDb.collection(\"article_fruits\").document(\"${name}\")\n            .get()\n            .addOnSuccessListener {\n//                var ss = it.data\n                viewModel = ArticleViewModel()\n\n\n//                data.value = it.data as HashMap<String, Any>?\n                viewModel.updateArticle(it.data as HashMap<String, Any>)\n\n\n//                data.value = it.data as HashMap<String, Any>?\n                data2.value = \"Success\"\n                Log.d(\"ArticleRepo2\", data2.value.toString())\n\n            }\n            .addOnFailureListener {\n                Log.d(\"ArticleRepo3\", \"ss\")\n            }\n        return data2\n    }\n}"
  },
  {
    "path": "app/src/main/java/com/project/farmingapp/model/AuthRepository.kt",
    "content": "package com.project.farmingapp.model\n\nimport android.util.Log\nimport android.widget.Toast\nimport androidx.lifecycle.LiveData\nimport androidx.lifecycle.MutableLiveData\nimport com.google.android.gms.auth.api.signin.GoogleSignInClient\nimport com.google.firebase.auth.FirebaseAuth\nimport com.google.firebase.auth.GoogleAuthProvider\nimport com.google.firebase.firestore.FirebaseFirestore\nimport java.io.Serializable\n\nclass AuthRepository {\n\n    lateinit var googleSignInClient: GoogleSignInClient\n    val firebaseAuth = FirebaseAuth.getInstance()\n    lateinit var firebaseDb: FirebaseFirestore\n    val data = MutableLiveData<String>()\n    fun signInWithEmail(\n        email: String,\n        password: String,\n        otherData: HashMap<String, Serializable?>\n    ): LiveData<String> {\n\n        firebaseDb = FirebaseFirestore.getInstance()\n\n        val data2 = MutableLiveData<String>()\n        firebaseAuth.createUserWithEmailAndPassword(email, password).addOnCompleteListener {\n            if (it.isSuccessful) {\n                firebaseDb!!.collection(\"users\").document(\"${email}\")\n                    .set(otherData)\n                    .addOnSuccessListener {\n                        data.value = \"Success\"\n                    }\n                    .addOnFailureListener { Exception ->\n                        {\n                            data.value = \"Failure\"\n                        }\n                    }\n\n            } else if (it.isCanceled) {\n                data.value = \"Failure\"\n            }\n        }.addOnFailureListener {\n            Log.d(\"AuthRepo\", it.message)\n            data.value = it.message\n        }\n        return data\n    }\n\n    fun signInToGoogle(\n        idToken: String,\n        email: String,\n        otherData: HashMap<String, Serializable?>\n    ): LiveData<String> {\n        firebaseDb = FirebaseFirestore.getInstance()\n        val credential = GoogleAuthProvider.getCredential(idToken, null)\n        firebaseAuth!!.signInWithCredential(credential)\n            .addOnCompleteListener {\n                if (it.isSuccessful) {\n                    val userDocRef = firebaseDb!!.collection(\"users\").document(\"${email}\")\n\n                    userDocRef.get().addOnSuccessListener {\n                        data.value = \"Success\"\n                        if(it.exists()){\n                            Log.d(\"User\", \"User Exists\")\n                        } else{\n                            Log.d(\"User\", \"User Does not Exists\")\n                            firebaseDb!!.collection(\"users\").document(\"${email}\")\n                                .set(otherData)\n                                .addOnSuccessListener {\n                                    data.value = \"Success\"\n                                }\n                                .addOnFailureListener { Exception ->\n                                    {\n                                        data.value = \"Failure\"\n                                    }\n                                }\n                        }\n                    }\n\n                    val user = firebaseAuth!!.currentUser\n                } else {\n                    data.value = \"Failure\"\n                }\n            }\n\n        return data\n    }\n\n\n    //login\n    fun logInWithEmail(\n        email: String,\n        password: String\n    ): LiveData<String> {\n\n        firebaseDb = FirebaseFirestore.getInstance()\n\n        val data = MutableLiveData<String>()\n        firebaseAuth.signInWithEmailAndPassword(email, password).addOnCompleteListener {\n            if (it.isSuccessful) {\n                data.value = \"Success\"\n\n            } else if (it.isCanceled) {\n                data.value = \"Failure\"\n            }\n\n        }.addOnFailureListener {\n            Log.d(\"AuthRepo\", it.message)\n            data.value = it.message\n        }\n        return data\n    }\n}"
  },
  {
    "path": "app/src/main/java/com/project/farmingapp/model/WeatherApi.kt",
    "content": "package com.project.farmingapp.model\n\nimport com.project.farmingapp.model.data.WeatherRootList\nimport retrofit2.Call\nimport retrofit2.Retrofit\nimport retrofit2.converter.gson.GsonConverterFactory\nimport retrofit2.http.GET\nimport retrofit2.http.Query\n\n\nconst val BASE_URL =\"https://api.openweathermap.org/\"\nconst val API_KEY =\"63259e8886cbe4d575c24358fb860b1b\"\ninterface weatherInterface {\n    @GET(\"data/2.5/forecast?appid=$API_KEY\")\n    fun getWeather(@Query(\"lat\")lat:String, @Query(\"lon\")lon:String): Call<WeatherRootList>\n}\n\nobject WeatherApi {\n    val weatherInstances:weatherInterface\n    init {\n        val retrofit = Retrofit.Builder()\n            .baseUrl(BASE_URL)\n            .addConverterFactory(GsonConverterFactory.create())\n            .build()\n\n        weatherInstances =retrofit.create(weatherInterface::class.java)\n    }\n}"
  },
  {
    "path": "app/src/main/java/com/project/farmingapp/model/WeatherRepository.kt",
    "content": "package com.project.farmingapp.model\n\nimport android.util.Log\nimport androidx.lifecycle.LiveData\nimport androidx.lifecycle.MutableLiveData\nimport com.project.farmingapp.model.data.WeatherRootList\nimport com.project.farmingapp.viewmodel.WeatherListener\nimport retrofit2.Call\nimport retrofit2.Callback\nimport retrofit2.Response\n\nclass WeatherRepository {\n\n    val data = MutableLiveData<WeatherRootList>()\n\n    fun getWeather(): LiveData<String> {\n        val response: Call<WeatherRootList> =\n            WeatherApi.weatherInstances.getWeather(\"23.0225\", \"72.5714\")\n\n        val weathRes = MutableLiveData<String>()\n\n        response.enqueue(object : Callback<WeatherRootList> {\n            override fun onFailure(call: Call<WeatherRootList>, t: Throwable) {\n                Log.d(\"WeatherRepository\", \"Error Occured\")\n            }\n\n            override fun onResponse(\n                call: Call<WeatherRootList>,\n                response: Response<WeatherRootList>\n            ) {\n                if (response.isSuccessful) {\n                    data.value = response.body()\n                    weathRes.value = \"DONE\"\n                } else {\n                    weathRes.value = \"FAILED\"\n                }\n            }\n        })\n        return weathRes\n    }\n}"
  },
  {
    "path": "app/src/main/java/com/project/farmingapp/model/data/APMCCustomRecords.kt",
    "content": "package com.project.farmingapp.model.data\n\ndata class APMCCustomRecords(val state:String,val district:String,val market:String,val commodity:MutableList<String>,val min_price:MutableList<String>,val max_price:MutableList<String>)"
  },
  {
    "path": "app/src/main/java/com/project/farmingapp/model/data/APMCMain.kt",
    "content": "package com.project.farmingapp.model.data\n\ndata class APMCMain(val updated_date: String, val records: List<APMCRecords>)"
  },
  {
    "path": "app/src/main/java/com/project/farmingapp/model/data/APMCRecords.kt",
    "content": "package com.project.farmingapp.model.data\n\n\ndata class APMCRecords(val state:String,val district:String,val market:String,val commodity:String,val min_price:String,val max_price:String,val modal_price:String)\n"
  },
  {
    "path": "app/src/main/java/com/project/farmingapp/model/data/CartItem.kt",
    "content": "package com.project.farmingapp.model.data\n\nimport java.sql.Timestamp\n\ndata class CartItem(var quantity: Int, val time: String)"
  },
  {
    "path": "app/src/main/java/com/project/farmingapp/model/data/IntroData.kt",
    "content": "package com.project.farmingapp.model.data\n\ndata class IntroData (\n    val title :String,\n    val description: String,\n    val image: Int\n)"
  },
  {
    "path": "app/src/main/java/com/project/farmingapp/model/data/Post.kt",
    "content": "package com.project.farmingapp.model.data\n\ndata class Post(val timeStamp: Long, val imageID: String, val imageUrl:String)"
  },
  {
    "path": "app/src/main/java/com/project/farmingapp/model/data/Weather.kt",
    "content": "package com.project.farmingapp.model.data\n\ndata class Weather(val main:String =\"\"\n                   , val description:String =\"\"\n                   , val icon:String =\"\")"
  },
  {
    "path": "app/src/main/java/com/project/farmingapp/model/data/WeatherList.kt",
    "content": "package com.project.farmingapp.model.data\n\ndata class WeatherList(val main:WeatherMain,val weather:List<Weather>,val dt_txt:String, val wind: WeatherWind)"
  },
  {
    "path": "app/src/main/java/com/project/farmingapp/model/data/WeatherMain.kt",
    "content": "package com.project.farmingapp.model.data\n\ndata class WeatherMain(val temp:Float,val humidity:String,val temp_min:String,val temp_max:String)"
  },
  {
    "path": "app/src/main/java/com/project/farmingapp/model/data/WeatherRootList.kt",
    "content": "package com.project.farmingapp.model.data\n\n//data class WeatherRootList(val list:List<WeatherList>) : List<WeatherList>\ndata class WeatherRootList(val list: List<WeatherList>)"
  },
  {
    "path": "app/src/main/java/com/project/farmingapp/model/data/WeatherWind.kt",
    "content": "package com.project.farmingapp.model.data\n\ndata class WeatherWind (val speed: Float)"
  },
  {
    "path": "app/src/main/java/com/project/farmingapp/model/data/orders.kt",
    "content": "package com.project.farmingapp.model.data\n\nimport kotlinx.android.synthetic.main.activity_razor_pay.*\nimport java.sql.Timestamp\n\ndata class orders(\n    var name: String,\n    var locality: String,\n    var city: String,\n    var state: String,\n    var pincode: String,\n    var mobile: String,\n    var time: String,\n    var productId: String,\n    var itemCost: Int,\n    var quantity: Int,\n    var deliveryCost: Int,\n    var deliveryStatus: String\n)"
  },
  {
    "path": "app/src/main/java/com/project/farmingapp/utilities/CartItemBuy.kt",
    "content": "package com.project.farmingapp.utilities\n\ninterface CartItemBuy {\n    fun addToOrders(productId: String, quantity: Int, itemCost: Int, deliveryCost: Int)\n}"
  },
  {
    "path": "app/src/main/java/com/project/farmingapp/utilities/CellClickListener.kt",
    "content": "package com.project.farmingapp.utilities\n\ninterface CellClickListener {\n    fun onCellClickListener(name: String)\n\n}"
  },
  {
    "path": "app/src/main/java/com/project/farmingapp/utilities/ViewUtils.kt",
    "content": "package com.project.farmingapp.utilities\n\nimport android.content.Context\nimport android.view.View\nimport android.widget.ProgressBar\nimport android.widget.Toast\n\nfun Context.toast(message: String){\n    Toast.makeText(this, message, Toast.LENGTH_LONG).show()\n}\n\nfun ProgressBar.show(){\n    visibility = View.VISIBLE\n}\n\nfun ProgressBar.hide(){\n    visibility = View.GONE\n}\n"
  },
  {
    "path": "app/src/main/java/com/project/farmingapp/view/apmc/ApmcFragment.kt",
    "content": "package com.project.farmingapp.view.apmc\n\nimport android.os.Bundle\nimport android.util.Log\nimport android.view.LayoutInflater\nimport android.view.View\nimport android.view.ViewGroup\nimport android.widget.*\nimport androidx.appcompat.app.AppCompatActivity\nimport androidx.fragment.app.Fragment\nimport androidx.recyclerview.widget.LinearLayoutManager\nimport com.project.farmingapp.R\nimport com.project.farmingapp.adapter.ApmcAdapter\nimport com.project.farmingapp.model.APMCApi\nimport com.project.farmingapp.model.data.APMCCustomRecords\nimport com.project.farmingapp.model.data.APMCMain\nimport kotlinx.android.synthetic.main.activity_login.*\nimport kotlinx.android.synthetic.main.app_bar_main.*\nimport kotlinx.android.synthetic.main.fragment_apmc.*\nimport retrofit2.Call\nimport retrofit2.Callback\nimport retrofit2.Response\nimport java.lang.reflect.Field\nimport java.text.SimpleDateFormat\nimport java.time.OffsetDateTime\nimport java.util.*\nimport kotlin.collections.ArrayList\n\n\n// TODO: Rename parameter arguments, choose names that match\n// the fragment initialization parameters, e.g. ARG_ITEM_NUMBER\nprivate const val ARG_PARAM1 = \"param1\"\nprivate const val ARG_PARAM2 = \"param2\"\n\n/**\n * A simple [Fragment] subclass.\n * Use the [ApmcFragment.newInstance] factory method to\n * create an instance of this fragment.\n */\nclass ApmcFragment : Fragment() {\n\n    // TODO: Rename and change types of parameters\n    private var param1: String? = null\n    private var param2: String? = null\n    lateinit var adapter: ApmcAdapter\n    var indexSpinner1: Int? = null\n    var indexSpinner2: Int? = null\n    var someMap: Map<Any, Array<String>>? = null\n    var states: Array<String>? = null\n\n    override fun onCreate(savedInstanceState: Bundle?) {\n        super.onCreate(savedInstanceState)\n        arguments?.let {\n            param1 = it.getString(ARG_PARAM1)\n            param2 = it.getString(ARG_PARAM2)\n        }\n\n\n    }\n\n    override fun onCreateView(\n        inflater: LayoutInflater, container: ViewGroup?,\n        savedInstanceState: Bundle?\n    ): View? {\n        // Inflate the layout for this fragment\n\n//        bottomNav.selectedItemId = R.id.bottomNavAPMC\n\n//        getApmc()\n        return inflater.inflate(R.layout.fragment_apmc, container, false)\n    }\n\n    override fun onViewCreated(view: View, savedInstanceState: Bundle?) {\n        super.onViewCreated(view, savedInstanceState)\n\n        progress_apmc.visibility = View.GONE\n        loadingTextAPMC.visibility = View.GONE\n\n        setHasOptionsMenu(true)\n        (activity as AppCompatActivity).supportActionBar?.title = \"APMC\"\n\n        val sdf = SimpleDateFormat(\"dd/MM/yyyy\")\n        dateValueTextApmc.text = sdf.format(Date()).toString()\n\n        states = arrayOf(\n            \"None\",\n            \"Andhra Pradesh\",\n            \"Chandigarh\",\n            \"Chattisgarh\",\n            \"Gujarat\",\n            \"Hariyana\",\n            \"Himachal Pradesh\",\n            \"Jammu & Kashmir\",\n            \"Jharkhand\",\n            \"Karnataka\",\n            \"Kerala\",\n            \"Madhya Pradesh\",\n            \"Maharashtra\",\n            \"Odisha\",\n            \"Pudu Cherry\",\n            \"Punjab\",\n            \"Rajasthan\",\n            \"Tamil Nadu\",\n            \"Telangana\",\n            \"Uttar Pradesh\",\n            \"Uttarakhand\",\n            \"West Bengal\"\n        )\n\n        var districtInGujarat: Array<String> = arrayOf(\n            \"None\",\n            \"Ahmedabad\",\n            \"Amreli\",\n            \"Anand\",\n            \"Aravalli\",\n            \"Banaskantha\",\n            \"Bharuch\",\n            \"Bhavnagar\",\n            \"Botad\",\n            \"Chhota Udepur\",\n            \"Dahod\",\n            \"Dangs\",\n            \"Devbhoomi Dwarka\",\n            \"Gandhinagar\",\n            \"Gir Somnath\",\n            \"Jamnagar\",\n            \"Junagadh\",\n            \"Kachchh\",\n            \"Kheda\",\n            \"Mahisagar\",\n            \"Mehsana\",\n            \"Morbi\",\n            \"Narmada\",\n            \"Navsari\",\n            \"Panchmahal\",\n            \"Patan\",\n            \"Porbandar\",\n            \"Rajkot\",\n            \"Sabarkantha\",\n            \"Surat\",\n            \"Surendranagar\",\n            \"Tapi\",\n            \"Vadodara\",\n            \"Valsad\"\n\n        )\n        var districtInMaha: Array<String> = arrayOf(\n            \"None\",\n            \"Ahmednagar\",\n            \"Akola\",\n            \"Amravati\",\n            \"Aurangabad\",\n            \"Beed\",\n            \"Bhandara\",\n            \"Buldhana\",\n            \"Chandrapur\",\n            \"Dhule\",\n            \"Gadchiroli\",\n            \"Gondia\",\n            \"Hingoli\",\n            \"Jalgaon\",\n            \"Jalna\",\n            \"Kolhapur\",\n            \"Latur\",\n            \"Mumbai City\",\n            \"Mumbai Suburban\",\n            \"Nagpur\",\n            \"Nanded\",\n            \"Nandurbar\",\n            \"Nashik\",\n            \"Osmanabad\",\n            \"Palghar\",\n            \"Parbhani\",\n            \"Pune\",\n            \"Raigad\",\n            \"Ratnagiri\",\n            \"Sangli\",\n            \"Satara\",\n            \"Sindhudurg\",\n            \"Solapur\",\n            \"Thane\",\n            \"Wardha\",\n            \"Washim\",\n            \"Yavatmal\"\n        )\n\n        var districtInRajasthan: Array<String> = arrayOf(\n            \"None\",\n            \"Ajmer\",\n            \"Alwar\",\n            \"Banswara\",\n            \"Baran\",\n            \"Barmer\",\n            \"Bharatpur\",\n            \"Bhilwara\",\n            \"Bikaner\",\n            \"Bundi\",\n            \"Chittorgarh\",\n            \"Churu\",\n            \"Dausa\",\n            \"Dholpur\",\n            \"Dungarpur\",\n            \"Hanumangarh\",\n            \"Jaipur\",\n            \"Jaisalmer\",\n            \"Jalore\",\n            \"Jhalawar\",\n            \"Jhunjhunu\",\n            \"Jodhpur\",\n            \"Karauli\",\n            \"Kota\",\n            \"Nagaur\",\n            \"Pali\",\n            \"Pratapgarh\",\n            \"Rajsamand\",\n            \"Sawai Madhopur\",\n            \"Sikar\",\n            \"Sirohi\",\n            \"Sri Ganganagar\",\n            \"Tonk\",\n            \"Udaipur\"\n        )\n\n        var districtInUttarPradesh: Array<String> = arrayOf(\n            \"None\",\n            \"Agra\",\n            \"Aligarh\",\n            \"Allahabad\",\n            \"Ambedkar Nagar\",\n            \"Amethi\",\n            \"Amroha\",\n            \"Auraiya\",\n            \"Azamgarh\",\n            \"Baghpat\",\n            \"Bahraich\",\n            \"Ballia\",\n            \"Balrampur\",\n            \"Banda\",\n            \"Barabanki\",\n            \"Bareilly\",\n            \"Basti\",\n            \"Bhadohi\",\n            \"Bijnor\",\n            \"Budaun\",\n            \"Bulandshahr\",\n            \"Chandauli\",\n            \"Chitrakoot\",\n            \"Deoria\",\n            \"Etah\",\n            \"Etawah\",\n            \"Faizabad\",\n            \"Farrukhabad\",\n            \"Fatehpur\",\n            \"Firozabad\",\n            \"Gautam Buddha Nagar\",\n            \"Ghaziabad\",\n            \"Ghazipur\",\n            \"Gonda\",\n            \"Gorakhpur\",\n            \"Hamirpur\",\n            \"Hapur\",\n            \"Hardoi\",\n            \"Hathras\",\n            \"Jalaun\",\n            \"Jaunpur\",\n            \"Jhansi\",\n            \"Kannauj\",\n            \"Kanpur Dehat\",\n            \"Kanpur Nagar\",\n            \"Kanshiram Nagar\",\n            \"Kaushambi\",\n            \"Kushinagar\",\n            \"Lakhimpur - Kheri\",\n            \"Lalitpur\",\n            \"Lucknow\",\n            \"Maharajganj\",\n            \"Mahoba\",\n            \"Mainpuri\",\n            \"Mathura\",\n            \"Mau\",\n            \"Meerut\",\n            \"Mirzapur\",\n            \"Moradabad\",\n            \"Muzaffarnagar\",\n            \"Pilibhit\",\n            \"Pratapgarh\",\n            \"RaeBareli\",\n            \"Rampur\",\n            \"Saharanpur\",\n            \"Sambhal\",\n            \"Sant Kabir Nagar\",\n            \"Shahjahanpur\",\n            \"Shamali\",\n            \"Shravasti\",\n            \"Siddharth Nagar\",\n            \"Sitapur\",\n            \"Sonbhadra\",\n            \"Sultanpur\",\n            \"Unnao\",\n            \"Varanasi\"\n        )\n\n        var districtInWestBengal: Array<String> = arrayOf(\n            \"None\",\n            \"Alipurduar\",\n            \"Bankura\",\n            \"Birbhum\",\n            \"Cooch Behar\",\n            \"Dakshin Dinajpur\",\n            \"Darjeeling\",\n            \"Hooghly\",\n            \"Howrah\",\n            \"Jalpaiguri\",\n            \"Jhargram\",\n            \"Kalimpong\",\n            \"Kolkata\",\n            \"Malda\",\n            \"Murshidabad\",\n            \"Nadia\",\n            \"North 24 Parganas\",\n            \"Paschim Medinipur\",\n            \"Paschim Burdwan\",\n            \"Purba Burdwan\",\n            \"Purba Medinipur\",\n            \"Purulia\",\n            \"South 24 Parganas\",\n            \"Uttar Dinajpur\"\n        )\n\n        var districtInKerala: Array<String> = arrayOf(\n            \"None\",\n            \"Alappuzha\",\n            \"Ernakulam\",\n            \"Idukki\",\n            \"Kannur\",\n            \"Kasaragod\",\n            \"Kollam\",\n            \"Kottayam\",\n            \"Kozhikode\",\n            \"Malappuram\",\n            \"Palakkad\",\n            \"Pathanamthitta\",\n            \"Thiruvananthapuram\",\n            \"Thrissur\",\n            \"Wayanad\"\n        )\n\n        var districtInAndhraPradesh: Array<String> = arrayOf(\n            \"None\",\n            \"Anantapur\",\n            \"Chittoor\",\n            \"East Godavari\",\n            \"Guntur\",\n            \"Krishna\",\n            \"Kurnool\",\n            \"Prakasam\",\n            \"Srikakulam\",\n            \"Sri Potti Sriramulu Nellore\",\n            \"Visakhapatnam\",\n            \"Vizianagaram\",\n            \"West Godavari\",\n            \"Kadapa\"\n        )\n\n        var emptyDistricts : Array<String> = arrayOf(\"None\")\n\n        var aa = ArrayAdapter(\n            activity!!.applicationContext,\n            android.R.layout.simple_spinner_dropdown_item,\n            states!!\n        )\n\n        spinner1.adapter = aa\n\n        someMap = mapOf(\n            \"Andhra Pradesh\" to districtInAndhraPradesh,\n            \"Gujarat\" to districtInGujarat,\n            \"Kerala\" to districtInKerala,\n            \"Maharashtra\" to districtInMaha,\n            \"Rajasthan\" to districtInRajasthan,\n            \"Uttar Pradesh\" to districtInUttarPradesh,\n            \"West Bengal\" to districtInWestBengal,\n\n            \"Chandigarh\" to emptyDistricts,\n            \"Chattisgarh\" to emptyDistricts,\n            \"Hariyana\" to emptyDistricts,\n            \"Himachal Pradesh\" to emptyDistricts,\n            \"Jammu & Kashmir\" to emptyDistricts,\n            \"Jharkhand\" to emptyDistricts,\n            \"Karnataka\" to emptyDistricts,\n            \"Madhya Pradesh\" to emptyDistricts,\n            \"Odisha\" to emptyDistricts,\n            \"Pudu Cherry\" to emptyDistricts,\n            \"Punjab\" to emptyDistricts,\n            \"Tamil Nadu\" to emptyDistricts,\n            \"Telangana\" to emptyDistricts,\n            \"Uttarakhand\" to emptyDistricts\n        )\n\n\n        spinner1.onItemSelectedListener = object :\n            AdapterView.OnItemClickListener, AdapterView.OnItemSelectedListener {\n            override fun onNothingSelected(p0: AdapterView<*>?) {\n                TODO(\"Not yet implemented\")\n            }\n\n            override fun onItemSelected(p0: AdapterView<*>?, p1: View?, p2: Int, p3: Long) {\n                if (p2 == 0) {\n                    textAPMCWarning.text = \"Please Select State and District\"\n                    recycleAPMC.visibility = View.GONE\n                    textAPMCWarning.visibility = View.VISIBLE\n                } else {\n                    var aa2 = ArrayAdapter(\n                        activity!!.applicationContext,\n                        android.R.layout.simple_spinner_dropdown_item,\n\n                        someMap!![states!![p2]]!!\n                    )\n\n                    indexSpinner1 = p2\n                    spinner2.adapter = aa2\n                    aa2.notifyDataSetChanged()\n                }\n            }\n\n            override fun onItemClick(p0: AdapterView<*>?, p1: View?, p2: Int, p3: Long) {\n            }\n        }\n\n        spinner2.onItemSelectedListener = object :\n            AdapterView.OnItemClickListener, AdapterView.OnItemSelectedListener {\n            override fun onNothingSelected(p0: AdapterView<*>?) {\n                TODO(\"Not yet implemented\")\n            }\n\n            override fun onItemSelected(p0: AdapterView<*>?, p1: View?, p2: Int, p3: Long) {\n                if (p2 == 0) {\n                    textAPMCWarning.text = \"Please Select District\"\n                    recycleAPMC.visibility = View.GONE\n                    textAPMCWarning.visibility = View.VISIBLE\n                } else {\n                    textAPMCWarning.visibility = View.GONE\n                    if (p2 != 0) {\n                        getApmc(\"${someMap!![states!![indexSpinner1!!]]!![p2]}\")\n                    }\n                    indexSpinner2 = p2\n                    progress_apmc.visibility = View.VISIBLE\n                    loadingTextAPMC.visibility = View.VISIBLE\n                }\n            }\n\n            override fun onItemClick(p0: AdapterView<*>?, p1: View?, p2: Int, p3: Long) {\n            }\n        }\n\n    }\n\n    companion object {\n        /**\n         * Use this factory method to create a new instance of\n         * this fragment using the provided parameters.\n         *\n         * @param param1 Parameter 1.\n         * @param param2 Parameter 2.\n         * @return A new instance of fragment ApmcFragment.\n         */\n        // TODO: Rename and change types and number of parameters\n        @JvmStatic\n        fun newInstance(param1: String, param2: String) =\n            ApmcFragment().apply {\n                arguments = Bundle().apply {\n                    putString(ARG_PARAM1, param1)\n                    putString(ARG_PARAM2, param2)\n                }\n            }\n    }\n\n    private fun getApmc(district: String) {\n        val apmc1: Call<APMCMain> = APMCApi.apmcInstances.getapmc(20)\n        var apmc2: Call<APMCMain>? = null\n        if (indexSpinner2 != 0) {\n\n            apmc2 = APMCApi.apmcInstances.getSomeData(district)\n            Log.d(\"APMC District\", district)\n\n            apmc2!!.enqueue(object : Callback<APMCMain> {\n                override fun onFailure(call: Call<APMCMain>, t: Throwable) {\n                    Log.d(\"bharat222\", \"fail ho gya\", t)\n                    progress_apmc.visibility = View.GONE\n                    loadingTextAPMC.visibility = View.GONE\n                }\n\n                override fun onResponse(\n                    call: Call<APMCMain>,\n                    response: Response<APMCMain>\n                ) {\n\n                    val apmcdata = response.body()\n                    if (apmcdata != null) {\n\n                        val updatedYear = apmcdata.updated_date.toString().slice(0..3)\n                        val updatedMonth = apmcdata.updated_date.toString().slice(5..6)\n                        val updatedDate = apmcdata.updated_date.toString().slice(8..9)\n\n\n                        dateValueTextApmc.text = \"$updatedDate/$updatedMonth/$updatedYear\"\n                        if (apmcdata.records.size == 0) {\n                            progress_apmc.visibility = View.GONE\n                            loadingTextAPMC.visibility = View.GONE\n                            textAPMCWarning.visibility = View.VISIBLE\n                            recycleAPMC.visibility = View.GONE\n                            textAPMCWarning.text = \"No records found!\"\n                        } else {\n                            textAPMCWarning.visibility = View.GONE\n                            recycleAPMC.visibility = View.VISIBLE\n                            Log.d(\"APMCFrag\", apmcdata.records.toString())\n\n                            val totalRecords = apmcdata.records.size\n                            var firstMarket = \"\"\n                            if (!apmcdata.records[0].market.isNullOrEmpty()) {\n                                firstMarket = apmcdata.records[0].market.toString()\n                            }\n\n                            val customRecords = ArrayList<APMCCustomRecords>()\n\n                            val list1 = mutableListOf<String>()\n                            val list2 = mutableListOf<String>()\n                            val list3 = mutableListOf<String>()\n                            list1.add(apmcdata.records[0].commodity)\n                            list2.add(apmcdata.records[0].min_price)\n                            list3.add(apmcdata.records[0].max_price)\n\n                            var previousRecord = APMCCustomRecords(\n                                apmcdata.records[0].state,\n                                apmcdata.records[0].district,\n                                apmcdata.records[0].market,\n                                list1,\n                                list2,\n                                list3\n                            )\n\n                            val ss = apmcdata.records[0].market\n                            Log.d(\"PreREc\", previousRecord.toString())\n\n                            if (totalRecords == 1) {\n                                customRecords.add(previousRecord)\n                            } else {\n                                var count = 0\n                                for (i in 1..totalRecords - 1) {\n\n                                    if (apmcdata.records[i].market == previousRecord.market) {\n                                        previousRecord.commodity.add(apmcdata.records[i].commodity)\n                                        previousRecord.min_price.add(apmcdata.records[i].min_price)\n                                        previousRecord.max_price.add(apmcdata.records[i].max_price)\n                                        count = 1\n                                    } else {\n                                        count = 0\n                                        customRecords.add(previousRecord)\n                                        list1.add(apmcdata.records[i].commodity)\n                                        list2.add(apmcdata.records[i].min_price)\n                                        list3.add(apmcdata.records[i].max_price)\n                                        previousRecord = APMCCustomRecords(\n                                            apmcdata.records[i].state,\n                                            apmcdata.records[i].district,\n                                            apmcdata.records[i].market,\n                                            list1,\n                                            list2,\n                                            list3\n                                        )\n                                    }\n                                }\n                                if (count == 1) {\n                                    Log.d(\"LastRec\", \"Yes\")\n                                    customRecords.add(previousRecord)\n                                }\n                            }\n\n                            Log.d(\"New APMC Data\", customRecords.toString())\n                            Log.d(\"Old APMC Data\", apmcdata.toString())\n\n                            adapter = ApmcAdapter(activity!!.applicationContext, customRecords)\n                            recycleAPMC.adapter = adapter\n                            recycleAPMC.layoutManager =\n                                LinearLayoutManager(activity!!.applicationContext)\n                            progress_apmc.visibility = View.GONE\n                            loadingTextAPMC.visibility = View.GONE\n                            Log.d(\"bharat222\", apmcdata.toString())\n                        }\n\n                    }\n                }\n\n            })\n\n        }\n    }\n}"
  },
  {
    "path": "app/src/main/java/com/project/farmingapp/view/articles/ArticleListFragment.kt",
    "content": "package com.project.farmingapp.view.articles\n\nimport android.R.attr.fragment\nimport android.os.Bundle\nimport android.util.Log\nimport android.view.LayoutInflater\nimport android.view.View\nimport android.view.ViewGroup\nimport android.widget.Toast\nimport androidx.appcompat.app.AppCompatActivity\nimport androidx.fragment.app.Fragment\nimport androidx.fragment.app.FragmentTransaction\nimport androidx.lifecycle.Observer\nimport androidx.lifecycle.ViewModelProviders\nimport androidx.recyclerview.widget.GridLayoutManager\nimport com.project.farmingapp.R\nimport com.project.farmingapp.adapter.ArticleListAdapter\nimport com.project.farmingapp.utilities.CellClickListener\nimport com.project.farmingapp.viewmodel.ArticleViewModel\nimport kotlinx.android.synthetic.main.fragment_article_list.*\n\n\n// TODO: Rename parameter arguments, choose names that match\n// the fragment initialization parameters, e.g. ARG_ITEM_NUMBER\nprivate const val ARG_PARAM1 = \"param1\"\nprivate const val ARG_PARAM2 = \"param2\"\n\n/**\n * A simple [Fragment] subclass.\n * Use the [ArticleListFragment.newInstance] factory method to\n * create an instance of this fragment.\n */\nclass ArticleListFragment : Fragment(), CellClickListener {\n    // TODO: Rename and change types of parameters\n    private var param1: String? = null\n    private var param2: String? = null\n    private lateinit var viewModel: ArticleViewModel\n    lateinit var Adapter: ArticleListAdapter\n    lateinit var fruitFragment: FruitsFragment\n\n    override fun onCreate(savedInstanceState: Bundle?) {\n        super.onCreate(savedInstanceState)\n        arguments?.let {\n            param1 = it.getString(ARG_PARAM1)\n            param2 = it.getString(ARG_PARAM2)\n        }\n        viewModel = ViewModelProviders.of(requireActivity())\n            .get<ArticleViewModel>(ArticleViewModel::class.java)\n\n        viewModel.getAllArticles(\"article_fruits\")\n    }\n\n    override fun onCreateView(\n        inflater: LayoutInflater, container: ViewGroup?,\n        savedInstanceState: Bundle?\n    ): View? {\n\n        viewModel.message3.observe(viewLifecycleOwner, Observer {\n\n            Log.d(\"Art All Data\", it[0].data.toString())\n\n\n            Adapter = ArticleListAdapter(activity!!.applicationContext, it, this)\n            recyclerArticleListFrag.adapter = Adapter\n            recyclerArticleListFrag.layoutManager = GridLayoutManager(activity!!.applicationContext, 2)\n\n        })\n\n        // Inflate the layout for this fragment\n        return inflater.inflate(R.layout.fragment_article_list, container, false)\n    }\n\n    companion object {\n        /**\n         * Use this factory method to create a new instance of\n         * this fragment using the provided parameters.\n         *\n         * @param param1 Parameter 1.\n         * @param param2 Parameter 2.\n         * @return A new instance of fragment ArticleListFragment.\n         */\n        // TODO: Rename and change types and number of parameters\n        @JvmStatic\n        fun newInstance(param1: String, param2: String) =\n            ArticleListFragment().apply {\n                arguments = Bundle().apply {\n                    putString(ARG_PARAM1, param1)\n                    putString(ARG_PARAM2, param2)\n                }\n            }\n    }\n\n    override fun onViewCreated(view: View, savedInstanceState: Bundle?) {\n        super.onViewCreated(view, savedInstanceState)\n\n        setHasOptionsMenu(true)\n        (activity as AppCompatActivity).supportActionBar?.title = \"Articles\"\n\n    }\n\n\n\n    override fun onCellClickListener(name: String) {\n        fruitFragment = FruitsFragment()\n        val bundle = Bundle()\n        bundle.putString(\"name\", name)\n        fruitFragment.setArguments(bundle)\n        val transaction = activity!!.supportFragmentManager\n            .beginTransaction()\n            .replace(R.id.frame_layout, fruitFragment, name)\n            .setTransition(FragmentTransaction.TRANSIT_FRAGMENT_OPEN)\n            .setReorderingAllowed(true)\n            .addToBackStack(\"name\")\n            .commit()\n    }\n}"
  },
  {
    "path": "app/src/main/java/com/project/farmingapp/view/articles/FruitsFragment.kt",
    "content": "package com.project.farmingapp.view.articles\n\nimport android.os.Bundle\nimport android.util.Log\nimport android.view.LayoutInflater\nimport android.view.View\nimport android.view.ViewGroup\nimport android.view.animation.RotateAnimation\nimport android.widget.ProgressBar\nimport android.widget.Toast\nimport androidx.appcompat.app.AppCompatActivity\nimport androidx.fragment.app.Fragment\nimport androidx.lifecycle.LiveData\nimport androidx.lifecycle.Observer\nimport androidx.lifecycle.ViewModelProviders\nimport com.bumptech.glide.Glide\nimport com.project.farmingapp.R\nimport com.project.farmingapp.utilities.hide\nimport com.project.farmingapp.utilities.show\nimport com.project.farmingapp.viewmodel.ArticleListener\nimport com.project.farmingapp.viewmodel.ArticleViewModel\nimport kotlinx.android.synthetic.main.fragment_fruits.*\n\n\n// TODO: Rename parameter arguments, choose names that match\n// the fragment initialization parameters, e.g. ARG_ITEM_NUMBER\nprivate const val ARG_PARAM1 = \"param1\"\nprivate const val ARG_PARAM2 = \"param2\"\n\n/**\n * A simple [Fragment] subclass.\n * Use the [FruitsFragment.newInstance] factory method to\n * create an instance of this fragment.\n */\n\nclass FruitsFragment : Fragment(), ArticleListener {\n    // TODO: Rename and change types of parameters\n    private var param1: String? = null\n    private lateinit var viewModel: ArticleViewModel\n    private var param2: String? = null\n    private var param3: String? = null\n    val desc = \"\"\n    override fun onCreate(savedInstanceState: Bundle?) {\n        super.onCreate(savedInstanceState)\n        arguments?.let {\n            param1 = it.getString(ARG_PARAM1)\n            param2 = it.getString(ARG_PARAM2)\n            param3 = it.getString(\"name\")\n        }\n\n        viewModel = ViewModelProviders.of(requireActivity())\n            .get<ArticleViewModel>(ArticleViewModel::class.java)\n//        viewModel.getAllArticles(tag!!)\n\n        val tag = this.tag.toString()\n\n        Log.d(\"I'm called 2\", viewModel.message3.value.toString())\n    }\n\n    override fun onCreateView(\n        inflater: LayoutInflater, container: ViewGroup?,\n        savedInstanceState: Bundle?\n    ): View? {\n\n        viewModel.message1.observe(viewLifecycleOwner, Observer {\n            progressArticle.show()\n\n            val attributes: Map<String, String> = it.get(\"attributes\") as Map<String, String>\n            val desc = it.get(\"description\").toString()\n\n            Log.d(\"I'm Called\", \"Yes\")\n            val diseases: List<String> = it.get(\"diseases\") as List<String>\n\n            Log.d(\"Diseases2\", it.get(\"diseases\").toString())\n            tempTextFruitFragArt.text = attributes.get(\"Temperature\").toString()\n            monthTextFruitFragArt.text = attributes.get(\"Time\").toString()\n\n            titleTextFruitFragArt.text = it.get(\"title\").toString()\n            descTextValueFruitFragArt.text = desc\n            processTextValueFruitFragArt.text = it.get(\"process\").toString()\n            soilTextValueFruitFragArt.text = it.get(\"soil\").toString()\n            stateTextValueFruitFragArt.text = it.get(\"state\").toString()\n\n            val images: List<String> = it.get(\"images\") as List<String>\n            Glide.with(this)\n                .load(images[0])\n                .into(imageFruitFragArt)\n\n            attr1ValueFruitFragArt.text = attributes.get(\"Weight\").toString()\n            attr2ValueFruitFragArt.text = attributes.get(\"Vitamins\").toString()\n            attr3ValueFruitFragArt.text = attributes.get(\"Tree Height\").toString()\n            attr4ValueFruitFragArt.text = attributes.get(\"growthTime\").toString()\n\n            diseaseTextValueFruitFragArt.text = \"\"\n            for (i in 0..diseases.size - 1) {\n\n                diseaseTextValueFruitFragArt.text =\n                    diseaseTextValueFruitFragArt.text.toString() +\n                            (i + 1).toString() + \". \" + diseases[i].toString() + \"\\n\"\n            }\n            progressArticle.hide()\n        })\n\n        // Inflate the layout for this fragment\n        return inflater.inflate(R.layout.fragment_fruits, container, false)\n    }\n\n    companion object {\n        /**\n         * Use this factory method to create a new instance of\n         * this fragment using the provided parameters.\n         *\n         * @param param1 Parameter 1.\n         * @param param2 Parameter 2.\n         * @return A new instance of fragment FruitsFragment.\n         */\n        // TODO: Rename and change types and number of parameters\n        @JvmStatic\n        fun newInstance(param1: String, param2: String) =\n            FruitsFragment().apply {\n                arguments = Bundle().apply {\n                    putString(ARG_PARAM1, param1)\n                    putString(ARG_PARAM2, param2)\n                }\n            }\n    }\n\n    override fun onViewCreated(view: View, savedInstanceState: Bundle?) {\n        super.onViewCreated(view, savedInstanceState)\n\n        setHasOptionsMenu(true)\n        (activity as AppCompatActivity).supportActionBar?.title = \"Articles\"\n\n        val params = descTextTitleFruitFragArt.layoutParams\n\n        var toggle = 0\n\n\n        descToggleBtnFruitFragArt.setOnClickListener {\n\n            if (toggle == 0) {\n                descTextValueFruitFragArt.maxLines = Integer.MAX_VALUE\n                toggle = 1\n\n                val rotateAnim = RotateAnimation(\n                    0.0f, 180f,\n                    RotateAnimation.RELATIVE_TO_SELF, 0.5f,\n                    RotateAnimation.RELATIVE_TO_SELF, 0.5f\n                )\n                rotateAnim.duration = 2\n                rotateAnim.fillAfter = true\n                descToggleBtnFruitFragArt.startAnimation(rotateAnim)\n            } else if (toggle == 1) {\n                descTextValueFruitFragArt.maxLines = 3\n                toggle = 0\n                val rotateAnim = RotateAnimation(\n                    180f, 0f,\n                    RotateAnimation.RELATIVE_TO_SELF, 0.5f,\n                    RotateAnimation.RELATIVE_TO_SELF, 0.5f\n                )\n                rotateAnim.duration = 2\n                rotateAnim.fillAfter = true\n                descToggleBtnFruitFragArt.startAnimation(rotateAnim)\n\n            }\n        }\n\n\n        // New\n        val newData = viewModel.message3.value\n\n        Log.d(\"New data length\", newData!!.size.toString())\n        val newDataLength = newData!!.size\n\n        for (a in 0 until newDataLength) {\n            if (newData[a].data!!.get(\"title\") == this.tag) {\n\n\n                var data = newData[a].data\n\n                val attributes: Map<String, String> =\n                    data!!.get(\"attributes\") as Map<String, String>\n                val desc = data!!.get(\"description\").toString()\n                val diseases: List<String> = data!!.get(\"diseases\") as List<String>\n\n                Log.d(\"I'm Called3\", attributes.get(\"Temperature\").toString())\n                Log.d(\"I'm Called\", \"Yes\")\n                Log.d(\"Diseases2\", data!!.get(\"diseases\").toString())\n\n                tempTextFruitFragArt.text = attributes.get(\"Temperature\").toString()\n                monthTextFruitFragArt.text = attributes.get(\"Time\").toString()\n\n                titleTextFruitFragArt.text = data!!.get(\"title\").toString()\n                descTextValueFruitFragArt.text = desc\n                processTextValueFruitFragArt.text = data!!.get(\"process\").toString()\n                soilTextValueFruitFragArt.text = data!!.get(\"soil\").toString()\n                stateTextValueFruitFragArt.text = data!!.get(\"state\").toString()\n\n                val images: List<String> = data!!.get(\"images\") as List<String>\n                Glide.with(this)\n                    .load(images[0])\n                    .into(imageFruitFragArt)\n\n                attr1ValueFruitFragArt.text = attributes.get(\"Weight\").toString()\n                attr2ValueFruitFragArt.text = attributes.get(\"Vitamins\").toString()\n                attr3ValueFruitFragArt.text = attributes.get(\"Tree Height\").toString()\n                attr4ValueFruitFragArt.text = attributes.get(\"growthTime\").toString()\n\n                diseaseTextValueFruitFragArt.text = \"\"\n                for (i in 0..diseases.size - 1) {\n\n                    diseaseTextValueFruitFragArt.text =\n                        diseaseTextValueFruitFragArt.text.toString() +\n                                (i + 1).toString() + \". \" + diseases[i].toString() + \"\\n\"\n                }\n                progressArticle.hide()\n            }\n        }\n\n    }\n\n    override fun onStarted() {\n        TODO(\"Not yet implemented\")\n    }\n\n    override fun onSuccess(authRepo: LiveData<String>) {\n        authRepo.observe(viewLifecycleOwner, Observer {\n            Log.d(\"Fruit\", \"Success\")\n        })\n    }\n\n    override fun onFailure(message: String) {\n        TODO(\"Not yet implemented\")\n    }\n}"
  },
  {
    "path": "app/src/main/java/com/project/farmingapp/view/articles/MachineFragment.kt",
    "content": "package com.project.farmingapp.view.articles\n\nimport android.os.Bundle\nimport androidx.fragment.app.Fragment\nimport android.view.LayoutInflater\nimport android.view.View\nimport android.view.ViewGroup\nimport com.project.farmingapp.R\n\n// TODO: Rename parameter arguments, choose names that match\n// the fragment initialization parameters, e.g. ARG_ITEM_NUMBER\nprivate const val ARG_PARAM1 = \"param1\"\nprivate const val ARG_PARAM2 = \"param2\"\n\n/**\n * A simple [Fragment] subclass.\n * Use the [MachineFragment.newInstance] factory method to\n * create an instance of this fragment.\n */\nclass MachineFragment : Fragment() {\n    // TODO: Rename and change types of parameters\n    private var param1: String? = null\n    private var param2: String? = null\n\n    override fun onCreate(savedInstanceState: Bundle?) {\n        super.onCreate(savedInstanceState)\n        arguments?.let {\n            param1 = it.getString(ARG_PARAM1)\n            param2 = it.getString(ARG_PARAM2)\n        }\n    }\n\n    override fun onCreateView(\n        inflater: LayoutInflater, container: ViewGroup?,\n        savedInstanceState: Bundle?\n    ): View? {\n        // Inflate the layout for this fragment\n        return inflater.inflate(R.layout.fragment_machine, container, false)\n    }\n\n    companion object {\n        /**\n         * Use this factory method to create a new instance of\n         * this fragment using the provided parameters.\n         *\n         * @param param1 Parameter 1.\n         * @param param2 Parameter 2.\n         * @return A new instance of fragment MachineFragment.\n         */\n        // TODO: Rename and change types and number of parameters\n        @JvmStatic\n        fun newInstance(param1: String, param2: String) =\n            MachineFragment().apply {\n                arguments = Bundle().apply {\n                    putString(ARG_PARAM1, param1)\n                    putString(ARG_PARAM2, param2)\n                }\n            }\n    }\n}"
  },
  {
    "path": "app/src/main/java/com/project/farmingapp/view/auth/LoginActivity.kt",
    "content": "package com.project.farmingapp.view.auth\n\nimport android.content.Intent\nimport android.os.Bundle\nimport android.widget.Toast\nimport androidx.appcompat.app.AppCompatActivity\nimport androidx.databinding.DataBindingUtil\nimport androidx.lifecycle.LiveData\nimport androidx.lifecycle.Observer\nimport androidx.lifecycle.ViewModelProviders\nimport com.google.android.gms.auth.api.signin.GoogleSignIn\nimport com.google.android.gms.auth.api.signin.GoogleSignInClient\nimport com.google.android.gms.auth.api.signin.GoogleSignInOptions\nimport com.google.firebase.auth.FirebaseAuth\nimport com.project.farmingapp.R\nimport com.project.farmingapp.databinding.ActivityLoginBinding\nimport com.project.farmingapp.utilities.hide\nimport com.project.farmingapp.utilities.show\nimport com.project.farmingapp.utilities.toast\nimport com.project.farmingapp.view.dashboard.DashboardActivity\nimport com.project.farmingapp.viewmodel.AuthListener\nimport com.project.farmingapp.viewmodel.AuthViewModel\nimport kotlinx.android.synthetic.main.activity_login.*\n\nclass LoginActivity : AppCompatActivity(), AuthListener {\n    lateinit var googleSignInClient: GoogleSignInClient\n    val firebaseAuth = FirebaseAuth.getInstance()\n    lateinit var viewModel: AuthViewModel\n    override fun onCreate(savedInstanceState: Bundle?) {\n        super.onCreate(savedInstanceState)\n        val binding: ActivityLoginBinding =\n            DataBindingUtil.setContentView(this, R.layout.activity_login)\n        viewModel = ViewModelProviders.of(this).get(AuthViewModel::class.java)\n        binding.authViewModel = viewModel\n        viewModel.authListener = this\n\n        if (firebaseAuth.currentUser != null) {\n            Intent(this, DashboardActivity::class.java).also {\n                startActivity(it)\n            }\n        }\n\n        createaccountText.setOnClickListener {\n            Intent(this, SignupActivity::class.java).also {\n                startActivity(it)\n            }\n        }\n        signGoogleBtnLogin.setOnClickListener {\n            signIn()\n        }\n\n        forgotPasswdTextLogin.setOnClickListener {\n            val userEmail = emailEditLogin.text.toString()\n            if (userEmail.isNullOrEmpty()) {\n                Toast.makeText(this, \"Please enter your Email\", Toast.LENGTH_SHORT).show()\n            } else {\n//                Toast.makeText(this, \"Please enter your Email\", Toast.LENGTH_SHORT).show()\n                firebaseAuth.sendPasswordResetEmail(userEmail)\n                    .addOnCompleteListener {\n                        if (it.isSuccessful) {\n                            Toast.makeText(this, \"Email Sent\", Toast.LENGTH_LONG).show()\n                        }\n                    }\n                    .addOnFailureListener {\n                        Toast.makeText(this, it.message, Toast.LENGTH_SHORT).show()\n                    }\n            }\n        }\n\n    }\n\n\n    //googlesignIn\n    override fun onActivityResult(requestCode: Int, resultCode: Int, data: Intent?) {\n        super.onActivityResult(requestCode, resultCode, data)\n        viewModel.returnActivityResult(requestCode, resultCode, data)\n    }\n\n    fun signIn() {\n        val gso = GoogleSignInOptions.Builder(GoogleSignInOptions.DEFAULT_SIGN_IN)\n            .requestIdToken(getString(R.string.default_web_client_id))\n            .requestEmail()\n            .build()\n        googleSignInClient = GoogleSignIn.getClient(this, gso)\n        val signInIntent = googleSignInClient.signInIntent\n        startActivityForResult(signInIntent, RC_SIGN_IN)\n    }\n\n    override fun onBackPressed() {\n        super.onBackPressed()\n        val a = Intent(Intent.ACTION_MAIN)\n        a.addCategory(Intent.CATEGORY_HOME)\n        a.flags = Intent.FLAG_ACTIVITY_NEW_TASK\n        startActivity(a)\n    }\n    companion object {\n        private const val TAG = \"GoogleActivity\"\n        private const val RC_SIGN_IN = 9001\n    }\n\n    override fun onStarted() {\n        progressLogin.show()\n    }\n\n    override fun onSuccess(authRepo: LiveData<String>) {\n        authRepo.observe(this, Observer {\n            progressLogin.hide()\n            if (it.toString() == \"Success\") {\n                toast(\"Logged In\")\n                Toast.makeText(this, it.toString(), Toast.LENGTH_LONG).show()\n                Intent(this, DashboardActivity::class.java).also {\n                    startActivity(it)\n                }\n            }\n        })\n    }\n\n    override fun onFailure(message: String) {\n        progressLogin.hide()\n        toast(\"Failure\")\n    }\n}"
  },
  {
    "path": "app/src/main/java/com/project/farmingapp/view/auth/SignupActivity.kt",
    "content": "package com.project.farmingapp.view.auth\n\nimport android.content.Intent\nimport androidx.appcompat.app.AppCompatActivity\nimport android.os.Bundle\nimport android.util.Log\nimport androidx.databinding.DataBindingUtil\nimport androidx.lifecycle.LiveData\nimport androidx.lifecycle.Observer\nimport androidx.lifecycle.ViewModelProviders\nimport com.google.android.gms.auth.api.signin.GoogleSignIn\nimport com.google.android.gms.auth.api.signin.GoogleSignInClient\nimport com.google.android.gms.auth.api.signin.GoogleSignInOptions\nimport com.google.android.gms.common.api.ApiException\nimport com.google.firebase.auth.FirebaseAuth\nimport com.google.firebase.auth.GoogleAuthProvider\nimport com.project.farmingapp.R\nimport com.project.farmingapp.databinding.ActivitySignupBinding\nimport com.project.farmingapp.utilities.hide\nimport com.project.farmingapp.utilities.show\nimport com.project.farmingapp.utilities.toast\nimport com.project.farmingapp.view.dashboard.DashboardActivity\nimport com.project.farmingapp.viewmodel.AuthListener\nimport com.project.farmingapp.viewmodel.AuthViewModel\nimport kotlinx.android.synthetic.main.activity_signup.*\n\nclass SignupActivity : AppCompatActivity(), AuthListener {\n\n    lateinit var googleSignInClient: GoogleSignInClient\n    val firebaseAuth = FirebaseAuth.getInstance()\n    lateinit var viewModel: AuthViewModel\n    override fun onCreate(savedInstanceState: Bundle?) {\n        super.onCreate(savedInstanceState)\n\n        val binding: ActivitySignupBinding =\n            DataBindingUtil.setContentView(this, R.layout.activity_signup)\n        viewModel = ViewModelProviders.of(this).get(AuthViewModel::class.java)\n        binding.authViewModel = viewModel\n        viewModel.authListener = this\n\n        loginRedirectTextSignup.setOnClickListener {\n            Intent(this, LoginActivity::class.java).also {\n                startActivity(it)\n            }\n        }\n\n        signGoogleBtnSignup.setOnClickListener {\n            signIn()\n        }\n    }\n\n    override fun onActivityResult(requestCode: Int, resultCode: Int, data: Intent?) {\n        super.onActivityResult(requestCode, resultCode, data)\n        viewModel.returnActivityResult(requestCode, resultCode, data)\n    }\n\n    fun signIn() {\n        val gso = GoogleSignInOptions.Builder(GoogleSignInOptions.DEFAULT_SIGN_IN)\n            .requestIdToken(getString(R.string.default_web_client_id))\n            .requestEmail()\n            .build()\n        googleSignInClient = GoogleSignIn.getClient(this, gso)\n        val signInIntent = googleSignInClient.signInIntent\n        startActivityForResult(signInIntent, RC_SIGN_IN)\n    }\n\n    companion object {\n        private const val TAG = \"GoogleActivity\"\n        private const val RC_SIGN_IN = 9001\n    }\n\n    override fun onStarted() {\n        progressSignup.show()\n    }\n\n    override fun onSuccess(authRepo: LiveData<String>) {\n        authRepo.observe(this, Observer {\n            progressSignup.hide()\n            if (it.toString() == \"Success\") {\n                toast(\"Account Created\")\n                Intent(this, DashboardActivity::class.java).also {\n                    startActivity(it)\n                }\n            }\n        })\n    }\n\n    override fun onFailure(message: String) {\n        progressSignup.hide()\n        toast(\"Failure\")\n    }\n}"
  },
  {
    "path": "app/src/main/java/com/project/farmingapp/view/dashboard/DashboardActivity.kt",
    "content": "package com.project.farmingapp.view.dashboard\n\n\nimport android.Manifest\nimport android.annotation.SuppressLint\nimport android.content.Context\nimport android.content.DialogInterface\nimport android.content.Intent\nimport android.content.SharedPreferences\nimport android.content.pm.PackageManager\nimport android.location.Address\nimport android.location.Geocoder\nimport android.location.Location\nimport android.location.LocationManager\nimport android.os.Build\nimport androidx.appcompat.app.AppCompatActivity\nimport android.os.Bundle\nimport android.os.Handler\nimport android.os.PersistableBundle\nimport android.provider.Settings\nimport android.service.autofill.UserData\nimport android.util.AttributeSet\nimport android.util.Log\nimport android.view.Gravity\nimport android.view.MenuItem\nimport android.view.View\nimport android.widget.TextView\nimport android.widget.Toast\nimport android.widget.Toolbar\nimport androidx.appcompat.app.ActionBarDrawerToggle\nimport androidx.appcompat.app.AlertDialog\nimport androidx.appcompat.app.AppCompatDelegate\nimport androidx.core.app.ActivityCompat\nimport androidx.core.content.ContextCompat\nimport androidx.core.view.GravityCompat\nimport androidx.databinding.DataBindingUtil\nimport androidx.fragment.app.Fragment\nimport androidx.fragment.app.FragmentTransaction\nimport androidx.lifecycle.Observer\nimport androidx.lifecycle.ViewModelProvider\nimport androidx.lifecycle.ViewModelProviders\nimport androidx.navigation.NavController\nimport androidx.recyclerview.widget.LinearLayoutManager\nimport com.bumptech.glide.Glide\nimport com.bumptech.glide.Glide.with\nimport com.google.android.gms.common.api.GoogleApiClient\nimport com.google.android.gms.location.LocationRequest\nimport com.google.android.gms.location.LocationServices\nimport com.google.android.material.navigation.NavigationView\nimport com.google.firebase.auth.FirebaseAuth\nimport com.google.firebase.firestore.DocumentSnapshot\nimport com.google.firebase.firestore.FirebaseFirestore\nimport com.project.farmingapp.R\nimport com.project.farmingapp.adapter.CurrentWeatherAdapter\nimport com.project.farmingapp.adapter.WeatherAdapter\nimport com.project.farmingapp.databinding.ActivityDashboardBinding\nimport com.project.farmingapp.model.WeatherApi\nimport com.project.farmingapp.model.data.Weather\nimport com.project.farmingapp.model.data.WeatherList\nimport com.project.farmingapp.model.data.WeatherRootList\nimport com.project.farmingapp.view.apmc.ApmcFragment\nimport com.project.farmingapp.view.articles.ArticleListFragment\nimport com.project.farmingapp.view.articles.FruitsFragment\nimport com.project.farmingapp.view.auth.LoginActivity\nimport com.project.farmingapp.view.ecommerce.*\nimport com.project.farmingapp.view.introscreen.IntroActivity\nimport com.project.farmingapp.view.socialmedia.SMCreatePostFragment\nimport com.project.farmingapp.view.socialmedia.SocialMediaPostsFragment\nimport com.project.farmingapp.view.user.UserFragment\nimport com.project.farmingapp.view.weather.WeatherFragment\nimport com.project.farmingapp.viewmodel.UserDataViewModel\nimport com.project.farmingapp.viewmodel.UserProfilePostsViewModel\nimport com.project.farmingapp.viewmodel.WeatherViewModel\nimport com.squareup.picasso.Picasso\nimport com.squareup.picasso.PicassoProvider\nimport kotlinx.android.synthetic.main.activity_dashboard.*\nimport kotlinx.android.synthetic.main.app_bar_main.*\nimport kotlinx.android.synthetic.main.fragment_weather.*\nimport kotlinx.android.synthetic.main.nav_header.*\nimport kotlinx.android.synthetic.main.nav_header.view.*\nimport org.w3c.dom.Document\nimport retrofit2.Call\nimport retrofit2.Callback\nimport retrofit2.Response\nimport retrofit2.Retrofit\nimport java.util.*\nimport kotlin.collections.ArrayList\n\nclass DashboardActivity : AppCompatActivity(), NavigationView.OnNavigationItemSelectedListener, View.OnClickListener, com.google.android.gms.location.LocationListener  {\n    lateinit var cartFragment: CartFragment\n    lateinit var ecommerceItemFragment: EcommerceItemFragment\n    lateinit var paymentFragment: PaymentFragment\n    lateinit var dashboardFragment: dashboardFragment\n    lateinit var ecommerceFragment: EcommerceFragment\n    lateinit var weatherFragment: WeatherFragment\n    lateinit var navController: NavController\n    lateinit var toggle: ActionBarDrawerToggle\n    lateinit var blankFragment1: WeatherFragment\n    lateinit var apmcFragment: ApmcFragment\n    lateinit var articleListFragment: ArticleListFragment\n    lateinit var myOrdersFragment: MyOrdersFragment\n    lateinit var userFragment: UserFragment\n    lateinit var socialMediaPostFragment: SocialMediaPostsFragment\n    lateinit var smCreatePostFragment: SMCreatePostFragment\n    private lateinit var viewModel: UserDataViewModel\n    private lateinit var viewModel2: UserProfilePostsViewModel\n    private lateinit var weatherViewModel: WeatherViewModel\n    lateinit var sharedPreferences: SharedPreferences\n\n\n    val firebaseFireStore = FirebaseFirestore.getInstance()\n    val firebaseAuth = FirebaseAuth.getInstance()\n    var userName = \"\"\n    var data: WeatherRootList? = null\n    var firstTime: Boolean? = null\n\n    private var REQUEST_LOCATION_CODE = 101\n    private var mGoogleApiClient: GoogleApiClient? = null\n    private var mLocation: Location? = null\n    private var mLocationRequest: LocationRequest? = null\n    private val UPDATE_INTERVAL = (2 * 1000).toLong()  /* 10 secs */\n    private val FASTEST_INTERVAL: Long = 2000 /* 2 sec */\n\n    override fun onCreate(savedInstanceState: Bundle?) {\n        super.onCreate(savedInstanceState)\n        setContentView(R.layout.activity_dashboard)\n\n        val binding: ActivityDashboardBinding = DataBindingUtil.setContentView(this, R.layout.activity_dashboard)\n        viewModel = ViewModelProviders.of(this).get(UserDataViewModel::class.java)\n        binding.userDataViewModel = viewModel\n\n\n        toggle = ActionBarDrawerToggle(this, drawerLayout, R.string.open, R.string.close)\n        drawerLayout.addDrawerListener(toggle)\n        toggle.syncState()\n\n         weatherViewModel = ViewModelProviders.of(this)\n            .get<WeatherViewModel>(WeatherViewModel::class.java)\n\n        viewModel2 = ViewModelProviders.of(this)\n            .get<UserProfilePostsViewModel>(UserProfilePostsViewModel::class.java)\n//        viewModel2.getAllPosts(firebaseAuth.currentUser!!.email.toString())\n\n        mGoogleApiClient = GoogleApiClient.Builder(this)\n            .addApi(LocationServices.API)\n            .build()\n\n        mGoogleApiClient!!.connect()\n\n        buildGoogleApiClient()\n\n        val currentUser = firebaseAuth.currentUser\n\n        sharedPreferences = getSharedPreferences(\"MyPrefs\", Context.MODE_PRIVATE)\n        firstTime =sharedPreferences.getBoolean(\"firstTime\", true);\n\n\n        if(firstTime!!){\n            Intent(this, IntroActivity::class.java).also {\n                startActivity(it)\n            }\n//            val editor = sharedPreferences.edit()\n//            firstTime = false;\n//            editor.putBoolean(\"firstTime\", firstTime!!)\n//            editor.apply()\n            finish()\n            return\n        } else{\n            if(currentUser == null){\n                Intent(this, LoginActivity::class.java).also {\n                    startActivity(it)\n                }\n                finish()\n                return\n            } else{\n\n            }\n        }\n\n\n\n        viewModel.getUserData(firebaseAuth.currentUser!!.email as String)\n\n        navView.setNavigationItemSelectedListener(this)\n        supportActionBar?.setDisplayHomeAsUpEnabled(true)\n\n        supportActionBar?.title = \"Farming App\"\n\n        ecommerceItemFragment=EcommerceItemFragment()\n        dashboardFragment = dashboardFragment()\n        weatherFragment = WeatherFragment()\n\n        supportFragmentManager\n            .beginTransaction()\n            .replace(R.id.frame_layout, dashboardFragment, \"dashFrag\")\n            .setTransition(FragmentTransaction.TRANSIT_FRAGMENT_OPEN)\n            .setReorderingAllowed(true)\n            .commit()\n\n        bottomNav.selectedItemId = R.id.bottomNavHome\n\n        val something = navView.getHeaderView(0);\n\n        if (dashboardFragment.isVisible) {\n            bottomNav.selectedItemId = R.id.bottomNavHome\n        }\n\n        something.setOnClickListener {\n            Toast.makeText(this, \"You Clicked Slider\", Toast.LENGTH_LONG).show()\n\n            if (drawerLayout.isDrawerOpen(GravityCompat.START)) {\n                drawerLayout.closeDrawer(GravityCompat.START)\n            } else {\n                super.onBackPressed()\n            }\n            userFragment = UserFragment()\n            supportFragmentManager.beginTransaction().apply {\n                replace(R.id.frame_layout, userFragment, \"userFrag\")\n                setTransition(FragmentTransaction.TRANSIT_FRAGMENT_OPEN)\n                setReorderingAllowed(true)\n                addToBackStack(\"userFrag\")\n                commit()\n            }\n        }\n\n        apmcFragment = ApmcFragment()\n        socialMediaPostFragment = SocialMediaPostsFragment()\n        ecommerceFragment=EcommerceFragment()\n        paymentFragment = PaymentFragment()\n        cartFragment= CartFragment()\n        myOrdersFragment=MyOrdersFragment()\n\n        bottomNav.setOnNavigationItemSelectedListener {\n            when (it.itemId) {\n                R.id.bottomNavAPMC -> {\n                    supportFragmentManager.beginTransaction().apply {\n                        replace(R.id.frame_layout, apmcFragment, \"apmcFrag\")\n                        setTransition(FragmentTransaction.TRANSIT_FRAGMENT_OPEN)\n                        setReorderingAllowed(true)\n                        addToBackStack(\"apmcFrag\")\n                        commit()\n                    }\n                }\n                R.id.bottomNavHome -> {\n                    supportFragmentManager.beginTransaction().apply {\n                        replace(R.id.frame_layout, dashboardFragment, \"dashFrag\")\n                        setTransition(FragmentTransaction.TRANSIT_FRAGMENT_OPEN)\n                        setReorderingAllowed(true)\n                        addToBackStack(\"dashFrag\")\n                        commit()\n                    }\n                }\n                R.id.bottomNavEcomm -> {\n                    ecommerceFragment = EcommerceFragment()\n                    supportFragmentManager.beginTransaction().apply {\n                        replace(R.id.frame_layout, ecommerceFragment, \"ecommItemFrag\")\n                        setTransition(FragmentTransaction.TRANSIT_FRAGMENT_OPEN)\n                        setReorderingAllowed(true)\n                        addToBackStack(\"ecommItemFrag\")\n                        commit()\n                    }\n                }\n                R.id.bottomNavPost -> {\n                    socialMediaPostFragment = SocialMediaPostsFragment()\n                    supportFragmentManager.beginTransaction().apply {\n                        replace(R.id.frame_layout, socialMediaPostFragment, \"socialFrag\")\n                        setTransition(FragmentTransaction.TRANSIT_FRAGMENT_OPEN)\n                        setReorderingAllowed(true)\n                        addToBackStack(\"socialFrag\")\n                        commit()\n                    }\n                }\n            }\n            true\n        }\n\n        viewModel.userliveData.observe(this, Observer {\n\n            val something = navView.getHeaderView(0);\n            val posts = it.get(\"posts\") as List<String>\n            val city = it.get(\"city\")\n            userName = it.get(\"name\").toString()\n\n//            val allPosts = viewModel2.liveData3.value as ArrayList<DocumentSnapshot>\n\n            if(city == null){\n                something.cityTextNavHeader.text =\"City: \"\n            } else{\n                something.cityTextNavHeader.text =\"City: \" +  it.get(\"city\").toString()\n            }\n\n            something.navbarUserName.text = userName\n            something.navbarUserEmail.text = firebaseAuth.currentUser!!.email\n            Glide.with(this).load(it.get(\"profileImage\")).into(something.navbarUserImage)\n\n            Log.d(\"User Data from VM\", it.getString(\"name\"))\n\n            something.navBarUserPostCount.text = \"Posts Count: \" + posts.size.toString()\n        })\n    }\n\n    override fun onOptionsItemSelected(item: MenuItem): Boolean {\n        if (toggle.onOptionsItemSelected(item)) {\n            return true\n        }\n        return super.onOptionsItemSelected(item)\n    }\n\n    private fun setCurrentFragment(fragment: Fragment) {\n        supportFragmentManager.beginTransaction().apply {\n            replace(R.id.frame_layout, fragment)\n\n            setTransition(FragmentTransaction.TRANSIT_FRAGMENT_OPEN)\n            setReorderingAllowed(true)\n            addToBackStack(\"name\")\n            commit()\n        }\n    }\n\n\n    override fun onPostCreate(savedInstanceState: Bundle?, persistentState: PersistableBundle?) {\n        super.onPostCreate(savedInstanceState, persistentState)\n        toggle.syncState()\n    }\n\n    override fun onNavigationItemSelected(item: MenuItem): Boolean {\n        bottomNav.selectedItemId = R.id.bottomNavHome\n        when (item.itemId) {\n\n            R.id.miItem1 -> {\n                    ecommerceFragment = EcommerceFragment()\n                    supportFragmentManager\n                        .beginTransaction()\n                        .replace(R.id.frame_layout, ecommerceFragment, \"ecommListFrag\")\n                        .setTransition(FragmentTransaction.TRANSIT_FRAGMENT_OPEN)\n                        .setReorderingAllowed(true)\n                        .addToBackStack(\"ecommListFrag\")\n                        .commit()\n            }\n            R.id.miItem2 -> {\n                apmcFragment = ApmcFragment()\n                supportFragmentManager\n                    .beginTransaction()\n                    .replace(R.id.frame_layout, apmcFragment, \"apmcFrag\")\n                    .setTransition(FragmentTransaction.TRANSIT_FRAGMENT_OPEN)\n                    .setReorderingAllowed(true)\n                    .addToBackStack(\"apmcFrag\")\n                    .commit()\n            }\n            R.id.miItem3 ->{\n                smCreatePostFragment = SMCreatePostFragment()\n                supportFragmentManager\n                    .beginTransaction()\n                    .replace(R.id.frame_layout, smCreatePostFragment, \"createPostFrag\")\n                    .setTransition(FragmentTransaction.TRANSIT_FRAGMENT_OPEN)\n                    .setReorderingAllowed(true)\n                    .addToBackStack(\"createPostFrag\")\n                    .commit()\n            }\n            R.id.miItem4 -> {\n                socialMediaPostFragment = SocialMediaPostsFragment()\n                supportFragmentManager\n                    .beginTransaction()\n                    .replace(R.id.frame_layout, socialMediaPostFragment, \"socialFrag\")\n                    .setTransition(FragmentTransaction.TRANSIT_FRAGMENT_OPEN)\n                    .setReorderingAllowed(true)\n                    .addToBackStack(\"socialFrag\")\n                    .commit()\n            }\n            R.id.miItem5 -> {\n                weatherFragment = WeatherFragment()\n                supportFragmentManager\n                    .beginTransaction()\n                    .replace(R.id.frame_layout, weatherFragment, \"weatherFrag\")\n                    .setTransition(FragmentTransaction.TRANSIT_FRAGMENT_OPEN)\n                    .setReorderingAllowed(true)\n                    .addToBackStack(\"weatherFrag\")\n                    .commit()\n            }\n            R.id.miItem6 -> {\n                articleListFragment = ArticleListFragment()\n                supportFragmentManager\n                    .beginTransaction()\n                    .replace(R.id.frame_layout, articleListFragment, \"articleListFrag\")\n                    .setTransition(FragmentTransaction.TRANSIT_FRAGMENT_OPEN)\n                    .setReorderingAllowed(true)\n                    .addToBackStack(\"articleListFrag\")\n                    .commit()\n            }\n            R.id.miItem7 -> {\n                supportFragmentManager\n                    .beginTransaction()\n                    .replace(R.id.frame_layout, myOrdersFragment, \"myOrdersFrag\")\n                    .setTransition(FragmentTransaction.TRANSIT_FRAGMENT_OPEN)\n                    .setReorderingAllowed(true)\n                    .addToBackStack(\"myOrdersFrag\")\n                    .commit()\n            }\n            R.id.miItem8 -> {\n                val builder = AlertDialog.Builder(this)\n                builder.setTitle(\"Log Out\")\n                    .setMessage(\"Do you want to logout?\")\n                    .setPositiveButton(\"Yes\") { dialogInterface, i ->\n                        firebaseAuth.signOut()\n                        Toast.makeText(this, \"Logged Out\", Toast.LENGTH_LONG).show()\n                        Intent(this, LoginActivity::class.java).also {\n                            startActivity(it)\n                        }\n                    }\n                    .setNegativeButton(\"No\") { dialogInterface, i ->\n                    }\n                    .show()\n            }\n        }\n        drawerLayout.closeDrawer(GravityCompat.START)\n        return true\n    }\n\n    override fun onBackPressed() {\n        super.onBackPressed()\n        if (dashboardFragment.isVisible) {\n            if (drawerLayout.isDrawerOpen(GravityCompat.START)) {\n                drawerLayout.closeDrawer(GravityCompat.START)\n            } else {\n                \n            }\n        }\n    }\n\n\n    fun automatedClick(){\n\n        if (!checkGPSEnabled()) {\n            return\n        }\n\n        if (android.os.Build.VERSION.SDK_INT >= Build.VERSION_CODES.M) {\n            if (ContextCompat.checkSelfPermission(this, Manifest.permission.ACCESS_FINE_LOCATION) == PackageManager.PERMISSION_GRANTED) {\n                //Location Permission already granted\n                getLocation();\n\n            } else {\n                //Request Location Permission\n                checkLocationPermission()\n            }\n        } else {\n            getLocation();\n//            buildGoogleApiClient()\n        }\n    }\n\n    override fun onClick(v: View?) {\n        if (!checkGPSEnabled()) {\n            return\n        }\n\n        if (android.os.Build.VERSION.SDK_INT >= Build.VERSION_CODES.M) {\n            if (ContextCompat.checkSelfPermission(this, Manifest.permission.ACCESS_FINE_LOCATION) == PackageManager.PERMISSION_GRANTED) {\n                //Location Permission already granted\n                getLocation();\n            } else {\n                //Request Location Permission\n                checkLocationPermission()\n            }\n        } else {\n            getLocation();\n        }\n    }\n    @SuppressLint(\"MissingPermission\")\n    private fun getLocation() {\n        mLocation = LocationServices.FusedLocationApi.getLastLocation(mGoogleApiClient);\n\n        if (mLocation == null) {\n            startLocationUpdates();\n        }\n        if (mLocation != null) {\n            Toast.makeText(this, \"Lat: \" + mLocation!!.latitude.toString(), Toast.LENGTH_SHORT).show()\n            Toast.makeText(this, \"Long: \" + mLocation!!.longitude.toString(), Toast.LENGTH_SHORT).show()\n\n            val coords = mutableListOf<String>()\n            val geocoder = Geocoder(this, Locale.getDefault())\n            val addresses: List<Address> = geocoder.getFromLocation(mLocation!!.latitude, mLocation!!.longitude, 1)\n\n            coords.add(mLocation!!.latitude.toString())\n            coords.add(mLocation!!.longitude.toString())\n            coords.add(addresses[0].locality.toString())\n            weatherViewModel.updateCoordinates(coords)\n\n        } else {\n            Toast.makeText(this, \"Location not Detected\", Toast.LENGTH_SHORT).show();\n        }\n    }\n    private fun startLocationUpdates() {\n        // Create the location request\n        mLocationRequest = LocationRequest.create()\n            .setPriority(LocationRequest.PRIORITY_HIGH_ACCURACY)\n            .setInterval(UPDATE_INTERVAL)\n            .setFastestInterval(FASTEST_INTERVAL)\n        // Request location updates\n        if (ActivityCompat.checkSelfPermission(this, Manifest.permission.ACCESS_FINE_LOCATION) != PackageManager.PERMISSION_GRANTED && ActivityCompat.checkSelfPermission(this, Manifest.permission.ACCESS_COARSE_LOCATION) != PackageManager.PERMISSION_GRANTED) {\n            return\n        }\n        LocationServices.FusedLocationApi.requestLocationUpdates(mGoogleApiClient, mLocationRequest, this)\n    }\n    override fun onLocationChanged(p0: Location?) {\n//        automatedClick()\n    }\n\n    @Synchronized\n    private fun buildGoogleApiClient() {\n        mGoogleApiClient = GoogleApiClient.Builder(this)\n            .addApi(LocationServices.API)\n            .build()\n\n        mGoogleApiClient!!.connect()\n//        automatedClick()\n    }\n\n    private fun checkGPSEnabled(): Boolean {\n        if (!isLocationEnabled())\n            showAlert()\n        return isLocationEnabled()\n    }\n\n    private fun showAlert() {\n        val dialog = android.app.AlertDialog.Builder(this)\n        dialog.setTitle(\"Enable Location\")\n            .setMessage(\"Your Locations Settings is set to 'Off'.\\nPlease Enable Location to use this app!\")\n            .setPositiveButton(\"Location Settings\") { paramDialogInterface, paramInt ->\n                val myIntent = Intent(Settings.ACTION_LOCATION_SOURCE_SETTINGS)\n                startActivity(myIntent)\n            }\n            .setNegativeButton(\"Cancel\") { paramDialogInterface, paramInt -> }\n        dialog.show()\n    }\n\n    private fun isLocationEnabled(): Boolean {\n        var locationManager = getSystemService(Context.LOCATION_SERVICE) as LocationManager\n        return locationManager!!.isProviderEnabled(LocationManager.GPS_PROVIDER) || locationManager!!.isProviderEnabled(\n            LocationManager.NETWORK_PROVIDER)\n    }\n\n    private fun checkLocationPermission() {\n        if (ContextCompat.checkSelfPermission(this, Manifest.permission.ACCESS_FINE_LOCATION) != PackageManager.PERMISSION_GRANTED) {\n            if (ActivityCompat.shouldShowRequestPermissionRationale(this, Manifest.permission.ACCESS_FINE_LOCATION)) {\n                android.app.AlertDialog.Builder(this)\n                    .setTitle(\"Location Permission Needed\")\n                    .setMessage(\"This app needs the Location Permissions!\\nPlease accept to use location functionality.\")\n                    .setPositiveButton(\"OK\", DialogInterface.OnClickListener { dialog, which ->\n                        ActivityCompat.requestPermissions(this, arrayOf(Manifest.permission.ACCESS_FINE_LOCATION), REQUEST_LOCATION_CODE)\n                    })\n                    .create()\n                    .show()\n\n            } else ActivityCompat.requestPermissions(this, arrayOf(Manifest.permission.ACCESS_FINE_LOCATION), REQUEST_LOCATION_CODE)\n        }\n    }\n\n    override fun onRequestPermissionsResult(requestCode: Int, permissions: Array<String>, grantResults: IntArray) {\n        when (requestCode) {\n            REQUEST_LOCATION_CODE -> {\n                // If request is cancelled, the result arrays are empty.\n                if (grantResults.isNotEmpty() && grantResults[0] == PackageManager.PERMISSION_GRANTED) {\n                    // permission was granted, yay! Do the location-related task you need to do.\n                    if (ContextCompat.checkSelfPermission(this, Manifest.permission.ACCESS_FINE_LOCATION) == PackageManager.PERMISSION_GRANTED) {\n                        Toast.makeText(this, \"Permission Granted\", Toast.LENGTH_LONG).show()\n                        automatedClick()\n                    }\n                } else {\n                    // permission denied, boo! Disable the functionality that depends on this permission.\n                    Toast.makeText(this, \"Permission Denied\", Toast.LENGTH_LONG).show()\n                }\n                return\n            }\n        }\n    }\n\n    override fun onStart() {\n        super.onStart()\n        mGoogleApiClient?.connect()\n        Handler().postDelayed({\n            automatedClick()\n        }, 1000)\n\n    }\n\n    override fun onStop() {\n        super.onStop()\n        if (mGoogleApiClient!!.isConnected()) {\n            mGoogleApiClient!!.disconnect()\n        }\n    }\n}"
  },
  {
    "path": "app/src/main/java/com/project/farmingapp/view/dashboard/DashboardFragment.kt",
    "content": "package com.project.farmingapp.view.dashboard\n\nimport android.content.Context\nimport android.content.SharedPreferences\nimport android.os.Bundle\nimport android.preference.PreferenceManager\nimport android.util.Log\nimport android.view.LayoutInflater\nimport android.view.View\nimport android.view.ViewGroup\nimport android.widget.GridLayout\nimport android.widget.Toast\nimport androidx.appcompat.app.AppCompatActivity\nimport androidx.fragment.app.Fragment\nimport androidx.fragment.app.FragmentTransaction\nimport androidx.lifecycle.Observer\nimport androidx.lifecycle.ViewModelProviders\nimport androidx.recyclerview.widget.GridLayoutManager\nimport com.bumptech.glide.Glide\nimport com.google.gson.JsonObject\nimport com.project.farmingapp.R\nimport com.project.farmingapp.adapter.DashboardEcomItemAdapter\nimport com.project.farmingapp.model.WeatherApi\nimport com.project.farmingapp.model.data.WeatherRootList\nimport com.project.farmingapp.utilities.CellClickListener\nimport com.project.farmingapp.view.articles.ArticleListFragment\nimport com.project.farmingapp.view.articles.FruitsFragment\nimport com.project.farmingapp.view.ecommerce.EcommerceItemFragment\nimport com.project.farmingapp.view.weather.WeatherFragment\nimport com.project.farmingapp.view.yojna.YojnaListFragment\nimport com.project.farmingapp.viewmodel.ArticleViewModel\nimport com.project.farmingapp.viewmodel.EcommViewModel\nimport com.project.farmingapp.viewmodel.WeatherViewModel\nimport kotlinx.android.synthetic.main.fragment_dashboard.*\nimport org.json.JSONObject\nimport retrofit2.Call\nimport retrofit2.Callback\nimport retrofit2.Response\nimport kotlin.random.Random\n\n\n// TODO: Rename parameter arguments, choose names that match\n// the fragment initialization parameters, e.g. ARG_ITEM_NUMBER\nprivate const val ARG_PARAM1 = \"param1\"\nprivate const val ARG_PARAM2 = \"param2\"\n\n/**\n * A simple [Fragment] subclass.\n * Use the [dashboardFragment.newInstance] factory method to\n * create an instance of this fragment.\n */\nclass dashboardFragment : Fragment(), CellClickListener {\n    // TODO: Rename and change types of parameters\n    private var param1: String? = null\n    private var param2: String? = null\n    lateinit var weatherFragment: WeatherFragment\n    lateinit var fruitsFragment: FruitsFragment\n    lateinit var yojnaListFragment: YojnaListFragment\n    lateinit var articleListFragment: ArticleListFragment\n    private lateinit var viewModel: WeatherViewModel\n    private lateinit var viewModel2: EcommViewModel\n    var data: WeatherRootList? = null\n    lateinit var sharedPreferences: SharedPreferences\n    override fun onCreate(savedInstanceState: Bundle?) {\n        super.onCreate(savedInstanceState)\n        arguments?.let {\n            param1 = it.getString(ARG_PARAM1)\n            param2 = it.getString(ARG_PARAM2)\n        }\n\n        viewModel = ViewModelProviders.of(requireActivity())\n            .get<WeatherViewModel>(WeatherViewModel::class.java)\n\n        viewModel2 = ViewModelProviders.of(requireActivity())\n            .get<EcommViewModel>(EcommViewModel::class.java)\n\n\n        viewModel2.loadAllEcommItems()\n    }\n\n    override fun onCreateView(\n        inflater: LayoutInflater, container: ViewGroup?,\n        savedInstanceState: Bundle?\n    ): View? {\n\n        viewModel.getCoordinates().observe(viewLifecycleOwner, Observer {\n            Log.d(\"DashFrag\", it.toString())\n            viewModel.updateNewData()\n            val city = it.get(2) as String\n            viewModel.newDataTrial.observe(viewLifecycleOwner, Observer {\n\n                Log.d(\"Observed Here\", \"Yes\")\n                weathTempTextWeathFrag.text =\n                    (it.list[0].main.temp - 273).toInt().toString() + \"\\u2103\"\n                humidityTextWeathFrag.text =\n                    \"Humidity: \" + it!!.list[0].main.humidity.toString() + \" %\"\n                windTextWeathFrag.text = \"Wind: \" + it!!.list[0].wind.speed.toString() + \" km/hr\"\n                weatherCityTitle.text = city.toString()\n                var iconcode = it!!.list[0].weather[0].icon\n                var iconurl = \"https://openweathermap.org/img/w/\" + iconcode + \".png\";\n                Glide.with(activity!!.applicationContext).load(iconurl)\n                    .into(weathIconImageWeathFrag)\n            })\n        })\n\n\n        viewModel2.ecommLiveData.observe(viewLifecycleOwner, Observer {\n            var itemsToShow = (0..it.size - 1).shuffled().take(4) as List<Int>\n            val adapterEcomm =\n                DashboardEcomItemAdapter(activity!!.applicationContext, it, itemsToShow, this)\n            dashboardEcommRecycler.adapter = adapterEcomm\n            dashboardEcommRecycler.layoutManager =\n                GridLayoutManager(activity!!.applicationContext, 2)\n        })\n\n        // Inflate the layout for this fragment\n        return inflater.inflate(R.layout.fragment_dashboard, container, false)\n    }\n\n    override fun onViewCreated(view: View, savedInstanceState: Bundle?) {\n        super.onViewCreated(view, savedInstanceState)\n\n        setHasOptionsMenu(true)\n        (activity as AppCompatActivity).supportActionBar?.title = \"Agri India\"\n\n        weatherCard.setOnClickListener {\n            weatherFragment = WeatherFragment()\n\n            val transaction = activity!!.supportFragmentManager\n                .beginTransaction()\n                .replace(R.id.frame_layout, weatherFragment, \"name2\")\n                .setTransition(FragmentTransaction.TRANSIT_FRAGMENT_OPEN)\n                .setReorderingAllowed(true)\n                .addToBackStack(\"name\")\n                .commit()\n            data?.let { it1 -> viewModel.messageToB(it1) }\n        }\n\n        viewModel = ViewModelProviders.of(requireActivity())\n            .get<WeatherViewModel>(WeatherViewModel::class.java)\n\n        viewModel.getMessageA()\n            .observe(viewLifecycleOwner, object : Observer<WeatherRootList?> {\n                override fun onChanged(t: WeatherRootList?) {\n                    Log.d(\"DashFrag Data Changed A\", \"B\")\n                }\n            })\n\n\n        cat4.setOnClickListener {\n            yojnaListFragment = YojnaListFragment()\n            val transaction = activity!!.supportFragmentManager\n                .beginTransaction()\n                .replace(R.id.frame_layout, yojnaListFragment, \"yojnaListFrag\")\n                .setTransition(FragmentTransaction.TRANSIT_FRAGMENT_OPEN)\n                .setReorderingAllowed(true)\n                .addToBackStack(\"yojnaListFrag\")\n                .commit()\n        }\n\n        cat5.setOnClickListener {\n            articleListFragment = ArticleListFragment()\n            val transaction = activity!!.supportFragmentManager\n                .beginTransaction()\n                .replace(R.id.frame_layout, articleListFragment, \"articlesListFrag\")\n                .setTransition(FragmentTransaction.TRANSIT_FRAGMENT_OPEN)\n                .setReorderingAllowed(true)\n                .addToBackStack(\"articlesListFrag\")\n                .commit()\n        }\n    }\n\n    companion object {\n        /**\n         * Use this factory method to create a new instance of\n         * this fragment using the provided parameters.\n         *\n         * @param param1 Parameter 1.\n         * @param param2 Parameter 2.\n         * @return A new instance of fragment dashboardFragment.\n         */\n        // TODO: Rename and change types and number of parameters\n        @JvmStatic\n        fun newInstance(param1: String, param2: String) =\n            dashboardFragment().apply {\n                arguments = Bundle().apply {\n                    putString(ARG_PARAM1, param1)\n                    putString(ARG_PARAM2, param2)\n                }\n            }\n    }\n\n    override fun onStop() {\n        super.onStop()\n\n    }\n\n    override fun onCellClickListener(name: String) {\n        val ecommerceItemFragment = EcommerceItemFragment()\n\n        val transaction = activity!!.supportFragmentManager\n            .beginTransaction()\n            .replace(R.id.frame_layout, ecommerceItemFragment, name)\n            .setTransition(FragmentTransaction.TRANSIT_FRAGMENT_OPEN)\n            .setReorderingAllowed(true)\n            .addToBackStack(\"name\")\n            .commit()\n    }\n}"
  },
  {
    "path": "app/src/main/java/com/project/farmingapp/view/ecommerce/CartFragment.kt",
    "content": "package com.project.farmingapp.view.ecommerce\n\nimport android.content.Intent\nimport android.os.Bundle\nimport android.util.Log\nimport android.view.*\nimport android.widget.Toast\nimport androidx.fragment.app.Fragment\nimport androidx.appcompat.app.AppCompatActivity\nimport androidx.lifecycle.Observer\nimport androidx.recyclerview.widget.LinearLayoutManager\nimport com.google.firebase.auth.FirebaseAuth\nimport com.google.firebase.database.DataSnapshot\nimport com.google.firebase.database.DatabaseError\nimport com.google.firebase.database.FirebaseDatabase\nimport com.google.firebase.database.ValueEventListener\nimport com.project.farmingapp.PrePaymentFragment\nimport com.project.farmingapp.R\nimport com.project.farmingapp.adapter.CartItemsAdapter\nimport com.project.farmingapp.utilities.CartItemBuy\nimport com.project.farmingapp.viewmodel.EcommViewModel\nimport kotlinx.android.synthetic.main.fragment_cart.*\nimport kotlin.collections.HashMap\n\n// TODO: Rename parameter arguments, choose names that match\n// the fragment initialization parameters, e.g. ARG_ITEM_NUMBER\nprivate const val ARG_PARAM1 = \"param1\"\nprivate const val ARG_PARAM2 = \"param2\"\n\n/**\n * A simple [Fragment] subclass.\n * Use the [CartFragment.newInstance] factory method to\n * create an instance of this fragment.\n */\nclass CartFragment : Fragment(), CartItemBuy {\n\n    private var param1: String? = null\n    private var param2: String? = null\n    var isOpened: Boolean = false\n    var totalCount = 0\n    var totalPrice = 0\n    var items = HashMap<String, Object>()\n    lateinit var ecommViewModel: EcommViewModel\n\n    override fun onCreate(savedInstanceState: Bundle?) {\n        super.onCreate(savedInstanceState)\n        arguments?.let {\n            param1 = it.getString(ARG_PARAM1)\n            param2 = it.getString(ARG_PARAM2)\n        }\n        ecommViewModel = EcommViewModel()\n    }\n\n    override fun onCreateView(\n        inflater: LayoutInflater, container: ViewGroup?,\n        savedInstanceState: Bundle?\n    ): View? {\n        // Inflate the layout for this fragment\n        setHasOptionsMenu(true)\n        return inflater.inflate(R.layout.fragment_cart, container, false)\n    }\n\n    companion object {\n        /**\n         * Use this factory method to create a new instance of\n         * this fragment using the provided parameters.\n         *\n         * @param param1 Parameter 1.\n         * @param param2 Parameter 2.\n         * @return A new instance of fragment CartFragment.\n         */\n        // TODO: Rename and change types and number of parameters\n        @JvmStatic\n        fun newInstance(param1: String, param2: String) =\n            CartFragment().apply {\n                arguments = Bundle().apply {\n                    putString(ARG_PARAM1, param1)\n                    putString(ARG_PARAM2, param2)\n                }\n            }\n\n    }\n\n    override fun onViewCreated(view: View, savedInstanceState: Bundle?) {\n        super.onViewCreated(view, savedInstanceState)\n        val firebaseDatabase = FirebaseDatabase.getInstance()\n        val firebaseAuth = FirebaseAuth.getInstance()\n        val cartRef =\n            firebaseDatabase.getReference(\"${firebaseAuth.currentUser!!.uid}\").child(\"cart\")\n\n        (activity as AppCompatActivity).supportActionBar?.title = \"Cart\"\n        isOpened = true\n\n        val postListener = object : ValueEventListener {\n            override fun onCancelled(error: DatabaseError) {\n                TODO(\"Not yet implemented\")\n            }\n\n            override fun onDataChange(dataSnapshot: DataSnapshot) {\n                if (dataSnapshot.exists()) {\n\n                    items = dataSnapshot.value as HashMap<String, Object>\n\n                    var totalCartPrice = 0\n                    for ((key, value) in items) {\n\n                        val currVal = value as Map<String, Object>\n                        Log.d(\"Total Items\", key.toString())\n                        Log.d(\"Total Items\", value.toString())\n                        ecommViewModel.getSpecificItem(\"${key}\")\n                            .observe(viewLifecycleOwner, Observer {\n                                totalCartPrice += currVal.get(\"quantity\").toString()\n                                    .toInt() * it.get(\"price\").toString().toInt() + it.get(\"delCharge\").toString().toInt()\n                                Log.d(\"Total Price\", currVal.get(\"quantity\").toString())\n                                Log.d(\"Total Price\", it.get(\"price\").toString())\n                                Log.d(\"Total Price - 2\", (currVal.get(\"quantity\").toString().toInt()*it.get(\"price\").toString().toInt()).toString())\n                                totalItemsValue.text = items.size.toString()\n                                totalCostValue.text = \"\\u20B9\" + totalCartPrice.toString()\n                            })\n                        Log.d(\"Total Price - 3\", key.toString())\n                    }\n\n                    if (isOpened == true) {\n                        totalItemsValue.text = items.size.toString()\n                        totalCostValue.text = \"\\u20B9\" + totalCartPrice.toString()\n                    }\n\n\n                    val adapter =\n                        CartItemsAdapter(this@CartFragment, items, this@CartFragment)\n                    recyclerCart.adapter = adapter\n                    recyclerCart.layoutManager = LinearLayoutManager(activity!!.applicationContext)\n                    progress_cart.visibility = View.GONE\n                    loadingTitleText.visibility = View.GONE\n                  \n                } else {\n                    Toast.makeText(\n                        activity!!.applicationContext,\n                        \"Item Not Exist\",\n                        Toast.LENGTH_SHORT\n                    ).show()\n                    progress_cart.visibility = View.GONE\n                    loadingTitleText.visibility = View.GONE\n                }\n            }\n        }\n\n\n        cartRef.addValueEventListener(postListener)\n\n\n        buyAllBtn.setOnClickListener {\n//            prePaymentfragment = PrePaymentFragment()\n//            val bundle = Bundle()\n//\n//            val transaction = activity!!.supportFragmentManager\n//                .beginTransaction()\n//                .replace(R.id.frame_layout, prePaymentfragment)\n//                .setTransition(FragmentTransaction.TRANSIT_FRAGMENT_OPEN)\n//                .setReorderingAllowed(true)\n//                .addToBackStack(\"name\")\n//                .commit()\n//val TotalPrice=totalCostValue.text.toString()\n            //var products_id:ArrayList<String>\n            // products_id.add()\n//            Intent (activity!!.applicationContext, RazorPayActivity::class.java).also {\n//                it.putExtra(\"tp\",totalPrice)\n//                it.putExtra()\n//                startActivity(it)\n\n            // }\n        }\n    }\n\n    override fun addToOrders(productId: String, quantity: Int, itemCost: Int, deliveryCost: Int) {\n        Intent(activity!!.applicationContext, RazorPayActivity::class.java).also {\n            //  it.putExtra(\"tp\", \"123\")\n            it.putExtra(\"productId\", productId)\n            it.putExtra(\"itemCost\", itemCost.toString())\n            it.putExtra(\"quantity\", quantity.toString())\n            it.putExtra(\"deliveryCost\", deliveryCost.toString())\n            startActivity(it)\n        }\n    }\n\n}"
  },
  {
    "path": "app/src/main/java/com/project/farmingapp/view/ecommerce/EcommerceFragment.kt",
    "content": "package com.project.farmingapp.view.ecommerce\n\nimport android.os.Bundle\nimport android.util.Log\nimport android.view.*\nimport androidx.fragment.app.Fragment\nimport android.widget.Toast\nimport androidx.appcompat.app.AppCompatActivity\nimport androidx.fragment.app.FragmentTransaction\nimport androidx.lifecycle.Observer\nimport androidx.lifecycle.ViewModelProviders\nimport androidx.recyclerview.widget.LinearLayoutManager\nimport com.google.android.material.chip.ChipGroup\nimport com.google.firebase.firestore.FirebaseFirestore\nimport com.google.firebase.firestore.Query\nimport com.project.farmingapp.R\nimport com.project.farmingapp.adapter.EcommerceAdapter\nimport com.project.farmingapp.utilities.CellClickListener\nimport com.project.farmingapp.viewmodel.EcommViewModel\n\n\nimport kotlinx.android.synthetic.main.fragment_ecommerce.*\n\n\n// TODO: Rename parameter arguments, choose names that match\n// the fragment initialization parameters, e.g. ARG_ITEM_NUMBER\nprivate const val ARG_PARAM1 = \"param1\"\nprivate const val ARG_PARAM2 = \"param2\"\n\n/**\n * A simple [Fragment] subclass.\n * Use the [EcommerceFragment.newInstance] factory method to\n * create an instance of this fragment.\n */\n\nclass EcommerceFragment : Fragment(), CellClickListener {\n    private lateinit var viewmodel: EcommViewModel\n    private var adapter: EcommerceAdapter? = null\n    lateinit var ecommerceItemFragment: EcommerceItemFragment\n\n    // TODO: Rename and change types of parameters\n    private var param1: String? = null\n    private var param2: String? = null\n\n    override fun onCreate(savedInstanceState: Bundle?) {\n        super.onCreate(savedInstanceState)\n        arguments?.let {\n            param1 = it.getString(ARG_PARAM1)\n            param2 = it.getString(ARG_PARAM2)\n\n            viewmodel = ViewModelProviders.of(requireActivity())\n                .get<EcommViewModel>(EcommViewModel::class.java)\n\n//            viewmodel = ViewModelProviders.of(requireActivity())\n//                .get<EcommViewModel>(EcommViewModel::class.java)\n\n            viewmodel.loadAllEcommItems()\n        }\n\n\n    }\n\n    override fun onCreateView(\n        inflater: LayoutInflater, container: ViewGroup?,\n        savedInstanceState: Bundle?\n    ): View? {\n        // Inflate the layout for this fragment\n        viewmodel = ViewModelProviders.of(requireActivity())\n            .get<EcommViewModel>(EcommViewModel::class.java)\n\n        viewmodel.ecommLiveData.observe(viewLifecycleOwner, Observer {\n            adapter = EcommerceAdapter(activity!!.applicationContext, it, this)\n            ecommrcyclr.adapter = adapter\n            ecommrcyclr.layoutManager = LinearLayoutManager(activity!!.applicationContext)\n        })\n\n        return inflater.inflate(R.layout.fragment_ecommerce, container, false)\n    }\n\n    override fun onViewCreated(view: View, savedInstanceState: Bundle?) {\n        super.onViewCreated(view, savedInstanceState)\n\n\n        setHasOptionsMenu(true)\n        (activity as AppCompatActivity).supportActionBar?.title = \"E-Commerce\"\n\n        chipgrp.check(R.id.chip1)\n        viewmodel.loadAllEcommItems()\n\n        chipgrp.setOnCheckedChangeListener { group, checkedId ->\n\n            when (checkedId) {\n                R.id.chip1 -> {\n                    viewmodel.loadAllEcommItems().observe(viewLifecycleOwner, Observer {\n                        ecommrcyclr.adapter =\n                            EcommerceAdapter(activity!!.applicationContext, it, this)\n                    })\n                }\n                R.id.chip2 -> {\n                    viewmodel.getSpecificCategoryItems(\"fertilizer\")\n                        .observe(viewLifecycleOwner, Observer {\n                            ecommrcyclr.adapter =\n                                EcommerceAdapter(activity!!.applicationContext, it, this)\n                        })\n                }\n\n                R.id.chip3 -> {\n                    viewmodel.getSpecificCategoryItems(\"pestiside\")\n                        .observe(viewLifecycleOwner, Observer {\n                            ecommrcyclr.adapter =\n                                EcommerceAdapter(activity!!.applicationContext, it, this)\n                        })\n                }\n\n                R.id.chip4 -> {\n                    viewmodel.getSpecificCategoryItems(\"machine\")\n                        .observe(viewLifecycleOwner, Observer {\n                            ecommrcyclr.adapter =\n                                EcommerceAdapter(activity!!.applicationContext, it, this)\n                        })\n                }\n            }\n        }\n    }\n\n    companion object {\n        /**\n         * Use this factory method to create a new instance of\n         * this fragment using the provided parameters.\n         *\n         * @param param1 Parameter 1.\n         * @param param2 Parameter 2.\n         * @return A new instance of fragment EcommerceFragment.\n         */\n        // TODO: Rename and change types and number of parameters\n        @JvmStatic\n        fun newInstance(param1: String, param2: String) =\n            EcommerceFragment().apply {\n                arguments = Bundle().apply {\n                    putString(ARG_PARAM1, param1)\n                    putString(ARG_PARAM2, param2)\n                }\n            }\n    }\n\n    override fun onCellClickListener(name: String) {\n        ecommerceItemFragment = EcommerceItemFragment()\n        val bundle = Bundle()\n        bundle.putString(\"name\", name)\n        ecommerceItemFragment.setArguments(bundle)\n\n        val transaction = activity!!.supportFragmentManager\n            .beginTransaction()\n            .replace(R.id.frame_layout, ecommerceItemFragment, name)\n            .setTransition(FragmentTransaction.TRANSIT_FRAGMENT_OPEN)\n            .setReorderingAllowed(true)\n            .addToBackStack(\"ecommItem\")\n            .commit()\n\n    }\n\n\n    override fun onCreateOptionsMenu(menu: Menu, inflater: MenuInflater) {\n        super.onCreateOptionsMenu(menu, inflater)\n        inflater.inflate(R.menu.cart_menu, menu)\n    }\n\n    override fun onOptionsItemSelected(item: MenuItem): Boolean {\n\n        when (item.itemId) {\n            R.id.cart_item -> {\n                val cartFragment = CartFragment()\n                val transaction = activity!!.supportFragmentManager\n                    .beginTransaction()\n                    .replace(R.id.frame_layout, cartFragment)\n                    .setTransition(FragmentTransaction.TRANSIT_FRAGMENT_OPEN)\n                    .setReorderingAllowed(true)\n                    .addToBackStack(\"cart\")\n                    .commit()\n            }\n        }\n        return super.onOptionsItemSelected(item)\n    }\n}"
  },
  {
    "path": "app/src/main/java/com/project/farmingapp/view/ecommerce/EcommerceItemFragment.kt",
    "content": "package com.project.farmingapp.view.ecommerce\n\nimport android.content.Intent\nimport android.net.Uri\nimport android.os.Bundle\nimport android.text.Html\nimport android.util.Log\nimport android.view.*\nimport androidx.fragment.app.Fragment\nimport android.widget.TextView\nimport android.widget.Toast\nimport androidx.appcompat.app.AppCompatActivity\nimport androidx.fragment.app.FragmentTransaction\nimport androidx.lifecycle.ViewModelProviders\nimport androidx.recyclerview.widget.LinearLayoutManager\nimport com.asura.library.posters.Poster\nimport com.asura.library.posters.RawVideo\nimport com.asura.library.posters.RemoteImage\nimport com.asura.library.posters.RemoteVideo\nimport com.asura.library.views.PosterSlider\nimport com.google.common.base.MoreObjects\nimport com.google.firebase.auth.FirebaseAuth\nimport com.google.firebase.database.FirebaseDatabase\nimport com.google.firebase.ktx.Firebase\nimport com.project.farmingapp.R\nimport com.project.farmingapp.adapter.AttributesNormalAdapter\nimport com.project.farmingapp.adapter.AttributesSelectionAdapter\nimport com.project.farmingapp.model.data.CartItem\nimport com.project.farmingapp.utilities.CellClickListener\nimport com.project.farmingapp.viewmodel.EcommViewModel\nimport kotlinx.android.synthetic.main.fragment_ecommerce_item.*\nimport java.text.SimpleDateFormat\nimport java.util.*\nimport kotlin.collections.ArrayList\n\n// TODO: Rename parameter arguments, choose names that match\n// the fragment initialization parameters, e.g. ARG_ITEM_NUMBER\nprivate const val ARG_PARAM1 = \"param1\"\nprivate const val ARG_PARAM2 = \"param2\"\n\n/**\n * A simple [Fragment] subclass.\n * Use the [EcommItemFragment.newInstance] factory method to\n * create an instance of this fragment.\n */\nclass EcommerceItemFragment : Fragment(), CellClickListener {\n    // TODO: Rename and change types of parameters\n    private var param1: String? = null\n    private lateinit var viewmodel: EcommViewModel\n    private var param2: String? = null\n    private var selectionAttribute = mutableMapOf<String, Any>()\n    private var currentItemId: Any?= null\n    lateinit var realtimeDatabase: FirebaseDatabase\n    lateinit var firebaseAuth: FirebaseAuth\n    val sdf = SimpleDateFormat(\"dd/M/yyyy hh:mm:ss\")\n    override fun onCreate(savedInstanceState: Bundle?) {\n        super.onCreate(savedInstanceState)\n        arguments?.let {\n            param1 = it.getString(ARG_PARAM1)\n            param2 = it.getString(ARG_PARAM2)\n        }\n        viewmodel = ViewModelProviders.of(requireActivity())\n            .get<EcommViewModel>(EcommViewModel::class.java)\n        Toast.makeText(activity!!.applicationContext, \"Something\" + tag, Toast.LENGTH_SHORT).show()\n\n        realtimeDatabase = FirebaseDatabase.getInstance()\n        firebaseAuth = FirebaseAuth.getInstance()\n\n\n\n    }\n\n    override fun onCreateView(\n        inflater: LayoutInflater, container: ViewGroup?,\n        savedInstanceState: Bundle?\n    ): View? {\n        // Inflate the layout for this fragment\n        return inflater.inflate(R.layout.fragment_ecommerce_item, container, false)\n    }\n\n    companion object {\n        /**\n         * Use this factory method to create a new instance of\n         * this fragment using the provided parameters.\n         *\n         * @param param1 Parameter 1.\n         * @param param2 Parameter 2.\n         * @return A new instance of fragment EcommItemFragment.\n         */\n        // TODO: Rename and change types and number of parameters\n        @JvmStatic\n        fun newInstance(param1: String, param2: String) =\n            EcommerceItemFragment().apply {\n                arguments = Bundle().apply {\n                    putString(ARG_PARAM1, param1)\n                    putString(ARG_PARAM2, param2)\n                }\n            }\n    }\n\n    override fun onViewCreated(view: View, savedInstanceState: Bundle?) {\n        super.onViewCreated(view, savedInstanceState)\n        setHasOptionsMenu(true)\n\n        (activity as AppCompatActivity).supportActionBar?.title = \"E-Commerce\"\n        loadingText.text = \"Loading...\"\n\n\n        val color1Params = color1.layoutParams\n        val color2Params = color2.layoutParams\n        val color3Params = color3.layoutParams\n        val color4Params = color4.layoutParams\n\n        val density = resources.displayMetrics.density\n        color1Params.width = (density * 40).toInt()\n        color1Params.height = (density * 35).toInt()\n        color1.layoutParams = color1Params\n\n        color1.setOnClickListener {\n            color1Params.width = (density * 40).toInt()\n            color1Params.height = (density * 35).toInt()\n            color1.layoutParams = color1Params\n\n            color3Params.width = (density * 30).toInt()\n            color3Params.height = (density * 25).toInt()\n            color3.layoutParams = color3Params\n\n            color4Params.width = (density * 30).toInt()\n            color4Params.height = (density * 25).toInt()\n            color4.layoutParams = color4Params\n\n            color2Params.width = (density * 30).toInt()\n            color2Params.height = (density * 25).toInt()\n            color2.layoutParams = color2Params\n        }\n\n        color2.setOnClickListener {\n            color1Params.width = (density * 30).toInt()\n            color1Params.height = (density * 25).toInt()\n            color1.layoutParams = color1Params\n\n            color3Params.width = (density * 30).toInt()\n            color3Params.height = (density * 25).toInt()\n            color3.layoutParams = color3Params\n\n            color4Params.width = (density * 30).toInt()\n            color4Params.height = (density * 25).toInt()\n            color4.layoutParams = color4Params\n\n            color2Params.width = (density * 40).toInt()\n            color2Params.height = (density * 35).toInt()\n            color2.layoutParams = color2Params\n\n        }\n\n        increaseQtyBtn.setOnClickListener {\n            quantityCountEcomm.text = (quantityCountEcomm.text.toString().toInt() + 1).toString()\n        }\n\n        decreaseQtyBtn.setOnClickListener {\n            if(quantityCountEcomm.text.toString().toInt() != 1){\n                quantityCountEcomm.text = (quantityCountEcomm.text.toString().toInt() - 1).toString()\n            }\n        }\n\n        var posters: ArrayList<Poster> = ArrayList()\n\n\n        val allData = viewmodel.ecommLiveData.value\n        val allDataLength = allData!!.size\n\n        for (a in 0 until allDataLength){\n            if(allData[a].id == this.tag){\n\n                val specificData = allData[a]\n\n                currentItemId = specificData.id!!\n\n                productTitle.text = specificData.getString(\"title\")\n                productShortDescription.text = specificData.getString(\"shortDesc\")\n                productPrice.text =  \"₹\"  + specificData.getString(\"price\")\n                productLongDesc.text = specificData.getString(\"longDesc\")\n                howToUseText.text = specificData.getString(\"howtouse\")\n                deliverycost.text = specificData.getString(\"delCharge\")\n                Rating.rating = specificData.get(\"rating\").toString().toFloat()\n                var attributes = specificData.get(\"attributes\") as Map<String, Any>\n\n\n                if(attributes.contains(\"Color\")){\n                    colorLinear.visibility = View.VISIBLE\n                    colorTitle.visibility = View.VISIBLE\n\n                } else{\n                    colorLinear.visibility = View.GONE\n                    colorTitle.visibility = View.GONE\n                }\n\n                var allSelectionAttributes = mutableListOf<MutableMap<String, Any>>()\n                var allNormalAttributes = mutableListOf<MutableMap<String, Any>>()\n                for((key, value) in attributes){\n                    var selectionMap = mutableMapOf<String, Any>()\n                    var normalMap = mutableMapOf<String, Any>()\n\n                    if(value is ArrayList<*> && key.toString()!=\"Color\"){\n                        selectionMap.put(key, value)\n                        allSelectionAttributes.add(selectionMap)\n                    }\n\n                    if(value is String){\n                        normalMap.put(key, value)\n                        allNormalAttributes.add(normalMap)\n                    }\n\n                }\n\n                val adapter = AttributesSelectionAdapter(activity!!.applicationContext, allSelectionAttributes, this)\n                recyclerSelectionAttributes.adapter = adapter\n                recyclerSelectionAttributes.layoutManager = LinearLayoutManager(activity!!.applicationContext)\n\n                val adapter2 = AttributesNormalAdapter(activity!!.applicationContext, allNormalAttributes)\n                recyclerNormalAttributes.adapter = adapter2\n                recyclerNormalAttributes.layoutManager = LinearLayoutManager(activity!!.applicationContext)\n\n                progress_ecommItem.visibility = View.GONE\n                loadingText.visibility = View.GONE\n\n\n                val allImages = specificData.get(\"imageUrl\") as List<String>\n                for (a in allImages){\n                    posters.add(RemoteImage(\"${a}\"))\n                }\n                poster_slider.setPosters(posters)\n            }\n            else{\n\n            }\n        }\n\n        addToCart.setOnClickListener {\n            addToCart.isClickable = false\n            progress_ecommItem.visibility = View.VISIBLE\n            loadingText.text = \"Adding to Cart...\"\n            loadingText.visibility = View.GONE\n            val realtimeRef = realtimeDatabase.getReference(\"${firebaseAuth.currentUser!!.uid}\").child(\"cart\").child(\"${currentItemId}\")\n\n//            selectionAttribute!!.put(\"quantity\", quantityCountEcomm.text.toString().toInt())\n//            selectionAttribute.put(\"basePrice\", productPrice.text.toString().toInt())\n//            selectionAttribute.put(\"delCharge\", deliverycost.text.toString().toInt())\n\n            val currentDateTime = sdf.format(Date())\n            realtimeRef.setValue(CartItem(quantityCountEcomm.text.toString().toInt(), currentDateTime.toString()))\n                .addOnCompleteListener {\n                    Toast.makeText(activity!!.applicationContext, \"Item Added\", Toast.LENGTH_SHORT).show()\n                    progress_ecommItem.visibility = View.GONE\n                    loadingText.visibility = View.GONE\n                    addToCart.isClickable = true\n\n                }.addOnFailureListener {\n                    Toast.makeText(activity!!.applicationContext, \"Please Try Again!\", Toast.LENGTH_SHORT).show()\n                    progress_ecommItem.visibility = View.GONE\n                    loadingText.visibility = View.GONE\n                    addToCart.isClickable = true\n                }\n\n        }\n\n        buynow.setOnClickListener {\n//            var product_id = ArrayList<String>()\n//            var item_cost=ArrayList<Int>()\n//            var item_qty=ArrayList<Int>()\n            val productPrice = productPrice.text.toString().split(\"₹\") as ArrayList<String>\n\n\n//            var totalPrice = quantityCountEcomm.text.toString().toInt()*productPrice[1].toString().toInt() + deliverycost.text.toString().toInt()\n\n//            product_id.add(currentItemId as String)\n//            item_cost.add(totalPrice)\n//            item_qty.add(quantityCountEcomm.text.toString().toInt())\n\n            Intent(activity!!.applicationContext, RazorPayActivity::class.java).also {\n                it.putExtra(\"productId\",currentItemId.toString())\n                it.putExtra(\"itemCost\",productPrice[1].toString())\n                it.putExtra(\"quantity\", quantityCountEcomm.text.toString())\n                it.putExtra(\"deliveryCost\", deliverycost.text.toString())\n                startActivity(it)\n            }\n\n        }\n    }\n\n    override fun onCellClickListener(name: String) {\n        val selectionAttributeAllData = name.split(\" \") as List<Any>\n\n        Log.d(\"EcommItem\", selectionAttributeAllData[0].toString())\n        Log.d(\"EcommItem\", selectionAttributeAllData[1].toString())\n    }\n\n    override fun onCreateOptionsMenu(menu: Menu, inflater: MenuInflater) {\n        super.onCreateOptionsMenu(menu, inflater)\n        inflater.inflate(R.menu.cart_menu, menu)\n    }\n\n    override fun onOptionsItemSelected(item: MenuItem): Boolean {\n\n        when (item.itemId){\n            R.id.cart_item -> {\n                val cartFragment = CartFragment()\n                val transaction = activity!!.supportFragmentManager\n                    .beginTransaction()\n                    .replace(R.id.frame_layout, cartFragment)\n                    .setTransition(FragmentTransaction.TRANSIT_FRAGMENT_OPEN)\n                    .setReorderingAllowed(true)\n                    .addToBackStack(\"cart\")\n                    .commit()\n            }\n        }\n        return super.onOptionsItemSelected(item)\n    }\n}"
  },
  {
    "path": "app/src/main/java/com/project/farmingapp/view/ecommerce/MyOrdersFragment.kt",
    "content": "package com.project.farmingapp.view.ecommerce\n\nimport android.content.Intent\nimport android.os.Bundle\nimport androidx.fragment.app.Fragment\nimport android.view.LayoutInflater\nimport android.view.View\nimport android.view.ViewGroup\nimport androidx.appcompat.app.AppCompatActivity\nimport androidx.fragment.app.FragmentTransaction\nimport androidx.recyclerview.widget.LinearLayoutManager\nimport com.google.firebase.auth.FirebaseAuth\nimport com.google.firebase.database.DataSnapshot\nimport com.google.firebase.database.DatabaseError\nimport com.google.firebase.database.FirebaseDatabase\nimport com.google.firebase.database.ValueEventListener\nimport com.google.firebase.firestore.FirebaseFirestore\nimport com.project.farmingapp.R\nimport com.project.farmingapp.adapter.MyOrdersAdapter\nimport com.project.farmingapp.utilities.CartItemBuy\nimport com.project.farmingapp.utilities.CellClickListener\nimport kotlinx.android.synthetic.main.fragment_my_orders.*\nimport kotlin.collections.HashMap\n\n// TODO: Rename parameter arguments, choose names that match\n// the fragment initialization parameters, e.g. ARG_ITEM_NUMBER\nprivate const val ARG_PARAM1 = \"param1\"\nprivate const val ARG_PARAM2 = \"param2\"\n\n/**\n * A simple [Fragment] subclass.\n * Use the [MyOrdersFragment.newInstance] factory method to\n * create an instance of this fragment.\n */\nclass MyOrdersFragment : Fragment(), CellClickListener, CartItemBuy {\n    // TODO: Rename and change types of parameters\n    private var param1: String? = null\n    private var param2: String? = null\n    lateinit var firebaseDatabase: FirebaseDatabase\n    lateinit var firebaseAuth: FirebaseAuth\n    lateinit var firebaseFirestore: FirebaseFirestore\n\n    var orders = HashMap<String, Object>()\n\n    override fun onCreate(savedInstanceState: Bundle?) {\n        super.onCreate(savedInstanceState)\n        arguments?.let {\n            param1 = it.getString(ARG_PARAM1)\n            param2 = it.getString(ARG_PARAM2)\n        }\n        firebaseDatabase = FirebaseDatabase.getInstance()\n        firebaseAuth = FirebaseAuth.getInstance()\n        firebaseFirestore = FirebaseFirestore.getInstance()\n\n    }\n\n    override fun onCreateView(\n        inflater: LayoutInflater, container: ViewGroup?,\n        savedInstanceState: Bundle?\n    ): View? {\n        // Inflate the layout for this fragment\n        return inflater.inflate(R.layout.fragment_my_orders, container, false)\n    }\n\n    companion object {\n        /**\n         * Use this factory method to create a new instance of\n         * this fragment using the provided parameters.\n         *\n         * @param param1 Parameter 1.\n         * @param param2 Parameter 2.\n         * @return A new instance of fragment MyOrdersFragment.\n         */\n        // TODO: Rename and change types and number of parameters\n        @JvmStatic\n        fun newInstance(param1: String, param2: String) =\n            MyOrdersFragment().apply {\n                arguments = Bundle().apply {\n                    putString(ARG_PARAM1, param1)\n                    putString(ARG_PARAM2, param2)\n                }\n            }\n    }\n\n    override fun onViewCreated(view: View, savedInstanceState: Bundle?) {\n        super.onViewCreated(view, savedInstanceState)\n\n        val orderRef = firebaseDatabase.getReference(\"${firebaseAuth.currentUser!!.uid}\").child(\"orders\")\n\n        (activity as AppCompatActivity).supportActionBar?.title = \"My Orders\"\n\n        val orderListener = object : ValueEventListener{\n            override fun onCancelled(error: DatabaseError) {\n                TODO(\"Not yet implemented\")\n            }\n\n            override fun onDataChange(snapshot: DataSnapshot) {\n                if(snapshot.exists()){\n                    orders = snapshot.value as HashMap<String, Object>\n                    var myOrdersAdapter = MyOrdersAdapter(this@MyOrdersFragment, orders, this@MyOrdersFragment, this@MyOrdersFragment)\n                    myOrderRecycler.adapter = myOrdersAdapter\n                    myOrderRecycler.layoutManager = LinearLayoutManager(activity!!.applicationContext)\n                }\n            }\n        }\n\n        orderRef.addValueEventListener(orderListener)\n\n    }\n\n    override fun onCellClickListener(name: String) {\n        val ecommerceItemFragment = EcommerceItemFragment()\n        val transaction = activity!!.supportFragmentManager\n            .beginTransaction()\n            .replace(R.id.frame_layout, ecommerceItemFragment, name)\n            .setTransition(FragmentTransaction.TRANSIT_FRAGMENT_OPEN)\n            .setReorderingAllowed(true)\n            .addToBackStack(\"ecommItem\")\n            .commit()\n    }\n\n    override fun addToOrders(productId: String, quantity: Int, itemCost: Int, deliveryCost: Int) {\n        Intent(activity!!.applicationContext, RazorPayActivity::class.java).also {\n            it.putExtra(\"productId\", productId)\n            it.putExtra(\"itemCost\", itemCost.toString())\n            it.putExtra(\"quantity\", quantity.toString())\n            it.putExtra(\"deliveryCost\", deliveryCost.toString())\n            startActivity(it)\n        }\n    }\n}"
  },
  {
    "path": "app/src/main/java/com/project/farmingapp/view/ecommerce/PaymentFragment.kt",
    "content": "package com.project.farmingapp.view.ecommerce\n\nimport android.os.Bundle\nimport androidx.fragment.app.Fragment\nimport android.view.LayoutInflater\nimport android.view.View\nimport android.view.ViewGroup\nimport com.project.farmingapp.R\n\n// TODO: Rename parameter arguments, choose names that match\n// the fragment initialization parameters, e.g. ARG_ITEM_NUMBER\nprivate const val ARG_PARAM1 = \"param1\"\nprivate const val ARG_PARAM2 = \"param2\"\n\n/**\n * A simple [Fragment] subclass.\n * Use the [EcommercePaymentFragment.newInstance] factory method to\n * create an instance of this fragment.\n */\nclass PaymentFragment : Fragment() {\n    // TODO: Rename and change types of parameters\n    private var param1: String? = null\n    private var param2: String? = null\n\n    override fun onCreate(savedInstanceState: Bundle?) {\n        super.onCreate(savedInstanceState)\n        arguments?.let {\n            param1 = it.getString(ARG_PARAM1)\n            param2 = it.getString(ARG_PARAM2)\n        }\n    }\n\n    override fun onCreateView(\n        inflater: LayoutInflater, container: ViewGroup?,\n        savedInstanceState: Bundle?\n    ): View? {\n        // Inflate the layout for this fragment\n        return inflater.inflate(R.layout.fragment_payment, container, false)\n    }\n\n    companion object {\n        /**\n         * Use this factory method to create a new instance of\n         * this fragment using the provided parameters.\n         *\n         * @param param1 Parameter 1.\n         * @param param2 Parameter 2.\n         * @return A new instance of fragment EcommercePaymentFragment.\n         */\n        // TODO: Rename and change types and number of parameters\n        @JvmStatic\n        fun newInstance(param1: String, param2: String) =\n            PaymentFragment().apply {\n                arguments = Bundle().apply {\n                    putString(ARG_PARAM1, param1)\n                    putString(ARG_PARAM2, param2)\n                }\n            }\n    }\n}"
  },
  {
    "path": "app/src/main/java/com/project/farmingapp/view/ecommerce/RazorPayActivity.kt",
    "content": "package com.project.farmingapp.view.ecommerce\n\nimport android.app.Activity\nimport androidx.appcompat.app.AppCompatActivity\nimport android.os.Bundle\nimport android.util.Log\nimport android.widget.Toast\nimport androidx.fragment.app.FragmentTransaction\nimport com.google.firebase.auth.FirebaseAuth\nimport com.google.firebase.database.FirebaseDatabase\nimport com.project.farmingapp.R\nimport com.project.farmingapp.model.data.orders\nimport com.razorpay.Checkout\nimport com.razorpay.PaymentResultListener\nimport kotlinx.android.synthetic.main.activity_razor_pay.*\nimport kotlinx.android.synthetic.main.fragment_ecommerce_item.*\nimport org.json.JSONObject\nimport java.text.SimpleDateFormat\nimport java.util.*\nimport kotlin.collections.ArrayList\n\nclass RazorPayActivity : AppCompatActivity(), PaymentResultListener {\n    lateinit var firebaseAuth: FirebaseAuth\n    val sdf = SimpleDateFormat(\"dd/M/yyyy hh:mm:ss\")\n\n    var postId: UUID? = null\n    var name: String = \"\"\n    var locality: String = \"\"\n    var city: String = \"\"\n    var state: String = \"\"\n    var pincode: String = \"\"\n    var mobile: String = \"\"\n    var currentDate = sdf.format(Date())\n    lateinit var realtimeDatabase: FirebaseDatabase\n    var productId: String? = null\n    var totalPrice = 0\n    var itemCost: Int? = null\n    var quantity: Int? = null\n    var deliveryCost: Int? = null\n\n    override fun onCreate(savedInstanceState: Bundle?) {\n        super.onCreate(savedInstanceState)\n        setContentView(R.layout.activity_razor_pay)\n        postId = UUID.randomUUID()\n\n        //val totalCost=intent.getStringExtra(\"tp\")\n        firebaseAuth = FirebaseAuth.getInstance()\n        productId = intent.getStringExtra(\"productId\")\n        itemCost = intent.getStringExtra(\"itemCost\")!!.toString().toInt()\n        quantity = intent.getStringExtra(\"quantity\")!!.toString().toInt()\n        deliveryCost = intent.getStringExtra(\"deliveryCost\")!!.toString().toInt()\n        Log.d(\"tp\", productId.toString())\n        Log.d(\"tp\", itemCost.toString())\n        Log.d(\"tp\", quantity.toString())\n        Log.d(\"tp\", deliveryCost.toString())\n        // Toast.makeText(this,abc,Toast.LENGTH_LONG).show()\n//Log.d(\"tp\",abc.toString())\n        orderNowBtn.setOnClickListener {\n            name = fullNamePrePay.text.toString()\n            locality = localityPrePay.text.toString()\n            city = cityPrePay.text.toString()\n            state = statePrePay.text.toString()\n            pincode = pincodePrePay.text.toString()\n            mobile = mobileNumberPrePay.text.toString()\n            if (name.isNullOrEmpty() ||\n                locality.isNullOrEmpty() ||\n                city.isNullOrEmpty() ||\n                state.isNullOrEmpty() ||\n                pincode.isNullOrEmpty() ||\n                mobile.isNullOrEmpty()\n            ) {\n                Toast.makeText(this, \"Please Add all Fields\", Toast.LENGTH_LONG).show()\n            }\n\n            //add inputfield validation\n\n            else {\n                //add inputfield validation\n                Toast.makeText(this, \"Done\", Toast.LENGTH_LONG).show()\n                startPayment()\n            }\n        }\n\n        netValue.text =\n            \"Net Value: ₹ \" + (itemCost.toString().toInt() * quantity!! + deliveryCost!!).toString()\n    }\n\n    private fun startPayment() {\n/*\n* You need to pass current activity in order to let Razorpay create CheckoutActivity\n* */\n        val activity: Activity = this\n        val co = Checkout()\n\n        try {\n            val options = JSONObject()\n            options.put(\"name\", \"FarmingApp\")\n            options.put(\"description\", \"Demoing Charges\")\n\n            //You can omit the image option to fetch the image from dashboard\n            options.put(\"image\", \"https://s3.amazonaws.com/rzp-mobile/images/rzp.png\")\n            options.put(\"currency\", \"INR\")\n\n            totalPrice = itemCost!! * quantity!! + deliveryCost!!\n            options.put(\"amount\", \"${totalPrice!! * 100}\")\n\n            val prefill = JSONObject()\n\n            prefill.put(\"email\", \"${firebaseAuth.currentUser!!.email}\")\n            prefill.put(\"contact\", \"${mobile}\")\n\n            options.put(\"prefill\", prefill)\n            co.open(activity, options)\n        } catch (e: Exception) {\n            Toast.makeText(activity, \"Error in payment: \" + e.message, Toast.LENGTH_LONG).show()\n            e.printStackTrace()\n        }\n    }\n\n    override fun onPaymentError(p0: Int, p1: String?) {\n        try {\n            Toast.makeText(this, \"Payment Failed\", Toast.LENGTH_LONG).show()\n        } catch (e: Exception) {\n            Log.e(\"failed\", \"Exception in onPaymentSuccess\", e)\n        }\n    }\n\n    override fun onPaymentSuccess(p0: String?) {\n        try {\n            firebaseAuth = FirebaseAuth.getInstance()\n            realtimeDatabase = FirebaseDatabase.getInstance()\n\n            var orderRef =\n                realtimeDatabase.getReference(\"${firebaseAuth.currentUser!!.uid}\").child(\"orders\")\n                    .child(\"${postId}\")\n            val currDate = System.currentTimeMillis()\n\n            var date1 = Date()\n            val calendar = Calendar.getInstance()\n            calendar.time = date1\n\n            var randomDay = (0..12).shuffled().take(1) as List<Int>\n            val sdf = SimpleDateFormat(\"dd/MM/yyyy\")\n\n            calendar.add(Calendar.DATE, randomDay[0])\n            date1 = calendar.time\n\n//            calendar.timeInMillis\n//            Toast.makeText(this, randomDay[0].toString(), Toast.LENGTH_LONG).show()\n//            Toast.makeText(this, calendar.timeInMillis.toString(), Toast.LENGTH_LONG).show()\n\n            orderRef.setValue(\n                orders(\n                    name!!,\n                    locality!!,\n                    city!!,\n                    state!!,\n                    pincode!!,\n                    mobile!!,\n                    currentDate,\n                    productId!!,\n                    itemCost!!,\n                    quantity!!,\n                    deliveryCost!!,\n                    \"Arriving By: \" + sdf.format(date1).toString()\n                )\n            ).addOnCompleteListener {\n                Toast.makeText(this, \"Payment Successful\", Toast.LENGTH_LONG).show()\n                finish()\n            }.addOnFailureListener {\n                Toast.makeText(this, \"Payment Failed\", Toast.LENGTH_LONG).show()\n                Toast.makeText(this, \"Please Try Again\", Toast.LENGTH_LONG).show()\n                finish()\n            }\n        } catch (e: Exception) {\n            Log.e(\"success\", \"Exception in onPaymentSuccess\", e)\n        }\n    }\n\n\n}"
  },
  {
    "path": "app/src/main/java/com/project/farmingapp/view/introscreen/IntroActivity.kt",
    "content": "package com.project.farmingapp.view.introscreen\n\nimport android.content.Context\nimport android.content.Intent\nimport android.content.SharedPreferences\nimport androidx.appcompat.app.AppCompatActivity\nimport android.os.Bundle\nimport android.preference.PreferenceManager\nimport android.util.Log\nimport android.view.ViewGroup\nimport android.widget.ImageView\nimport android.widget.LinearLayout\nimport android.widget.Toast\nimport androidx.core.content.ContextCompat\nimport androidx.core.view.get\nimport androidx.viewpager2.widget.ViewPager2\nimport com.project.farmingapp.R\nimport com.project.farmingapp.adapter.IntroAdapter\nimport com.project.farmingapp.model.data.IntroData\nimport com.project.farmingapp.view.auth.LoginActivity\nimport kotlinx.android.synthetic.main.activity_intro.*\n\nclass IntroActivity : AppCompatActivity() {\n\n    private val introSliderAdapter = IntroAdapter(\n        listOf(\n            IntroData(\n                \"Welcome to the\\n\\bFarming App\\b\",\n                \"Best Guide and Helper for any Farmer. Provides various features at one place!\",\n                R.drawable.intro_first\n            ),\n            IntroData(\n                \"Read Articles\",\n                \"Read Online articles related to Farming Concepts, Technologies and other useful knowledge.\",\n                R.drawable.intro_read\n            ),\n            IntroData(\n                \"Share Knowledge\",\n                \"Social Media let's you share knowledge with other farmers!\\nCreate your own posts using Image/Video/Texts.\",\n                R.drawable.intro_share\n            ),\n            IntroData(\n                \"E-Commerce\",\n                \"Buy / Sell Agriculture related products & Manage your Cart Online\",\n                R.drawable.intro_ecomm\n            ),\n            IntroData(\n                \"Weather Forecast\",\n                \"Get Notified for Daily Weather Conditions. 24x7 Data\",\n                R.drawable.intro_weather\n            ),\n            IntroData(\n                \"APMC Statistics\",\n                \"Get updates APMC Pricing and Commidity details everyday.\",\n                R.drawable.intro_statistics\n            ),\n            IntroData(\n                \"Let's Grow Together\",\n                \"- Farming App\",\n                R.drawable.intro_help\n            )\n\n        )\n    )\n\n    override fun onCreate(savedInstanceState: Bundle?) {\n        super.onCreate(savedInstanceState)\n        setContentView(R.layout.activity_intro)\n\n        sliderViewPager.adapter = introSliderAdapter\n        setupIndicators()\n        setCurrentIndicator(0)\n        sliderViewPager.registerOnPageChangeCallback(object :\n            ViewPager2.OnPageChangeCallback() {\n            override fun onPageSelected(position: Int) {\n                super.onPageSelected(position)\n                setCurrentIndicator(position)\n            }\n        })\n\n        if(sliderViewPager.currentItem + 1 == introSliderAdapter.itemCount){\n            Log.d(\"IntroActivity\", sliderViewPager.currentItem.toString())\n            Log.d(\"IntroActivity\", introSliderAdapter.itemCount.toString())\n            nextBtn.text = \"Get Started\"\n        } else{\n            nextBtn.text = \"Next\"\n        }\n\n        nextBtn.setOnClickListener {\n            if (sliderViewPager.currentItem + 1 < introSliderAdapter.itemCount) {\n                sliderViewPager.currentItem += 1\n//                Toast.makeText(this, \"Current: ${sliderViewPager.currentItem}\", Toast.LENGTH_SHORT).show()\n                nextBtn.text = \"Next\"\n                if(sliderViewPager.currentItem + 1 == introSliderAdapter.itemCount){\n                    Log.d(\"IntroActivity\", sliderViewPager.currentItem.toString())\n                    Log.d(\"IntroActivity\", introSliderAdapter.itemCount.toString())\n                    nextBtn.text = \"Get Started\"\n                }\n            } else {\n\n                Intent(this, LoginActivity::class.java).also {\n                    startActivity(it)\n                }\n                val sharedPreferences = getSharedPreferences(\"MyPrefs\", Context.MODE_PRIVATE)\n                val editor = sharedPreferences.edit()\n                editor.putBoolean(\"firstTime\", false)\n                editor.apply()\n                finish()\n            }\n        }\n        skipIntro.setOnClickListener {\n            Intent(this, LoginActivity::class.java).also {\n                startActivity(it)\n            }\n            val sharedPreferences = getSharedPreferences(\"MyPrefs\", Context.MODE_PRIVATE)\n            val editor = sharedPreferences.edit()\n            editor.putBoolean(\"firstTime\", false)\n            editor.apply()\n            finish()\n        }\n    }\n\n    private fun setupIndicators() {\n        val indicators = arrayOfNulls<ImageView>(introSliderAdapter.itemCount)\n        val layoutParams: LinearLayout.LayoutParams =\n            LinearLayout.LayoutParams(\n                ViewGroup.LayoutParams.WRAP_CONTENT,\n                ViewGroup.LayoutParams.WRAP_CONTENT\n            )\n        layoutParams.setMargins(8, 0, 8, 0)\n\n        for (i in indicators.indices) {\n            indicators[i] = ImageView(applicationContext)\n            indicators[i].apply {\n                this?.setImageDrawable(\n                    ContextCompat.getDrawable(\n                        applicationContext,\n                        R.drawable.indicator_inactive\n                    )\n                )\n                this?.layoutParams = layoutParams\n            }\n\n            sliderballs_container.addView(indicators[i])\n\n\n        }\n\n    }\n\n    private fun setCurrentIndicator(index: Int) {\n        val childCount = sliderballs_container.childCount\n        for (i in 0 until childCount) {\n            val imageView = sliderballs_container.get(i) as ImageView\n            if (i == index) {\n                imageView.setImageDrawable(\n                    ContextCompat.getDrawable(\n                        applicationContext,\n                        R.drawable.indicator_active\n                    )\n                )\n            } else {\n                imageView.setImageDrawable(\n                    ContextCompat.getDrawable(\n                        applicationContext,\n                        R.drawable.indicator_inactive\n                    )\n                )\n            }\n        }\n\n        if(index == introSliderAdapter.itemCount - 1){\n            nextBtn.text = \"Get Started\"\n        } else{\n            nextBtn.text = \"Next\"\n\n        }\n    }\n}"
  },
  {
    "path": "app/src/main/java/com/project/farmingapp/view/socialmedia/SMCreatePostFragment.kt",
    "content": "package com.project.farmingapp.view.socialmedia\n\nimport android.app.Activity\nimport android.content.Intent\nimport android.graphics.Bitmap\nimport android.net.Uri\nimport android.os.Bundle\nimport android.provider.MediaStore\nimport android.util.Log\nimport androidx.fragment.app.Fragment\nimport android.view.LayoutInflater\nimport android.view.View\nimport android.view.ViewGroup\nimport android.widget.Toast\nimport androidx.appcompat.app.AppCompatActivity\nimport androidx.fragment.app.FragmentTransaction\nimport androidx.lifecycle.ViewModelProviders\nimport com.google.android.gms.tasks.Continuation\nimport com.google.android.gms.tasks.Task\nimport com.google.firebase.auth.FirebaseAuth\nimport com.google.firebase.firestore.FieldValue\nimport com.google.firebase.firestore.FirebaseFirestore\nimport com.google.firebase.storage.FirebaseStorage\nimport com.google.firebase.storage.StorageReference\nimport com.google.firebase.storage.UploadTask\nimport com.project.farmingapp.R\nimport com.project.farmingapp.viewmodel.UserDataViewModel\nimport com.project.farmingapp.viewmodel.UserProfilePostsViewModel\nimport kotlinx.android.synthetic.main.fragment_s_m_create_post.*\nimport kotlinx.android.synthetic.main.nav_header.view.*\nimport java.io.IOException\nimport java.util.*\n\n// TODO: Rename parameter arguments, choose names that match\n// the fragment initialization parameters, e.g. ARG_ITEM_NUMBER\nprivate const val ARG_PARAM1 = \"param1\"\nprivate const val ARG_PARAM2 = \"param2\"\n\n/**\n * A simple [Fragment] subclass.\n * Use the [SMCreatePostFragment.newInstance] factory method to\n * create an instance of this fragment.\n */\nclass SMCreatePostFragment : Fragment() {\n    // TODO: Rename and change types of parameters\n    private var param1: String? = null\n    private var param2: String? = null\n    private val PICK_IMAGE_REQUEST = 71\n    private var filePath: Uri? = null\n    private var firebaseStore: FirebaseStorage? = null\n    private var storageReference: StorageReference? = null\n    private var authUser: FirebaseAuth? = null\n    private var postID: UUID? = null\n    private var bitmap: Bitmap? = null\n    lateinit var socialMediaPostsFragment: SocialMediaPostsFragment\n    lateinit var userDataViewModel : UserDataViewModel\n    val db = FirebaseFirestore.getInstance()\n    val data2 = HashMap<String, Any>()\n\n    override fun onCreate(savedInstanceState: Bundle?) {\n        super.onCreate(savedInstanceState)\n        arguments?.let {\n            param1 = it.getString(ARG_PARAM1)\n            param2 = it.getString(ARG_PARAM2)\n        }\n        storageReference = FirebaseStorage.getInstance().reference\n        authUser = FirebaseAuth.getInstance()\n        firebaseStore = FirebaseStorage.getInstance()\n\n        userDataViewModel = ViewModelProviders.of(requireActivity())\n            .get<UserDataViewModel>(UserDataViewModel::class.java)\n    }\n\n    override fun onCreateView(\n        inflater: LayoutInflater, container: ViewGroup?,\n        savedInstanceState: Bundle?\n    ): View? {\n        // Inflate the layout for this fragment\n        return inflater.inflate(R.layout.fragment_s_m_create_post, container, false)\n    }\n\n    companion object {\n        /**\n         * Use this factory method to create a new instance of\n         * this fragment using the provided parameters.\n         *\n         * @param param1 Parameter 1.\n         * @param param2 Parameter 2.\n         * @return A new instance of fragment SMCreatePostFragment.\n         */\n        // TODO: Rename and change types and number of parameters\n        @JvmStatic\n        fun newInstance(param1: String, param2: String) =\n            SMCreatePostFragment().apply {\n                arguments = Bundle().apply {\n                    putString(ARG_PARAM1, param1)\n                    putString(ARG_PARAM2, param2)\n                }\n            }\n    }\n\n    override fun onViewCreated(view: View, savedInstanceState: Bundle?) {\n        super.onViewCreated(view, savedInstanceState)\n\n        setHasOptionsMenu(true)\n        (activity as AppCompatActivity).supportActionBar?.title = \"Social Media\"\n\n        progress_create_post.visibility = View.GONE\n        progressTitle.visibility = View.GONE\n\n        data2[\"uploadType\"] = \"\"\n        uploadImagePreview.setOnClickListener {\n            val intent = Intent()\n            intent.type = \"image/* video/*\"\n            intent.action = Intent.ACTION_PICK\n            startActivityForResult(\n                Intent.createChooser(intent, \"Select Picture\"),\n                PICK_IMAGE_REQUEST\n            )\n        }\n\n        val googleLoggedUser = authUser!!.currentUser!!.displayName\n        if (googleLoggedUser.isNullOrEmpty()) {\n            db.collection(\"users\").document(authUser!!.currentUser!!.email!!)\n                .get()\n                .addOnCompleteListener {\n                    val data = it.result\n                    data2[\"name\"] = data!!.getString(\"name\").toString()\n                    Log.d(\"Google User\", data!!.getString(\"name\"))\n                }\n        } else {\n            data2[\"name\"] = googleLoggedUser.toString()\n            Log.d(\"Normal User\", googleLoggedUser)\n        }\n\n        createPostBtnSM.setOnClickListener {\n\n            if (postTitleSM.text.toString().isNullOrEmpty()) {\n                Toast.makeText(\n                    activity!!.applicationContext,\n                    \"Please enter title\",\n                    Toast.LENGTH_SHORT\n                ).show()\n            } else {\n                uploadImage().setImageBitmap(bitmap)\n            }\n        }\n    }\n\n    override fun onActivityResult(requestCode: Int, resultCode: Int, data: Intent?) {\n        super.onActivityResult(requestCode, resultCode, data)\n\n        if (requestCode == PICK_IMAGE_REQUEST && resultCode == Activity.RESULT_OK) {\n            if (data == null || data.data == null) {\n                return\n            }\n\n            filePath = data.data\n            uploadImagePreview.setImageURI(filePath)\n            try {\n                val lastIndex = filePath.toString().length - 1\n                val type =\n                    filePath.toString().slice((filePath.toString().lastIndexOf(\".\") + 1)..lastIndex)\n\n                Log.d(\"File Type\", filePath.toString())\n\n                if (filePath.toString().contains(\"png\") || filePath.toString().contains(\"jpg\") || filePath.toString().contains(\"jpeg\") || filePath.toString().contains(\"image\") || filePath.toString().contains(\"images\")){\n                    data2[\"uploadType\"] = \"image\"\n                } else if(filePath.toString().contains(\"videos\") || filePath.toString().contains(\"video\") || filePath.toString().contains(\"mp4\")){\n                    data2[\"uploadType\"] = \"video\"\n                }\n\n                Log.d(\"File Type 3\", data2[\"uploadType\"].toString())\n                bitmap = MediaStore.Images.Media.getBitmap(activity!!.contentResolver, filePath)\n\n//                uploadImage().setImageBitmap(bitmap)\n            } catch (e: IOException) {\n                e.printStackTrace()\n            }\n        }\n    }\n\n    private fun uploadImage() {\n        progress_create_post.visibility = View.VISIBLE\n        progressTitle.visibility = View.VISIBLE\n        if (filePath != null) {\n            postID = UUID.randomUUID()\n            val ref = storageReference?.child(\"posts/\" + postID.toString())\n            val uploadTask = ref?.putFile(filePath!!)\n\n            val urlTask =\n                uploadTask?.continueWithTask(Continuation<UploadTask.TaskSnapshot, Task<Uri>> { task ->\n                    if (!task.isSuccessful) {\n                        task.exception?.let {\n                            throw it\n                            progress_create_post.visibility = View.GONE\n                            progressTitle.visibility = View.GONE\n                        }\n                    }\n                    return@Continuation ref.downloadUrl\n                })?.addOnCompleteListener { task ->\n                    if (task.isSuccessful) {\n                        val downloadUri = task.result\n                        addUploadRecordWithImageToDb(downloadUri.toString(), postID!!)\n//                        progress_create_post.visibility = View.GONE\n//                        progressTitle.visibility = View.GONE\n                    } else {\n                        // Handle failures\n                        progress_create_post.visibility = View.GONE\n                        progressTitle.visibility = View.GONE\n                    }\n                }?.addOnFailureListener {\n                    progress_create_post.visibility = View.GONE\n                    progressTitle.visibility = View.GONE\n                    Toast.makeText(activity!!.applicationContext, it.message, Toast.LENGTH_LONG).show()\n                }\n        } else {\n            data2[\"uploadType\"] = \"\"\n            addUploadRecordWithImageToDb(null, null)\n            Log.d(\"File Type 2\", \"Null\")\n        }\n    }\n\n    private fun addUploadRecordWithTextToDb() {\n        addUploadRecordWithImageToDb(null, null)\n    }\n\n    private fun addUploadRecordWithImageToDb(uri: String?, postID: UUID?) {\n\n        if (!uri.isNullOrEmpty()) {\n            data2[\"imageUrl\"] = uri.toString()\n            data2[\"imageID\"] = postID.toString()\n\n        }\n\n        val data3 = HashMap<String, Any>()\n        val postTimeStamp = System.currentTimeMillis()\n\n        data2[\"userID\"] = authUser!!.currentUser?.email.toString()\n        data2[\"timeStamp\"] = postTimeStamp\n        data2[\"title\"] = postTitleSM.text.toString()\n        data2[\"description\"] = descPostSM.text.toString()\n\n\n        db.collection(\"posts\")\n            .add(data2)\n            .addOnSuccessListener { documentReference ->\n\n                val data = HashMap<String, Any>()\n                val posts = arrayListOf<String>()\n                val postRecordID = documentReference.id.toString()\n\n                posts.add(postRecordID)\n                data[\"posts\"] = posts\n\n                db.collection(\"users\")\n                    .document(\"${authUser!!.currentUser?.email.toString()}\")\n                    .update(\"posts\", FieldValue.arrayUnion(postRecordID))\n                    .addOnSuccessListener { documentReference ->\n                        Toast.makeText(\n                            activity!!.applicationContext,\n                            \"Post Created\",\n                            Toast.LENGTH_LONG\n                        ).show()\n\n                        progress_create_post.visibility = View.GONE\n                        progressTitle.visibility = View.GONE\n                        userDataViewModel.getUserData(authUser!!.currentUser?.email.toString())\n                        socialMediaPostsFragment = SocialMediaPostsFragment()\n                        val transaction = activity!!.supportFragmentManager\n                            .beginTransaction()\n                            .replace(R.id.frame_layout, socialMediaPostsFragment, \"smPostList\")\n                            .setTransition(FragmentTransaction.TRANSIT_FRAGMENT_OPEN)\n                            .setReorderingAllowed(true)\n                            .addToBackStack(\"smPostList\")\n                            .commit()\n                    }\n                    .addOnFailureListener { e ->\n                        Toast.makeText(\n                            activity!!.applicationContext,\n                            \"Error saving to DB\",\n                            Toast.LENGTH_LONG\n                        ).show()\n                        progress_create_post.visibility = View.GONE\n                        progressTitle.visibility = View.GONE\n                    }\n            }\n            .addOnFailureListener { e ->\n                Toast.makeText(\n                    activity!!.applicationContext,\n                    \"Error saving to DB\",\n                    Toast.LENGTH_LONG\n                ).show()\n                progress_create_post.visibility = View.GONE\n                progressTitle.visibility = View.GONE\n            }\n    }\n}\n\nprivate fun Any.setImageBitmap(bitmap: Bitmap?) {\n\n}"
  },
  {
    "path": "app/src/main/java/com/project/farmingapp/view/socialmedia/SocialMediaPostsFragment.kt",
    "content": "package com.project.farmingapp.view.socialmedia\n\nimport android.os.Bundle\nimport android.util.Log\nimport androidx.fragment.app.Fragment\nimport android.view.LayoutInflater\nimport android.view.View\nimport android.view.ViewGroup\nimport androidx.appcompat.app.AppCompatActivity\nimport androidx.fragment.app.FragmentTransaction\nimport androidx.lifecycle.ViewModelProviders\nimport androidx.recyclerview.widget.LinearLayoutManager\nimport androidx.swiperefreshlayout.widget.SwipeRefreshLayout\nimport com.google.android.material.behavior.SwipeDismissBehavior\nimport com.google.firebase.firestore.FirebaseFirestore\nimport com.google.firebase.firestore.Query\nimport com.project.farmingapp.R\nimport com.project.farmingapp.adapter.CurrentWeatherAdapter\nimport com.project.farmingapp.adapter.SMPostListAdapter\nimport com.project.farmingapp.viewmodel.ArticleViewModel\nimport com.project.farmingapp.viewmodel.SocialMediaViewModel\nimport kotlinx.android.synthetic.main.fragment_social_media_posts.*\nimport kotlinx.android.synthetic.main.fragment_weather.*\n\nimport com.project.farmingapp.adapter.PaginationListener.Companion.PAGE_START\nimport kotlin.coroutines.EmptyCoroutineContext\n\n// TODO: Rename parameter arguments, choose names that match\n// the fragment initialization parameters, e.g. ARG_ITEM_NUMBER\nprivate const val ARG_PARAM1 = \"param1\"\nprivate const val ARG_PARAM2 = \"param2\"\nprivate lateinit var viewModel: SocialMediaViewModel\n\n/**\n * A simple [Fragment] subclass.\n * Use the [SocialMediaPostsFragment.newInstance] factory method to\n * create an instance of this fragment.\n */\nclass SocialMediaPostsFragment : Fragment() {\n    // TODO: Rename and change types of parameters\n    private var param1: String? = null\n    private var param2: String? = null\n\n    lateinit var smCreatePostFragment: SMCreatePostFragment\n    private var adapter : SMPostListAdapter? = null\n\n    override fun onCreate(savedInstanceState: Bundle?) {\n        super.onCreate(savedInstanceState)\n        arguments?.let {\n            param1 = it.getString(ARG_PARAM1)\n            param2 = it.getString(ARG_PARAM2)\n        }\n        viewModel = ViewModelProviders.of(requireActivity())\n            .get<SocialMediaViewModel>(SocialMediaViewModel::class.java)\n\n//        viewModel.loadPosts()\n    }\n\n    override fun onCreateView(\n        inflater: LayoutInflater, container: ViewGroup?,\n        savedInstanceState: Bundle?\n    ): View? {\n        // Inflate the layout for this fragment\n        return inflater.inflate(R.layout.fragment_social_media_posts, container, false)\n    }\n\n    companion object {\n        /**\n         * Use this factory method to create a new instance of\n         * this fragment using the provided parameters.\n         *\n         * @param param1 Parameter 1.\n         * @param param2 Parameter 2.\n         * @return A new instance of fragment SocialMediaPostsFragment.\n         */\n        // TODO: Rename and change types and number of parameters\n        @JvmStatic\n        fun newInstance(param1: String, param2: String) =\n            SocialMediaPostsFragment().apply {\n                arguments = Bundle().apply {\n                    putString(ARG_PARAM1, param1)\n                    putString(ARG_PARAM2, param2)\n                }\n            }\n    }\n\n    fun getData() {\n        val firebaseFirestore: FirebaseFirestore = FirebaseFirestore.getInstance()\n\n\n        firebaseFirestore.collection(\"posts\").orderBy(\"timeStamp\", Query.Direction.DESCENDING).get()\n            .addOnSuccessListener {\n                Log.d(\"Posts data\", it.documents.toString())\n                adapter = SMPostListAdapter(activity!!.applicationContext, it.documents)\n                postsRecycler.adapter = adapter\n                postsRecycler.layoutManager = LinearLayoutManager(activity!!.applicationContext)\n            }\n            .addOnFailureListener {\n\n            }\n    }\n\n    override fun onViewCreated(view: View, savedInstanceState: Bundle?) {\n        super.onViewCreated(view, savedInstanceState)\n\n        setHasOptionsMenu(true)\n        (activity as AppCompatActivity).supportActionBar?.title = \"Social Media\"\n\n        getData()\n        smCreatePostFragment = SMCreatePostFragment()\n        createPostFloating.setOnClickListener {\n            val transaction = activity!!.supportFragmentManager\n                .beginTransaction()\n                .replace(R.id.frame_layout, smCreatePostFragment, \"smCreate\")\n                .setTransition(FragmentTransaction.TRANSIT_FRAGMENT_OPEN)\n                .setReorderingAllowed(true)\n                .addToBackStack(\"smCreate\")\n                .commit()\n        }\n    }\n\n\n}"
  },
  {
    "path": "app/src/main/java/com/project/farmingapp/view/user/UserFragment.kt",
    "content": "package com.project.farmingapp.view.user\n\nimport android.app.Activity\nimport android.app.AlertDialog\nimport android.content.Intent\nimport android.graphics.Bitmap\nimport android.graphics.Color\nimport android.graphics.Paint\nimport android.net.Uri\nimport android.os.Bundle\nimport android.provider.MediaStore\nimport android.service.autofill.UserData\nimport android.util.Log\nimport androidx.fragment.app.Fragment\nimport android.view.LayoutInflater\nimport android.view.View\nimport android.view.ViewGroup\nimport androidx.appcompat.app.AppCompatActivity\nimport android.widget.Toast\nimport androidx.core.graphics.toColorInt\nimport androidx.lifecycle.Observer\nimport androidx.lifecycle.ViewModelProviders\nimport androidx.recyclerview.widget.LinearLayoutManager\nimport com.bumptech.glide.Glide\nimport com.google.android.gms.tasks.Continuation\nimport com.google.android.gms.tasks.Task\nimport com.google.firebase.auth.FirebaseAuth\nimport com.google.firebase.firestore.DocumentSnapshot\nimport com.google.firebase.firestore.FirebaseFirestore\nimport com.google.firebase.storage.FirebaseStorage\nimport com.google.firebase.storage.StorageReference\nimport com.google.firebase.storage.UploadTask\nimport com.project.farmingapp.R\nimport com.project.farmingapp.adapter.PostListUserProfileAdapter\nimport com.project.farmingapp.utilities.CellClickListener\nimport com.project.farmingapp.view.user.setImageBitmap\nimport com.project.farmingapp.viewmodel.ArticleViewModel\nimport com.project.farmingapp.viewmodel.UserDataViewModel\nimport com.project.farmingapp.viewmodel.UserProfilePostsViewModel\nimport kotlinx.android.synthetic.main.fragment_user.*\nimport java.io.IOException\nimport java.util.*\nimport kotlin.collections.ArrayList\n\n// TODO: Rename parameter arguments, choose names that match\n// the fragment initialization parameters, e.g. ARG_ITEM_NUMBER\nprivate const val ARG_PARAM1 = \"param1\"\nprivate const val ARG_PARAM2 = \"param2\"\nprivate lateinit var viewModel: UserProfilePostsViewModel\nprivate lateinit var userDataViewModel: UserDataViewModel\n\n/**\n * A simple [Fragment] subclass.\n * Use the [UserFragment.newInstance] factory method to\n * create an instance of this fragment.\n */\nclass UserFragment : Fragment(), CellClickListener {\n    // TODO: Rename and change types of parameters\n    private var param1: String? = null\n    private var param2: String? = null  \n    private val PICK_IMAGE_REQUEST = 71\n    private var filePath: Uri? = null\n    private var postID: UUID? = null\n    private var storageReference: StorageReference? = null\n    private var bitmap: Bitmap? = null\n    private var uploadProfOrBack: Int? = null\n\n    val firebaseFirestore = FirebaseFirestore.getInstance()\n    val firebaseAuth = FirebaseAuth.getInstance()\n  \n    override fun onCreate(savedInstanceState: Bundle?) {\n        super.onCreate(savedInstanceState)\n        arguments?.let {\n            param1 = it.getString(ARG_PARAM1)\n            param2 = it.getString(ARG_PARAM2)\n        }\n\n\n        viewModel = ViewModelProviders.of(requireActivity())\n            .get<UserProfilePostsViewModel>(UserProfilePostsViewModel::class.java)\n\n        userDataViewModel = ViewModelProviders.of(requireActivity())\n            .get<UserDataViewModel>(UserDataViewModel::class.java)\n      \n        storageReference = FirebaseStorage.getInstance().reference\n        viewModel.getAllPosts(firebaseAuth.currentUser!!.email)\n    }\n\n\n    override fun onCreateView(\n        inflater: LayoutInflater, container: ViewGroup?,\n        savedInstanceState: Bundle?\n    ): View? {\n        // Inflate the layout for this fragment\n\n        viewModel.liveData1.observe(viewLifecycleOwner, Observer {\n            if (it != null) {\n                viewModel.getAllPostsOfUser(it)\n            }\n        })\n\n\n        viewModel.liveData2.observe(viewLifecycleOwner, Observer {\n            if (it != null) {\n                Log.d(\"Live Data In Frag\", it.toString())\n            }\n        })\n\n        viewModel.userProfilePostsLiveData2.observe(viewLifecycleOwner, Observer {\n            Log.d(\"Some Part 2\", it.toString())\n        })\n\n        return inflater.inflate(R.layout.fragment_user, container, false)\n    }\n\n    companion object {\n        /**\n         * Use this factory method to create a new instance of\n         * this fragment using the provided parameters.\n         *\n         * @param param1 Parameter 1.\n         * @param param2 Parameter 2.\n         * @return A new instance of fragment UserFragment.\n         */\n        // TODO: Rename and change types and number of parameters\n        @JvmStatic\n        fun newInstance(param1: String, param2: String) =\n            UserFragment().apply {\n                arguments = Bundle().apply {\n                    putString(ARG_PARAM1, param1)\n                    putString(ARG_PARAM2, param2)\n                }\n            }\n    }\n\n    override fun onViewCreated(view: View, savedInstanceState: Bundle?) {\n        super.onViewCreated(view, savedInstanceState)\n\n        setHasOptionsMenu(true)\n        (activity as AppCompatActivity).supportActionBar?.title = \"Profile\"\n\n//        addAboutTextUserFrag.paintFlags = Paint.UNDERLINE_TEXT_FLAG\n        cityEditUserProfile.visibility = View.GONE\n\n        viewModel.userProfilePostsLiveData.observe(viewLifecycleOwner, Observer {\n\n            Log.d(\"Some Part\", it.toString())\n        })\n\n        userDataViewModel.userliveData.observe(viewLifecycleOwner, Observer {\n            Log.d(\"User Fragment\", it.data.toString())\n        })\n\n//        aboutValueUserProfileFrag.setOnClickListener {\n//            aboutValueEditUserProfileFrag.visibility = View.VISIBLE\n//            addAboutTextUserFrag.visibility = View.GONE\n//            aboutValueEditUserProfileFrag.setText(aboutValueUserProfileFrag.text.toString())\n//            aboutValueUserProfileFrag.visibility = View.GONE\n//            saveBtnAboutUserProfileFrag.visibility = View.VISIBLE\n//        }\n\n//        addAboutTextUserFrag.setOnClickListener {\n//            aboutValueEditUserProfileFrag.visibility = View.VISIBLE\n//            saveBtnAboutUserProfileFrag.visibility = View.VISIBLE\n//        }\n\n//        saveBtnAboutUserProfileFrag.setOnClickListener {\n//            aboutValueUserProfileFrag.visibility = View.VISIBLE\n//            aboutValueUserProfileFrag.text = aboutValueEditUserProfileFrag.text\n//            saveBtnAboutUserProfileFrag.visibility = View.GONE\n//            userDataViewModel.updateUserField(activity!!.applicationContext, firebaseAuth.currentUser!!.email.toString() as String, aboutValueEditUserProfileFrag.text.toString() as String, null)\n//            aboutValueEditUserProfileFrag.visibility = View.GONE\n//        }\n\n        uploadProgressBarProfile.visibility = View.GONE\n        uploadBackProgressProfile.visibility = View.GONE\n\n\n        uploadUserBackgroundImage.setOnClickListener {\n            val intent = Intent()\n            intent.type = \"image/* video/*\"\n            intent.action = Intent.ACTION_PICK\n            startActivityForResult(\n                Intent.createChooser(intent, \"Select Picture\"),\n                PICK_IMAGE_REQUEST\n            )\n            uploadProfOrBack = 1\n\n            Toast.makeText(activity!!.applicationContext, \"Uploading Background Image\", Toast.LENGTH_SHORT).show()\n        }\n\n        uploadProfilePictureImage.setOnClickListener {\n            val intent = Intent()\n            intent.type = \"image/* video/*\"\n            intent.action = Intent.ACTION_PICK\n            startActivityForResult(\n                Intent.createChooser(intent, \"Select Picture\"),\n                PICK_IMAGE_REQUEST\n            )\n            uploadProfOrBack = 0\n            Toast.makeText(activity!!.applicationContext, \"Uploading your Image\", Toast.LENGTH_SHORT).show()\n        }\n\n\n        userDataViewModel.userliveData.observe(viewLifecycleOwner, Observer {\n            Log.d(\"User Data in VM Frag\", it.get(\"name\").toString())\n            Log.d(\"Data in User\", it.toString())\n            userNameUserProfileFrag.text = it!!.getString(\"name\")\n            val city = it?.getString(\"city\")\n            if(city == null){\n                userCityUserProfileFrag.text = \"City: \"\n            } else{\n                userCityUserProfileFrag.text = \"City: \" + it.getString(\"city\")\n            }\n\n            if(it?.get(\"profileImage\") == null || it?.getString(\"profileImage\").isNullOrBlank()){\n                uploadProfilePictureImage.visibility = View.VISIBLE\n            } else{\n                uploadProfilePictureImage.visibility = View.GONE\n                Glide.with(activity!!.applicationContext).load(it?.get(\"profileImage\"))\n                    .into(userImageUserFrag)\n            }\n\n\n            if(it?.get(\"backImage\") == null || it?.getString(\"backImage\").isNullOrBlank()){\n                uploadUserBackgroundImage.visibility = View.VISIBLE\n            } else{\n                uploadUserBackgroundImage.visibility = View.GONE\n                Glide.with(activity!!.applicationContext).load(it?.getString(\"backImage\"))\n                    .into(userBackgroundImage)\n            }\n\n            val posts = it.get(\"posts\") as List<String>\n            userPostsCountUserProfileFrag.text = \"Posts: \" + posts.size.toString()\n            userEmailUserProfileFrag.text = firebaseAuth.currentUser!!.email\n            val about = it?.getString(\"about\")\n\n            if (about == null || about == \"\") {\n                aboutValueUserProfileFrag.visibility = View.GONE\n                aboutValueEditUserProfileFrag.visibility = View.GONE\n                saveBtnAboutUserProfileFrag.visibility = View.GONE\n            } else {\n                aboutValueUserProfileFrag.visibility = View.VISIBLE\n                aboutValueEditUserProfileFrag.visibility = View.GONE\n                saveBtnAboutUserProfileFrag.visibility = View.GONE\n                aboutValueUserProfileFrag.text = about\n            }\n\n        })\n\n        imageEdit.setOnClickListener {\n            uploadProfilePictureImage.visibility = View.VISIBLE\n            uploadUserBackgroundImage.visibility = View.VISIBLE\n            imageChecked.visibility = View.VISIBLE\n            imageEdit.visibility = View.GONE\n            cityEditUserProfile.setText(userCityUserProfileFrag!!.text.toString().removePrefix(\"City: \"))\n            cityEditUserProfile.visibility = View.VISIBLE\n            aboutValueEditUserProfileFrag.visibility = View.VISIBLE\n            aboutValueEditUserProfileFrag.setText(aboutValueUserProfileFrag.text.toString())\n            aboutValueUserProfileFrag.visibility = View.GONE\n        }\n\n        imageChecked.setOnClickListener {\n            uploadProfilePictureImage.visibility = View.GONE\n            uploadUserBackgroundImage.visibility = View.GONE\n            imageEdit.visibility = View.VISIBLE\n            cityEditUserProfile.visibility = View.GONE\n            imageChecked.visibility = View.GONE\n            userDataViewModel.updateUserField(activity!!.applicationContext, firebaseAuth.currentUser!!.email.toString() as String, aboutValueEditUserProfileFrag.text.toString(), cityEditUserProfile.text.toString())\n            userDataViewModel.getUserData(firebaseAuth.currentUser!!.email.toString())\n            aboutValueEditUserProfileFrag.visibility = View.GONE\n            aboutValueUserProfileFrag.visibility = View.VISIBLE\n        }\n    }\n\n\n    override fun onActivityResult(requestCode: Int, resultCode: Int, data: Intent?) {\n        super.onActivityResult(requestCode, resultCode, data)\n\n        if (requestCode == PICK_IMAGE_REQUEST && resultCode == Activity.RESULT_OK) {\n            if (data == null || data.data == null) {\n                return\n            }\n\n            filePath = data.data\n            try {\n\n                bitmap = MediaStore.Images.Media.getBitmap(activity!!.contentResolver, filePath)\n\n                if(bitmap!=null){\n                    Log.d(\"UserFragment\", bitmap.toString())\n\n                    if(uploadProfOrBack == 0){\n                        uploadProgressBarProfile.visibility = View.VISIBLE\n                        uploadProfilePictureImage.visibility = View.GONE\n                    } else if(uploadProfOrBack == 1){\n                        uploadBackProgressProfile.visibility = View.VISIBLE\n                        uploadUserBackgroundImage.visibility = View.GONE\n                    }\n\n                    uploadImage2().setImageBitmap(bitmap)\n                }\n\n            } catch (e: IOException) {\n                e.printStackTrace()\n            }\n        }\n\n    }\n\n\n    private fun uploadImage2() {\n        if (filePath != null) {\n            postID = UUID.randomUUID()\n            val ref = storageReference?.child(\"users/\" + postID.toString())\n            val uploadTask = ref?.putFile(filePath!!)\n            Log.d(\"UserFragment\", filePath.toString())\n            val urlTask =\n                uploadTask?.continueWithTask(Continuation<UploadTask.TaskSnapshot, Task<Uri>> { task ->\n                    if (!task.isSuccessful) {\n                        Toast.makeText(activity!!.applicationContext, \"Error in Uploading\", Toast.LENGTH_SHORT).show()\n                        task.exception?.let {\n                            throw it\n                        }\n                    }\n                    return@Continuation ref.downloadUrl\n                })?.addOnCompleteListener { task ->\n                    if (task.isSuccessful) {\n                        val downloadUri = task.result\n                        Toast.makeText(activity!!.applicationContext, \"Uploading...\", Toast.LENGTH_SHORT).show()\n                        uploadUserPhotos(downloadUri.toString(), postID!!)\n\n                    } else {\n                        // Handle failures\n                        Toast.makeText(activity!!.applicationContext, \"Error\", Toast.LENGTH_SHORT).show()\n                        uploadProgressBarProfile.visibility = View.GONE\n                        uploadBackProgressProfile.visibility = View.GONE\n                        uploadUserBackgroundImage.visibility = View.VISIBLE\n                        uploadProfilePictureImage.visibility = View.VISIBLE\n                    }\n                }?.addOnFailureListener {\n                    Toast.makeText(activity!!.applicationContext, \"Error2\", Toast.LENGTH_SHORT).show()\n                    uploadProgressBarProfile.visibility = View.GONE\n                    uploadBackProgressProfile.visibility = View.GONE\n                    uploadUserBackgroundImage.visibility = View.VISIBLE\n                    uploadProfilePictureImage.visibility = View.VISIBLE\n                }\n        } else {\n\n        }\n    }\n\n\n\n\n    fun uploadUserPhotos(uri: String?, postID: UUID?){\n\n        if(uploadProfOrBack == 0){\n            firebaseFirestore.collection(\"users\").document(firebaseAuth.currentUser!!.email!!)\n                .update(mapOf(\n                    \"profileImage\" to uri\n                ))\n                .addOnSuccessListener {\n                    Toast.makeText(activity!!.applicationContext, \"Profile Updated\", Toast.LENGTH_SHORT).show()\n                    uploadProgressBarProfile.visibility = View.GONE\n                    imageEdit.visibility = View.VISIBLE\n                    imageChecked.visibility = View.GONE\n                    userImageUserFrag.setImageBitmap(bitmap)\n                    userDataViewModel.getUserData(firebaseAuth!!.currentUser!!.email.toString())\n                }\n                .addOnFailureListener {\n                    uploadProgressBarProfile.visibility = View.GONE\n                    userImageUserFrag.visibility = View.VISIBLE\n                    Toast.makeText(activity!!.applicationContext, \"Failed to Update Profile\", Toast.LENGTH_SHORT).show()\n\n                }\n        }\n        else if(uploadProfOrBack == 1){\n            firebaseFirestore.collection(\"users\").document(firebaseAuth.currentUser!!.email!!)\n                .update(mapOf(\n                    \"backImage\" to uri\n                ))\n                .addOnSuccessListener {\n                    Toast.makeText(activity!!.applicationContext, \"Profile Updated 2\", Toast.LENGTH_SHORT).show()\n                    uploadBackProgressProfile.visibility = View.GONE\n                    userBackgroundImage.setImageBitmap(bitmap)\n                    imageEdit.visibility = View.VISIBLE\n                    imageChecked.visibility = View.GONE\n                    userDataViewModel.getUserData(firebaseAuth!!.currentUser!!.email.toString())\n                }\n                .addOnFailureListener {\n                    uploadBackProgressProfile.visibility = View.GONE\n                    userBackgroundImage.setImageBitmap(bitmap)\n                    Toast.makeText(activity!!.applicationContext, \"Failed to Update Profile\", Toast.LENGTH_SHORT).show()\n                }\n        }\n\n\n    }\n\n    override fun onCellClickListener(name: String) {\n        val dialog = AlertDialog.Builder(activity)\n\n        dialog.setTitle(\"Your Post\")\n            .setMessage(\"Do you want to edit your post?\")\n            .setPositiveButton(\"View\") { dialogInterface, i ->\n\n            }\n            .setNegativeButton(\"Delete\") { dialogInterface, i ->\n                userDataViewModel.deleteUserPost(firebaseAuth.currentUser!!.email!!, name)\n                userDataViewModel.getUserData(firebaseAuth.currentUser!!.email.toString())\n                viewModel.getAllPosts(firebaseAuth.currentUser!!.email)\n            }\n            .setNeutralButton(\"Cancel\"){\n                dialogInterface, i ->\n\n            }\n            .show()\n\n        Toast.makeText(activity!!.applicationContext, \"You Clicked\" + name.toString(), Toast.LENGTH_SHORT).show()\n    }\n\n    override fun onActivityCreated(savedInstanceState: Bundle?) {\n        super.onActivityCreated(savedInstanceState)\n        viewModel.liveData3.observe(this, Observer {\n            Log.d(\"All Posts\", it.toString())\n            val adapter = PostListUserProfileAdapter(activity!!.applicationContext, it, this)\n            userProfilePostsRecycler.adapter = adapter\n\n            userProfilePostsRecycler.layoutManager =\n                LinearLayoutManager(activity!!.applicationContext)\n            adapter.notifyDataSetChanged()\n\n        })\n    }\n}\nprivate fun Any.setImageBitmap(bitmap: Bitmap?) {\n\n}"
  },
  {
    "path": "app/src/main/java/com/project/farmingapp/view/weather/WeatherFragment.kt",
    "content": "package com.project.farmingapp.view.weather\n\nimport android.os.Build\nimport android.os.Bundle\n\nimport android.util.Log\nimport android.view.LayoutInflater\nimport android.view.View\nimport android.view.ViewGroup\nimport android.view.animation.AnimationUtils\nimport android.widget.Toast\nimport androidx.annotation.Nullable\nimport androidx.annotation.RequiresApi\nimport androidx.appcompat.app.AppCompatActivity\nimport androidx.databinding.DataBindingUtil\nimport androidx.fragment.app.Fragment\nimport androidx.lifecycle.LiveData\nimport androidx.lifecycle.MutableLiveData\nimport androidx.lifecycle.Observer\nimport androidx.lifecycle.ViewModelProviders\nimport androidx.recyclerview.widget.LinearLayoutManager\nimport androidx.recyclerview.widget.RecyclerView\nimport com.project.farmingapp.R\nimport com.project.farmingapp.adapter.CurrentWeatherAdapter\nimport com.project.farmingapp.adapter.WeatherAdapter\nimport com.project.farmingapp.databinding.FragmentWeatherBinding\nimport com.project.farmingapp.model.WeatherApi\nimport com.project.farmingapp.databinding.FragmentWeatherBindingImpl\nimport com.project.farmingapp.model.data.Weather\nimport com.project.farmingapp.model.data.WeatherList\nimport com.project.farmingapp.model.data.WeatherRootList\nimport com.project.farmingapp.viewmodel.WeatherListener\nimport com.project.farmingapp.viewmodel.WeatherViewModel\nimport kotlinx.android.synthetic.main.fragment_weather.*\nimport retrofit2.Call\nimport retrofit2.Callback\nimport retrofit2.Response\n\n\n// TODO: Rename parameter arguments, choose names that match\n// the fragment initialization parameters, e.g. ARG_ITEM_NUMBER\nprivate const val ARG_PARAM1 = \"param1\"\nprivate const val ARG_PARAM2 = \"param2\"\n\n/**\n * A simple [Fragment] subclass.\n * Use the [WeatherFragment.newInstance] factory method to\n * create an instance of this fragment.\n */\nclass WeatherFragment : Fragment(), WeatherListener {\n    // TODO: Rename and change types of parameters\n    private var param1: String? = null\n    private var param2: String? = null\n    lateinit var Adapter: WeatherAdapter\n    lateinit var Adapter2: CurrentWeatherAdapter\n\n    private lateinit var viewModel: WeatherViewModel\n\n\n    private var fragmentWeatherBinding: FragmentWeatherBinding? = null\n    override fun onCreate(savedInstanceState: Bundle?) {\n        super.onCreate(savedInstanceState)\n        arguments?.let {\n            param1 = it.getString(ARG_PARAM1)\n            param2 = it.getString(ARG_PARAM2)\n        }\n\n        // init ViewModel\n        viewModel = ViewModelProviders.of(requireActivity())\n            .get<WeatherViewModel>(WeatherViewModel::class.java)\n\n        val bundle = this.arguments\n        if (bundle != null) {\n            Log.d(\"WeatherFrag Bundle\", bundle.getString(\"key\"))\n        }\n    }\n\n    override fun onCreateView(\n        inflater: LayoutInflater, container: ViewGroup?,\n        savedInstanceState: Bundle?\n    ): View? {\n        return inflater.inflate(R.layout.fragment_weather, container, false)\n    }\n\n\n    @RequiresApi(Build.VERSION_CODES.M)\n    override fun onViewCreated(view: View, savedInstanceState: Bundle?) {\n        super.onViewCreated(view, savedInstanceState)\n\n        setHasOptionsMenu(true)\n        (activity as AppCompatActivity).supportActionBar?.title = \"Weather Forecast\"\n\n        val city = viewModel.getCoordinates().value\n        weatherCity.text = city!!.get(2).toString()\n        val newWeatherData = viewModel.newDataTrial.value\n        Log.d(\"New Data Weather Trial\", newWeatherData.toString())\n\n        var firstDate = newWeatherData!!.list[0].dt_txt.slice(8..9)\n        var otherDates = firstDate\n        var i = 1\n        var data2 = mutableListOf<WeatherList>()\n\n        while (otherDates == firstDate) {\n            data2!!.add(newWeatherData.list[i - 1])\n            otherDates = newWeatherData.list[i].dt_txt.slice(8..9)\n            i += 1\n        }\n\n        var data3 = mutableListOf<WeatherList>()\n        for (a in i - 1..39) {\n            if (newWeatherData.list[a].dt_txt.slice(11..12) == \"12\") {\n                Log.d(\"Something date\", newWeatherData.list[a].dt_txt)\n                data3.add(newWeatherData.list[a])\n            }\n        }\n\n        Adapter = WeatherAdapter(activity!!.applicationContext, data3)\n        Adapter2 = CurrentWeatherAdapter(activity!!.applicationContext, data2)\n\n        rcylr_weather.adapter = Adapter\n        rcylr_weather.layoutManager = LinearLayoutManager(activity!!.applicationContext)\n\n        currentWeather_rcycl.adapter = Adapter2\n        currentWeather_rcycl.layoutManager = LinearLayoutManager(activity!!.applicationContext, LinearLayoutManager.HORIZONTAL, false)\n\n    }\n    companion object {\n        /**\n         * Use this factory method to create a new instance of\n         * this fragment using the provided parameters.\n         *\n         * @param param1 Parameter 1.\n         * @param param2 Parameter 2.\n         * @return A new instance of fragment WeatherFragment.\n         */\n        // TODO: Rename and change types and number of parameters\n        @JvmStatic\n        fun newInstance(param1: String, param2: String) =\n            WeatherFragment().apply {\n                arguments = Bundle().apply {\n                    putString(ARG_PARAM1, param1)\n                    putString(ARG_PARAM2, param2)\n                }\n            }\n    }\n\n    override fun onSuccess(authRepo: LiveData<String>) {\n        authRepo.observe(this, Observer {\n            Log.d(\"Frag\", authRepo.value.toString())\n        })\n//        Toast.makeText(this.context, \"SS\", Toast.LENGTH_LONG).show()\n    }\n}\n\nprivate fun RecyclerView.hasFixedSize(b: Boolean) {\n\n}\n"
  },
  {
    "path": "app/src/main/java/com/project/farmingapp/view/yojna/YojnaFragment.kt",
    "content": "package com.project.farmingapp.view.yojna\n\nimport android.os.Bundle\nimport android.util.Log\nimport androidx.fragment.app.Fragment\nimport android.view.LayoutInflater\nimport android.view.View\nimport android.view.ViewGroup\nimport androidx.appcompat.app.AppCompatActivity\nimport androidx.lifecycle.Observer\nimport androidx.lifecycle.ViewModelProviders\nimport com.bumptech.glide.Glide\nimport com.project.farmingapp.R\nimport com.project.farmingapp.viewmodel.YojnaViewModel\nimport kotlinx.android.synthetic.main.fragment_yojna.*\nimport kotlinx.coroutines.GlobalScope\n\n// TODO: Rename parameter arguments, choose names that match\n// the fragment initialization parameters, e.g. ARG_ITEM_NUMBER\nprivate const val ARG_PARAM1 = \"param1\"\nprivate const val ARG_PARAM2 = \"param2\"\n\n/**\n * A simple [Fragment] subclass.\n * Use the [YojnaFragment.newInstance] factory method to\n * create an instance of this fragment.\n */\nclass YojnaFragment : Fragment() {\n    // TODO: Rename and change types of parameters\n    private var param1: String? = null\n    private var param2: String? = null\n    lateinit var yojnaViewModel: YojnaViewModel\n\n    override fun onCreate(savedInstanceState: Bundle?) {\n        super.onCreate(savedInstanceState)\n        arguments?.let {\n            param1 = it.getString(ARG_PARAM1)\n            param2 = it.getString(ARG_PARAM2)\n        }\n        val tag = this.tag.toString()\n        Log.d(\"YojnaFragment\", this.tag.toString())\n\n        yojnaViewModel =\n            ViewModelProviders.of(requireActivity()).get<YojnaViewModel>(YojnaViewModel::class.java)\n\n        yojnaViewModel.getYojna(this.tag.toString())\n    }\n\n    override fun onCreateView(\n        inflater: LayoutInflater, container: ViewGroup?,\n        savedInstanceState: Bundle?\n    ): View? {\n        // Inflate the layout for this fragment\n        return inflater.inflate(R.layout.fragment_yojna, container, false)\n    }\n\n    companion object {\n        /**\n         * Use this factory method to create a new instance of\n         * this fragment using the provided parameters.\n         *\n         * @param param1 Parameter 1.\n         * @param param2 Parameter 2.\n         * @return A new instance of fragment YojnaFragment.\n         */\n        // TODO: Rename and change types and number of parameters\n        @JvmStatic\n        fun newInstance(param1: String, param2: String) =\n            YojnaFragment().apply {\n                arguments = Bundle().apply {\n                    putString(ARG_PARAM1, param1)\n                    putString(ARG_PARAM2, param2)\n                }\n            }\n    }\n\n    override fun onViewCreated(view: View, savedInstanceState: Bundle?) {\n        super.onViewCreated(view, savedInstanceState)\n\n        setHasOptionsMenu(true)\n        (activity as AppCompatActivity).supportActionBar?.title = \"Krishi Yojna\"\n        progressYojna.visibility = View.VISIBLE\n\n        yojnaViewModel.msg.observe(viewLifecycleOwner, Observer {\n            yojnaTitle.text = it.get(\"title\").toString()\n            yojnaDesc.text = it.get(\"description\").toString()\n            yojnaDate.text = it.get(\"launch\").toString()\n            yojnaLaunchedBy.text = it.get(\"headedBy\").toString()\n            yojnaBudget.text = it.get(\"budget\").toString()\n            val eligibility: ArrayList<String> = it.get(\"eligibility\") as ArrayList<String>\n            val documents: ArrayList<String> = it.get(\"documents\") as ArrayList<String>\n            val objectives: ArrayList<String> = it.get(\"objective\") as ArrayList<String>\n\n            yojnaEligibility.text = \"\"\n            yojnaDocumentsRequired.text = \"\"\n            yojnaObjectives.text = \"\"\n\n            for (i in 0..(eligibility.size - 1)) {\n                yojnaEligibility.text =\n                    yojnaEligibility.text.toString() + (i + 1).toString() + \". \" + eligibility[i].toString() + \"\\n\"\n            }\n\n            for (i in 0..(documents.size - 1)) {\n                yojnaDocumentsRequired.text =\n                    yojnaDocumentsRequired.text.toString() + (i + 1).toString() + \". \" + documents[i].toString() + \"\\n\"\n            }\n\n            for (i in 0..(objectives.size - 1)) {\n                yojnaObjectives.text =\n                    yojnaObjectives.text.toString() + (i + 1).toString() + \". \" + objectives[i].toString() + \"\\n\"\n            }\n\n            yojnaWebsite.text = it.get(\"website\").toString()\n            Glide.with(this).load(it.get(\"image\").toString()).into(yojnaImage)\n            progressYojna.visibility = View.GONE\n        })\n    }\n}"
  },
  {
    "path": "app/src/main/java/com/project/farmingapp/view/yojna/YojnaListFragment.kt",
    "content": "package com.project.farmingapp.view.yojna\n\nimport android.os.Bundle\nimport android.util.Log\nimport androidx.fragment.app.Fragment\nimport android.view.LayoutInflater\nimport android.view.View\nimport android.view.ViewGroup\nimport android.widget.Adapter\nimport androidx.appcompat.app.AppCompatActivity\nimport androidx.fragment.app.FragmentTransaction\nimport androidx.lifecycle.Observer\nimport androidx.lifecycle.ViewModelProviders\nimport androidx.recyclerview.widget.GridLayoutManager\nimport androidx.recyclerview.widget.LinearLayoutManager\nimport com.project.farmingapp.R\nimport com.project.farmingapp.adapter.ArticleListAdapter\nimport com.project.farmingapp.adapter.YojnaAdapter\nimport com.project.farmingapp.utilities.CellClickListener\nimport com.project.farmingapp.view.articles.FruitsFragment\nimport com.project.farmingapp.viewmodel.ArticleViewModel\nimport com.project.farmingapp.viewmodel.YojnaViewModel\nimport kotlinx.android.synthetic.main.fragment_yojna_list.*\n\n// TODO: Rename parameter arguments, choose names that match\n// the fragment initialization parameters, e.g. ARG_ITEM_NUMBER\nprivate const val ARG_PARAM1 = \"param1\"\nprivate const val ARG_PARAM2 = \"param2\"\n\n/**\n * A simple [Fragment] subclass.\n * Use the [YojnaListFragment.newInstance] factory method to\n * create an instance of this fragment.\n */\nclass YojnaListFragment : Fragment(), CellClickListener {\n    // TODO: Rename and change types of parameters\n    private var param1: String? = null\n    private var param2: String? = null\n    private lateinit var viewModel: YojnaViewModel\n    lateinit var Adapter: YojnaAdapter\n    lateinit var yojnaFragment: YojnaFragment\n    override fun onCreate(savedInstanceState: Bundle?) {\n        super.onCreate(savedInstanceState)\n        arguments?.let {\n            param1 = it.getString(ARG_PARAM1)\n            param2 = it.getString(ARG_PARAM2)\n        }\n       viewModel = ViewModelProviders.of(requireActivity())\n           .get<YojnaViewModel>(YojnaViewModel::class.java)\n\n       viewModel.getAllYojna(\"yojnas\")\n    }\n\n    override fun onCreateView(\n        inflater: LayoutInflater, container: ViewGroup?,\n        savedInstanceState: Bundle?\n    ): View? {\n\n        viewModel.message3.observe(viewLifecycleOwner, Observer {\n\n            Log.d(\"Art All Data\", it[0].data.toString())\n\n\n            Adapter = YojnaAdapter(activity!!.applicationContext, it, this)\n            rcyclr_yojnaList.adapter = Adapter\n            rcyclr_yojnaList.layoutManager = LinearLayoutManager(activity!!.applicationContext)\n\n        })\n        // Inflate the layout for this fragment\n        return inflater.inflate(R.layout.fragment_yojna_list, container, false)\n    }\n\n    override fun onViewCreated(view: View, savedInstanceState: Bundle?) {\n        super.onViewCreated(view, savedInstanceState)\n        setHasOptionsMenu(true)\n        (activity as AppCompatActivity).supportActionBar?.title = \"Krishi Yojna\"\n    }\n\n    companion object {\n        /**\n         * Use this factory method to create a new instance of\n         * this fragment using the provided parameters.\n         *\n         * @param param1 Parameter 1.\n         * @param param2 Parameter 2.\n         * @return A new instance of fragment YojnaListFragment.\n         */\n        // TODO: Rename and change types and number of parameters\n        @JvmStatic\n        fun newInstance(param1: String, param2: String) =\n            YojnaListFragment().apply {\n                arguments = Bundle().apply {\n                    putString(ARG_PARAM1, param1)\n                    putString(ARG_PARAM2, param2)\n                }\n            }\n    }\n    override fun onCellClickListener(name: String) {\n       yojnaFragment = YojnaFragment()\n        val bundle = Bundle()\n        bundle.putString(\"name\", name)\n        yojnaFragment.setArguments(bundle)\n        val transaction = activity!!.supportFragmentManager\n            .beginTransaction()\n            .replace(R.id.frame_layout, yojnaFragment, name)\n            .setTransition(FragmentTransaction.TRANSIT_FRAGMENT_OPEN)\n            .setReorderingAllowed(true)\n            .addToBackStack(\"yojnaListFrag\")\n            .commit()\n    }\n\n}"
  },
  {
    "path": "app/src/main/java/com/project/farmingapp/viewmodel/ArticleListener.kt",
    "content": "package com.project.farmingapp.viewmodel\n\nimport androidx.lifecycle.LiveData\n\ninterface ArticleListener {\n\n    fun onStarted()\n    fun onSuccess(authRepo: LiveData<String>)\n    fun onFailure(message: String)\n\n}"
  },
  {
    "path": "app/src/main/java/com/project/farmingapp/viewmodel/ArticleViewModel.kt",
    "content": "package com.project.farmingapp.viewmodel\n\nimport android.util.Log\nimport androidx.lifecycle.LiveData\nimport androidx.lifecycle.MutableLiveData\nimport androidx.lifecycle.ViewModel\nimport com.google.android.gms.tasks.OnFailureListener\nimport com.google.android.gms.tasks.OnSuccessListener\nimport com.google.firebase.firestore.DocumentSnapshot\nimport com.google.firebase.firestore.FirebaseFirestore\nimport com.google.firebase.firestore.QuerySnapshot\nimport com.google.firebase.storage.FileDownloadTask\nimport com.google.firebase.storage.FirebaseStorage\nimport java.io.File\n\n\nclass ArticleViewModel : ViewModel() {\n\n    var message1 = MutableLiveData<HashMap<String, Any>>()\n    var message2 = MutableLiveData<String>()\n    var message3 = MutableLiveData<List<DocumentSnapshot>>()\n    var articleListener: ArticleListener? = null\n    private var todoLiveData: LiveData<HashMap<String, Any>>? = null\n    lateinit var firebaseDb: FirebaseFirestore\n    lateinit var firebaseStorage: FirebaseStorage\n    fun getArticle(): MutableLiveData<HashMap<String, Any>> {\n        Log.d(\"ArticleViewModelGet\", message1.value.toString())\n        return message1\n    }\n\n    fun getMyArticle(name: String) {\n\n        firebaseStorage = FirebaseStorage.getInstance()\n        firebaseDb = FirebaseFirestore.getInstance()\n\n        Log.d(\"ArticleRepo1\", \"Ss\")\n        firebaseDb.collection(\"article_fruits\").document(\"${name}\")\n            .get()\n            .addOnSuccessListener {\n                message1.value = it.data as HashMap<String, Any>?\n                Log.d(\"ArticleViewModelDirect\", message1.value.toString())\n            }\n            .addOnFailureListener {\n                Log.d(\"ArticleRepo3\", \"ss\")\n            }\n    }\n\n    fun getAllArticles(name: String){\n\n        if (message3.value.isNullOrEmpty()){\n            firebaseDb = FirebaseFirestore.getInstance()\n            firebaseDb.collection(name).get().addOnSuccessListener {\n//            var message3 = MutableLiveData<DocumentSnapshot>()\n\n                message3.value = it.documents\n                Log.d(\"I'm called4\", \"Yes\")\n//            Log.d(\"All articles\", it.documents[1].data.toString())\n            }\n        }\n\n    }\n\n    fun updateArticle(data: HashMap<String, Any>) {\n        Log.d(\"ArticleViewModel\", data.toString())\n        message1.value = data\n    }\n\n}"
  },
  {
    "path": "app/src/main/java/com/project/farmingapp/viewmodel/AuthListener.kt",
    "content": "package com.project.farmingapp.viewmodel\n\nimport androidx.lifecycle.LiveData\n\ninterface AuthListener {\n\n    fun onStarted()\n    fun onSuccess(authRepo: LiveData<String>)\n    fun onFailure(message: String)\n\n}"
  },
  {
    "path": "app/src/main/java/com/project/farmingapp/viewmodel/AuthViewModel.kt",
    "content": "package com.project.farmingapp.viewmodel\n\nimport android.content.Intent\nimport android.util.Log\nimport android.view.View\nimport androidx.lifecycle.ViewModel\nimport com.google.android.gms.auth.api.signin.GoogleSignIn\nimport com.google.android.gms.auth.api.signin.GoogleSignInClient\nimport com.google.android.gms.common.api.ApiException\nimport com.project.farmingapp.model.AuthRepository\n\nclass AuthViewModel : ViewModel() {\n\n    var name: String? = null\n    var mobNo: String? = null\n    var email: String? = null\n    var city: String? = null\n    var password: String? = null\n    var confPassword: String? = null\n    var userType: String? = \"normal\"\n    var authListener: AuthListener? = null\n\n    //login\n    var loginmail:String?=null\n    var loginpwd:String?=null\n\n    lateinit var authRepository: AuthRepository\n    lateinit var googleSignInClient: GoogleSignInClient\n\n    companion object {\n        private const val TAG = \"GoogleActivity\"\n        private const val RC_SIGN_IN = 9001\n    }\n\n    val userPosts = arrayListOf<String>()\n    fun signupButtonClicked(view: View) {\n        authListener!!.onStarted()\n        if (name.isNullOrEmpty() || mobNo.toString().length != 10 || mobNo == null || password.isNullOrEmpty() || confPassword.isNullOrEmpty() || city.isNullOrEmpty()) {\n            // Failure\n            authListener!!.onFailure(\"Error Occurred\")\n            return\n        }\n        // Success\n        var data = hashMapOf(\n            \"name\" to name,\n            \"mobNo\" to mobNo,\n            \"email\" to email,\n            \"city\" to city,\n            \"userType\" to userType,\n            \"posts\" to  userPosts,\n            \"profileImage\" to \"\"\n        )\n        val authRepo = AuthRepository().signInWithEmail(email!!, password!!, data)\n        authListener?.onSuccess(authRepo)\n    }\n\n    fun returnActivityResult(requestCode: Int, resultCode: Int, data: Intent?) {\n        authListener!!.onStarted()\n\n        if (requestCode == RC_SIGN_IN) {\n            val task = GoogleSignIn.getSignedInAccountFromIntent(data)\n            val exception = task.exception\n            if (task.isSuccessful) {\n                try {\n                    val account = task.getResult(ApiException::class.java)!!\n                    var data2 = hashMapOf(\n                        \"userType\" to userType,\n                        \"posts\" to userPosts,\n                        \"name\" to account.displayName.toString(),\n                        \"profileImage\" to account.photoUrl.toString()\n                    )\n                    authRepository = AuthRepository()\n                    var returned = authRepository.signInToGoogle(\n                        account.idToken!!,\n                        account.email.toString(),\n                        data2\n                    )\n                    Log.d(\"AuthView\", returned.value.toString())\n                    authListener?.onSuccess(returned)\n                } catch (e: ApiException) {\n                    authListener!!.onFailure(e.message.toString())\n                }\n            } else {\n            }\n        }\n    }\n\n    //login btn function\n    fun loginButtonClicked(view: View) {\n        authListener!!.onStarted()\n        if (loginmail.isNullOrEmpty() || loginpwd.isNullOrEmpty()) {\n            // Failure\n            authListener!!.onFailure(\"Error Occurred\")\n            return\n        }\n        // Success\n\n        val authRepo = AuthRepository().logInWithEmail(loginmail!!, loginpwd!!)\n        authListener?.onSuccess(authRepo)\n    }\n}"
  },
  {
    "path": "app/src/main/java/com/project/farmingapp/viewmodel/EcommViewModel.kt",
    "content": "package com.project.farmingapp.viewmodel\n\nimport android.util.Log\nimport android.widget.Toast\nimport androidx.lifecycle.MutableLiveData\nimport androidx.lifecycle.ViewModel\nimport androidx.recyclerview.widget.LinearLayoutManager\nimport com.google.firebase.auth.FirebaseAuth\nimport com.google.firebase.firestore.DocumentSnapshot\nimport com.google.firebase.firestore.FirebaseFirestore\nimport com.google.firebase.storage.FirebaseStorage\nimport com.google.firebase.storage.StorageReference\nimport com.project.farmingapp.adapter.EcommerceAdapter\nimport kotlinx.android.synthetic.main.fragment_ecommerce.*\n\nclass EcommViewModel : ViewModel() {\n    private var firebaseAuth: FirebaseAuth? = null\n    private var firebaseFireStore: FirebaseFirestore = FirebaseFirestore.getInstance()\n    private var firebaseStore: FirebaseStorage? = null\n    private var storageReference: StorageReference? = null\n\n    var ecommLiveData = MutableLiveData<List<DocumentSnapshot>>()\n    var specificCategoryItems = MutableLiveData<List<DocumentSnapshot>>()\n    var specificItem = MutableLiveData<DocumentSnapshot>()\n    fun loadAllEcommItems(): MutableLiveData<List<DocumentSnapshot>> {\n\n        firebaseAuth = FirebaseAuth.getInstance()\n        firebaseFireStore = FirebaseFirestore.getInstance()\n\n        firebaseFireStore!!.collection(\"products\").get()\n            .addOnSuccessListener {\n                Log.d(\"ecommviewmodel\", it.documents[0].getString(\"title\").toString())\n                ecommLiveData.value = it.documents\n                Log.d(\"ecommviewmodel\", it.documents.toString())\n\n            }\n            .addOnFailureListener {\n                Log.d(\"ecommviewmodel\", it.message)\n            }\n        return ecommLiveData\n    }\n\n    fun loadSpecificTypeEcomItem(itemType: String) {\n        firebaseFireStore = FirebaseFirestore.getInstance()\n\n        firebaseFireStore!!.collection(\"products\")\n            .whereEqualTo(\"type\", itemType)\n            .get()\n            .addOnSuccessListener {\n                Log.d(\"ecommviewmodel\", it.documents[0].getString(\"title\").toString())\n                ecommLiveData.value = it.documents\n                Log.d(\"ecommviewmodel\", it.documents.toString())\n\n            }\n            .addOnFailureListener {\n                Log.d(\"ecommviewmodel\", it.message)\n            }\n\n    }\n\n    fun getSpecificCategoryItems(itemType: String): MutableLiveData<List<DocumentSnapshot>> {\n        firebaseFireStore.collection(\"products\")\n            .whereEqualTo(\"type\", itemType)\n            .get()\n            .addOnCompleteListener {\n                if (it.isSuccessful) {\n                    specificCategoryItems.value = it.result!!.documents\n                    Log.d(\"EcommViewModel\", it.result!!.documents.toString())\n                }\n            }\n            .addOnFailureListener {\n                Log.e(\"EcommViewModel\", \"Error Loading Specific Category Items\")\n            }\n        return specificCategoryItems\n    }\n\n    fun getSpecificItem(itemID: String): MutableLiveData<DocumentSnapshot> {\n        firebaseFireStore.collection(\"products\")\n            .document(itemID)\n            .get()\n            .addOnCompleteListener {\n                if (it.isSuccessful) {\n                    Log.d(\"EcommViewModel\", it.result!!.data.toString())\n                    specificItem.value = it.result\n                } else {\n                    Log.e(\"EcommViewModel\", \"Failed Getting Data\")\n                }\n            }.addOnFailureListener {\n                Log.e(\"EcommViewModel\", \"Failed Getting Data\")\n            }\n        return specificItem\n    }\n}"
  },
  {
    "path": "app/src/main/java/com/project/farmingapp/viewmodel/SocialMediaViewModel.kt",
    "content": "package com.project.farmingapp.viewmodel\n\nimport androidx.lifecycle.MutableLiveData\nimport androidx.lifecycle.ViewModel\nimport com.google.firebase.auth.FirebaseAuth\nimport com.google.firebase.firestore.DocumentSnapshot\nimport com.google.firebase.firestore.FirebaseFirestore\nimport com.google.firebase.storage.FirebaseStorage\nimport com.google.firebase.storage.StorageReference\n\nclass SocialMediaViewModel: ViewModel() {\n\n    private var firebaseAuth: FirebaseAuth? = null\n    private var firebaseFireStore: FirebaseFirestore? = null\n    private var firebaseStore: FirebaseStorage? = null\n    private var storageReference: StorageReference? = null\n\n    var postLiveData = MutableLiveData<List<DocumentSnapshot>>()\n    fun loadPosts(){\n\n        firebaseAuth = FirebaseAuth.getInstance()\n        firebaseFireStore = FirebaseFirestore.getInstance()\n\n        firebaseFireStore!!.collection(\"posts\").get()\n            .addOnSuccessListener {\n//                postLiveData.value = it.documents[0].data.get(\"\")\n            }\n            .addOnFailureListener {\n\n            }\n\n    }\n\n}"
  },
  {
    "path": "app/src/main/java/com/project/farmingapp/viewmodel/UserDataViewModel.kt",
    "content": "package com.project.farmingapp.viewmodel\n\nimport android.content.Context\nimport android.util.Log\nimport android.widget.Toast\nimport androidx.lifecycle.MutableLiveData\nimport androidx.lifecycle.ViewModel\nimport com.google.firebase.firestore.DocumentSnapshot\nimport com.google.firebase.firestore.FieldValue\nimport com.google.firebase.firestore.FirebaseFirestore\nimport com.project.farmingapp.R\nimport com.project.farmingapp.view.user.UserFragment\nimport kotlinx.android.synthetic.main.fragment_user.*\nimport kotlinx.android.synthetic.main.nav_header.view.*\nimport kotlinx.coroutines.channels.consumesAll\n\nclass UserDataViewModel : ViewModel() {\n\n    var userliveData = MutableLiveData<DocumentSnapshot>()\n\n    fun getUserData(userId: String) {\n        val firebaseFireStore = FirebaseFirestore.getInstance()\n\n        firebaseFireStore.collection(\"users\").document(userId)\n            .get()\n            .addOnCompleteListener {\n                userliveData.value = it.result\n            }\n    }\n\n    fun updateUserField(context: Context, userID: String, about: String?, city: String?) {\n\n        if (about !=null) {\n            val firebaseFireStore = FirebaseFirestore.getInstance()\n            firebaseFireStore.collection(\"users\").document(\"${userID}\")\n                .update(\n                    mapOf(\n                        \"about\" to about\n                    )\n                )\n                .addOnSuccessListener {\n                    Log.d(\"UserDataViewModel\", \"User About Data Updated\")\n                    getUserData(userID)\n                }\n                .addOnFailureListener {\n                    Log.d(\"UserDataViewModel\", \"Failed to Update About User Data\")\n                    Toast.makeText(context, \"Failed to Update About. Try Again!\", Toast.LENGTH_SHORT).show()\n                }\n        }\n\n        if (city !=null) {\n            val firebaseFireStore = FirebaseFirestore.getInstance()\n            firebaseFireStore.collection(\"users\").document(\"${userID}\")\n                .update(\n                    mapOf(\n                        \"city\" to city\n                    )\n                )\n                .addOnSuccessListener {\n                    Log.d(\"UserDataViewModel\", \"User City Data Updated\")\n                    getUserData(userID)\n                }\n                .addOnFailureListener {\n                    Log.d(\"UserDataViewModel\", \"Failed to Update City User Data\")\n                    Toast.makeText(context, \"Failed to Update City Try Again!\", Toast.LENGTH_SHORT).show()\n                }\n        }\n        Toast.makeText(context, \"Profile Updated\", Toast.LENGTH_SHORT).show()\n    }\n\n    fun deleteUserPost(userId: String, postId: String){\n        val firebaseFirestore = FirebaseFirestore.getInstance()\n\n        firebaseFirestore.collection(\"posts\").document(postId)\n            .delete()\n            .addOnSuccessListener {\n                Log.d(\"User Data View Model\", \"Post Deleted\")\n                UserProfilePostsViewModel().getAllPosts(userId)\n                firebaseFirestore.collection(\"users\").document(userId).update(\"posts\", FieldValue.arrayRemove(\"${postId}\"))\n                    .addOnSuccessListener {\n                        Log.d(\"UserDataViewModel\", \"Successfully Deleted User Doc Post\")\n                        getUserData(userId)\n                    }\n                    .addOnFailureListener{\n                        Log.e(\"UserDataViewModel\", \"Failed to delete post from User Doc\")\n                    }\n            }\n            .addOnFailureListener {\n                Log.d(\"User Data View Model\", \"Failed to delete post\")\n            }\n    }\n}"
  },
  {
    "path": "app/src/main/java/com/project/farmingapp/viewmodel/UserProfilePostsViewModel.kt",
    "content": "package com.project.farmingapp.viewmodel\n\nimport android.util.Log\nimport androidx.lifecycle.MutableLiveData\nimport androidx.lifecycle.ViewModel\nimport com.google.firebase.firestore.DocumentSnapshot\nimport com.google.firebase.firestore.FirebaseFirestore\nimport com.project.farmingapp.model.data.Post\n\nlateinit var userProfilePostsLiveData : MutableLiveData<List<DocumentSnapshot>>\nclass UserProfilePostsViewModel : ViewModel() {\n\n    val userProfilePostsLiveData = MutableLiveData<ArrayList<HashMap<String, Any>>>()\n    val userProfilePostsLiveData2 = MutableLiveData<List<String>>()\n\n    val liveData1 = MutableLiveData<List<String>>()\n    val liveData2 = MutableLiveData<ArrayList<DocumentSnapshot>>()\n    val liveData3 = MutableLiveData<ArrayList<DocumentSnapshot>>()\n\n\n    fun getUserPosts(userID: String?) {\n        val firebaseFirestore = FirebaseFirestore.getInstance()\n        val firebaseFirestore2 = FirebaseFirestore.getInstance()\n\n        firebaseFirestore.collection(\"users\").document(\"${userID}\")\n            .get()\n            .addOnSuccessListener {\n                val allPostsIDs: List<String>? = it.get(\"posts\") as List<String>\n\n                userProfilePostsLiveData2.value = allPostsIDs\n                Log.d(\"User All Posts 3\", userProfilePostsLiveData2.value.toString())\n\n                var localPostList : ArrayList<HashMap<String, Any>>?= null\n\n                for (i in allPostsIDs!!) {\n                    firebaseFirestore2.collection(\"posts\").document(i)\n                        .get()\n                        .addOnSuccessListener {\n                            Log.d(\"User All Posts\", it.data.toString())\n//                            localPostList?.add(it)\n\n\n//                            var localData = it.data\n\n\n                            val someData = it.data as HashMap<String, Any>\n                            localPostList?.add(someData)\n                            if(localPostList!=null){\n                                Log.d(\"User All Posts 2\", localPostList.toString())\n                            }\n\n                            Log.d(\"User All Posts 4\", localPostList?.size.toString())\n                            userProfilePostsLiveData.value?.add(it.data as HashMap<String, Any>)\n                        }\n                        .addOnFailureListener {\n                            Log.d(\"User All Posts\", \"Some Failure Occured while fetching user posts\")\n                        }\n                }\n\n//                Log.d(\"User All Posts 2\", localPostList.toString())\n\n\n            }.addOnFailureListener {\n                Log.d(\"User All Posts 2\", \"Some Failure Occured while fetching user posts\")\n            }\n\n    }\n\n    fun getUserPostsIDs(userID: String?){\n        val firebaseFirestore = FirebaseFirestore.getInstance()\n\n        firebaseFirestore.collection(\"users\").document(userID!!)\n            .get()\n            .addOnSuccessListener {\n                liveData1.value = it.get(\"posts\") as List<String>\n            }\n    }\n\n    fun getAllPostsOfUser(listOfIDs : List<String>){\n        val firebaseFirestore = FirebaseFirestore.getInstance()\n        var someList = ArrayList<DocumentSnapshot>()\n        var i = 0\n        var j = listOfIDs.size\n        for (i in 0..j-1){\n            firebaseFirestore.collection(\"posts\").document(listOfIDs[i])\n                .get()\n                .addOnSuccessListener {\n                        someList.add(it)\n                        Log.d(\"LiveData2 - 2\", it.toString())\n                        Log.d(\"LiveData2 - 2\", someList.toString())\n//                        liveData2.value?.add(it!!)\n\n                }\n        }\n        if (i == j){\n            liveData2.value = someList\n            Log.d(\"LiveData2 - 1\", liveData2.value.toString())\n        }\n\n//        if(!someList.isNullOrEmpty()){\n////            liveData2.value = someList\n//            Log.d(\"LiveData2\", someList.toString())\n//\n//        }\n    }\n\n    fun getAllPosts(userId: String?){\n        val firebaseFirestore = FirebaseFirestore.getInstance()\n\n        firebaseFirestore.collection(\"posts\").whereEqualTo(\"userID\", userId)\n            .get()\n            .addOnSuccessListener {\n                liveData3.value = it.documents as ArrayList<DocumentSnapshot>\n                Log.d(\"UserPrlPostsViewModel\", \"Updated data\")\n            }\n            .addOnFailureListener {\n                Log.d(\"Error\", \"Error in all docs\")\n            }\n    }\n}"
  },
  {
    "path": "app/src/main/java/com/project/farmingapp/viewmodel/WeatherListener.kt",
    "content": "package com.project.farmingapp.viewmodel\n\nimport androidx.lifecycle.LiveData\n\ninterface WeatherListener {\n    fun onSuccess(authRepo: LiveData<String>)\n}"
  },
  {
    "path": "app/src/main/java/com/project/farmingapp/viewmodel/WeatherViewModel.kt",
    "content": "package com.project.farmingapp.viewmodel\n\nimport android.util.Log\nimport androidx.lifecycle.LiveData\nimport androidx.lifecycle.MutableLiveData\nimport androidx.lifecycle.ViewModel\nimport com.google.firebase.firestore.DocumentSnapshot\nimport com.project.farmingapp.adapter.WeatherAdapter\nimport com.project.farmingapp.model.WeatherApi\nimport com.project.farmingapp.model.WeatherRepository\nimport com.project.farmingapp.model.data.Weather\nimport com.project.farmingapp.model.data.WeatherRootList\nimport retrofit2.Call\nimport retrofit2.Callback\nimport retrofit2.Response\nimport kotlin.coroutines.coroutineContext\n\nclass WeatherViewModel : ViewModel() {\n    lateinit var Adapter: WeatherAdapter\n    lateinit var rootData: MutableLiveData<WeatherRootList>\n    var weatherListener: WeatherListener? = null\n\n    private var message1 = MutableLiveData<WeatherRootList>()\n    private var message2 = MutableLiveData<WeatherRootList>()\n\n    private var coordinates = MutableLiveData<List<String>>()\n\n    val _rootData1 = MutableLiveData<WeatherRootList>()\n    val rootData2: LiveData<WeatherRootList> = _rootData1\n\n\n    var newDataTrial = MutableLiveData<WeatherRootList>()\n\n\n    fun messageToB(msg: WeatherRootList){\n        message2.value = msg\n\n    }\n\n    fun messageToA(msg: WeatherRootList){\n        message1.value = msg\n    }\n\n    fun getMessageA(): MutableLiveData<WeatherRootList> {\n        return message1\n    }\n\n    fun getMessageB(): MutableLiveData<WeatherRootList>{\n        return message2\n    }\n\n    fun callWeatherRepository() {\n        val response = WeatherRepository().getWeather()\n//        val ss = response.value!!.list[0].dt_txt\n//        Log.d(\"ViewModel\", ss)\n        weatherListener?.onSuccess(response)\n    }\n\n    fun updateCoordinates(coords: List<String>){\n        coordinates.value = coords\n        Log.d(\"WeatherView\", coordinates.value.toString())\n    }\n\n    fun getCoordinates(): MutableLiveData<List<String>> {\n        return coordinates\n    }\n\n    fun updateNewData(){\n\n        val response: Call<WeatherRootList> =\n            WeatherApi.weatherInstances.getWeather(\"${coordinates.value?.get(0)}\", \"${coordinates.value?.get(1)}\")\n\n        Log.d(\"New Weather Updated\", \"Yes\")\n        Log.d(\"Weather Lat\", \"${coordinates.value?.get(0)}\")\n        Log.d(\"Weather Long\", \"${coordinates.value?.get(1)}\")\n        Log.d(\"Weather City\", \"${coordinates.value?.get(2)}\")\n\n        if (newDataTrial.value == null) {\n            response.enqueue(object : Callback<WeatherRootList> {\n                override fun onFailure(call: Call<WeatherRootList>, t: Throwable) {\n                    Log.d(\"WeatherRepository\", \"Error Occured\")\n                }\n\n                override fun onResponse(\n                    call: Call<WeatherRootList>,\n                    response: Response<WeatherRootList>\n                ) {\n                    if (response.isSuccessful) {\n                        newDataTrial.value = response.body()\n                    }\n                }\n            }\n            )\n        }\n    }\n}"
  },
  {
    "path": "app/src/main/java/com/project/farmingapp/viewmodel/YojnaViewModel.kt",
    "content": "package com.project.farmingapp.viewmodel\n\nimport android.util.Log\nimport androidx.lifecycle.MutableLiveData\nimport androidx.lifecycle.ViewModel\nimport com.google.firebase.firestore.DocumentSnapshot\nimport com.google.firebase.firestore.FirebaseFirestore\nimport com.google.firebase.storage.FirebaseStorage\n\nclass YojnaViewModel: ViewModel() {\n\n    lateinit var firebaseDb: FirebaseFirestore\n    lateinit var firebaseStorage: FirebaseStorage\n    var msg = MutableLiveData<HashMap<String, Any>>()\n    var message3 = MutableLiveData<List<DocumentSnapshot>>()\n\n\n    fun getYojna(name: String) {\n\n        firebaseStorage = FirebaseStorage.getInstance()\n        firebaseDb = FirebaseFirestore.getInstance()\n\n\n        firebaseDb.collection(\"yojnas\").document(\"${name}\")\n            .get()\n            .addOnSuccessListener {\n                msg.value = it.data as HashMap<String, Any>?\n                Log.d(\"YojnaViewModel\", msg.value.toString())\n            }\n            .addOnFailureListener {\n                Log.d(\"YojnaViewModel\", \"ss\")\n            }\n    }\n\n    fun getAllYojna(name: String){\n\n        if (message3.value.isNullOrEmpty()){\n            firebaseDb = FirebaseFirestore.getInstance()\n            firebaseDb.collection(name).get().addOnSuccessListener {\n//            var message3 = MutableLiveData<DocumentSnapshot>()\n\n                message3.value = it.documents\n                Log.d(\"I'm called4\", \"Yes\")\n//            Log.d(\"All articles\", it.documents[1].data.toString())\n            }\n        }\n\n    }\n    fun updateArticle(data: HashMap<String, Any>) {\n        Log.d(\"ArticleViewModel\", data.toString())\n        msg.value = data\n    }\n}"
  },
  {
    "path": "app/src/main/res/anim/fade_scale.xml",
    "content": "<?xml version=\"1.0\" encoding=\"utf-8\"?>\n<set xmlns:android=\"http://schemas.android.com/apk/res/android\">\n\n    <alpha\n        android:fromAlpha=\"0.0\"\n        android:toAlpha=\"1.0\"\n        android:duration=\"700\"\n        />\n    <scale\n        android:fromXScale=\"0.2\"\n        android:pivotX=\"50%\"\n        android:pivotY=\"50%\"\n        android:fromYScale=\"0.2\"\n        android:toXScale=\"1.0\"\n        android:toYScale=\"1.0\"\n        android:duration=\"1000\"\n        android:fillBefore=\"false\"\n        />\n</set>"
  },
  {
    "path": "app/src/main/res/anim/fade_transition.xml",
    "content": "<?xml version=\"1.0\" encoding=\"utf-8\"?>\n<set xmlns:android=\"http://schemas.android.com/apk/res/android\">\n    <alpha\n        android:fromAlpha=\"0.0\"\n        android:toAlpha=\"1.0\"\n        android:duration=\"300\"\n        />\n    <translate android:fromXDelta=\"-100%\"\n        android:toXDelta=\"0%\"\n        android:duration=\"500\"/>\n</set>"
  },
  {
    "path": "app/src/main/res/anim/fade_transition_opposite.xml",
    "content": "<?xml version=\"1.0\" encoding=\"utf-8\"?>\n<set xmlns:android=\"http://schemas.android.com/apk/res/android\">\n    <alpha\n        android:fromAlpha=\"0.0\"\n        android:toAlpha=\"1.0\"\n        android:duration=\"500\"\n        />\n    <translate android:fromXDelta=\"+200%\"\n        android:toXDelta=\"0%\"\n        android:duration=\"700\"/>\n</set>"
  },
  {
    "path": "app/src/main/res/color/chip_bg_states.xml",
    "content": "<?xml version=\"1.0\" encoding=\"utf-8\"?>\n<selector\n    xmlns:android=\"http://schemas.android.com/apk/res/android\">\n    <item\n        android:color=\"@color/greenlite\"\n        android:state_checked=\"true\"/>\n    <item android:color=\"@color/secondary\"/>\n</selector>\n\n"
  },
  {
    "path": "app/src/main/res/drawable/add_icon.xml",
    "content": "<vector xmlns:android=\"http://schemas.android.com/apk/res/android\"\n    android:width=\"24dp\"\n    android:height=\"24dp\"\n    android:viewportWidth=\"24\"\n    android:viewportHeight=\"24\"\n    android:tint=\"?attr/colorControlNormal\">\n  <path\n      android:fillColor=\"@android:color/white\"\n      android:pathData=\"M19,13h-6v6h-2v-6H5v-2h6V5h2v6h6v2z\"/>\n</vector>\n"
  },
  {
    "path": "app/src/main/res/drawable/all_buttons.xml",
    "content": "<?xml version=\"1.0\" encoding=\"utf-8\"?>\n<shape xmlns:android=\"http://schemas.android.com/apk/res/android\">\n    <stroke\n        android:color=\"#fff\"\n        />\n    <solid\n        android:color=\"#60AA39\"\n        />\n    <corners\n        android:radius=\"10dp\"\n        />\n</shape>"
  },
  {
    "path": "app/src/main/res/drawable/apmc_card_bg.xml",
    "content": "<?xml version=\"1.0\" encoding=\"utf-8\"?>\n\n\n<shape xmlns:android=\"http://schemas.android.com/apk/res/android\">\n    <solid android:color=\"@color/white\"></solid>\n    <stroke\n        android:width=\"1dp\"\n        android:color=\"@color/colorPrimary\" />\n    <corners android:radius=\"7dp\" />\n\n</shape>\n\n"
  },
  {
    "path": "app/src/main/res/drawable/chip_back.xml",
    "content": "<?xml version=\"1.0\" encoding=\"utf-8\"?>\n<selector xmlns:android=\"http://schemas.android.com/apk/res/android\">\n    <item android:state_checked=\"true\"\n        android:color=\"@color/colorPrimary\" />\n    <item android:state_checked=\"false\"\n        android:color=\"@color/secondary\" />\n</selector>"
  },
  {
    "path": "app/src/main/res/drawable/dash_home.xml",
    "content": "<vector xmlns:android=\"http://schemas.android.com/apk/res/android\"\n    android:width=\"24dp\"\n    android:height=\"24dp\"\n    android:viewportWidth=\"24\"\n    android:viewportHeight=\"24\"\n    android:tint=\"?attr/colorControlNormal\">\n  <path\n      android:fillColor=\"@android:color/white\"\n      android:pathData=\"M10,20v-6h4v6h5v-8h3L12,3 2,12h3v8z\"/>\n</vector>\n"
  },
  {
    "path": "app/src/main/res/drawable/ecommbackground.xml",
    "content": "<?xml version=\"1.0\" encoding=\"utf-8\"?>\n<shape xmlns:android=\"http://schemas.android.com/apk/res/android\">\n<solid android:color=\"@color/white\" />\n    <corners android:topLeftRadius=\"21dp\" android:topRightRadius=\"21dp\"/>\n    <stroke android:width=\".3dp\"\n        android:color=\"@color/colorPrimary\"\n        />\n\n</shape>"
  },
  {
    "path": "app/src/main/res/drawable/ecommborder.xml",
    "content": "<?xml version=\"1.0\" encoding=\"utf-8\"?>\n<shape xmlns:android=\"http://schemas.android.com/apk/res/android\">\n<solid android:color=\"@color/white\" />\n    <stroke android:color=\"@color/colorPrimary\" android:width=\"5dp\"/>\n\n\n</shape>"
  },
  {
    "path": "app/src/main/res/drawable/edit_back.xml",
    "content": "<?xml version=\"1.0\" encoding=\"utf-8\"?>\n<shape xmlns:android=\"http://schemas.android.com/apk/res/android\">\n\n    <solid android:color=\"#FFFFFF\"\n        />\n\n    <stroke\n        android:width=\"2dp\"\n        android:color=\"@color/secondary\"\n        />\n    <corners\n        android:radius=\"7dp\"\n\n        />\n\n</shape>"
  },
  {
    "path": "app/src/main/res/drawable/ic__keyboard_arrow_down.xml",
    "content": "<vector android:height=\"24dp\" android:tint=\"#60AA39\"\n    android:viewportHeight=\"24\" android:viewportWidth=\"24\"\n    android:width=\"24dp\" xmlns:android=\"http://schemas.android.com/apk/res/android\">\n    <path android:fillColor=\"@android:color/white\" android:pathData=\"M7.41,8.59L12,13.17l4.59,-4.58L18,10l-6,6 -6,-6 1.41,-1.41z\"/>\n</vector>\n"
  },
  {
    "path": "app/src/main/res/drawable/ic_baseline_check_24.xml",
    "content": "<vector android:height=\"24dp\" android:tint=\"#E2F2DA\"\n    android:viewportHeight=\"24\" android:viewportWidth=\"24\"\n    android:width=\"24dp\" xmlns:android=\"http://schemas.android.com/apk/res/android\">\n    <path android:fillColor=\"@android:color/white\" android:pathData=\"M9,16.17L4.83,12l-1.42,1.41L9,19 21,7l-1.41,-1.41z\"/>\n</vector>\n"
  },
  {
    "path": "app/src/main/res/drawable/ic_baseline_delete_forever_24.xml",
    "content": "<vector android:height=\"24dp\" android:tint=\"#79C551\"\n    android:viewportHeight=\"24\" android:viewportWidth=\"24\"\n    android:width=\"24dp\" xmlns:android=\"http://schemas.android.com/apk/res/android\">\n    <path android:fillColor=\"@android:color/white\" android:pathData=\"M6,19c0,1.1 0.9,2 2,2h8c1.1,0 2,-0.9 2,-2L18,7L6,7v12zM8.46,11.88l1.41,-1.41L12,12.59l2.12,-2.12 1.41,1.41L13.41,14l2.12,2.12 -1.41,1.41L12,15.41l-2.12,2.12 -1.41,-1.41L10.59,14l-2.13,-2.12zM15.5,4l-1,-1h-5l-1,1L5,4v2h14L19,4z\"/>\n</vector>\n"
  },
  {
    "path": "app/src/main/res/drawable/ic_baseline_edit_24.xml",
    "content": "<vector android:height=\"24dp\" android:tint=\"#E2F2DA\"\n    android:viewportHeight=\"24\" android:viewportWidth=\"24\"\n    android:width=\"24dp\" xmlns:android=\"http://schemas.android.com/apk/res/android\">\n    <path android:fillColor=\"@android:color/white\" android:pathData=\"M3,17.25V21h3.75L17.81,9.94l-3.75,-3.75L3,17.25zM20.71,7.04c0.39,-0.39 0.39,-1.02 0,-1.41l-2.34,-2.34c-0.39,-0.39 -1.02,-0.39 -1.41,0l-1.83,1.83 3.75,3.75 1.83,-1.83z\"/>\n</vector>\n"
  },
  {
    "path": "app/src/main/res/drawable/ic_baseline_local_shipping_24.xml",
    "content": "<vector android:height=\"24dp\" android:tint=\"#60AA39\"\n    android:viewportHeight=\"24\" android:viewportWidth=\"24\"\n    android:width=\"24dp\" xmlns:android=\"http://schemas.android.com/apk/res/android\">\n    <path android:fillColor=\"@android:color/white\" android:pathData=\"M20,8h-3L17,4L3,4c-1.1,0 -2,0.9 -2,2v11h2c0,1.66 1.34,3 3,3s3,-1.34 3,-3h6c0,1.66 1.34,3 3,3s3,-1.34 3,-3h2v-5l-3,-4zM6,18.5c-0.83,0 -1.5,-0.67 -1.5,-1.5s0.67,-1.5 1.5,-1.5 1.5,0.67 1.5,1.5 -0.67,1.5 -1.5,1.5zM19.5,9.5l1.96,2.5L17,12L17,9.5h2.5zM18,18.5c-0.83,0 -1.5,-0.67 -1.5,-1.5s0.67,-1.5 1.5,-1.5 1.5,0.67 1.5,1.5 -0.67,1.5 -1.5,1.5z\"/>\n</vector>\n"
  },
  {
    "path": "app/src/main/res/drawable/ic_baseline_photo_camera_24.xml",
    "content": "<vector android:height=\"50dp\" android:tint=\"#E2F2DA\"\n    android:viewportHeight=\"24\" android:viewportWidth=\"24\"\n    android:width=\"50dp\" xmlns:android=\"http://schemas.android.com/apk/res/android\">\n    <path android:fillColor=\"@android:color/white\" android:pathData=\"M12,12m-3.2,0a3.2,3.2 0,1 1,6.4 0a3.2,3.2 0,1 1,-6.4 0\"/>\n    <path android:fillColor=\"@android:color/white\" android:pathData=\"M9,2L7.17,4L4,4c-1.1,0 -2,0.9 -2,2v12c0,1.1 0.9,2 2,2h16c1.1,0 2,-0.9 2,-2L22,6c0,-1.1 -0.9,-2 -2,-2h-3.17L15,2L9,2zM12,17c-2.76,0 -5,-2.24 -5,-5s2.24,-5 5,-5 5,2.24 5,5 -2.24,5 -5,5z\"/>\n</vector>\n"
  },
  {
    "path": "app/src/main/res/drawable/ic_baseline_shopping_cart_24.xml",
    "content": "<vector xmlns:android=\"http://schemas.android.com/apk/res/android\"\n    android:width=\"24dp\"\n    android:height=\"24dp\"\n    android:viewportWidth=\"24\"\n    android:viewportHeight=\"24\"\n    android:tint=\"?attr/colorControlNormal\">\n  <path\n      android:fillColor=\"@android:color/white\"\n      android:pathData=\"M7,18c-1.1,0 -1.99,0.9 -1.99,2S5.9,22 7,22s2,-0.9 2,-2 -0.9,-2 -2,-2zM1,2v2h2l3.6,7.59 -1.35,2.45c-0.16,0.28 -0.25,0.61 -0.25,0.96 0,1.1 0.9,2 2,2h12v-2L7.42,15c-0.14,0 -0.25,-0.11 -0.25,-0.25l0.03,-0.12 0.9,-1.63h7.45c0.75,0 1.41,-0.41 1.75,-1.03l3.58,-6.49c0.08,-0.14 0.12,-0.31 0.12,-0.48 0,-0.55 -0.45,-1 -1,-1L5.21,4l-0.94,-2L1,2zM17,18c-1.1,0 -1.99,0.9 -1.99,2s0.89,2 1.99,2 2,-0.9 2,-2 -0.9,-2 -2,-2z\"/>\n</vector>\n"
  },
  {
    "path": "app/src/main/res/drawable/ic_baseline_trending_up_24.xml",
    "content": "<vector android:height=\"24dp\" android:tint=\"#60AA39\"\n    android:viewportHeight=\"24\" android:viewportWidth=\"24\"\n    android:width=\"24dp\" xmlns:android=\"http://schemas.android.com/apk/res/android\">\n    <path android:fillColor=\"@android:color/white\" android:pathData=\"M16,6l2.29,2.29 -4.88,4.88 -4,-4L2,16.59 3.41,18l6,-6 4,4 6.3,-6.29L22,12V6z\"/>\n</vector>\n"
  },
  {
    "path": "app/src/main/res/drawable/ic_high_temp.xml",
    "content": "<vector xmlns:android=\"http://schemas.android.com/apk/res/android\"\n    android:width=\"512dp\"\n    android:height=\"512dp\"\n    android:viewportWidth=\"512\"\n    android:viewportHeight=\"512\">\n  <path\n      android:pathData=\"m112,379.35v-203.35c0,-8.836 -7.164,-16 -16,-16s-16,7.164 -16,16v203.35c-14.113,6.185 -24,20.281 -24,36.65 0,22.056 17.944,40 40,40s40,-17.944 40,-40c0,-16.369 -9.887,-30.465 -24,-36.65z\"\n      android:fillColor=\"#ff0000\"/>\n  <path\n      android:pathData=\"m160,344.436v-280.436c0,-35.29 -28.71,-64 -64,-64s-64,28.71 -64,64v280.436c-20.434,18.205 -32,43.858 -32,71.564 0,52.935 43.065,96 96,96s96,-43.065 96,-96c0,-27.706 -11.566,-53.359 -32,-71.564zM96,480c-35.29,0 -64,-28.71 -64,-64 0,-20.317 9.334,-38.982 25.61,-51.208 4.023,-3.022 6.39,-7.761 6.39,-12.792v-288c0,-17.645 14.355,-32 32,-32s32,14.355 32,32v287.999c0,5.032 2.367,9.771 6.39,12.792 16.276,12.227 25.61,30.892 25.61,51.209 0,35.29 -28.71,64 -64,64z\"\n      android:fillColor=\"#ff0000\"/>\n  <path\n      android:pathData=\"m352,80c-44.112,0 -80,35.888 -80,80s35.888,80 80,80 80,-35.888 80,-80 -35.888,-80 -80,-80zM352,208c-26.467,0 -48,-21.533 -48,-48s21.533,-48 48,-48 48,21.533 48,48 -21.533,48 -48,48z\"\n      android:fillColor=\"#ff0000\"/>\n  <path\n      android:pathData=\"m352,53c8.836,0 16,-7.164 16,-16v-21c0,-8.836 -7.164,-16 -16,-16s-16,7.164 -16,16v21c0,8.836 7.164,16 16,16z\"\n      android:fillColor=\"#ff0000\"/>\n  <path\n      android:pathData=\"m352,267c-8.836,0 -16,7.164 -16,16v21c0,8.836 7.164,16 16,16s16,-7.164 16,-16v-21c0,-8.836 -7.164,-16 -16,-16z\"\n      android:fillColor=\"#ff0000\"/>\n  <path\n      android:pathData=\"m245,160c0,-8.836 -7.164,-16 -16,-16h-21c-8.836,0 -16,7.164 -16,16s7.164,16 16,16h21c8.836,0 16,-7.164 16,-16z\"\n      android:fillColor=\"#ff0000\"/>\n  <path\n      android:pathData=\"m496,144h-21c-8.836,0 -16,7.164 -16,16s7.164,16 16,16h21c8.836,0 16,-7.164 16,-16s-7.164,-16 -16,-16z\"\n      android:fillColor=\"#ff0000\"/>\n  <path\n      android:pathData=\"m253.409,84.036c6.247,6.248 16.379,6.249 22.627,0 6.249,-6.248 6.249,-16.379 0,-22.627l-14.546,-14.546c-6.248,-6.249 -16.379,-6.249 -22.627,0 -6.249,6.248 -6.249,16.379 0,22.627z\"\n      android:fillColor=\"#ff0000\"/>\n  <path\n      android:pathData=\"m450.591,235.964c-6.248,-6.249 -16.379,-6.249 -22.627,0 -6.249,6.248 -6.249,16.379 0,22.627l14.546,14.546c3.124,3.125 7.219,4.687 11.313,4.687 14.126,0 21.421,-17.206 11.313,-27.313z\"\n      android:fillColor=\"#ff0000\"/>\n  <path\n      android:pathData=\"m253.409,235.964 l-14.546,14.546c-6.249,6.248 -6.249,16.379 0,22.627 6.247,6.248 16.379,6.249 22.627,0l14.546,-14.546c6.249,-6.248 6.249,-16.379 0,-22.627 -6.248,-6.249 -16.379,-6.249 -22.627,0z\"\n      android:fillColor=\"#ff0000\"/>\n  <path\n      android:pathData=\"m439.277,88.723c4.095,0 8.189,-1.562 11.313,-4.687l14.546,-14.546c6.249,-6.248 6.249,-16.379 0,-22.627 -6.248,-6.249 -16.379,-6.249 -22.627,0l-14.546,14.546c-10.109,10.109 -2.811,27.314 11.314,27.314z\"\n      android:fillColor=\"#ff0000\"/>\n</vector>\n"
  },
  {
    "path": "app/src/main/res/drawable/ic_humidity.xml",
    "content": "<vector xmlns:android=\"http://schemas.android.com/apk/res/android\"\n    android:width=\"512dp\"\n    android:height=\"512dp\"\n    android:viewportWidth=\"511.448\"\n    android:viewportHeight=\"511.448\">\n  <path\n      android:pathData=\"M344.556,112.216C318.38,78.84 291.34,44.344 269.516,7.32c-5.76,-9.76 -21.824,-9.76 -27.552,0c-21.856,37.024 -48.896,71.52 -75.072,104.896c-53.056,67.68 -103.168,131.616 -103.168,207.232c0,105.888 86.112,192 192,192s192,-86.112 192,-192C447.724,243.832 397.612,179.896 344.556,112.216z\"\n      android:fillColor=\"#00aaff\"/>\n  <path\n      android:pathData=\"M207.724,287.448c-26.464,0 -48,-21.536 -48,-48s21.536,-48 48,-48s48,21.536 48,48S234.188,287.448 207.724,287.448zM207.724,223.448c-8.832,0 -16,7.168 -16,16s7.168,16 16,16s16,-7.168 16,-16S216.556,223.448 207.724,223.448z\"\n      android:fillColor=\"#fafafa\"/>\n  <path\n      android:pathData=\"M303.724,447.448c-26.464,0 -48,-21.536 -48,-48s21.536,-48 48,-48s48,21.536 48,48S330.188,447.448 303.724,447.448zM303.724,383.448c-8.8,0 -16,7.2 -16,16s7.2,16 16,16s16,-7.2 16,-16S312.524,383.448 303.724,383.448z\"\n      android:fillColor=\"#fafafa\"/>\n  <path\n      android:pathData=\"M175.724,415.448c-4.096,0 -8.192,-1.568 -11.328,-4.672c-6.24,-6.24 -6.24,-16.384 0,-22.624l160,-160c6.24,-6.24 16.384,-6.24 22.624,0s6.24,16.384 0,22.624l-160,160C183.916,413.88 179.82,415.448 175.724,415.448z\"\n      android:fillColor=\"#fafafa\"/>\n</vector>\n"
  },
  {
    "path": "app/src/main/res/drawable/ic_launcher_background.xml",
    "content": "<?xml version=\"1.0\" encoding=\"utf-8\"?>\n<vector xmlns:android=\"http://schemas.android.com/apk/res/android\"\n    android:width=\"108dp\"\n    android:height=\"108dp\"\n    android:viewportWidth=\"108\"\n    android:viewportHeight=\"108\">\n    <path\n        android:fillColor=\"#3DDC84\"\n        android:pathData=\"M0,0h108v108h-108z\" />\n    <path\n        android:fillColor=\"#00000000\"\n        android:pathData=\"M9,0L9,108\"\n        android:strokeWidth=\"0.8\"\n        android:strokeColor=\"#33FFFFFF\" />\n    <path\n        android:fillColor=\"#00000000\"\n        android:pathData=\"M19,0L19,108\"\n        android:strokeWidth=\"0.8\"\n        android:strokeColor=\"#33FFFFFF\" />\n    <path\n        android:fillColor=\"#00000000\"\n        android:pathData=\"M29,0L29,108\"\n        android:strokeWidth=\"0.8\"\n        android:strokeColor=\"#33FFFFFF\" />\n    <path\n        android:fillColor=\"#00000000\"\n        android:pathData=\"M39,0L39,108\"\n        android:strokeWidth=\"0.8\"\n        android:strokeColor=\"#33FFFFFF\" />\n    <path\n        android:fillColor=\"#00000000\"\n        android:pathData=\"M49,0L49,108\"\n        android:strokeWidth=\"0.8\"\n        android:strokeColor=\"#33FFFFFF\" />\n    <path\n        android:fillColor=\"#00000000\"\n        android:pathData=\"M59,0L59,108\"\n        android:strokeWidth=\"0.8\"\n        android:strokeColor=\"#33FFFFFF\" />\n    <path\n        android:fillColor=\"#00000000\"\n        android:pathData=\"M69,0L69,108\"\n        android:strokeWidth=\"0.8\"\n        android:strokeColor=\"#33FFFFFF\" />\n    <path\n        android:fillColor=\"#00000000\"\n        android:pathData=\"M79,0L79,108\"\n        android:strokeWidth=\"0.8\"\n        android:strokeColor=\"#33FFFFFF\" />\n    <path\n        android:fillColor=\"#00000000\"\n        android:pathData=\"M89,0L89,108\"\n        android:strokeWidth=\"0.8\"\n        android:strokeColor=\"#33FFFFFF\" />\n    <path\n        android:fillColor=\"#00000000\"\n        android:pathData=\"M99,0L99,108\"\n        android:strokeWidth=\"0.8\"\n        android:strokeColor=\"#33FFFFFF\" />\n    <path\n        android:fillColor=\"#00000000\"\n        android:pathData=\"M0,9L108,9\"\n        android:strokeWidth=\"0.8\"\n        android:strokeColor=\"#33FFFFFF\" />\n    <path\n        android:fillColor=\"#00000000\"\n        android:pathData=\"M0,19L108,19\"\n        android:strokeWidth=\"0.8\"\n        android:strokeColor=\"#33FFFFFF\" />\n    <path\n        android:fillColor=\"#00000000\"\n        android:pathData=\"M0,29L108,29\"\n        android:strokeWidth=\"0.8\"\n        android:strokeColor=\"#33FFFFFF\" />\n    <path\n        android:fillColor=\"#00000000\"\n        android:pathData=\"M0,39L108,39\"\n        android:strokeWidth=\"0.8\"\n        android:strokeColor=\"#33FFFFFF\" />\n    <path\n        android:fillColor=\"#00000000\"\n        android:pathData=\"M0,49L108,49\"\n        android:strokeWidth=\"0.8\"\n        android:strokeColor=\"#33FFFFFF\" />\n    <path\n        android:fillColor=\"#00000000\"\n        android:pathData=\"M0,59L108,59\"\n        android:strokeWidth=\"0.8\"\n        android:strokeColor=\"#33FFFFFF\" />\n    <path\n        android:fillColor=\"#00000000\"\n        android:pathData=\"M0,69L108,69\"\n        android:strokeWidth=\"0.8\"\n        android:strokeColor=\"#33FFFFFF\" />\n    <path\n        android:fillColor=\"#00000000\"\n        android:pathData=\"M0,79L108,79\"\n        android:strokeWidth=\"0.8\"\n        android:strokeColor=\"#33FFFFFF\" />\n    <path\n        android:fillColor=\"#00000000\"\n        android:pathData=\"M0,89L108,89\"\n        android:strokeWidth=\"0.8\"\n        android:strokeColor=\"#33FFFFFF\" />\n    <path\n        android:fillColor=\"#00000000\"\n        android:pathData=\"M0,99L108,99\"\n        android:strokeWidth=\"0.8\"\n        android:strokeColor=\"#33FFFFFF\" />\n    <path\n        android:fillColor=\"#00000000\"\n        android:pathData=\"M19,29L89,29\"\n        android:strokeWidth=\"0.8\"\n        android:strokeColor=\"#33FFFFFF\" />\n    <path\n        android:fillColor=\"#00000000\"\n        android:pathData=\"M19,39L89,39\"\n        android:strokeWidth=\"0.8\"\n        android:strokeColor=\"#33FFFFFF\" />\n    <path\n        android:fillColor=\"#00000000\"\n        android:pathData=\"M19,49L89,49\"\n        android:strokeWidth=\"0.8\"\n        android:strokeColor=\"#33FFFFFF\" />\n    <path\n        android:fillColor=\"#00000000\"\n        android:pathData=\"M19,59L89,59\"\n        android:strokeWidth=\"0.8\"\n        android:strokeColor=\"#33FFFFFF\" />\n    <path\n        android:fillColor=\"#00000000\"\n        android:pathData=\"M19,69L89,69\"\n        android:strokeWidth=\"0.8\"\n        android:strokeColor=\"#33FFFFFF\" />\n    <path\n        android:fillColor=\"#00000000\"\n        android:pathData=\"M19,79L89,79\"\n        android:strokeWidth=\"0.8\"\n        android:strokeColor=\"#33FFFFFF\" />\n    <path\n        android:fillColor=\"#00000000\"\n        android:pathData=\"M29,19L29,89\"\n        android:strokeWidth=\"0.8\"\n        android:strokeColor=\"#33FFFFFF\" />\n    <path\n        android:fillColor=\"#00000000\"\n        android:pathData=\"M39,19L39,89\"\n        android:strokeWidth=\"0.8\"\n        android:strokeColor=\"#33FFFFFF\" />\n    <path\n        android:fillColor=\"#00000000\"\n        android:pathData=\"M49,19L49,89\"\n        android:strokeWidth=\"0.8\"\n        android:strokeColor=\"#33FFFFFF\" />\n    <path\n        android:fillColor=\"#00000000\"\n        android:pathData=\"M59,19L59,89\"\n        android:strokeWidth=\"0.8\"\n        android:strokeColor=\"#33FFFFFF\" />\n    <path\n        android:fillColor=\"#00000000\"\n        android:pathData=\"M69,19L69,89\"\n        android:strokeWidth=\"0.8\"\n        android:strokeColor=\"#33FFFFFF\" />\n    <path\n        android:fillColor=\"#00000000\"\n        android:pathData=\"M79,19L79,89\"\n        android:strokeWidth=\"0.8\"\n        android:strokeColor=\"#33FFFFFF\" />\n</vector>\n"
  },
  {
    "path": "app/src/main/res/drawable/ic_low_temp.xml",
    "content": "<vector xmlns:android=\"http://schemas.android.com/apk/res/android\"\n    android:width=\"512dp\"\n    android:height=\"512dp\"\n    android:viewportWidth=\"512\"\n    android:viewportHeight=\"512\">\n  <path\n      android:pathData=\"m112,379.35v-51.35c0,-8.836 -7.164,-16 -16,-16s-16,7.164 -16,16v51.35c-14.113,6.185 -24,20.281 -24,36.65 0,22.056 17.944,40 40,40s40,-17.944 40,-40c0,-16.369 -9.887,-30.465 -24,-36.65z\"\n      android:fillColor=\"#00aaff\"/>\n  <path\n      android:pathData=\"m160,344.436v-280.436c0,-35.29 -28.71,-64 -64,-64s-64,28.71 -64,64v280.436c-20.434,18.205 -32,43.858 -32,71.564 0,52.935 43.065,96 96,96s96,-43.065 96,-96c0,-27.706 -11.566,-53.359 -32,-71.564zM96,480c-35.29,0 -64,-28.71 -64,-64 0,-20.317 9.334,-38.982 25.61,-51.208 4.023,-3.022 6.39,-7.761 6.39,-12.792v-288c0,-17.645 14.355,-32 32,-32s32,14.355 32,32v287.999c0,5.032 2.367,9.771 6.39,12.792 16.276,12.227 25.61,30.892 25.61,51.209 0,35.29 -28.71,64 -64,64z\"\n      android:fillColor=\"#00aaff\"/>\n  <path\n      android:pathData=\"m496,144h-25.373l12.687,-12.687c6.249,-6.248 6.249,-16.379 0,-22.627 -6.248,-6.249 -16.379,-6.249 -22.627,0l-35.313,35.314h-19.715c-2.54,-8.501 -7.048,-16.155 -12.994,-22.442l9.874,-17.101 48.243,-12.926c8.536,-2.287 13.602,-11.061 11.314,-19.596 -2.287,-8.534 -11.058,-13.601 -19.596,-11.314l-17.332,4.644 12.689,-21.976c4.417,-7.653 1.795,-17.438 -5.858,-21.856 -7.651,-4.417 -17.438,-1.796 -21.856,5.858l-12.686,21.971 -4.643,-17.328c-2.287,-8.535 -11.058,-13.602 -19.596,-11.314 -8.536,2.287 -13.602,11.061 -11.314,19.596l12.925,48.236 -9.861,17.079c-8.575,-2.042 -17.35,-2.044 -25.935,0l-9.861,-17.079 12.925,-48.236c2.287,-8.535 -2.778,-17.309 -11.313,-19.596 -8.536,-2.288 -17.309,2.778 -19.597,11.313l-4.643,17.327 -12.686,-21.972c-4.419,-7.653 -14.204,-10.276 -21.856,-5.858 -7.653,4.417 -10.275,14.203 -5.858,21.856l12.69,21.977 -17.331,-4.644c-8.538,-2.288 -17.31,2.779 -19.596,11.313 -2.287,8.536 2.778,17.309 11.313,19.596l48.244,12.927 9.874,17.1c-5.946,6.287 -10.455,13.94 -12.994,22.442h-19.714l-35.313,-35.313c-6.248,-6.249 -16.379,-6.249 -22.627,0 -6.249,6.248 -6.249,16.379 0,22.627l12.683,12.689h-25.373c-8.836,0 -16,7.164 -16,16s7.164,16 16,16h25.373l-12.686,12.687c-10.11,10.108 -2.812,27.313 11.313,27.313 4.095,0 8.189,-1.562 11.313,-4.687l35.314,-35.313h19.714c2.54,8.501 7.048,16.155 12.994,22.442l-9.873,17.1 -48.244,12.927c-8.536,2.287 -13.601,11.06 -11.313,19.596 2.286,8.535 11.051,13.601 19.596,11.313l17.332,-4.644 -12.69,21.978c-6.185,10.717 1.655,24.002 13.843,24.002 5.529,0 10.908,-2.871 13.872,-8.004l12.686,-21.972 4.643,17.327c1.916,7.149 8.38,11.863 15.445,11.863 10.52,0 18.187,-9.988 15.465,-20.145l-12.925,-48.235 9.861,-17.079c8.575,2.042 17.35,2.044 25.935,0l9.861,17.079 -12.924,48.236c-2.723,10.161 4.949,20.145 15.465,20.145 7.064,0 13.529,-4.715 15.445,-11.863l4.642,-17.327 12.686,21.971c2.964,5.134 8.342,8.004 13.872,8.004 12.175,0 20.035,-13.273 13.843,-24.002l-12.689,-21.976 17.333,4.644c8.532,2.289 17.308,-2.778 19.596,-11.313 2.287,-8.536 -2.778,-17.309 -11.314,-19.596l-48.244,-12.927 -9.874,-17.101c5.946,-6.287 10.455,-13.94 12.994,-22.442h19.716l35.313,35.313c3.124,3.125 7.219,4.687 11.313,4.687 14.125,0 21.424,-17.205 11.313,-27.313l-12.687,-12.688h25.372c8.837,0 16,-7.164 16,-16s-7.163,-16 -16,-16zM328,160c0,-13.234 10.767,-24 24,-24s24,10.766 24,24 -10.767,24 -24,24 -24,-10.766 -24,-24z\"\n      android:fillColor=\"#00aaff\"/>\n</vector>\n"
  },
  {
    "path": "app/src/main/res/drawable/ic_user_profile.xml",
    "content": "<vector android:height=\"24dp\" android:tint=\"#60AA39\"\n    android:viewportHeight=\"24\" android:viewportWidth=\"24\"\n    android:width=\"24dp\" xmlns:android=\"http://schemas.android.com/apk/res/android\">\n    <path android:fillColor=\"@android:color/white\" android:pathData=\"M12,2C6.48,2 2,6.48 2,12s4.48,10 10,10 10,-4.48 10,-10S17.52,2 12,2zM12,5c1.66,0 3,1.34 3,3s-1.34,3 -3,3 -3,-1.34 -3,-3 1.34,-3 3,-3zM12,19.2c-2.5,0 -4.71,-1.28 -6,-3.22 0.03,-1.99 4,-3.08 6,-3.08 1.99,0 5.97,1.09 6,3.08 -1.29,1.94 -3.5,3.22 -6,3.22z\"/>\n</vector>\n"
  },
  {
    "path": "app/src/main/res/drawable/indicator_active.xml",
    "content": "<?xml version=\"1.0\" encoding=\"utf-8\"?>\n<shape xmlns:android=\"http://schemas.android.com/apk/res/android\"\n    android:shape=\"rectangle\">\n\n    <solid android:color=\"#fff\" />\n    <size\n        android:width=\"25dp\"\n        android:height=\"10dp\" />\n\n    <corners android:radius=\"20dp\" />\n\n</shape>"
  },
  {
    "path": "app/src/main/res/drawable/indicator_inactive.xml",
    "content": "<?xml version=\"1.0\" encoding=\"utf-8\"?>\n<shape xmlns:android=\"http://schemas.android.com/apk/res/android\"\n    android:shape=\"oval\">\n    <solid android:color=\"#fff\"\n\n        />\n    <size\n        android:width=\"10dp\"\n        android:height=\"10dp\"\n        />\n\n</shape>"
  },
  {
    "path": "app/src/main/res/drawable/minus_icon.xml",
    "content": "<vector xmlns:android=\"http://schemas.android.com/apk/res/android\"\n    android:width=\"24dp\"\n    android:height=\"24dp\"\n    android:viewportWidth=\"24\"\n    android:viewportHeight=\"24\"\n    android:tint=\"?attr/colorControlNormal\">\n  <path\n      android:fillColor=\"@android:color/white\"\n      android:pathData=\"M19,13H5v-2h14v2z\"/>\n</vector>\n"
  },
  {
    "path": "app/src/main/res/drawable/post_border.xml",
    "content": "<?xml version=\"1.0\" encoding=\"utf-8\"?>\n<shape\n    xmlns:android=\"http://schemas.android.com/apk/res/android\"\n    android:shape= \"rectangle\"  >\n    <stroke android:width=\"0.1dp\"  android:color=\"#46404A3A\"/>\n</shape>"
  },
  {
    "path": "app/src/main/res/drawable/post_logo.xml",
    "content": "<vector xmlns:android=\"http://schemas.android.com/apk/res/android\"\n    android:width=\"24dp\"\n    android:height=\"24dp\"\n    android:viewportWidth=\"24\"\n    android:viewportHeight=\"24\"\n    android:tint=\"?attr/colorControlNormal\">\n  <path\n      android:fillColor=\"@android:color/white\"\n      android:pathData=\"M12,12.75c1.63,0 3.07,0.39 4.24,0.9c1.08,0.48 1.76,1.56 1.76,2.73L18,18H6l0,-1.61c0,-1.18 0.68,-2.26 1.76,-2.73C8.93,13.14 10.37,12.75 12,12.75zM4,13c1.1,0 2,-0.9 2,-2c0,-1.1 -0.9,-2 -2,-2s-2,0.9 -2,2C2,12.1 2.9,13 4,13zM5.13,14.1C4.76,14.04 4.39,14 4,14c-0.99,0 -1.93,0.21 -2.78,0.58C0.48,14.9 0,15.62 0,16.43V18l4.5,0v-1.61C4.5,15.56 4.73,14.78 5.13,14.1zM20,13c1.1,0 2,-0.9 2,-2c0,-1.1 -0.9,-2 -2,-2s-2,0.9 -2,2C18,12.1 18.9,13 20,13zM24,16.43c0,-0.81 -0.48,-1.53 -1.22,-1.85C21.93,14.21 20.99,14 20,14c-0.39,0 -0.76,0.04 -1.13,0.1c0.4,0.68 0.63,1.46 0.63,2.29V18l4.5,0V16.43zM12,6c1.66,0 3,1.34 3,3c0,1.66 -1.34,3 -3,3s-3,-1.34 -3,-3C9,7.34 10.34,6 12,6z\"/>\n</vector>\n"
  },
  {
    "path": "app/src/main/res/drawable/progress_background.xml",
    "content": "<?xml version=\"1.0\" encoding=\"utf-8\"?>\n<rotate xmlns:android=\"http://schemas.android.com/apk/res/android\"\n    android:pivotX=\"50%\"\n    android:pivotY=\"50%\"\n\n    android:fromDegrees=\"0\"\n    android:toDegrees=\"360\">\n\n    <shape\n        android:shape=\"ring\"\n        android:innerRadiusRatio=\"3\"\n        android:thicknessRatio=\"8\"\n        android:useLevel=\"false\">\n\n        <size\n            android:width=\"76dip\"\n            android:height=\"76dip\" />\n\n        <gradient\n            android:type=\"sweep\"\n            android:useLevel=\"false\"\n            android:startColor=\"@color/colorPrimary\"\n            android:endColor=\"@color/colorThird\"\n            android:angle=\"0\"/>\n\n    </shape>\n\n</rotate>"
  },
  {
    "path": "app/src/main/res/drawable/round_borderless_general.xml",
    "content": "<?xml version=\"1.0\" encoding=\"utf-8\"?>\n<shape xmlns:android=\"http://schemas.android.com/apk/res/android\">\n\n    <corners\n        android:radius=\"7dp\"\n        />\n\n</shape>"
  },
  {
    "path": "app/src/main/res/drawable/rounder_border_general.xml",
    "content": "<?xml version=\"1.0\" encoding=\"utf-8\"?>\n<shape xmlns:android=\"http://schemas.android.com/apk/res/android\">\n\n    <corners\n        android:radius=\"7dp\"\n        />\n    <stroke\n        android:width=\"0.3dp\"\n        android:color=\"@color/fontColor\"\n        />\n\n</shape>"
  },
  {
    "path": "app/src/main/res/drawable/table_border.xml",
    "content": "<?xml version=\"1.0\" encoding=\"utf-8\"?>\n<shape\n    xmlns:android=\"http://schemas.android.com/apk/res/android\"\n    android:shape= \"rectangle\"  >\n<corners android:radius=\"10dp\"/>\n    <stroke android:width=\".3dp\"  android:color=\"@color/colorPrimary\"/>\n</shape>"
  },
  {
    "path": "app/src/main/res/drawable/table_leftbottom_border.xml",
    "content": "<?xml version=\"1.0\" encoding=\"utf-8\"?>\n<shape\n    xmlns:android=\"http://schemas.android.com/apk/res/android\"\n    android:shape= \"rectangle\"  >\n    <corners\n        android:bottomLeftRadius=\"7dp\"/>\n    <stroke android:width=\"1dp\"  android:color=\"@color/colorPrimary\"/>\n</shape>"
  },
  {
    "path": "app/src/main/res/drawable/table_lefttop_border.xml",
    "content": "<?xml version=\"1.0\" encoding=\"utf-8\"?>\n<shape\n    xmlns:android=\"http://schemas.android.com/apk/res/android\"\n    android:shape= \"rectangle\"  >\n    <corners\n        android:topLeftRadius=\"7dp\"/>\n    <stroke android:width=\"1dp\"  android:color=\"@color/colorPrimary\"/>\n</shape>"
  },
  {
    "path": "app/src/main/res/drawable/table_rightbottom_border.xml",
    "content": "<?xml version=\"1.0\" encoding=\"utf-8\"?>\n<shape\n    xmlns:android=\"http://schemas.android.com/apk/res/android\"\n    android:shape= \"rectangle\"  >\n    <corners\n        android:bottomRightRadius=\"7dp\"/>\n    <stroke android:width=\"1dp\"  android:color=\"@color/colorPrimary\"/>\n</shape>"
  },
  {
    "path": "app/src/main/res/drawable/table_righttop_border.xml",
    "content": "<?xml version=\"1.0\" encoding=\"utf-8\"?>\n<shape\n    xmlns:android=\"http://schemas.android.com/apk/res/android\"\n    android:shape= \"rectangle\"  >\n    <corners\n        android:topRightRadius=\"7dp\"/>\n    <stroke android:width=\"1dp\"  android:color=\"@color/colorPrimary\"/>\n</shape>"
  },
  {
    "path": "app/src/main/res/drawable/weather_rcyclr_bg.xml",
    "content": "<?xml version=\"1.0\" encoding=\"utf-8\"?>\n<shape xmlns:android=\"http://schemas.android.com/apk/res/android\"\n    android:shape=\"rectangle\"\n\n    >\n<corners android:topRightRadius=\"21dp\" android:topLeftRadius=\"21dp\"/>\n<solid android:color=\"@color/white\"/>\n\n</shape>"
  },
  {
    "path": "app/src/main/res/drawable-v24/ic_launcher_foreground.xml",
    "content": "<vector xmlns:android=\"http://schemas.android.com/apk/res/android\"\n    xmlns:aapt=\"http://schemas.android.com/aapt\"\n    android:width=\"108dp\"\n    android:height=\"108dp\"\n    android:viewportWidth=\"108\"\n    android:viewportHeight=\"108\">\n    <path android:pathData=\"M31,63.928c0,0 6.4,-11 12.1,-13.1c7.2,-2.6 26,-1.4 26,-1.4l38.1,38.1L107,108.928l-32,-1L31,63.928z\">\n        <aapt:attr name=\"android:fillColor\">\n            <gradient\n                android:endX=\"85.84757\"\n                android:endY=\"92.4963\"\n                android:startX=\"42.9492\"\n                android:startY=\"49.59793\"\n                android:type=\"linear\">\n                <item\n                    android:color=\"#44000000\"\n                    android:offset=\"0.0\" />\n                <item\n                    android:color=\"#00000000\"\n                    android:offset=\"1.0\" />\n            </gradient>\n        </aapt:attr>\n    </path>\n    <path\n        android:fillColor=\"#FFFFFF\"\n        android:fillType=\"nonZero\"\n        android:pathData=\"M65.3,45.828l3.8,-6.6c0.2,-0.4 0.1,-0.9 -0.3,-1.1c-0.4,-0.2 -0.9,-0.1 -1.1,0.3l-3.9,6.7c-6.3,-2.8 -13.4,-2.8 -19.7,0l-3.9,-6.7c-0.2,-0.4 -0.7,-0.5 -1.1,-0.3C38.8,38.328 38.7,38.828 38.9,39.228l3.8,6.6C36.2,49.428 31.7,56.028 31,63.928h46C76.3,56.028 71.8,49.428 65.3,45.828zM43.4,57.328c-0.8,0 -1.5,-0.5 -1.8,-1.2c-0.3,-0.7 -0.1,-1.5 0.4,-2.1c0.5,-0.5 1.4,-0.7 2.1,-0.4c0.7,0.3 1.2,1 1.2,1.8C45.3,56.528 44.5,57.328 43.4,57.328L43.4,57.328zM64.6,57.328c-0.8,0 -1.5,-0.5 -1.8,-1.2s-0.1,-1.5 0.4,-2.1c0.5,-0.5 1.4,-0.7 2.1,-0.4c0.7,0.3 1.2,1 1.2,1.8C66.5,56.528 65.6,57.328 64.6,57.328L64.6,57.328z\"\n        android:strokeWidth=\"1\"\n        android:strokeColor=\"#00000000\" />\n</vector>"
  },
  {
    "path": "app/src/main/res/font/lato.xml",
    "content": "<?xml version=\"1.0\" encoding=\"utf-8\"?>\n<font-family xmlns:app=\"http://schemas.android.com/apk/res-auto\"\n        app:fontProviderAuthority=\"com.google.android.gms.fonts\"\n        app:fontProviderPackage=\"com.google.android.gms\"\n        app:fontProviderQuery=\"Lato\"\n        app:fontProviderCerts=\"@array/com_google_android_gms_fonts_certs\">\n</font-family>\n"
  },
  {
    "path": "app/src/main/res/font/lato_bold.xml",
    "content": "<?xml version=\"1.0\" encoding=\"utf-8\"?>\n<font-family xmlns:app=\"http://schemas.android.com/apk/res-auto\"\n        app:fontProviderAuthority=\"com.google.android.gms.fonts\"\n        app:fontProviderPackage=\"com.google.android.gms\"\n        app:fontProviderQuery=\"name=Lato&amp;weight=700\"\n        app:fontProviderCerts=\"@array/com_google_android_gms_fonts_certs\">\n</font-family>\n"
  },
  {
    "path": "app/src/main/res/font/lato_light.xml",
    "content": "<?xml version=\"1.0\" encoding=\"utf-8\"?>\n<font-family xmlns:app=\"http://schemas.android.com/apk/res-auto\"\n        app:fontProviderAuthority=\"com.google.android.gms.fonts\"\n        app:fontProviderPackage=\"com.google.android.gms\"\n        app:fontProviderQuery=\"name=Lato&amp;weight=300\"\n        app:fontProviderCerts=\"@array/com_google_android_gms_fonts_certs\">\n</font-family>\n"
  },
  {
    "path": "app/src/main/res/layout/activity_dashboard.xml",
    "content": "<?xml version=\"1.0\" encoding=\"utf-8\"?>\n\n<layout  xmlns:android=\"http://schemas.android.com/apk/res/android\"\n    xmlns:app=\"http://schemas.android.com/apk/res-auto\"\n    xmlns:tools=\"http://schemas.android.com/tools\">\n\n    <data\n        >\n        <variable\n            name=\"userDataViewModel\"\n            type=\"com.project.farmingapp.viewmodel.UserDataViewModel\" />\n    </data>\n<androidx.drawerlayout.widget.DrawerLayout\n    android:layout_width=\"match_parent\"\n    android:layout_height=\"match_parent\"\n    android:id=\"@+id/drawerLayout\"\n    tools:openDrawer=\"start\"\n    >\n\n    <include\n        layout=\"@layout/app_bar_main\"\n        android:layout_width=\"match_parent\"\n        android:layout_height=\"match_parent\" />\n\n    <com.google.android.material.navigation.NavigationView\n        android:id=\"@+id/navView\"\n        android:layout_width=\"wrap_content\"\n        android:layout_height=\"match_parent\"\n        android:layout_gravity=\"start\"\n        android:background=\"#fff\"\n        android:fitsSystemWindows=\"true\"\n        \n        app:headerLayout=\"@layout/nav_header\"\n        app:menu=\"@menu/nav_drawer_menu\" />\n</androidx.drawerlayout.widget.DrawerLayout>\n</layout>"
  },
  {
    "path": "app/src/main/res/layout/activity_intro.xml",
    "content": "<?xml version=\"1.0\" encoding=\"utf-8\"?>\n<androidx.constraintlayout.widget.ConstraintLayout xmlns:android=\"http://schemas.android.com/apk/res/android\"\n    xmlns:app=\"http://schemas.android.com/apk/res-auto\"\n    xmlns:tools=\"http://schemas.android.com/tools\"\n    android:layout_width=\"match_parent\"\n    android:layout_height=\"match_parent\"\n    tools:context=\".view.introscreen.IntroActivity\">\n\n    <androidx.viewpager2.widget.ViewPager2\n        android:id=\"@+id/sliderViewPager\"\n        android:layout_width=\"match_parent\"\n        android:layout_height=\"match_parent\"\n        app:layout_constraintEnd_toEndOf=\"parent\"\n        app:layout_constraintStart_toStartOf=\"parent\"\n        app:layout_constraintTop_toTopOf=\"parent\">\n\n    </androidx.viewpager2.widget.ViewPager2>\n\n    <!--    <include-->\n    <!--        layout=\"@layout/single_slider_screen\"-->\n    <!--        app:layout_constraintStart_toStartOf=\"parent\"-->\n    <!--        app:layout_constraintEnd_toEndOf=\"parent\"-->\n    <!--        app:layout_constraintTop_toTopOf=\"parent\"-->\n    <!--        />-->\n    <TextView\n        android:id=\"@+id/skipIntro\"\n        android:layout_width=\"wrap_content\"\n        android:layout_height=\"wrap_content\"\n        android:layout_margin=\"21dp\"\n        android:fontFamily=\"@font/lato_light\"\n        android:text=\"Skip\"\n        android:textColor=\"#fff\"\n        android:textSize=\"18sp\"\n        android:textStyle=\"bold\"\n        app:layout_constraintEnd_toEndOf=\"parent\"\n        app:layout_constraintTop_toTopOf=\"parent\" />\n\n    <Button\n        android:id=\"@+id/nextBtn\"\n        android:layout_width=\"match_parent\"\n        android:layout_height=\"60dp\"\n        android:layout_marginHorizontal=\"14dp\"\n        android:layout_marginBottom=\"150dp\"\n        android:backgroundTint=\"@color/colorThird\"\n        android:fontFamily=\"@font/lato_bold\"\n        android:text=\"Next\"\n        android:textAllCaps=\"false\"\n        android:textColor=\"#fff\"\n        android:background=\"@drawable/all_buttons\"\n        android:textSize=\"21sp\"\n        android:textStyle=\"bold\"\n        app:layout_constraintBottom_toBottomOf=\"parent\"\n        app:layout_constraintEnd_toEndOf=\"parent\"\n        app:layout_constraintStart_toStartOf=\"parent\" />\n\n    <LinearLayout\n        android:id=\"@+id/sliderballs_container\"\n        android:layout_width=\"wrap_content\"\n        android:layout_height=\"wrap_content\"\n        android:layout_marginVertical=\"25dp\"\n        android:orientation=\"horizontal\"\n        app:layout_constraintEnd_toEndOf=\"parent\"\n        app:layout_constraintStart_toStartOf=\"parent\"\n        app:layout_constraintTop_toBottomOf=\"@id/nextBtn\" />\n\n</androidx.constraintlayout.widget.ConstraintLayout>"
  },
  {
    "path": "app/src/main/res/layout/activity_login.xml",
    "content": "<?xml version=\"1.0\" encoding=\"utf-8\"?>\n\n<layout xmlns:android=\"http://schemas.android.com/apk/res/android\"\n    xmlns:app=\"http://schemas.android.com/apk/res-auto\"\n    xmlns:tools=\"http://schemas.android.com/tools\">\n    <data>\n        <variable\n            name=\"authViewModel\"\n            type=\"com.project.farmingapp.viewmodel.AuthViewModel\" />\n    </data>\n\n    <ScrollView\n        android:layout_width=\"match_parent\"\n        android:fillViewport=\"true\"\n        android:theme=\"@style/AppTheme2\"\n        android:layout_height=\"match_parent\">\n\n        <androidx.constraintlayout.widget.ConstraintLayout\n            android:layout_width=\"match_parent\"\n            android:layout_height=\"match_parent\"\n\n            android:background=\"@drawable/authback\"\n            tools:context=\".view.auth.LoginActivity\">\n\n\n            <TextView\n                android:id=\"@+id/titleTextLogin\"\n                android:layout_width=\"wrap_content\"\n                android:layout_height=\"wrap_content\"\n                android:text=\"Farming App\"\n                android:textColor=\"#fff\"\n                android:textSize=\"30sp\"\n                android:textStyle=\"bold\"\n                app:layout_constraintBottom_toTopOf=\"@id/title2TextLogin\"\n                app:layout_constraintEnd_toEndOf=\"parent\"\n                app:layout_constraintStart_toStartOf=\"parent\"\n                app:layout_constraintTop_toTopOf=\"parent\"\n                />\n\n            <TextView\n                android:id=\"@+id/title2TextLogin\"\n                android:layout_width=\"wrap_content\"\n                android:layout_height=\"wrap_content\"\n                android:text=\"Login\"\n                android:textSize=\"17sp\"\n                android:textColor=\"#fff\"\n                app:layout_constraintBottom_toTopOf=\"@id/guide2\"\n                app:layout_constraintEnd_toEndOf=\"parent\"\n                app:layout_constraintHorizontal_bias=\"0.5\"\n                app:layout_constraintStart_toStartOf=\"parent\"\n                app:layout_constraintTop_toBottomOf=\"@id/titleTextLogin\" />\n\n            <androidx.constraintlayout.widget.Guideline\n                android:id=\"@+id/guide2\"\n                android:layout_width=\"match_parent\"\n                android:layout_height=\"wrap_content\"\n                android:orientation=\"horizontal\"\n                app:layout_constraintGuide_percent=\"0.15\" />\n            <ProgressBar\n                android:id=\"@+id/progressLogin\"\n                android:visibility=\"invisible\"\n                android:layout_width=\"wrap_content\"\n                android:layout_height=\"wrap_content\"\n                app:layout_constraintBottom_toBottomOf=\"parent\"\n                app:layout_constraintEnd_toEndOf=\"parent\"\n                app:layout_constraintHorizontal_bias=\"0.5\"\n                app:layout_constraintStart_toStartOf=\"parent\"\n                app:layout_constraintTop_toTopOf=\"parent\" />\n\n            <com.google.android.material.textfield.TextInputLayout\n                android:id=\"@+id/emailContLogin\"\n                android:layout_width=\"match_parent\"\n                android:layout_height=\"wrap_content\"\n                android:layout_marginHorizontal=\"30dp\"\n                android:layout_marginTop=\"120dp\"\n                android:textColorHint=\"#60AA39\"\n                app:layout_constraintBottom_toTopOf=\"@id/passwordContLogin\"\n                app:layout_constraintStart_toStartOf=\"parent\"\n                app:layout_constraintTop_toBottomOf=\"@id/guide2\"\n                app:layout_constraintVertical_bias=\"0.0\">\n\n                <com.google.android.material.textfield.TextInputEditText\n                    android:text=\"@={authViewModel.loginmail}\"\n                    android:id=\"@+id/emailEditLogin\"\n                    android:layout_width=\"match_parent\"\n                    android:layout_height=\"wrap_content\"\n                    android:backgroundTint=\"#0060AA39\"\n                    android:hint=\"Email\"\n                    android:textColor=\"#fff\"\n                    android:inputType=\"textEmailAddress\"\n                    android:textStyle=\"bold\" />\n            </com.google.android.material.textfield.TextInputLayout>\n\n            <com.google.android.material.textfield.TextInputLayout\n                android:id=\"@+id/passwordContLogin\"\n                android:layout_width=\"match_parent\"\n                android:layout_height=\"wrap_content\"\n                android:layout_marginHorizontal=\"30dp\"\n                android:textColorHint=\"#60AA39\"\n                app:counterEnabled=\"false\"\n                app:counterMaxLength=\"10\"\n                app:passwordToggleTint=\"#fff\"\n                app:layout_constraintBottom_toTopOf=\"@id/loginBtnLogin\"\n                app:layout_constraintStart_toStartOf=\"parent\"\n                app:layout_constraintTop_toBottomOf=\"@id/emailContLogin\">\n\n                <com.google.android.material.textfield.TextInputEditText\n                    android:text=\"@={authViewModel.loginpwd}\"\n                    android:id=\"@+id/passwordEditLogin\"\n                    android:layout_width=\"match_parent\"\n                    android:layout_height=\"wrap_content\"\n                    android:backgroundTint=\"#0060AA39\"\n                    android:hint=\"Password\"\n                    android:inputType=\"textPassword\"\n                    android:textColor=\"#fff\"\n                    android:textStyle=\"bold\" />\n\n            </com.google.android.material.textfield.TextInputLayout>\n\n\n            <com.google.android.material.button.MaterialButton\n                android:onClick=\"@{authViewModel::loginButtonClicked}\"\n                android:id=\"@+id/loginBtnLogin\"\n                android:layout_width=\"100dp\"\n                android:layout_height=\"wrap_content\"\n                android:layout_marginTop=\"30dp\"\n\n                android:background=\"@drawable/all_buttons\"\n                android:padding=\"15sp\"\n                android:text=\"Login\"\n                android:textAlignment=\"center\"\n                android:textAllCaps=\"false\"\n                android:textColor=\"#fff\"\n                android:textStyle=\"bold\"\n                app:layout_constraintBottom_toTopOf=\"@id/orTextLogin\"\n                app:layout_constraintEnd_toEndOf=\"parent\"\n                app:layout_constraintHorizontal_bias=\"0.498\"\n                app:layout_constraintStart_toStartOf=\"parent\"\n                app:layout_constraintTop_toBottomOf=\"@id/passwordContLogin\" />\n\n            <TextView\n                android:id=\"@+id/orTextLogin\"\n                android:layout_width=\"wrap_content\"\n                android:layout_height=\"wrap_content\"\n                android:layout_marginTop=\"10dp\"\n                android:text=\"OR\"\n                android:textColor=\"#fff\"\n                android:textStyle=\"bold\"\n                app:layout_constraintEnd_toEndOf=\"parent\"\n                app:layout_constraintStart_toStartOf=\"parent\"\n                app:layout_constraintTop_toBottomOf=\"@+id/loginBtnLogin\" />\n\n            <com.google.android.gms.common.SignInButton\n                android:id=\"@+id/signGoogleBtnLogin\"\n                android:layout_width=\"130dp\"\n                android:layout_height=\"wrap_content\"\n                android:layout_marginTop=\"10dp\"\n                app:layout_constraintEnd_toEndOf=\"parent\"\n                app:layout_constraintHorizontal_bias=\"0.498\"\n                app:layout_constraintStart_toStartOf=\"parent\"\n                app:layout_constraintTop_toBottomOf=\"@id/orTextLogin\"\n                app:layout_constraintVertical_bias=\"0.0\" />\n\n            <TextView\n                android:id=\"@+id/createaccountText\"\n                android:layout_width=\"wrap_content\"\n                android:layout_height=\"wrap_content\"\n                android:text=\"Don't have an account? Create account\"\n                android:textColor=\"#fff\"\n                android:textSize=\"15sp\"\n                android:textStyle=\"bold\"\n                app:layout_constraintBottom_toBottomOf=\"parent\"\n                app:layout_constraintEnd_toEndOf=\"parent\"\n                app:layout_constraintStart_toStartOf=\"parent\"\n                app:layout_constraintTop_toBottomOf=\"@+id/forgotPasswdTextLogin\" />\n\n            <TextView\n                android:layout_width=\"wrap_content\"\n                android:layout_height=\"wrap_content\"\n                android:text=\"Forgot Password?\"\n                android:id=\"@+id/forgotPasswdTextLogin\"\n                android:textColor=\"#fff\"\n                app:layout_constraintTop_toBottomOf=\"@id/signGoogleBtnLogin\"\n                app:layout_constraintStart_toStartOf=\"parent\"\n                app:layout_constraintEnd_toEndOf=\"parent\"\n                app:layout_constraintBottom_toTopOf=\"@id/createaccountText\"\n                />\n        </androidx.constraintlayout.widget.ConstraintLayout>\n    </ScrollView>\n</layout>\n\n"
  },
  {
    "path": "app/src/main/res/layout/activity_razor_pay.xml",
    "content": "<?xml version=\"1.0\" encoding=\"utf-8\"?>\n<androidx.constraintlayout.widget.ConstraintLayout xmlns:android=\"http://schemas.android.com/apk/res/android\"\n    xmlns:app=\"http://schemas.android.com/apk/res-auto\"\n    xmlns:tools=\"http://schemas.android.com/tools\"\n    android:layout_width=\"match_parent\"\n    android:layout_height=\"match_parent\"\n    tools:context=\".view.ecommerce.RazorPayActivity\">\n\n\n        <TextView\n            android:id=\"@+id/paymentFragTitle\"\n            android:layout_width=\"wrap_content\"\n            android:layout_height=\"wrap_content\"\n            android:layout_marginVertical=\"14dp\"\n            android:text=\"Order Payment\"\n            android:textColor=\"#000\"\n            android:textSize=\"21sp\"\n            android:textStyle=\"bold\"\n            app:layout_constraintBottom_toTopOf=\"@id/fullNamePrePay\"\n            app:layout_constraintEnd_toEndOf=\"parent\"\n            app:layout_constraintStart_toStartOf=\"parent\"\n            app:layout_constraintTop_toTopOf=\"parent\"\n\n            />\n\n\n        <EditText\n            android:id=\"@+id/fullNamePrePay\"\n            android:layout_width=\"match_parent\"\n            android:layout_height=\"50dp\"\n            android:layout_marginHorizontal=\"10dp\"\n            android:layout_marginVertical=\"7dp\"\n            android:background=\"@drawable/edit_back\"\n\n            android:hint=\"Full Name\"\n            android:padding=\"10dp\"\n            android:textColor=\"@color/colorPrimary\"\n            android:textColorHint=\"#FF404A3A\"\n            android:textSize=\"18dp\"\n            app:layout_constraintBottom_toTopOf=\"@id/localityPrePay\"\n            app:layout_constraintEnd_toEndOf=\"parent\"\n            app:layout_constraintStart_toStartOf=\"parent\"\n            app:layout_constraintTop_toBottomOf=\"@id/paymentFragTitle\" />\n\n\n        <EditText\n            android:id=\"@+id/localityPrePay\"\n            android:layout_width=\"match_parent\"\n            android:layout_height=\"50dp\"\n\n            android:layout_marginHorizontal=\"10dp\"\n            android:layout_marginVertical=\"7dp\"\n            android:background=\"@drawable/edit_back\"\n            android:hint=\"Locality / Street Name\"\n\n            android:padding=\"10dp\"\n            android:textColor=\"@color/colorPrimary\"\n            android:textColorHint=\"#FF404A3A\"\n            app:layout_constraintBottom_toTopOf=\"@id/cityPrePay\"\n            app:layout_constraintEnd_toEndOf=\"parent\"\n            app:layout_constraintStart_toStartOf=\"parent\"\n            app:layout_constraintTop_toBottomOf=\"@id/fullNamePrePay\" />\n\n\n        <EditText\n            android:id=\"@+id/cityPrePay\"\n            android:layout_width=\"match_parent\"\n            android:layout_height=\"50dp\"\n\n            android:layout_marginHorizontal=\"10dp\"\n            android:layout_marginVertical=\"7dp\"\n            android:background=\"@drawable/edit_back\"\n            android:hint=\"City\"\n            android:padding=\"10dp\"\n            android:textColor=\"@color/colorPrimary\"\n            android:textColorHint=\"#FF404A3A\"\n            app:layout_constraintBottom_toTopOf=\"@id/statePrePay\"\n            app:layout_constraintEnd_toEndOf=\"parent\"\n            app:layout_constraintStart_toStartOf=\"parent\"\n            app:layout_constraintTop_toBottomOf=\"@id/localityPrePay\" />\n\n\n        <!--    <View-->\n        <!--        android:id=\"@+id/hrPayment\"-->\n        <!--        android:layout_width=\"match_parent\"-->\n        <!--        app:layout_constraintBottom_toTopOf=\"@id/paymentOptTitle\"-->\n        <!--        app:layout_constraintTop_toBottomOf=\"@id/phoneEditPaymentContainer\"-->\n        <!--        android:layout_marginHorizontal=\"18dp\"-->\n        <!--        android:layout_marginVertical=\"14dp\"-->\n        <!--        android:layout_height=\"2dp\"-->\n        <!--        android:background=\"@color/colorPrimary\"-->\n        <!--        />-->\n\n\n        <EditText\n            android:id=\"@+id/statePrePay\"\n            android:layout_width=\"match_parent\"\n            android:layout_height=\"50dp\"\n            android:layout_marginHorizontal=\"10dp\"\n            android:layout_marginVertical=\"7dp\"\n            android:background=\"@drawable/edit_back\"\n            android:hint=\"State\"\n\n\n            android:padding=\"10dp\"\n            android:textColor=\"@color/colorPrimary\"\n            android:textColorHint=\"#FF404A3A\"\n            app:layout_constraintBottom_toTopOf=\"@id/pincodePrePay\"\n            app:layout_constraintEnd_toEndOf=\"parent\"\n            app:layout_constraintStart_toStartOf=\"parent\"\n            app:layout_constraintTop_toBottomOf=\"@id/cityPrePay\" />\n\n\n        <EditText\n            android:id=\"@+id/pincodePrePay\"\n            android:layout_width=\"match_parent\"\n            android:layout_height=\"50dp\"\n            android:layout_marginHorizontal=\"10dp\"\n            android:layout_marginVertical=\"7dp\"\n            android:background=\"@drawable/edit_back\"\n            android:hint=\"Pin Code\"\n            android:padding=\"10dp\"\n            android:textColor=\"@color/colorPrimary\"\n            android:textColorHint=\"#FF404A3A\"\n            app:layout_constraintBottom_toTopOf=\"@id/mobileNumberPrePay\"\n            app:layout_constraintEnd_toEndOf=\"parent\"\n            app:layout_constraintStart_toStartOf=\"parent\"\n            app:layout_constraintTop_toBottomOf=\"@id/statePrePay\" />\n\n\n        <EditText\n            android:id=\"@+id/mobileNumberPrePay\"\n            android:layout_width=\"match_parent\"\n            android:layout_height=\"50dp\"\n            android:layout_marginHorizontal=\"10dp\"\n            android:layout_marginVertical=\"7dp\"\n            android:background=\"@drawable/edit_back\"\n            android:hint=\"Mobile Number\"\n            android:inputType=\"phone\"\n            android:padding=\"10dp\"\n            android:textColor=\"@color/colorPrimary\"\n            android:textColorHint=\"#FF404A3A\"\n            app:layout_constraintBottom_toTopOf=\"@id/addressTypeTitle\"\n            app:layout_constraintStart_toStartOf=\"parent\"\n            app:layout_constraintTop_toBottomOf=\"@id/pincodePrePay\" />\n\n        <TextView\n            android:id=\"@+id/addressTypeTitle\"\n            android:layout_width=\"wrap_content\"\n            android:layout_height=\"wrap_content\"\n            android:layout_marginHorizontal=\"20dp\"\n            android:layout_marginVertical=\"7dp\"\n            android:text=\"Address Type\"\n            android:textColor=\"@color/fontColor\"\n            android:textSize=\"18sp\"\n            android:textStyle=\"bold\"\n            app:layout_constraintBottom_toTopOf=\"@id/addressTypeRadioGroup\"\n            app:layout_constraintStart_toStartOf=\"parent\"\n            app:layout_constraintTop_toBottomOf=\"@id/mobileNumberPrePay\" />\n\n        <RadioGroup\n           android:checkedButton=\"@id/homerd\"\n            android:id=\"@+id/addressTypeRadioGroup\"\n            android:layout_width=\"match_parent\"\n            android:layout_height=\"wrap_content\"\n            android:layout_marginHorizontal=\"14dp\"\n            android:layout_marginVertical=\"14dp\"\n            android:foregroundGravity=\"center\"\n            android:orientation=\"horizontal\"\n            android:foregroundTint=\"@color/colorPrimary\"\n            app:layout_constraintEnd_toEndOf=\"parent\"\n            app:layout_constraintStart_toStartOf=\"parent\"\n            app:layout_constraintTop_toBottomOf=\"@id/addressTypeTitle\">\n\n            <com.google.android.material.radiobutton.MaterialRadioButton\n                android:layout_width=\"wrap_content\"\n                android:layout_height=\"wrap_content\"\n                android:id=\"@+id/homerd\"\n                android:layout_weight=\"1\"\n                android:buttonTint=\"@color/colorPrimary\"\n                android:text=\"Home\" />\n\n            <com.google.android.material.radiobutton.MaterialRadioButton\n                android:layout_width=\"wrap_content\"\n                android:buttonTint=\"@color/colorPrimary\"\n                android:layout_height=\"wrap_content\"\n                android:layout_weight=\"1\"\n                android:text=\"Office\" />\n\n            <com.google.android.material.radiobutton.MaterialRadioButton\n                android:layout_width=\"wrap_content\"\n                android:layout_height=\"wrap_content\"\n                android:layout_weight=\"1\"\n                android:buttonTint=\"@color/colorPrimary\"\n                android:text=\"Other\" />\n\n        </RadioGroup>\n\n\n        <TextView\n            android:layout_width=\"wrap_content\"\n            android:layout_height=\"wrap_content\"\n            android:text=\"Net Value: ₹\"\n            app:layout_constraintTop_toBottomOf=\"@id/addressTypeRadioGroup\"\n            app:layout_constraintStart_toStartOf=\"parent\"\n            app:layout_constraintEnd_toEndOf=\"parent\"\n            android:textSize=\"28sp\"\n            android:textStyle=\"bold\"\n            android:id=\"@+id/netValue\"\n            android:textColor=\"@color/colorThird\"\n            />\n\n\n\n\n\n        <Button\n            app:layout_constraintEnd_toEndOf=\"parent\"\n            app:layout_constraintBottom_toBottomOf=\"parent\"\n            app:layout_constraintStart_toStartOf=\"parent\"\n            android:id=\"@+id/orderNowBtn\"\n            android:layout_width=\"250dp\"\n            android:layout_height=\"55dp\"\n            android:layout_marginVertical=\"7dp\"\n            android:background=\"@drawable/round_borderless_general\"\n            android:backgroundTint=\"@color/colorThird\"\n            android:text=\"Proceed with Payment\"\n            android:textAllCaps=\"false\"\n            android:textColor=\"#fff\"\n            android:textSize=\"18sp\"\n            android:textStyle=\"bold\"/>\n\n</androidx.constraintlayout.widget.ConstraintLayout>"
  },
  {
    "path": "app/src/main/res/layout/activity_signup.xml",
    "content": "<?xml version=\"1.0\" encoding=\"utf-8\"?>\n\n<layout xmlns:android=\"http://schemas.android.com/apk/res/android\"\n    xmlns:app=\"http://schemas.android.com/apk/res-auto\"\n    xmlns:tools=\"http://schemas.android.com/tools\">\n    <data>\n        <variable\n            name=\"authViewModel\"\n            type=\"com.project.farmingapp.viewmodel.AuthViewModel\" />\n    </data>\n\n    <ScrollView\n        android:layout_width=\"match_parent\"\n        android:fillViewport=\"true\"\n        android:theme=\"@style/AppTheme2\"\n        android:layout_height=\"match_parent\">\n\n        <androidx.constraintlayout.widget.ConstraintLayout\n            android:layout_width=\"match_parent\"\n            android:layout_height=\"match_parent\"\n\n            android:background=\"@drawable/authback\"\n            tools:context=\".view.auth.SignupActivity\">\n\n\n            <TextView\n                android:id=\"@+id/titleTextSignup\"\n                android:layout_width=\"wrap_content\"\n                android:layout_height=\"wrap_content\"\n                android:text=\"Farming App\"\n                android:textColor=\"#fff\"\n                android:textSize=\"30sp\"\n                android:textStyle=\"bold\"\n                app:layout_constraintBottom_toTopOf=\"@id/title2TextSignup\"\n                app:layout_constraintEnd_toEndOf=\"parent\"\n                app:layout_constraintStart_toStartOf=\"parent\"\n                app:layout_constraintTop_toTopOf=\"parent\" />\n\n            <TextView\n                android:id=\"@+id/title2TextSignup\"\n                android:layout_width=\"wrap_content\"\n                android:layout_height=\"wrap_content\"\n                android:text=\"Create Account\"\n                android:textColor=\"#fff\"\n                android:textSize=\"17sp\"\n                app:layout_constraintBottom_toTopOf=\"@id/guide1\"\n                app:layout_constraintEnd_toEndOf=\"parent\"\n                app:layout_constraintHorizontal_bias=\"0.5\"\n                app:layout_constraintStart_toStartOf=\"parent\"\n                app:layout_constraintTop_toBottomOf=\"@id/titleTextSignup\" />\n\n            <androidx.constraintlayout.widget.Guideline\n                android:id=\"@+id/guide1\"\n                android:layout_width=\"match_parent\"\n                android:layout_height=\"wrap_content\"\n                android:orientation=\"horizontal\"\n                app:layout_constraintGuide_percent=\"0.15\" />\n\n            <com.google.android.material.textfield.TextInputLayout\n                android:id=\"@+id/nameContSignup\"\n                android:layout_width=\"match_parent\"\n                android:layout_height=\"wrap_content\"\n                android:layout_marginHorizontal=\"30dp\"\n                android:textColorHint=\"#60AA39\"\n                app:layout_constraintBottom_toTopOf=\"@id/numberContSignup\"\n                app:layout_constraintStart_toStartOf=\"parent\"\n                app:layout_constraintTop_toBottomOf=\"@id/guide1\">\n\n                <com.google.android.material.textfield.TextInputEditText\n                    android:id=\"@+id/nameEditSignup\"\n                    android:layout_width=\"match_parent\"\n                    android:layout_height=\"wrap_content\"\n                    android:backgroundTint=\"#0060AA39\"\n                    android:hint=\"Full Name\"\n                    android:text=\"@={authViewModel.name}\"\n                    android:textColor=\"#fff\"\n                    android:textStyle=\"bold\" />\n            </com.google.android.material.textfield.TextInputLayout>\n\n            <com.google.android.material.textfield.TextInputLayout\n                android:id=\"@+id/numberContSignup\"\n                android:layout_width=\"match_parent\"\n                android:layout_height=\"wrap_content\"\n                android:layout_marginHorizontal=\"30dp\"\n                android:textColorHint=\"#60AA39\"\n                app:counterEnabled=\"false\"\n                app:counterMaxLength=\"10\"\n                app:layout_constraintBottom_toTopOf=\"@id/emailContSignup\"\n                app:layout_constraintStart_toStartOf=\"parent\"\n                app:layout_constraintTop_toBottomOf=\"@id/nameContSignup\"\n                app:passwordToggleTint=\"#fff\">\n\n                <com.google.android.material.textfield.TextInputEditText\n                    android:id=\"@+id/numberEditSignup\"\n                    android:layout_width=\"match_parent\"\n                    android:layout_height=\"wrap_content\"\n                    android:backgroundTint=\"#0060AA39\"\n                    android:hint=\"Mobile Number\"\n                    android:inputType=\"phone\"\n                    android:text=\"@={authViewModel.mobNo}\"\n                    android:textColor=\"#fff\"\n                    android:textStyle=\"bold\" />\n            </com.google.android.material.textfield.TextInputLayout>\n\n            <com.google.android.material.textfield.TextInputLayout\n                android:id=\"@+id/emailContSignup\"\n                android:layout_width=\"match_parent\"\n                android:layout_height=\"wrap_content\"\n                android:layout_marginHorizontal=\"30dp\"\n                android:textColorHint=\"#60AA39\"\n                app:layout_constraintBottom_toTopOf=\"@id/cityContSignup\"\n                app:layout_constraintStart_toStartOf=\"parent\"\n                app:layout_constraintTop_toBottomOf=\"@id/numberContSignup\">\n\n                <com.google.android.material.textfield.TextInputEditText\n                    android:id=\"@+id/emailEditSignup\"\n                    android:layout_width=\"match_parent\"\n                    android:layout_height=\"wrap_content\"\n                    android:backgroundTint=\"#0060AA39\"\n                    android:hint=\"Email\"\n                    android:inputType=\"textEmailAddress\"\n                    android:text=\"@={authViewModel.email}\"\n                    android:textColor=\"#fff\"\n                    android:textStyle=\"bold\" />\n            </com.google.android.material.textfield.TextInputLayout>\n\n            <com.google.android.material.textfield.TextInputLayout\n                android:id=\"@+id/cityContSignup\"\n                android:layout_width=\"match_parent\"\n                android:layout_height=\"wrap_content\"\n                android:layout_marginHorizontal=\"30dp\"\n                android:textColorHint=\"#60AA39\"\n                app:layout_constraintBottom_toTopOf=\"@id/passwdContSignup\"\n                app:layout_constraintStart_toStartOf=\"parent\"\n                app:layout_constraintTop_toBottomOf=\"@id/emailContSignup\">\n\n                <com.google.android.material.textfield.TextInputEditText\n                    android:id=\"@+id/cityEditSignup\"\n                    android:layout_width=\"match_parent\"\n                    android:layout_height=\"wrap_content\"\n                    android:backgroundTint=\"#0060AA39\"\n                    android:hint=\"City\"\n                    android:text=\"@={authViewModel.city}\"\n                    android:textColor=\"#fff\"\n                    android:textStyle=\"bold\" />\n            </com.google.android.material.textfield.TextInputLayout>\n\n            <com.google.android.material.textfield.TextInputLayout\n                android:id=\"@+id/passwdContSignup\"\n                android:layout_width=\"match_parent\"\n                android:layout_height=\"wrap_content\"\n                android:layout_marginHorizontal=\"30dp\"\n                android:textColorHint=\"#60AA39\"\n                app:layout_constraintBottom_toTopOf=\"@id/confPasswdContSignup\"\n                app:layout_constraintStart_toStartOf=\"parent\"\n                app:layout_constraintTop_toBottomOf=\"@id/cityContSignup\"\n\n\n                >\n\n                <com.google.android.material.textfield.TextInputEditText\n                    android:id=\"@+id/passwdEditSignup\"\n                    android:layout_width=\"match_parent\"\n                    android:layout_height=\"wrap_content\"\n                    android:backgroundTint=\"#0060AA39\"\n                    android:hint=\"Password\"\n                    android:inputType=\"textPassword\"\n                    android:text=\"@={authViewModel.password}\"\n                    android:textColor=\"#fff\"\n                    android:textStyle=\"bold\"\n\n                    />\n            </com.google.android.material.textfield.TextInputLayout>\n\n            <com.google.android.material.textfield.TextInputLayout\n                android:id=\"@+id/confPasswdContSignup\"\n                android:layout_width=\"match_parent\"\n                android:layout_height=\"wrap_content\"\n                android:layout_marginHorizontal=\"30dp\"\n                android:textColorHint=\"#60AA39\"\n                app:layout_constraintBottom_toTopOf=\"@id/signupBtnSignup\"\n                app:layout_constraintStart_toStartOf=\"parent\"\n                app:layout_constraintTop_toBottomOf=\"@id/passwdContSignup\"\n\n\n                >\n\n                <com.google.android.material.textfield.TextInputEditText\n                    android:id=\"@+id/confPasswdEditSignup\"\n                    android:layout_width=\"match_parent\"\n                    android:layout_height=\"wrap_content\"\n                    android:backgroundTint=\"#0060AA39\"\n                    android:hint=\"Confirm Password\"\n                    android:inputType=\"textPassword\"\n                    android:text=\"@={authViewModel.confPassword}\"\n                    android:textColor=\"#fff\"\n                    android:textStyle=\"bold\"\n\n                    />\n            </com.google.android.material.textfield.TextInputLayout>\n\n            <com.google.android.material.button.MaterialButton\n                android:id=\"@+id/signupBtnSignup\"\n                android:layout_width=\"100dp\"\n                android:layout_height=\"wrap_content\"\n                android:background=\"@drawable/all_buttons\"\n                android:onClick=\"@{authViewModel::signupButtonClicked}\"\n                android:padding=\"15sp\"\n                android:text=\"Sign in\"\n                android:textAlignment=\"center\"\n                android:textAllCaps=\"false\"\n                android:textColor=\"#fff\"\n                android:textStyle=\"bold\"\n                app:layout_constraintBottom_toTopOf=\"@id/orTextSignup\"\n                app:layout_constraintEnd_toEndOf=\"parent\"\n                app:layout_constraintStart_toStartOf=\"parent\"\n                app:layout_constraintTop_toBottomOf=\"@id/confPasswdContSignup\" />\n\n            <TextView\n                android:id=\"@+id/orTextSignup\"\n                android:layout_width=\"wrap_content\"\n                android:layout_height=\"wrap_content\"\n                android:text=\"OR\"\n                android:textColor=\"#fff\"\n                android:textStyle=\"bold\"\n                app:layout_constraintBottom_toTopOf=\"@id/signGoogleBtnSignup\"\n                app:layout_constraintEnd_toEndOf=\"parent\"\n                app:layout_constraintStart_toStartOf=\"parent\"\n                app:layout_constraintTop_toBottomOf=\"@id/signupBtnSignup\" />\n\n            <com.google.android.gms.common.SignInButton\n                android:id=\"@+id/signGoogleBtnSignup\"\n                android:layout_width=\"130dp\"\n                android:layout_height=\"wrap_content\"\n                app:layout_constraintBottom_toTopOf=\"@id/loginRedirectTextSignup\"\n                app:layout_constraintEnd_toEndOf=\"parent\"\n                app:layout_constraintStart_toStartOf=\"parent\"\n                app:layout_constraintTop_toBottomOf=\"@id/orTextSignup\" />\n\n            <TextView\n                android:id=\"@+id/loginRedirectTextSignup\"\n                android:layout_width=\"wrap_content\"\n                android:layout_height=\"wrap_content\"\n                android:layout_marginBottom=\"20dp\"\n                android:text=\"Have an Account?  Login\"\n                android:textColor=\"#fff\"\n                android:textSize=\"15sp\"\n                android:textStyle=\"bold\"\n                app:layout_constraintBottom_toBottomOf=\"parent\"\n                app:layout_constraintEnd_toEndOf=\"parent\"\n                app:layout_constraintStart_toStartOf=\"parent\"\n                app:layout_constraintTop_toBottomOf=\"@id/signGoogleBtnSignup\" />\n\n            <ProgressBar\n                android:id=\"@+id/progressSignup\"\n                android:visibility=\"invisible\"\n                android:layout_width=\"wrap_content\"\n                android:layout_height=\"wrap_content\"\n                app:layout_constraintBottom_toBottomOf=\"parent\"\n                app:layout_constraintEnd_toEndOf=\"parent\"\n                app:layout_constraintHorizontal_bias=\"0.5\"\n                app:layout_constraintStart_toStartOf=\"parent\"\n                app:layout_constraintTop_toTopOf=\"parent\" />\n\n        </androidx.constraintlayout.widget.ConstraintLayout>\n</ScrollView>\n</layout>\n\n"
  },
  {
    "path": "app/src/main/res/layout/apmc_single_list.xml",
    "content": "<?xml version=\"1.0\" encoding=\"utf-8\"?>\n<androidx.constraintlayout.widget.ConstraintLayout xmlns:android=\"http://schemas.android.com/apk/res/android\"\n    xmlns:app=\"http://schemas.android.com/apk/res-auto\"\n    android:layout_width=\"match_parent\"\n    android:layout_height=\"wrap_content\"\n    android:layout_marginVertical=\"7dp\">\n\n    <androidx.cardview.widget.CardView\n        android:layout_width=\"match_parent\"\n        android:layout_height=\"wrap_content\"\n        android:layout_margin=\"7dp\"\n        app:cardCornerRadius=\"7dp\"\n        app:layout_constraintBottom_toBottomOf=\"parent\"\n        app:cardElevation=\"5dp\"\n        app:layout_constraintEnd_toEndOf=\"parent\"\n        app:layout_constraintStart_toStartOf=\"parent\"\n        app:layout_constraintTop_toTopOf=\"parent\">\n\n        <androidx.constraintlayout.widget.ConstraintLayout\n            android:layout_width=\"match_parent\"\n            android:background=\"@drawable/apmc_card_bg\"\n            android:layout_height=\"match_parent\">\n\n            <androidx.cardview.widget.CardView\n                android:id=\"@+id/apmcDetailsTopCard\"\n                android:layout_width=\"match_parent\"\n                android:layout_height=\"wrap_content\"\n                android:layout_margin=\"7dp\"\n                app:cardElevation=\"1dp\"\n                app:cardCornerRadius=\"7dp\"\n                app:layout_constraintEnd_toEndOf=\"parent\"\n                app:layout_constraintStart_toStartOf=\"parent\"\n                app:layout_constraintTop_toTopOf=\"parent\"\n                >\n\n                <androidx.constraintlayout.widget.ConstraintLayout\n                    android:layout_width=\"match_parent\"\n                    android:layout_height=\"match_parent\"\n                    android:background=\"@color/secondary\"\n\n                    android:padding=\"7dp\">\n\n                    <TextView\n                        android:id=\"@+id/apmcNameValue\"\n                        android:layout_width=\"wrap_content\"\n                        android:layout_height=\"wrap_content\"\n                        android:text=\"Dhanbad APMC\"\n                        android:textColor=\"@color/fontColor\"\n                        android:textSize=\"17sp\"\n                        android:textStyle=\"bold\"\n                        app:layout_constraintStart_toStartOf=\"parent\"\n                        app:layout_constraintTop_toTopOf=\"parent\" />\n\n                    <ImageView\n                        android:id=\"@+id/locationImage\"\n                        android:layout_width=\"15dp\"\n                        android:layout_height=\"15dp\"\n                        android:src=\"@drawable/location\"\n                        app:layout_constraintBottom_toBottomOf=\"@id/apmcLocationValue\"\n                        app:layout_constraintStart_toStartOf=\"parent\"\n                        app:layout_constraintTop_toTopOf=\"@id/apmcLocationValue\" />\n\n                    <TextView\n                        android:id=\"@+id/apmcLocationValue\"\n                        android:layout_width=\"wrap_content\"\n                        android:layout_height=\"wrap_content\"\n                        android:layout_marginVertical=\"7dp\"\n                        android:layout_marginStart=\"7dp\"\n                        android:text=\"Dhanbad APMC\"\n                        android:textColor=\"@color/fontColor\"\n                        android:textSize=\"12sp\"\n                        app:layout_constraintStart_toEndOf=\"@id/locationImage\"\n                        app:layout_constraintTop_toBottomOf=\"@id/apmcNameValue\" />\n\n                </androidx.constraintlayout.widget.ConstraintLayout>\n            </androidx.cardview.widget.CardView>\n\n            <TextView\n                android:id=\"@+id/comodity\"\n                android:layout_width=\"wrap_content\"\n                android:layout_height=\"wrap_content\"\n                android:layout_marginTop=\"7dp\"\n                android:layout_marginStart=\"14dp\"\n\n                android:text=\"Commodities:\"\n                android:textColor=\"@color/fontColor\"\n                android:textSize=\"16sp\"\n                android:textStyle=\"bold\"\n\n                app:layout_constraintStart_toStartOf=\"parent\"\n                app:layout_constraintTop_toBottomOf=\"@id/apmcDetailsTopCard\" />\n\n            <TextView\n                android:id=\"@+id/min\"\n                android:layout_width=\"wrap_content\"\n                android:layout_height=\"wrap_content\"\n                android:layout_marginVertical=\"7dp\"\n                android:layout_marginEnd=\"7dp\"\n                android:text=\"Min:\"\n                android:textColor=\"@color/fontColor\"\n                android:textSize=\"16sp\"\n                android:textStyle=\"bold\"\n\n                app:layout_constraintEnd_toStartOf=\"@id/minimg\"\n                app:layout_constraintTop_toBottomOf=\"@id/apmcDetailsTopCard\" />\n\n            <ImageView\n                android:id=\"@+id/minimg\"\n                android:layout_width=\"15dp\"\n                android:layout_height=\"15dp\"\n                android:layout_marginEnd=\"21dp\"\n                android:src=\"@drawable/low_price\"\n                app:layout_constraintBottom_toBottomOf=\"@id/min\"\n                app:layout_constraintEnd_toStartOf=\"@+id/max\"\n                app:layout_constraintTop_toTopOf=\"@id/min\" />\n\n            <TextView\n                android:id=\"@+id/max\"\n                android:layout_width=\"wrap_content\"\n                android:layout_height=\"wrap_content\"\n                android:layout_marginVertical=\"7dp\"\n                android:layout_marginEnd=\"7dp\"\n                android:text=\"Max:\"\n                android:textColor=\"@color/fontColor\"\n                android:textSize=\"16sp\"\n                android:textStyle=\"bold\"\n                app:layout_constraintEnd_toStartOf=\"@id/maximg\"\n                app:layout_constraintTop_toBottomOf=\"@id/apmcDetailsTopCard\" />\n\n            <ImageView\n                android:id=\"@+id/maximg\"\n                android:layout_width=\"15dp\"\n                android:layout_height=\"15dp\"\n                android:layout_marginEnd=\"7dp\"\n                android:src=\"@drawable/max_price\"\n                app:layout_constraintBottom_toBottomOf=\"@id/max\"\n                app:layout_constraintEnd_toEndOf=\"parent\"\n                app:layout_constraintTop_toTopOf=\"@id/max\" />\n\n            <TextView\n                android:id=\"@+id/comodityname\"\n                android:layout_width=\"wrap_content\"\n                android:layout_height=\"wrap_content\"\n                android:text=\"\"\n                android:lineSpacingExtra=\"4dp\"\n                android:textSize=\"14sp\"\n                android:textColor=\"@color/fontColor\"\n                app:layout_constraintBottom_toBottomOf=\"parent\"\n                android:layout_marginBottom=\"7dp\"\n                android:gravity=\"left\"\n                android:layout_marginTop=\"7dp\"\n                app:layout_constraintStart_toStartOf=\"@id/comodity\"\n                app:layout_constraintTop_toBottomOf=\"@id/comodity\" />\n\n\n            <TextView\n                android:id=\"@+id/minvalue\"\n                android:layout_width=\"wrap_content\"\n                android:layout_height=\"wrap_content\"\n                android:layout_marginTop=\"7dp\"\n                android:layout_marginBottom=\"7dp\"\n                android:text=\"\"\n                android:textColor=\"@color/fontColor\"\n                android:textSize=\"14sp\"\n                android:gravity=\"center_horizontal\"\n                android:lineSpacingExtra=\"4dp\"\n                app:layout_constraintBottom_toBottomOf=\"parent\"\n\n                app:layout_constraintEnd_toEndOf=\"@id/minimg\"\n                app:layout_constraintStart_toStartOf=\"@id/min\"\n                app:layout_constraintTop_toBottomOf=\"@id/min\" />\n\n            <TextView\n                android:id=\"@+id/maxvalue\"\n                android:layout_width=\"wrap_content\"\n                android:layout_height=\"wrap_content\"\n                android:layout_marginBottom=\"7dp\"\n                android:text=\"\"\n                android:textColor=\"@color/fontColor\"\n                android:textSize=\"14sp\"\n                android:layout_marginTop=\"7dp\"\n                app:layout_constraintBottom_toBottomOf=\"parent\"\n                android:lineSpacingExtra=\"4dp\"\n                app:layout_constraintEnd_toEndOf=\"@id/maximg\"\n                app:layout_constraintStart_toStartOf=\"@id/max\"\n                android:gravity=\"center_horizontal\"\n                app:layout_constraintTop_toBottomOf=\"@id/max\" />\n\n\n        </androidx.constraintlayout.widget.ConstraintLayout>\n    </androidx.cardview.widget.CardView>\n</androidx.constraintlayout.widget.ConstraintLayout>\n\n"
  },
  {
    "path": "app/src/main/res/layout/app_bar_main.xml",
    "content": "<?xml version=\"1.0\" encoding=\"utf-8\"?>\n<androidx.constraintlayout.widget.ConstraintLayout xmlns:android=\"http://schemas.android.com/apk/res/android\"\n    xmlns:app=\"http://schemas.android.com/apk/res-auto\"\n    android:layout_width=\"match_parent\"\n\n    android:layout_height=\"match_parent\">\n\n<!--    <com.google.android.material.appbar.AppBarLayout-->\n<!--        android:id=\"@+id/actionBar\"-->\n<!--        android:layout_width=\"match_parent\"-->\n<!--        android:layout_height=\"wrap_content\"-->\n<!--        app:layout_constraintEnd_toEndOf=\"parent\"-->\n<!--        app:layout_constraintHorizontal_bias=\"0.5\"-->\n<!--        app:layout_constraintStart_toStartOf=\"parent\"-->\n<!--        app:layout_constraintTop_toTopOf=\"parent\">-->\n\n<!--        <androidx.appcompat.widget.Toolbar-->\n<!--            android:id=\"@+id/toolBar\"-->\n<!--            android:layout_width=\"match_parent\"-->\n<!--            android:layout_height=\"?attr/actionBarSize\"-->\n<!--            android:background=\"?attr/colorPrimary\" />-->\n<!--        -->\n<!--    </com.google.android.material.appbar.AppBarLayout>-->\n\n\n    <FrameLayout\n        android:id=\"@+id/frame_layout\"\n        android:layout_width=\"match_parent\"\n        android:layout_height=\"0dp\"\n        app:layout_constraintBottom_toTopOf=\"@id/bottomNav\"\n        app:layout_constraintTop_toTopOf=\"parent\" />\n\n    <com.google.android.material.bottomnavigation.BottomNavigationView\n\n        android:id=\"@+id/bottomNav\"\n        android:layout_width=\"match_parent\"\n        android:layout_height=\"56dp\"\n        app:menu=\"@menu/dash_menu\"\n        android:backgroundTintMode=\"screen\"\n        app:backgroundTint=\"@color/colorPrimary\"\n        app:labelVisibilityMode=\"labeled\"\n        app:layout_constraintBottom_toBottomOf=\"parent\" />\n\n</androidx.constraintlayout.widget.ConstraintLayout>"
  },
  {
    "path": "app/src/main/res/layout/article_list_single.xml",
    "content": "<?xml version=\"1.0\" encoding=\"utf-8\"?>\n<androidx.constraintlayout.widget.ConstraintLayout xmlns:android=\"http://schemas.android.com/apk/res/android\"\n    xmlns:app=\"http://schemas.android.com/apk/res-auto\"\n    android:layout_width=\"match_parent\"\n    android:layout_height=\"wrap_content\">\n\n    <androidx.cardview.widget.CardView\n        android:id=\"@+id/articleListCardArtListFrag\"\n        android:layout_width=\"wrap_content\"\n        android:layout_height=\"wrap_content\"\n        android:layout_marginBottom=\"2dp\"\n        app:cardCornerRadius=\"7dp\"\n        app:cardElevation=\"5dp\"\n\n        app:layout_constraintBottom_toBottomOf=\"parent\"\n        app:layout_constraintEnd_toEndOf=\"parent\"\n        app:layout_constraintStart_toStartOf=\"parent\"\n        app:layout_constraintTop_toTopOf=\"parent\">\n\n        <androidx.constraintlayout.widget.ConstraintLayout\n            android:layout_width=\"match_parent\"\n            android:layout_height=\"match_parent\">\n\n            <ImageView\n                android:id=\"@+id/imageArticleListFrag\"\n                android:layout_width=\"150dp\"\n                android:layout_height=\"110dp\"\n                android:scaleType=\"fitXY\"\n                android:src=\"@color/colorPrimary\"\n                app:layout_constraintEnd_toEndOf=\"parent\"\n                app:layout_constraintStart_toStartOf=\"parent\"\n                app:layout_constraintTop_toTopOf=\"parent\" />\n\n            <TextView\n                android:id=\"@+id/descTextxArticleListFrag\"\n                android:layout_width=\"wrap_content\"\n                android:layout_height=\"wrap_content\"\n                android:layout_marginVertical=\"4dp\"\n                android:text=\"Dummy Text\"\n                android:textSize=\"17sp\"\n                android:textStyle=\"bold\"\n                app:layout_constraintBottom_toBottomOf=\"parent\"\n                app:layout_constraintEnd_toEndOf=\"@id/imageArticleListFrag\"\n                app:layout_constraintStart_toStartOf=\"@id/imageArticleListFrag\"\n                app:layout_constraintTop_toBottomOf=\"@id/imageArticleListFrag\" />\n        </androidx.constraintlayout.widget.ConstraintLayout>\n    </androidx.cardview.widget.CardView>\n</androidx.constraintlayout.widget.ConstraintLayout>"
  },
  {
    "path": "app/src/main/res/layout/fragment_apmc.xml",
    "content": "<?xml version=\"1.0\" encoding=\"utf-8\"?>\n<FrameLayout xmlns:android=\"http://schemas.android.com/apk/res/android\"\n    xmlns:app=\"http://schemas.android.com/apk/res-auto\"\n    xmlns:tools=\"http://schemas.android.com/tools\"\n    android:layout_width=\"match_parent\"\n    android:layout_height=\"match_parent\"\n    tools:context=\".view.apmc.ApmcFragment\">\n\n    <!-- TODO: Update blank fragment layout -->\n\n    <androidx.constraintlayout.widget.ConstraintLayout\n        android:layout_width=\"wrap_content\"\n        android:layout_height=\"match_parent\">\n\n        <ProgressBar\n            android:id=\"@+id/progress_apmc\"\n            android:layout_width=\"wrap_content\"\n            android:layout_height=\"wrap_content\"\n            android:elevation=\"12dp\"\n            android:indeterminateDrawable=\"@drawable/progress_background\"\n            android:visibility=\"invisible\"\n            app:layout_constraintBottom_toBottomOf=\"parent\"\n            app:layout_constraintEnd_toEndOf=\"parent\"\n            app:layout_constraintStart_toStartOf=\"parent\"\n            app:layout_constraintTop_toTopOf=\"parent\" />\n\n        <TextView\n            android:id=\"@+id/loadingTextAPMC\"\n            android:layout_width=\"wrap_content\"\n            android:layout_height=\"wrap_content\"\n            android:layout_marginVertical=\"7dp\"\n            android:elevation=\"12dp\"\n            android:text=\"Loading...\"\n            android:visibility=\"invisible\"\n            app:layout_constraintEnd_toEndOf=\"parent\"\n            app:layout_constraintStart_toStartOf=\"parent\"\n            app:layout_constraintTop_toBottomOf=\"@id/progress_apmc\" />\n\n        <TextView\n            android:id=\"@+id/apmcSearchBar\"\n            android:layout_width=\"wrap_content\"\n            android:layout_height=\"wrap_content\"\n            android:layout_margin=\"12dp\"\n            android:layout_marginEnd=\"20dp\"\n            android:text=\"State : \"\n            android:textColor=\"@color/fontColor\"\n            android:textSize=\"20sp\"\n            android:textStyle=\"bold\"\n            app:layout_constraintBottom_toTopOf=\"@id/apmcSearchBar2\"\n            app:layout_constraintEnd_toStartOf=\"@id/guide1\"\n            app:layout_constraintTop_toTopOf=\"parent\" />\n\n\n        <Spinner\n            android:id=\"@+id/spinner1\"\n            android:layout_width=\"150dp\"\n            android:layout_height=\"0dp\"\n\n            android:layout_marginStart=\"20dp\"\n            android:spinnerMode=\"dialog\"\n            app:layout_constraintBottom_toBottomOf=\"@id/apmcSearchBar\"\n            app:layout_constraintEnd_toEndOf=\"parent\"\n            app:layout_constraintStart_toEndOf=\"@id/guide1\"\n            app:layout_constraintTop_toTopOf=\"@id/apmcSearchBar\" />\n\n        <TextView\n            android:id=\"@+id/apmcSearchBar2\"\n            android:layout_width=\"wrap_content\"\n            android:layout_height=\"wrap_content\"\n            android:layout_margin=\"12dp\"\n            android:layout_marginEnd=\"20dp\"\n            android:text=\"District : \"\n            android:textColor=\"@color/fontColor\"\n            android:textSize=\"20sp\"\n            android:textStyle=\"bold\"\n            app:layout_constraintBottom_toTopOf=\"@id/hr1Apmc\"\n\n            app:layout_constraintEnd_toStartOf=\"@id/guide1\"\n            app:layout_constraintTop_toBottomOf=\"@id/apmcSearchBar\" />\n\n        <Spinner\n            android:id=\"@+id/spinner2\"\n            android:layout_width=\"150dp\"\n            android:layout_height=\"21dp\"\n            android:layout_marginStart=\"20dp\"\n            android:spinnerMode=\"dialog\"\n\n            app:layout_constraintBottom_toBottomOf=\"@id/apmcSearchBar2\"\n            app:layout_constraintEnd_toEndOf=\"parent\"\n            app:layout_constraintStart_toEndOf=\"@id/guide1\"\n            app:layout_constraintTop_toTopOf=\"@id/apmcSearchBar2\" />\n\n        <!--        <androidx.appcompat.widget.SearchView-->\n        <!--            android:id=\"@+id/apmcSearchBar\"-->\n        <!--            android:layout_width=\"match_parent\"-->\n        <!--            android:layout_height=\"wrap_content\"-->\n        <!--            android:layout_marginVertical=\"10dp\"-->\n        <!--            app:layout_constraintBottom_toTopOf=\"@id/hr1Apmc\"-->\n        <!--            app:layout_constraintEnd_toEndOf=\"parent\"-->\n        <!--            app:layout_constraintStart_toStartOf=\"parent\"-->\n        <!--            app:layout_constraintTop_toTopOf=\"parent\" />-->\n\n        <androidx.constraintlayout.widget.Guideline\n            android:id=\"@+id/guide1\"\n            android:layout_width=\"wrap_content\"\n            android:layout_height=\"match_parent\"\n            android:orientation=\"vertical\"\n            app:layout_constraintGuide_percent=\"0.39\" />\n\n        <TextView\n            android:id=\"@+id/dateTextApmc\"\n            android:layout_width=\"wrap_content\"\n            android:layout_height=\"wrap_content\"\n            android:layout_marginTop=\"12dp\"\n            android:text=\"Last Updated: \"\n            android:textColor=\"@color/fontColor\"\n            android:textSize=\"15sp\"\n            android:textStyle=\"bold\"\n            app:layout_constraintEnd_toStartOf=\"@id/dateValueTextApmc\"\n            app:layout_constraintTop_toBottomOf=\"@id/hr1Apmc\" />\n\n        <TextView\n            android:id=\"@+id/dateValueTextApmc\"\n            android:layout_width=\"wrap_content\"\n            android:layout_height=\"wrap_content\"\n            android:layout_marginHorizontal=\"17dp\"\n            android:layout_marginVertical=\"5dp\"\n            android:text=\"29/01/2021\"\n            android:textColor=\"@color/fontColor\"\n            android:textSize=\"15sp\"\n            android:textStyle=\"bold\"\n            app:layout_constraintBottom_toBottomOf=\"@id/dateTextApmc\"\n            app:layout_constraintEnd_toEndOf=\"parent\"\n\n            app:layout_constraintTop_toTopOf=\"@id/dateTextApmc\" />\n\n        <View\n            android:id=\"@+id/hr1Apmc\"\n            android:layout_width=\"match_parent\"\n            android:layout_height=\"1dp\"\n            android:layout_marginHorizontal=\"10dp\"\n            android:layout_marginTop=\"12dp\"\n            android:background=\"#202124\"\n            app:layout_constraintEnd_toEndOf=\"parent\"\n            app:layout_constraintStart_toStartOf=\"parent\"\n            app:layout_constraintTop_toBottomOf=\"@id/apmcSearchBar2\" />\n\n        <TextView\n            android:id=\"@+id/textAPMCWarning\"\n            android:layout_width=\"wrap_content\"\n            android:layout_height=\"wrap_content\"\n            android:text=\"Please Select State and District\"\n            android:textColor=\"@color/fontColor\"\n            android:textSize=\"21sp\"\n            android:textStyle=\"bold|italic\"\n            app:layout_constraintBottom_toBottomOf=\"parent\"\n            app:layout_constraintEnd_toEndOf=\"parent\"\n            app:layout_constraintStart_toStartOf=\"parent\"\n            app:layout_constraintTop_toBottomOf=\"@id/hr1Apmc\" />\n\n        <androidx.recyclerview.widget.RecyclerView\n            android:id=\"@+id/recycleAPMC\"\n            android:layout_width=\"0dp\"\n            android:layout_height=\"0dp\"\n            android:layout_margin=\"7dp\"\n            app:layout_constraintBottom_toBottomOf=\"parent\"\n            app:layout_constraintEnd_toEndOf=\"parent\"\n            app:layout_constraintStart_toStartOf=\"parent\"\n            app:layout_constraintTop_toBottomOf=\"@+id/dateTextApmc\"\n            tools:listitem=\"@layout/apmc_single_list\" />\n    </androidx.constraintlayout.widget.ConstraintLayout>\n\n\n</FrameLayout>"
  },
  {
    "path": "app/src/main/res/layout/fragment_article_list.xml",
    "content": "<?xml version=\"1.0\" encoding=\"utf-8\"?>\n<FrameLayout xmlns:android=\"http://schemas.android.com/apk/res/android\"\n    xmlns:tools=\"http://schemas.android.com/tools\"\n    android:layout_width=\"match_parent\"\n    android:layout_height=\"match_parent\"\n    xmlns:app=\"http://schemas.android.com/apk/res-auto\"\n    tools:context=\".view.articles.ArticleListFragment\">\n\n    <androidx.constraintlayout.widget.ConstraintLayout\n        android:layout_width=\"match_parent\"\n        android:layout_height=\"match_parent\">\n\n        <TextView\n            android:id=\"@+id/articleListTitleArticleListFrag\"\n            android:layout_width=\"wrap_content\"\n            android:layout_height=\"wrap_content\"\n            android:layout_marginVertical=\"7dp\"\n            android:text=\"Fruits\"\n            android:textSize=\"21sp\"\n            android:textStyle=\"bold\"\n            app:layout_constraintEnd_toEndOf=\"parent\"\n            app:layout_constraintStart_toStartOf=\"parent\"\n            app:layout_constraintTop_toTopOf=\"parent\" />\n        <androidx.recyclerview.widget.RecyclerView\n            android:id=\"@+id/recyclerArticleListFrag\"\n            android:layout_width=\"match_parent\"\n            android:layout_marginTop=\"7dp\"\n            android:layout_marginHorizontal=\"7dp\"\n            app:layout_constraintTop_toBottomOf=\"@id/articleListTitleArticleListFrag\"\n            android:layout_height=\"wrap_content\" />\n    </androidx.constraintlayout.widget.ConstraintLayout>\n</FrameLayout>"
  },
  {
    "path": "app/src/main/res/layout/fragment_cart.xml",
    "content": "<?xml version=\"1.0\" encoding=\"utf-8\"?>\n<FrameLayout xmlns:android=\"http://schemas.android.com/apk/res/android\"\n    xmlns:app=\"http://schemas.android.com/apk/res-auto\"\n    xmlns:tools=\"http://schemas.android.com/tools\"\n    android:layout_width=\"match_parent\"\n    android:layout_height=\"match_parent\"\n    tools:context=\".view.ecommerce.CartFragment\">\n\n    <androidx.constraintlayout.widget.ConstraintLayout\n        android:layout_width=\"match_parent\"\n        android:layout_height=\"match_parent\">\n\n        <ProgressBar\n            android:layout_width=\"wrap_content\"\n            android:layout_height=\"wrap_content\"\n            app:layout_constraintTop_toTopOf=\"parent\"\n            app:layout_constraintEnd_toEndOf=\"parent\"\n            app:layout_constraintStart_toStartOf=\"parent\"\n            android:id=\"@+id/progress_cart\"\n            app:layout_constraintBottom_toBottomOf=\"parent\"\n            android:indeterminateDrawable=\"@drawable/progress_background\"\n            />\n\n\n        <TextView\n            android:layout_width=\"wrap_content\"\n            android:layout_height=\"wrap_content\"\n            android:id=\"@+id/loadingTitleText\"\n            android:text=\"Loading...\"\n            app:layout_constraintTop_toBottomOf=\"@id/progress_cart\"\n            app:layout_constraintStart_toStartOf=\"parent\"\n            app:layout_constraintEnd_toEndOf=\"parent\"\n            android:layout_marginVertical=\"7dp\"\n            />\n\n        <View\n            android:id=\"@+id/totalBackgroundCart\"\n            android:layout_width=\"match_parent\"\n            android:layout_height=\"40dp\"\n            android:layout_marginHorizontal=\"14dp\"\n            android:layout_marginVertical=\"14dp\"\n            android:background=\"@drawable/round_borderless_general\"\n            android:backgroundTint=\"@color/colorThird\"\n            app:layout_constraintEnd_toEndOf=\"parent\"\n            app:layout_constraintStart_toStartOf=\"parent\"\n            app:layout_constraintTop_toTopOf=\"parent\" />\n\n        <TextView\n            android:id=\"@+id/totalItemsTitle\"\n            android:layout_width=\"wrap_content\"\n            android:layout_height=\"wrap_content\"\n            android:layout_marginLeft=\"14dp\"\n            android:text=\"Total Items: \"\n            android:textColor=\"#fff\"\n            android:textSize=\"18sp\"\n            android:textStyle=\"bold\"\n            app:layout_constraintBottom_toBottomOf=\"@id/totalBackgroundCart\"\n            app:layout_constraintStart_toStartOf=\"@id/totalBackgroundCart\"\n            app:layout_constraintTop_toTopOf=\"@id/totalBackgroundCart\" />\n\n        <TextView\n            android:id=\"@+id/totalItemsValue\"\n            android:layout_width=\"wrap_content\"\n            android:layout_height=\"wrap_content\"\n            android:layout_marginLeft=\"7dp\"\n            android:text=\"-\"\n            android:textColor=\"#fff\"\n            android:textSize=\"18sp\"\n            android:textStyle=\"bold\"\n            app:layout_constraintBottom_toBottomOf=\"@id/totalBackgroundCart\"\n            app:layout_constraintStart_toEndOf=\"@id/totalItemsTitle\"\n            app:layout_constraintTop_toTopOf=\"@id/totalBackgroundCart\" />\n\n        <TextView\n            android:id=\"@+id/totalCostTitle\"\n            android:layout_width=\"wrap_content\"\n            android:layout_height=\"wrap_content\"\n            android:layout_marginRight=\"7dp\"\n            android:text=\"Total Cost: \"\n            android:textColor=\"#fff\"\n            android:textSize=\"18sp\"\n            android:textStyle=\"bold\"\n            app:layout_constraintBottom_toBottomOf=\"@id/totalBackgroundCart\"\n            app:layout_constraintEnd_toStartOf=\"@id/totalCostValue\"\n            app:layout_constraintTop_toTopOf=\"@id/totalBackgroundCart\" />\n\n        <TextView\n            android:id=\"@+id/totalCostValue\"\n            android:layout_width=\"wrap_content\"\n            android:layout_height=\"wrap_content\"\n            android:layout_marginRight=\"14dp\"\n            android:text=\"-\"\n            android:textColor=\"#fff\"\n            android:textSize=\"18sp\"\n            android:textStyle=\"bold\"\n            app:layout_constraintBottom_toBottomOf=\"@id/totalBackgroundCart\"\n            app:layout_constraintEnd_toEndOf=\"@id/totalBackgroundCart\"\n            app:layout_constraintTop_toTopOf=\"@id/totalBackgroundCart\" />\n\n        <View\n            android:id=\"@+id/hrCart\"\n            android:layout_width=\"match_parent\"\n            android:layout_height=\"2dp\"\n            android:layout_marginHorizontal=\"7dp\"\n            android:layout_marginVertical=\"7dp\"\n            android:background=\"@color/colorPrimary\"\n            app:layout_constraintStart_toStartOf=\"parent\"\n            app:layout_constraintTop_toBottomOf=\"@id/totalBackgroundCart\" />\n\n\n        <androidx.recyclerview.widget.RecyclerView\n            android:id=\"@+id/recyclerCart\"\n            android:layout_width=\"match_parent\"\n            android:layout_height=\"0dp\"\n            android:layout_marginTop=\"7dp\"\n            android:backgroundTint=\"@color/secondary\"\n            app:layout_constraintBottom_toTopOf=\"@id/buyAllBtn\"\n            app:layout_constraintEnd_toEndOf=\"parent\"\n            app:layout_constraintStart_toStartOf=\"parent\"\n            app:layout_constraintTop_toBottomOf=\"@id/hrCart\" />\n\n\n        <Button\n            android:id=\"@+id/buyAllBtn\"\n            android:layout_width=\"match_parent\"\n            android:layout_height=\"wrap_content\"\n            android:layout_margin=\"7dp\"\n            android:background=\"@drawable/round_borderless_general\"\n            android:backgroundTint=\"@color/colorThird\"\n            android:padding=\"7dp\"\n            android:text=\"Buy All\"\n            android:textAllCaps=\"false\"\n            android:textColor=\"#fff\"\n            android:textSize=\"21sp\"\n            app:layout_constraintBottom_toBottomOf=\"parent\"\n            app:layout_constraintEnd_toEndOf=\"parent\"\n            app:layout_constraintStart_toStartOf=\"parent\" />\n\n\n    </androidx.constraintlayout.widget.ConstraintLayout>\n\n</FrameLayout>"
  },
  {
    "path": "app/src/main/res/layout/fragment_dashboard.xml",
    "content": "<?xml version=\"1.0\" encoding=\"utf-8\"?>\n<FrameLayout xmlns:android=\"http://schemas.android.com/apk/res/android\"\n    xmlns:app=\"http://schemas.android.com/apk/res-auto\"\n    xmlns:tools=\"http://schemas.android.com/tools\"\n    android:layout_width=\"match_parent\"\n    android:layout_height=\"match_parent\"\n    tools:context=\".view.weather.WeatherFragment\">\n\n    <ScrollView\n        android:layout_width=\"match_parent\"\n        android:layout_height=\"match_parent\">\n\n        <!-- TODO: Update blank fragment layout -->\n        <androidx.constraintlayout.widget.ConstraintLayout\n            android:layout_width=\"match_parent\"\n            android:layout_height=\"match_parent\"\n            android:paddingHorizontal=\"8dp\">\n\n            <androidx.cardview.widget.CardView\n                android:id=\"@+id/weatherCard\"\n                android:layout_width=\"match_parent\"\n                android:layout_height=\"wrap_content\"\n                android:layout_marginTop=\"10dp\"\n                android:background=\"#6800BFFF\"\n                app:cardBackgroundColor=\"@color/secondary\"\n                app:cardCornerRadius=\"15sp\"\n                app:cardElevation=\"15sp\"\n                app:layout_constraintEnd_toEndOf=\"parent\"\n                app:layout_constraintHorizontal_bias=\"0.5\"\n                app:layout_constraintStart_toStartOf=\"parent\"\n                app:layout_constraintTop_toTopOf=\"parent\">\n\n                <androidx.constraintlayout.widget.ConstraintLayout\n                    android:layout_width=\"match_parent\"\n                    android:layout_height=\"match_parent\">\n\n                    <ImageView\n                        android:id=\"@+id/weathIconImageWeathFrag\"\n                        android:layout_width=\"100dp\"\n                        android:layout_height=\"100dp\"\n                        android:layout_marginStart=\"20dp\"\n                        android:src=\"@drawable/ic_launcher_foreground\"\n                        app:layout_constraintBottom_toBottomOf=\"parent\"\n                        app:layout_constraintStart_toStartOf=\"parent\"\n\n                        app:layout_constraintTop_toTopOf=\"parent\" />\n\n                    <TextView\n                        android:id=\"@+id/weatherCityTitle\"\n                        android:layout_width=\"wrap_content\"\n                        android:layout_height=\"wrap_content\"\n                        android:text=\"-\"\n                        android:textColor=\"@color/fontColor\"\n                        android:textSize=\"21sp\"\n                        android:textStyle=\"bold\"\n                        app:layout_constraintBottom_toTopOf=\"@id/windTextWeathFrag\"\n                        app:layout_constraintEnd_toEndOf=\"parent\"\n                        app:layout_constraintStart_toEndOf=\"@id/weathIconImageWeathFrag\"\n                        app:layout_constraintTop_toTopOf=\"parent\" />\n\n                    <TextView\n                        android:id=\"@+id/weathTempTextWeathFrag\"\n                        android:layout_width=\"wrap_content\"\n                        android:layout_height=\"wrap_content\"\n                        android:layout_marginStart=\"20dp\"\n                        android:text=\"- C\"\n                        android:textColor=\"@color/fontColor\"\n                        android:textSize=\"21sp\"\n                        android:textStyle=\"bold\"\n                        app:layout_constraintBottom_toBottomOf=\"parent\"\n                        app:layout_constraintEnd_toStartOf=\"@id/windTextWeathFrag\"\n                        app:layout_constraintStart_toEndOf=\"@id/weathIconImageWeathFrag\"\n                        app:layout_constraintTop_toBottomOf=\"@id/weatherCityTitle\" />\n\n                    <TextView\n                        android:id=\"@+id/windTextWeathFrag\"\n                        android:layout_width=\"wrap_content\"\n                        android:layout_height=\"wrap_content\"\n                        android:text=\"Wind : - km/h\"\n                        android:textColor=\"@color/fontColor\"\n                        android:textSize=\"14sp\"\n                        app:layout_constraintBottom_toTopOf=\"@id/humidityTextWeathFrag\"\n                        app:layout_constraintEnd_toEndOf=\"parent\"\n                        app:layout_constraintStart_toEndOf=\"@id/weathTempTextWeathFrag\"\n                        app:layout_constraintTop_toBottomOf=\"@id/weatherCityTitle\" />\n\n                    <TextView\n                        android:id=\"@+id/humidityTextWeathFrag\"\n                        android:layout_width=\"wrap_content\"\n                        android:layout_height=\"wrap_content\"\n                        android:text=\"Humidity : - %\"\n                        android:textColor=\"@color/fontColor\"\n                        android:textSize=\"14sp\"\n                        app:layout_constraintBottom_toBottomOf=\"parent\"\n                        app:layout_constraintStart_toStartOf=\"@id/windTextWeathFrag\"\n                        app:layout_constraintTop_toBottomOf=\"@id/windTextWeathFrag\" />\n\n                </androidx.constraintlayout.widget.ConstraintLayout>\n            </androidx.cardview.widget.CardView>\n\n            <TextView\n                android:id=\"@+id/articlesTitle\"\n                android:layout_width=\"wrap_content\"\n                android:layout_height=\"wrap_content\"\n                android:layout_marginVertical=\"14dp\"\n                android:text=\"Articles\"\n\n                android:textSize=\"21sp\"\n                android:textColor=\"@color/fontColor\"\n                android:textStyle=\"bold\"\n\n                app:layout_constraintStart_toStartOf=\"parent\"\n                app:layout_constraintTop_toBottomOf=\"@id/weatherCard\" />\n\n            <HorizontalScrollView\n                android:id=\"@+id/categoryHorizontal\"\n                android:layout_width=\"match_parent\"\n                android:layout_height=\"wrap_content\"\n                android:scrollbars=\"none\"\n                android:layout_marginVertical=\"7dp\"\n                app:layout_constraintStart_toStartOf=\"parent\"\n                app:layout_constraintTop_toBottomOf=\"@id/articlesTitle\">\n\n                <LinearLayout\n                    android:layout_width=\"match_parent\"\n                    android:layout_height=\"match_parent\">\n\n\n\n                    <androidx.cardview.widget.CardView\n                        android:id=\"@+id/cat1\"\n                        android:layout_width=\"wrap_content\"\n                        android:layout_height=\"wrap_content\"\n                        android:layout_marginHorizontal=\"10dp\"\n\n                        android:layout_marginVertical=\"10dp\">\n\n                        <LinearLayout\n                            android:layout_width=\"match_parent\"\n                            android:layout_height=\"match_parent\"\n                            android:orientation=\"vertical\">\n\n                            <ImageView\n                                android:layout_width=\"100dp\"\n                                android:layout_height=\"100dp\"\n                                android:scaleType=\"fitXY\"\n                                android:src=\"@drawable/plant3\" />\n\n                            <TextView\n                                android:layout_width=\"wrap_content\"\n                                android:layout_height=\"wrap_content\"\n                                android:layout_gravity=\"center\"\n                                android:text=\"Plants\"\n                                android:textColor=\"@color/fontColor\"\n                                android:layout_marginVertical=\"7dp\"\n                                android:textSize=\"14sp\"\n                                android:textStyle=\"bold\" />\n                        </LinearLayout>\n                    </androidx.cardview.widget.CardView>\n\n                    <androidx.cardview.widget.CardView\n                        android:layout_width=\"wrap_content\"\n                        android:layout_height=\"wrap_content\"\n                        android:id=\"@+id/cat2\"\n                        android:layout_marginHorizontal=\"10dp\"\n                        android:layout_marginVertical=\"10dp\">\n\n                        <LinearLayout\n                            android:layout_width=\"match_parent\"\n                            android:layout_height=\"match_parent\"\n                            android:orientation=\"vertical\">\n\n                            <ImageView\n                                android:layout_width=\"100dp\"\n                                android:layout_height=\"100dp\"\n                                android:scaleType=\"fitXY\"\n                                android:src=\"@drawable/method2\" />\n\n                            <TextView\n                                android:layout_width=\"wrap_content\"\n                                android:layout_height=\"wrap_content\"\n                                android:textColor=\"@color/fontColor\"\n                                android:layout_gravity=\"center\"\n                                android:text=\"Methods\"\n                                android:layout_marginVertical=\"7dp\"\n                                android:textSize=\"14sp\"\n                                android:textStyle=\"bold\" />\n                        </LinearLayout>\n                    </androidx.cardview.widget.CardView>\n\n                    <androidx.cardview.widget.CardView\n                        android:layout_width=\"wrap_content\"\n                        android:layout_height=\"wrap_content\"\n                        android:id=\"@+id/cat3\"\n                        android:layout_marginHorizontal=\"10dp\"\n                        android:layout_marginVertical=\"10dp\">\n\n                        <LinearLayout\n                            android:layout_width=\"match_parent\"\n                            android:layout_height=\"match_parent\"\n                            android:orientation=\"vertical\">\n\n                            <ImageView\n                                android:layout_width=\"100dp\"\n                                android:layout_height=\"100dp\"\n                                android:scaleType=\"fitXY\"\n                                android:src=\"@drawable/disease\" />\n\n                            <TextView\n                                android:layout_width=\"wrap_content\"\n                                android:layout_height=\"wrap_content\"\n                                android:textColor=\"@color/fontColor\"\n                                android:layout_marginVertical=\"7dp\"\n                                android:layout_gravity=\"center\"\n                                android:text=\"Diseases\"\n                                android:textSize=\"14sp\"\n                                android:textStyle=\"bold\" />\n                        </LinearLayout>\n                    </androidx.cardview.widget.CardView>\n\n                    <androidx.cardview.widget.CardView\n                        android:id=\"@+id/cat4\"\n                        android:layout_width=\"wrap_content\"\n                        android:layout_height=\"wrap_content\"\n\n                        android:layout_marginVertical=\"10dp\"\n                        android:layout_marginEnd=\"10dp\">\n\n                        <LinearLayout\n                            android:layout_width=\"match_parent\"\n                            android:layout_height=\"match_parent\"\n                            android:orientation=\"vertical\">\n\n                            <ImageView\n                                android:layout_width=\"100dp\"\n                                android:layout_height=\"100dp\"\n                                android:scaleType=\"fitXY\"\n                                android:src=\"@drawable/yojna2\" />\n\n                            <TextView\n                                android:layout_width=\"wrap_content\"\n                                android:layout_height=\"wrap_content\"\n                                android:layout_gravity=\"center\"\n                                android:text=\"Yojanas\"\n                                android:textColor=\"@color/fontColor\"\n                                android:layout_marginVertical=\"7dp\"\n                                android:textSize=\"14sp\"\n                                android:textStyle=\"bold\" />\n                        </LinearLayout>\n                    </androidx.cardview.widget.CardView>\n\n                    <androidx.cardview.widget.CardView\n                        android:id=\"@+id/cat5\"\n                        android:layout_width=\"wrap_content\"\n                        android:layout_height=\"wrap_content\"\n                        android:layout_marginHorizontal=\"10dp\"\n\n                        android:layout_marginVertical=\"10dp\">\n\n                        <LinearLayout\n                            android:layout_width=\"match_parent\"\n                            android:layout_height=\"match_parent\"\n                            android:orientation=\"vertical\">\n\n                            <ImageView\n                                android:layout_width=\"100dp\"\n                                android:layout_height=\"100dp\"\n                                android:scaleType=\"fitXY\"\n                                android:src=\"@drawable/fruits\" />\n\n                            <TextView\n                                android:layout_width=\"wrap_content\"\n                                android:layout_height=\"wrap_content\"\n                                android:layout_gravity=\"center\"\n                                android:layout_marginVertical=\"7dp\"\n                                android:textColor=\"@color/fontColor\"\n                                android:text=\"Fruits\"\n                                android:textSize=\"14sp\"\n                                android:textStyle=\"bold\" />\n                        </LinearLayout>\n                    </androidx.cardview.widget.CardView>\n\n                </LinearLayout>\n            </HorizontalScrollView>\n\n            <View\n                android:id=\"@+id/carousel\"\n                android:layout_width=\"match_parent\"\n                android:layout_height=\"175dp\"\n                android:layout_marginVertical=\"10dp\"\n                android:background=\"@color/colorPrimary\"\n                app:layout_constraintTop_toBottomOf=\"@id/categoryHorizontal\" />\n\n            <TextView\n                android:id=\"@+id/productsTitle\"\n                android:layout_width=\"wrap_content\"\n                android:layout_height=\"wrap_content\"\n                android:layout_marginVertical=\"14dp\"\n                android:textColor=\"@color/fontColor\"\n                android:text=\"Products\"\n                android:textSize=\"21sp\"\n                android:textStyle=\"bold\"\n                app:layout_constraintStart_toStartOf=\"parent\"\n                app:layout_constraintTop_toBottomOf=\"@id/carousel\" />\n\n<!--            <androidx.cardview.widget.CardView-->\n<!--                android:id=\"@+id/ecomm1\"-->\n<!--                android:layout_width=\"0dp\"-->\n<!--                android:layout_height=\"175dp\"-->\n<!--                android:layout_marginVertical=\"10dp\"-->\n<!--                android:layout_marginEnd=\"10dp\"-->\n<!--                app:cardCornerRadius=\"10dp\"-->\n<!--                app:layout_constraintEnd_toStartOf=\"@id/ecomm2\"-->\n<!--                app:layout_constraintStart_toStartOf=\"parent\"-->\n<!--                app:layout_constraintTop_toBottomOf=\"@id/productsTitle\">-->\n\n<!--                <androidx.constraintlayout.widget.ConstraintLayout-->\n<!--                    android:layout_width=\"match_parent\"-->\n<!--                    android:layout_height=\"match_parent\">-->\n\n<!--                    <ImageView-->\n<!--                        android:id=\"@+id/ecommIcon1\"-->\n<!--                        android:layout_width=\"0dp\"-->\n<!--                        android:layout_height=\"125dp\"-->\n<!--                        android:background=\"@color/colorPrimary\"-->\n<!--                        app:layout_constraintEnd_toEndOf=\"parent\"-->\n<!--                        app:layout_constraintHorizontal_bias=\"0.5\"-->\n<!--                        app:layout_constraintStart_toStartOf=\"parent\"-->\n<!--                        app:layout_constraintTop_toTopOf=\"parent\" />-->\n\n<!--                    <TextView-->\n<!--                        android:id=\"@+id/ecommName1\"-->\n<!--                        android:layout_width=\"wrap_content\"-->\n<!--                        android:layout_height=\"wrap_content\"-->\n<!--                        android:paddingHorizontal=\"10dp\"-->\n<!--                        android:text=\"TVC Tractor\"-->\n<!--                        android:textSize=\"14sp\"-->\n<!--                        app:layout_constraintBottom_toTopOf=\"@id/someID\"-->\n<!--                        android:textStyle=\"bold\"-->\n<!--                        app:layout_constraintStart_toStartOf=\"parent\"-->\n<!--                        app:layout_constraintTop_toBottomOf=\"@id/ecommIcon1\" />-->\n\n<!--                    <TextView-->\n<!--                        android:layout_width=\"wrap_content\"-->\n<!--                        android:layout_height=\"wrap_content\"-->\n<!--                        android:paddingHorizontal=\"10dp\"-->\n<!--                        android:id=\"@+id/someID\"-->\n<!--                        android:text=\"$994\"-->\n<!--                        android:textColor=\"@color/colorPrimary\"-->\n<!--                        app:layout_constraintBottom_toBottomOf=\"parent\"-->\n<!--                        app:layout_constraintStart_toStartOf=\"parent\"-->\n<!--                        app:layout_constraintTop_toBottomOf=\"@id/ecommName1\" />-->\n\n<!--                </androidx.constraintlayout.widget.ConstraintLayout>-->\n\n<!--            </androidx.cardview.widget.CardView>-->\n\n<!--            <androidx.cardview.widget.CardView-->\n<!--                android:id=\"@+id/ecomm2\"-->\n<!--                android:layout_width=\"0dp\"-->\n<!--                android:layout_height=\"175dp\"-->\n<!--                android:layout_marginVertical=\"10dp\"-->\n<!--                android:layout_marginStart=\"10dp\"-->\n<!--                app:cardCornerRadius=\"10dp\"-->\n<!--                app:layout_constraintEnd_toEndOf=\"parent\"-->\n<!--                app:layout_constraintStart_toEndOf=\"@id/ecomm1\"-->\n<!--                app:layout_constraintTop_toBottomOf=\"@id/productsTitle\">-->\n\n<!--                <androidx.constraintlayout.widget.ConstraintLayout-->\n<!--                    android:layout_width=\"match_parent\"-->\n<!--                    android:layout_height=\"match_parent\">-->\n\n<!--                    <ImageView-->\n<!--                        android:id=\"@+id/ecommIcon2\"-->\n<!--                        android:layout_width=\"0dp\"-->\n<!--                        android:layout_height=\"125dp\"-->\n<!--                        android:background=\"@color/colorPrimary\"-->\n<!--                        app:layout_constraintEnd_toEndOf=\"parent\"-->\n<!--                        app:layout_constraintHorizontal_bias=\"0.5\"-->\n<!--                        app:layout_constraintStart_toStartOf=\"parent\"-->\n<!--                        app:layout_constraintTop_toTopOf=\"parent\" />-->\n\n<!--                    <TextView-->\n<!--                        android:id=\"@+id/ecommName2\"-->\n<!--                        android:layout_width=\"wrap_content\"-->\n<!--                        android:layout_height=\"wrap_content\"-->\n<!--                        android:paddingHorizontal=\"10dp\"-->\n<!--                        android:text=\"TVC Tractor\"-->\n<!--                        android:textSize=\"14sp\"-->\n<!--                        android:textStyle=\"bold\"-->\n<!--                        app:layout_constraintStart_toStartOf=\"parent\"-->\n<!--                        app:layout_constraintTop_toBottomOf=\"@id/ecommIcon2\" />-->\n\n<!--                    <TextView-->\n<!--                        android:layout_width=\"wrap_content\"-->\n<!--                        android:layout_height=\"wrap_content\"-->\n<!--                        android:paddingHorizontal=\"10dp\"-->\n<!--                        android:text=\"$994\"-->\n<!--                        android:textColor=\"@color/colorPrimary\"-->\n<!--                        app:layout_constraintStart_toStartOf=\"parent\"-->\n<!--                        app:layout_constraintTop_toBottomOf=\"@id/ecommName2\" />-->\n\n<!--                </androidx.constraintlayout.widget.ConstraintLayout>-->\n\n<!--            </androidx.cardview.widget.CardView>-->\n\n<!--            <androidx.cardview.widget.CardView-->\n<!--                android:id=\"@+id/ecomm3\"-->\n<!--                android:layout_width=\"0dp\"-->\n<!--                android:layout_height=\"175dp\"-->\n<!--                android:layout_marginVertical=\"10dp\"-->\n<!--                android:layout_marginEnd=\"10dp\"-->\n<!--                app:cardCornerRadius=\"10dp\"-->\n<!--                app:layout_constraintEnd_toStartOf=\"@id/ecomm4\"-->\n<!--                app:layout_constraintStart_toStartOf=\"parent\"-->\n<!--                app:layout_constraintTop_toBottomOf=\"@id/ecomm1\">-->\n\n<!--                <androidx.constraintlayout.widget.ConstraintLayout-->\n<!--                    android:layout_width=\"match_parent\"-->\n<!--                    android:layout_height=\"match_parent\">-->\n\n<!--                    <ImageView-->\n<!--                        android:id=\"@+id/ecommIcon3\"-->\n<!--                        android:layout_width=\"0dp\"-->\n<!--                        android:layout_height=\"125dp\"-->\n<!--                        android:background=\"@color/colorPrimary\"-->\n<!--                        app:layout_constraintEnd_toEndOf=\"parent\"-->\n<!--                        app:layout_constraintHorizontal_bias=\"0.5\"-->\n<!--                        app:layout_constraintStart_toStartOf=\"parent\"-->\n<!--                        app:layout_constraintTop_toTopOf=\"parent\" />-->\n\n<!--                    <TextView-->\n<!--                        android:id=\"@+id/ecommName3\"-->\n<!--                        android:layout_width=\"wrap_content\"-->\n<!--                        android:layout_height=\"wrap_content\"-->\n<!--                        android:paddingHorizontal=\"10dp\"-->\n<!--                        android:text=\"TVC Tractor\"-->\n<!--                        android:textSize=\"14sp\"-->\n<!--                        android:textStyle=\"bold\"-->\n<!--                        app:layout_constraintStart_toStartOf=\"parent\"-->\n<!--                        app:layout_constraintTop_toBottomOf=\"@id/ecommIcon3\" />-->\n\n<!--                    <TextView-->\n<!--                        android:layout_width=\"wrap_content\"-->\n<!--                        android:layout_height=\"wrap_content\"-->\n<!--                        android:paddingHorizontal=\"10dp\"-->\n<!--                        android:text=\"$994\"-->\n<!--                        android:textColor=\"@color/colorPrimary\"-->\n<!--                        app:layout_constraintStart_toStartOf=\"parent\"-->\n<!--                        app:layout_constraintTop_toBottomOf=\"@id/ecommName3\" />-->\n\n<!--                </androidx.constraintlayout.widget.ConstraintLayout>-->\n\n<!--            </androidx.cardview.widget.CardView>-->\n\n<!--            <androidx.cardview.widget.CardView-->\n<!--                android:id=\"@+id/ecomm4\"-->\n<!--                android:layout_width=\"0dp\"-->\n<!--                android:layout_height=\"175dp\"-->\n<!--                android:layout_marginVertical=\"10dp\"-->\n<!--                android:layout_marginStart=\"10dp\"-->\n<!--                app:cardCornerRadius=\"10dp\"-->\n<!--                app:layout_constraintEnd_toEndOf=\"parent\"-->\n<!--                app:layout_constraintStart_toEndOf=\"@id/ecomm3\"-->\n<!--                app:layout_constraintTop_toBottomOf=\"@id/ecomm2\">-->\n\n<!--                <androidx.constraintlayout.widget.ConstraintLayout-->\n<!--                    android:layout_width=\"match_parent\"-->\n<!--                    android:layout_height=\"match_parent\">-->\n\n<!--                    <ImageView-->\n<!--                        android:id=\"@+id/ecommIcon4\"-->\n<!--                        android:layout_width=\"0dp\"-->\n<!--                        android:layout_height=\"125dp\"-->\n<!--                        android:background=\"@color/colorPrimary\"-->\n<!--                        app:layout_constraintEnd_toEndOf=\"parent\"-->\n<!--                        app:layout_constraintHorizontal_bias=\"0.5\"-->\n<!--                        app:layout_constraintStart_toStartOf=\"parent\"-->\n<!--                        app:layout_constraintTop_toTopOf=\"parent\" />-->\n\n<!--                    <TextView-->\n<!--                        android:id=\"@+id/ecommName4\"-->\n<!--                        android:layout_width=\"wrap_content\"-->\n<!--                        android:layout_height=\"wrap_content\"-->\n<!--                        android:paddingHorizontal=\"10dp\"-->\n<!--                        android:text=\"TVC Tractor\"-->\n<!--                        android:textSize=\"14sp\"-->\n<!--                        android:textStyle=\"bold\"-->\n<!--                        app:layout_constraintStart_toStartOf=\"parent\"-->\n<!--                        app:layout_constraintTop_toBottomOf=\"@id/ecommIcon4\" />-->\n\n<!--                    <TextView-->\n<!--                        android:layout_width=\"wrap_content\"-->\n<!--                        android:layout_height=\"wrap_content\"-->\n<!--                        android:paddingHorizontal=\"10dp\"-->\n<!--                        android:text=\"$994\"-->\n<!--                        android:textColor=\"@color/colorPrimary\"-->\n<!--                        app:layout_constraintStart_toStartOf=\"parent\"-->\n<!--                        app:layout_constraintTop_toBottomOf=\"@id/ecommName4\" />-->\n\n<!--                </androidx.constraintlayout.widget.ConstraintLayout>-->\n\n<!--            </androidx.cardview.widget.CardView>-->\n\n            <androidx.recyclerview.widget.RecyclerView\n                android:layout_width=\"match_parent\"\n                android:layout_height=\"wrap_content\"\n                android:id=\"@+id/dashboardEcommRecycler\"\n                app:layout_constraintStart_toStartOf=\"parent\"\n                app:layout_constraintTop_toBottomOf=\"@id/productsTitle\"\n                android:layout_marginVertical=\"7dp\"\n                app:layout_constraintBottom_toBottomOf=\"parent\"\n                app:layout_constraintEnd_toEndOf=\"parent\"\n                />\n\n\n        </androidx.constraintlayout.widget.ConstraintLayout>\n    </ScrollView>\n</FrameLayout>"
  },
  {
    "path": "app/src/main/res/layout/fragment_ecommerce.xml",
    "content": "<?xml version=\"1.0\" encoding=\"utf-8\"?>\n<FrameLayout xmlns:android=\"http://schemas.android.com/apk/res/android\"\n    xmlns:tools=\"http://schemas.android.com/tools\"\n    android:layout_width=\"match_parent\"\n    android:layout_height=\"match_parent\"\n    xmlns:app=\"http://schemas.android.com/apk/res-auto\"\n    tools:context=\".view.ecommerce.EcommerceFragment\">\n\n\n  <androidx.constraintlayout.widget.ConstraintLayout\n      android:layout_width=\"match_parent\"\n      android:layout_height=\"match_parent\">\n      <HorizontalScrollView\n          android:scrollbars=\"none\"\n          android:scrollbarStyle=\"insideOverlay\"\n          android:id=\"@+id/scroll1\"\n          app:layout_constraintStart_toStartOf=\"parent\"\n          app:layout_constraintTop_toTopOf=\"parent\"\n          android:layout_width=\"match_parent\"\n          android:layout_height=\"wrap_content\">\n\n<com.google.android.material.chip.ChipGroup\nandroid:layout_marginVertical=\"7dp\"\n    app:layout_constraintTop_toTopOf=\"parent\"\n    app:layout_constraintStart_toStartOf=\"parent\"\n    app:layout_constraintEnd_toEndOf=\"parent\"\n    android:id=\"@+id/chipgrp\"\n    android:layout_width=\"wrap_content\"\n    android:layout_height=\"wrap_content\"\n    android:gravity=\"center_vertical\"\n    android:orientation=\"horizontal\"\n    app:chipSpacing=\"10dp\"\n    app:singleSelection=\"true\"\n    app:checkedChip=\"@id/chip1\"\n    app:itemSpacing=\"15dp\"\n    app:singleLine=\"true\">\n\n\n\n\n\n\n    <com.google.android.material.chip.Chip\n        app:chipBackgroundColor=\"@color/chip_bg_states\"\n        android:id=\"@+id/chip1\"\n        style=\"@style/Widget.MaterialComponents.Chip.Filter\"\n        android:layout_width=\"wrap_content\"\n        android:layout_height=\"wrap_content\"\nandroid:layout_marginLeft=\"12dp\"\n        android:text=\"ALL\"\n        android:textColor=\"@color/fontColor\"\n\n\n         />\n\n    <com.google.android.material.chip.Chip\n\n        android:id=\"@+id/chip2\"\n        style=\"@style/Widget.MaterialComponents.Chip.Filter\"\n        android:layout_width=\"wrap_content\"\n        android:layout_height=\"wrap_content\"\n\n        android:text=\"FERTILIZER\"\n        android:textColor=\"@color/fontColor\"\n\n        app:chipBackgroundColor=\"@color/chip_bg_states\"\n        />\n    <com.google.android.material.chip.Chip\n        android:id=\"@+id/chip3\"\n        style=\"@style/Widget.MaterialComponents.Chip.Filter\"\n        android:layout_width=\"wrap_content\"\n        android:layout_height=\"wrap_content\"\n\n        android:text=\"PESTISIDE\"\n        android:textColor=\"@color/fontColor\"\n\n        app:chipBackgroundColor=\"@color/chip_bg_states\"\n        />\n    <com.google.android.material.chip.Chip\n        android:id=\"@+id/chip4\"\n        style=\"@style/Widget.MaterialComponents.Chip.Filter\"\n        android:layout_width=\"wrap_content\"\n        android:layout_height=\"wrap_content\"\n\n        android:text=\"MACHINE\"\n        android:textColor=\"@color/fontColor\"\n\n        app:chipBackgroundColor=\"@color/chip_bg_states\"\n        />\n    <com.google.android.material.chip.Chip\n        android:id=\"@+id/chip5\"\n        style=\"@style/Widget.MaterialComponents.Chip.Filter\"\n        android:layout_width=\"wrap_content\"\n        android:layout_height=\"wrap_content\"\n\n        android:text=\"SEED\"\n        android:textColor=\"@color/fontColor\"\n\n        app:chipBackgroundColor=\"@color/chip_bg_states\"\n        />\n    <com.google.android.material.chip.Chip\n        android:id=\"@+id/chip6\"\n        style=\"@style/Widget.MaterialComponents.Chip.Filter\"\n        android:layout_width=\"wrap_content\"\n        android:layout_height=\"wrap_content\"\n\n        android:text=\"@string/app_name\"\n        android:textColor=\"@color/fontColor\"\n\n        app:chipBackgroundColor=\"@color/chip_bg_states\"\n        />\n\n\n\n\n\n</com.google.android.material.chip.ChipGroup>\n      </HorizontalScrollView>\n\n\n      <androidx.recyclerview.widget.RecyclerView\n          android:id=\"@+id/ecommrcyclr\"\n          android:layout_width=\"match_parent\"\n          android:layout_height=\"wrap_content\"\ntools:listitem=\"@layout/single_ecomm_item\"\n          app:layout_constraintStart_toStartOf=\"parent\"\n          app:layout_constraintTop_toBottomOf=\"@+id/scroll1\" />\n\n  </androidx.constraintlayout.widget.ConstraintLayout>\n\n</FrameLayout>"
  },
  {
    "path": "app/src/main/res/layout/fragment_ecommerce_item.xml",
    "content": "<?xml version=\"1.0\" encoding=\"utf-8\"?>\n<FrameLayout xmlns:android=\"http://schemas.android.com/apk/res/android\"\n    xmlns:app=\"http://schemas.android.com/apk/res-auto\"\n    xmlns:tools=\"http://schemas.android.com/tools\"\n    android:layout_width=\"match_parent\"\n    android:layout_height=\"match_parent\"\n    android:background=\"@color/secondary3\"\n    tools:context=\".view.ecommerce.EcommerceItemFragment\">\n\n    <androidx.constraintlayout.widget.ConstraintLayout\n        android:layout_width=\"match_parent\"\n\n        android:layout_height=\"match_parent\">\n\n        <ProgressBar\n            android:layout_width=\"wrap_content\"\n            android:layout_height=\"wrap_content\"\n            app:layout_constraintTop_toTopOf=\"parent\"\n            app:layout_constraintEnd_toEndOf=\"parent\"\n            android:id=\"@+id/progress_ecommItem\"\n            android:visibility=\"visible\"\n            app:layout_constraintStart_toStartOf=\"parent\"\n            android:indeterminateDrawable=\"@drawable/progress_background\"\n            android:elevation=\"12dp\"\n            app:layout_constraintBottom_toBottomOf=\"parent\"\n            />\n\n        <TextView\n            android:layout_width=\"wrap_content\"\n            android:layout_height=\"wrap_content\"\n            app:layout_constraintStart_toStartOf=\"parent\"\n            app:layout_constraintEnd_toEndOf=\"parent\"\n            app:layout_constraintTop_toBottomOf=\"@id/progress_ecommItem\"\n            android:layout_marginVertical=\"7dp\"\n            android:text=\"Loading...\"\n            android:id=\"@+id/loadingText\"\n            android:elevation=\"12dp\"\n            />\n\n\n\n\n\n\n        <LinearLayout\n            android:id=\"@+id/container_poster\"\n            android:layout_width=\"match_parent\"\n            app:layout_constraintStart_toStartOf=\"parent\"\n            app:layout_constraintTop_toTopOf=\"parent\"\n            android:elevation=\"0dp\"\n            android:layout_height=\"wrap_content\">\n        <com.asura.library.views.PosterSlider\n            android:id=\"@+id/poster_slider\"\n            android:layout_width=\"match_parent\"\n            android:layout_height=\"220dp\"\n            android:background=\"@color/secondary3\"\n\n            app:defaultIndicator=\"circle\"\n            app:hideIndicators=\"true\"\n            app:imageSlideInterval=\"5000\"\n\n            app:loopSlides=\"true\" />\n        </LinearLayout>\n\n        <androidx.core.widget.NestedScrollView\n            android:fillViewport=\"true\"\n            android:layout_width=\"match_parent\"\n            android:layout_height=\"0dp\"\n            android:orientation=\"vertical\"\n            app:layout_constraintBottom_toBottomOf=\"parent\"\n            app:layout_constraintEnd_toEndOf=\"parent\"\n            android:layout_marginHorizontal=\"0.5dp\"\n            android:elevation=\"1dp\"\n            app:layout_constraintTop_toTopOf=\"parent\"\n            android:layout_marginTop=\"200dp\"\n            app:layout_constraintStart_toStartOf=\"parent\"\n\n            >\n\n            <androidx.constraintlayout.widget.ConstraintLayout\n                android:layout_width=\"match_parent\"\n                android:layout_height=\"match_parent\"\n                android:background=\"@drawable/ecommbackground\"\n\n                android:elevation=\"1dp\"\n                android:paddingHorizontal=\"14dp\">\n\n                <TextView\n                    android:id=\"@+id/productTitle\"\n                    android:layout_width=\"wrap_content\"\n                    android:layout_height=\"wrap_content\"\n                    android:layout_marginTop=\"14dp\"\n                    android:text=\"Natures Plus Organic Fertiliser, 1 Kg\"\n                    android:textStyle=\"bold\"\n                    android:textColor=\"@color/greenDark\"\n                    android:textSize=\"21sp\"\n                    app:layout_constraintBottom_toTopOf=\"@id/productTitle\"\n                    app:layout_constraintStart_toStartOf=\"parent\"\n                    app:layout_constraintTop_toTopOf=\"parent\"\n\n                    />\n\n                <TextView\n                    android:id=\"@+id/productShortDescription\"\n                    android:layout_width=\"wrap_content\"\n                    android:layout_height=\"wrap_content\"\n\n                    android:layout_marginVertical=\"7dp\"\n\n                    android:text=\"Some Description here\"\n                    android:textColor=\"@color/fontColor\"\n\n                    app:layout_constraintStart_toStartOf=\"parent\"\n                    app:layout_constraintTop_toBottomOf=\"@id/productTitle\" />\n\n                <TextView\n\n                    android:id=\"@+id/productPrice\"\n                    android:layout_width=\"wrap_content\"\n                    android:layout_height=\"wrap_content\"\n\n                    android:layout_marginVertical=\"7dp\"\n                    android:text=\"₹ 341.55\"\n                    app:layout_constraintBottom_toTopOf=\"@id/savedAmount\"\n                    android:textColor=\"@color/colorPrimary\"\n                    android:textSize=\"24sp\"\n                    android:textStyle=\"bold\"\n\n                    app:layout_constraintStart_toStartOf=\"parent\"\n                    app:layout_constraintTop_toBottomOf=\"@id/productShortDescription\" />\n\n                <LinearLayout\n                    android:id=\"@+id/quantityChangeCard\"\n                    android:layout_width=\"wrap_content\"\n                    android:layout_height=\"wrap_content\"\n                    android:background=\"@drawable/table_border\"\n                    android:orientation=\"horizontal\"\n                    app:layout_constraintBottom_toBottomOf=\"@id/productPrice\"\n                    app:layout_constraintEnd_toEndOf=\"parent\"\n                    app:layout_constraintTop_toTopOf=\"@id/productPrice\">\n\n                    <ImageButton\n                        android:id=\"@+id/increaseQtyBtn\"\n                        android:layout_width=\"40dp\"\n                        android:layout_height=\"30dp\"\n                        android:backgroundTint=\"#00FFFFFF\"\n                        android:src=\"@drawable/add_icon\" />\n\n                    <TextView\n                        android:id=\"@+id/quantityCountEcomm\"\n                        android:layout_width=\"wrap_content\"\n                        android:layout_height=\"wrap_content\"\n                        android:layout_gravity=\"center\"\n                        android:layout_marginHorizontal=\"5dp\"\n                        android:text=\"1\"\n                        android:textSize=\"18sp\"\n                        android:textStyle=\"bold\" />\n\n                    <ImageButton\n                        android:id=\"@+id/decreaseQtyBtn\"\n                        android:layout_width=\"40dp\"\n                        android:layout_height=\"30dp\"\n                        android:backgroundTint=\"#00FFFFFF\"\n                        android:src=\"@drawable/minus_icon\"\n                         />\n\n\n                </LinearLayout>\n\n                <TextView\n                    android:id=\"@+id/savedAmount\"\n                    android:layout_width=\"wrap_content\"\n                    android:layout_height=\"wrap_content\"\n                    android:layout_marginVertical=\"7dp\"\n                    android:text=\"You save: ₹39\"\n                    android:textColor=\"@color/fontColor\"\n                    android:textStyle=\"italic\"\n                    android:textSize=\"10sp\"\n                    app:layout_constraintStart_toStartOf=\"parent\"\n                    app:layout_constraintTop_toBottomOf=\"@id/productPrice\" />\n\n                <ImageView\n                    android:id=\"@+id/deliveryTruckImage\"\n                    android:layout_width=\"15dp\"\n                    android:layout_height=\"15dp\"\n                    app:layout_constraintStart_toStartOf=\"parent\"\n                    app:layout_constraintTop_toTopOf=\"@id/deliverycost\"\n\n                    android:src=\"@drawable/ic_baseline_local_shipping_24\"\n                    app:layout_constraintBottom_toBottomOf=\"@id/deliverycost\"\n                    />\n\n                <TextView\n                    android:id=\"@+id/deliverycostTitle\"\n                    android:layout_width=\"79dp\"\n                    android:layout_height=\"14dp\"\n                    android:layout_marginHorizontal=\"7dp\"\n                    android:layout_marginVertical=\"7dp\"\n                    android:text=\"Delivery Charge: ₹\"\n                    android:textColor=\"@color/fontColor\"\n                    android:textSize=\"10sp\"\n                    android:textStyle=\"italic\"\n                    app:layout_constraintStart_toEndOf=\"@id/deliveryTruckImage\"\n                    app:layout_constraintTop_toBottomOf=\"@id/savedAmount\" />\n\n                <TextView\n                    android:id=\"@+id/deliverycost\"\n                    android:layout_width=\"wrap_content\"\n                    android:layout_height=\"wrap_content\"\n                    android:layout_marginVertical=\"7dp\"\n                    android:text=\"-\"\n                    android:textStyle=\"italic\"\n                    android:textSize=\"10sp\"\n                    android:layout_marginHorizontal=\"2dp\"\n                    android:textColor=\"@color/fontColor\"\n                    app:layout_constraintStart_toEndOf=\"@id/deliverycostTitle\"\n                    app:layout_constraintTop_toBottomOf=\"@id/savedAmount\"\n\n                    />\n\n                <View\n                    android:id=\"@+id/hr1EcommItem\"\n                    android:layout_width=\"match_parent\"\n                    android:layout_height=\"1dp\"\n                    android:background=\"@color/colorPrimary\"\n                    android:layout_marginVertical=\"7dp\"\n                    app:layout_constraintBottom_toTopOf=\"@id/productLongDescTitle\"\n                    app:layout_constraintTop_toBottomOf=\"@id/deliverycost\"\n                    app:layout_constraintStart_toStartOf=\"parent\"\n                    />\n\n                <TextView\n                    android:id=\"@+id/productLongDescTitle\"\n                    android:layout_width=\"wrap_content\"\n                    android:layout_height=\"wrap_content\"\n                    android:layout_marginTop=\"7dp\"\n                    android:textColor=\"@color/fontColor\"\n                    android:text=\"Product Description\"\n                    app:layout_constraintBottom_toTopOf=\"@id/productLongDesc\"\n                    android:textSize=\"18sp\"\n                    android:textStyle=\"bold\"\n                    app:layout_constraintStart_toStartOf=\"parent\"\n                    app:layout_constraintTop_toBottomOf=\"@id/hr1EcommItem\" />\n\n                <TextView\n                    android:id=\"@+id/productLongDesc\"\n                    android:layout_width=\"0dp\"\n                    android:layout_height=\"wrap_content\"\n                    android:layout_marginTop=\"7dp\"\n                    android:justificationMode=\"inter_word\"\n                    android:gravity=\"fill_horizontal\"\n                    android:text=\"HELLO WORLD. This is some description\"\n                    android:lineSpacingExtra=\"3dp\"\n                    android:textSize=\"17sp\"\n                    android:textColor=\"@color/fontColor\"\n                    app:layout_constraintEnd_toEndOf=\"parent\"\n                    app:layout_constraintStart_toStartOf=\"parent\"\n                    app:layout_constraintBottom_toTopOf=\"@id/hr2EcommItem\"\n                    app:layout_constraintTop_toBottomOf=\"@id/productLongDescTitle\" />\n\n                <View\n                    android:id=\"@+id/hr2EcommItem\"\n                    android:layout_width=\"match_parent\"\n                    android:layout_height=\"1dp\"\n                    android:background=\"@color/colorPrimary\"\n                    android:layout_marginBottom=\"14dp\"\n                    android:layout_marginTop=\"14dp\"\n                    app:layout_constraintBottom_toTopOf=\"@id/productSpecTitle\"\n                    app:layout_constraintTop_toBottomOf=\"@id/productLongDesc\"\n                    app:layout_constraintStart_toStartOf=\"parent\"\n                    />\n\n                <RatingBar\n                    android:id=\"@+id/Rating\"\n                    style=\"@style/Widget.AppCompat.RatingBar.Small\"\n                    android:layout_width=\"wrap_content\"\n                    android:layout_height=\"wrap_content\"\n                    android:rating=\"3\"\n                    android:theme=\"@style/RatingBar\"\n                    app:layout_constraintTop_toBottomOf=\"@id/quantityChangeCard\"\n                    android:layout_marginVertical=\"7dp\"\n                    app:layout_constraintStart_toStartOf=\"@id/quantityChangeCard\"\n                    app:layout_constraintEnd_toEndOf=\"@id/quantityChangeCard\"\n                    />\n\n                <TextView\n                    android:id=\"@+id/productSpecTitle\"\n                    android:layout_width=\"wrap_content\"\n                    android:layout_height=\"wrap_content\"\n                    android:layout_marginVertical=\"14dp\"\n                    android:textColor=\"@color/fontColor\"\n                    android:text=\"Specifications\"\n                    android:textSize=\"18sp\"\n                    android:textStyle=\"bold\"\n                    app:layout_constraintStart_toStartOf=\"parent\"\n                    app:layout_constraintTop_toBottomOf=\"@id/hr2EcommItem\" />\n\n                <TextView\n                    android:id=\"@+id/colorTitle\"\n                    android:layout_width=\"wrap_content\"\n                    android:layout_height=\"wrap_content\"\n\n                    android:layout_marginVertical=\"14dp\"\n                    android:text=\"Colors\"\n                    app:layout_constraintTop_toBottomOf=\"@id/productSpecTitle\"\n                    app:layout_constraintStart_toStartOf=\"parent\"\n                    android:textSize=\"14sp\"\n                    android:textStyle=\"bold\" />\n\n\n                <LinearLayout\n                    android:id=\"@+id/colorLinear\"\n                    android:layout_width=\"0dp\"\n                    android:layout_height=\"wrap_content\"\n                    android:orientation=\"horizontal\"\n                    app:layout_constraintStart_toEndOf=\"@id/colorTitle\"\n                    android:layout_marginHorizontal=\"7dp\"\n                    app:layout_constraintTop_toTopOf=\"@id/colorTitle\"\n                    app:layout_constraintBottom_toBottomOf=\"@id/colorTitle\"\n                    app:layout_constraintEnd_toEndOf=\"parent\"\n                    >\n\n                    <ImageButton\n                        android:id=\"@+id/color1\"\n                        android:layout_width=\"30dp\"\n                        android:layout_height=\"25dp\"\n                        android:backgroundTint=\"@color/colorThird\"\n                        android:layout_gravity=\"center\"\n                        android:layout_marginStart=\"7dp\"\n                        android:background=\"@drawable/rounder_border_general\"\n                        />\n\n                    <ImageButton\n                        android:id=\"@+id/color2\"\n                        android:layout_width=\"30dp\"\n                        android:layout_height=\"25dp\"\n                        android:layout_gravity=\"center\"\n                        android:layout_marginStart=\"7dp\"\n                        android:backgroundTint=\"@color/colorPrimary\"\n                        android:background=\"@drawable/round_borderless_general\"\n                        />\n                    <ImageButton\n                        android:id=\"@+id/color3\"\n                        android:layout_gravity=\"center\"\n                        android:layout_width=\"30dp\"\n                        android:layout_height=\"25dp\"\n                        android:backgroundTint=\"@color/colorPrimaryDark\"\n                        android:background=\"@drawable/round_borderless_general\"\n                        android:layout_marginStart=\"7dp\"\n                        />\n                    <ImageButton\n                        android:id=\"@+id/color4\"\n                        android:layout_width=\"30dp\"\n                        android:layout_gravity=\"center\"\n                        android:layout_height=\"25dp\"\n                        android:backgroundTint=\"@color/fontColor\"\n                        android:layout_marginStart=\"7dp\"\n                        android:background=\"@drawable/round_borderless_general\"\n                        />\n\n                </LinearLayout>\n\n\n\n                <androidx.recyclerview.widget.RecyclerView\n                    android:id=\"@+id/recyclerSelectionAttributes\"\n                    android:layout_width=\"match_parent\"\n                    android:layout_height=\"wrap_content\"\n                    app:layout_constraintTop_toBottomOf=\"@id/colorLinear\"\n                    app:layout_constraintStart_toStartOf=\"parent\"\n                    app:layout_constraintEnd_toEndOf=\"parent\"\n                    android:layout_marginVertical=\"7dp\"\n                    />\n\n                <androidx.recyclerview.widget.RecyclerView\n                    android:id=\"@+id/recyclerNormalAttributes\"\n                    android:layout_width=\"match_parent\"\n                    android:layout_height=\"wrap_content\"\n                    app:layout_constraintTop_toBottomOf=\"@id/recyclerSelectionAttributes\"\n                    app:layout_constraintStart_toStartOf=\"parent\"\n                    app:layout_constraintEnd_toEndOf=\"parent\"\n                    android:layout_marginVertical=\"7dp\"\n                    />\n\n                <View\n                    android:id=\"@+id/hr3EcommItem\"\n                    android:layout_width=\"match_parent\"\n                    android:layout_height=\"1dp\"\n                    app:layout_constraintStart_toStartOf=\"parent\"\n                    android:layout_marginVertical=\"7dp\"\n                    app:layout_constraintTop_toBottomOf=\"@id/recyclerNormalAttributes\"\n                    app:layout_constraintBottom_toTopOf=\"@id/howToUseLabel\"\n                    android:background=\"@color/colorPrimary\"\n                    />\n\n\n\n\n                <TextView\n                    android:id=\"@+id/howToUseLabel\"\n                    android:layout_width=\"wrap_content\"\n                    android:layout_height=\"wrap_content\"\n                    android:layout_marginVertical=\"7dp\"\n                    android:text=\"How to Use?\"\n                    android:textSize=\"18sp\"\n                    android:textColor=\"@color/fontColor\"\n                    android:textStyle=\"bold\"\n                    app:layout_constraintStart_toStartOf=\"parent\"\n                    app:layout_constraintTop_toBottomOf=\"@id/hr3EcommItem\" />\n\n                <TextView\n                    android:id=\"@+id/howToUseText\"\n                    android:layout_width=\"wrap_content\"\n                    android:layout_height=\"wrap_content\"\n                    android:layout_marginVertical=\"7dp\"\n                    android:justificationMode=\"inter_word\"\n                    android:gravity=\"fill_horizontal\"\n                    android:text=\"For all Indore Plant, Outdoor Plants, Fruit-bearing trees and vegetable gardening Maintaining terrace gardening, Bonsal plants, lawns, Apply 1-2 inch below or in rows or in rings on the surface of the plant, After Application water essential.\"\n                    android:lineSpacingExtra=\"3dp\"\n                    android:textSize=\"17sp\"\n                    app:layout_constraintStart_toStartOf=\"parent\"\n                    app:layout_constraintTop_toBottomOf=\"@id/howToUseLabel\" />\n\n                <TextView\n                    android:id=\"@+id/similarProductTitle\"\n                    android:layout_width=\"wrap_content\"\n                    android:layout_height=\"wrap_content\"\n                    android:layout_marginVertical=\"7dp\"\n                    android:text=\"Similar Products\"\n                    android:textColor=\"@color/fontColor\"\n                    android:textSize=\"18sp\"\n                    android:textStyle=\"bold\"\n                    app:layout_constraintStart_toStartOf=\"parent\"\n                    app:layout_constraintTop_toBottomOf=\"@id/howToUseText\" />\n\n                <androidx.recyclerview.widget.RecyclerView\n                    android:id=\"@+id/similarProductsRecycler\"\n                    android:layout_width=\"match_parent\"\n                    android:layout_height=\"wrap_content\"\n                    android:layout_marginVertical=\"7dp\"\n                    app:layout_constraintEnd_toEndOf=\"parent\"\n                    app:layout_constraintStart_toStartOf=\"parent\"\n                    app:layout_constraintTop_toBottomOf=\"@id/similarProductTitle\"\n                    tools:listitem=\"@layout/similarproductlist\" />\n\n                <Button\n\n                    android:id=\"@+id/addToCart\"\n                    android:layout_width=\"150dp\"\n                    android:layout_height=\"wrap_content\"\n                    android:layout_marginVertical=\"14dp\"\n                    android:background=\"@drawable/round_borderless_general\"\n                    android:backgroundTint=\"@color/colorThird\"\n                    android:drawableLeft=\"@drawable/add_icon\"\n                    android:text=\"Add to Cart\"\n                    android:textAllCaps=\"false\"\n                    android:textColor=\"@color/white\"\n                    android:textSize=\"18sp\"\n\n                    android:textStyle=\"bold\"\n                    app:layout_constraintTop_toBottomOf=\"@id/similarProductsRecycler\"\n                    app:layout_constraintBottom_toBottomOf=\"parent\"\n                    app:layout_constraintEnd_toStartOf=\"@id/buynow\"\n                    app:layout_constraintStart_toStartOf=\"parent\" />\n\n                <Button\n\n                    android:id=\"@+id/buynow\"\n                    android:layout_width=\"150dp\"\n                    android:layout_height=\"wrap_content\"\n\n                    android:background=\"@drawable/round_borderless_general\"\n                    android:backgroundTint=\"@color/colorThird\"\n                    android:text=\"Buy Now\"\n                    android:textAllCaps=\"false\"\n                    android:layout_marginVertical=\"14dp\"\n                    android:textColor=\"@color/white\"\n                    android:textSize=\"18sp\"\n\n                    android:textStyle=\"bold\"\n                    app:layout_constraintTop_toBottomOf=\"@id/similarProductsRecycler\"\n                    app:layout_constraintBottom_toBottomOf=\"parent\"\n                    app:layout_constraintEnd_toEndOf=\"parent\"\n                    app:layout_constraintStart_toEndOf=\"@id/addToCart\" />\n\n\n            </androidx.constraintlayout.widget.ConstraintLayout>\n        </androidx.core.widget.NestedScrollView>\n\n\n    </androidx.constraintlayout.widget.ConstraintLayout>\n</FrameLayout>"
  },
  {
    "path": "app/src/main/res/layout/fragment_fruits.xml",
    "content": "<?xml version=\"1.0\" encoding=\"utf-8\"?>\n<RelativeLayout xmlns:android=\"http://schemas.android.com/apk/res/android\"\n    xmlns:app=\"http://schemas.android.com/apk/res-auto\"\n    xmlns:tools=\"http://schemas.android.com/tools\"\n    android:layout_width=\"match_parent\"\n    android:layout_height=\"match_parent\"\n    tools:context=\".view.articles.FruitsFragment\">\n\n    <ProgressBar\n        android:id=\"@+id/progressArticle\"\n        android:layout_width=\"wrap_content\"\n        android:layout_centerHorizontal=\"true\"\n        android:layout_centerVertical=\"true\"\n        android:elevation=\"10dp\"\n        android:layout_height=\"wrap_content\"\n        android:indeterminateTint=\"@color/colorPrimary\"\n        />\n\n    <ScrollView\n\n        android:layout_width=\"match_parent\"\n        android:layout_height=\"match_parent\">\n\n        <androidx.constraintlayout.widget.ConstraintLayout\n            android:layout_width=\"match_parent\"\n            android:layout_height=\"match_parent\"\n            android:layout_margin=\"14dp\">\n\n\n\n            <TextView\n                android:id=\"@+id/titleTextFruitFragArt\"\n                android:layout_width=\"wrap_content\"\n                android:layout_height=\"wrap_content\"\n                android:layout_marginBottom=\"7dp\"\n                android:text=\"ABC\"\n                android:textSize=\"30sp\"\n                android:textStyle=\"bold\"\n                app:layout_constraintStart_toStartOf=\"parent\"\n                app:layout_constraintTop_toTopOf=\"parent\" />\n\n            <TextView\n                android:id=\"@+id/monthTitleTextFruitFragArt\"\n                android:layout_width=\"wrap_content\"\n                android:layout_height=\"wrap_content\"\n                android:layout_marginVertical=\"7dp\"\n                android:text=\"Month: \"\n                android:textStyle=\"italic|bold\"\n                app:layout_constraintStart_toStartOf=\"parent\"\n                app:layout_constraintTop_toBottomOf=\"@id/titleTextFruitFragArt\" />\n\n            <TextView\n                android:id=\"@+id/monthTextFruitFragArt\"\n                android:layout_width=\"wrap_content\"\n                android:layout_height=\"wrap_content\"\n                android:text=\"January-February\"\n                app:layout_constraintBottom_toBottomOf=\"@id/monthTitleTextFruitFragArt\"\n                app:layout_constraintStart_toEndOf=\"@id/monthTitleTextFruitFragArt\"\n                app:layout_constraintTop_toTopOf=\"@id/monthTitleTextFruitFragArt\" />\n\n\n            <TextView\n                android:id=\"@+id/tempTitleTextFruitFragArt\"\n                android:layout_width=\"wrap_content\"\n                android:layout_height=\"wrap_content\"\n                android:layout_marginVertical=\"7dp\"\n                android:text=\"Temperature: \"\n                android:textStyle=\"italic|bold\"\n                app:layout_constraintStart_toStartOf=\"parent\"\n                app:layout_constraintTop_toBottomOf=\"@id/monthTextFruitFragArt\" />\n\n            <TextView\n                android:id=\"@+id/tempTextFruitFragArt\"\n                android:layout_width=\"wrap_content\"\n                android:layout_height=\"wrap_content\"\n                android:text=\"26*C - 27*C\"\n                app:layout_constraintBottom_toBottomOf=\"@id/tempTitleTextFruitFragArt\"\n                app:layout_constraintStart_toEndOf=\"@id/tempTitleTextFruitFragArt\"\n                app:layout_constraintTop_toTopOf=\"@id/tempTitleTextFruitFragArt\" />\n\n            <TextView\n                android:id=\"@+id/descTextTitleFruitFragArt\"\n                android:layout_width=\"wrap_content\"\n                android:layout_height=\"wrap_content\"\n                android:layout_marginVertical=\"14dp\"\n                android:text=\"Description\"\n                android:textSize=\"20sp\"\n                android:textStyle=\"bold\"\n                app:layout_constraintBottom_toTopOf=\"@id/descTextValueFruitFragArt\"\n                app:layout_constraintStart_toStartOf=\"parent\"\n                app:layout_constraintTop_toBottomOf=\"@id/tempTextFruitFragArt\" />\n\n            <ImageButton\n                android:id=\"@+id/descToggleBtnFruitFragArt\"\n                android:layout_width=\"15dp\"\n                android:layout_height=\"0dp\"\n                android:layout_marginHorizontal=\"14dp\"\n                android:background=\"#fff\"\n                android:scaleX=\"1.2\"\n                android:scaleY=\"1.2\"\n                android:src=\"@drawable/ic__keyboard_arrow_down\"\n                app:layout_constraintBottom_toBottomOf=\"@+id/descTextTitleFruitFragArt\"\n                app:layout_constraintStart_toEndOf=\"@id/descTextTitleFruitFragArt\"\n                 />\n\n                <ImageView\n                android:id=\"@+id/shareIconFruitFragArt\"\n                android:layout_width=\"22dp\"\n                android:layout_height=\"22dp\"\n                android:src=\"@drawable/share1\"\n                    app:layout_constraintEnd_toEndOf=\"parent\"\n                app:layout_constraintTop_toTopOf=\"parent\"\n                    app:tint=\"@color/colorPrimary\" />\n\n            <androidx.cardview.widget.CardView\n                android:id=\"@+id/cardImageFruitFragArt\"\n                android:layout_width=\"100dp\"\n                android:layout_height=\"0dp\"\n                android:layout_marginHorizontal=\"21dp\"\n                app:cardCornerRadius=\"100dp\"\n                app:layout_constraintBottom_toTopOf=\"@id/descTextTitleFruitFragArt\"\n                app:layout_constraintEnd_toStartOf=\"@id/shareIconFruitFragArt\"\n                app:layout_constraintTop_toTopOf=\"@id/titleTextFruitFragArt\">\n\n                <ImageView\n                    android:id=\"@+id/imageFruitFragArt\"\n                    android:layout_width=\"match_parent\"\n                    android:layout_height=\"match_parent\"\n                    android:background=\"@color/colorPrimary\"\n                    android:scaleType=\"fitXY\" />\n\n            </androidx.cardview.widget.CardView>\n\n            <TextView\n                android:id=\"@+id/descTextValueFruitFragArt\"\n                android:layout_width=\"match_parent\"\n                android:layout_height=\"wrap_content\"\n                android:layout_marginBottom=\"7dp\"\n                android:gravity=\"fill_horizontal\"\n                android:ellipsize=\"end\"\n                android:layout_marginTop=\"7dp\"\n                android:justificationMode=\"inter_word\"\n                android:maxLines=\"5\"\n                android:text=\"Lorem Impsum\"\n                android:lineSpacingExtra=\"3dp\"\n                android:textSize=\"16sp\"\n                app:layout_constraintEnd_toEndOf=\"parent\"\n                app:layout_constraintStart_toStartOf=\"parent\"\n                app:layout_constraintTop_toBottomOf=\"@id/descTextTitleFruitFragArt\" />\n\n            <ImageView\n                android:id=\"@+id/attr1FruitFragArt\"\n                android:layout_width=\"50dp\"\n                android:layout_height=\"50dp\"\n                android:layout_marginVertical=\"14dp\"\n                android:src=\"@drawable/timbangan\"\n                app:layout_constraintEnd_toStartOf=\"@id/attr2FruitFragArt\"\n                app:layout_constraintStart_toStartOf=\"parent\"\n                app:layout_constraintTop_toBottomOf=\"@id/descTextValueFruitFragArt\" />\n\n            <TextView\n                android:id=\"@+id/attr1ValueFruitFragArt\"\n                android:layout_width=\"wrap_content\"\n                android:layout_height=\"wrap_content\"\n                android:layout_marginVertical=\"7dp\"\n                android:text=\"Avg. Weight\"\n                app:layout_constraintEnd_toEndOf=\"@id/attr1FruitFragArt\"\n                app:layout_constraintStart_toStartOf=\"@id/attr1FruitFragArt\"\n                app:layout_constraintTop_toBottomOf=\"@id/attr1FruitFragArt\" />\n\n            <ImageView\n                android:id=\"@+id/attr2FruitFragArt\"\n                android:layout_width=\"50dp\"\n                android:layout_height=\"50dp\"\n                android:layout_marginVertical=\"7dp\"\n                android:src=\"@drawable/vitamin\"\n                app:layout_constraintBottom_toBottomOf=\"@id/attr1FruitFragArt\"\n                app:layout_constraintEnd_toStartOf=\"@id/attr3FruitFragArt\"\n                app:layout_constraintStart_toEndOf=\"@id/attr1FruitFragArt\"\n                app:layout_constraintTop_toTopOf=\"@id/attr1FruitFragArt\"\n                app:tint=\"@color/colorPrimary\" />\n\n            <TextView\n                android:id=\"@+id/attr2ValueFruitFragArt\"\n                android:layout_width=\"wrap_content\"\n                android:layout_height=\"wrap_content\"\n                android:layout_marginVertical=\"7dp\"\n                android:text=\"Avg. Weight\"\n                app:layout_constraintEnd_toEndOf=\"@id/attr2FruitFragArt\"\n                app:layout_constraintStart_toStartOf=\"@id/attr2FruitFragArt\"\n                app:layout_constraintTop_toBottomOf=\"@id/attr2FruitFragArt\" />\n\n            <ImageView\n                android:id=\"@+id/attr3FruitFragArt\"\n                android:layout_width=\"50dp\"\n                android:layout_height=\"50dp\"\n                android:layout_marginVertical=\"7dp\"\n                android:src=\"@drawable/circlecropped1\"\n                app:layout_constraintBottom_toBottomOf=\"@id/attr1FruitFragArt\"\n                app:layout_constraintEnd_toEndOf=\"@id/attr4FruitFragArt\"\n                app:layout_constraintStart_toEndOf=\"@id/attr2FruitFragArt\"\n                app:layout_constraintTop_toTopOf=\"@id/attr1FruitFragArt\"\n                 />\n\n            <TextView\n                android:id=\"@+id/attr3ValueFruitFragArt\"\n                android:layout_width=\"wrap_content\"\n                android:layout_height=\"wrap_content\"\n                android:layout_marginVertical=\"7dp\"\n                android:text=\"Avg. Weight\"\n                app:layout_constraintEnd_toEndOf=\"@id/attr3FruitFragArt\"\n                app:layout_constraintStart_toStartOf=\"@id/attr3FruitFragArt\"\n                app:layout_constraintTop_toBottomOf=\"@id/attr2FruitFragArt\" />\n\n            <ImageView\n                android:id=\"@+id/attr4FruitFragArt\"\n                android:layout_width=\"50dp\"\n                android:layout_height=\"50dp\"\n                android:layout_marginVertical=\"7dp\"\n                android:src=\"@drawable/c2\"\n                app:layout_constraintBottom_toBottomOf=\"@id/attr1FruitFragArt\"\n                app:layout_constraintEnd_toEndOf=\"parent\"\n                app:layout_constraintStart_toEndOf=\"@id/attr3FruitFragArt\"\n                app:layout_constraintTop_toTopOf=\"@id/attr1FruitFragArt\"\n                app:tint=\"@color/colorPrimary\" />\n\n            <TextView\n                android:id=\"@+id/attr4ValueFruitFragArt\"\n                android:layout_width=\"wrap_content\"\n                android:layout_height=\"wrap_content\"\n                android:layout_marginVertical=\"7dp\"\n                android:text=\"Avg. Weight\"\n                app:layout_constraintEnd_toEndOf=\"@id/attr4FruitFragArt\"\n                app:layout_constraintStart_toStartOf=\"@id/attr4FruitFragArt\"\n                app:layout_constraintTop_toBottomOf=\"@id/attr3FruitFragArt\" />\n\n            <ImageButton\n                android:id=\"@+id/carouselFruitFragArt\"\n                android:layout_width=\"match_parent\"\n                android:layout_height=\"175dp\"\n                android:layout_marginVertical=\"7dp\"\n                app:layout_constraintBottom_toTopOf=\"@id/soilTextTitleFruitFragArt\"\n                app:layout_constraintStart_toStartOf=\"parent\"\n                app:layout_constraintTop_toBottomOf=\"@id/attr1ValueFruitFragArt\" />\n\n\n            <TextView\n                android:id=\"@+id/soilTextTitleFruitFragArt\"\n                android:layout_width=\"wrap_content\"\n                android:layout_height=\"wrap_content\"\n                android:layout_marginVertical=\"7dp\"\n                android:text=\"Soil:\"\n                android:textSize=\"20sp\"\n                android:textStyle=\"bold\"\n                app:layout_constraintStart_toStartOf=\"parent\"\n                app:layout_constraintTop_toBottomOf=\"@id/carouselFruitFragArt\" />\n\n            <TextView\n                android:id=\"@+id/soilTextValueFruitFragArt\"\n                android:layout_width=\"wrap_content\"\n                android:layout_height=\"wrap_content\"\n                android:layout_marginVertical=\"7dp\"\n                android:lineSpacingExtra=\"3dp\"\n                android:justificationMode=\"inter_word\"\n                android:textSize=\"16sp\"\n                app:layout_constraintStart_toStartOf=\"parent\"\n                app:layout_constraintTop_toBottomOf=\"@id/soilTextTitleFruitFragArt\" />\n\n            <TextView\n                android:id=\"@+id/processTextTitleFruitFragArt\"\n                android:layout_width=\"wrap_content\"\n                android:layout_height=\"wrap_content\"\n                android:layout_marginVertical=\"7dp\"\n                android:text=\"Process:\"\n                android:textSize=\"20sp\"\n                android:textStyle=\"bold\"\n                app:layout_constraintStart_toStartOf=\"parent\"\n                app:layout_constraintTop_toBottomOf=\"@id/soilTextValueFruitFragArt\" />\n\n            <TextView\n                android:id=\"@+id/processTextValueFruitFragArt\"\n                android:layout_width=\"wrap_content\"\n                android:layout_height=\"wrap_content\"\n                android:layout_marginVertical=\"7dp\"\n                android:lineSpacingExtra=\"3dp\"\n                android:justificationMode=\"inter_word\"\n                android:textSize=\"16sp\"\n                app:layout_constraintStart_toStartOf=\"parent\"\n                app:layout_constraintTop_toBottomOf=\"@id/processTextTitleFruitFragArt\" />\n\n            <TextView\n                android:id=\"@+id/diseaseTextTitleFruitFragArt\"\n                android:layout_width=\"wrap_content\"\n                android:layout_height=\"wrap_content\"\n                android:layout_marginVertical=\"7dp\"\n                android:text=\"Diseases:\"\n                android:textSize=\"20sp\"\n                android:textStyle=\"bold\"\n                app:layout_constraintStart_toStartOf=\"parent\"\n                app:layout_constraintTop_toBottomOf=\"@id/processTextValueFruitFragArt\" />\n\n            <TextView\n                android:id=\"@+id/diseaseTextValueFruitFragArt\"\n                android:layout_width=\"wrap_content\"\n                android:layout_height=\"wrap_content\"\n                android:lineSpacingExtra=\"3dp\"\n                android:layout_marginVertical=\"7dp\"\n                android:justificationMode=\"inter_word\"\n                android:textSize=\"16sp\"\n                app:layout_constraintStart_toStartOf=\"parent\"\n                app:layout_constraintTop_toBottomOf=\"@id/diseaseTextTitleFruitFragArt\" />\n\n            <TextView\n                android:id=\"@+id/stateTextTitleFruitFragArt\"\n                android:layout_width=\"wrap_content\"\n                android:layout_height=\"wrap_content\"\n                android:layout_marginVertical=\"7dp\"\n                android:text=\"State:\"\n                android:textSize=\"20sp\"\n                android:textStyle=\"bold\"\n                app:layout_constraintStart_toStartOf=\"parent\"\n                app:layout_constraintTop_toBottomOf=\"@id/diseaseTextValueFruitFragArt\" />\n\n            <TextView\n                android:id=\"@+id/stateTextValueFruitFragArt\"\n                android:layout_width=\"wrap_content\"\n                android:layout_height=\"wrap_content\"\n                android:layout_marginVertical=\"7dp\"\n                android:justificationMode=\"inter_word\"\n                android:textSize=\"16sp\"\n                android:lineSpacingExtra=\"3dp\"\n                app:layout_constraintStart_toStartOf=\"parent\"\n                app:layout_constraintTop_toBottomOf=\"@id/stateTextTitleFruitFragArt\" />\n\n            <View\n                android:layout_width=\"match_parent\"\n                android:layout_height=\"30dp\"\n                app:layout_constraintStart_toStartOf=\"parent\"\n                app:layout_constraintTop_toBottomOf=\"@id/stateTextValueFruitFragArt\" />\n        </androidx.constraintlayout.widget.ConstraintLayout>\n\n    </ScrollView>\n</RelativeLayout>\n"
  },
  {
    "path": "app/src/main/res/layout/fragment_machine.xml",
    "content": "<?xml version=\"1.0\" encoding=\"utf-8\"?>\n<FrameLayout xmlns:android=\"http://schemas.android.com/apk/res/android\"\n    xmlns:tools=\"http://schemas.android.com/tools\"\n    android:layout_width=\"match_parent\"\n    android:layout_height=\"match_parent\"\n    tools:context=\".view.articles.MachineFragment\">\n\n    <!-- TODO: Update blank fragment layout -->\n    <TextView\n        android:layout_width=\"match_parent\"\n        android:layout_height=\"match_parent\"\n        android:text=\"@string/hello_blank_fragment\" />\n\n</FrameLayout>"
  },
  {
    "path": "app/src/main/res/layout/fragment_my_orders.xml",
    "content": "<?xml version=\"1.0\" encoding=\"utf-8\"?>\n<FrameLayout xmlns:android=\"http://schemas.android.com/apk/res/android\"\n    xmlns:tools=\"http://schemas.android.com/tools\"\n    android:layout_width=\"match_parent\"\n    android:layout_height=\"match_parent\"\n    xmlns:app=\"http://schemas.android.com/apk/res-auto\"\n    tools:context=\".view.ecommerce.MyOrdersFragment\">\n\n    <androidx.constraintlayout.widget.ConstraintLayout\n        android:layout_width=\"match_parent\"\n        android:layout_height=\"match_parent\"\n        >\n\n        <androidx.recyclerview.widget.RecyclerView\n            android:layout_width=\"match_parent\"\n            android:id=\"@+id/myOrderRecycler\"\n            app:layout_constraintTop_toTopOf=\"parent\"\n            app:layout_constraintStart_toStartOf=\"parent\"\n            app:layout_constraintEnd_toEndOf=\"parent\"\n            android:layout_height=\"match_parent\"\n            />\n\n    </androidx.constraintlayout.widget.ConstraintLayout>\n\n</FrameLayout>"
  },
  {
    "path": "app/src/main/res/layout/fragment_payment.xml",
    "content": "<?xml version=\"1.0\" encoding=\"utf-8\"?>\n<FrameLayout xmlns:android=\"http://schemas.android.com/apk/res/android\"\n    xmlns:tools=\"http://schemas.android.com/tools\"\n    android:layout_width=\"match_parent\"\n    android:layout_height=\"match_parent\"\n    xmlns:app=\"http://schemas.android.com/apk/res-auto\"\n    tools:context=\".view.ecommerce.PaymentFragment\">\n\n    <!-- TODO: Update blank fragment layout -->\n    <androidx.constraintlayout.widget.ConstraintLayout\n        android:layout_width=\"match_parent\"\n        android:layout_height=\"match_parent\"\n        >\n\n        <TextView\n            android:id=\"@+id/paymentFragTitle\"\n            android:layout_width=\"wrap_content\"\n            android:layout_height=\"wrap_content\"\n            android:layout_marginVertical=\"14dp\"\n            android:text=\"Order Payment\"\n            app:layout_constraintBottom_toTopOf=\"@id/addressEditPayment\"\n\n            android:textColor=\"#000\"\n            android:textSize=\"21sp\"\n            android:textStyle=\"bold\"\n            app:layout_constraintEnd_toEndOf=\"parent\"\n            app:layout_constraintStart_toStartOf=\"parent\"\n            app:layout_constraintTop_toTopOf=\"parent\"\n\n            />\n\n\n        <EditText\n            android:id=\"@+id/addressEditPayment\"\n            android:layout_width=\"match_parent\"\n            android:layout_height=\"50dp\"\n            android:layout_marginHorizontal=\"10dp\"\n            android:layout_marginVertical=\"7dp\"\n            android:background=\"@drawable/edit_back\"\n            android:drawableRight=\"@drawable/dash_home\"\n            android:hint=\"Address\"\n            android:padding=\"10dp\"\n            android:textColor=\"@color/colorPrimary\"\n            android:textColorHint=\"#FF404A3A\"\n            android:textSize=\"18dp\"\n            app:layout_constraintBottom_toTopOf=\"@id/pinEditPayment\"\n            app:layout_constraintEnd_toEndOf=\"parent\"\n            app:layout_constraintStart_toStartOf=\"parent\"\n            app:layout_constraintTop_toBottomOf=\"@id/paymentFragTitle\" />\n\n\n        <EditText\n            android:id=\"@+id/pinEditPayment\"\n            android:layout_width=\"match_parent\"\n            android:layout_height=\"50dp\"\n\n            android:layout_marginHorizontal=\"10dp\"\n            android:layout_marginVertical=\"7dp\"\n            android:background=\"@drawable/edit_back\"\n            android:textColor=\"@color/colorPrimary\"\n            android:textColorHint=\"#FF404A3A\"\n            android:hint=\"Pin Code\"\n            android:inputType=\"number\"\n            android:padding=\"10dp\"\n            app:layout_constraintBottom_toTopOf=\"@id/phoneEditPayment\"\n            app:layout_constraintEnd_toEndOf=\"parent\"\n            app:layout_constraintStart_toStartOf=\"parent\"\n            app:layout_constraintTop_toBottomOf=\"@id/addressEditPayment\" />\n\n\n        <EditText\n            android:id=\"@+id/phoneEditPayment\"\n            android:layout_width=\"match_parent\"\n            android:layout_height=\"50dp\"\n\n            android:layout_marginHorizontal=\"10dp\"\n            android:layout_marginVertical=\"7dp\"\n            android:background=\"@drawable/edit_back\"\n            android:textColor=\"@color/colorPrimary\"\n            android:textColorHint=\"#FF404A3A\"\n            android:hint=\"Phone Number\"\n            android:inputType=\"phone\"\n            android:padding=\"10dp\"\n            app:layout_constraintBottom_toTopOf=\"@id/paymentOptTitle\"\n            app:layout_constraintEnd_toEndOf=\"parent\"\n            app:layout_constraintStart_toStartOf=\"parent\"\n            app:layout_constraintTop_toBottomOf=\"@id/pinEditPayment\" />\n\n\n        <!--    <View-->\n        <!--        android:id=\"@+id/hrPayment\"-->\n        <!--        android:layout_width=\"match_parent\"-->\n        <!--        app:layout_constraintBottom_toTopOf=\"@id/paymentOptTitle\"-->\n        <!--        app:layout_constraintTop_toBottomOf=\"@id/phoneEditPaymentContainer\"-->\n        <!--        android:layout_marginHorizontal=\"18dp\"-->\n        <!--        android:layout_marginVertical=\"14dp\"-->\n        <!--        android:layout_height=\"2dp\"-->\n        <!--        android:background=\"@color/colorPrimary\"-->\n        <!--        />-->\n\n        <TextView\n            android:id=\"@+id/paymentOptTitle\"\n            android:layout_width=\"wrap_content\"\n            android:layout_height=\"wrap_content\"\n            android:layout_marginHorizontal=\"7dp\"\n            android:layout_marginVertical=\"7dp\"\n            android:text=\"Payment Method\"\n            android:textColor=\"@color/colorThird\"\n            android:textSize=\"18dp\"\n\n            android:textStyle=\"bold\"\n            app:layout_constraintBottom_toTopOf=\"@id/paymentOptionsRadioGroup\"\n            app:layout_constraintEnd_toEndOf=\"parent\"\n            app:layout_constraintStart_toStartOf=\"parent\"\n            app:layout_constraintTop_toBottomOf=\"@id/phoneEditPayment\" />\n\n\n        <RadioGroup\n            android:id=\"@+id/paymentOptionsRadioGroup\"\n            android:layout_width=\"match_parent\"\n            android:layout_height=\"wrap_content\"\n            android:layout_marginHorizontal=\"14dp\"\n            android:layout_marginVertical=\"14dp\"\n            android:foregroundGravity=\"center\"\n            android:orientation=\"horizontal\"\n            app:layout_constraintBottom_toTopOf=\"@id/paymentOptionsRadioGroup\"\n            app:layout_constraintEnd_toEndOf=\"parent\"\n            app:layout_constraintStart_toStartOf=\"parent\"\n            app:layout_constraintTop_toBottomOf=\"@id/paymentOptTitle\">\n\n            <com.google.android.material.radiobutton.MaterialRadioButton\n                android:layout_width=\"wrap_content\"\n                android:layout_height=\"wrap_content\"\n                android:layout_weight=\"1\"\n                android:text=\"E-Wallet\" />\n\n            <com.google.android.material.radiobutton.MaterialRadioButton\n                android:layout_width=\"wrap_content\"\n                android:layout_height=\"wrap_content\"\n                android:layout_weight=\"1\"\n                android:text=\"Debit Card\" />\n\n            <com.google.android.material.radiobutton.MaterialRadioButton\n                android:layout_width=\"wrap_content\"\n                android:layout_height=\"wrap_content\"\n                android:layout_weight=\"1\"\n                android:text=\"Cash on Delivery\" />\n\n        </RadioGroup>\n\n        <ImageView\n            android:id=\"@+id/rupayCardImage\"\n            android:layout_width=\"100dp\"\n            android:layout_height=\"50dp\"\n            android:layout_marginTop=\"14dp\"\n\n            android:src=\"@drawable/rupaycard\"\n            app:layout_constraintEnd_toStartOf=\"@id/masterCard\"\n            app:layout_constraintStart_toStartOf=\"parent\"\n            app:layout_constraintTop_toBottomOf=\"@id/paymentOptionsRadioGroup\" />\n\n        <ImageView\n            android:id=\"@+id/masterCard\"\n            android:layout_width=\"100dp\"\n            android:layout_height=\"50dp\"\n            android:layout_marginTop=\"14dp\"\n\n            android:scaleType=\"fitXY\"\n            android:src=\"@drawable/master\"\n            android:paddingHorizontal=\"7dp\"\n            android:paddingVertical=\"4dp\"\n            app:layout_constraintEnd_toStartOf=\"@id/visaCard\"\n            app:layout_constraintStart_toEndOf=\"@id/rupayCardImage\"\n            app:layout_constraintTop_toBottomOf=\"@id/paymentOptionsRadioGroup\" />\n\n        <ImageView\n            android:id=\"@+id/visaCard\"\n            android:layout_width=\"100dp\"\n            android:layout_height=\"50dp\"\n            android:layout_marginTop=\"14dp\"\n\n            android:src=\"@drawable/visa\"\n            app:layout_constraintEnd_toEndOf=\"parent\"\n            app:layout_constraintStart_toEndOf=\"@id/masterCard\"\n            app:layout_constraintTop_toBottomOf=\"@id/paymentOptionsRadioGroup\" />\n\n\n        <EditText\n            android:id=\"@+id/cardNumberEditPayment\"\n            android:layout_width=\"match_parent\"\n            android:textColor=\"@color/colorPrimary\"\n            android:textColorHint=\"#FF404A3A\"\n            android:layout_height=\"50dp\"\n            android:layout_marginHorizontal=\"10dp\"\n            android:layout_marginTop=\"21dp\"\n            android:layout_marginBottom=\"7dp\"\n            android:background=\"@drawable/edit_back\"\n            android:hint=\"Card Number\"\n            android:inputType=\"number\"\n            android:padding=\"10dp\"\n            app:layout_constraintBottom_toTopOf=\"@id/cardHolderNameEditPayment\"\n            app:layout_constraintEnd_toEndOf=\"parent\"\n            app:layout_constraintStart_toStartOf=\"parent\"\n            app:layout_constraintTop_toBottomOf=\"@id/rupayCardImage\" />\n\n\n        <EditText\n            android:id=\"@+id/cardHolderNameEditPayment\"\n            android:layout_width=\"match_parent\"\n            android:layout_height=\"50dp\"\n            android:layout_marginHorizontal=\"10dp\"\n            android:layout_marginVertical=\"7dp\"\n            android:background=\"@drawable/edit_back\"\n            android:padding=\"10dp\"\n            android:textColor=\"@color/colorPrimary\"\n            android:textColorHint=\"#FF404A3A\"\n            android:hint=\"Card Holder Name\"\n            android:inputType=\"text\"\n            app:layout_constraintBottom_toTopOf=\"@id/cvvEditPayment\"\n            app:layout_constraintEnd_toEndOf=\"parent\"\n            app:layout_constraintStart_toStartOf=\"parent\"\n            app:layout_constraintTop_toBottomOf=\"@id/cardNumberEditPayment\" />\n\n\n        <EditText\n            android:id=\"@+id/cvvEditPayment\"\n            android:layout_width=\"150dp\"\n            android:layout_height=\"50dp\"\n            android:layout_marginHorizontal=\"10dp\"\n            android:layout_marginVertical=\"14dp\"\n            android:background=\"@drawable/edit_back\"\n            android:hint=\"CVV\"\n            android:textColor=\"@color/colorPrimary\"\n            android:textColorHint=\"#FF404A3A\"\n            android:padding=\"10dp\"\n            android:inputType=\"numberPassword\"\n            app:layout_constraintStart_toStartOf=\"parent\"\n            app:layout_constraintTop_toBottomOf=\"@id/cardHolderNameEditPayment\" />\n\n\n        <EditText\n            android:id=\"@+id/expiryDateEditPayment\"\n            android:layout_width=\"150dp\"\n            android:layout_height=\"50dp\"\n            android:padding=\"10dp\"\n            android:layout_marginHorizontal=\"10dp\"\n            android:layout_marginVertical=\"14dp\"\n            android:background=\"@drawable/edit_back\"\n            android:hint=\"Expiry Date\"\n            android:inputType=\"date\"\n            app:layout_constraintEnd_toEndOf=\"parent\"\n            android:textColor=\"@color/colorPrimary\"\n            android:textColorHint=\"#FF404A3A\"\n            app:layout_constraintTop_toBottomOf=\"@id/cardHolderNameEditPayment\" />\n\n\n        <Button\n            android:id=\"@+id/orderNowBtn\"\n            android:layout_width=\"150dp\"\n            android:layout_height=\"wrap_content\"\n            android:layout_marginVertical=\"7dp\"\n            android:backgroundTint=\"@color/colorThird\"\n            android:background=\"@drawable/round_borderless_general\"\n            android:text=\"Order Now\"\n            android:textAllCaps=\"false\"\n            android:textColor=\"#fff\"\n            android:textStyle=\"bold\"\n            android:textSize=\"18sp\"\n            app:layout_constraintBottom_toBottomOf=\"parent\"\n            app:layout_constraintEnd_toEndOf=\"parent\"\n            app:layout_constraintStart_toStartOf=\"parent\"\n\n            />\n\n    </androidx.constraintlayout.widget.ConstraintLayout>\n\n</FrameLayout>"
  },
  {
    "path": "app/src/main/res/layout/fragment_pre_payment.xml",
    "content": "<?xml version=\"1.0\" encoding=\"utf-8\"?>\n<FrameLayout xmlns:android=\"http://schemas.android.com/apk/res/android\"\n    xmlns:app=\"http://schemas.android.com/apk/res-auto\"\n    xmlns:tools=\"http://schemas.android.com/tools\"\n    android:layout_width=\"match_parent\"\n    android:layout_height=\"match_parent\"\n    tools:context=\".PrePaymentFragment\">\n\n    <!-- TODO: Update blank fragment layout -->\n\n</FrameLayout>"
  },
  {
    "path": "app/src/main/res/layout/fragment_s_m_create_post.xml",
    "content": "<?xml version=\"1.0\" encoding=\"utf-8\"?>\n<FrameLayout xmlns:android=\"http://schemas.android.com/apk/res/android\"\n    xmlns:app=\"http://schemas.android.com/apk/res-auto\"\n    xmlns:tools=\"http://schemas.android.com/tools\"\n    android:layout_width=\"match_parent\"\n    android:layout_height=\"match_parent\"\n    tools:context=\".view.socialmedia.SMCreatePostFragment\">\n\n    <!-- TODO: Update blank fragment layout -->\n\n    <androidx.constraintlayout.widget.ConstraintLayout\n        android:layout_width=\"match_parent\"\n        android:layout_height=\"match_parent\">\n\n        <ProgressBar\n            android:layout_width=\"wrap_content\"\n            android:layout_height=\"wrap_content\"\n            android:indeterminateDrawable=\"@drawable/progress_background\"\n            app:layout_constraintTop_toTopOf=\"parent\"\n            app:layout_constraintEnd_toEndOf=\"parent\"\n            app:layout_constraintBottom_toBottomOf=\"parent\"\n            android:id=\"@+id/progress_create_post\"\n            app:layout_constraintStart_toStartOf=\"parent\"\n            android:elevation=\"2dp\"\n            />\n\n        <TextView\n            android:layout_width=\"wrap_content\"\n            android:layout_height=\"wrap_content\"\n            android:text=\"Creating...\"\n            android:id=\"@+id/progressTitle\"\n            app:layout_constraintTop_toBottomOf=\"@id/progress_create_post\"\n            android:textStyle=\"bold\"\n            app:layout_constraintStart_toStartOf=\"parent\"\n            android:elevation=\"2dp\"\n            android:textSize=\"18sp\"\n            android:textColor=\"@color/fontColor\"\n            app:layout_constraintEnd_toEndOf=\"parent\"\n            android:layout_marginVertical=\"14dp\"\n            />\n\n        <TextView\n            android:id=\"@+id/createPostTitle\"\n            android:layout_width=\"wrap_content\"\n            android:layout_height=\"wrap_content\"\n            app:layout_constraintBottom_toTopOf=\"@id/uploadImagePreview\"\n            android:text=\"Create Post\"\n            android:textColor=\"@color/fontColor\"\n            android:textStyle=\"bold\"\n            android:textSize=\"21sp\"\n            android:layout_marginVertical=\"14dp\"\n            app:layout_constraintEnd_toEndOf=\"parent\"\n            app:layout_constraintStart_toStartOf=\"parent\"\n            app:layout_constraintTop_toTopOf=\"parent\" />\n\n\n        <ImageButton\n            android:layout_width=\"match_parent\"\n            android:layout_height=\"250dp\"\n            android:background=\"@drawable/edit_back\"\n            android:id=\"@+id/uploadImagePreview\"\n            app:layout_constraintTop_toTopOf=\"parent\"\n            app:layout_constraintStart_toStartOf=\"parent\"\n            app:layout_constraintEnd_toEndOf=\"parent\"\n            android:backgroundTint=\"@color/secondary\"\n            android:src=\"@drawable/add_icon\"\n\n            android:layout_marginHorizontal=\"14dp\"\n            android:layout_marginVertical=\"80dp\"\n            />\n\n\n\n\n\n            <EditText\n                android:background=\"@drawable/edit_back\"\n                android:id=\"@+id/postTitleSM\"\n                android:layout_width=\"match_parent\"\n                android:layout_height=\"wrap_content\"\n                app:layout_constraintStart_toStartOf=\"parent\"\n                app:layout_constraintTop_toBottomOf=\"@id/uploadImagePreview\"\n                android:layout_marginHorizontal=\"14dp\"\n                android:layout_marginVertical=\"14dp\"\n                android:padding=\"10dp\"\n                android:hint=\"Title\"\n                android:textStyle=\"bold\" />\n\n\n\n\n\n\n\n\n            <EditText\n                android:id=\"@+id/descPostSM\"\n                android:layout_width=\"match_parent\"\n                android:background=\"@drawable/edit_back\"\n                android:layout_height=\"wrap_content\"\n                android:layout_marginVertical=\"14dp\"\n                android:layout_marginHorizontal=\"14dp\"\n                app:layout_constraintStart_toStartOf=\"parent\"\n                app:layout_constraintTop_toBottomOf=\"@id/postTitleSM\"\n                android:padding=\"10dp\"\n                android:hint=\"Description\"\n                android:textStyle=\"bold\" />\n\n\n        <Button\n            android:id=\"@+id/createPostBtnSM\"\n            android:layout_width=\"120dp\"\n            android:background=\"@drawable/all_buttons\"\n            android:layout_height=\"60dp\"\n            android:textStyle=\"bold\"\n            android:layout_marginVertical=\"14dp\"\n            android:textAllCaps=\"false\"\n            android:textSize=\"18sp\"\n            android:text=\"Create\"\n            app:layout_constraintEnd_toEndOf=\"parent\"\n            app:layout_constraintStart_toStartOf=\"parent\"\n            app:layout_constraintTop_toBottomOf=\"@id/descPostSM\" />\n\n    </androidx.constraintlayout.widget.ConstraintLayout>\n\n</FrameLayout>"
  },
  {
    "path": "app/src/main/res/layout/fragment_social_media_posts.xml",
    "content": "<?xml version=\"1.0\" encoding=\"utf-8\"?>\n<FrameLayout xmlns:android=\"http://schemas.android.com/apk/res/android\"\n    xmlns:tools=\"http://schemas.android.com/tools\"\n    android:layout_width=\"match_parent\"\n    android:layout_height=\"match_parent\"\n    xmlns:app=\"http://schemas.android.com/apk/res-auto\"\n    tools:context=\".view.socialmedia.SocialMediaPostsFragment\">\n\n    <!-- TODO: Update blank fragment layout -->\n\n    <androidx.constraintlayout.widget.ConstraintLayout\n        android:layout_width=\"match_parent\"\n        android:layout_height=\"match_parent\">\n\n    <com.google.android.material.floatingactionbutton.FloatingActionButton\n        android:layout_width=\"wrap_content\"\n        app:layout_constraintEnd_toEndOf=\"parent\"\n        app:layout_constraintBottom_toBottomOf=\"parent\"\n        android:id=\"@+id/createPostFloating\"\n        android:layout_marginVertical=\"21dp\"\n        android:layout_marginHorizontal=\"21dp\"\n        android:layout_height=\"wrap_content\"\n        android:backgroundTint=\"@color/colorThird\"\n        android:src=\"@drawable/add_icon\"\n        />\n\n    <androidx.recyclerview.widget.RecyclerView\n        android:id=\"@+id/postsRecycler\"\n        android:layout_width=\"match_parent\"\n        android:layout_height=\"match_parent\"\n        />\n\n    </androidx.constraintlayout.widget.ConstraintLayout>\n</FrameLayout>"
  },
  {
    "path": "app/src/main/res/layout/fragment_user.xml",
    "content": "<?xml version=\"1.0\" encoding=\"utf-8\"?>\n<FrameLayout xmlns:android=\"http://schemas.android.com/apk/res/android\"\n    xmlns:app=\"http://schemas.android.com/apk/res-auto\"\n    xmlns:tools=\"http://schemas.android.com/tools\"\n    android:layout_width=\"match_parent\"\n    android:layout_height=\"match_parent\"\n    tools:context=\".view.user.UserFragment\">\n\n    <androidx.constraintlayout.widget.ConstraintLayout\n        android:layout_width=\"match_parent\"\n        android:layout_height=\"match_parent\">\n\n        <ImageView\n            android:id=\"@+id/imageEdit\"\n            android:layout_width=\"30dp\"\n            android:layout_height=\"30dp\"\n            app:layout_constraintEnd_toEndOf=\"parent\"\n            app:layout_constraintTop_toTopOf=\"parent\"\n            android:elevation=\"0.1dp\"\n            android:layout_margin=\"14sp\"\n            android:src=\"@drawable/ic_baseline_edit_24\"\n            app:tint=\"@color/fontColor\" />\n\n        <ImageView\n            android:id=\"@+id/imageChecked\"\n            android:layout_width=\"30dp\"\n            android:layout_height=\"30dp\"\n            android:visibility=\"gone\"\n            app:layout_constraintEnd_toEndOf=\"parent\"\n            app:layout_constraintTop_toTopOf=\"parent\"\n            android:elevation=\"0.1dp\"\n            android:layout_margin=\"14sp\"\n            android:src=\"@drawable/ic_baseline_check_24\"\n            app:tint=\"@color/fontColor\" />\n\n        <ImageView\n            android:id=\"@+id/userBackgroundImage\"\n            android:layout_width=\"match_parent\"\n            android:layout_height=\"200dp\"\n\n            android:scaleType=\"fitXY\"\n            android:background=\"@color/secondary\"\n            app:layout_constraintStart_toStartOf=\"parent\"\n            app:layout_constraintTop_toTopOf=\"parent\" />\n\n        <ImageView\n            android:id=\"@+id/uploadUserBackgroundImage\"\n            android:layout_width=\"50dp\"\n            android:layout_height=\"50dp\"\n            app:layout_constraintBottom_toBottomOf=\"@id/userBackgroundImage\"\n            app:layout_constraintEnd_toEndOf=\"parent\"\n            app:layout_constraintStart_toStartOf=\"parent\"\n            android:src=\"@drawable/ic_baseline_photo_camera_24\"\n            app:layout_constraintTop_toTopOf=\"@id/userBackgroundImage\"\n            app:tint=\"@color/colorPrimary\" />\n\n        <ProgressBar\n            android:id=\"@+id/uploadBackProgressProfile\"\n            android:layout_width=\"50dp\"\n            android:layout_height=\"50dp\"\n            app:layout_constraintBottom_toBottomOf=\"@id/userBackgroundImage\"\n            app:layout_constraintEnd_toEndOf=\"parent\"\n            app:layout_constraintStart_toStartOf=\"parent\"\n            app:layout_constraintTop_toTopOf=\"@id/userBackgroundImage\"\n            />\n\n        <androidx.cardview.widget.CardView\n            android:id=\"@+id/userImageCardUserFrag\"\n            android:layout_width=\"wrap_content\"\n            android:layout_height=\"wrap_content\"\n            android:layout_marginStart=\"25dp\"\n            android:layout_marginTop=\"150dp\"\n            app:cardCornerRadius=\"14dp\"\n            app:layout_constraintStart_toStartOf=\"parent\"\n            app:layout_constraintTop_toTopOf=\"parent\">\n\n            <ImageView\n                android:id=\"@+id/userImageUserFrag\"\n                android:layout_width=\"130dp\"\n                android:layout_height=\"130dp\"\n                android:scaleType=\"fitXY\"\n                android:src=\"@color/colorPrimary\" />\n\n            <ImageView\n                android:id=\"@+id/uploadProfilePictureImage\"\n                android:layout_width=\"50dp\"\n                android:layout_height=\"50dp\"\n                android:layout_gravity=\"center\"\n                android:src=\"@drawable/ic_baseline_photo_camera_24\" />\n\n            <ProgressBar\n                android:id=\"@+id/uploadProgressBarProfile\"\n                android:layout_width=\"50dp\"\n                android:layout_height=\"50dp\"\n                android:layout_gravity=\"center\" />\n\n        </androidx.cardview.widget.CardView>\n\n        <TextView\n            android:id=\"@+id/userNameUserProfileFrag\"\n            android:layout_width=\"wrap_content\"\n            android:layout_height=\"wrap_content\"\n            android:layout_marginVertical=\"14dp\"\n            android:text=\"Het Suthar\"\n            android:textColor=\"@color/fontColor\"\n            android:textSize=\"21sp\"\n            android:textStyle=\"bold\"\n            app:layout_constraintEnd_toEndOf=\"parent\"\n            app:layout_constraintStart_toEndOf=\"@id/userImageCardUserFrag\"\n            app:layout_constraintTop_toBottomOf=\"@id/userBackgroundImage\" />\n\n        <TextView\n            android:id=\"@+id/userCityUserProfileFrag\"\n            android:layout_width=\"wrap_content\"\n            android:layout_height=\"wrap_content\"\n            android:layout_marginVertical=\"14dp\"\n            android:text=\"Ahmedabad\"\n            android:textColor=\"@color/fontColor\"\n            app:layout_constraintEnd_toStartOf=\"@id/userPostsCountUserProfileFrag\"\n            app:layout_constraintStart_toEndOf=\"@id/userImageCardUserFrag\"\n            app:layout_constraintTop_toBottomOf=\"@id/userNameUserProfileFrag\" />\n\n        <TextView\n            android:id=\"@+id/userPostsCountUserProfileFrag\"\n            android:layout_width=\"wrap_content\"\n            android:layout_height=\"wrap_content\"\n            android:layout_marginVertical=\"14dp\"\n            android:text=\"Ahmedabad\"\n            android:textColor=\"@color/fontColor\"\n            app:layout_constraintEnd_toEndOf=\"parent\"\n            app:layout_constraintStart_toEndOf=\"@id/userCityUserProfileFrag\"\n            app:layout_constraintTop_toBottomOf=\"@id/userNameUserProfileFrag\" />\n\n        <TextView\n            android:id=\"@+id/userEmailUserProfileFrag\"\n            android:text=\"sirvi3014@gmail.com\"\n            app:layout_constraintTop_toBottomOf=\"@id/userImageCardUserFrag\"\n            app:layout_constraintStart_toStartOf=\"@id/userImageCardUserFrag\"\n            android:textColor=\"@color/fontColor\"\n            android:layout_width=\"wrap_content\"\n            android:layout_height=\"wrap_content\"\n            android:layout_marginVertical=\"7dp\"\n            />\n\n        <EditText\n            android:id=\"@+id/cityEditUserProfile\"\n            app:layout_constraintTop_toBottomOf=\"@id/userEmailUserProfileFrag\"\n            app:layout_constraintStart_toStartOf=\"@id/userImageCardUserFrag\"\n            app:layout_constraintEnd_toEndOf=\"parent\"\n            android:layout_marginEnd=\"25dp\"\n            android:layout_marginVertical=\"7dp\"\n            android:layout_width=\"0dp\"\n            android:hint=\"Enter City\"\n            android:background=\"@drawable/edit_back\"\n            android:layout_height=\"50dp\"\n            android:paddingStart=\"10dp\"\n            />\n\n        <TextView\n            android:id=\"@+id/aboutTitleUserProfileFrag\"\n            android:layout_width=\"wrap_content\"\n            android:layout_height=\"wrap_content\"\n            android:layout_marginVertical=\"14dp\"\n            android:text=\"About\"\n            android:textColor=\"@color/fontColor\"\n            android:textSize=\"17sp\"\n            android:textStyle=\"bold\"\n            app:layout_constraintStart_toStartOf=\"@id/userImageCardUserFrag\"\n            app:layout_constraintTop_toBottomOf=\"@id/cityEditUserProfile\" />\n\n        <TextView\n            android:id=\"@+id/aboutValueUserProfileFrag\"\n            android:layout_width=\"0dp\"\n            android:layout_height=\"wrap_content\"\n            android:layout_marginTop=\"7dp\"\n            android:layout_marginEnd=\"25dp\"\n            android:textColor=\"@color/fontColor\"\n            android:textSize=\"14sp\"\n            app:layout_constraintEnd_toEndOf=\"parent\"\n            app:layout_constraintStart_toStartOf=\"@id/userImageCardUserFrag\"\n            app:layout_constraintTop_toBottomOf=\"@id/aboutTitleUserProfileFrag\" />\n\n<!--        <TextView-->\n<!--            android:id=\"@+id/addAboutTextUserFrag\"-->\n<!--            android:layout_width=\"0dp\"-->\n<!--            android:layout_height=\"wrap_content\"-->\n<!--            android:layout_marginTop=\"7dp\"-->\n<!--            android:layout_marginEnd=\"25dp\"-->\n<!--            android:text=\"Add About Information\"-->\n<!--            android:textColor=\"@color/fontColor\"-->\n<!--            android:textSize=\"16sp\"-->\n<!--            app:layout_constraintEnd_toEndOf=\"parent\"-->\n<!--            app:layout_constraintStart_toStartOf=\"@id/userImageCardUserFrag\"-->\n<!--            app:layout_constraintTop_toBottomOf=\"@id/aboutValueUserProfileFrag\" />-->\n\n        <EditText\n            android:layout_width=\"0dp\"\n            android:layout_height=\"50dp\"\n            app:layout_constraintEnd_toEndOf=\"parent\"\n            android:layout_marginEnd=\"25dp\"\n            android:background=\"@drawable/edit_back\"\n            android:layout_marginVertical=\"7dp\"\n            android:paddingStart=\"10dp\"\n            android:hint=\"Enter About Information\"\n            app:layout_constraintEnd_toStartOf=\"@id/saveBtnAboutUserProfileFrag\"\n            android:id=\"@+id/aboutValueEditUserProfileFrag\"\n            app:layout_constraintStart_toStartOf=\"@id/userImageCardUserFrag\"\n            app:layout_constraintTop_toBottomOf=\"@id/aboutValueUserProfileFrag\"\n\n            />\n\n<!--        <com.google.android.material.textfield.TextInputLayout-->\n<!--            android:id=\"@+id/inputLayout1\"-->\n<!--            android:layout_width=\"0dp\"-->\n<!--            android:layout_height=\"wrap_content\"-->\n<!--            app:layout_constraintEnd_toStartOf=\"@id/saveBtnAboutUserProfileFrag\"-->\n<!--            app:layout_constraintStart_toStartOf=\"@id/userImageCardUserFrag\"-->\n<!--            app:layout_constraintTop_toBottomOf=\"@id/addAboutTextUserFrag\">-->\n\n<!--            <com.google.android.material.textfield.TextInputEditText-->\n<!--                android:id=\"@+id/aboutValueEditUserProfileFrag\"-->\n<!--                android:layout_width=\"match_parent\"-->\n<!--                android:layout_height=\"wrap_content\"-->\n<!--                android:layout_marginEnd=\"14sp\"-->\n<!--                android:backgroundTint=\"#0060AA39\"-->\n<!--                android:hint=\"Enter About Information\"-->\n<!--                android:textColor=\"@color/fontColor\"-->\n<!--                android:textSize=\"14sp\" />-->\n<!--        </com.google.android.material.textfield.TextInputLayout>-->\n\n        <Button\n            android:id=\"@+id/saveBtnAboutUserProfileFrag\"\n            android:layout_width=\"50dp\"\n            android:layout_height=\"wrap_content\"\n            android:layout_marginEnd=\"25dp\"\n            android:text=\"✔\"\n            app:layout_constraintBottom_toBottomOf=\"@+id/aboutValueEditUserProfileFrag\"\n            app:layout_constraintEnd_toEndOf=\"parent\"\n            app:layout_constraintStart_toEndOf=\"@id/aboutValueEditUserProfileFrag\"\n            app:layout_constraintTop_toBottomOf=\"@id/aboutValueUserProfileFrag\" />\n\n\n        <TextView\n            android:id=\"@+id/postTitleUserProfileFrag\"\n            android:layout_width=\"wrap_content\"\n            android:layout_height=\"wrap_content\"\n            android:layout_marginVertical=\"14dp\"\n            android:text=\"Posts\"\n            android:textColor=\"@color/fontColor\"\n            android:textSize=\"17sp\"\n            android:textStyle=\"bold\"\n            app:layout_constraintStart_toStartOf=\"@id/userImageCardUserFrag\"\n            app:layout_constraintTop_toBottomOf=\"@id/aboutValueEditUserProfileFrag\" />\n\n        <androidx.recyclerview.widget.RecyclerView\n            android:id=\"@+id/userProfilePostsRecycler\"\n            android:layout_width=\"match_parent\"\n            android:layout_height=\"0dp\"\n            android:layout_marginHorizontal=\"25dp\"\n            android:layout_marginTop=\"7dp\"\n            app:layout_constraintBottom_toBottomOf=\"parent\"\n            app:layout_constraintEnd_toEndOf=\"parent\"\n            app:layout_constraintStart_toStartOf=\"@id/postTitleUserProfileFrag\"\n            app:layout_constraintTop_toBottomOf=\"@id/postTitleUserProfileFrag\" />\n\n    </androidx.constraintlayout.widget.ConstraintLayout>\n</FrameLayout>"
  },
  {
    "path": "app/src/main/res/layout/fragment_weather.xml",
    "content": "<?xml version=\"1.0\" encoding=\"utf-8\"?>\n<layout xmlns:android=\"http://schemas.android.com/apk/res/android\"\n    xmlns:app=\"http://schemas.android.com/apk/res-auto\"\n    xmlns:tools=\"http://schemas.android.com/tools\">\n\n    <data>\n\n        <variable\n            name=\"weatherViewModel\"\n            type=\"com.project.farmingapp.viewmodel.WeatherViewModel\" />\n    </data>\n\n    <FrameLayout\n        android:layout_width=\"match_parent\"\n        android:layout_height=\"match_parent\"\n        tools:context=\".view.weather.WeatherFragment\">\n\n        <androidx.constraintlayout.widget.ConstraintLayout\n            android:layout_width=\"match_parent\"\n            android:layout_height=\"match_parent\"\n            android:background=\"@drawable/bbc\">\n\n            <TextView\n                android:id=\"@+id/weatherCity\"\n                android:layout_width=\"wrap_content\"\n                android:layout_height=\"wrap_content\"\n                android:layout_marginVertical=\"21dp\"\n                android:text=\"Ahmedabad\"\n                android:textColor=\"@color/fontColor\"\n                android:textSize=\"25sp\"\n                android:textStyle=\"bold\"\n                app:layout_constraintBottom_toTopOf=\"@id/currentWeather_rcycl\"\n                app:layout_constraintEnd_toEndOf=\"parent\"\n                app:layout_constraintStart_toStartOf=\"parent\"\n                app:layout_constraintTop_toTopOf=\"parent\" />\n\n            <androidx.recyclerview.widget.RecyclerView\n                android:id=\"@+id/currentWeather_rcycl\"\n                android:layout_width=\"match_parent\"\n                android:layout_height=\"300dp\"\n                android:layout_marginHorizontal=\"10dp\"\n                app:layout_constraintBottom_toTopOf=\"@id/rcylr_weather\"\n                app:layout_constraintEnd_toEndOf=\"parent\"\n                app:layout_constraintStart_toStartOf=\"parent\"\n                app:layout_constraintTop_toBottomOf=\"@id/weatherCity\" />\n\n            <androidx.recyclerview.widget.RecyclerView\n                android:id=\"@+id/rcylr_weather\"\n                android:layout_width=\"0dp\"\n                android:layout_height=\"0dp\"\n                android:background=\"@drawable/weather_rcyclr_bg\"\n                app:layout_constraintBottom_toBottomOf=\"parent\"\n                app:layout_constraintEnd_toEndOf=\"parent\"\n                app:layout_constraintStart_toStartOf=\"parent\"\n                app:layout_constraintTop_toBottomOf=\"@+id/currentWeather_rcycl\"\n                tools:listitem=\"@layout/single_weather\" />\n        </androidx.constraintlayout.widget.ConstraintLayout>\n    </FrameLayout>\n</layout>"
  },
  {
    "path": "app/src/main/res/layout/fragment_yojna.xml",
    "content": "<?xml version=\"1.0\" encoding=\"utf-8\"?>\n<FrameLayout xmlns:android=\"http://schemas.android.com/apk/res/android\"\n    xmlns:app=\"http://schemas.android.com/apk/res-auto\"\n    xmlns:tools=\"http://schemas.android.com/tools\"\n    android:layout_width=\"match_parent\"\n    android:layout_height=\"match_parent\"\n    tools:context=\".view.yojna.YojnaFragment\">\n\n\n    <androidx.constraintlayout.widget.ConstraintLayout xmlns:android=\"http://schemas.android.com/apk/res/android\"\n        xmlns:app=\"http://schemas.android.com/apk/res-auto\"\n        xmlns:tools=\"http://schemas.android.com/tools\"\n        android:layout_width=\"match_parent\"\n        android:layout_height=\"match_parent\"\n        tools:context=\".yojnaMain\">\n\n        <ProgressBar\n            android:layout_width=\"wrap_content\"\n            android:id=\"@+id/progressYojna\"\n            app:layout_constraintStart_toStartOf=\"parent\"\n            app:layout_constraintEnd_toEndOf=\"parent\"\n            app:layout_constraintTop_toTopOf=\"parent\"\n            app:layout_constraintBottom_toBottomOf=\"parent\"\n            android:indeterminateDrawable=\"@drawable/progress_background\"\n            android:elevation=\"12dp\"\n            android:layout_height=\"wrap_content\"\n            />\n\n        <ScrollView\n            android:layout_width=\"match_parent\"\n            android:layout_height=\"match_parent\"\n            app:layout_constraintBottom_toBottomOf=\"parent\"\n            app:layout_constraintEnd_toEndOf=\"parent\"\n            app:layout_constraintStart_toStartOf=\"parent\"\n            app:layout_constraintTop_toTopOf=\"parent\">\n\n            <androidx.constraintlayout.widget.ConstraintLayout\n                android:layout_width=\"match_parent\"\n                android:layout_height=\"wrap_content\">\n\n                <ImageView\n                    android:id=\"@+id/yojnaImage\"\n                    android:layout_width=\"match_parent\"\n                    android:layout_height=\"220dp\"\n                    android:scaleType=\"fitXY\"\n                    android:src=\"@color/secondary\"\n                    app:layout_constraintEnd_toEndOf=\"parent\"\n                    app:layout_constraintStart_toStartOf=\"parent\"\n                    app:layout_constraintTop_toTopOf=\"parent\" />\n\n                <TextView\n                    android:id=\"@+id/yojnaTitle\"\n                    android:layout_width=\"0dp\"\n                    android:layout_height=\"wrap_content\"\n                    android:layout_marginHorizontal=\"14dp\"\n                    android:layout_marginVertical=\"14dp\"\n                    android:layout_marginBottom=\"7dp\"\n                    android:lineSpacingExtra=\"3dp\"\n                    android:text=\"@string/loading\"\n                    android:textSize=\"21sp\"\n                    android:textStyle=\"bold\"\n                    app:layout_constraintEnd_toEndOf=\"parent\"\n                    app:layout_constraintStart_toStartOf=\"parent\"\n                    app:layout_constraintTop_toBottomOf=\"@id/yojnaImage\" />\n\n                <TextView\n                    android:id=\"@+id/yojnaDesc\"\n                    android:layout_width=\"0dp\"\n                    android:layout_height=\"wrap_content\"\n                    android:layout_marginHorizontal=\"14dp\"\n                    android:layout_marginVertical=\"7dp\"\n                    android:ellipsize=\"end\"\n                    android:gravity=\"fill_horizontal\"\n                    android:justificationMode=\"inter_word\"\n                    android:lineSpacingExtra=\"3dp\"\n                    android:maxLines=\"5\"\n                    android:text=\"@string/loading\"\n                    android:textSize=\"17sp\"\n                    app:layout_constraintEnd_toEndOf=\"parent\"\n                    app:layout_constraintStart_toStartOf=\"parent\"\n                    app:layout_constraintTop_toBottomOf=\"@id/yojnaTitle\" />\n\n                <View\n                    android:id=\"@+id/hr1\"\n                    android:layout_width=\"match_parent\"\n                    android:layout_height=\"1dp\"\n                    android:layout_marginHorizontal=\"14dp\"\n                    android:layout_marginVertical=\"7dp\"\n                    android:background=\"@color/secondary\"\n                    app:layout_constraintTop_toBottomOf=\"@id/yojnaDesc\" />\n\n                <ImageView\n                    android:id=\"@+id/yojnaDateIcon\"\n                    android:layout_width=\"50dp\"\n                    android:layout_height=\"50dp\"\n                    android:layout_marginVertical=\"14dp\"\n                    android:layout_marginStart=\"14dp\"\n                    android:src=\"@drawable/c2\"\n                    app:layout_constraintEnd_toEndOf=\"@id/yojnaDate\"\n                    app:layout_constraintStart_toStartOf=\"@id/yojnaDate\"\n                    app:layout_constraintTop_toBottomOf=\"@id/hr1\"\n                    app:tint=\"@color/colorPrimary\" />\n\n                <TextView\n                    android:id=\"@+id/yojnaDate\"\n                    android:layout_width=\"wrap_content\"\n                    android:layout_height=\"wrap_content\"\n                    android:layout_marginVertical=\"7dp\"\n                    android:text=\"@string/loading\"\n                    app:layout_constraintEnd_toStartOf=\"@id/yojnaLaunchedBy\"\n                    app:layout_constraintStart_toStartOf=\"parent\"\n                    app:layout_constraintTop_toBottomOf=\"@id/yojnaDateIcon\" />\n\n                <ImageView\n                    android:id=\"@+id/yojnaBudgetIcon\"\n                    android:layout_width=\"50dp\"\n                    android:layout_height=\"50dp\"\n                    android:layout_marginVertical=\"14dp\"\n                    android:layout_marginEnd=\"14dp\"\n                    android:scaleType=\"fitXY\"\n                    android:src=\"@drawable/budget\"\n                    app:layout_constraintEnd_toEndOf=\"@id/yojnaBudget\"\n                    app:layout_constraintStart_toStartOf=\"@id/yojnaBudget\"\n                    app:layout_constraintTop_toBottomOf=\"@id/hr1\"\n                    />\n\n                <TextView\n                    android:id=\"@+id/yojnaBudget\"\n                    android:layout_width=\"wrap_content\"\n                    android:layout_height=\"wrap_content\"\n                    android:layout_marginVertical=\"7dp\"\n                    android:text=\"@string/loading\"\n                    app:layout_constraintEnd_toEndOf=\"parent\"\n                    app:layout_constraintStart_toEndOf=\"@id/yojnaLaunchedBy\"\n                    app:layout_constraintTop_toBottomOf=\"@id/yojnaBudgetIcon\" />\n\n                <ImageView\n                    android:id=\"@+id/launchedByIcon\"\n                    android:layout_width=\"50dp\"\n                    android:layout_height=\"50dp\"\n                    android:layout_marginHorizontal=\"7dp\"\n                    android:layout_marginVertical=\"14dp\"\n                    android:src=\"@drawable/c2\"\n                    app:layout_constraintEnd_toEndOf=\"@id/yojnaLaunchedBy\"\n                    app:layout_constraintStart_toStartOf=\"@id/yojnaLaunchedBy\"\n                    app:layout_constraintTop_toBottomOf=\"@id/hr1\"\n                    app:tint=\"@color/colorPrimary\" />\n\n                <TextView\n                    android:id=\"@+id/yojnaLaunchedBy\"\n                    android:layout_width=\"wrap_content\"\n                    android:layout_height=\"wrap_content\"\n                    android:layout_marginVertical=\"7dp\"\n                    android:text=\"@string/loading\"\n                    app:layout_constraintEnd_toStartOf=\"@id/yojnaBudget\"\n                    app:layout_constraintStart_toEndOf=\"@id/yojnaDate\"\n                    app:layout_constraintTop_toBottomOf=\"@id/launchedByIcon\" />\n\n                <View\n                    android:id=\"@+id/hr2\"\n                    android:layout_width=\"match_parent\"\n                    android:layout_height=\"1dp\"\n                    android:layout_marginHorizontal=\"14dp\"\n                    android:layout_marginVertical=\"7dp\"\n                    android:background=\"@color/secondary\"\n                    app:layout_constraintTop_toBottomOf=\"@id/yojnaDate\" />\n\n                <TextView\n                    android:id=\"@+id/eligibilityTitle\"\n                    android:layout_width=\"wrap_content\"\n                    android:layout_height=\"wrap_content\"\n                    android:layout_marginVertical=\"14dp\"\n                    android:layout_marginStart=\"14dp\"\n                    android:text=\"Eligibility Criteria:\"\n                    android:textSize=\"18sp\"\n                    android:textStyle=\"bold\"\n                    app:layout_constraintStart_toStartOf=\"parent\"\n                    app:layout_constraintTop_toBottomOf=\"@id/hr2\" />\n\n                <TextView\n                    android:id=\"@+id/yojnaEligibility\"\n                    android:layout_width=\"0dp\"\n                    android:layout_height=\"wrap_content\"\n                    android:layout_marginHorizontal=\"14dp\"\n                    android:layout_marginVertical=\"7dp\"\n                    android:gravity=\"fill_horizontal\"\n                    android:justificationMode=\"inter_word\"\n                    android:lineSpacingExtra=\"3dp\"\n                    android:text=\"@string/loading\"\n                    android:textSize=\"17sp\"\n                    app:layout_constraintEnd_toEndOf=\"parent\"\n                    app:layout_constraintStart_toStartOf=\"parent\"\n                    app:layout_constraintTop_toBottomOf=\"@id/eligibilityTitle\" />\n\n                <TextView\n                    android:id=\"@+id/documentsRequiredTitle\"\n                    android:layout_width=\"wrap_content\"\n                    android:layout_height=\"wrap_content\"\n                    android:layout_marginHorizontal=\"14dp\"\n                    android:layout_marginVertical=\"14dp\"\n                    android:text=\"Required Documents:\"\n                    android:textSize=\"18sp\"\n                    android:textStyle=\"bold\"\n                    app:layout_constraintStart_toStartOf=\"parent\"\n                    app:layout_constraintTop_toBottomOf=\"@id/yojnaEligibility\" />\n\n                <TextView\n                    android:id=\"@+id/yojnaDocumentsRequired\"\n                    android:layout_width=\"0dp\"\n                    android:layout_height=\"wrap_content\"\n                    android:layout_marginHorizontal=\"14dp\"\n                    android:layout_marginVertical=\"7dp\"\n                    android:gravity=\"fill_horizontal\"\n                    android:justificationMode=\"inter_word\"\n                    android:lineSpacingExtra=\"3dp\"\n                    android:text=\"@string/loading\"\n                    android:textSize=\"17sp\"\n                    app:layout_constraintEnd_toEndOf=\"parent\"\n                    app:layout_constraintStart_toStartOf=\"parent\"\n                    app:layout_constraintTop_toBottomOf=\"@id/documentsRequiredTitle\" />\n\n                <TextView\n                    android:id=\"@+id/objectivesTitle\"\n                    android:layout_width=\"wrap_content\"\n                    android:layout_height=\"wrap_content\"\n                    android:layout_marginHorizontal=\"14dp\"\n                    android:layout_marginVertical=\"14dp\"\n                    android:text=\"Objectives:\"\n                    android:textSize=\"18sp\"\n                    android:textStyle=\"bold\"\n                    app:layout_constraintStart_toStartOf=\"parent\"\n                    app:layout_constraintTop_toBottomOf=\"@id/yojnaDocumentsRequired\" />\n\n                <TextView\n                    android:id=\"@+id/yojnaObjectives\"\n                    android:layout_width=\"0dp\"\n                    android:layout_height=\"wrap_content\"\n                    android:layout_marginHorizontal=\"14dp\"\n                    android:layout_marginVertical=\"7dp\"\n                    android:gravity=\"fill_horizontal\"\n                    android:justificationMode=\"inter_word\"\n                    android:lineSpacingExtra=\"3dp\"\n                    android:text=\"@string/loading\"\n                    android:textSize=\"17sp\"\n                    app:layout_constraintEnd_toEndOf=\"parent\"\n                    app:layout_constraintStart_toStartOf=\"parent\"\n                    app:layout_constraintTop_toBottomOf=\"@id/objectivesTitle\" />\n\n                <TextView\n                    android:id=\"@+id/moreInfoTitle\"\n                    android:layout_width=\"wrap_content\"\n                    android:layout_height=\"wrap_content\"\n                    android:layout_marginHorizontal=\"14dp\"\n                    android:layout_marginVertical=\"14dp\"\n                    android:text=\"Website:\"\n                    android:textSize=\"18sp\"\n                    android:textStyle=\"bold\"\n                    app:layout_constraintBottom_toBottomOf=\"parent\"\n                    app:layout_constraintStart_toStartOf=\"parent\"\n                    app:layout_constraintTop_toBottomOf=\"@id/yojnaObjectives\" />\n\n                <TextView\n                    android:id=\"@+id/yojnaWebsite\"\n                    android:layout_width=\"0dp\"\n                    android:layout_height=\"wrap_content\"\n                    android:layout_marginHorizontal=\"7dp\"\n                    android:layout_marginBottom=\"14dp\"\n                    android:textSize=\"17sp\"\n                    app:layout_constraintBottom_toBottomOf=\"parent\"\n                    app:layout_constraintEnd_toEndOf=\"parent\"\n                    android:autoLink=\"web\"\n                    android:text=\"@string/loading\"\n                    android:textColor=\"@color/fontColor\"\n                    android:textColorLink=\"@color/fontColor\"\n                    app:layout_constraintStart_toEndOf=\"@id/moreInfoTitle\"\n                    app:layout_constraintTop_toTopOf=\"@id/moreInfoTitle\" />\n\n            </androidx.constraintlayout.widget.ConstraintLayout>\n\n        </ScrollView>\n\n    </androidx.constraintlayout.widget.ConstraintLayout>\n\n</FrameLayout>"
  },
  {
    "path": "app/src/main/res/layout/fragment_yojna_list.xml",
    "content": "<?xml version=\"1.0\" encoding=\"utf-8\"?>\n<FrameLayout xmlns:android=\"http://schemas.android.com/apk/res/android\"\n    xmlns:tools=\"http://schemas.android.com/tools\"\n    android:layout_width=\"match_parent\"\n    android:layout_height=\"match_parent\"\n    xmlns:app=\"http://schemas.android.com/apk/res-auto\"\n    tools:context=\".view.yojna.YojnaListFragment\">\n\n  <androidx.constraintlayout.widget.ConstraintLayout\n      android:layout_width=\"match_parent\"\n      android:layout_height=\"match_parent\">\n    <TextView\n        android:layout_marginVertical=\"7dp\"\n        android:id=\"@+id/YojnaListTitle\"\n        android:layout_width=\"wrap_content\"\n        android:layout_height=\"wrap_content\"\n        app:layout_constraintStart_toStartOf=\"parent\"\n        app:layout_constraintTop_toTopOf=\"parent\"\n       app:layout_constraintEnd_toEndOf=\"parent\"\n        android:textSize=\"21sp\"\n        android:textStyle=\"bold\"\n        android:text=\"Yojna\" />\n\n      <androidx.recyclerview.widget.RecyclerView\n          android:id=\"@+id/rcyclr_yojnaList\"\n          android:layout_width=\"match_parent\"\n          android:layout_height=\"wrap_content\"\n          app:layout_constraintStart_toStartOf=\"parent\"\n          app:layout_constraintTop_toBottomOf=\"@id/YojnaListTitle\"\n          app:layout_constraintEnd_toEndOf=\"parent\"\n          android:layout_margin=\"7dp\"/>\n  </androidx.constraintlayout.widget.ConstraintLayout>\n</FrameLayout>"
  },
  {
    "path": "app/src/main/res/layout/item_loading.xml",
    "content": "<?xml version=\"1.0\" encoding=\"utf-8\"?>\n<androidx.constraintlayout.widget.ConstraintLayout xmlns:android=\"http://schemas.android.com/apk/res/android\"\n    android:layout_width=\"match_parent\"\n    android:layout_height=\"wrap_content\"\n    xmlns:app=\"http://schemas.android.com/apk/res-auto\">\n    <ProgressBar\n        android:id=\"@+id/progressBar\"\n        style=\"?android:attr/progressBarStyle\"\n        android:layout_width=\"wrap_content\"\n        android:layout_height=\"wrap_content\"\n        android:layout_marginStart=\"8dp\"\n        android:layout_marginLeft=\"8dp\"\n        android:layout_marginTop=\"16dp\"\n        android:layout_marginEnd=\"8dp\"\n        android:layout_marginRight=\"8dp\"\n        android:layout_marginBottom=\"16dp\"\n        app:layout_constraintBottom_toBottomOf=\"parent\"\n        app:layout_constraintEnd_toEndOf=\"parent\"\n        app:layout_constraintStart_toStartOf=\"parent\"\n        app:layout_constraintTop_toTopOf=\"parent\"\n        />\n</androidx.constraintlayout.widget.ConstraintLayout>"
  },
  {
    "path": "app/src/main/res/layout/nav_header.xml",
    "content": "<?xml version=\"1.0\" encoding=\"utf-8\"?>\n<androidx.constraintlayout.widget.ConstraintLayout xmlns:android=\"http://schemas.android.com/apk/res/android\"\n    xmlns:app=\"http://schemas.android.com/apk/res-auto\"\n    xmlns:tools=\"http://schemas.android.com/tools\"\n    android:layout_width=\"match_parent\"\n    android:layout_height=\"150dp\"\n    android:background=\"@color/colorPrimary\"\n    android:gravity=\"bottom\"\n    android:orientation=\"horizontal\">\n\n    <com.google.android.material.circularreveal.cardview.CircularRevealCardView\n\n        android:id=\"@+id/circularRevealCardView\"\n        android:layout_width=\"80dp\"\n        android:layout_height=\"80dp\"\n        android:background=\"#f00\"\n        app:cardCornerRadius=\"50dp\"\n        app:layout_constraintBottom_toBottomOf=\"parent\"\n        app:layout_constraintEnd_toEndOf=\"parent\"\n        app:layout_constraintHorizontal_bias=\"0.06\"\n        app:layout_constraintStart_toStartOf=\"parent\"\n        app:layout_constraintTop_toTopOf=\"parent\"\n        app:layout_constraintVertical_bias=\"0.32999998\">\n\n        <ImageView\n            android:id=\"@+id/navbarUserImage\"\n            android:layout_width=\"80dp\"\n            android:layout_height=\"80dp\"\n            android:background=\"@drawable/ic_user_profile\"\n            android:scaleType=\"fitXY\" />\n\n    </com.google.android.material.circularreveal.cardview.CircularRevealCardView>\n\n    <Button\n        android:layout_width=\"wrap_content\"\n        android:layout_height=\"wrap_content\"\n        android:text=\"Login\"\n        android:visibility=\"gone\"\n        app:layout_constraintBottom_toBottomOf=\"parent\"\n        app:layout_constraintEnd_toEndOf=\"parent\"\n        app:layout_constraintStart_toEndOf=\"@id/circularRevealCardView\"\n        app:layout_constraintTop_toTopOf=\"parent\" />\n\n    <TextView\n        android:id=\"@+id/navbarUserEmail\"\n        android:layout_width=\"wrap_content\"\n        android:layout_height=\"wrap_content\"\n        android:layout_marginVertical=\"5dp\"\n        android:text=\"abc@example.com\"\n        android:textColor=\"#fff\"\n        android:textSize=\"15sp\"\n        app:layout_constraintBottom_toBottomOf=\"parent\"\n\n        app:layout_constraintStart_toStartOf=\"@+id/circularRevealCardView\"\n        app:layout_constraintTop_toBottomOf=\"@+id/circularRevealCardView\" />\n\n    <TextView\n        android:id=\"@+id/navbarUserName\"\n        android:layout_width=\"wrap_content\"\n        android:layout_height=\"wrap_content\"\n        android:layout_marginLeft=\"25dp\"\n        android:layout_marginTop=\"25dp\"\n        android:text=\"User Name\"\n        android:textColor=\"#fff\"\n        android:textSize=\"20sp\"\n        android:textStyle=\"bold\"\n        app:layout_constraintBottom_toTopOf=\"@id/cityTextNavHeader\"\n        app:layout_constraintStart_toEndOf=\"@+id/circularRevealCardView\"\n        app:layout_constraintTop_toTopOf=\"parent\" />\n\n    <TextView\n        android:id=\"@+id/cityTextNavHeader\"\n        android:layout_width=\"wrap_content\"\n        android:layout_height=\"wrap_content\"\n        android:layout_marginVertical=\"10dp\"\n        android:text=\"City\"\n        android:textColor=\"#fff\"\n        android:textSize=\"15sp\"\n        app:layout_constraintBottom_toTopOf=\"@+id/navBarUserPostCount\"\n        app:layout_constraintStart_toStartOf=\"@+id/navbarUserName\"\n        app:layout_constraintTop_toBottomOf=\"@+id/navbarUserName\" />\n\n    <TextView\n        android:id=\"@+id/navBarUserPostCount\"\n        android:layout_width=\"wrap_content\"\n        android:layout_height=\"wrap_content\"\n        android:layout_marginVertical=\"5dp\"\n        android:gravity=\"right\"\n        android:text=\"Posts Count\"\n        android:textColor=\"#fff\"\n        android:textSize=\"15sp\"\n        app:layout_constraintBottom_toBottomOf=\"@+id/circularRevealCardView\"\n        app:layout_constraintStart_toStartOf=\"@+id/cityTextNavHeader\" />\n\n</androidx.constraintlayout.widget.ConstraintLayout>"
  },
  {
    "path": "app/src/main/res/layout/post_with_image_sm.xml",
    "content": "<?xml version=\"1.0\" encoding=\"utf-8\"?>\n<androidx.constraintlayout.widget.ConstraintLayout xmlns:android=\"http://schemas.android.com/apk/res/android\"\n    xmlns:app=\"http://schemas.android.com/apk/res-auto\"\n    xmlns:tools=\"http://schemas.android.com/tools\"\n    android:layout_width=\"match_parent\"\n    android:layout_height=\"wrap_content\"\n\n    android:id=\"@+id/post_container\"\n\n   >\n\n<!--        <androidx.cardview.widget.CardView-->\n<!--            android:layout_width=\"match_parent\"-->\n<!--            android:layout_height=\"wrap_content\"-->\n\n\n<!--            app:cardCornerRadius=\"7dp\"-->\n<!--            app:layout_constraintEnd_toEndOf=\"parent\"-->\n<!--            app:layout_constraintBottom_toBottomOf=\"parent\"-->\n<!--            app:layout_constraintStart_toStartOf=\"parent\"-->\n<!--            app:layout_constraintTop_toTopOf=\"parent\">-->\n\n<!--            <androidx.constraintlayout.widget.ConstraintLayout-->\n<!--                android:layout_width=\"match_parent\"-->\n<!--                android:background=\"@color/secondary\"-->\n<!--                android:layout_height=\"wrap_content\"-->\n<!--                android:padding=\"7dp\">-->\n<androidx.cardview.widget.CardView\n\n    app:cardUseCompatPadding=\"true\"\n    app:cardCornerRadius=\"5dp\"\n\n    app:cardElevation=\"5dp\"\n    app:layout_constraintStart_toStartOf=\"parent\"\n    app:layout_constraintTop_toTopOf=\"parent\"\n    android:layout_width=\"match_parent\"\n    android:layout_height=\"wrap_content\">\n    <androidx.constraintlayout.widget.ConstraintLayout\n        android:padding=\"7dp\"\n        android:background=\"@drawable/post_border\"\n        android:layout_width=\"match_parent\"\n        android:layout_height=\"match_parent\">\n    <androidx.cardview.widget.CardView\n\n        android:id=\"@+id/userProfileImageCard\"\n        android:layout_width=\"wrap_content\"\n        android:layout_height=\"wrap_content\"\n        app:cardCornerRadius=\"20dp\"\n        app:layout_constraintStart_toStartOf=\"parent\"\n        app:layout_constraintTop_toTopOf=\"parent\">\n\n        <ImageView\n            android:id=\"@+id/userProfileImagePost\"\n            android:layout_width=\"30dp\"\n            android:layout_height=\"30dp\"\n            android:src=\"@drawable/ic_user_profile\" />\n    </androidx.cardview.widget.CardView>\n\n\n    <TextView\n        android:textColor=\"@color/fontColor\"\n        android:id=\"@+id/userNamePostSM\"\n        android:layout_width=\"wrap_content\"\n        android:layout_height=\"wrap_content\"\n        android:layout_gravity=\"center\"\n        android:layout_marginHorizontal=\"14dp\"\n        android:text=\"Het Suthar\"\n        android:textSize=\"14sp\"\n        app:layout_constraintBottom_toBottomOf=\"@id/userProfileImageCard\"\n        app:layout_constraintStart_toEndOf=\"@id/userProfileImageCard\"\n        app:layout_constraintTop_toTopOf=\"@id/userProfileImageCard\" />\n\n    <TextView\n        android:textColor=\"@color/fontColor\"\n        android:id=\"@+id/userPostUploadTime\"\n        android:layout_width=\"wrap_content\"\n        android:layout_height=\"wrap_content\"\n        android:layout_gravity=\"center\"\n        android:layout_weight=\"1\"\n        android:gravity=\"end\"\n        android:text=\"2 Minutes Ago\"\n        android:textSize=\"10sp\"\n        app:layout_constraintBottom_toBottomOf=\"@id/userProfileImageCard\"\n        app:layout_constraintEnd_toEndOf=\"parent\"\n        app:layout_constraintTop_toTopOf=\"@id/userProfileImageCard\" />\n\n\n    <ImageView\n        android:id=\"@+id/postImageSM\"\n        android:layout_width=\"match_parent\"\n        android:layout_height=\"wrap_content\"\n        android:layout_marginVertical=\"7dp\"\n        android:background=\"@color/colorPrimary\"\n        android:scaleType=\"fitXY\"\n        app:layout_constraintTop_toBottomOf=\"@id/userProfileImageCard\"\n        app:layout_constraintBottom_toTopOf=\"@id/userPostTitleValue\"/>\n\n    <WebView\n        android:id=\"@+id/postVideoSM\"\n        android:layout_width=\"match_parent\"\n        android:layout_height=\"250dp\"\n        android:scaleType=\"fitXY\"\n        android:layout_marginVertical=\"7dp\"\n        android:maxHeight=\"400dp\"\n        app:layout_constraintBottom_toTopOf=\"@id/userPostTitleValue\"\n        app:layout_constraintTop_toBottomOf=\"@id/userProfileImageCard\"\n        tools:ignore=\"WebViewLayout\" />\n\n    <!--    <VideoView-->\n    <!--        android:id=\"@+id/postVideoSM\"-->\n    <!--        android:layout_width=\"match_parent\"-->\n    <!--        android:layout_height=\"250dp\"-->\n    <!--        android:layout_marginVertical=\"7dp\"-->\n    <!--        app:layout_constraintTop_toBottomOf=\"@id/userProfileImageCard\" />-->\n\n\n    <TextView\n        android:justificationMode=\"inter_word\"\n        android:textColor=\"@color/fontColor\"\n        android:id=\"@+id/userPostTitleValue\"\n        android:layout_width=\"wrap_content\"\n        android:layout_height=\"wrap_content\"\n        android:layout_marginVertical=\"10dp\"\n        android:lineSpacingExtra=\"5dp\"\n        android:text=\"This is the title.\"\n        android:textSize=\"18sp\"\n        android:textStyle=\"bold\"\n        app:layout_constraintStart_toStartOf=\"parent\"\n        app:layout_constraintTop_toBottomOf=\"@id/postImageSM\" />\n\n    <TextView\n        android:textColor=\"@color/fontColor\"\n        android:id=\"@+id/userPostDescValue\"\n        android:layout_width=\"wrap_content\"\n        android:layout_height=\"wrap_content\"\n        android:ellipsize=\"end\"\n        android:gravity=\"fill_horizontal\"\n        android:justificationMode=\"inter_word\"\n        android:maxLines=\"3\"\n        android:layout_marginVertical=\"7dp\"\n        android:text=\"This is the Description.\"\n        app:layout_constraintBottom_toBottomOf=\"parent\"\n        android:lineSpacingExtra=\"5dp\"\n        android:textSize=\"14sp\"\n        app:layout_constraintStart_toStartOf=\"parent\"\n        app:layout_constraintTop_toBottomOf=\"@id/userPostTitleValue\" />\n    </androidx.constraintlayout.widget.ConstraintLayout>\n</androidx.cardview.widget.CardView>\n</androidx.constraintlayout.widget.ConstraintLayout>\n<!--        </androidx.cardview.widget.CardView>-->\n\n<!--    </androidx.constraintlayout.widget.ConstraintLayout>-->"
  },
  {
    "path": "app/src/main/res/layout/similarproductlist.xml",
    "content": "<?xml version=\"1.0\" encoding=\"utf-8\"?>\n<androidx.constraintlayout.widget.ConstraintLayout xmlns:android=\"http://schemas.android.com/apk/res/android\"\n    android:layout_width=\"wrap_content\"\n    android:layout_height=\"wrap_content\"\n    android:layout_margin=\"7dp\"\n    xmlns:app=\"http://schemas.android.com/apk/res-auto\">\n    <androidx.cardview.widget.CardView\n        app:layout_constraintStart_toStartOf=\"parent\"\n        app:layout_constraintTop_toTopOf=\"parent\"\n        android:layout_width=\"wrap_content\"\n        android:layout_height=\"wrap_content\">\n        <androidx.constraintlayout.widget.ConstraintLayout\n            android:layout_width=\"match_parent\"\n            android:layout_height=\"match_parent\">\n\n\n            <ImageView\n                android:src=\"#64DD17\"\n                android:id=\"@+id/recimg\"\n            app:layout_constraintTop_toTopOf=\"parent\"\n                app:layout_constraintStart_toStartOf=\"parent\"\n                android:layout_width=\"130dp\"\n                android:layout_height=\"100dp\"/>\n            <TextView\n                android:id=\"@+id/rectitle\"\n                android:textSize=\"18dp\"\n                app:layout_constraintStart_toStartOf=\"parent\"\n                app:layout_constraintTop_toBottomOf=\"@id/recimg\"\n                android:layout_width=\"wrap_content\"\n                android:layout_height=\"wrap_content\"\n                android:text=\"ABCD...\"/>\n            <TextView\n                android:id=\"@+id/recPrice\"\n                android:textSize=\"18dp\"\n            app:layout_constraintEnd_toEndOf=\"parent\"\n               app:layout_constraintTop_toBottomOf=\"@id/recimg\"\n                android:layout_width=\"wrap_content\"\n                android:layout_height=\"wrap_content\"\n                android:text=\"$120\"/>\n        </androidx.constraintlayout.widget.ConstraintLayout>\n    </androidx.cardview.widget.CardView>\n\n</androidx.constraintlayout.widget.ConstraintLayout>"
  },
  {
    "path": "app/src/main/res/layout/single_cart_item.xml",
    "content": "<?xml version=\"1.0\" encoding=\"utf-8\"?>\n<androidx.constraintlayout.widget.ConstraintLayout xmlns:android=\"http://schemas.android.com/apk/res/android\"\n    android:layout_width=\"match_parent\"\n    android:layout_height=\"wrap_content\"\n    xmlns:app=\"http://schemas.android.com/apk/res-auto\">\n    <androidx.cardview.widget.CardView\n        android:id=\"@+id/cartCard\"\n        android:layout_width=\"match_parent\"\n        android:layout_height=\"wrap_content\"\n        android:layout_marginHorizontal=\"14dp\"\n        android:layout_marginVertical=\"7dp\"\n        app:layout_constraintTop_toTopOf=\"parent\"\n        >\n\n        <androidx.constraintlayout.widget.ConstraintLayout\n            android:layout_width=\"match_parent\"\n\n            android:layout_height=\"wrap_content\"\n            android:background=\"@drawable/rounder_border_general\">\n\n            <ImageView\n                android:id=\"@+id/cartItemImage\"\n                android:layout_width=\"130dp\"\n                android:layout_height=\"0dp\"\n                app:layout_constraintBottom_toBottomOf=\"@id/deliveryChargeCart\"\n                android:layout_marginHorizontal=\"7dp\"\n                android:layout_marginTop=\"7dp\"\n                android:background=\"@drawable/round_borderless_general\"\n                android:src=\"@color/secondary\"\n                app:layout_constraintStart_toStartOf=\"parent\"\n                app:layout_constraintTop_toTopOf=\"parent\" />\n\n            <TextView\n                android:id=\"@+id/itemNameCart\"\n                android:layout_width=\"0dp\"\n                android:layout_height=\"wrap_content\"\n                android:layout_marginHorizontal=\"7dp\"\n                android:layout_marginVertical=\"7dp\"\n                android:text=\"Natures Plus Organic Fertiliser\"\n                android:textColor=\"@color/fontColor\"\n                android:textSize=\"14sp\"\n                android:textStyle=\"bold\"\n                app:layout_constraintEnd_toEndOf=\"parent\"\n                app:layout_constraintStart_toEndOf=\"@id/cartItemImage\"\n                app:layout_constraintTop_toTopOf=\"parent\"\n\n                />\n\n            <TextView\n                android:id=\"@+id/itemPriceCart\"\n                android:layout_width=\"wrap_content\"\n                android:layout_height=\"wrap_content\"\n                android:layout_margin=\"7dp\"\n                android:text=\"₹469\"\n                android:textColor=\"@color/colorPrimary\"\n                android:textSize=\"21sp\"\n                android:textStyle=\"bold\"\n                app:layout_constraintStart_toEndOf=\"@id/cartItemImage\"\n                app:layout_constraintTop_toBottomOf=\"@id/itemNameCart\"\n\n                />\n\n            <ImageView\n                android:id=\"@+id/removeCartBtn\"\n                android:layout_width=\"wrap_content\"\n                android:layout_marginHorizontal=\"7dp\"\n                android:layout_height=\"wrap_content\"\n                app:layout_constraintTop_toTopOf=\"@id/itemPriceCart\"\n                app:layout_constraintBottom_toBottomOf=\"@id/itemPriceCart\"\n                android:src=\"@drawable/ic_baseline_delete_forever_24\"\n                app:layout_constraintEnd_toEndOf=\"parent\"\n                />\n\n\n\n                <LinearLayout\n                    android:layout_width=\"wrap_content\"\n                    android:layout_height=\"wrap_content\"\n                    android:background=\"@drawable/table_border\"\n                    android:orientation=\"horizontal\"\n                    android:id=\"@+id/quantityChangeCard\"\n\n                    android:layout_marginHorizontal=\"7dp\"\n                    android:layout_marginTop=\"7dp\"\n                    app:layout_constraintStart_toEndOf=\"@id/cartItemImage\"\n                    app:layout_constraintTop_toBottomOf=\"@id/itemPriceCart\"\n                    >\n\n                    <ImageButton\n                        android:id=\"@+id/increaseQtyBtn\"\n                        android:layout_width=\"40dp\"\n                        android:layout_height=\"30dp\"\n                        android:backgroundTint=\"#00FFFFFF\"\n                        android:foregroundTint=\"#fff\"\n                        app:srcCompat=\"@drawable/add_icon\"\n                         />\n\n                    <TextView\n                        android:id=\"@+id/quantityCountEcomm\"\n                        android:layout_width=\"wrap_content\"\n                        android:layout_height=\"wrap_content\"\n                        android:layout_gravity=\"center\"\n                        android:layout_marginHorizontal=\"5dp\"\n                        android:text=\"1\"\n                        android:textSize=\"18sp\"\n                        android:textStyle=\"bold\" />\n\n                    <ImageButton\n                        android:id=\"@+id/decreaseQtyBtn\"\n                        android:layout_width=\"35dp\"\n                        android:foregroundTint=\"#000\"\n                        android:layout_height=\"30dp\"\n                        android:backgroundTint=\"#00FFFFFF\"\n                        app:srcCompat=\"@drawable/minus_icon\"\n                        />\n\n\n                </LinearLayout>\n\n\n            <TextView\n                android:id=\"@+id/cartItemAvailability\"\n                android:layout_width=\"wrap_content\"\n                android:layout_height=\"wrap_content\"\n                app:layout_constraintEnd_toEndOf=\"parent\"\n                app:layout_constraintTop_toTopOf=\"@id/quantityChangeCard\"\n                app:layout_constraintBottom_toBottomOf=\"@id/quantityChangeCard\"\n                android:layout_marginHorizontal=\"7dp\"\n                android:text=\"In Stock\"\n                android:textStyle=\"bold\"\n                android:textColor=\"@color/fontColor\"\n                />\n\n            <TextView\n                android:id=\"@+id/deliveryChargeCart\"\n                android:layout_width=\"wrap_content\"\n                android:layout_height=\"wrap_content\"\n                app:layout_constraintTop_toTopOf=\"@id/deliveryChargeTitle\"\n                android:text=\"Loading...\"\n                android:textColor=\"@color/fontColor\"\n                android:textSize=\"10sp\"\n                android:layout_marginHorizontal=\"1dp\"\n                android:textStyle=\"italic\"\n                app:layout_constraintStart_toEndOf=\"@id/deliveryChargeTitle\"\n                app:layout_constraintTop_toBottomOf=\"@id/quantityChangeCard\" />\n\n\n            <TextView\n                android:layout_width=\"wrap_content\"\n                android:layout_height=\"wrap_content\"\n                android:textSize=\"10sp\"\n                android:textColor=\"@color/fontColor\"\n                android:layout_marginVertical=\"7dp\"\n                android:layout_marginStart=\"7dp\"\n                app:layout_constraintStart_toEndOf=\"@id/cartItemImage\"\n                app:layout_constraintTop_toBottomOf=\"@id/quantityChangeCard\"\n                android:textStyle=\"italic\"\n                android:id=\"@+id/deliveryChargeTitle\"\n                android:text=\"Delivery Charge: ₹\"\n                />\n\n            <TextView\n                android:id=\"@+id/cartItemFirm\"\n                android:layout_width=\"wrap_content\"\n                android:layout_height=\"wrap_content\"\n                app:layout_constraintEnd_toEndOf=\"parent\"\n                android:layout_marginHorizontal=\"7dp\"\n                app:layout_constraintTop_toTopOf=\"@id/deliveryChargeCart\"\n                app:layout_constraintBottom_toBottomOf=\"@id/deliveryChargeCart\"\n                android:textColor=\"@color/fontColor\"\n                android:text=\"- Hello World Firm\"\n                android:textStyle=\"italic\"\n                android:textSize=\"10sp\"\n                />\n\n<!--            <TextView-->\n<!--                android:layout_width=\"wrap_content\"-->\n<!--                android:layout_height=\"wrap_content\"-->\n<!--                android:layout_margin=\"7dp\"-->\n<!--                android:text=\"Pin Code: 384246\"-->\n<!--                android:textColor=\"@color/fontColor\"-->\n<!--                android:textSize=\"12sp\"-->\n<!--                android:id=\"@+id/pinCode\"-->\n<!--                android:textStyle=\"bold|italic\"-->\n<!--                app:layout_constraintStart_toEndOf=\"@id/cartItemImage\"-->\n<!--                app:layout_constraintTop_toBottomOf=\"@id/deliveryChargeCart\" />-->\n\n            <Button\n                android:id=\"@+id/cartItemBuyBtn\"\n                android:layout_width=\"match_parent\"\n                android:layout_height=\"wrap_content\"\n                android:layout_marginHorizontal=\"7dp\"\n                android:layout_marginVertical=\"7dp\"\n                android:background=\"@drawable/rounder_border_general\"\n                android:backgroundTint=\"@color/secondary\"\n                android:text=\"Buy Now: ₹487\"\n                android:textAllCaps=\"false\"\n                android:textColor=\"@color/fontColor\"\n                android:textSize=\"18sp\"\n                app:layout_constraintBottom_toBottomOf=\"parent\"\n                app:layout_constraintTop_toBottomOf=\"@id/cartItemImage\" />\n\n\n        </androidx.constraintlayout.widget.ConstraintLayout>\n    </androidx.cardview.widget.CardView>\n</androidx.constraintlayout.widget.ConstraintLayout>"
  },
  {
    "path": "app/src/main/res/layout/single_currentweather.xml",
    "content": "<?xml version=\"1.0\" encoding=\"utf-8\"?>\n<androidx.constraintlayout.widget.ConstraintLayout xmlns:android=\"http://schemas.android.com/apk/res/android\"\n    xmlns:app=\"http://schemas.android.com/apk/res-auto\"\n    android:id=\"@+id/currentWeatherContainer\"\n    android:layout_width=\"match_parent\"\n    android:layout_height=\"wrap_content\"\n    android:layout_gravity=\"center\">\n\n    <androidx.cardview.widget.CardView\n        android:id=\"@+id/cardView\"\n        android:layout_width=\"250dp\"\n        android:layout_height=\"265dp\"\n        android:outlineSpotShadowColor=\"@color/fontColor\"\n        app:cardCornerRadius=\"10dp\"\n        app:cardElevation=\"20dp\"\n        app:layout_constraintBottom_toBottomOf=\"parent\"\n        app:layout_constraintEnd_toEndOf=\"parent\"\n        app:layout_constraintStart_toStartOf=\"parent\"\n        app:layout_constraintTop_toTopOf=\"parent\">\n\n        <androidx.constraintlayout.widget.ConstraintLayout\n            android:layout_width=\"match_parent\"\n            android:layout_height=\"match_parent\"\n            android:background=\"@color/secondary\"\n            android:paddingTop=\"20dp\">\n\n            <TextView\n                android:id=\"@+id/todayTitle\"\n                android:layout_width=\"wrap_content\"\n                android:layout_height=\"wrap_content\"\n                android:text=\"Today, 12:00 PM\"\n                android:textColor=\"@color/fontColor\"\n                android:textSize=\"20sp\"\n                app:layout_constraintEnd_toEndOf=\"parent\"\n                app:layout_constraintStart_toStartOf=\"parent\"\n                app:layout_constraintTop_toTopOf=\"parent\" />\n\n            <ImageView\n                android:id=\"@+id/icon\"\n                android:layout_width=\"75dp\"\n                android:layout_height=\"75dp\"\n                android:src=\"@drawable/ic_launcher_foreground\"\n                app:layout_constraintEnd_toEndOf=\"parent\"\n                app:layout_constraintStart_toStartOf=\"parent\"\n                app:layout_constraintTop_toBottomOf=\"@id/todayTitle\" />\n\n            <TextView\n                android:id=\"@+id/temp\"\n                android:layout_width=\"wrap_content\"\n                android:layout_height=\"wrap_content\"\n                android:text=\"26*C\"\n                android:textColor=\"@color/fontColor\"\n                android:textSize=\"30sp\"\n                android:textStyle=\"bold\"\n                app:layout_constraintEnd_toEndOf=\"parent\"\n                app:layout_constraintStart_toStartOf=\"parent\"\n                app:layout_constraintTop_toBottomOf=\"@id/icon\" />\n\n            <TextView\n                android:id=\"@+id/desc\"\n                android:layout_width=\"wrap_content\"\n                android:layout_height=\"wrap_content\"\n                android:layout_marginVertical=\"5dp\"\n                android:text=\"Cloudy Sky\"\n                android:textColor=\"@color/fontColor\"\n                android:textSize=\"20sp\"\n\n                app:layout_constraintBottom_toTopOf=\"@id/icon2\"\n                app:layout_constraintEnd_toEndOf=\"parent\"\n                app:layout_constraintStart_toStartOf=\"parent\"\n                app:layout_constraintTop_toBottomOf=\"@id/temp\" />\n\n\n            <ImageView\n                android:id=\"@+id/icon2\"\n                android:layout_width=\"20dp\"\n                android:layout_height=\"20dp\"\n                android:layout_marginVertical=\"7dp\"\n                android:src=\"@drawable/ic_low_temp\"\n                app:layout_constraintBottom_toTopOf=\"@id/minTemp\"\n                app:layout_constraintEnd_toStartOf=\"@id/icon3\"\n                app:layout_constraintStart_toStartOf=\"parent\"\n                app:layout_constraintTop_toBottomOf=\"@id/desc\" />\n\n            <TextView\n                android:id=\"@+id/minTemp\"\n                android:layout_width=\"wrap_content\"\n                android:layout_height=\"wrap_content\"\n                android:layout_marginVertical=\"2dp\"\n                android:text=\"18*C\"\n                android:textColor=\"@color/fontColor\"\n                app:layout_constraintEnd_toEndOf=\"@id/icon2\"\n                app:layout_constraintStart_toStartOf=\"@id/icon2\"\n                app:layout_constraintTop_toBottomOf=\"@id/icon2\" />\n\n\n            <ImageView\n                android:id=\"@+id/icon3\"\n                android:layout_width=\"20dp\"\n                android:layout_height=\"20dp\"\n                android:src=\"@drawable/ic_high_temp\"\n                app:layout_constraintBottom_toBottomOf=\"@id/icon2\"\n                app:layout_constraintBottom_toTopOf=\"@id/maxTemp\"\n                app:layout_constraintEnd_toStartOf=\"@id/icon4\"\n                app:layout_constraintStart_toEndOf=\"@id/icon2\"\n                app:layout_constraintTop_toTopOf=\"@id/icon2\" />\n\n            <TextView\n                android:id=\"@+id/maxTemp\"\n                android:layout_width=\"wrap_content\"\n                android:layout_height=\"wrap_content\"\n                android:layout_marginVertical=\"2dp\"\n                android:text=\"34*C\"\n                android:textColor=\"@color/fontColor\"\n                app:layout_constraintEnd_toEndOf=\"@id/icon3\"\n                app:layout_constraintStart_toStartOf=\"@id/icon3\"\n                app:layout_constraintTop_toBottomOf=\"@id/icon3\" />\n\n            <ImageView\n                android:id=\"@+id/icon4\"\n                android:layout_width=\"20dp\"\n                android:layout_height=\"20dp\"\n                android:src=\"@drawable/ic_humidity\"\n                app:layout_constraintBottom_toBottomOf=\"@id/icon2\"\n                app:layout_constraintEnd_toEndOf=\"parent\"\n                app:layout_constraintStart_toEndOf=\"@id/icon3\"\n                app:layout_constraintTop_toTopOf=\"@id/icon2\" />\n\n            <TextView\n                android:id=\"@+id/humidity\"\n                android:layout_width=\"wrap_content\"\n                android:layout_height=\"wrap_content\"\n                android:layout_marginVertical=\"2dp\"\n                android:text=\"70%\"\n                android:textColor=\"@color/fontColor\"\n                app:layout_constraintEnd_toEndOf=\"@id/icon4\"\n                app:layout_constraintStart_toStartOf=\"@id/icon4\"\n                app:layout_constraintTop_toBottomOf=\"@id/icon4\" />\n\n        </androidx.constraintlayout.widget.ConstraintLayout>\n    </androidx.cardview.widget.CardView>\n</androidx.constraintlayout.widget.ConstraintLayout>"
  },
  {
    "path": "app/src/main/res/layout/single_dashboard_ecomm_item.xml",
    "content": "<?xml version=\"1.0\" encoding=\"utf-8\"?>\n<androidx.constraintlayout.widget.ConstraintLayout xmlns:android=\"http://schemas.android.com/apk/res/android\"\n    android:layout_width=\"wrap_content\"\n    android:layout_marginVertical=\"7dp\"\n    android:layout_height=\"wrap_content\"\n    xmlns:app=\"http://schemas.android.com/apk/res-auto\">\n\n\n    <androidx.cardview.widget.CardView\n        android:id=\"@+id/ecomm1\"\n        android:layout_width=\"175dp\"\n        android:layout_height=\"175dp\"\n        app:layout_constraintBottom_toBottomOf=\"parent\"\n        app:layout_constraintEnd_toEndOf=\"parent\"\n        app:layout_constraintStart_toStartOf=\"parent\"\n        app:layout_constraintTop_toTopOf=\"parent\">\n\n        <androidx.constraintlayout.widget.ConstraintLayout\n            android:layout_width=\"match_parent\"\n            android:background=\"@drawable/edit_back\"\n            android:layout_height=\"match_parent\">\n\n            <ImageView\n                android:id=\"@+id/itemImage\"\n                android:layout_width=\"0dp\"\n                android:scaleType=\"fitCenter\"\n                android:padding=\"2dp\"\n                android:layout_height=\"120dp\"\n                app:layout_constraintEnd_toEndOf=\"parent\"\n\n                app:layout_constraintStart_toStartOf=\"parent\"\n                app:layout_constraintTop_toTopOf=\"parent\" />\n\n            <LinearLayout\n                android:layout_width=\"match_parent\"\n                android:orientation=\"vertical\"\n                app:layout_constraintEnd_toEndOf=\"parent\"\n                android:background=\"@color/secondary\"\n                app:layout_constraintStart_toStartOf=\"parent\"\n                app:layout_constraintBottom_toBottomOf=\"parent\"\n                app:layout_constraintTop_toBottomOf=\"@id/itemImage\"\n                android:layout_height=\"wrap_content\">\n            <TextView\n                android:id=\"@+id/itemTitle\"\n                android:layout_width=\"wrap_content\"\n                android:layout_height=\"wrap_content\"\n                android:fontFamily=\"@font/lato\"\n                android:maxLines=\"1\"\n                android:paddingHorizontal=\"10dp\"\n                android:layout_marginTop=\"7dp\"\n                android:text=\"TVC Tractor\"\n                android:textColor=\"@color/fontColor\"\n                android:lineSpacingExtra=\"5dp\"\n                android:textSize=\"17sp\"\n                android:textStyle=\"bold\"\n                 />\n\n            <TextView\n                android:layout_width=\"wrap_content\"\n                android:layout_height=\"wrap_content\"\n                android:paddingHorizontal=\"10dp\"\n                android:textSize=\"17sp\"\n                android:id=\"@+id/itemPrice\"\n                android:layout_marginBottom=\"7dp\"\n                android:text=\"$994\"\n                android:textStyle=\"bold\"\n                android:textColor=\"@color/colorThird\"\n                />\n            </LinearLayout>\n\n        </androidx.constraintlayout.widget.ConstraintLayout>\n\n    </androidx.cardview.widget.CardView>\n\n</androidx.constraintlayout.widget.ConstraintLayout>"
  },
  {
    "path": "app/src/main/res/layout/single_ecomm_item.xml",
    "content": "<?xml version=\"1.0\" encoding=\"utf-8\"?>\n<androidx.constraintlayout.widget.ConstraintLayout\n\n\n    xmlns:android=\"http://schemas.android.com/apk/res/android\"\n    xmlns:app=\"http://schemas.android.com/apk/res-auto\"\n    android:layout_width=\"match_parent\"\n    android:layout_height=\"wrap_content\"\n\n    >\n\n    <androidx.cardview.widget.CardView\n        android:id=\"@+id/ecommCard\"\n        android:layout_width=\"match_parent\"\n        android:layout_height=\"wrap_content\"\n        android:layout_marginHorizontal=\"7dp\"\n        android:layout_marginVertical=\"7dp\"\n        android:background=\"@drawable/ecommborder\"\n        app:cardElevation=\"7dp\"\n        app:layout_constraintBottom_toBottomOf=\"parent\"\n        app:layout_constraintStart_toStartOf=\"parent\"\n        app:layout_constraintTop_toTopOf=\"parent\">\n\n        <androidx.constraintlayout.widget.ConstraintLayout\n            android:layout_width=\"match_parent\"\n\n            android:layout_height=\"wrap_content\">\n\n            <ImageView\n\n                android:id=\"@+id/ecommImage\"\n                android:layout_width=\"120dp\"\n                android:layout_height=\"120dp\"\n                android:padding=\"5dp\"\n                android:src=\"@color/colorPrimary\"\n                app:layout_constraintBottom_toBottomOf=\"parent\"\n                app:layout_constraintStart_toStartOf=\"parent\"\n                app:layout_constraintTop_toTopOf=\"parent\" />\n\n            <TextView\n                android:id=\"@+id/ecommtitle\"\n                android:layout_width=\"0dp\"\n                android:layout_height=\"wrap_content\"\n                android:layout_marginHorizontal=\"7dp\"\n                android:layout_marginTop=\"5dp\"\n                android:justificationMode=\"inter_word\"\n                android:text=\"Greatindos Premium Quality GRADE A NPK, Hydroponic Fertilizer\"\n                android:textColor=\"@color/fontColor\"\n                android:textStyle=\"bold\"\n                app:layout_constraintBottom_toTopOf=\"@id/ecommPrice\"\n                app:layout_constraintEnd_toEndOf=\"parent\"\n                app:layout_constraintStart_toEndOf=\"@id/ecommImage\"\n                app:layout_constraintTop_toTopOf=\"parent\" />\n\n            <TextView\n\n                android:id=\"@+id/ecommPrice\"\n                android:layout_width=\"wrap_content\"\n                android:layout_height=\"wrap_content\"\n                android:layout_marginLeft=\"10dp\"\n                android:layout_marginTop=\"5dp\"\n                android:text=\"$50\"\n                android:textColor=\"@color/colorPrimary\"\n                android:textSize=\"24dp\"\n                android:textStyle=\"bold\"\n                app:layout_constraintBottom_toTopOf=\"@id/ecommRating\"\n                app:layout_constraintStart_toEndOf=\"@id/ecommImage\"\n                app:layout_constraintTop_toBottomOf=\"@id/ecommtitle\" />\n\n            <RatingBar\n                android:id=\"@+id/ecommRating\"\n                style=\"@style/Widget.AppCompat.RatingBar.Small\"\n                android:layout_width=\"wrap_content\"\n                android:layout_height=\"wrap_content\"\n                android:layout_marginLeft=\"10dp\"\n                android:layout_marginTop=\"5dp\"\n                android:rating=\"3\"\n                android:theme=\"@style/RatingBar\"\n                app:layout_constraintBottom_toTopOf=\"@id/ecommretailer\"\n                app:layout_constraintStart_toEndOf=\"@id/ecommImage\"\n                app:layout_constraintTop_toBottomOf=\"@id/ecommPrice\" />\n\n            <TextView\n                android:id=\"@+id/ecommretailer\"\n                android:layout_width=\"wrap_content\"\n                android:layout_height=\"wrap_content\"\n                android:layout_marginLeft=\"10dp\"\n                android:layout_marginTop=\"5dp\"\n                android:layout_marginBottom=\"3.5dp\"\n                android:text=\"india pvt ltd\"\n                android:textColor=\"@color/fontColor\"\n                android:textSize=\"10sp\"\n                android:textStyle=\"italic\"\n                app:layout_constraintBottom_toBottomOf=\"parent\"\n                app:layout_constraintStart_toEndOf=\"@id/ecommImage\"\n                app:layout_constraintTop_toBottomOf=\"@id/ecommRating\" />\n\n            <TextView\n                android:id=\"@+id/ecommItemAvailability\"\n                android:layout_width=\"wrap_content\"\n                android:layout_height=\"wrap_content\"\n                android:layout_margin=\"7dp\"\n                android:text=\"In Stock\"\n                android:textColor=\"@color/fontColor\"\n                android:textStyle=\"bold\"\n                app:layout_constraintBottom_toBottomOf=\"parent\"\n                app:layout_constraintEnd_toEndOf=\"parent\" />\n        </androidx.constraintlayout.widget.ConstraintLayout>\n    </androidx.cardview.widget.CardView>\n</androidx.constraintlayout.widget.ConstraintLayout>\n\n\n\n"
  },
  {
    "path": "app/src/main/res/layout/single_myorder_item.xml",
    "content": "<?xml version=\"1.0\" encoding=\"utf-8\"?>\n<androidx.constraintlayout.widget.ConstraintLayout xmlns:android=\"http://schemas.android.com/apk/res/android\"\n    xmlns:app=\"http://schemas.android.com/apk/res-auto\"\n    android:layout_width=\"match_parent\"\n    android:layout_height=\"wrap_content\">\n\n    <androidx.cardview.widget.CardView\n        android:id=\"@+id/cartCard2\"\n        android:layout_width=\"match_parent\"\n        android:layout_height=\"wrap_content\"\n        android:layout_marginHorizontal=\"7dp\"\n        android:layout_marginVertical=\"14dp\"\n        app:layout_constraintStart_toStartOf=\"parent\"\n        app:layout_constraintTop_toTopOf=\"parent\">\n\n        <androidx.constraintlayout.widget.ConstraintLayout\n            android:layout_width=\"match_parent\"\n\n            android:layout_height=\"wrap_content\"\n            android:background=\"@drawable/rounder_border_general\">\n\n            <ImageView\n                android:id=\"@+id/myOderItemImage\"\n                android:layout_width=\"130dp\"\n                android:layout_height=\"0dp\"\n                android:layout_marginHorizontal=\"7dp\"\n                android:background=\"@drawable/round_borderless_general\"\n                android:src=\"@color/secondary\"\n                app:layout_constraintBottom_toBottomOf=\"@id/myOrderDeliveryStatus\"\n                app:layout_constraintStart_toStartOf=\"parent\"\n                app:layout_constraintTop_toTopOf=\"@id/myOrderItemName\" />\n\n            <TextView\n                android:id=\"@+id/myOrderItemName\"\n                android:layout_width=\"0dp\"\n                android:layout_height=\"wrap_content\"\n                android:layout_marginHorizontal=\"7dp\"\n                android:layout_marginVertical=\"7dp\"\n                android:text=\"Loading...\"\n                android:textColor=\"@color/fontColor\"\n                android:textSize=\"14sp\"\n                android:textStyle=\"bold\"\n                app:layout_constraintEnd_toEndOf=\"parent\"\n                app:layout_constraintStart_toEndOf=\"@id/myOderItemImage\"\n                app:layout_constraintTop_toTopOf=\"parent\"\n\n                />\n\n            <TextView\n                android:id=\"@+id/myOrderItemPrice\"\n                android:layout_width=\"wrap_content\"\n                android:layout_height=\"wrap_content\"\n                android:layout_margin=\"7dp\"\n                android:text=\"Loading...\"\n                android:textColor=\"@color/colorPrimary\"\n                android:textSize=\"21sp\"\n                android:textStyle=\"bold\"\n                app:layout_constraintStart_toEndOf=\"@id/myOderItemImage\"\n                app:layout_constraintTop_toBottomOf=\"@id/myOrderItemName\"\n\n                />\n\n            <TextView\n                android:id=\"@+id/deliverChargeTitle\"\n                android:layout_width=\"wrap_content\"\n                android:layout_height=\"wrap_content\"\n                android:layout_margin=\"7dp\"\n                android:text=\"Delivery Charge: ₹\"\n                android:textColor=\"@color/fontColor\"\n                android:textSize=\"10sp\"\n                android:textStyle=\"italic\"\n                app:layout_constraintStart_toEndOf=\"@id/myOderItemImage\"\n                app:layout_constraintTop_toBottomOf=\"@id/myOrderItemPrice\" />\n\n            <TextView\n                android:id=\"@+id/myOderDeliveryCharge\"\n                android:layout_width=\"wrap_content\"\n                android:layout_height=\"wrap_content\"\n                android:layout_marginVertical=\"7dp\"\n                android:text=\"\"\n                android:textColor=\"@color/fontColor\"\n                android:textSize=\"10sp\"\n                android:textStyle=\"italic\"\n                app:layout_constraintStart_toEndOf=\"@id/deliverChargeTitle\"\n                app:layout_constraintTop_toBottomOf=\"@id/myOrderItemPrice\" />\n\n            <TextView\n                android:layout_width=\"wrap_content\"\n                android:layout_height=\"wrap_content\"\n                android:id=\"@+id/includedTitle\"\n                app:layout_constraintStart_toEndOf=\"@id/myOderDeliveryCharge\"\n                app:layout_constraintTop_toTopOf=\"@id/myOderDeliveryCharge\"\n                android:textStyle=\"italic\"\n                android:text=\"(Included)\"\n                android:textSize=\"10sp\"\n                android:textColor=\"@color/fontColor\"\n                android:layout_marginHorizontal=\"7dp\"\n                />\n\n            <TextView\n                android:layout_width=\"wrap_content\"\n                android:layout_height=\"wrap_content\"\n                android:layout_marginHorizontal=\"7dp\"\n                android:text=\"Loading...\"\n                android:textColor=\"@color/fontColor\"\n                android:textSize=\"10sp\"\n                android:id=\"@+id/myOrderTimeStamp\"\n                android:textStyle=\"italic\"\n                app:layout_constraintBottom_toBottomOf=\"@id/myOderDeliveryCharge\"\n                app:layout_constraintEnd_toEndOf=\"parent\"\n                app:layout_constraintTop_toTopOf=\"@id/myOderDeliveryCharge\" />\n\n            <TextView\n                android:id=\"@+id/myOrderPinCode\"\n                android:layout_width=\"wrap_content\"\n                android:layout_height=\"wrap_content\"\n                android:layout_margin=\"7dp\"\n                android:text=\"Loading...\"\n                android:textColor=\"@color/fontColor\"\n                android:textSize=\"12sp\"\n                android:textStyle=\"bold\"\n                app:layout_constraintStart_toEndOf=\"@id/myOderItemImage\"\n                app:layout_constraintTop_toBottomOf=\"@id/myOderDeliveryCharge\" />\n\n            <TextView\n                android:id=\"@+id/myOrderDeliveryStatus\"\n                android:layout_width=\"0dp\"\n                android:layout_height=\"wrap_content\"\n                android:lineSpacingExtra=\"3.5dp\"\n                android:layout_margin=\"7dp\"\n                android:text=\"Loading...\"\n                android:textColor=\"@color/fontColor\"\n                app:layout_constraintEnd_toStartOf=\"@id/myOrderPurchaseAgain\"\n                android:textSize=\"12sp\"\n                android:textStyle=\"bold\"\n                app:layout_constraintBottom_toBottomOf=\"parent\"\n                app:layout_constraintStart_toEndOf=\"@id/myOderItemImage\"\n                app:layout_constraintTop_toBottomOf=\"@id/myOrderPinCode\" />\n\n            <Button\n                android:layout_width=\"wrap_content\"\n                android:layout_height=\"35dp\"\n                android:layout_marginHorizontal=\"7dp\"\n                android:background=\"@drawable/all_buttons\"\n                android:backgroundTint=\"@color/colorThird\"\n                android:paddingHorizontal=\"7dp\"\n                android:id=\"@+id/myOrderPurchaseAgain\"\n                android:text=\"Purchase Again\"\n                android:textColor=\"#fff\"\n                android:textSize=\"10sp\"\n                app:layout_constraintBottom_toBottomOf=\"@id/myOrderDeliveryStatus\"\n                app:layout_constraintEnd_toEndOf=\"parent\"\n                app:layout_constraintTop_toTopOf=\"@id/myOrderPinCode\" />\n\n        </androidx.constraintlayout.widget.ConstraintLayout>\n    </androidx.cardview.widget.CardView>\n\n</androidx.constraintlayout.widget.ConstraintLayout>"
  },
  {
    "path": "app/src/main/res/layout/single_normal_attributes_ecomm.xml",
    "content": "<?xml version=\"1.0\" encoding=\"utf-8\"?>\n<androidx.constraintlayout.widget.ConstraintLayout xmlns:android=\"http://schemas.android.com/apk/res/android\"\n    android:layout_width=\"match_parent\"\n    android:layout_height=\"wrap_content\"\n    android:layout_marginVertical=\"7dp\"\n    xmlns:app=\"http://schemas.android.com/apk/res-auto\">\n    <TextView\n        android:id=\"@+id/normalAttributeTitle\"\n        app:layout_constraintStart_toStartOf=\"parent\"\n        android:textStyle=\"bold\"\n        android:textSize=\"14sp\"\n        android:textColor=\"@color/fontColor\"\n        app:layout_constraintTop_toTopOf=\"parent\"\n        android:layout_width=\"wrap_content\"\n        android:layout_height=\"wrap_content\"\n        />\n\n    <TextView\n        android:layout_width=\"wrap_content\"\n        android:layout_height=\"wrap_content\"\n        android:id=\"@+id/normalAttributeValue\"\n        app:layout_constraintStart_toEndOf=\"@id/normalAttributeTitle\"\n        android:textSize=\"14sp\"\n        android:textColor=\"@color/fontColor\"\n        app:layout_constraintTop_toTopOf=\"@id/normalAttributeTitle\"\n        android:layout_marginHorizontal=\"7dp\"\n\n        />\n\n</androidx.constraintlayout.widget.ConstraintLayout>"
  },
  {
    "path": "app/src/main/res/layout/single_selection_attributes_ecomm.xml",
    "content": "<?xml version=\"1.0\" encoding=\"utf-8\"?>\n<androidx.constraintlayout.widget.ConstraintLayout xmlns:android=\"http://schemas.android.com/apk/res/android\"\n    android:layout_width=\"match_parent\"\n    android:layout_height=\"wrap_content\"\n    android:layout_marginVertical=\"7dp\"\n\n    xmlns:app=\"http://schemas.android.com/apk/res-auto\">\n\n    <TextView\n        android:id=\"@+id/attributeTitle\"\n        app:layout_constraintTop_toTopOf=\"parent\"\n        android:text=\"Size: \"\n        app:layout_constraintStart_toStartOf=\"parent\"\n        android:layout_width=\"wrap_content\"\n        android:textStyle=\"bold\"\n        android:textSize=\"14sp\"\n        android:textColor=\"@color/fontColor\"\n        android:layout_height=\"wrap_content\"\n        />\n\n    <LinearLayout\n\n        android:layout_width=\"0dp\"\n        app:layout_constraintStart_toEndOf=\"@id/attributeTitle\"\n        android:layout_marginHorizontal=\"21dp\"\n        android:id=\"@+id/sizeLinear\"\n        android:orientation=\"horizontal\"\n        app:layout_constraintTop_toTopOf=\"@id/attributeTitle\"\n        android:layout_height=\"wrap_content\"\n        >\n        <androidx.cardview.widget.CardView\n            android:layout_width=\"75dp\"\n            android:id=\"@+id/cardSize1\"\n            android:layout_height=\"75dp\"\n            app:cardCornerRadius=\"10dp\"\n            android:backgroundTint=\"@color/colorPrimary\"\n\n            >\n            <LinearLayout\n                android:layout_width=\"wrap_content\"\n\n                android:layout_gravity=\"center\"\n                android:orientation=\"vertical\"\n                android:gravity=\"center\"\n                android:layout_height=\"wrap_content\">\n                <TextView\n                    android:id=\"@+id/attribute1\"\n                    android:layout_width=\"wrap_content\"\n                    android:textColor=\"#fff\"\n                    android:textStyle=\"bold\"\n                    android:layout_height=\"wrap_content\"\n                    android:padding=\"7dp\"\n\n                    android:text=\"3.5 Kg\"\n\n                    />\n                <TextView\n                    android:id=\"@+id/attribute1Price\"\n                    android:layout_width=\"wrap_content\"\n                    android:layout_height=\"wrap_content\"\n                    android:text=\"$1672\"\n\n                    android:textColor=\"#fff\"\n                    android:textStyle=\"bold\"\n\n                    />\n            </LinearLayout>\n\n        </androidx.cardview.widget.CardView>\n        <androidx.cardview.widget.CardView\n            android:layout_width=\"75dp\"\n            android:id=\"@+id/cardSize2\"\n            android:layout_height=\"75dp\"\n\n            app:cardCornerRadius=\"10dp\"\n            android:backgroundTint=\"@color/secondary\"\n            android:layout_marginHorizontal=\"7dp\"\n            >\n            <LinearLayout\n                android:layout_width=\"wrap_content\"\n\n                android:layout_gravity=\"center\"\n                android:orientation=\"vertical\"\n                android:gravity=\"center\"\n                android:layout_height=\"wrap_content\">\n                <TextView\n                    android:layout_width=\"wrap_content\"\n                    android:id=\"@+id/attribute2\"\n                    android:textColor=\"@color/fontColor\"\n                    android:layout_height=\"wrap_content\"\n                    android:padding=\"7dp\"\n\n                    android:text=\"3.5 Kg\"\n\n                    />\n                <TextView\n                    android:layout_width=\"wrap_content\"\n                    android:layout_height=\"wrap_content\"\n                    android:text=\"$1672\"\n                    android:textColor=\"@color/fontColor\"\n                    android:id=\"@+id/attribute2Price\"\n                    />\n            </LinearLayout>\n\n        </androidx.cardview.widget.CardView>\n        <androidx.cardview.widget.CardView\n            android:layout_width=\"75dp\"\n            android:id=\"@+id/cardSize3\"\n            android:layout_height=\"75dp\"\n\n            app:cardCornerRadius=\"10dp\"\n            android:backgroundTint=\"@color/secondary\"\n            android:layout_marginHorizontal=\"7dp\"\n            >\n            <LinearLayout\n                android:layout_width=\"wrap_content\"\n\n                android:layout_gravity=\"center\"\n                android:orientation=\"vertical\"\n                android:gravity=\"center\"\n                android:layout_height=\"wrap_content\">\n                <TextView\n                    android:layout_width=\"wrap_content\"\n                    android:id=\"@+id/attribute3\"\n                    android:textColor=\"@color/fontColor\"\n                    android:layout_height=\"wrap_content\"\n                    android:padding=\"7dp\"\n\n                    android:text=\"3.5 Kg\"\n\n                    />\n                <TextView\n                    android:layout_width=\"wrap_content\"\n                    android:layout_height=\"wrap_content\"\n                    android:text=\"$1672\"\n                    android:textColor=\"@color/fontColor\"\n                    android:id=\"@+id/attribute3Price\"\n                    />\n            </LinearLayout>\n\n        </androidx.cardview.widget.CardView>\n    </LinearLayout>\n\n\n</androidx.constraintlayout.widget.ConstraintLayout>"
  },
  {
    "path": "app/src/main/res/layout/single_slider_screen.xml",
    "content": "<?xml version=\"1.0\" encoding=\"utf-8\"?>\n<androidx.constraintlayout.widget.ConstraintLayout xmlns:android=\"http://schemas.android.com/apk/res/android\"\n    android:layout_width=\"match_parent\"\n    android:layout_height=\"match_parent\"\n    xmlns:app=\"http://schemas.android.com/apk/res-auto\">\n\n    <ImageView\n        android:id=\"@+id/imageSlider\"\n        android:layout_width=\"match_parent\"\n        android:layout_height=\"0dp\"\n        android:scaleType=\"fitXY\"\n        app:layout_constraintEnd_toEndOf=\"parent\"\n        app:layout_constraintStart_toStartOf=\"parent\"\n        app:layout_constraintTop_toTopOf=\"parent\" />\n\n    <TextView\n        android:id=\"@+id/sliderTitle\"\n        android:layout_width=\"wrap_content\"\n        android:layout_height=\"wrap_content\"\n        android:layout_marginTop=\"300dp\"\n        android:fontFamily=\"@font/lato_bold\"\n        android:gravity=\"center\"\n        android:text=\"Welcome to the Farming App\"\n        android:textColor=\"@color/colorThird\"\n        android:textSize=\"28sp\"\n        android:textStyle=\"bold\"\n        app:layout_constraintEnd_toEndOf=\"parent\"\n        app:layout_constraintStart_toStartOf=\"parent\"\n        app:layout_constraintTop_toTopOf=\"parent\" />\n\n    <TextView\n        android:id=\"@+id/sliderDescription\"\n        android:layout_width=\"match_parent\"\n        android:layout_height=\"wrap_content\"\n        android:layout_marginHorizontal=\"21dp\"\n        android:layout_marginVertical=\"21dp\"\n        android:fontFamily=\"@font/lato\"\n        android:gravity=\"center\"\n        android:justificationMode=\"inter_word\"\n        android:lineSpacingExtra=\"7dp\"\n        android:text=\"This is some description about the applicationasdasdasdasd.\"\n        android:textColor=\"#fff\"\n        android:textSize=\"18sp\"\n        app:layout_constraintEnd_toEndOf=\"parent\"\n        app:layout_constraintStart_toStartOf=\"parent\"\n        app:layout_constraintTop_toBottomOf=\"@id/sliderTitle\" />\n\n</androidx.constraintlayout.widget.ConstraintLayout>"
  },
  {
    "path": "app/src/main/res/layout/single_weather.xml",
    "content": "<?xml version=\"1.0\" encoding=\"utf-8\"?>\n<androidx.constraintlayout.widget.ConstraintLayout xmlns:android=\"http://schemas.android.com/apk/res/android\"\n    xmlns:app=\"http://schemas.android.com/apk/res-auto\"\n    android:layout_width=\"match_parent\"\n    android:layout_height=\"60dp\"\n    android:paddingVertical=\"2dp\"\n    android:paddingHorizontal=\"7dp\"\n    >\n\n    <androidx.constraintlayout.widget.Guideline\n        android:layout_width=\"match_parent\"\n        android:layout_height=\"match_parent\"\n        android:orientation=\"vertical\"\n        android:id=\"@+id/guide1_weather\"\n        app:layout_constraintGuide_percent=\"0.27\"\n         />\n\n    <androidx.constraintlayout.widget.Guideline\n        android:id=\"@+id/guide2_weather\"\n        android:layout_width=\"match_parent\"\n        android:layout_height=\"match_parent\"\n        android:orientation=\"vertical\"\n        app:layout_constraintGuide_percent=\"0.45\" />\n\n    <androidx.constraintlayout.widget.Guideline\n        android:layout_width=\"match_parent\"\n        android:layout_height=\"match_parent\"\n        android:orientation=\"vertical\"\n        android:id=\"@+id/guide3_weather\"\n        app:layout_constraintGuide_percent=\"0.6\"\n         />\n    <!--    <TextView-->\n    <!--        android:id=\"@+id/weather_date\"-->\n    <!--        android:layout_marginLeft=\"5dp\"-->\n    <!--        android:layout_marginTop=\"5dp\"-->\n    <!--        app:layout_constraintTop_toTopOf=\"parent\"-->\n    <!--        android:layout_width=\"wrap_content\"-->\n    <!--        android:layout_height=\"wrap_content\"-->\n    <!--        android:text=\"18-02-2001\"-->\n    <!--        android:textColor=\"@color/white\"-->\n    <!--        android:textSize=\"20sp\"-->\n    <!--        app:layout_constraintStart_toStartOf=\"parent\" />-->\n\n    <!--    <ImageView-->\n    <!--        android:id=\"@+id/weather_logo\"-->\n    <!--        android:layout_width=\"70dp\"-->\n    <!--        android:layout_height=\"70dp\"-->\n    <!--        android:layout_marginLeft=\"5dp\"-->\n    <!--        android:src=\"@drawable/dash_home\"-->\n    <!--        app:layout_constraintBottom_toBottomOf=\"parent\"-->\n    <!--        app:layout_constraintStart_toStartOf=\"parent\"-->\n    <!--        app:layout_constraintTop_toBottomOf=\"@+id/weather_date\" />-->\n\n    <!--    <TextView-->\n    <!--        android:id=\"@+id/weather_description\"-->\n    <!--        android:layout_width=\"wrap_content\"-->\n    <!--        android:layout_height=\"wrap_content\"-->\n    <!--        android:text=\"cloudy weather hai\"-->\n    <!--        app:layout_constraintBottom_toBottomOf=\"parent\"-->\n    <!--        app:layout_constraintEnd_toEndOf=\"parent\"-->\n    <!--        app:layout_constraintStart_toEndOf=\"@+id/weather_logo\"-->\n    <!--        app:layout_constraintTop_toTopOf=\"parent\"-->\n    <!--        android:textColor=\"@color/white\"-->\n    <!--        android:textSize=\"20sp\"/>-->\n\n    <!--    <TextView-->\n\n    <!--        android:id=\"@+id/weather_main\"-->\n    <!--        android:layout_width=\"wrap_content\"-->\n    <!--        android:layout_height=\"wrap_content\"-->\n    <!--        android:text=\"cloudy\"-->\n    <!--        android:textColor=\"@color/white\"-->\n    <!--        android:textSize=\"20sp\"-->\n    <!--        android:layout_marginBottom=\"10dp\"-->\n\n    <!--        app:layout_constraintBottom_toBottomOf=\"parent\"-->\n    <!--        app:layout_constraintEnd_toEndOf=\"@+id/weather_description\"-->\n    <!--        app:layout_constraintStart_toStartOf=\"@+id/weather_description\" />-->\n\n\n    <TextView\n        android:id=\"@+id/weatherDate\"\n        android:layout_width=\"wrap_content\"\n        android:layout_height=\"wrap_content\"\n        android:text=\"01/01/2021\"\n        android:textColor=\"@color/fontColor\"\n        android:textSize=\"17sp\"\n\n        app:layout_constraintBottom_toBottomOf=\"parent\"\n        app:layout_constraintEnd_toStartOf=\"@id/guide1_weather\"\n        app:layout_constraintStart_toStartOf=\"parent\"\n        app:layout_constraintTop_toTopOf=\"parent\" />\n\n\n\n    <ImageView\n        android:id=\"@+id/weatherIcon\"\n        android:layout_width=\"75dp\"\n        android:layout_height=\"match_parent\"\n        android:src=\"@drawable/ic_launcher_foreground\"\n        app:layout_constraintBottom_toBottomOf=\"parent\"\n\n        app:layout_constraintEnd_toStartOf=\"@id/guide2_weather\"\n        app:layout_constraintStart_toEndOf=\"@id/guide1_weather\"\n        app:layout_constraintTop_toTopOf=\"parent\" />\n\n    <TextView\n        android:id=\"@+id/weatherTemperature\"\n        android:layout_width=\"wrap_content\"\n        android:layout_height=\"wrap_content\"\n        android:text=\"26* C\"\n        android:textColor=\"@color/colorPrimary\"\n        android:textSize=\"18sp\"\n        android:textStyle=\"bold\"\n        app:layout_constraintBottom_toBottomOf=\"parent\"\n        app:layout_constraintEnd_toStartOf=\"@id/guide3_weather\"\n        app:layout_constraintStart_toEndOf=\"@id/guide2_weather\"\n        app:layout_constraintTop_toTopOf=\"parent\" />\n\n    <TextView\n        android:id=\"@+id/weatherDescription\"\n        android:layout_width=\"wrap_content\"\n        android:layout_height=\"wrap_content\"\n        android:inputType=\"textCapSentences\"\n        android:text=\"Cloudy Sky\"\n        android:layout_marginHorizontal=\"3dp\"\n        android:textColor=\"@color/fontColor\"\n        android:textSize=\"18sp\"\n\n        app:layout_constraintBottom_toBottomOf=\"parent\"\n        app:layout_constraintEnd_toEndOf=\"parent\"\n        app:layout_constraintStart_toEndOf=\"@id/guide3_weather\"\n        app:layout_constraintTop_toTopOf=\"parent\" />\n\n    <View\n        android:layout_width=\"match_parent\"\n        android:layout_height=\"0.3dp\"\n        android:layout_marginHorizontal=\"7dp\"\n        android:background=\"@color/fontColor\"\n        app:layout_constraintBottom_toBottomOf=\"parent\"\n        app:layout_constraintStart_toStartOf=\"parent\" />\n</androidx.constraintlayout.widget.ConstraintLayout>"
  },
  {
    "path": "app/src/main/res/layout/single_yojna_list.xml",
    "content": "<?xml version=\"1.0\" encoding=\"utf-8\"?>\n<androidx.constraintlayout.widget.ConstraintLayout xmlns:android=\"http://schemas.android.com/apk/res/android\"\n    xmlns:app=\"http://schemas.android.com/apk/res-auto\"\n    android:layout_width=\"match_parent\"\n    android:layout_height=\"wrap_content\"\n    android:layout_margin=\"7dp\">\n\n    <androidx.cardview.widget.CardView\n        android:id=\"@+id/singlelistyojnacard\"\n        android:layout_width=\"match_parent\"\n        android:layout_height=\"match_parent\"\n        android:layout_margin=\"3dp\"\n        app:cardElevation=\"5dp\"\n        app:layout_constraintBottom_toBottomOf=\"parent\"\n        app:layout_constraintEnd_toEndOf=\"parent\"\n        app:layout_constraintStart_toStartOf=\"parent\"\n        app:layout_constraintTop_toTopOf=\"parent\">\n\n        <androidx.constraintlayout.widget.ConstraintLayout\n            android:layout_width=\"match_parent\"\n            android:layout_height=\"match_parent\"\n            android:background=\"@drawable/edit_back\">\n\n            <TextView\n                android:id=\"@+id/yojnaTitleYojnaList\"\n                android:layout_width=\"0dp\"\n                android:layout_height=\"wrap_content\"\n                android:layout_marginHorizontal=\"14dp\"\n                android:lineSpacingExtra=\"3dp\"\n                android:text=\"National Mission For Sustainable Agriculture\"\n                android:textColor=\"@color/fontColor\"\n                android:textSize=\"18sp\"\n                app:layout_constraintEnd_toStartOf=\"@id/yojnaImageYojnaList\"\n                app:layout_constraintStart_toStartOf=\"parent\"\n                app:layout_constraintTop_toTopOf=\"@id/yojnaImageYojnaList\" />\n\n            <TextView\n                android:id=\"@+id/yojnaDateYojnaList\"\n                android:layout_width=\"wrap_content\"\n                android:layout_height=\"wrap_content\"\n                android:text=\"21 August 2021\"\n                app:layout_constraintBottom_toBottomOf=\"@id/yojnaImageYojnaList\"\n                app:layout_constraintStart_toStartOf=\"@id/yojnaTitleYojnaList\" />\n\n            <ImageView\n                android:id=\"@+id/yojnaImageYojnaList\"\n                android:layout_width=\"130dp\"\n                android:layout_height=\"100dp\"\n                android:layout_marginVertical=\"10dp\"\n                android:layout_marginEnd=\"14dp\"\n                android:src=\"@color/secondary\"\n                android:scaleType=\"fitXY\"\n                app:layout_constraintBottom_toBottomOf=\"parent\"\n                app:layout_constraintEnd_toEndOf=\"parent\"\n                app:layout_constraintStart_toEndOf=\"@id/yojnaTitleYojnaList\"\n                app:layout_constraintTop_toTopOf=\"parent\" />\n\n            <TextView\n                android:id=\"@+id/yojnaStatusYojnaList\"\n                android:layout_width=\"wrap_content\"\n                android:layout_height=\"wrap_content\"\n                android:layout_marginHorizontal=\"14dp\"\n                android:text=\"Active\"\n                android:textColor=\"@color/colorPrimary\"\n                android:textSize=\"14sp\"\n                android:textStyle=\"bold\"\n                app:layout_constraintBottom_toBottomOf=\"@id/yojnaDateYojnaList\"\n                app:layout_constraintEnd_toStartOf=\"@id/yojnaImageYojnaList\" />\n\n        </androidx.constraintlayout.widget.ConstraintLayout>\n    </androidx.cardview.widget.CardView>\n</androidx.constraintlayout.widget.ConstraintLayout>"
  },
  {
    "path": "app/src/main/res/layout/user_profile_posts_single.xml",
    "content": "<?xml version=\"1.0\" encoding=\"utf-8\"?>\n<androidx.constraintlayout.widget.ConstraintLayout xmlns:android=\"http://schemas.android.com/apk/res/android\"\n    xmlns:app=\"http://schemas.android.com/apk/res-auto\"\n    android:layout_width=\"match_parent\"\n    android:layout_height=\"wrap_content\"\n    android:layout_marginVertical=\"7dp\"\n    android:background=\"@drawable/table_border\"\n    android:elevation=\"20dp\"\n    android:padding=\"5dp\">\n\n    <androidx.cardview.widget.CardView\n        android:id=\"@+id/userPostProfileCard\"\n        android:layout_width=\"match_parent\"\n        android:layout_height=\"wrap_content\"\n        app:layout_constraintStart_toStartOf=\"parent\"\n        app:layout_constraintTop_toTopOf=\"parent\">\n\n        <androidx.constraintlayout.widget.ConstraintLayout\n            android:layout_width=\"match_parent\"\n            android:layout_height=\"match_parent\">\n\n            <ImageView\n                android:id=\"@+id/userPostImageUserProfileFrag\"\n                android:layout_width=\"50dp\"\n                android:layout_height=\"50dp\"\n                android:layout_marginStart=\"3dp\"\n                android:scaleType=\"fitXY\"\n                android:src=\"@color/fontColor\"\n                app:layout_constraintStart_toStartOf=\"parent\"\n                app:layout_constraintTop_toTopOf=\"parent\" />\n\n            <TextView\n                android:id=\"@+id/userPostTitleUserProfileFrag\"\n                android:layout_width=\"0dp\"\n                android:layout_height=\"wrap_content\"\n                android:layout_marginStart=\"7dp\"\n                android:layout_marginEnd=\"7dp\"\n                android:textColor=\"@color/fontColor\"\n                android:ellipsize=\"end\"\n                android:foregroundGravity=\"left\"\n                android:gravity=\"fill_horizontal\"\n\n                android:justificationMode=\"inter_word\"\n                android:maxLines=\"3\"\n                android:text=\"This is the title\"\n                android:textSize=\"14sp\"\n                app:layout_constraintBottom_toBottomOf=\"parent\"\n                app:layout_constraintEnd_toStartOf=\"@+id/userPostUploadTimeUserProfileFrag\"\n                app:layout_constraintStart_toEndOf=\"@id/userPostImageUserProfileFrag\"\n                app:layout_constraintTop_toTopOf=\"parent\" />\n\n            <TextView\n                android:id=\"@+id/userPostUploadTimeUserProfileFrag\"\n                android:layout_width=\"wrap_content\"\n                android:layout_height=\"wrap_content\"\n                android:text=\"2 Hours Ago\"\n                android:textSize=\"8sp\"\n                android:textColor=\"@color/fontColor\"\n                app:layout_constraintBottom_toBottomOf=\"parent\"\n                app:layout_constraintEnd_toEndOf=\"parent\"\n                app:layout_constraintStart_toEndOf=\"@id/userPostTitleUserProfileFrag\"\n                app:layout_constraintTop_toTopOf=\"parent\" />\n\n            <!--            <ImageView-->\n            <!--                android:layout_width=\"20dp\"-->\n            <!--                android:src=\"@color/fontColor\"-->\n            <!--                android:layout_height=\"20dp\"-->\n            <!--                app:layout_constraintEnd_toEndOf=\"parent\"-->\n            <!--                app:layout_constraintTop_toTopOf=\"parent\"-->\n            <!--                app:layout_constraintBottom_toBottomOf=\"parent\"-->\n            <!--                />-->\n\n        </androidx.constraintlayout.widget.ConstraintLayout>\n\n    </androidx.cardview.widget.CardView>\n\n</androidx.constraintlayout.widget.ConstraintLayout>"
  },
  {
    "path": "app/src/main/res/menu/cart_menu.xml",
    "content": "<?xml version=\"1.0\" encoding=\"utf-8\"?>\n<menu xmlns:android=\"http://schemas.android.com/apk/res/android\"\n    xmlns:app=\"http://schemas.android.com/apk/res-auto\">\n    <item\n        android:id=\"@+id/cart_item\"\n        android:icon=\"@drawable/ic_baseline_shopping_cart_24\"\n        android:title=\"Cart\"\n        app:showAsAction=\"ifRoom\"\n        />\n</menu>"
  },
  {
    "path": "app/src/main/res/menu/dash_menu.xml",
    "content": "<?xml version=\"1.0\" encoding=\"utf-8\"?>\n<menu xmlns:android=\"http://schemas.android.com/apk/res/android\">\n\n    <item android:id=\"@+id/bottomNavHome\"\n        android:title=\"Home\"\n        android:icon=\"@drawable/dash_home\" />\n    <item android:id=\"@+id/bottomNavPost\"\n        android:title=\"Posts\"\n        android:icon=\"@drawable/post_logo\" />\n    <item android:id=\"@+id/bottomNavAPMC\"\n        android:title=\"APMC\"\n        android:icon=\"@drawable/ic_baseline_trending_up_24\" />\n    <item android:id=\"@+id/bottomNavEcomm\"\n        android:title=\"E-Commerce\"\n        android:icon=\"@drawable/buy\" />\n\n\n</menu>"
  },
  {
    "path": "app/src/main/res/menu/nav_drawer_menu.xml",
    "content": "<?xml version=\"1.0\" encoding=\"utf-8\"?>\n<menu xmlns:android=\"http://schemas.android.com/apk/res/android\">\n    <item\n        android:id=\"@+id/miItem1\"\n        android:title=\"E-Commerce\" />\n    <item\n        android:id=\"@+id/miItem2\"\n        android:title=\"APMC Updates\" />\n    <item\n        android:id=\"@+id/miItem3\"\n        android:title=\"Create Post\" />\n    <item\n        android:id=\"@+id/miItem4\"\n        android:title=\"Community Network\" />\n    <item\n        android:id=\"@+id/miItem5\"\n        android:title=\"Weather Forecast\" />\n    <item\n        android:id=\"@+id/miItem6\"\n        android:title=\"Fruits Articles\" />\n    <item\n        android:id=\"@+id/miItem7\"\n        android:title=\"My Orders\" />\n    <item\n        android:id=\"@+id/miItem8\"\n        android:title=\"Log Out\" />\n\n\n</menu>"
  },
  {
    "path": "app/src/main/res/mipmap-anydpi-v26/ic_launcher.xml",
    "content": "<?xml version=\"1.0\" encoding=\"utf-8\"?>\n<adaptive-icon xmlns:android=\"http://schemas.android.com/apk/res/android\">\n    <background android:drawable=\"@color/white\" />\n    <foreground android:drawable=\"@drawable/app_icon4\" />\n</adaptive-icon>"
  },
  {
    "path": "app/src/main/res/mipmap-anydpi-v26/ic_launcher_round.xml",
    "content": "<?xml version=\"1.0\" encoding=\"utf-8\"?>\n<adaptive-icon xmlns:android=\"http://schemas.android.com/apk/res/android\">\n    <background android:drawable=\"@drawable/ic_launcher_background\" />\n    <foreground android:drawable=\"@drawable/ic_launcher_foreground\" />\n</adaptive-icon>"
  },
  {
    "path": "app/src/main/res/values/colors.xml",
    "content": "<?xml version=\"1.0\" encoding=\"utf-8\"?>\n<resources>\n    <color name=\"colorPrimary\">#79C551</color>\n    <color name=\"colorPrimaryDark\">#654321</color>\n<!--    <color name=\"colorPrimaryDark\">#79C551</color>-->\n    <color name=\"colorAccent\">#FFF</color>\n    <color name=\"white\">#FFFFFF</color>\n    <color name=\"greenlite\">#F56ADA23</color>\n    <color name=\"secondary\">#E2F2DA</color>\n    <color name=\"semiTransparentColor\">#80FFFFFF</color>\n    <color name=\"fontColor\">#FF404A3A</color>\n    <color name=\"secondary2\">#88d498</color>\n    <color name=\"secondary3\">#c6dabf</color>\n    <color name=\"colorThird\">#fc7557</color>\n    <color name=\"greenDark\">#359701</color>\n\n<color name=\"chip\">\n    <selector xmlns:android=\"http://schemas.android.com/apk/res/android\">\n        <item android:state_checked=\"true\"\n            android:color=\"@color/colorPrimary\" />\n        <item android:state_checked=\"false\"\n            android:color=\"@color/secondary\" />\n    </selector>\n</color>\n</resources>\n"
  },
  {
    "path": "app/src/main/res/values/font_certs.xml",
    "content": "<?xml version=\"1.0\" encoding=\"utf-8\"?>\n<resources>\n    <array name=\"com_google_android_gms_fonts_certs\">\n        <item>@array/com_google_android_gms_fonts_certs_dev</item>\n        <item>@array/com_google_android_gms_fonts_certs_prod</item>\n    </array>\n    <string-array name=\"com_google_android_gms_fonts_certs_dev\">\n        <item>\n            MIIEqDCCA5CgAwIBAgIJANWFuGx90071MA0GCSqGSIb3DQEBBAUAMIGUMQswCQYDVQQGEwJVUzETMBEGA1UECBMKQ2FsaWZvcm5pYTEWMBQGA1UEBxMNTW91bnRhaW4gVmlldzEQMA4GA1UEChMHQW5kcm9pZDEQMA4GA1UECxMHQW5kcm9pZDEQMA4GA1UEAxMHQW5kcm9pZDEiMCAGCSqGSIb3DQEJARYTYW5kcm9pZEBhbmRyb2lkLmNvbTAeFw0wODA0MTUyMzM2NTZaFw0zNTA5MDEyMzM2NTZaMIGUMQswCQYDVQQGEwJVUzETMBEGA1UECBMKQ2FsaWZvcm5pYTEWMBQGA1UEBxMNTW91bnRhaW4gVmlldzEQMA4GA1UEChMHQW5kcm9pZDEQMA4GA1UECxMHQW5kcm9pZDEQMA4GA1UEAxMHQW5kcm9pZDEiMCAGCSqGSIb3DQEJARYTYW5kcm9pZEBhbmRyb2lkLmNvbTCCASAwDQYJKoZIhvcNAQEBBQADggENADCCAQgCggEBANbOLggKv+IxTdGNs8/TGFy0PTP6DHThvbbR24kT9ixcOd9W+EaBPWW+wPPKQmsHxajtWjmQwWfna8mZuSeJS48LIgAZlKkpFeVyxW0qMBujb8X8ETrWy550NaFtI6t9+u7hZeTfHwqNvacKhp1RbE6dBRGWynwMVX8XW8N1+UjFaq6GCJukT4qmpN2afb8sCjUigq0GuMwYXrFVee74bQgLHWGJwPmvmLHC69EH6kWr22ijx4OKXlSIx2xT1AsSHee70w5iDBiK4aph27yH3TxkXy9V89TDdexAcKk/cVHYNnDBapcavl7y0RiQ4biu8ymM8Ga/nmzhRKya6G0cGw8CAQOjgfwwgfkwHQYDVR0OBBYEFI0cxb6VTEM8YYY6FbBMvAPyT+CyMIHJBgNVHSMEgcEwgb6AFI0cxb6VTEM8YYY6FbBMvAPyT+CyoYGapIGXMIGUMQswCQYDVQQGEwJVUzETMBEGA1UECBMKQ2FsaWZvcm5pYTEWMBQGA1UEBxMNTW91bnRhaW4gVmlldzEQMA4GA1UEChMHQW5kcm9pZDEQMA4GA1UECxMHQW5kcm9pZDEQMA4GA1UEAxMHQW5kcm9pZDEiMCAGCSqGSIb3DQEJARYTYW5kcm9pZEBhbmRyb2lkLmNvbYIJANWFuGx90071MAwGA1UdEwQFMAMBAf8wDQYJKoZIhvcNAQEEBQADggEBABnTDPEF+3iSP0wNfdIjIz1AlnrPzgAIHVvXxunW7SBrDhEglQZBbKJEk5kT0mtKoOD1JMrSu1xuTKEBahWRbqHsXclaXjoBADb0kkjVEJu/Lh5hgYZnOjvlba8Ld7HCKePCVePoTJBdI4fvugnL8TsgK05aIskyY0hKI9L8KfqfGTl1lzOv2KoWD0KWwtAWPoGChZxmQ+nBli+gwYMzM1vAkP+aayLe0a1EQimlOalO762r0GXO0ks+UeXde2Z4e+8S/pf7pITEI/tP+MxJTALw9QUWEv9lKTk+jkbqxbsh8nfBUapfKqYn0eidpwq2AzVp3juYl7//fKnaPhJD9gs=\n        </item>\n    </string-array>\n    <string-array name=\"com_google_android_gms_fonts_certs_prod\">\n        <item>\n            MIIEQzCCAyugAwIBAgIJAMLgh0ZkSjCNMA0GCSqGSIb3DQEBBAUAMHQxCzAJBgNVBAYTAlVTMRMwEQYDVQQIEwpDYWxpZm9ybmlhMRYwFAYDVQQHEw1Nb3VudGFpbiBWaWV3MRQwEgYDVQQKEwtHb29nbGUgSW5jLjEQMA4GA1UECxMHQW5kcm9pZDEQMA4GA1UEAxMHQW5kcm9pZDAeFw0wODA4MjEyMzEzMzRaFw0zNjAxMDcyMzEzMzRaMHQxCzAJBgNVBAYTAlVTMRMwEQYDVQQIEwpDYWxpZm9ybmlhMRYwFAYDVQQHEw1Nb3VudGFpbiBWaWV3MRQwEgYDVQQKEwtHb29nbGUgSW5jLjEQMA4GA1UECxMHQW5kcm9pZDEQMA4GA1UEAxMHQW5kcm9pZDCCASAwDQYJKoZIhvcNAQEBBQADggENADCCAQgCggEBAKtWLgDYO6IIrgqWbxJOKdoR8qtW0I9Y4sypEwPpt1TTcvZApxsdyxMJZ2JORland2qSGT2y5b+3JKkedxiLDmpHpDsz2WCbdxgxRczfey5YZnTJ4VZbH0xqWVW/8lGmPav5xVwnIiJS6HXk+BVKZF+JcWjAsb/GEuq/eFdpuzSqeYTcfi6idkyugwfYwXFU1+5fZKUaRKYCwkkFQVfcAs1fXA5V+++FGfvjJ/CxURaSxaBvGdGDhfXE28LWuT9ozCl5xw4Yq5OGazvV24mZVSoOO0yZ31j7kYvtwYK6NeADwbSxDdJEqO4k//0zOHKrUiGYXtqw/A0LFFtqoZKFjnkCAQOjgdkwgdYwHQYDVR0OBBYEFMd9jMIhF1Ylmn/Tgt9r45jk14alMIGmBgNVHSMEgZ4wgZuAFMd9jMIhF1Ylmn/Tgt9r45jk14aloXikdjB0MQswCQYDVQQGEwJVUzETMBEGA1UECBMKQ2FsaWZvcm5pYTEWMBQGA1UEBxMNTW91bnRhaW4gVmlldzEUMBIGA1UEChMLR29vZ2xlIEluYy4xEDAOBgNVBAsTB0FuZHJvaWQxEDAOBgNVBAMTB0FuZHJvaWSCCQDC4IdGZEowjTAMBgNVHRMEBTADAQH/MA0GCSqGSIb3DQEBBAUAA4IBAQBt0lLO74UwLDYKqs6Tm8/yzKkEu116FmH4rkaymUIE0P9KaMftGlMexFlaYjzmB2OxZyl6euNXEsQH8gjwyxCUKRJNexBiGcCEyj6z+a1fuHHvkiaai+KL8W1EyNmgjmyy8AW7P+LLlkR+ho5zEHatRbM/YAnqGcFh5iZBqpknHf1SKMXFh4dd239FJ1jWYfbMDMy3NS5CTMQ2XFI1MvcyUTdZPErjQfTbQe3aDQsQcafEQPD+nqActifKZ0Np0IS9L9kR/wbNvyz6ENwPiTrjV2KRkEjH78ZMcUQXg0L3BYHJ3lc69Vs5Ddf9uUGGMYldX3WfMBEmh/9iFBDAaTCK\n        </item>\n    </string-array>\n</resources>\n"
  },
  {
    "path": "app/src/main/res/values/preloaded_fonts.xml",
    "content": "<?xml version=\"1.0\" encoding=\"utf-8\"?>\n<resources>\n    <array name=\"preloaded_fonts\" translatable=\"false\">\n        <item>@font/lato</item>\n        <item>@font/lato_bold</item>\n        <item>@font/lato_light</item>\n    </array>\n</resources>\n"
  },
  {
    "path": "app/src/main/res/values/strings.xml",
    "content": "<resources>\n    <string name=\"app_name\">Agri India</string>\n    <!-- TODO: Remove or change this placeholder text -->\n    <string name=\"hello_blank_fragment\">Hello blank fragment</string>\n    <string name=\"open\">Open</string>\n    <string name=\"close\">Close</string>\n    <string name=\"loading\">Loading...</string>\n    <string name=\"key_id\">rzp_test_4KlOjIggoWzTlr</string>\n</resources>"
  },
  {
    "path": "app/src/main/res/values/styles.xml",
    "content": "<resources>\n    <!-- Base application theme. -->\n    <style name=\"AppTheme\" parent=\"Theme.MaterialComponents.Light.DarkActionBar\">\n        <!-- Customize your theme here. -->\n        <item name=\"colorPrimary\">@color/colorPrimary</item>\n        <item name=\"colorPrimaryDark\">@color/colorPrimaryDark</item>\n        <item name=\"colorAccent\">@color/colorAccent</item>\n        <item name=\"fontFamily\">@font/lato</item>\n        <item name=\"android:textColor\">@color/fontColor</item>\n    </style>\n\n    <style name=\"AppTheme2\" parent=\"Theme.MaterialComponents.Light.NoActionBar\">\n        <!-- Customize your theme here. -->\n        <item name=\"colorPrimary\">@color/colorPrimary</item>\n        <item name=\"colorPrimaryDark\">@color/colorPrimaryDark</item>\n        <item name=\"colorAccent\">@color/colorAccent</item>\n        <item name=\"fontFamily\">@font/lato</item>\n\n    </style>\n    <style name=\"RatingBar\" parent=\"AppTheme\">\n        <item name=\"colorControlActivated\">@color/colorPrimary</item>\n        <item name=\"colorControlNormal\">@color/secondary2</item>\n    </style>\n\n</resources>"
  },
  {
    "path": "app/src/test/java/com/project/farmingapp/ExampleUnitTest.kt",
    "content": "package com.project.farmingapp\n\nimport org.junit.Test\n\nimport org.junit.Assert.*\n\n/**\n * Example local unit test, which will execute on the development machine (host).\n *\n * See [testing documentation](http://d.android.com/tools/testing).\n */\nclass ExampleUnitTest {\n    @Test\n    fun addition_isCorrect() {\n        assertEquals(4, 2 + 2)\n    }\n}"
  },
  {
    "path": "build.gradle",
    "content": "// Top-level build file where you can add configuration options common to all sub-projects/modules.\nbuildscript {\n    ext.kotlin_version = \"1.3.72\"\n    repositories {\n\n        google()\n        jcenter()\n    }\n    dependencies {\n\n        classpath \"com.android.tools.build:gradle:4.0.1\"\n        classpath \"org.jetbrains.kotlin:kotlin-gradle-plugin:$kotlin_version\"\n\n        // NOTE: Do not place your application dependencies here; they belong\n        classpath 'com.google.gms:google-services:4.3.4'\n        // in the individual module build.gradle files\n        classpath \"androidx.navigation:navigation-safe-args-gradle-plugin:2.1.0-alpha05\"\n    }\n}\n\nallprojects {\n    repositories {\n        maven { url 'https://jitpack.io' }\n        google()\n        jcenter()\n    }\n}\n\ntask clean(type: Delete) {\n    delete rootProject.buildDir\n}"
  },
  {
    "path": "gradle/wrapper/gradle-wrapper.properties",
    "content": "#Tue Dec 29 14:11:15 IST 2020\ndistributionBase=GRADLE_USER_HOME\ndistributionPath=wrapper/dists\nzipStoreBase=GRADLE_USER_HOME\nzipStorePath=wrapper/dists\ndistributionUrl=https\\://services.gradle.org/distributions/gradle-6.1.1-all.zip\n"
  },
  {
    "path": "gradle.properties",
    "content": "# Project-wide Gradle settings.\n# IDE (e.g. Android Studio) users:\n# Gradle settings configured through the IDE *will override*\n# any settings specified in this file.\n# For more details on how to configure your build environment visit\n# http://www.gradle.org/docs/current/userguide/build_environment.html\n# Specifies the JVM arguments used for the daemon process.\n# The setting is particularly useful for tweaking memory settings.\norg.gradle.jvmargs=-Xmx2048m\n# When configured, Gradle will run in incubating parallel mode.\n# This option should only be used with decoupled projects. More details, visit\n# http://www.gradle.org/docs/current/userguide/multi_project_builds.html#sec:decoupled_projects\n# org.gradle.parallel=true\n# AndroidX package structure to make it clearer which packages are bundled with the\n# Android operating system, and which are packaged with your app\"s APK\n# https://developer.android.com/topic/libraries/support-library/androidx-rn\nandroid.useAndroidX=true\n# Automatically convert third-party libraries to use AndroidX\nandroid.enableJetifier=true\n# Kotlin code style for this project: \"official\" or \"obsolete\":\nkotlin.code.style=official\nandroid.databinding.enableV2=true"
  },
  {
    "path": "gradlew",
    "content": "#!/usr/bin/env sh\n\n##############################################################################\n##\n##  Gradle start up script for UN*X\n##\n##############################################################################\n\n# Attempt to set APP_HOME\n# Resolve links: $0 may be a link\nPRG=\"$0\"\n# Need this for relative symlinks.\nwhile [ -h \"$PRG\" ] ; do\n    ls=`ls -ld \"$PRG\"`\n    link=`expr \"$ls\" : '.*-> \\(.*\\)$'`\n    if expr \"$link\" : '/.*' > /dev/null; then\n        PRG=\"$link\"\n    else\n        PRG=`dirname \"$PRG\"`\"/$link\"\n    fi\ndone\nSAVED=\"`pwd`\"\ncd \"`dirname \\\"$PRG\\\"`/\" >/dev/null\nAPP_HOME=\"`pwd -P`\"\ncd \"$SAVED\" >/dev/null\n\nAPP_NAME=\"Gradle\"\nAPP_BASE_NAME=`basename \"$0\"`\n\n# Add default JVM options here. You can also use JAVA_OPTS and GRADLE_OPTS to pass JVM options to this script.\nDEFAULT_JVM_OPTS=\"\"\n\n# Use the maximum available, or set MAX_FD != -1 to use that value.\nMAX_FD=\"maximum\"\n\nwarn () {\n    echo \"$*\"\n}\n\ndie () {\n    echo\n    echo \"$*\"\n    echo\n    exit 1\n}\n\n# OS specific support (must be 'true' or 'false').\ncygwin=false\nmsys=false\ndarwin=false\nnonstop=false\ncase \"`uname`\" in\n  CYGWIN* )\n    cygwin=true\n    ;;\n  Darwin* )\n    darwin=true\n    ;;\n  MINGW* )\n    msys=true\n    ;;\n  NONSTOP* )\n    nonstop=true\n    ;;\nesac\n\nCLASSPATH=$APP_HOME/gradle/wrapper/gradle-wrapper.jar\n\n# Determine the Java command to use to start the JVM.\nif [ -n \"$JAVA_HOME\" ] ; then\n    if [ -x \"$JAVA_HOME/jre/sh/java\" ] ; then\n        # IBM's JDK on AIX uses strange locations for the executables\n        JAVACMD=\"$JAVA_HOME/jre/sh/java\"\n    else\n        JAVACMD=\"$JAVA_HOME/bin/java\"\n    fi\n    if [ ! -x \"$JAVACMD\" ] ; then\n        die \"ERROR: JAVA_HOME is set to an invalid directory: $JAVA_HOME\n\nPlease set the JAVA_HOME variable in your environment to match the\nlocation of your Java installation.\"\n    fi\nelse\n    JAVACMD=\"java\"\n    which java >/dev/null 2>&1 || die \"ERROR: JAVA_HOME is not set and no 'java' command could be found in your PATH.\n\nPlease set the JAVA_HOME variable in your environment to match the\nlocation of your Java installation.\"\nfi\n\n# Increase the maximum file descriptors if we can.\nif [ \"$cygwin\" = \"false\" -a \"$darwin\" = \"false\" -a \"$nonstop\" = \"false\" ] ; then\n    MAX_FD_LIMIT=`ulimit -H -n`\n    if [ $? -eq 0 ] ; then\n        if [ \"$MAX_FD\" = \"maximum\" -o \"$MAX_FD\" = \"max\" ] ; then\n            MAX_FD=\"$MAX_FD_LIMIT\"\n        fi\n        ulimit -n $MAX_FD\n        if [ $? -ne 0 ] ; then\n            warn \"Could not set maximum file descriptor limit: $MAX_FD\"\n        fi\n    else\n        warn \"Could not query maximum file descriptor limit: $MAX_FD_LIMIT\"\n    fi\nfi\n\n# For Darwin, add options to specify how the application appears in the dock\nif $darwin; then\n    GRADLE_OPTS=\"$GRADLE_OPTS \\\"-Xdock:name=$APP_NAME\\\" \\\"-Xdock:icon=$APP_HOME/media/gradle.icns\\\"\"\nfi\n\n# For Cygwin, switch paths to Windows format before running java\nif $cygwin ; then\n    APP_HOME=`cygpath --path --mixed \"$APP_HOME\"`\n    CLASSPATH=`cygpath --path --mixed \"$CLASSPATH\"`\n    JAVACMD=`cygpath --unix \"$JAVACMD\"`\n\n    # We build the pattern for arguments to be converted via cygpath\n    ROOTDIRSRAW=`find -L / -maxdepth 1 -mindepth 1 -type d 2>/dev/null`\n    SEP=\"\"\n    for dir in $ROOTDIRSRAW ; do\n        ROOTDIRS=\"$ROOTDIRS$SEP$dir\"\n        SEP=\"|\"\n    done\n    OURCYGPATTERN=\"(^($ROOTDIRS))\"\n    # Add a user-defined pattern to the cygpath arguments\n    if [ \"$GRADLE_CYGPATTERN\" != \"\" ] ; then\n        OURCYGPATTERN=\"$OURCYGPATTERN|($GRADLE_CYGPATTERN)\"\n    fi\n    # Now convert the arguments - kludge to limit ourselves to /bin/sh\n    i=0\n    for arg in \"$@\" ; do\n        CHECK=`echo \"$arg\"|egrep -c \"$OURCYGPATTERN\" -`\n        CHECK2=`echo \"$arg\"|egrep -c \"^-\"`                                 ### Determine if an option\n\n        if [ $CHECK -ne 0 ] && [ $CHECK2 -eq 0 ] ; then                    ### Added a condition\n            eval `echo args$i`=`cygpath --path --ignore --mixed \"$arg\"`\n        else\n            eval `echo args$i`=\"\\\"$arg\\\"\"\n        fi\n        i=$((i+1))\n    done\n    case $i in\n        (0) set -- ;;\n        (1) set -- \"$args0\" ;;\n        (2) set -- \"$args0\" \"$args1\" ;;\n        (3) set -- \"$args0\" \"$args1\" \"$args2\" ;;\n        (4) set -- \"$args0\" \"$args1\" \"$args2\" \"$args3\" ;;\n        (5) set -- \"$args0\" \"$args1\" \"$args2\" \"$args3\" \"$args4\" ;;\n        (6) set -- \"$args0\" \"$args1\" \"$args2\" \"$args3\" \"$args4\" \"$args5\" ;;\n        (7) set -- \"$args0\" \"$args1\" \"$args2\" \"$args3\" \"$args4\" \"$args5\" \"$args6\" ;;\n        (8) set -- \"$args0\" \"$args1\" \"$args2\" \"$args3\" \"$args4\" \"$args5\" \"$args6\" \"$args7\" ;;\n        (9) set -- \"$args0\" \"$args1\" \"$args2\" \"$args3\" \"$args4\" \"$args5\" \"$args6\" \"$args7\" \"$args8\" ;;\n    esac\nfi\n\n# Escape application args\nsave () {\n    for i do printf %s\\\\n \"$i\" | sed \"s/'/'\\\\\\\\''/g;1s/^/'/;\\$s/\\$/' \\\\\\\\/\" ; done\n    echo \" \"\n}\nAPP_ARGS=$(save \"$@\")\n\n# Collect all arguments for the java command, following the shell quoting and substitution rules\neval set -- $DEFAULT_JVM_OPTS $JAVA_OPTS $GRADLE_OPTS \"\\\"-Dorg.gradle.appname=$APP_BASE_NAME\\\"\" -classpath \"\\\"$CLASSPATH\\\"\" org.gradle.wrapper.GradleWrapperMain \"$APP_ARGS\"\n\n# by default we should be in the correct project dir, but when run from Finder on Mac, the cwd is wrong\nif [ \"$(uname)\" = \"Darwin\" ] && [ \"$HOME\" = \"$PWD\" ]; then\n  cd \"$(dirname \"$0\")\"\nfi\n\nexec \"$JAVACMD\" \"$@\"\n"
  },
  {
    "path": "gradlew.bat",
    "content": "@if \"%DEBUG%\" == \"\" @echo off\n@rem ##########################################################################\n@rem\n@rem  Gradle startup script for Windows\n@rem\n@rem ##########################################################################\n\n@rem Set local scope for the variables with windows NT shell\nif \"%OS%\"==\"Windows_NT\" setlocal\n\nset DIRNAME=%~dp0\nif \"%DIRNAME%\" == \"\" set DIRNAME=.\nset APP_BASE_NAME=%~n0\nset APP_HOME=%DIRNAME%\n\n@rem Add default JVM options here. You can also use JAVA_OPTS and GRADLE_OPTS to pass JVM options to this script.\nset DEFAULT_JVM_OPTS=\n\n@rem Find java.exe\nif defined JAVA_HOME goto findJavaFromJavaHome\n\nset JAVA_EXE=java.exe\n%JAVA_EXE% -version >NUL 2>&1\nif \"%ERRORLEVEL%\" == \"0\" goto init\n\necho.\necho ERROR: JAVA_HOME is not set and no 'java' command could be found in your PATH.\necho.\necho Please set the JAVA_HOME variable in your environment to match the\necho location of your Java installation.\n\ngoto fail\n\n:findJavaFromJavaHome\nset JAVA_HOME=%JAVA_HOME:\"=%\nset JAVA_EXE=%JAVA_HOME%/bin/java.exe\n\nif exist \"%JAVA_EXE%\" goto init\n\necho.\necho ERROR: JAVA_HOME is set to an invalid directory: %JAVA_HOME%\necho.\necho Please set the JAVA_HOME variable in your environment to match the\necho location of your Java installation.\n\ngoto fail\n\n:init\n@rem Get command-line arguments, handling Windows variants\n\nif not \"%OS%\" == \"Windows_NT\" goto win9xME_args\n\n:win9xME_args\n@rem Slurp the command line arguments.\nset CMD_LINE_ARGS=\nset _SKIP=2\n\n:win9xME_args_slurp\nif \"x%~1\" == \"x\" goto execute\n\nset CMD_LINE_ARGS=%*\n\n:execute\n@rem Setup the command line\n\nset CLASSPATH=%APP_HOME%\\gradle\\wrapper\\gradle-wrapper.jar\n\n@rem Execute Gradle\n\"%JAVA_EXE%\" %DEFAULT_JVM_OPTS% %JAVA_OPTS% %GRADLE_OPTS% \"-Dorg.gradle.appname=%APP_BASE_NAME%\" -classpath \"%CLASSPATH%\" org.gradle.wrapper.GradleWrapperMain %CMD_LINE_ARGS%\n\n:end\n@rem End local scope for the variables with windows NT shell\nif \"%ERRORLEVEL%\"==\"0\" goto mainEnd\n\n:fail\nrem Set variable GRADLE_EXIT_CONSOLE if you need the _script_ return code instead of\nrem the _cmd.exe /c_ return code!\nif  not \"\" == \"%GRADLE_EXIT_CONSOLE%\" exit 1\nexit /b 1\n\n:mainEnd\nif \"%OS%\"==\"Windows_NT\" endlocal\n\n:omega\n"
  },
  {
    "path": "settings.gradle",
    "content": "include ':app'\nrootProject.name = \"Farming App\""
  }
]