diff --git a/QR-GEN/Controllers/HomeController.cs b/QR-GEN/Controllers/HomeController.cs
index 0959a7e..a30b3d5 100644
--- a/QR-GEN/Controllers/HomeController.cs
+++ b/QR-GEN/Controllers/HomeController.cs
@@ -1,5 +1,6 @@
using System.Drawing.Imaging;
using System.IO;
+using System.Web;
using System.Web.Mvc;
using ZXing;
using ZXing.QrCode;
@@ -8,6 +9,14 @@ namespace QR_GEN.Controllers
{
public class HomeController : Controller
{
+ ///
+ /// Struct x richiesta serializzata/deserializzata
+ ///
+ public struct qrRequest
+ {
+ public string valore;
+ }
+
public ActionResult Index()
{
return View();
@@ -29,6 +38,16 @@ namespace QR_GEN.Controllers
{
id = "www.steamware.net";
}
+#if false
+ // se arriva modo json --> deserializzo
+ if (id.IndexOf("{") >= 0)
+ {
+ var richiesta = JsonConvert.DeserializeObject(id);
+ id = richiesta.valore;
+ }
+#endif
+ // url decode...
+ id = HttpUtility.UrlDecode(id);
// creo!
QrCodeEncodingOptions options = new QrCodeEncodingOptions
{
@@ -44,6 +63,64 @@ namespace QR_GEN.Controllers
// scrivo bitmap
var pixelData = writer.Write(id);
+ // Return Image
+ MemoryStream ms = new MemoryStream();
+ pixelData.Save(ms, ImageFormat.Png);
+ ms.Position = 0;
+ return new FileStreamResult(ms, "image/png");
+ }
+ ///
+ /// Restituisce un QR code dato valore
+ ///
+ /// id x impostare SITO x jumper
+ /// valore delle opzioni da embeddare
+ ///
+ public ActionResult QR_site(string id, string val)
+ {
+ string cmdArg = "";
+ // se vuoto stea,ware...
+ if (id == null || id == "")
+ {
+ cmdArg = "www.steamware.net";
+ }
+#if false
+ // se arriva modo json --> deserializzo
+ if (id.IndexOf("{") >= 0)
+ {
+ var richiesta = JsonConvert.DeserializeObject(id);
+ id = richiesta.valore;
+ }
+#endif
+#if false
+ // url decode...
+ id = HttpUtility.UrlDecode(id);
+#endif
+ string tgtUrl = "";
+ // in base a richiesta compongo stringa ...
+ switch (id)
+ {
+ case "CTRACK_ELET_SCAL":
+ tgtUrl = @"ctrack.steamware.net/elet-scal/jumper?USER_NAME=info@elettronicascalvina.it&UserAuthkey=asdfbqhewrqg7802345bhasdfg78&CodOpr=";
+ break;
+ default:
+ break;
+ }
+ cmdArg = string.Format("{0}{1}", tgtUrl, val);
+ // creo!
+ QrCodeEncodingOptions options = new QrCodeEncodingOptions
+ {
+ DisableECI = true,
+ CharacterSet = "UTF-8",
+ Width = 600,
+ Height = 600,
+ Margin = 0
+ };
+ var writer = new BarcodeWriter();
+ writer.Format = BarcodeFormat.QR_CODE;
+ writer.Options = options;
+ // scrivo bitmap
+ var pixelData = writer.Write(cmdArg);
+
// Return Image
MemoryStream ms = new MemoryStream();
pixelData.Save(ms, ImageFormat.Png);