add project adins

This commit is contained in:
Alfrid Sanjaya Leo Putra 2024-07-25 14:44:22 +07:00
commit f8f85d679d
5299 changed files with 625430 additions and 0 deletions

View file

@ -0,0 +1,56 @@
package com.adins.mss.foundation.questiongenerator.form;
import android.content.Context;
import android.widget.EditText;
import com.adins.mss.foundation.formatter.Tool;
import com.adins.mss.foundation.questiongenerator.QuestionBean;
public class LabelFieldView extends QuestionView {
private EditText lblValue;
private boolean separateThousands;
public LabelFieldView(Context context, QuestionBean bean) {
super(context, bean);
setOrientation(VERTICAL);
lblValue = new EditText(context);
lblValue.setEnabled(false);
// lblValue.setTextColor(Color.BLACK);
addView(lblValue, defLayout);
}
public LabelFieldView(Context context, QuestionBean bean,
String label, boolean separateThousands) {
this(context, bean);
setLabelText(label);
this.separateThousands = separateThousands;
String defAnswer = bean.getAnswer();
if (defAnswer != null && defAnswer.length() > 0) {
setValue(defAnswer);
}
}
public String getValue() {
return lblValue.getText().toString();
}
public void setValue(String value) {
if (separateThousands) {
value = Tool.separateThousand(value);
}
lblValue.setText(value);
}
public void updateValue() {
String value = getQuestionBean().getAnswer();
if (separateThousands) {
value = Tool.separateThousand(value);
}
lblValue.setText(value);
}
}

View file

@ -0,0 +1,31 @@
/*
* Copyright 2013 Chris Banes
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
package uk.co.senab.actionbarpulltorefresh.library.listeners;
import android.view.View;
/**
* Simple Listener to listen for any callbacks to Refresh.
*/
public interface OnRefreshListener {
/**
* Called when the user has initiated a refresh by pulling.
*
* @param view - View which the user has started the refresh from.
*/
public void onRefreshStarted(View view);
}

View file

@ -0,0 +1,143 @@
package com.adins.mss.base.dialogfragments;
import android.content.DialogInterface;
import android.graphics.Rect;
import android.os.Bundle;
import androidx.fragment.app.DialogFragment;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
import android.view.Window;
import android.view.WindowManager;
import android.widget.Button;
import android.widget.EditText;
import android.widget.TextView;
import android.widget.Toast;
import com.adins.mss.base.GlobalData;
import com.adins.mss.base.R;
import com.adins.mss.base.api.ChangePasswordApi;
import com.adins.mss.base.api.ChangePasswordApiCallback;
import com.adins.mss.base.crashlytics.FireCrash;
import com.adins.mss.base.models.ChangePasswordRequestModel;
import com.adins.mss.constant.Global;
import com.adins.mss.dao.User;
import com.adins.mss.foundation.db.dataaccess.UserDataAccess;
/**
* Created by olivia.dg on 9/20/2017.
*/
public class ChangePasswordDialog extends DialogFragment {
private TextView title;
private EditText currentPassword;
private EditText newPassword;
private EditText retypePassword;
private Button changePassword;
@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) {
super.onCreateView(inflater, container, savedInstanceState);
View view = inflater.inflate(R.layout.new_dialog_change_password, container, false);
getDialog().getWindow().requestFeature(Window.FEATURE_NO_TITLE);
WindowManager.LayoutParams wmlp = getDialog().getWindow().getAttributes();
wmlp.windowAnimations = R.style.DialogAnimation2;
getDialog().getWindow().setAttributes(wmlp);
Rect displayRectangle = new Rect();
Window window = getDialog().getWindow();
window.getDecorView().getWindowVisibleDisplayFrame(displayRectangle);
view.setMinimumWidth((int) (displayRectangle.width() * 0.9f));
title = (TextView) view.findViewById(R.id.settings);
currentPassword = (EditText) view.findViewById(R.id.currentPassword);
newPassword = (EditText) view.findViewById(R.id.newPassword);
retypePassword = (EditText) view.findViewById(R.id.retypePassword);
changePassword = (Button) view.findViewById(R.id.btnSave);
title.setText(getString(R.string.title_mn_resetpassword));
changePassword.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
if (currentPassword.getText() == null || currentPassword.getText().toString().equals("")) {
currentPassword.setText("");
}
if (newPassword.getText() == null ||
newPassword.getText().toString().equals("")) {
newPassword.setError(getActivity().getString(R.string.new_password_mandatory));
return;
}
if (!newPassword.getText().toString().equals(retypePassword.getText().toString())) {
Toast.makeText(
getActivity(),
getActivity().getString(R.string.new_password_equal),
Toast.LENGTH_SHORT).show();
return;
}
ChangePasswordRequestModel request = new ChangePasswordRequestModel();
request.setUuid_user(GlobalData.getSharedGlobalData().getUser().getUuid_user());
request.setOld_password(currentPassword.getText().toString());
request.setNew_password(newPassword.getText().toString());
request.setAudit(GlobalData.getSharedGlobalData().getAuditData());
ChangePasswordApi api = new ChangePasswordApi(getActivity());
api.setCallback(new ChangePasswordApiCallback() {
@Override
public void onFailed(String message) {
try {
Toast.makeText(getActivity(), message, Toast.LENGTH_LONG).show();
} catch (Exception e) {
FireCrash.log(e);
Toast.makeText(getActivity(), getActivity().getString(R.string.change_password_required), Toast.LENGTH_LONG).show();
}
}
@Override
public void onSuccess() {
Toast.makeText(getActivity(), getActivity().getString(R.string.password_changed), Toast.LENGTH_LONG).show();
User user = GlobalData.getSharedGlobalData().getUser();
user.setPassword(newPassword.getText().toString());
UserDataAccess.addOrReplace(getActivity(), user);
clear();
dismiss();
Global.isMenuMoreClicked = false;
}
});
api.execute(request);
}
});
return view;
}
private void clear() {
currentPassword.setText("");
newPassword.setText("");
retypePassword.setText("");
}
@Override
public void onDestroyView() {
super.onDestroyView();
Global.isMenuMoreClicked = false;
}
@Override
public void onDismiss(DialogInterface dialog) {
super.onDismiss(dialog);
Global.isMenuMoreClicked = false;
}
@Override
public void onCancel(DialogInterface dialog) {
super.onCancel(dialog);
Global.isMenuMoreClicked = false;
}
}

View file

@ -0,0 +1,5 @@
<vector android:height="36dp" android:tint="?attr/colorControlNormal"
android:viewportHeight="24" android:viewportWidth="24"
android:width="36dp" xmlns:android="http://schemas.android.com/apk/res/android">
<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,2zM17,13L7,13v-2h10v2z"/>
</vector>

View file

@ -0,0 +1,81 @@
package com.adins.mss.dao;
import com.adins.mss.base.util.ExcludeFromGson;
import com.google.gson.annotations.SerializedName;
// THIS CODE IS GENERATED BY greenDAO, DO NOT EDIT. Enable "keep" sections if you want to edit.
/**
* Entity mapped to table "MS_CATALOGUE".
*/
public class Catalogue {
/** Not-null value. */
@SerializedName("uuid_mkt_catalogue")
private String uuid_mkt_catalogue;
@SerializedName("catalogue_name")
private String catalogue_name;
@SerializedName("catalogue_desc")
private String catalogue_desc;
@SerializedName("catalogue_file")
private String catalogue_file;
@SerializedName("dtm_crt")
private java.util.Date dtm_crt;
public Catalogue() {
}
public Catalogue(String uuid_mkt_catalogue) {
this.uuid_mkt_catalogue = uuid_mkt_catalogue;
}
public Catalogue(String uuid_mkt_catalogue, String catalogue_name, String catalogue_desc, String catalogue_file, java.util.Date dtm_crt) {
this.uuid_mkt_catalogue = uuid_mkt_catalogue;
this.catalogue_name = catalogue_name;
this.catalogue_desc = catalogue_desc;
this.catalogue_file = catalogue_file;
this.dtm_crt = dtm_crt;
}
/** Not-null value. */
public String getUuid_mkt_catalogue() {
return uuid_mkt_catalogue;
}
/** Not-null value; ensure this value is available before it is saved to the database. */
public void setUuid_mkt_catalogue(String uuid_mkt_catalogue) {
this.uuid_mkt_catalogue = uuid_mkt_catalogue;
}
public String getCatalogue_name() {
return catalogue_name;
}
public void setCatalogue_name(String catalogue_name) {
this.catalogue_name = catalogue_name;
}
public String getCatalogue_desc() {
return catalogue_desc;
}
public void setCatalogue_desc(String catalogue_desc) {
this.catalogue_desc = catalogue_desc;
}
public String getCatalogue_file() {
return catalogue_file;
}
public void setCatalogue_file(String catalogue_file) {
this.catalogue_file = catalogue_file;
}
public java.util.Date getDtm_crt() {
return dtm_crt;
}
public void setDtm_crt(java.util.Date dtm_crt) {
this.dtm_crt = dtm_crt;
}
}

