Example #1
0
 public override bool ProcessAnswer(IGAnswer answer)
 {
     string sLogin = answer.GetAttributeValue(IGREQUEST_USERLOGIN);
     string sFrameId = answer.GetParameterValue(IGREQUEST_FRAMEID);
     string sImageOutputPath = answer.GetParameterValue(IGREQUEST_PATH);
     sImageOutputPath = sImageOutputPath.Substring(0, sImageOutputPath.LastIndexOf('\\') + 1) + HC.PATH_LASTSAVEDPICTURE;
     if (!File.Exists(sImageOutputPath))
         return false;
     string sImagePath = GetParameterValue(IGREQUEST_PATH);
     string sImagePathJPEG = sImagePath.Remove(sImagePath.Length - Path.GetExtension(sImagePath).Length) + "$" + GetAttributeValue(IGREQUEST_GUID) + ".JPG";
     string sAccountMiniImagePath = HC.PATH_USERACCOUNT + sLogin + HC.PATH_USERMINI + HC.PATH_PREFIXMINI + sImagePath;
     Image imgInput = Image.FromFile(sImageOutputPath);
     float fRate = HC.MINIPICTURE_MAXSIZE / (float)Math.Max(imgInput.Size.Width, imgInput.Size.Height);
     Image imgMini = new Bitmap(imgInput, new Size((int)((float)imgInput.Size.Width * fRate), (int)((float)imgInput.Size.Height * fRate)));
     imgMini.Save(sAccountMiniImagePath, ImageFormat.Jpeg);
     imgMini.Save(HC.PATH_OUTPUT + sLogin + HC.PATH_OUTPUTMINI + HC.PATH_PREFIXMINI + sImagePathJPEG, ImageFormat.Jpeg);
     answer.SetParameter(IGREQUEST_SIZE, imgMini.Width.ToString() + "," + imgMini.Height.ToString());
     return true;
 }
