This is just a page to practice and learn WikiFormatting. Go ahead, edit it freely. = How to set up Trac = == Installation == Currently we are using Trac 11.1 installed on a Debian OS.[[BR]] First you need to install [http://pypi.python.org/packages/2.5/s/setuptools/setuptools-0.6c9-py2.5.egg#md5=fe67c3e5a17b12c0e7c541b7ea43a8e6 setuptools]. After you download the .egg install it with: {{{ sudo sh setuptools-0.6c9-py2.5.egg }}} Then you can install Trac executing: {{{ sudo easy_install Trac }}} * Usefull links http://pypi.python.org/pypi/setuptools#installation-instructions [[BR]] http://trac.edgewall.org/wiki/TracInstall [[BR]] http://trac.edgewall.org/wiki/TracOnDebian [[BR]] == Setting up Postgresql == The trac database is under postgres with user "scs" and schema "trac". * Usefull links http://www.postgresql.org/docs/7.4/interactive/user-manag.html [[BR]] http://trac.edgewall.org/wiki/TracEnvironment [[BR]] == Setting up Plug-ins == * Current Plug-ins AdvancedTicketWorkflowPlugin http://trac-hacks.org/wiki/AdvancedTicketWorkflowPlugin [[BR]] BackLinksMenu http://trac-hacks.org/wiki/BackLinksMenuMacro [[BR]] HudsonTrac http://trac-hacks.org/wiki/HudsonTracPlugin [[BR]] PrivateWikis http://trac-hacks.org/wiki/PrivateWikiPlugin [[BR]] TicketSubmitPolicy http://trac-hacks.org/wiki/TicketModifiedFilesPlugin [[BR]] TracAccountManager http://trac-hacks.org/wiki/AccountManagerPlugin [[BR]] TracCustomRoadmap http://trac-hacks.org/wiki/CustomRoadmapPlugin [[BR]] TracDiscussion http://trac-hacks.org/wiki/DiscussionPlugin [[BR]] TracFullBlogPlugin http://trac-hacks.org/wiki/FullBlogPlugin [[BR]] TracGoogleAnalytics http://trac-hacks.org/wiki/TracGoogleAnalyticsPlugin [[BR]] TracIncludeMacro http://trac-hacks.org/wiki/IncludeMacro [[BR]] TracRecaptchaRegister http://trac-hacks.org/wiki/RecaptchaRegisterPlugin [[BR]] TracSpamFilter http://trac-hacks.org/wiki/SpamFilterPlugin [[BR]] TracTicketDelete http://trac-hacks.org/wiki/TicketDeletePlugin [[BR]] TracTocMacro http://trac-hacks.org/wiki/TocMacro [[BR]] TypedTicketWorkflow http://trac-hacks.org/wiki/TypedTicketWorkflowPlugin [[BR]] Current Trac configuration file attachment:trac.ini [[BR]] == Permissions and Authentication == anonymous - BLOG_VIEW BROWSER_VIEW CHANGESET_VIEW DISCUSSION_VIEW FILE_VIEW LOG_VIEW MILESTONE_VIEW REPORT_SQL_VIEW REPORT_VIEW ROADMAP_VIEW SEARCH_VIEW TICKET_VIEW TIMELINE_VIEW WIKI_VIEW [[BR]] authenticated - BLOG_COMMENT BLOG_MODIFY_OWN DISCUSSION_APPEND TICKET_CREATE [[BR]] team - BLOG_ADMIN DISCUSSION_ADMIN DISCUSSION_APPEND DISCUSSION_MODERATE TICKET_ADMIN WIKI_ADMIN [[BR]] The authentication uses HtDigestStore with the acct_mgr.web_ui.loginmodule from the TracAccountManager plugin. --------------------------------- * Кафе машината - София, Сервиз "БЪЛГАРИЯ СЕРВИЗ" : * ул. "Вежен" 25, тел.: 963-22-49; * жк "Люлин-10" бл. 149-партер, тел.: 925-08-70, 925-13-22 --------------------------------- * Sophie2 Server set-up * Trac * SVN * Postgres + migrating the WBS * Nexus * Buld Server * Hudson * Testlink * SCS_REPO_MAINTENANCE, SCS_ISSUE_TRACKER_MAINTENANCE, SCS_BACKUP * New Server installation and set-up * software RAID * users + quotas * vnc4server instances for all users * Eclipse, Java 6, Maven * Dzver port forwarding. * Sophie2 web site with Dian. {{{ #!C [WebMethod] public List SearchStates(string userName, string password, string name) { IWorkspace workspace = Connect(userName, password); List resCities = new List(); IFeatureClass statesClass = (workspace as IFeatureWorkspace).OpenFeatureClass("States"); IFeatureClass capitalsClass = (workspace as IFeatureWorkspace).OpenFeatureClass("Capitals"); int nameIndex = capitalsClass.FindField("CITY_NAME"); IQueryFilter sfs = new QueryFilterClass(); sfs.WhereClause = "STATE_ABBR = '" + name + "'"; IFeatureCursor resCursor = statesClass.Search(sfs, true); IFeature state = resCursor.NextFeature(); while (state != null) { ISpatialFilter sfc = new SpatialFilterClass(); IGeometry buffer = state.Shape; sfc.Geometry = buffer; sfc.SpatialRel = esriSpatialRelEnum.esriSpatialRelEnvelopeIntersects; IFeatureCursor resCursorCy = capitalsClass.Search(sfc, true); IFeature capital = resCursorCy.NextFeature(); while (capital != null) { resCities.Add(new City(capital.get_Value(nameIndex) as string, 0, 0)); capital = resCursorCy.NextFeature(); } Marshal.ReleaseComObject(resCursorCy); state = resCursor.NextFeature(); } Marshal.ReleaseComObject(resCursor); return resCities; } }}}