Helyettesítések elkezdve, betöltés/mentés elkezdve
Tegnap/tegnapelőtt kezdtem
This commit is contained in:
parent
0e73f5df24
commit
7505ec8406
5 changed files with 92 additions and 6 deletions
|
@ -5,6 +5,7 @@ using System.Collections.Generic;
|
|||
using System.IO;
|
||||
using System.Linq;
|
||||
using System.Net;
|
||||
using System.Runtime.Serialization.Json;
|
||||
using System.Text.RegularExpressions;
|
||||
using System.Threading.Tasks;
|
||||
|
||||
|
@ -19,6 +20,7 @@ namespace Orarend
|
|||
/// <returns></returns>
|
||||
public static Osztály[] Osztályok { get; private set; }
|
||||
public static List<Órarend> Órarendek { get; } = new List<Órarend>();
|
||||
public static Settings Beállítások { get; private set; } //TODO: Settings
|
||||
/// <summary>
|
||||
/// Frissíti az osztálylistát és az eredeti órarendet, első megnyitásnál, és egy órarend hozzáadásánál/szerkesztésénél, majd hetente elegendő meghívni
|
||||
/// </summary>
|
||||
|
@ -101,7 +103,68 @@ namespace Orarend
|
|||
/// </summary>
|
||||
public static async Task HelyettesítésFrissítés()
|
||||
{
|
||||
//TODO
|
||||
HtmlDocument doc = new HtmlDocument();
|
||||
var req = WebRequest.CreateHttp("http://deri.enaplo.net/ajax/print/htlista.php");
|
||||
var resp = await req.GetResponseAsync();
|
||||
await Task.Run(() =>
|
||||
{
|
||||
using (var sr = new StreamReader(resp.GetResponseStream()))
|
||||
doc.LoadHtml(sr.ReadToEnd());
|
||||
});
|
||||
}
|
||||
|
||||
public static void ÓrarendBetöltés(Stream s)
|
||||
{
|
||||
using (s)
|
||||
{
|
||||
var serializer = new DataContractJsonSerializer(typeof(Órarend[]));
|
||||
Órarendek.AddRange((Órarend[])serializer.ReadObject(s));
|
||||
}
|
||||
}
|
||||
|
||||
public static void OsztályBetöltés(Stream s)
|
||||
{
|
||||
using (s)
|
||||
{
|
||||
var serializer = new DataContractJsonSerializer(typeof(Osztály[]));
|
||||
Osztályok = ((Osztály[])serializer.ReadObject(s));
|
||||
}
|
||||
}
|
||||
|
||||
public static void BeállításBetöltés(Stream s)
|
||||
{
|
||||
using (s)
|
||||
{
|
||||
var serializer = new DataContractJsonSerializer(typeof(Settings));
|
||||
Beállítások = ((Settings)serializer.ReadObject(s));
|
||||
}
|
||||
}
|
||||
|
||||
public static void ÓrarendMentés(Stream s)
|
||||
{
|
||||
using (s)
|
||||
{
|
||||
var serializer = new DataContractJsonSerializer(typeof(Órarend[]));
|
||||
serializer.WriteObject(s, Órarendek);
|
||||
}
|
||||
}
|
||||
|
||||
public static void OsztályMentés(Stream s)
|
||||
{
|
||||
using (s)
|
||||
{
|
||||
var serializer = new DataContractJsonSerializer(typeof(Osztály[]));
|
||||
serializer.WriteObject(s, Osztályok);
|
||||
}
|
||||
}
|
||||
|
||||
public static void BeállításMentés(Stream s)
|
||||
{
|
||||
using (s)
|
||||
{
|
||||
var serializer = new DataContractJsonSerializer(typeof(Settings));
|
||||
serializer.WriteObject(s, Beállítások);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
@ -37,6 +37,7 @@
|
|||
<Compile Include="API.cs" />
|
||||
<Compile Include="Osztály.cs" />
|
||||
<Compile Include="Properties\AssemblyInfo.cs" />
|
||||
<Compile Include="Settings.cs" />
|
||||
<Compile Include="Tanár.cs" />
|
||||
<Compile Include="Óra.cs" />
|
||||
<Compile Include="Órarend.cs" />
|
||||
|
|
12
Orarend/Settings.cs
Normal file
12
Orarend/Settings.cs
Normal file
|
@ -0,0 +1,12 @@
|
|||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Linq;
|
||||
using System.Text;
|
||||
using System.Threading.Tasks;
|
||||
|
||||
namespace Orarend
|
||||
{
|
||||
public class Settings
|
||||
{
|
||||
}
|
||||
}
|
|
@ -12,6 +12,7 @@ using Java.Lang;
|
|||
using System.Collections.Generic;
|
||||
using System.Threading.Tasks;
|
||||
using System.Threading;
|
||||
using System.IO;
|
||||
|
||||
namespace OrarendAndroidApp
|
||||
{
|
||||
|
@ -20,12 +21,19 @@ namespace OrarendAndroidApp
|
|||
{
|
||||
private Handler handler;
|
||||
private Órarend órarend;
|
||||
|
||||
|
||||
protected override void OnCreate(Bundle bundle)
|
||||
{
|
||||
base.OnCreate(bundle);
|
||||
SetContentView(Resource.Layout.MainLayout);
|
||||
handler = new Handler();
|
||||
string[] list = FileList();
|
||||
if (list.Contains("beallitasok"))
|
||||
API.BeállításBetöltés(OpenFileInput("beallitasok"));
|
||||
if (list.Contains("orarend"))
|
||||
API.ÓrarendBetöltés(OpenFileInput("orarend"));
|
||||
if (list.Contains("osztaly"))
|
||||
API.OsztályBetöltés(OpenFileInput("osztaly"));
|
||||
API.Frissítés().ContinueWith(t =>
|
||||
{
|
||||
handler.Post(() =>
|
||||
|
@ -55,7 +63,7 @@ namespace OrarendAndroidApp
|
|||
tr1.AddView(textview);
|
||||
};
|
||||
API.HelyettesítésFrissítés().ContinueWith(t =>
|
||||
{
|
||||
{ //TODO: Ezt ne itt, ne így
|
||||
handler.Post(() =>
|
||||
{
|
||||
TaskHiba(t);
|
||||
|
@ -95,7 +103,7 @@ namespace OrarendAndroidApp
|
|||
}
|
||||
}
|
||||
});
|
||||
});
|
||||
}); //TODO: Tárolja el a helyettesített órarendeket is valahogyan, akár külön osztály, hogy csak a változásokat tárolja
|
||||
}
|
||||
|
||||
private TextView selected;
|
||||
|
@ -157,6 +165,8 @@ namespace OrarendAndroidApp
|
|||
handler.Post(() => bar.Visibility = ViewStates.Visible);
|
||||
API.Frissítés().ContinueWith(t => //TODO: Megjelenítés frissítése
|
||||
{
|
||||
API.ÓrarendMentés(OpenFileOutput("orarend", FileCreationMode.Private));
|
||||
API.OsztályMentés(OpenFileOutput("osztaly", FileCreationMode.Private)); //TODO: Beállítások mentése
|
||||
handler.Post(() => bar.Visibility = ViewStates.Gone);
|
||||
});
|
||||
break;
|
||||
|
|
|
@ -1,5 +1,5 @@
|
|||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<manifest xmlns:android="http://schemas.android.com/apk/res/android" package="OrarendAndroidApp.OrarendAndroidApp" android:versionCode="1" android:versionName="1.0">
|
||||
<uses-sdk android:minSdkVersion="16" />
|
||||
<application android:label="OrarendAndroidApp"></application>
|
||||
<uses-sdk android:minSdkVersion="16" />
|
||||
<application android:label="OrarendAndroidApp"></application>
|
||||
</manifest>
|
Loading…
Reference in a new issue