private int CountWatch(AdobeConnectDTO AdobeConnectDTO)
        {
            AdobeBusiness adobeBuisnes = new AdobeBusiness();
            XmlDocument   doc          = new XmlDocument();

            doc = adobeBuisnes.GetMyMeeting(AdobeConnectDTO);
            int count = 0;

            if (doc != null)
            {
                if (doc.OuterXml.ToString().Contains("meeting"))
                {
                    XmlNodeList nodeList = doc.SelectNodes("//results/my-meetings/meeting");
                    foreach (XmlNode no in nodeList)
                    {
                        bool bTime = CheckTimeDefence(AdobeConnectDTO, AdobeConnectDTO.UserLogin, no.Attributes["sco-id"].Value.ToString());
                        if (bTime == true)
                        {
                            ++count;
                        }
                    }
                }
            }

            return(count);
        }
        public static DataTable GetMyMeetingDefence(AdobeConnectDTO adobeConnectDTO, string typeCollege = "")
        {
            DataTable     dt            = new DataTable();
            XmlDocument   doc           = new XmlDocument();
            AdobeBusiness adobeBusiness = new AdobeBusiness();

            adobeBusiness.LoginAsUser(adobeConnectDTO);
            doc = adobeBusiness.GetMyMeeting(adobeConnectDTO);
            dt.Columns.Add("MeetingId");
            dt.Columns.Add("Name");
            dt.Columns.Add("DateStart");
            dt.Columns.Add("DateEnd");
            dt.Columns.Add("MeetingUrl");
            DataRow dr;

            if (doc.OuterXml.ToString().Contains("sco"))
            {
                XmlNodeList nodeList = doc.SelectNodes("//results/my-meetings/meeting");
                foreach (XmlNode no in nodeList)
                {
                    if (typeCollege == "" || no["Name"].ToString().Contains(typeCollege))
                    {
                        dr = dt.NewRow();
                        dr["MeetingId"]  = no.Attributes["sco-id"].Value;
                        dr["Name"]       = no["name"].InnerText.ToString();
                        dr["DateStart"]  = no["date-begin"].InnerText;
                        dr["DateEnd"]    = no["date-end"].InnerText;
                        dr["MeetingUrl"] = no["url-path"].InnerText;
                        dt.Rows.Add(dr);
                    }
                }
            }
            return(dt);
        }
        public void DeleteMeeting(AdobeConnectDTO adobeConnectDTO)
        {
            AdobeBusiness adobeBuisnes = new AdobeBusiness();

            adobeConnectDTO = adobeBuisnes.LoginAsAdmin(adobeConnectDTO);
            adobeBuisnes.DeleteMeetingByScoID(adobeConnectDTO);
            adobeBuisnes.Logout(adobeConnectDTO);
        }
        public void  CreateMeeting(AdobeConnectDTO adobeConnectDTO)
        {
            AdobeBusiness adobeBuisnes = new AdobeBusiness();

            adobeConnectDTO = adobeBuisnes.LoginAsAdmin(adobeConnectDTO);

            adobeBuisnes.CreateNewMeeting(adobeConnectDTO);
            adobeConnectDTO = adobeBuisnes.Logout(adobeConnectDTO);
        }
        public bool CheckAcceptRequestDefence(AdobeConnectDTO adobeConnectDTO)
        {
            const int     standardCount = 3;
            AdobeBusiness adobeBuisnes  = new AdobeBusiness();

            adobeConnectDTO             = adobeBuisnes.LoginAsAdmin(adobeConnectDTO);
            adobeConnectDTO.PrincipalID = adobeBuisnes.GetPrincipalId(adobeConnectDTO);
            adobeBuisnes.Logout(adobeConnectDTO);
            adobeConnectDTO = adobeBuisnes.LoginAsUser(adobeConnectDTO);
            int count = CountWatch(adobeConnectDTO);

            adobeBuisnes.Logout(adobeConnectDTO);

            if (count >= standardCount)
            {
                return(true);
            }
            else
            {
                return(false);
            }
        }
        private bool CheckTimeDefence(AdobeConnectDTO AdobeConnectDTO, string loginId, string scoidMeeting)
        {
            const int       standardLengthTime = 20;
            XmlDocument     doc              = new XmlDocument();
            AdobeBusiness   adobeBuisnes     = new AdobeBusiness();
            AdobeConnectDTO adobeConnectDTO1 = new AdobeConnectDTO();

            adobeConnectDTO1.DomainAddress  = AdobeConnectDTO.DomainAddress;
            adobeConnectDTO1.DomainLogin    = AdobeConnectDTO.DomainLogin;
            adobeConnectDTO1.DomainPassword = AdobeConnectDTO.DomainPassword;

            adobeConnectDTO1 = adobeBuisnes.LoginAsAdmin(adobeConnectDTO1);
            doc = adobeBuisnes.GetReportuserMeetings(adobeConnectDTO1, scoidMeeting, loginId);
            adobeBuisnes.Logout(adobeConnectDTO1);

            if (doc != null)
            {
                if (doc.OuterXml.ToString().Contains("row"))
                {
                    XmlNodeList nodeList = doc.SelectNodes("//results/report-meeting-attendance/row");
                    DateTime    startDate;
                    DateTime    endDate;
                    TimeSpan    lengthTime = TimeSpan.Zero;
                    foreach (XmlNode no in nodeList)
                    {
                        startDate   = Convert.ToDateTime(no["date-created"].InnerText);
                        endDate     = Convert.ToDateTime(no["date-end"].InnerText);
                        lengthTime += (endDate - startDate);
                        if (lengthTime.TotalMinutes > standardLengthTime)
                        {
                            return(true);
                        }
                    }
                }
            }
            return(false);
        }