Example #2
0
 public override void GetParams(IGAnswer answer, HttpSessionState session)
 {
     SetParameter(IGAnswer.IGANSWER_RESTOREDFRAMEIDS, (string)session[IGAnswer.IGANSWER_RESTOREDFRAMEIDS]);
     SetParameter(IGAnswer.IGANSWER_FRAMENAMES, (string)session[IGAnswer.IGANSWER_FRAMENAMES]);
     SetParameter(IGAnswer.IGANSWER_REQGUIDS, (string)session[IGAnswer.IGANSWER_REQGUIDS]);
     SetParameter(IGAnswer.IGANSWER_ALLNBLAYERS, (string)session[IGAnswer.IGANSWER_ALLNBLAYERS]);
     SetParameter(IGAnswer.IGANSWER_ALLLAYERVISIBILITY, (string)session[IGAnswer.IGANSWER_ALLLAYERVISIBILITY]);
     SetParameter(IGAnswer.IGANSWER_ALLSTEPIDS, (string)session[IGAnswer.IGANSWER_ALLSTEPIDS]);
     SetParameter(IGAnswer.IGANSWER_FRAMEPROPERTIES, (string)session[IGAnswer.IGANSWER_FRAMEPROPERTIES]);
     List<string> lsFrameIds = new List<string>();
     splitParamToList(lsFrameIds, IGAnswer.IGANSWER_RESTOREDFRAMEIDS);
     List<string> lsFrameNames = new List<string>();
     splitParamToList(lsFrameNames, IGAnswer.IGANSWER_FRAMENAMES);
     List<string> lsFrameGuids = new List<string>();
     splitParamToList(lsFrameGuids, IGAnswer.IGANSWER_REQGUIDS);
     List<string> lsNbLayers = new List<string>();
     splitParamToList(lsNbLayers, IGAnswer.IGANSWER_ALLNBLAYERS);
     List<string> lsLayerVisibility = new List<string>();
     splitParamToList(lsLayerVisibility, IGAnswer.IGANSWER_ALLLAYERVISIBILITY);
     List<string> lsStepIds = new List<string>();
     splitParamToList(lsStepIds, IGAnswer.IGANSWER_ALLSTEPIDS);
     List<string> lsFrameProperties = new List<string>();
     splitParamToList(lsFrameProperties, IGAnswer.IGANSWER_FRAMEPROPERTIES);
     string frameId = answer.GetParameterValue(IGREQUEST_FRAMEID);
     if (frameId == "-1")
     {
         session[IGAnswer.IGANSWER_RESTOREDFRAMEIDS] = "";
         session[IGAnswer.IGANSWER_FRAMENAMES] = "";
         session[IGAnswer.IGANSWER_REQGUIDS] = "";
         session[IGAnswer.IGANSWER_ALLNBLAYERS] = "";
         session[IGAnswer.IGANSWER_ALLLAYERVISIBILITY] = "";
         session[IGAnswer.IGANSWER_ALLSTEPIDS] = "";
         session[IGAnswer.IGANSWER_FRAMEPROPERTIES] = "";
         session[IGAnswer.IGANSWER_SELECTEDFRAMEID] = "";
         session[IGAnswer.IGANSWER_SELECTEDREQGUID] = "";
     }
     else
     {
         int nIdxFrame = lsFrameIds.IndexOf(frameId);
         lsFrameIds.RemoveAt(nIdxFrame);
         lsFrameIds.RemoveAt(0);
         lsFrameNames.RemoveAt(nIdxFrame);
         lsFrameNames.RemoveAt(0);
         lsFrameGuids.RemoveAt(nIdxFrame);
         lsFrameGuids.RemoveAt(0);
         lsNbLayers.RemoveAt(nIdxFrame);
         lsNbLayers.RemoveAt(0);
         lsLayerVisibility.RemoveAt(nIdxFrame);
         lsLayerVisibility.RemoveAt(0);
         lsStepIds.RemoveAt(nIdxFrame);
         lsStepIds.RemoveAt(0);
         lsFrameProperties.RemoveAt(nIdxFrame);
         lsFrameProperties.RemoveAt(0);
         session[IGAnswer.IGANSWER_RESTOREDFRAMEIDS] = createParamFromList(lsFrameIds);
         session[IGAnswer.IGANSWER_FRAMENAMES] = createParamFromList(lsFrameNames);
         session[IGAnswer.IGANSWER_REQGUIDS] = createParamFromList(lsFrameGuids);
         session[IGAnswer.IGANSWER_ALLNBLAYERS] = createParamFromList(lsNbLayers);
         session[IGAnswer.IGANSWER_ALLLAYERVISIBILITY] = createParamFromList(lsLayerVisibility);
         session[IGAnswer.IGANSWER_ALLSTEPIDS] = createParamFromList(lsStepIds);
         session[IGAnswer.IGANSWER_FRAMEPROPERTIES] = createParamFromList(lsFrameProperties);
         if (lsFrameIds.Count > 0)
         {
             session[IGAnswer.IGANSWER_SELECTEDFRAMEID] = lsFrameIds[lsFrameIds.Count - 1];
             session[IGAnswer.IGANSWER_SELECTEDREQGUID] = lsFrameGuids[lsFrameGuids.Count - 1];
         }
         else
         {
             session[IGAnswer.IGANSWER_SELECTEDFRAMEID] = "";
             session[IGAnswer.IGANSWER_SELECTEDREQGUID] = "";
         }
     }
     answer.SetParameter(IGAnswer.IGANSWER_RESTOREDFRAMEIDS, (string)session[IGAnswer.IGANSWER_RESTOREDFRAMEIDS]);
     answer.SetParameter(IGAnswer.IGANSWER_FRAMENAMES, (string)session[IGAnswer.IGANSWER_FRAMENAMES]);
     answer.SetParameter(IGAnswer.IGANSWER_REQGUIDS, (string)session[IGAnswer.IGANSWER_REQGUIDS]);
     answer.SetParameter(IGAnswer.IGANSWER_ALLNBLAYERS, (string)session[IGAnswer.IGANSWER_ALLNBLAYERS]);
     answer.SetParameter(IGAnswer.IGANSWER_ALLLAYERVISIBILITY, (string)session[IGAnswer.IGANSWER_ALLLAYERVISIBILITY]);
     answer.SetParameter(IGAnswer.IGANSWER_ALLSTEPIDS, (string)session[IGAnswer.IGANSWER_ALLSTEPIDS]);
     answer.SetParameter(IGAnswer.IGANSWER_FRAMEPROPERTIES, (string)session[IGAnswer.IGANSWER_FRAMEPROPERTIES]);
     SetParameter(IGAnswer.IGANSWER_ALLNBLAYERS, (string)session[IGAnswer.IGANSWER_ALLNBLAYERS]);
     SetParameter(IGAnswer.IGANSWER_ALLLAYERVISIBILITY, (string)session[IGAnswer.IGANSWER_ALLLAYERVISIBILITY]);
     SetParameter(IGAnswer.IGANSWER_ALLSTEPIDS, (string)session[IGAnswer.IGANSWER_ALLSTEPIDS]);
 }