| 
					
				 | 
			
			
				@@ -0,0 +1,70 @@ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+package com.flacksta.chef.journeygpstracker 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+import android.app.PendingIntent 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+import android.app.Service 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+import android.appwidget.AppWidgetManager 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+import android.content.Intent 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+import android.os.IBinder 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+import android.util.Log 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+import android.widget.RemoteViews 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+import android.widget.TextView 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+import com.android.volley.Request 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+import com.android.volley.Response 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+import com.android.volley.toolbox.StringRequest 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+import com.android.volley.toolbox.Volley 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+import java.util.* 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+class UpdateWidgetService : Service() { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    override fun onStart(intent: Intent, startId: Int) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        val appWidgetManager = AppWidgetManager.getInstance(this.applicationContext) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        val allWidgetIds = intent.getIntArrayExtra(AppWidgetManager.EXTRA_APPWIDGET_IDS) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        val remoteViews = RemoteViews(this.applicationContext.packageName,  R.layout.home_temp_app_widget ) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        val queue = Volley.newRequestQueue(this) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        val url = "http://chef.maya.se/info/curr_temp.php" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        // Request a string response from the provided URL. 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        val stringRequest = StringRequest( 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            Request.Method.GET, url, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            Response.Listener<String> { response -> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                Log.i("SERVICE", "Response is: $response") 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                for (widgetId in allWidgetIds!!) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    remoteViews.setTextViewText(R.id.appwidget_text,"$response") 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    appWidgetManager.updateAppWidget(widgetId, remoteViews) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            }, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            Response.ErrorListener { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                Log.i("SERVICE", "That didn't work!" ) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                for (widgetId in allWidgetIds!!) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    remoteViews.setTextViewText(R.id.appwidget_text,"ERR") 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    appWidgetManager.updateAppWidget(widgetId, remoteViews) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        ) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        queue.add(stringRequest) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        for (widgetId in allWidgetIds!!) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            val clickIntent = Intent(this.applicationContext,HomeTempAppWidget::class.java ) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            clickIntent.action = AppWidgetManager.ACTION_APPWIDGET_UPDATE 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            clickIntent.putExtra(AppWidgetManager.EXTRA_APPWIDGET_IDS, allWidgetIds ) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            val pendingIntent = PendingIntent.getBroadcast( 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                applicationContext, 0, clickIntent, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                PendingIntent.FLAG_IMMUTABLE or PendingIntent.FLAG_UPDATE_CURRENT 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            ) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            remoteViews.setOnClickPendingIntent(R.id.appwidget_text, pendingIntent) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        stopSelf() 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        super.onStart(intent, startId) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    override fun onBind(intent: Intent): IBinder? { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        return null 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 |