View file

@ -0,0 +1,69 @@
package com.adins.mss.base.util;
import android.content.Context;
import android.graphics.Bitmap;
import android.os.AsyncTask;
import com.adins.mss.base.crashlytics.FireCrash;
import com.adins.mss.dao.LocationInfo;
import com.adins.mss.foundation.image.ImageLoader;
import java.io.ByteArrayOutputStream;
public class GetLocationImage extends AsyncTask<Void, Void, byte[]> {
private Context context;
private LocationInfo info;
private String lat;
private String lng;
public GetLocationImage(Context context, LocationInfo info) {
this.context = context;
this.info = info;
}
public GetLocationImage(Context context, String lat, String lng) {
this.context = context;
this.lat = lat;
this.lng = lng;
}
@Override
protected byte[] doInBackground(Void... params) {
// TODO Auto-generated method stub
byte[] bitmapArray = null;
if (info != null) {
lat = info.getLatitude();
lng = info.getLongitude();
try {
String image_url = "https://maps.googleapis.com/maps/api/staticmap?center=" + lat + "," + lng + "&zoom=15&size=640x480&maptype=roadmap&markers=color:green%7Clabel:I%7C" + lat + "," + lng;
ImageLoader imgLoader = new ImageLoader(context);
Bitmap bitmap = imgLoader.getBitmap(image_url);
ByteArrayOutputStream stream = new ByteArrayOutputStream();
bitmap.compress(Bitmap.CompressFormat.JPEG, 80, stream);
bitmapArray = stream.toByteArray();
} catch (Exception e) {
FireCrash.log(e);
}
} else {
try {
String image_url = "https://maps.googleapis.com/maps/api/staticmap?center=" + lat + "," + lng + "&zoom=15&size=640x480&maptype=roadmap&markers=color:green%7Clabel:I%7C" + lat + "," + lng;
ImageLoader imgLoader = new ImageLoader(context);
Bitmap bitmap = imgLoader.getBitmap(image_url);
ByteArrayOutputStream stream = new ByteArrayOutputStream();
bitmap.compress(Bitmap.CompressFormat.JPEG, 80, stream);
bitmapArray = stream.toByteArray();
} catch (Exception e) {
FireCrash.log(e);
}
}
return bitmapArray;
}
}

View file

