This commit is contained in:
Tucan444 2021-04-24 12:01:55 +02:00
parent 5b5325f2f6
commit 0b6c193c64
32 changed files with 460 additions and 266 deletions

@ -1,6 +0,0 @@
<?xml version="1.0" encoding="UTF-8"?>
<project version="4">
<component name="VcsDirectoryMappings">
<mapping directory="$PROJECT_DIR$/../.." vcs="Git" />
</component>
</project>

@ -168,10 +168,11 @@ class MainActivity : AppCompatActivity() {
val fileInfo = JsonManagerLite(json.getAttributeContentByPath("files/$n"), "JSONObject") val fileInfo = JsonManagerLite(json.getAttributeContentByPath("files/$n"), "JSONObject")
val filetype = fileInfo.getAttributeContentByPath("format").split(".")[1] val filetype = fileInfo.getAttributeContentByPath("format").split(".")[1]
val filename = fileInfo.getAttributeContentByPath("name") val filename = fileInfo.getAttributeContentByPath("name")
val fileDescription = fileInfo.getAttributeContentByPath("description")
// handling text // handling text
if ("txt json".contains(filetype)) { if ("txt json".contains(filetype)) {
val fileView = FileView(filetype, filename, "$data0|||||$filename.$filetype") val fileView = FileView(filetype, filename, fileDescription, "$data0|||||$filename.$filetype")
if (!FileViewsSupplier.checkIfContains(fileView)) { if (!FileViewsSupplier.checkIfContains(fileView)) {
FileViewsSupplier.appendFileView(fileView) FileViewsSupplier.appendFileView(fileView)
updateFileViewsRecyclerView(it) updateFileViewsRecyclerView(it)
@ -180,7 +181,7 @@ class MainActivity : AppCompatActivity() {
// handling images // handling images
if ("jpg png".contains(filetype)) { if ("jpg png".contains(filetype)) {
val fileView = FileView(filetype, filename, null, "$data0|||||$filename.$filetype") val fileView = FileView(filetype, filename, fileDescription, null, "$data0|||||$filename.$filetype")
if (!FileViewsSupplier.checkIfContains(fileView)) { if (!FileViewsSupplier.checkIfContains(fileView)) {
FileViewsSupplier.appendFileView(fileView) FileViewsSupplier.appendFileView(fileView)
updateFileViewsRecyclerView(it) updateFileViewsRecyclerView(it)
@ -189,7 +190,7 @@ class MainActivity : AppCompatActivity() {
// handling pdf files // handling pdf files
if ("pdf".contains(filetype)) { if ("pdf".contains(filetype)) {
val fileView = FileView(filetype, filename, null, null, "${ServerManagement.baseUrl}files/$data0/$filename.$filetype") val fileView = FileView(filetype, filename, fileDescription, null, null, "${ServerManagement.baseUrl}files/$data0/$filename.$filetype")
if (!FileViewsSupplier.checkIfContains(fileView)) { if (!FileViewsSupplier.checkIfContains(fileView)) {
FileViewsSupplier.appendFileView(fileView) FileViewsSupplier.appendFileView(fileView)
updateFileViewsRecyclerView(it) updateFileViewsRecyclerView(it)

@ -5,7 +5,6 @@ import android.view.LayoutInflater
import android.view.View import android.view.View
import android.view.ViewGroup import android.view.ViewGroup
import androidx.recyclerview.widget.RecyclerView import androidx.recyclerview.widget.RecyclerView
import com.example.wikispot.ChatManagement
import com.example.wikispot.GeneralVariables import com.example.wikispot.GeneralVariables
import com.example.wikispot.R import com.example.wikispot.R
import com.example.wikispot.modelsForAdapters.Message import com.example.wikispot.modelsForAdapters.Message
@ -25,15 +24,8 @@ class ChatMessagesAdapter(private val context: Context, private val messages: Ar
itemView.message_content_text.text = message.content itemView.message_content_text.text = message.content
if (GeneralVariables.id == message.senderId) { if (GeneralVariables.id == message.senderId) {
itemView.message_author_text.textAlignment = View.TEXT_ALIGNMENT_TEXT_END itemView.message_author_text.textAlignment = View.TEXT_ALIGNMENT_VIEW_END
itemView.message_content_text.textAlignment = View.TEXT_ALIGNMENT_TEXT_END itemView.message_content_text.textAlignment = View.TEXT_ALIGNMENT_VIEW_END
}
for (n in 0 until ChatManagement.lastNames.length()) {
if (ChatManagement.lastNames[n] == message.senderId) {
itemView.message_author_text.textAlignment = View.TEXT_ALIGNMENT_TEXT_END
itemView.message_content_text.textAlignment = View.TEXT_ALIGNMENT_TEXT_END
itemView.message_author_text.text = GeneralVariables.name
}
} }
} }
@ -44,6 +36,7 @@ class ChatMessagesAdapter(private val context: Context, private val messages: Ar
override fun onBindViewHolder(holder: MyViewHolder, position: Int) { override fun onBindViewHolder(holder: MyViewHolder, position: Int) {
val message = messages[position] val message = messages[position]
holder.setIsRecyclable(false)
holder.setData(message, position) holder.setData(message, position)
} }

@ -10,14 +10,12 @@ import android.view.ViewGroup
import android.view.animation.Animation import android.view.animation.Animation
import android.view.animation.AnimationUtils import android.view.animation.AnimationUtils
import androidx.core.content.ContextCompat.startActivity import androidx.core.content.ContextCompat.startActivity
import androidx.core.view.setPadding
import androidx.recyclerview.widget.RecyclerView import androidx.recyclerview.widget.RecyclerView
import com.example.wikispot.R import com.example.wikispot.R
import com.example.wikispot.ServerManagement import com.example.wikispot.ServerManagement
import com.example.wikispot.modelsForAdapters.FileView import com.example.wikispot.modelsForAdapters.FileView
import kotlinx.android.synthetic.main.file_view.view.* import kotlinx.android.synthetic.main.file_view.view.*
import java.io.File
import java.io.FileOutputStream
import java.net.URL
class FileViewsAdapter(private val context: Context, private val fileViews: Array<FileView?>) : RecyclerView.Adapter<FileViewsAdapter.MyViewHolder>() { class FileViewsAdapter(private val context: Context, private val fileViews: Array<FileView?>) : RecyclerView.Adapter<FileViewsAdapter.MyViewHolder>() {
@ -46,6 +44,7 @@ class FileViewsAdapter(private val context: Context, private val fileViews: Arra
fileView?.let { fileView?.let {
textInfo?.let { textInfo?.let {
itemView.textContent.textSize = 18F itemView.textContent.textSize = 18F
itemView.textContent.setPadding(32)
val dataReceiver: (String) -> Unit = { data: String -> val dataReceiver: (String) -> Unit = { data: String ->
itemView.textContent.post { itemView.textContent.post {
itemView.textContent.text = data itemView.textContent.text = data
@ -77,6 +76,7 @@ class FileViewsAdapter(private val context: Context, private val fileViews: Arra
} else { } else {
itemView.showFileBtn.startAnimation(rotateClose) itemView.showFileBtn.startAnimation(rotateClose)
itemView.textContent.textSize = 0F itemView.textContent.textSize = 0F
itemView.textContent.setPadding(0)
val downloadBtnVanishActionThread = Thread(DownloadBtnVanishAction()) val downloadBtnVanishActionThread = Thread(DownloadBtnVanishAction())
downloadBtnVanishActionThread.start() downloadBtnVanishActionThread.start()
@ -124,7 +124,8 @@ class FileViewsAdapter(private val context: Context, private val fileViews: Arra
pdfUrl = it pdfUrl = it
} }
itemView.filename_text.text = fileView.filename itemView.filenameText.text = fileView.filename
itemView.fileDescription.text = fileView.fileDescription
} }
this.fileView = fileView this.fileView = fileView

@ -13,6 +13,8 @@ import com.example.wikispot.modelsForAdapters.MessagesSupplier
import kotlinx.android.synthetic.main.fragment_chat.* import kotlinx.android.synthetic.main.fragment_chat.*
import okhttp3.* import okhttp3.*
import okhttp3.HttpUrl.Companion.toHttpUrlOrNull import okhttp3.HttpUrl.Companion.toHttpUrlOrNull
import okhttp3.MediaType.Companion.toMediaTypeOrNull
import org.json.JSONObject
import java.io.IOException import java.io.IOException
@ -23,6 +25,19 @@ class chatFragment : Fragment(R.layout.fragment_chat) {
updateRecyclerView() updateRecyclerView()
writeBar.setOnClickListener {
val scrollDownThread = Thread(ScrollDown(300))
scrollDownThread.start()
}
userMessageText.setOnClickListener {
val scrollDownThread = Thread(ScrollDown(300))
scrollDownThread.start()
}
userMessageText.setOnFocusChangeListener { _, _ ->
val scrollDownThread = Thread(ScrollDown(300))
scrollDownThread.start()
}
sendMessageBtn.setOnClickListener { sendMessageBtn.setOnClickListener {
GeneralVariables.id?.let { GeneralVariables.id?.let {
if (userMessageText.text.toString() != "" ) { if (userMessageText.text.toString() != "" ) {
@ -46,9 +61,10 @@ class chatFragment : Fragment(R.layout.fragment_chat) {
loadIdFromCache() loadIdFromCache()
val dataReceiver: (String) -> Unit = { data: String -> val dataReceiver: (String) -> Unit = { data: String ->
val json = JsonManager(requireContext(), data, "JSONObject")
try { try {
val json = JsonManager(requireContext(), data, "JSONObject")
when (json.getAttributeContent("source")) { when (json.getAttributeContent("source")) {
"messages/register" -> { "messages/register" -> {
GeneralVariables.id = json.getAttributeContentByPath("data/0") GeneralVariables.id = json.getAttributeContentByPath("data/0")
@ -123,18 +139,31 @@ class chatFragment : Fragment(R.layout.fragment_chat) {
} }
inner class ScrollDown(private val after: Long): Runnable {
override fun run() {
Thread.sleep(after)
try {
chat_messages_recycler_view.post {
chat_messages_recycler_view.scrollToPosition(MessagesSupplier.messages.size - 1)
}
} catch (e: Throwable) { println("[debug] e6 Exception: $e") }
}
}
inner class MessagePost(private val message: Message): Runnable { inner class MessagePost(private val message: Message): Runnable {
override fun run() { override fun run() {
val urlBuilder: HttpUrl.Builder = "${ServerManagement.baseUrl}messages/post".toHttpUrlOrNull()!!.newBuilder()
.addQueryParameter("m_sender", message.senderId)
.addQueryParameter("message", message.content)
val url: String = urlBuilder.build().toString()
val formBody: FormBody = FormBody.Builder().build() val url = "${ServerManagement.baseUrl}messages/post"
val json: MediaType? = "application/json; charset=utf-8".toMediaTypeOrNull()
val body:RequestBody = RequestBody.create(json, JSONObject()
.put("m_sender", message.senderId)
.put("message", message.content).toString())
val request: Request = Request.Builder() val request: Request = Request.Builder()
.url(url) .url(url)
.post(formBody) .post(body)
.build() .build()
val client = OkHttpClient() val client = OkHttpClient()

@ -5,6 +5,7 @@ import android.os.Bundle
import android.view.View import android.view.View
import androidx.fragment.app.Fragment import androidx.fragment.app.Fragment
import androidx.navigation.Navigation import androidx.navigation.Navigation
import com.example.wikispot.GeneralVariables
import com.example.wikispot.R import com.example.wikispot.R
import com.example.wikispot.ServerManagement import com.example.wikispot.ServerManagement
import com.example.wikispot.modelClasses.JsonManager import com.example.wikispot.modelClasses.JsonManager
@ -39,17 +40,37 @@ class homeFragment : Fragment(R.layout.fragment_home) {
infoFragmentLoadedIn = true infoFragmentLoadedIn = true
val phoneNumberLoaded = json.getAttributeContentByPath("description/phone_number")
if (phoneNumberLoaded != GeneralVariables.variableMissingKeyword) {
GeneralVariables.phoneNumber = phoneNumberLoaded.toInt()
}
val emailLoaded = json.getAttributeContentByPath("description/email")
if (emailLoaded != GeneralVariables.variableMissingKeyword) {
GeneralVariables.email = emailLoaded
}
homeFragmentInnerFragment.post { homeFragmentInnerFragment.post {
homeFragmentInnerFragment?.let { fragment -> homeFragmentInnerFragment?.let { fragment ->
fragment.mainTitle.text = json.getAttributeContentByPath("description/title") val title = json.getAttributeContentByPath("description/title")
fragment.mainDescription.text = json.getAttributeContentByPath("description/description_l") val description = json.getAttributeContentByPath("description/description_l")
if (title != GeneralVariables.variableMissingKeyword) {
fragment.mainTitle.text = title
}
if (description != GeneralVariables.variableMissingKeyword) {
fragment.mainDescription.text = description
}
} }
} }
val imageReceiver: (Bitmap) -> Unit = { bitmap: Bitmap -> val imageReceiver: (Bitmap) -> Unit = { bitmap: Bitmap ->
homeFragmentInnerFragment?.let { homeFragmentInnerFragment?.let {
homeFragmentInnerFragment.post { homeFragmentInnerFragment.post {
homeFragmentInnerFragment.mainImage.setImageBitmap(bitmap) try {
homeFragmentInnerFragment.mainImage.setImageBitmap(bitmap)
} catch (e: Throwable) { println("[debug] e7 Exception: $e") }
} }
} }
} }

@ -1,12 +1,15 @@
package com.example.wikispot.fragments package com.example.wikispot.fragments
import android.content.Intent
import android.graphics.Bitmap import android.graphics.Bitmap
import android.net.Uri
import android.os.Bundle import android.os.Bundle
import android.view.View import android.view.View
import androidx.fragment.app.Fragment import androidx.fragment.app.Fragment
import androidx.navigation.Navigation import androidx.navigation.Navigation
import androidx.navigation.fragment.navArgs import androidx.navigation.fragment.navArgs
import androidx.recyclerview.widget.LinearLayoutManager import androidx.recyclerview.widget.LinearLayoutManager
import com.example.wikispot.GeneralVariables
import com.example.wikispot.R import com.example.wikispot.R
import com.example.wikispot.ServerManagement import com.example.wikispot.ServerManagement
import com.example.wikispot.adapters.FileViewsAdapter import com.example.wikispot.adapters.FileViewsAdapter
@ -17,16 +20,18 @@ import com.example.wikispot.modelsForAdapters.FileView
import com.example.wikispot.modelsForAdapters.FileViewsSupplier import com.example.wikispot.modelsForAdapters.FileViewsSupplier
import com.example.wikispot.modelsForAdapters.LabeledValue import com.example.wikispot.modelsForAdapters.LabeledValue
import com.example.wikispot.modelsForAdapters.LabeledValuesSupplier import com.example.wikispot.modelsForAdapters.LabeledValuesSupplier
import com.example.wikispot.showToast
import com.google.android.gms.maps.model.LatLng import com.google.android.gms.maps.model.LatLng
import kotlinx.android.synthetic.main.fragment_info.* import kotlinx.android.synthetic.main.fragment_info.*
import java.io.File
class infoFragment : Fragment(R.layout.fragment_info) { class infoFragment : Fragment(R.layout.fragment_info) {
private val args: infoFragmentArgs by navArgs() private val args: infoFragmentArgs by navArgs()
var location: LatLng? = null var location: LatLng? = null
var loadAutomatically = false var phoneNumber: Int? = null
var email: String? = null
var executeLoadFuntion = false
override fun onViewCreated(view: View, savedInstanceState: Bundle?) { override fun onViewCreated(view: View, savedInstanceState: Bundle?) {
super.onViewCreated(view, savedInstanceState) super.onViewCreated(view, savedInstanceState)
@ -37,15 +42,17 @@ class infoFragment : Fragment(R.layout.fragment_info) {
updateFileViewsRecyclerView() updateFileViewsRecyclerView()
try { try {
loadAutomatically = args.loadAutomatically executeLoadFuntion = args.executeLoadFuntion
} catch (e: Throwable) { println("[debug] Exception in Info Fragment while getting args: $e") } } catch (e: Throwable) { println("[debug] Exception in Info Fragment while getting args: $e") }
if (loadAutomatically) { if (executeLoadFuntion) {
load() load()
} else {
getContactInfoFromGeneralVariables()
} }
locationBtn.setOnClickListener { locationBtn.setOnClickListener {
if (loadAutomatically) { if (executeLoadFuntion) {
if (location != null) { if (location != null) {
val action = infoFragmentDirections.infoFragmentToMapFragment(location!!) val action = infoFragmentDirections.infoFragmentToMapFragment(location!!)
Navigation.findNavController(it).navigate(action) Navigation.findNavController(it).navigate(action)
@ -54,6 +61,34 @@ class infoFragment : Fragment(R.layout.fragment_info) {
Navigation.findNavController(it).navigate(R.id.homeFragment_to_mapFragment) Navigation.findNavController(it).navigate(R.id.homeFragment_to_mapFragment)
} }
} }
phoneBtn.setOnClickListener {
if (phoneNumber != null) {
phoneNumber?.let {
val intent = Intent(Intent.ACTION_DIAL)
intent.data = Uri.parse("tel:$phoneNumber")
startActivity(intent)
}
} else {
requireContext().showToast("Phone number not found.")
}
}
emailBtn.setOnClickListener {
if (email != null) {
email?.let{
val intent = Intent(Intent.ACTION_SEND)
intent.putExtra(Intent.EXTRA_EMAIL, arrayOf(email))
intent.type = "text/plain"
startActivity(Intent.createChooser(intent, "Send Email"))
}
} else {
requireContext().showToast("Email address not found.")
}
}
} }
private fun load() { private fun load() {
@ -65,15 +100,33 @@ class infoFragment : Fragment(R.layout.fragment_info) {
val json = JsonManager(requireContext(), data) val json = JsonManager(requireContext(), data)
json.findJsonObjectByAttribute("ID", serverId) json.findJsonObjectByAttribute("ID", serverId)
val phoneNumberLoaded = json.getAttributeContentByPath("description/phone_number")
if (phoneNumberLoaded != GeneralVariables.variableMissingKeyword) {
phoneNumber = phoneNumberLoaded.toInt()
checkContactInformation()
}
val emailLoaded = json.getAttributeContentByPath("description/email")
if (emailLoaded != GeneralVariables.variableMissingKeyword) {
email = emailLoaded
checkContactInformation()
}
mainTitle?.let { mainTitle?.let {
mainTitle.post { mainTitle.post {
mainTitle.text = json.getAttributeContentByPath("description/title") val title = json.getAttributeContentByPath("description/title")
if (title != GeneralVariables.variableMissingKeyword) {
mainTitle.text = title
}
} }
} }
mainDescription?.let { mainDescription?.let {
mainDescription.post { mainDescription.post {
this.mainDescription.text = json.getAttributeContentByPath("description/description_s") val description = json.getAttributeContentByPath("description/description_l")
if (description != GeneralVariables.variableMissingKeyword) {
mainDescription.text = description
}
} }
} }
@ -99,10 +152,11 @@ class infoFragment : Fragment(R.layout.fragment_info) {
val fileInfo = JsonManagerLite(json.getAttributeContentByPath("files/$n"), "JSONObject") val fileInfo = JsonManagerLite(json.getAttributeContentByPath("files/$n"), "JSONObject")
val filetype = fileInfo.getAttributeContentByPath("format").split(".")[1] val filetype = fileInfo.getAttributeContentByPath("format").split(".")[1]
val filename = fileInfo.getAttributeContentByPath("name") val filename = fileInfo.getAttributeContentByPath("name")
val fileDescription = fileInfo.getAttributeContent("description")
// handling text // handling text
if ("txt json".contains(filetype)) { if ("txt json".contains(filetype)) {
val fileView = FileView(filetype, filename, "$serverId|||||$filename.$filetype") val fileView = FileView(filetype, filename, fileDescription, "$serverId|||||$filename.$filetype")
if (!FileViewsSupplier.checkIfContains(fileView)) { if (!FileViewsSupplier.checkIfContains(fileView)) {
FileViewsSupplier.appendFileView(fileView) FileViewsSupplier.appendFileView(fileView)
updateFileViewsRecyclerView() updateFileViewsRecyclerView()
@ -111,7 +165,7 @@ class infoFragment : Fragment(R.layout.fragment_info) {
// handling images // handling images
if ("jpg png".contains(filetype)) { if ("jpg png".contains(filetype)) {
val fileView = FileView(filetype, filename, null, "$serverId|||||$filename.$filetype") val fileView = FileView(filetype, filename, fileDescription, null, "$serverId|||||$filename.$filetype")
if (!FileViewsSupplier.checkIfContains(fileView)) { if (!FileViewsSupplier.checkIfContains(fileView)) {
FileViewsSupplier.appendFileView(fileView) FileViewsSupplier.appendFileView(fileView)
updateFileViewsRecyclerView() updateFileViewsRecyclerView()
@ -120,7 +174,7 @@ class infoFragment : Fragment(R.layout.fragment_info) {
// handling pdf files // handling pdf files
if ("pdf".contains(filetype)) { if ("pdf".contains(filetype)) {
val fileView = FileView(filetype, filename, null, null, "${ServerManagement.baseUrl}files/$serverId/$filename.$filetype") val fileView = FileView(filetype, filename, fileDescription, null, null, "${ServerManagement.baseUrl}files/$serverId/$filename.$filetype")
if (!FileViewsSupplier.checkIfContains(fileView)) { if (!FileViewsSupplier.checkIfContains(fileView)) {
FileViewsSupplier.appendFileView(fileView) FileViewsSupplier.appendFileView(fileView)
updateFileViewsRecyclerView() updateFileViewsRecyclerView()
@ -132,7 +186,7 @@ class infoFragment : Fragment(R.layout.fragment_info) {
} }
} }
val sensorsDataReceiver: (String) -> Unit = {data: String -> val sensorsDataReceiver: (String) -> Unit = { data: String ->
try { try {
context?.let { context?.let {
val json = JsonManager(requireContext(), data, "JSONObject") val json = JsonManager(requireContext(), data, "JSONObject")
@ -155,12 +209,54 @@ class infoFragment : Fragment(R.layout.fragment_info) {
} }
context?.let { context?.let {
ServerManagement.serverManager.getData(dataReceiver, requireContext(), serverId, "", "GET_WHOLE_ARRAY") ServerManagement.serverManager.getData(dataReceiver, requireContext(), serverId, "", "GET_WHOLE_ARRAY", 3)
ServerManagement.serverManager.addReceiverConnection(sensorsDataReceiver, requireContext(), "infoFragmentSensorsConnection", ServerManagement.serverManager.addReceiverConnection(sensorsDataReceiver, requireContext(), "infoFragmentSensorsConnection",
serverId, ServerManagement.sensors_keyword) serverId, ServerManagement.sensors_keyword)
} }
} }
private fun getContactInfoFromGeneralVariables(numberOfAttempts: Int = 8) {
class RetrieveContactInfoFromGeneralVariables(val attemptsCount: Int): Runnable {
override fun run() {
for (i in 0 until attemptsCount) {
phoneNumber = GeneralVariables.phoneNumber
email = GeneralVariables.email
if (phoneNumber != null) {
checkContactInformation()
break
}
if (email != null) {
checkContactInformation()
break
}
Thread.sleep(300)
}
}
}
val retrieveContactInfoFromGeneralVariables = Thread(RetrieveContactInfoFromGeneralVariables(numberOfAttempts))
retrieveContactInfoFromGeneralVariables.start()
}
private fun checkContactInformation() {
phoneNumber?.let {
try {
phoneBtn.post {
phoneBtn.visibility = View.VISIBLE
}
} catch (e: Throwable) { println("[debug] Exception in checkContactInformation: $e") }
}
email?.let {
try {
emailBtn.post {
emailBtn.visibility = View.VISIBLE
}
} catch (e: Throwable) { println("[debug] Exception in checkContactInformation: $e") }
}
}
override fun onPause() { override fun onPause() {
ServerManagement.serverManager.deleteConnection("infoFragmentSensorsConnection") ServerManagement.serverManager.deleteConnection("infoFragmentSensorsConnection")
super.onPause() super.onPause()

@ -8,28 +8,7 @@ import com.example.wikispot.modelClasses.JsonManagerLite
import com.example.wikispot.saveString import com.example.wikispot.saveString
import org.json.JSONArray import org.json.JSONArray
data class PlacePreview(var title: String, var description: String, var location: String? = null, var img: Bitmap? = null, val id: Int?=null) { data class PlacePreview(var title: String, var description: String, var location: String? = null, var img: Bitmap? = null, val id: Int?=null)
init {
val words = description.split(" ", "\n")
description = ""
var lastLine = ""
for (word in words) {
if (lastLine.length + word.length < 25) {
if (lastLine != "") {
lastLine += " "
description += " "
}
lastLine += word
description += word
} else {
description += "\n$word"
lastLine = word
}
}
}
}
object PlaceSupplier { object PlaceSupplier {

@ -1,6 +1,7 @@
package com.example.wikispot.modelsForAdapters package com.example.wikispot.modelsForAdapters
data class FileView(val filetype: String, val filename: String, var textInfo: String? = null, var imgInfo: String? = null, var pdfUrl: String? = null) data class FileView(val filetype: String, val filename: String, val fileDescription: String,
var textInfo: String? = null, var imgInfo: String? = null, var pdfUrl: String? = null)
object FileViewsSupplier { object FileViewsSupplier {

@ -34,9 +34,14 @@ object MessagesSupplier {
val array = messages.copyOf(messages.size + 1) val array = messages.copyOf(messages.size + 1)
array[messages.size] = message array[messages.size] = message
messages = array messages = array
if (messages.size > GeneralVariables.max_amount_of_saved_messages) {
deleteMessageByIndex(0)
println(messages.size)
}
} }
fun deleteMessageByIndex(i: Int) { private fun deleteMessageByIndex(i: Int) {
messages = messages.copyOfRange(0, i) + messages.copyOfRange(i + 1, messages.size) messages = messages.copyOfRange(0, i) + messages.copyOfRange(i + 1, messages.size)
} }

@ -12,6 +12,10 @@ object GeneralVariables {
var id: String? = null var id: String? = null
var name: String? = null var name: String? = null
var email:String? = null
var phoneNumber: Int? = null
const val max_amount_of_saved_messages = 32
const val variableMissingKeyword = "_[{(V,a,r,i,a,b,l,e, ,m,i,s,s,i,n,g)}]_" const val variableMissingKeyword = "_[{(V,a,r,i,a,b,l,e, ,m,i,s,s,i,n,g)}]_"
} }
@ -38,10 +42,6 @@ object ServerManagement {
var totalNumberOfRequestsSent = 0 var totalNumberOfRequestsSent = 0
} }
object ChatManagement {
var lastNames = JSONArray()
const val numberOfNamesToCache = 4
}
object MapManagement { object MapManagement {
var connectedServerPosition: LatLng? = LatLng(0.toDouble(), 0.toDouble()) var connectedServerPosition: LatLng? = LatLng(0.toDouble(), 0.toDouble())

@ -0,0 +1,10 @@
<vector xmlns:android="http://schemas.android.com/apk/res/android"
android:width="24dp"
android:height="24dp"
android:viewportWidth="24"
android:viewportHeight="24"
android:tint="?attr/generalIconsColor">
<path
android:fillColor="@android:color/white"
android:pathData="M20,4L4,4c-1.1,0 -1.99,0.9 -1.99,2L2,18c0,1.1 0.9,2 2,2h16c1.1,0 2,-0.9 2,-2L22,6c0,-1.1 -0.9,-2 -2,-2zM20,8l-8,5 -8,-5L4,6l8,5 8,-5v2z"/>
</vector>

@ -0,0 +1,10 @@
<vector xmlns:android="http://schemas.android.com/apk/res/android"
android:width="24dp"
android:height="24dp"
android:viewportWidth="24"
android:viewportHeight="24"
android:tint="?attr/generalIconsColor">
<path
android:fillColor="@android:color/white"
android:pathData="M6.62,10.79c1.44,2.83 3.76,5.14 6.59,6.59l2.2,-2.2c0.27,-0.27 0.67,-0.36 1.02,-0.24 1.12,0.37 2.33,0.57 3.57,0.57 0.55,0 1,0.45 1,1V20c0,0.55 -0.45,1 -1,1 -9.39,0 -17,-7.61 -17,-17 0,-0.55 0.45,-1 1,-1h3.5c0.55,0 1,0.45 1,1 0,1.25 0.2,2.45 0.57,3.57 0.11,0.35 0.03,0.74 -0.25,1.02l-2.2,2.2z"/>
</vector>

@ -39,15 +39,17 @@
<TextView <TextView
android:id="@+id/item_description" android:id="@+id/item_description"
android:layout_width="wrap_content" android:layout_width="0dp"
android:layout_height="wrap_content" android:layout_height="wrap_content"
android:textColor="?attr/generalTextColor" android:layout_marginStart="16dp"
tools:text="Description" android:layout_marginEnd="16dp"
android:textColor="?attr/secondaryTextColor"
card_view:layout_constraintBottom_toBottomOf="parent" card_view:layout_constraintBottom_toBottomOf="parent"
card_view:layout_constraintEnd_toStartOf="@+id/item_location_img" card_view:layout_constraintEnd_toStartOf="@+id/item_location_img"
card_view:layout_constraintHorizontal_bias="0.15" card_view:layout_constraintHorizontal_bias="0.15"
card_view:layout_constraintStart_toEndOf="@+id/item_img" card_view:layout_constraintStart_toEndOf="@+id/item_img"
card_view:layout_constraintTop_toBottomOf="@+id/item_title" /> card_view:layout_constraintTop_toBottomOf="@+id/item_title"
tools:text="Description" />
<ImageView <ImageView
android:id="@+id/item_location_img" android:id="@+id/item_location_img"

@ -18,14 +18,14 @@
android:padding="4dp"> android:padding="4dp">
<TextView <TextView
android:id="@+id/filename_text" android:id="@+id/filenameText"
android:layout_width="wrap_content" android:layout_width="wrap_content"
android:layout_height="wrap_content" android:layout_height="wrap_content"
android:layout_marginStart="32dp" android:layout_marginStart="28dp"
android:layout_marginTop="36dp" android:layout_marginTop="16dp"
android:textColor="?attr/generalTextColor"
android:textSize="24sp" android:textSize="24sp"
android:textStyle="bold" android:textStyle="bold"
android:textColor="?attr/generalTextColor"
card_view:layout_constraintStart_toStartOf="parent" card_view:layout_constraintStart_toStartOf="parent"
card_view:layout_constraintTop_toTopOf="parent" card_view:layout_constraintTop_toTopOf="parent"
tools:text="Filename" /> tools:text="Filename" />
@ -46,13 +46,14 @@
android:id="@+id/textContent" android:id="@+id/textContent"
android:layout_width="wrap_content" android:layout_width="wrap_content"
android:layout_height="wrap_content" android:layout_height="wrap_content"
android:layout_marginTop="32dp" android:layout_marginTop="52dp"
android:textColor="?attr/secondaryTextColor"
android:textSize="0sp" android:textSize="0sp"
card_view:layout_constraintBottom_toTopOf="@+id/imageContent" card_view:layout_constraintBottom_toTopOf="@+id/imageContent"
card_view:layout_constraintEnd_toEndOf="parent" card_view:layout_constraintEnd_toEndOf="parent"
card_view:layout_constraintHorizontal_bias="0.497" card_view:layout_constraintHorizontal_bias="0.497"
card_view:layout_constraintStart_toStartOf="parent" card_view:layout_constraintStart_toStartOf="parent"
card_view:layout_constraintTop_toBottomOf="@+id/filename_text" card_view:layout_constraintTop_toBottomOf="@+id/filenameText"
tools:ignore="SmallSp" /> tools:ignore="SmallSp" />
<ImageView <ImageView
@ -63,7 +64,7 @@
card_view:layout_constraintBottom_toTopOf="@+id/pdfContent" card_view:layout_constraintBottom_toTopOf="@+id/pdfContent"
card_view:layout_constraintEnd_toEndOf="parent" card_view:layout_constraintEnd_toEndOf="parent"
card_view:layout_constraintHorizontal_bias="0.5" card_view:layout_constraintHorizontal_bias="0.5"
card_view:layout_constraintStart_toEndOf="@+id/filename_text" card_view:layout_constraintStart_toEndOf="@+id/filenameText"
card_view:layout_constraintStart_toStartOf="parent" card_view:layout_constraintStart_toStartOf="parent"
card_view:srcCompat="@drawable/blank" /> card_view:srcCompat="@drawable/blank" />
@ -89,6 +90,18 @@
card_view:layout_constraintTop_toTopOf="@+id/showFileBtn" card_view:layout_constraintTop_toTopOf="@+id/showFileBtn"
card_view:srcCompat="@drawable/ic_baseline_download_24" /> card_view:srcCompat="@drawable/ic_baseline_download_24" />
<TextView
android:id="@+id/fileDescription"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_marginTop="16dp"
android:layout_marginEnd="16dp"
android:textColor="@color/secondaryTextColor"
card_view:layout_constraintEnd_toStartOf="@+id/showFileBtn"
card_view:layout_constraintStart_toStartOf="@+id/filenameText"
card_view:layout_constraintTop_toBottomOf="@+id/filenameText"
tools:text="file_description" />
</androidx.constraintlayout.widget.ConstraintLayout> </androidx.constraintlayout.widget.ConstraintLayout>
</androidx.cardview.widget.CardView> </androidx.cardview.widget.CardView>

@ -4,7 +4,7 @@
xmlns:tools="http://schemas.android.com/tools" xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent" android:layout_width="match_parent"
android:layout_height="match_parent" android:layout_height="match_parent"
android:background="?attr/debugFragmentBackround" android:background="?attr/debugFragmentBackground"
tools:context=".fragments.anotherDebugFragment"> tools:context=".fragments.anotherDebugFragment">
<TextView <TextView

@ -13,14 +13,14 @@
android:layout_width="match_parent" android:layout_width="match_parent"
android:layout_height="0dp" android:layout_height="0dp"
android:layout_margin="16dp" android:layout_margin="16dp"
app:layout_constraintBottom_toTopOf="@+id/constraintLayout" app:layout_constraintBottom_toTopOf="@+id/writeBar"
app:layout_constraintEnd_toEndOf="parent" app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintHorizontal_bias="0.5" app:layout_constraintHorizontal_bias="0.5"
app:layout_constraintStart_toStartOf="parent" app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toTopOf="parent" /> app:layout_constraintTop_toTopOf="parent" />
<androidx.constraintlayout.widget.ConstraintLayout <androidx.constraintlayout.widget.ConstraintLayout
android:id="@+id/constraintLayout" android:id="@+id/writeBar"
android:layout_width="match_parent" android:layout_width="match_parent"
android:layout_height="wrap_content" android:layout_height="wrap_content"
android:layout_margin="16dp" android:layout_margin="16dp"

@ -4,7 +4,7 @@
xmlns:tools="http://schemas.android.com/tools" xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent" android:layout_width="match_parent"
android:layout_height="match_parent" android:layout_height="match_parent"
android:background="?attr/debugFragmentBackround" android:background="?attr/debugFragmentBackground"
tools:context=".fragments.debugFragment"> tools:context=".fragments.debugFragment">
<Button <Button

@ -11,7 +11,7 @@
<androidx.constraintlayout.widget.ConstraintLayout <androidx.constraintlayout.widget.ConstraintLayout
android:layout_width="match_parent" android:layout_width="match_parent"
android:layout_height="wrap_content"> android:layout_height="match_parent">
<TextView <TextView
android:id="@+id/home_title" android:id="@+id/home_title"
@ -27,7 +27,7 @@
app:layout_constraintEnd_toEndOf="parent" app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintHorizontal_bias="0.5" app:layout_constraintHorizontal_bias="0.5"
app:layout_constraintStart_toStartOf="parent" app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toTopOf="parent"/> app:layout_constraintTop_toTopOf="parent" />
<androidx.fragment.app.FragmentContainerView <androidx.fragment.app.FragmentContainerView
android:id="@+id/homeFragmentInnerFragment" android:id="@+id/homeFragmentInnerFragment"

@ -48,11 +48,15 @@
android:id="@+id/mainDescription" android:id="@+id/mainDescription"
android:layout_width="match_parent" android:layout_width="match_parent"
android:layout_height="wrap_content" android:layout_height="wrap_content"
android:layout_marginStart="8dp"
android:layout_marginTop="32dp" android:layout_marginTop="32dp"
android:layout_marginEnd="8dp"
android:layout_marginBottom="16dp"
android:text="" android:text=""
android:textAlignment="center" android:textAlignment="center"
android:textColor="?attr/secondaryTextColor"
android:textSize="18sp" android:textSize="18sp"
android:textColor="?attr/generalTextColor" app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintEnd_toEndOf="parent" app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintHorizontal_bias="0.5" app:layout_constraintHorizontal_bias="0.5"
app:layout_constraintStart_toStartOf="parent" app:layout_constraintStart_toStartOf="parent"
@ -101,13 +105,36 @@
android:id="@+id/locationBtn" android:id="@+id/locationBtn"
android:layout_width="wrap_content" android:layout_width="wrap_content"
android:layout_height="wrap_content" android:layout_height="wrap_content"
android:layout_marginTop="32dp" android:layout_marginTop="16dp"
android:layout_marginBottom="32dp" android:layout_marginBottom="16dp"
android:src="@drawable/loacation_vector_asset" android:src="@drawable/loacation_vector_asset"
app:layout_constraintBottom_toBottomOf="parent" app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintEnd_toEndOf="parent" app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintHorizontal_bias="0.5"
app:layout_constraintStart_toStartOf="parent" app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toTopOf="parent" /> app:layout_constraintTop_toTopOf="parent" />
<ImageView
android:id="@+id/phoneBtn"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginStart="32dp"
android:src="@drawable/ic_baseline_phone_24"
android:visibility="gone"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toTopOf="parent" />
<ImageView
android:id="@+id/emailBtn"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginEnd="32dp"
android:src="@drawable/ic_baseline_email_24"
android:visibility="gone"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintTop_toTopOf="parent" />
</androidx.constraintlayout.widget.ConstraintLayout> </androidx.constraintlayout.widget.ConstraintLayout>
</LinearLayout> </LinearLayout>

@ -90,7 +90,7 @@
android:label="fragment_info" android:label="fragment_info"
tools:layout="@layout/fragment_info" > tools:layout="@layout/fragment_info" >
<argument <argument
android:name="loadAutomatically" android:name="executeLoadFuntion"
app:argType="boolean" app:argType="boolean"
android:defaultValue="false" /> android:defaultValue="false" />
<action <action

@ -8,22 +8,4 @@
<string name="settings">Einstellungen</string> <string name="settings">Einstellungen</string>
<string name="files">Dateien</string> <string name="files">Dateien</string>
<string name="dark_theme">Dunkles Thema</string> <string name="dark_theme">Dunkles Thema</string>
<string name="get_number_of_sent_requests">Get number of sent requests</string>
<string name="_2">2/2</string>
<string name="output">Output</string>
<string name="change_url">Change Url</string>
<string name="name" translatable="false">Name</string>
<string name="clear_server_connections" translatable="false">Clear server connections</string>
<string name="restart_app_partially" translatable="false">Restart app partially</string>
<string name="debug_fragment" translatable="false">Debug page 1/2</string>
<string name="close_app" translatable="false">Close app</string>
<string name="another_debug_fragment" translatable="false">Debug page 2/2</string>
<string name="_1" translatable="false">1/2</string>
<string name="generate_and_save_data" translatable="false">Generate and save data</string>
<string name="load_and_show_data" translatable="false">Load and Show data</string>
<string name="data_content" translatable="false">Data content</string>
<string name="attribute_path" translatable="false">Atributes path</string>
<string name="create_view_connection" translatable="false">Create test Connection</string>
<string name="stop_connection" translatable="false">Stop test Connection</string>
<string name="file_path" translatable="false">File path</string>
</resources> </resources>

@ -8,22 +8,4 @@
<string name="settings">Ajustes</string> <string name="settings">Ajustes</string>
<string name="files">Archivos</string> <string name="files">Archivos</string>
<string name="dark_theme">Tema oscuro</string> <string name="dark_theme">Tema oscuro</string>
<string name="get_number_of_sent_requests">Get number of sent requests</string>
<string name="_2">2/2</string>
<string name="output">output</string>
<string name="name" translatable="false">Name</string>
<string name="clear_server_connections" translatable="false">Clear server connections</string>
<string name="restart_app_partially" translatable="false">Restart app partially</string>
<string name="debug_fragment" translatable="false">Debug page 1/2</string>
<string name="close_app" translatable="false">Close app</string>
<string name="another_debug_fragment" translatable="false">Debug page 2/2</string>
<string name="_1" translatable="false">1/2</string>
<string name="generate_and_save_data" translatable="false">Generate and save data</string>
<string name="load_and_show_data" translatable="false">Load and Show data</string>
<string name="data_content" translatable="false">Data content</string>
<string name="attribute_path" translatable="false">Atributes path</string>
<string name="create_view_connection" translatable="false">Create test Connection</string>
<string name="stop_connection" translatable="false">Stop test Connection</string>
<string name="file_path" translatable="false">File path</string>
<string name="change_url">Change Url</string>
</resources> </resources>

@ -8,22 +8,4 @@
<string name="home">Domicile</string> <string name="home">Domicile</string>
<string name="explore">Explorer</string> <string name="explore">Explorer</string>
<string name="chat">Discuter</string> <string name="chat">Discuter</string>
<string name="get_number_of_sent_requests">Get number of sent requests</string>
<string name="_2">2/2</string>
<string name="output">Output</string>
<string name="change_url">Change Url</string>
<string name="name" translatable="false">Name</string>
<string name="clear_server_connections" translatable="false">Clear server connections</string>
<string name="restart_app_partially" translatable="false">Restart app partially</string>
<string name="debug_fragment" translatable="false">Debug page 1/2</string>
<string name="close_app" translatable="false">Close app</string>
<string name="another_debug_fragment" translatable="false">Debug page 2/2</string>
<string name="_1" translatable="false">1/2</string>
<string name="generate_and_save_data" translatable="false">Generate and save data</string>
<string name="load_and_show_data" translatable="false">Load and Show data</string>
<string name="data_content" translatable="false">Data content</string>
<string name="attribute_path" translatable="false">Atributes path</string>
<string name="create_view_connection" translatable="false">Create test Connection</string>
<string name="stop_connection" translatable="false">Stop test Connection</string>
<string name="file_path" translatable="false">File path</string>
</resources> </resources>

@ -8,22 +8,4 @@
<string name="files">ファイル</string> <string name="files">ファイル</string>
<string name="settings">設定</string> <string name="settings">設定</string>
<string name="dark_theme">暗いテーマ</string> <string name="dark_theme">暗いテーマ</string>
<string name="get_number_of_sent_requests">Get number of sent requests</string>
<string name="_2">2/2</string>
<string name="output">Output</string>
<string name="change_url">Change Url</string>
<string name="_1" translatable="false">1/2</string>
<string name="generate_and_save_data" translatable="false">Generate and save data</string>
<string name="load_and_show_data" translatable="false">Load and Show data</string>
<string name="data_content" translatable="false">Data content</string>
<string name="attribute_path" translatable="false">Atributes path</string>
<string name="create_view_connection" translatable="false">Create test Connection</string>
<string name="stop_connection" translatable="false">Stop test Connection</string>
<string name="file_path" translatable="false">File path</string>
<string name="name" translatable="false">Name</string>
<string name="clear_server_connections" translatable="false">Clear server connections</string>
<string name="restart_app_partially" translatable="false">Restart app partially</string>
<string name="debug_fragment" translatable="false">Debug page 1/2</string>
<string name="close_app" translatable="false">Close app</string>
<string name="another_debug_fragment" translatable="false">Debug page 2/2</string>
</resources> </resources>

@ -8,22 +8,4 @@
<string name="home">дом</string> <string name="home">дом</string>
<string name="explore">просматривать</string> <string name="explore">просматривать</string>
<string name="chat">чат</string> <string name="chat">чат</string>
<string name="get_number_of_sent_requests">Get number of sent requests</string>
<string name="_2">2/2</string>
<string name="output">Output</string>
<string name="name" translatable="false">Name</string>
<string name="clear_server_connections" translatable="false">Clear server connections</string>
<string name="debug_fragment" translatable="false">Debug page 1/2</string>
<string name="restart_app_partially" translatable="false">Restart app partially</string>
<string name="close_app" translatable="false">Close app</string>
<string name="another_debug_fragment" translatable="false">Debug page 2/2</string>
<string name="_1" translatable="false">1/2</string>
<string name="generate_and_save_data" translatable="false">Generate and save data</string>
<string name="load_and_show_data" translatable="false">Load and Show data</string>
<string name="data_content" translatable="false">Data content</string>
<string name="attribute_path" translatable="false">Atributes path</string>
<string name="create_view_connection" translatable="false">Create test Connection</string>
<string name="stop_connection" translatable="false">Stop test Connection</string>
<string name="file_path" translatable="false">File path</string>
<string name="change_url">Change Url</string>
</resources> </resources>

@ -8,6 +8,8 @@
<string name="settings">Nastavenia</string> <string name="settings">Nastavenia</string>
<string name="files">Súbory</string> <string name="files">Súbory</string>
<string name="dark_theme">Tmavá téma</string> <string name="dark_theme">Tmavá téma</string>
<string name="get_number_of_sent_requests">Získať počet poslaných requestov</string> <string name="get_number_of_sent_requests">Získať počet poslaných requestov</string>
<string name="_2">2/2</string> <string name="_2">2/2</string>
<string name="output">Výstup</string> <string name="output">Výstup</string>

@ -8,22 +8,4 @@
<string name="settings">设定值</string> <string name="settings">设定值</string>
<string name="files">档案文件</string> <string name="files">档案文件</string>
<string name="dark_theme">黑暗主题</string> <string name="dark_theme">黑暗主题</string>
<string name="get_number_of_sent_requests">Get number of sent requests</string>
<string name="_2">2/2</string>
<string name="output">Output</string>
<string name="change_url">Change Url</string>
<string name="name" translatable="false">Name</string>
<string name="clear_server_connections" translatable="false">Clear server connections</string>
<string name="restart_app_partially" translatable="false">Restart app partially</string>
<string name="debug_fragment" translatable="false">Debug page 1/2</string>
<string name="close_app" translatable="false">Close app</string>
<string name="another_debug_fragment" translatable="false">Debug page 2/2</string>
<string name="_1" translatable="false">1/2</string>
<string name="generate_and_save_data" translatable="false">Generate and save data</string>
<string name="load_and_show_data" translatable="false">Load and Show data</string>
<string name="data_content" translatable="false">Data content</string>
<string name="attribute_path" translatable="false">Atributes path</string>
<string name="create_view_connection" translatable="false">Create test Connection</string>
<string name="stop_connection" translatable="false">Stop test Connection</string>
<string name="file_path" translatable="false">File path</string>
</resources> </resources>

@ -6,6 +6,7 @@
<attr name="textOnTextBgColor" format="color" /> <attr name="textOnTextBgColor" format="color" />
<attr name="generalIconsColor" format="color" /> <attr name="generalIconsColor" format="color" />
<attr name="generalTextColor" format="color" /> <attr name="generalTextColor" format="color" />
<attr name="secondaryTextColor" format="color" />
<!-- For Backgrounds --> <!-- For Backgrounds -->
@ -38,7 +39,7 @@
<attr name="infoFragmentGradientCenterColor" format="color"/> <attr name="infoFragmentGradientCenterColor" format="color"/>
<attr name="infoFragmentGradientEndColor" format="color"/> <attr name="infoFragmentGradientEndColor" format="color"/>
<attr name="debugFragmentBackround" format="color"/> <attr name="debugFragmentBackground" format="color"/>
<attr name="contrastingGradientStartColor" format="color"/> <attr name="contrastingGradientStartColor" format="color"/>
<attr name="contrastingGradientCenterColor" format="color"/> <attr name="contrastingGradientCenterColor" format="color"/>

@ -4,57 +4,58 @@
<color name="white">#FFFFFFFF</color> <color name="white">#FFFFFFFF</color>
<!-- Light Theme --> <!-- Light Theme -->
<color name="primary">#A6BFFF</color> <color name="primary">#4CAF50</color>
<color name="primaryVariant">#6994FF</color> <color name="primaryVariant">#388E3C</color>
<color name="onPrimary">@color/white</color> <color name="onPrimary">@color/white</color>
<color name="secondary">#321EE9</color> <color name="secondary">#E91E63</color>
<color name="secondaryVariant">#F48FB1</color> <color name="secondaryVariant">#F48FB1</color>
<color name="onSecondary">@color/black</color> <color name="onSecondary">@color/black</color>
<color name="textOnTextBgColor">#fff</color> <color name="textOnTextBgColor">#fff</color>
<color name="generalIconsColor">#CC000000</color> <color name="generalIconsColor">#89000000</color>
<color name="generalTextColor">#CC000000</color> <color name="generalTextColor">#89000000</color>
<color name="secondaryTextColor">#96262626</color>
<color name="bottomNavBarCheckedItemColor">#EC1D5CFD</color> <color name="bottomNavBarCheckedItemColor">#ECD21A1A</color>
<color name="bottomNavBarItemColor">#EC5B89FF</color> <color name="bottomNavBarItemColor">#320747</color>
<color name="bottomNavBarRippleColor">#7D8DC1</color> <color name="bottomNavBarRippleColor">#33C4BCC9</color>
<color name="statusBarColor">#83E1FF</color> <color name="statusBarColor">#EC000000</color>
<color name="textBackgroundGradientStartColor" >#BF74DDFF</color> <color name="textBackgroundGradientStartColor" >#80E5BEFF</color>
<color name="textBackgroundGradientEndColor" >#BF7DE0FF</color> <color name="textBackgroundGradientEndColor" >#80FFB5F0</color>
<color name="bottomNavBarGradientStartColor" >#EDEDED</color> <color name="bottomNavBarGradientStartColor" >#FCDD94</color>
<color name="bottomNavBarGradientEndColor" >#F6F6F6</color> <color name="bottomNavBarGradientEndColor" >#C5F8AB</color>
<color name="chatFragmentGradientStartColor" >#FCB0EF</color>
<color name="chatFragmentGradientCenterColor" >#9ECFFF</color>
<color name="chatFragmentGradientEndColor" >#9FE7FF</color>
<color name="chatFragmentBgStrokeColor" >#7FFFFFFF</color>
<color name="chatFragmentWriteBarBgColor">#FFF</color>
<color name="exploreFragmentGradientStartColor" >#A1DEFC</color>
<color name="exploreFragmentGradientCenterColor" >#A5CBFF</color>
<color name="exploreFragmentGradientEndColor" >#F9B6F6</color>
<color name="exploreFragmentListItemBackgroundColor">#fff</color>
<color name="homeFragmentGradientStartColor" >#83E1FF</color>
<color name="homeFragmentGradientCenterColor" >#9EC6FF</color>
<color name="homeFragmentGradientEndColor" >#FEBBFF</color>
<color name="settingsFragmentGradientStartColor" >#92EB97FC</color>
<color name="settingsFragmentGradientCenterColor" >#A198F9</color>
<color name="settingsFragmentGradientEndColor" >#74C7F7</color>
<color name="infoFragmentGradientStartColor" >#FFB6FB</color>
<color name="infoFragmentGradientCenterColor" >#A7D2FF</color>
<color name="infoFragmentGradientEndColor" >#96E7FF</color>
<color name="debugFragmentBg">#FF7272</color> <color name="debugFragmentBg">#FF7272</color>
<color name="chatFragmentGradientStartColor" >#83E1FF</color> <color name="contrastingGradientStartColor">#C4FFA5</color>
<color name="chatFragmentGradientCenterColor" >#4ED4FF</color> <color name="contrastingGradientCenterColor">#D1FBA0</color>
<color name="chatFragmentGradientEndColor" >#83E1FF</color> <color name="contrastingGradientEndColor">#F6FEBA</color>
<color name="chatFragmentBgStrokeColor" >#CB4DD4FF</color>
<color name="chatFragmentWriteBarBgColor">#43FFFFFF</color>
<color name="exploreFragmentGradientStartColor" >#83E1FF</color>
<color name="exploreFragmentGradientCenterColor" >#4ED4FF</color>
<color name="exploreFragmentGradientEndColor" >#83E1FF</color>
<color name="exploreFragmentListItemBackgroundColor">#FDFDFD</color>
<color name="homeFragmentGradientStartColor" >#7BDFFF</color>
<color name="homeFragmentGradientCenterColor" >#4ED4FF</color>
<color name="homeFragmentGradientEndColor" >#7BDFFF</color>
<color name="settingsFragmentGradientStartColor" >#83E1FF</color>
<color name="settingsFragmentGradientCenterColor" >#4ED4FF</color>
<color name="settingsFragmentGradientEndColor" >#83E1FF</color>
<color name="infoFragmentGradientStartColor" >#83E1FF</color>
<color name="infoFragmentGradientCenterColor" >#4ED4FF</color>
<color name="infoFragmentGradientEndColor" >#83E1FF</color>
<color name="contrastingGradientStartColor">#63D9FF</color>
<color name="contrastingGradientCenterColor">#44D2FF</color>
<color name="contrastingGradientEndColor">#59D7FF</color>
<!-- Dark Theme --> <!-- Dark Theme -->
<color name="primaryDark">#000F9E</color> <color name="primaryDark">#000F9E</color>
@ -68,6 +69,7 @@
<color name="textOnTextBgColorDark">#E3E3E3</color> <color name="textOnTextBgColorDark">#E3E3E3</color>
<color name="generalIconsColorDark">#CCC5C5C5</color> <color name="generalIconsColorDark">#CCC5C5C5</color>
<color name="generalTextColorDark">#D6D6D6</color> <color name="generalTextColorDark">#D6D6D6</color>
<color name="secondaryTextColorDark">#EFFFFFFF</color>
<color name="bottomNavBarCheckedItemColorDark">#003898</color> <color name="bottomNavBarCheckedItemColorDark">#003898</color>
<color name="bottomNavBarItemColorDark">#003DAC</color> <color name="bottomNavBarItemColorDark">#003DAC</color>
@ -109,4 +111,114 @@
<color name="contrastingGradientCenterColorDark">#0E275C</color> <color name="contrastingGradientCenterColorDark">#0E275C</color>
<color name="contrastingGradientEndColorDark">#132855</color> <color name="contrastingGradientEndColorDark">#132855</color>
</resources> </resources>
<!-- Light Theme --> <!--
<color name="primary">#A6BFFF</color>
<color name="primaryVariant">#6994FF</color>
<color name="onPrimary">@color/white</color>
<color name="secondary">#321EE9</color>
<color name="secondaryVariant">#F48FB1</color>
<color name="onSecondary">@color/black</color>
<color name="textOnTextBgColor">#fff</color>
<color name="generalIconsColor">#CC000000</color>
<color name="generalTextColor">#CC000000</color>
<color name="bottomNavBarCheckedItemColor">#EC1D5CFD</color>
<color name="bottomNavBarItemColor">#EC5B89FF</color>
<color name="bottomNavBarRippleColor">#7D8DC1</color>
<color name="statusBarColor">#83E1FF</color>
<color name="textBackgroundGradientStartColor" >#BF74DDFF</color>
<color name="textBackgroundGradientEndColor" >#BF7DE0FF</color>
<color name="bottomNavBarGradientStartColor" >#EDEDED</color>
<color name="bottomNavBarGradientEndColor" >#F6F6F6</color>
<color name="debugFragmentBg">#FF7272</color>
<color name="chatFragmentGradientStartColor" >#83E1FF</color>
<color name="chatFragmentGradientCenterColor" >#4ED4FF</color>
<color name="chatFragmentGradientEndColor" >#83E1FF</color>
<color name="chatFragmentBgStrokeColor" >#CB4DD4FF</color>
<color name="chatFragmentWriteBarBgColor">#43FFFFFF</color>
<color name="exploreFragmentGradientStartColor" >#83E1FF</color>
<color name="exploreFragmentGradientCenterColor" >#4ED4FF</color>
<color name="exploreFragmentGradientEndColor" >#83E1FF</color>
<color name="exploreFragmentListItemBackgroundColor">#FDFDFD</color>
<color name="homeFragmentGradientStartColor" >#7BDFFF</color>
<color name="homeFragmentGradientCenterColor" >#4ED4FF</color>
<color name="homeFragmentGradientEndColor" >#7BDFFF</color>
<color name="settingsFragmentGradientStartColor" >#83E1FF</color>
<color name="settingsFragmentGradientCenterColor" >#4ED4FF</color>
<color name="settingsFragmentGradientEndColor" >#83E1FF</color>
<color name="infoFragmentGradientStartColor" >#83E1FF</color>
<color name="infoFragmentGradientCenterColor" >#4ED4FF</color>
<color name="infoFragmentGradientEndColor" >#83E1FF</color>
<color name="contrastingGradientStartColor">#63D9FF</color>
<color name="contrastingGradientCenterColor">#44D2FF</color>
<color name="contrastingGradientEndColor">#59D7FF</color> -->
<!-- Dark Theme --> <!--
<color name="primaryDark">#000F9E</color>
<color name="primaryVariantDark">#000B75</color>
<color name="onPrimaryDark">@color/black</color>
<color name="secondaryDark">#0320DA</color>
<color name="secondaryVariantDark">#3954FF</color>
<color name="onSecondaryDark">@color/black</color>
<color name="textOnTextBgColorDark">#E3E3E3</color>
<color name="generalIconsColorDark">#CCC5C5C5</color>
<color name="generalTextColorDark">#D6D6D6</color>
<color name="secondaryTextColor">#96262626</color>
<color name="bottomNavBarCheckedItemColorDark">#003898</color>
<color name="bottomNavBarItemColorDark">#003DAC</color>
<color name="bottomNavBarRippleColorDark">#091961</color>
<color name="statusBarColorDark">#00143A</color>
<color name="textBackgroundGradientStartColorDark" >#80000C5C</color>
<color name="textBackgroundGradientEndColorDark" >#80001A5C</color>
<color name="bottomNavBarGradientStartColorDark" >#1B1B1B</color>
<color name="bottomNavBarGradientEndColorDark" >#0E0E0E</color>
<color name="debugFragmentBgDark">#5E0000</color>
<color name="chatFragmentGradientStartColorDark" >#00143A</color>
<color name="chatFragmentGradientCenterColorDark" >#001235</color>
<color name="chatFragmentGradientEndColorDark" >#00143A</color>
<color name="chatFragmentBgStrokeColorDark" >#00062C</color>
<color name="chatFragmentWriteBarBgColorDark">#BF1C1C1C</color>
<color name="exploreFragmentGradientStartColorDark" >#00143A</color>
<color name="exploreFragmentGradientCenterColorDark" >#001235</color>
<color name="exploreFragmentGradientEndColorDark" >#00143A</color>
<color name="exploreFragmentListItemBackgroundColorDark">#171717</color>
<color name="homeFragmentGradientStartColorDark" >#00143A</color>
<color name="homeFragmentGradientCenterColorDark" >#001235</color>
<color name="homeFragmentGradientEndColorDark" >#00143A</color>
<color name="settingsFragmentGradientStartColorDark" >#00143A</color>
<color name="settingsFragmentGradientCenterColorDark" >#001235</color>
<color name="settingsFragmentGradientEndColorDark" >#00143A</color>
<color name="infoFragmentGradientStartColorDark" >#001030</color>
<color name="infoFragmentGradientCenterColorDark" >#000D27</color>
<color name="infoFragmentGradientEndColorDark" >#001030</color>
<color name="contrastingGradientStartColorDark">#132855</color>
<color name="contrastingGradientCenterColorDark">#0E275C</color>
<color name="contrastingGradientEndColorDark">#132855</color>
</resources> -->

@ -8,22 +8,22 @@
<string name="files">Files</string> <string name="files">Files</string>
<string name="dark_theme">Dark theme</string> <string name="dark_theme">Dark theme</string>
<string name="get_number_of_sent_requests">Get number of sent requests</string> <string name="get_number_of_sent_requests" translatable="false">Get number of sent requests</string>
<string name="_2">2/2</string> <string name="_2" translatable="false">2/2</string>
<string name="output">Output</string> <string name="output" translatable="false">Output</string>
<string name="change_url">Change Url</string> <string name="change_url" translatable="false">Change Url</string>
<string name="name">Name</string> <string name="name" translatable="false">Name</string>
<string name="clear_server_connections">Clear server connections</string> <string name="clear_server_connections" translatable="false">Clear server connections</string>
<string name="restart_app_partially">Restart app partially</string> <string name="restart_app_partially" translatable="false">Restart app partially</string>
<string name="debug_fragment">Debug page 1/2</string> <string name="debug_fragment" translatable="false">Debug page 1/2</string>
<string name="close_app">Close app</string> <string name="close_app" translatable="false">Close app</string>
<string name="another_debug_fragment">Debug page 2/2</string> <string name="another_debug_fragment" translatable="false">Debug page 2/2</string>
<string name="_1">1/2</string> <string name="_1" translatable="false">1/2</string>
<string name="generate_and_save_data">Generate and save data</string> <string name="generate_and_save_data" translatable="false">Generate and save data</string>
<string name="load_and_show_data">Load and Show data</string> <string name="load_and_show_data" translatable="false">Load and Show data</string>
<string name="data_content">Data content</string> <string name="data_content" translatable="false">Data content</string>
<string name="attribute_path">Atributes path</string> <string name="attribute_path" translatable="false">Atributes path</string>
<string name="create_view_connection">Create test Connection</string> <string name="create_view_connection" translatable="false">Create test Connection</string>
<string name="stop_connection">Stop test Connection</string> <string name="stop_connection" translatable="false">Stop test Connection</string>
<string name="file_path">File path</string> <string name="file_path" translatable="false">File path</string>
</resources> </resources>

@ -16,14 +16,13 @@
<item name="textOnTextBgColor">@color/textOnTextBgColor</item> <item name="textOnTextBgColor">@color/textOnTextBgColor</item>
<item name="generalIconsColor">@color/generalIconsColor</item> <item name="generalIconsColor">@color/generalIconsColor</item>
<item name="generalTextColor">@color/generalTextColor</item> <item name="generalTextColor">@color/generalTextColor</item>
<item name="secondaryTextColor">@color/secondaryTextColor</item>
<!-- For Backgrounds --> <!-- For Backgrounds -->
<item name="textBackgroundGradientStartColor" >@color/textBackgroundGradientStartColor</item> <item name="textBackgroundGradientStartColor" >@color/textBackgroundGradientStartColor</item>
<item name="textBackgroundGradientEndColor" >@color/textBackgroundGradientEndColor</item> <item name="textBackgroundGradientEndColor" >@color/textBackgroundGradientEndColor</item>
<item name="debugFragmentBackround" >@color/debugFragmentBg</item>
<item name="bottomNavBarGradientStartColor" >@color/bottomNavBarGradientStartColor</item> <item name="bottomNavBarGradientStartColor" >@color/bottomNavBarGradientStartColor</item>
<item name="bottomNavBarGradientEndColor" >@color/bottomNavBarGradientEndColor</item> <item name="bottomNavBarGradientEndColor" >@color/bottomNavBarGradientEndColor</item>
@ -50,6 +49,8 @@
<item name="infoFragmentGradientCenterColor" >@color/infoFragmentGradientCenterColor</item> <item name="infoFragmentGradientCenterColor" >@color/infoFragmentGradientCenterColor</item>
<item name="infoFragmentGradientEndColor" >@color/infoFragmentGradientEndColor</item> <item name="infoFragmentGradientEndColor" >@color/infoFragmentGradientEndColor</item>
<item name="debugFragmentBackground" >@color/debugFragmentBg</item>
<item name="contrastingGradientStartColor">@color/contrastingGradientStartColor</item> <item name="contrastingGradientStartColor">@color/contrastingGradientStartColor</item>
<item name="contrastingGradientCenterColor">@color/contrastingGradientCenterColor</item> <item name="contrastingGradientCenterColor">@color/contrastingGradientCenterColor</item>
<item name="contrastingGradientEndColor">@color/contrastingGradientEndColor</item> <item name="contrastingGradientEndColor">@color/contrastingGradientEndColor</item>
@ -62,7 +63,8 @@
<!-- StatusBarColor --> <!-- StatusBarColor -->
<item name="android:statusBarColor" tools:targetApi="l">@color/statusBarColor</item> <item name="android:statusBarColor" tools:targetApi="l">@color/statusBarColor</item>
<item name="android:windowLightStatusBar">true</item>
<item name="android:windowLightStatusBar" tools:targetApi="l">true</item>
</style> </style>
<style name="Widget.App.BottomNavigationView" parent="Widget.MaterialComponents.BottomNavigationView.Colored"> <style name="Widget.App.BottomNavigationView" parent="Widget.MaterialComponents.BottomNavigationView.Colored">
@ -89,6 +91,7 @@
<item name="textOnTextBgColor">@color/textOnTextBgColorDark</item> <item name="textOnTextBgColor">@color/textOnTextBgColorDark</item>
<item name="generalIconsColor">@color/generalIconsColorDark</item> <item name="generalIconsColor">@color/generalIconsColorDark</item>
<item name="generalTextColor">@color/generalTextColorDark</item> <item name="generalTextColor">@color/generalTextColorDark</item>
<item name="secondaryTextColor">@color/secondaryTextColorDark</item>
<!-- For Backgrounds --> <!-- For Backgrounds -->
@ -98,8 +101,6 @@
<item name="bottomNavBarGradientStartColor" >@color/bottomNavBarGradientStartColorDark</item> <item name="bottomNavBarGradientStartColor" >@color/bottomNavBarGradientStartColorDark</item>
<item name="bottomNavBarGradientEndColor" >@color/bottomNavBarGradientEndColorDark</item> <item name="bottomNavBarGradientEndColor" >@color/bottomNavBarGradientEndColorDark</item>
<item name="debugFragmentBackround" >@color/debugFragmentBgDark</item>
<item name="chatFragmentGradientStartColor" >@color/chatFragmentGradientStartColorDark</item> <item name="chatFragmentGradientStartColor" >@color/chatFragmentGradientStartColorDark</item>
<item name="chatFragmentGradientCenterColor" >@color/chatFragmentGradientCenterColorDark</item> <item name="chatFragmentGradientCenterColor" >@color/chatFragmentGradientCenterColorDark</item>
<item name="chatFragmentGradientEndColor" >@color/chatFragmentGradientEndColorDark</item> <item name="chatFragmentGradientEndColor" >@color/chatFragmentGradientEndColorDark</item>
@ -123,6 +124,8 @@
<item name="infoFragmentGradientCenterColor" >@color/infoFragmentGradientCenterColorDark</item> <item name="infoFragmentGradientCenterColor" >@color/infoFragmentGradientCenterColorDark</item>
<item name="infoFragmentGradientEndColor" >@color/infoFragmentGradientEndColorDark</item> <item name="infoFragmentGradientEndColor" >@color/infoFragmentGradientEndColorDark</item>
<item name="debugFragmentBackground" >@color/debugFragmentBgDark</item>
<item name="contrastingGradientStartColor">@color/contrastingGradientStartColorDark</item> <item name="contrastingGradientStartColor">@color/contrastingGradientStartColorDark</item>
<item name="contrastingGradientCenterColor">@color/contrastingGradientCenterColorDark</item> <item name="contrastingGradientCenterColor">@color/contrastingGradientCenterColorDark</item>
<item name="contrastingGradientEndColor">@color/contrastingGradientEndColorDark</item> <item name="contrastingGradientEndColor">@color/contrastingGradientEndColorDark</item>
@ -135,7 +138,9 @@
<!-- StatusBarColor --> <!-- StatusBarColor -->
<item name="android:statusBarColor" tools:targetApi="l">@color/statusBarColorDark</item> <item name="android:statusBarColor" tools:targetApi="l">@color/statusBarColorDark</item>
<item name="android:navigationBarColor">@color/black</item> <item name="android:navigationBarColor">@color/black</item>
<item name="android:windowLightStatusBar" tools:targetApi="l">false</item> <item name="android:windowLightStatusBar" tools:targetApi="l">false</item>
</style> </style>