Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- package com.example.spirit.projectautomate;
- import android.app.Activity;
- import android.content.Intent;
- import android.content.pm.ResolveInfo;
- import android.net.Uri;
- import android.os.Bundle;
- import android.os.Environment;
- import android.os.Parcelable;
- import android.view.View;
- import android.view.View.OnClickListener;
- import android.view.Window;
- import android.view.WindowManager;
- import android.widget.ImageButton;
- import android.widget.TextView;
- import java.io.File;
- import java.io.IOException;
- import java.text.SimpleDateFormat;
- import java.util.ArrayList;
- import java.util.Calendar;
- import java.util.List;
- import java.util.Stack;
- /**
- * Created by Spirit on 5/08/2015.
- */
- public class DashBoard extends Activity implements OnClickListener
- {
- ArrayList<String> setDaysTemp;
- String workSSIDTemp;
- ArrayList<String> setPreferencesTemp;
- String setTimeSheetTemp;
- ImageButton EditSettings;
- ImageButton exportFile;
- TextView days;
- TextView wifi;
- TextView preference;
- TextView timeSheet;
- String Time;
- String Hours;
- String Minutes;
- String Seconds ;
- String Date;
- String Day;
- String Month;
- String Year;
- @Override
- protected void onCreate(Bundle savedInstanceState)
- {
- super.onCreate(savedInstanceState);
- makeFullScreen();
- setContentView(R.layout.dashboard);
- initialize();
- displayOnScreen();
- ShowTimeAndDate();
- trackUserActivities();
- }
- @Override
- public void onClick(View view)
- {
- switch (view.getId())
- {
- case (R.id.imgbAdvSettings):
- {
- Intent advancedSettingsIntent = new Intent("android.intent.action.ADVANCEDSETTINGS");
- startActivity(advancedSettingsIntent);
- break;
- }
- case(R.id.imgbExport):
- {
- sendEmailToUser();
- break;
- }
- }
- }
- private void trackUserActivities()
- {
- //Daily
- trackDailyWorkHours();
- trackWeeklyWorkHours();
- trackMonthlyWorkHouse();
- }
- // ==========================================================================================================================
- private void trackDailyWorkHours()
- {
- String fileNameDaily = "DailyReport.txt";
- String content = Date + " " + "StartTime: " + Time + " " + "End Time: " + Time + " " + "Shift Duration: " + Hours;
- FileOperations fopDaily = new FileOperations();
- try
- {
- fopDaily.write(fileNameDaily, content);
- }
- catch (IOException e)
- {
- e.printStackTrace();
- System.out.println("WRITING FAILED =(");
- }
- }
- private void trackWeeklyWorkHours()
- {
- String fileNameWeekly = "WeeklyReport.txt";
- String content = Date + " " + "StartTime: " + Time + " " + "End Time: " + Time + " " + "Shift Duration: " + Hours;
- FileOperations fopWeekly = new FileOperations();
- try
- {
- fopWeekly.write(fileNameWeekly, content);
- }
- catch (IOException e)
- {
- e.printStackTrace();
- System.out.println("WRITING FAILED =(");
- }
- }
- private void trackMonthlyWorkHouse()
- {
- String fileNameMonthly= "MonthlyReport.txt";
- String content = Date + " " + "StartTime: " + Time + " " + "End Time: " + Time + " " + "Shift Duration: " + Hours + " ";
- FileOperations fopMonthly = new FileOperations();
- try
- {
- fopMonthly.write(fileNameMonthly, content);
- }
- catch (IOException e)
- {
- e.printStackTrace();
- System.out.println("WRITING FAILED =(");
- }
- }
- private void sendEmailToUser()
- {
- for(String temp:setPreferencesTemp)
- {
- System.out.println(temp);
- }
- File fpath = Environment.getExternalStoragePublicDirectory(Environment.DIRECTORY_DCIM);
- File file = new File(fpath, "MonthlyReport.txt");
- String fileLocation = file.toString();
- System.out.println("Sending File Path: " + fileLocation);
- Intent emailIntent = new Intent(Intent.ACTION_SEND);
- String to[] = {"tim.m87@hotmail.com"};
- emailIntent.putExtra(Intent.EXTRA_EMAIL, to);
- emailIntent.putExtra(Intent.EXTRA_SUBJECT, "Test single attachment");
- emailIntent.putExtra(Intent.EXTRA_STREAM, Uri.fromFile(file));
- emailIntent.putExtra(Intent.EXTRA_TEXT, "TimeSheet");
- emailIntent.setType("message/rfc822");
- //startActivity(Intent.createChooser(emailIntent, "Send via Email"));
- startActivity(createEmailOnlyChooserIntent(emailIntent, "tim.m87@hotmail.com"));
- System.out.println("SENT EMAIL SUCCESS !");
- }
- // ========================================================================================================
- private void displayOnScreen()
- {
- displayDays();
- displayWifi();
- displayPreference();
- displayTimeSheet();
- }
- private void displayDays()
- {
- String onScreenSetDays = "";
- for (String temp : setDaysTemp)
- {
- onScreenSetDays += temp;
- }
- days.setText(onScreenSetDays);
- }
- private void displayWifi()
- {
- String onScreenSetWifi = workSSIDTemp;
- wifi.setText(onScreenSetWifi);
- }
- private void displayPreference()
- {
- String onScreenSetPreference = "";
- for (String temp : setPreferencesTemp)
- {
- onScreenSetPreference += temp;
- }
- preference.setText(onScreenSetPreference);
- }
- private void displayTimeSheet()
- {
- timeSheet.setText(setTimeSheetTemp);
- }
- private void initialize()
- {
- System.out.println("|||||||||||||||||||||||||||||||||||||||||| Dashboard ||||||||||||||||||||||||||||||||||||||||||||||||||||");
- EditSettings = (ImageButton) findViewById(R.id.imgbAdvSettings);
- exportFile = (ImageButton) findViewById(R.id.imgbExport);
- days = (TextView) findViewById(R.id.tDaysDashboard);
- wifi = (TextView) findViewById(R.id.tWifiDashboard);
- preference = (TextView) findViewById(R.id.tFrequencyDashboard);
- timeSheet = (TextView) findViewById(R.id.tTimeSheetDashboard);
- EditSettings.setOnClickListener(this);
- exportFile.setOnClickListener(this);
- //======================================================================
- setDaysTemp = (ArrayList<String>) this.getIntent().getSerializableExtra("arlSetDays");
- workSSIDTemp = (String) this.getIntent().getSerializableExtra("strWorkSSID");
- setPreferencesTemp = (ArrayList<String>) this.getIntent().getSerializableExtra("arlSetPreferences");
- setTimeSheetTemp = (String) this.getIntent().getSerializableExtra("strSetTimeSheet");
- }
- private void ShowTimeAndDate()
- {
- Calendar c = Calendar.getInstance();
- SimpleDateFormat date = new SimpleDateFormat("dd/MMMM/yyyy");
- SimpleDateFormat day = new SimpleDateFormat("dd");
- SimpleDateFormat month = new SimpleDateFormat("MMMM");
- SimpleDateFormat year = new SimpleDateFormat("yyyy");
- SimpleDateFormat time = new SimpleDateFormat("HH:mm:ssa");
- SimpleDateFormat hours = new SimpleDateFormat("HH");
- SimpleDateFormat minutes = new SimpleDateFormat("mm");
- SimpleDateFormat seconds = new SimpleDateFormat("ss");
- Date = date.format(c.getTime());
- Day = day.format(c.getTime());
- Month = month.format(c.getTime());
- Year = year.format(c.getTime());
- Time = time.format(c.getTime());
- Hours = hours.format(c.getTime());
- Minutes = minutes.format(c.getTime());
- Seconds = seconds.format(c.getTime());
- System.out.println("Current Date: " + Date );
- System.out.println("Current Day: " + Day );
- System.out.println("Current Month: " + Month );
- System.out.println("Current Year : " + Year );
- System.out.println("Current Time: " + Time );
- System.out.println("Current Hours: " + Hours );
- System.out.println("Current Minutes: " + Minutes );
- System.out.println("Current Seconds: " + Seconds );
- }
- private void makeFullScreen()
- {
- requestWindowFeature(Window.FEATURE_NO_TITLE);
- getWindow().setFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN, WindowManager.LayoutParams.FLAG_FULLSCREEN);
- }
- public Intent createEmailOnlyChooserIntent(Intent source, CharSequence chooserTitle)
- {
- Stack<Intent> intents = new Stack<Intent>();
- Intent i = new Intent(Intent.ACTION_SEND, Uri.fromParts("mailto", "info@domain.com", null));
- List<ResolveInfo> activities = getPackageManager().queryIntentActivities(i, 0);
- for(ResolveInfo ri : activities)
- {
- Intent target = new Intent(source);
- target.setPackage(ri.activityInfo.packageName);
- intents.add(target);
- }
- if(!intents.isEmpty())
- {
- Intent chooserIntent = Intent.createChooser(intents.remove(0),chooserTitle);
- chooserIntent.putExtra(Intent.EXTRA_INITIAL_INTENTS,intents.toArray(new Parcelable[intents.size()]));
- return chooserIntent;
- }
- else
- {
- return Intent.createChooser(source, chooserTitle);
- }
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement