Example #1
0
        private string getResourceUsername(string url, Guid RES_GUID)
        {
            try
            {
                WebSvcResource.Resource pResource = new WebSvcResource.Resource();
                pResource.Url = url + "/_vti_bin/psi/resource.asmx";
                pResource.UseDefaultCredentials = true;
                WebSvcResource.ResourceDataSet rDs = new WebSvcResource.ResourceDataSet();

                SPSecurity.RunWithElevatedPrivileges(delegate()
                {
                    rDs = pResource.ReadResource(RES_GUID);
                });

                if (rDs.Resources.Count > 0)
                {
                    if (rDs.Resources[0].RES_IS_WINDOWS_USER)
                    {
                        return(rDs.Resources[0].WRES_ACCOUNT);
                    }
                }
            }
            catch (Exception ex)
            {
                string logEntry = "Error: " + ex.Message;
                ErrorTrap(3003, logEntry);
            }
            return("");
        }
        public ResourceSyncher(Guid siteId)
        {
            siteGuid = siteId;
            SPSecurity.RunWithElevatedPrivileges(delegate()
            {
                using (SPSite site = new SPSite(siteGuid))
                {
                    pCf     = new WebSvcCustomFields.CustomFields();
                    pCf.Url = site.Url + "/_vti_bin/psi/customfields.asmx";
                    pCf.UseDefaultCredentials = true;
                    cfDs = new WebSvcCustomFields.CustomFieldDataSet();
                    cfDs = pCf.ReadCustomFieldsByEntity(resEntity);

                    psiLookupTable     = new WebSvcLookupTables.LookupTable();
                    psiLookupTable.Url = site.Url + "/_vti_bin/psi/lookuptable.asmx";
                    psiLookupTable.UseDefaultCredentials = true;

                    pResource     = new WebSvcResource.Resource();
                    pResource.Url = site.Url + "/_vti_bin/psi/resource.asmx";
                    pResource.UseDefaultCredentials = true;

                    //SPSecurity.RunWithElevatedPrivileges(delegate()
                    //{

                    cn = new SqlConnection(EPMLiveCore.CoreFunctions.getConnectionString(site.WebApplication.Id));
                    cn.Open();

                    //});
                }
            });
        }
Example #3
0
        public ProjectWorkspaceSynch(Guid projectSiteGuid, string webUrl, Guid projectGuid, string username)
        {
            try
            {
                _username = username;

                mySite = new SPSite(projectSiteGuid);
                mySite.AllowUnsafeUpdates = true;

                cn = new SqlConnection(EPMLiveCore.CoreFunctions.getConnectionString(mySite.WebApplication.Id));
                cn.Open();

                mySiteToPublish = new SPSite(webUrl);
                myWebToPublish  = mySiteToPublish.OpenWeb();
                myWebToPublish.AllowUnsafeUpdates = true;

                pCf     = new WebSvcCustomFields.CustomFields();
                pCf.Url = mySite.Url + "/_vti_bin/psi/customfields.asmx";
                pCf.UseDefaultCredentials = true;

                psiLookupTable     = new WebSvcLookupTables.LookupTable();
                psiLookupTable.Url = mySite.Url + "/_vti_bin/psi/lookuptable.asmx";
                psiLookupTable.UseDefaultCredentials = true;

                psiProject     = new WebSvcProject.Project();
                psiProject.Url = mySite.Url + "/_vti_bin/psi/project.asmx";
                psiProject.UseDefaultCredentials = true;

                psiResource     = new WebSvcResource.Resource();
                psiResource.Url = mySite.Url + "/_vti_bin/psi/resource.asmx";
                psiResource.UseDefaultCredentials = true;

                projectUid = projectGuid;
            }
            catch (Exception ex)
            {
                myLog.WriteEntry("Error Loading Workspace Synch: " + ex.Message + ex.StackTrace, EventLogEntryType.Error, 401);
            }
        }
        public static Guid GetResourceGuidByWindowsAccount(string ls_name)
        {
            string errLoc = "";

            try
            {
                WebSvcResource.Resource        res      = new WebSvcResource.Resource();
                WebSvcResource.ResourceDataSet lo_resDS = new WebSvcResource.ResourceDataSet();
                res.Credentials = System.Net.CredentialCache.DefaultCredentials;

                string nameColumn = lo_resDS.Resources.WRES_ACCOUNTColumn.ColumnName;

                string resUID = lo_resDS.Resources.RES_UIDColumn.ColumnName;

                PSLibrary.Filter.FieldOperationType equal = PSLibrary.Filter.FieldOperationType.Equal;
                PSLibrary.Filter lo_filter = new PSLibrary.Filter();

                lo_filter.FilterTableName = lo_resDS.Resources.TableName;
                lo_filter.Fields.Add(new PSLibrary.Filter.Field(resUID));
                lo_filter.Criteria = new PSLibrary.Filter.FieldOperator(equal, nameColumn, ls_name);
                errLoc             = "ReadResources()";
                lo_resDS           = res.ReadResources(lo_filter.GetXml(), false);
                errLoc             = "Returning Guid";
                return((Guid)lo_resDS.Tables[lo_resDS.Resources.TableName].Rows[0][0]);
            }
            catch (Exception ex)
            {
                Trace.WriteLine(ex.ToString());

                using (var myLog = new EventLog("EPM Live", ".", "EPM Live Helper"))
                {
                    myLog.WriteEntry($"Error at GetResourceGuidByWindowsAccount: {ex.Message}{ex.StackTrace}", EventLogEntryType.Error, 401);
                    return(new Guid());
                }
            }
        }