@ -0,0 +1,142 @@
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@+id/my_point_layout"
xmlns:card_view="http://schemas.android.com/apk/res-auto"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="vertical">
<androidx.cardview.widget.CardView
android:id="@+id/card_view"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_gravity="center"
android:layout_margin="6dp"
android:layout_marginStart="10dp"
android:layout_marginEnd="10dp"
card_view:cardCornerRadius="8dp">
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="vertical">
<androidx.constraintlayout.widget.ConstraintLayout
android:id="@+id/header"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="horizontal"
android:paddingStart="14dp"
android:paddingTop="16dp"
android:paddingBottom="16dp"
android:paddingEnd="14dp">
<ImageView
android:id="@+id/logoKompetisi"
android:layout_width="50dp"
android:layout_height="50dp"
card_view:layout_constraintTop_toTopOf="parent"
card_view:layout_constraintLeft_toLeftOf="parent"
card_view:layout_constraintBottom_toBottomOf="parent"
android:src="@drawable/icon_dashboard" />
<LinearLayout
android:id="@+id/compInfo"
android:layout_width="wrap_content"
android:layout_height="match_parent"
card_view:layout_constraintTop_toTopOf="parent"
card_view:layout_constraintLeft_toRightOf="@id/logoKompetisi"
android:layout_marginStart="12dp"
android:orientation="vertical">
<TextView
android:id="@+id/namaKompetisi"
android:layout_width="190dp"
android:layout_height="wrap_content"
android:layout_marginBottom="10dp"
android:ellipsize="marquee"
android:marqueeRepeatLimit="marquee_forever"
android:scrollHorizontally="true"
android:singleLine="true"
android:text="Sample Nama Kompetisi"
android:textSize="15sp"
android:textStyle="bold" />
<TextView
android:id="@+id/dateEvent"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="1 Jan 2020 - 31 Dec 2020 (Sample)"
android:textSize="12sp" />
</LinearLayout>
<LinearLayout
android:id="@+id/poinPeriodLayout"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
card_view:layout_constraintTop_toTopOf="parent"
card_view:layout_constraintBottom_toBottomOf="parent"
card_view:layout_constraintRight_toRightOf="parent"
android:layout_gravity="center_vertical"
>
<ImageView
android:layout_width="15dp"
android:layout_height="15dp"
android:layout_gravity="center"
android:src="@drawable/coin_icon" />
<TextView
android:id="@+id/poinPeriod"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="center"
android:text="273"
android:textAppearance="?attr/textAppearanceListItem"
android:textSize="15sp" />
</LinearLayout>
</androidx.constraintlayout.widget.ConstraintLayout>
<View
android:layout_width="match_parent"
android:layout_height="1dp"
android:layout_marginLeft="14dp"
android:layout_marginRight="14dp"
android:layout_marginBottom="15dp"
android:background="@android:color/darker_gray" />
<LinearLayout
android:id="@+id/body"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginLeft="14dp"
android:layout_marginRight="14dp"
android:orientation="vertical">
<TextView
android:id="@+id/labelRank"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginRight="8dp"
android:layout_marginBottom="10dp"
android:text="Rank (29 April 2020)"
android:textAppearance="?attr/textAppearanceListItem"
android:textSize="12sp" />
<GridView
android:id="@+id/gridview"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:layout_marginBottom="14dp"
android:columnWidth="80dp"
android:horizontalSpacing="10dp"
android:numColumns="auto_fit"
android:stretchMode="none"
android:verticalSpacing="20dp" />
</LinearLayout>
</LinearLayout>
</androidx.cardview.widget.CardView>
</LinearLayout>

View file

@ -0,0 +1,29 @@
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@+id/news_item"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:background="@drawable/spinner_background">
<!-- <ImageView -->
<!-- android:id="@+id/iconNewsParent" -->
<!-- android:layout_width="48dp" -->
<!-- android:layout_height="48dp" -->
<!-- android:layout_alignParentLeft="true" -->
<!-- android:layout_alignParentTop="true" -->
<!-- android:src="@drawable/ic_approve" /> -->
<TextView
android:id="@+id/titleNewsParent"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentLeft="true"
android:layout_alignParentRight="true"
android:layout_alignParentTop="true"
android:gravity="center_vertical|center_horizontal"
android:text="@string/title_news_parent"
android:minHeight="48dp"
android:textAppearance="?android:attr/textAppearanceMedium"
android:textColor="#FFFFFF"
android:textStyle="bold" />
</RelativeLayout>

Binary file not shown.

After

Width:  |  Height:  |  Size: 6.4 KiB

View file

@ -0,0 +1,57 @@
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:paddingBottom="@dimen/activity_vertical_margin"
android:paddingLeft="@dimen/activity_horizontal_margin"
android:paddingRight="@dimen/activity_horizontal_margin"
android:paddingTop="@dimen/activity_vertical_margin"
android:background="@drawable/bg_grayscale"
tools:context="com.adins.mss.base.mainmenu.settings.SettingActivity">
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:textAppearance="?android:attr/textAppearanceMedium"
android:text="@string/txt_language_setting"
android:id="@+id/textView"
android:layout_alignParentTop="true"
android:layout_alignParentLeft="true"
android:layout_alignParentStart="true" />
<RadioGroup
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_below="@+id/textView"
android:layout_alignParentLeft="true"
android:layout_alignParentStart="true">
<RadioButton
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="@string/english_language"
android:id="@+id/rdEnglish"
android:checked="true" />
<RadioButton
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="@string/indonesian_language"
android:id="@+id/rdBahasa"
android:checked="false" />
</RadioGroup>
<Button
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="@string/btnSave"
android:background="@drawable/button_background"
android:textColor="@color/tv_white"
android:id="@+id/btnSave"
android:layout_alignParentBottom="true"
android:layout_alignParentLeft="true"
android:layout_alignParentStart="true"
android:layout_alignParentRight="true"
android:layout_alignParentEnd="true" />
</RelativeLayout>