Пример #7
0
        public List <RecordsDTO> LinkOfMeetingsAndContentsByCodeClassAndTime(string code, string date, string term)
        {
            SettingDTO setdto = setb.GetSettingByTermC(term);

            DAO.Adobe.SettingDAO sdao = new DAO.Adobe.SettingDAO();

            List <RecordsDTO> assetList = new List <RecordsDTO>();

            if (term == "93-94-1")
            {
                DataTable dtvc = recDAO.LinkOfMeetingsAndContentsByCodeClassAndTime(code, date, term);

                for (int i = 0; i < dtvc.Rows.Count; i++)
                {
                    RecordsDTO    asset         = new RecordsDTO();
                    AdobeBusiness adobeBusiness = new AdobeBusiness();
                    asset.ClassCode  = dtvc.Rows[i]["code"].ToString();
                    asset.LessonCode = dtvc.Rows[i]["lesson_code"].ToString();
                    asset.Size       = dtvc.Rows[i]["storage"].ToString();
                    asset.Duration   = dtvc.Rows[i]["Minute"].ToString();
                    asset.FileType   = dtvc.Rows[i]["fileType"].ToString();
                    asset.FileName   = dtvc.Rows[i]["name"].ToString();
                    asset.Date       = dtvc.Rows[i]["Shamsi Date"].ToString();
                    // asset.Session = dtvc.Rows[i]["session"].ToString();
                    asset.Link = adobeBusiness.OpenMeetingAsView("http://192.168.30.140/", setdto.vName, setdto.vpass, dtvc.Rows[i]["SCO_ID"].ToString(), dtvc.Rows[i]["_val"].ToString(), "view", sdao.Decrypt(setdto.aPass, true));



                    assetList.Add(asset);
                }

                DataTable dtAdobe = recDAO.LinkOfMeetingsAndContentsByCodeClassAndTime(code, date, term);
                for (int i = 0; i < dtAdobe.Rows.Count; i++)
                {
                    RecordsDTO    asset         = new RecordsDTO();
                    AdobeBusiness adobeBusiness = new AdobeBusiness();
                    asset.ClassCode  = dtAdobe.Rows[i]["code"].ToString();
                    asset.LessonCode = dtAdobe.Rows[i]["lesson_code"].ToString();
                    asset.Size       = dtAdobe.Rows[i]["storage"].ToString();
                    asset.Duration   = dtAdobe.Rows[i]["Minute"].ToString();
                    asset.FileType   = dtAdobe.Rows[i]["fileType"].ToString();
                    asset.FileName   = dtAdobe.Rows[i]["name"].ToString();
                    asset.Date       = dtAdobe.Rows[i]["Shamsi Date"].ToString();
                    // asset.Session = dtAdobe.Rows[i]["session"].ToString();
                    // asset.Link = dt.Rows[i]["URL"].ToString();

                    asset.Link = adobeBusiness.OpenMeetingAsView("http://adobe.iauec.ac.ir/", setdto.vName, setdto.vpass, dtAdobe.Rows[i]["SCO_ID"].ToString(), dtAdobe.Rows[i]["_val"].ToString(), "view", sdao.Decrypt(setdto.aPass, true));


                    assetList.Add(asset);
                }
            }

            else
            {
                DataTable dt_live = recDAO.LinkOfMeetingsAndContentsByCodeClassAndTime(code, date, term);

                for (int i = 0; i < dt_live.Rows.Count; i++)
                {
                    RecordsDTO    asset = new RecordsDTO();
                    AdobeBusiness adobe = new AdobeBusiness();
                    asset.ClassCode  = dt_live.Rows[i]["code"].ToString();
                    asset.LessonCode = dt_live.Rows[i]["lesson_code"].ToString();
                    asset.Size       = dt_live.Rows[i]["storage"].ToString();
                    asset.Duration   = dt_live.Rows[i]["Minute"].ToString();
                    asset.FileType   = dt_live.Rows[i]["fileType"].ToString();
                    asset.FileName   = dt_live.Rows[i]["name"].ToString();
                    asset.Date       = dt_live.Rows[i]["Shamsi Date"].ToString();
                    asset.Link       = adobe.OpenMeetingAsHost(setdto.DomainName, setdto.vName, setdto.vpass, dt_live.Rows[i]["SCO_ID"].ToString(), dt_live.Rows[i]["_val"].ToString(), setdto.version == "9.5" ? "" : "view", sdao.Decrypt(setdto.aPass, true));



                    assetList.Add(asset);
                }
            }
            return(assetList);
        }