keithsalisbury-subtrac 0.1.1

Sign up to get free protection for your applications and to get access to all the features.
Files changed (139) hide show
  1. data/LICENSE +20 -0
  2. data/README.rdoc +7 -0
  3. data/Rakefile +56 -0
  4. data/VERSION.yml +4 -0
  5. data/bin/subtrac +40 -0
  6. data/lib/subtrac.rb +245 -0
  7. data/lib/subtrac/common/clients/index.wsgi +89 -0
  8. data/lib/subtrac/common/favicon.ico +0 -0
  9. data/lib/subtrac/common/images/trac/banner_bg.jpg +0 -0
  10. data/lib/subtrac/common/images/trac/bar_bg.gif +0 -0
  11. data/lib/subtrac/common/images/trac/footer_back.png +0 -0
  12. data/lib/subtrac/common/images/trac/main_bg.gif +0 -0
  13. data/lib/subtrac/common/images/trac/saint_logo_small.png +0 -0
  14. data/lib/subtrac/common/static/404.html +14 -0
  15. data/lib/subtrac/common/styles/trac.css +222 -0
  16. data/lib/subtrac/common/trac.ini +178 -0
  17. data/lib/subtrac/config/config.yml +54 -0
  18. data/lib/subtrac/passwords +1 -0
  19. data/lib/subtrac/shared/trac.ini +178 -0
  20. data/lib/subtrac/templates/location.erb +16 -0
  21. data/lib/subtrac/templates/projects/blank/svn/branches/README +0 -0
  22. data/lib/subtrac/templates/projects/blank/svn/tags/README +0 -0
  23. data/lib/subtrac/templates/projects/blank/svn/trunk/README +0 -0
  24. data/lib/subtrac/templates/projects/blank/trac/wiki/WikiStart +57 -0
  25. data/lib/subtrac/templates/projects/new/svn/trunk/trac/wiki/WikiStart +46 -0
  26. data/lib/subtrac/templates/projects/new/trac/wiki/WikiStart +23 -0
  27. data/lib/subtrac/templates/projects/trac_theme/svn/trunk/index/index.html +22 -0
  28. data/lib/subtrac/templates/projects/trac_theme/svn/trunk/templates/layout.html +56 -0
  29. data/lib/subtrac/templates/projects/trac_theme/svn/trunk/templates/site.html +27 -0
  30. data/lib/subtrac/templates/projects/trac_theme/svn/trunk/templates/theme.html +86 -0
  31. data/lib/subtrac/templates/projects/trac_theme/trac/wiki/WikiStart +4 -0
  32. data/lib/subtrac/templates/trac.erb +25 -0
  33. data/lib/subtrac/templates/vhost.erb +35 -0
  34. data/lib/subtrac/trac-plugins/advancedticketworkflowplugin/advancedworkflow/__init__.py +0 -0
  35. data/lib/subtrac/trac-plugins/advancedticketworkflowplugin/advancedworkflow/controller.py +419 -0
  36. data/lib/subtrac/trac-plugins/advancedticketworkflowplugin/setup.cfg +3 -0
  37. data/lib/subtrac/trac-plugins/advancedticketworkflowplugin/setup.py +20 -0
  38. data/lib/subtrac/trac-plugins/clientsplugin/clients/__init__.py +0 -0
  39. data/lib/subtrac/trac-plugins/clientsplugin/clients/action.py +28 -0
  40. data/lib/subtrac/trac-plugins/clientsplugin/clients/action_email.py +168 -0
  41. data/lib/subtrac/trac-plugins/clientsplugin/clients/action_zendesk_forum.py +137 -0
  42. data/lib/subtrac/trac-plugins/clientsplugin/clients/admin.py +91 -0
  43. data/lib/subtrac/trac-plugins/clientsplugin/clients/api.py +199 -0
  44. data/lib/subtrac/trac-plugins/clientsplugin/clients/client.py +105 -0
  45. data/lib/subtrac/trac-plugins/clientsplugin/clients/events.py +287 -0
  46. data/lib/subtrac/trac-plugins/clientsplugin/clients/eventsadmin.py +71 -0
  47. data/lib/subtrac/trac-plugins/clientsplugin/clients/htdocs/clients.css +4 -0
  48. data/lib/subtrac/trac-plugins/clientsplugin/clients/model.py +135 -0
  49. data/lib/subtrac/trac-plugins/clientsplugin/clients/processor.py +70 -0
  50. data/lib/subtrac/trac-plugins/clientsplugin/clients/reportmanager.py +142 -0
  51. data/lib/subtrac/trac-plugins/clientsplugin/clients/reports.py +231 -0
  52. data/lib/subtrac/trac-plugins/clientsplugin/clients/summary.py +27 -0
  53. data/lib/subtrac/trac-plugins/clientsplugin/clients/summary_milestone.py +152 -0
  54. data/lib/subtrac/trac-plugins/clientsplugin/clients/summary_ticketchanges.py +160 -0
  55. data/lib/subtrac/trac-plugins/clientsplugin/clients/templates/admin_client_events.html +124 -0
  56. data/lib/subtrac/trac-plugins/clientsplugin/clients/templates/admin_clients.html +134 -0
  57. data/lib/subtrac/trac-plugins/clientsplugin/cron/changes.xslt +132 -0
  58. data/lib/subtrac/trac-plugins/clientsplugin/cron/run-client-event +97 -0
  59. data/lib/subtrac/trac-plugins/clientsplugin/cron/summary.xslt +161 -0
  60. data/lib/subtrac/trac-plugins/clientsplugin/setup.py +43 -0
  61. data/lib/subtrac/trac-plugins/estimationtoolsplugin/estimationtools/__init__.py +4 -0
  62. data/lib/subtrac/trac-plugins/estimationtoolsplugin/estimationtools/burndownchart.py +273 -0
  63. data/lib/subtrac/trac-plugins/estimationtoolsplugin/estimationtools/hoursinplaceeditor.py +44 -0
  64. data/lib/subtrac/trac-plugins/estimationtoolsplugin/estimationtools/hoursremaining.py +36 -0
  65. data/lib/subtrac/trac-plugins/estimationtoolsplugin/estimationtools/htdocs/jquery-1.2.3.min.js +32 -0
  66. data/lib/subtrac/trac-plugins/estimationtoolsplugin/estimationtools/htdocs/jquery.jeditable.js +409 -0
  67. data/lib/subtrac/trac-plugins/estimationtoolsplugin/estimationtools/htdocs/jquery.jeditable.mini.js +30 -0
  68. data/lib/subtrac/trac-plugins/estimationtoolsplugin/estimationtools/templates/edithours.html +53 -0
  69. data/lib/subtrac/trac-plugins/estimationtoolsplugin/estimationtools/tests/burndownchart.py +181 -0
  70. data/lib/subtrac/trac-plugins/estimationtoolsplugin/estimationtools/tests/hoursremaining.py +66 -0
  71. data/lib/subtrac/trac-plugins/estimationtoolsplugin/estimationtools/tests/workloadchart.py +47 -0
  72. data/lib/subtrac/trac-plugins/estimationtoolsplugin/estimationtools/utils.py +93 -0
  73. data/lib/subtrac/trac-plugins/estimationtoolsplugin/estimationtools/workloadchart.py +86 -0
  74. data/lib/subtrac/trac-plugins/estimationtoolsplugin/setup.py +20 -0
  75. data/lib/subtrac/trac-plugins/timingandestimationplugin/scripts/SumRollups.js +23 -0
  76. data/lib/subtrac/trac-plugins/timingandestimationplugin/scripts/adw_tracdb.py +128 -0
  77. data/lib/subtrac/trac-plugins/timingandestimationplugin/scripts/git-post-receive +40 -0
  78. data/lib/subtrac/trac-plugins/timingandestimationplugin/scripts/trac-post-commit.py +285 -0
  79. data/lib/subtrac/trac-plugins/timingandestimationplugin/scripts/trac_billing.py +173 -0
  80. data/lib/subtrac/trac-plugins/timingandestimationplugin/scripts/utils/__init__.py +0 -0
  81. data/lib/subtrac/trac-plugins/timingandestimationplugin/scripts/utils/mail.py +164 -0
  82. data/lib/subtrac/trac-plugins/timingandestimationplugin/setup.py +69 -0
  83. data/lib/subtrac/trac-plugins/timingandestimationplugin/timingandestimationplugin/__init__.py +1 -0
  84. data/lib/subtrac/trac-plugins/timingandestimationplugin/timingandestimationplugin/api.py +292 -0
  85. data/lib/subtrac/trac-plugins/timingandestimationplugin/timingandestimationplugin/blackmagic.py +172 -0
  86. data/lib/subtrac/trac-plugins/timingandestimationplugin/timingandestimationplugin/dbhelper.py +178 -0
  87. data/lib/subtrac/trac-plugins/timingandestimationplugin/timingandestimationplugin/htdocs/billingplugin.css +25 -0
  88. data/lib/subtrac/trac-plugins/timingandestimationplugin/timingandestimationplugin/htdocs/field_disabler.js +6 -0
  89. data/lib/subtrac/trac-plugins/timingandestimationplugin/timingandestimationplugin/htdocs/formatDate.js +356 -0
  90. data/lib/subtrac/trac-plugins/timingandestimationplugin/timingandestimationplugin/htdocs/js/tip_centerwindow.js +100 -0
  91. data/lib/subtrac/trac-plugins/timingandestimationplugin/timingandestimationplugin/htdocs/js/tip_followscroll.js +84 -0
  92. data/lib/subtrac/trac-plugins/timingandestimationplugin/timingandestimationplugin/htdocs/js/wz_tooltip.js +1149 -0
  93. data/lib/subtrac/trac-plugins/timingandestimationplugin/timingandestimationplugin/htdocs/linkifyer.js +119 -0
  94. data/lib/subtrac/trac-plugins/timingandestimationplugin/timingandestimationplugin/htdocs/query.js +73 -0
  95. data/lib/subtrac/trac-plugins/timingandestimationplugin/timingandestimationplugin/htdocs/ticket.js +165 -0
  96. data/lib/subtrac/trac-plugins/timingandestimationplugin/timingandestimationplugin/query_webui.py +28 -0
  97. data/lib/subtrac/trac-plugins/timingandestimationplugin/timingandestimationplugin/reportmanager.py +221 -0
  98. data/lib/subtrac/trac-plugins/timingandestimationplugin/timingandestimationplugin/reports.py +675 -0
  99. data/lib/subtrac/trac-plugins/timingandestimationplugin/timingandestimationplugin/reports_filter.py +150 -0
  100. data/lib/subtrac/trac-plugins/timingandestimationplugin/timingandestimationplugin/statuses.py +25 -0
  101. data/lib/subtrac/trac-plugins/timingandestimationplugin/timingandestimationplugin/tande_filters.py +131 -0
  102. data/lib/subtrac/trac-plugins/timingandestimationplugin/timingandestimationplugin/templates/billing.cs +84 -0
  103. data/lib/subtrac/trac-plugins/timingandestimationplugin/timingandestimationplugin/templates/billing.html +104 -0
  104. data/lib/subtrac/trac-plugins/timingandestimationplugin/timingandestimationplugin/ticket_daemon.py +194 -0
  105. data/lib/subtrac/trac-plugins/timingandestimationplugin/timingandestimationplugin/ticket_policy.py +62 -0
  106. data/lib/subtrac/trac-plugins/timingandestimationplugin/timingandestimationplugin/ticket_webui.py +28 -0
  107. data/lib/subtrac/trac-plugins/timingandestimationplugin/timingandestimationplugin/usermanual.py +127 -0
  108. data/lib/subtrac/trac-plugins/timingandestimationplugin/timingandestimationplugin/webui.py +129 -0
  109. data/lib/subtrac/trac-plugins/worklogplugin/setup.py +29 -0
  110. data/lib/subtrac/trac-plugins/worklogplugin/worklog/__init__.py +1 -0
  111. data/lib/subtrac/trac-plugins/worklogplugin/worklog/api.py +187 -0
  112. data/lib/subtrac/trac-plugins/worklogplugin/worklog/htdocs/jqModal.css +40 -0
  113. data/lib/subtrac/trac-plugins/worklogplugin/worklog/htdocs/jqModal.js +67 -0
  114. data/lib/subtrac/trac-plugins/worklogplugin/worklog/htdocs/jquery.mousewheel.pack.js +12 -0
  115. data/lib/subtrac/trac-plugins/worklogplugin/worklog/htdocs/jquery.timeentry.pack.js +7 -0
  116. data/lib/subtrac/trac-plugins/worklogplugin/worklog/htdocs/tracWorklog.js +40 -0
  117. data/lib/subtrac/trac-plugins/worklogplugin/worklog/htdocs/ui.datepicker.css +208 -0
  118. data/lib/subtrac/trac-plugins/worklogplugin/worklog/htdocs/ui.datepicker.js +1439 -0
  119. data/lib/subtrac/trac-plugins/worklogplugin/worklog/htdocs/work.png +0 -0
  120. data/lib/subtrac/trac-plugins/worklogplugin/worklog/htdocs/work.xcf +0 -0
  121. data/lib/subtrac/trac-plugins/worklogplugin/worklog/htdocs/worklogplugin.css +80 -0
  122. data/lib/subtrac/trac-plugins/worklogplugin/worklog/htdocs/workstart.png +0 -0
  123. data/lib/subtrac/trac-plugins/worklogplugin/worklog/htdocs/workstop.png +0 -0
  124. data/lib/subtrac/trac-plugins/worklogplugin/worklog/manager.py +336 -0
  125. data/lib/subtrac/trac-plugins/worklogplugin/worklog/reports.py +598 -0
  126. data/lib/subtrac/trac-plugins/worklogplugin/worklog/templates/worklog.html +45 -0
  127. data/lib/subtrac/trac-plugins/worklogplugin/worklog/templates/worklog_stop.html +70 -0
  128. data/lib/subtrac/trac-plugins/worklogplugin/worklog/templates/worklog_user.html +40 -0
  129. data/lib/subtrac/trac-plugins/worklogplugin/worklog/templates/worklog_webadminui.html +59 -0
  130. data/lib/subtrac/trac-plugins/worklogplugin/worklog/ticket_daemon.py +33 -0
  131. data/lib/subtrac/trac-plugins/worklogplugin/worklog/ticket_filter.py +153 -0
  132. data/lib/subtrac/trac-plugins/worklogplugin/worklog/timeline_hook.py +96 -0
  133. data/lib/subtrac/trac-plugins/worklogplugin/worklog/usermanual.py +29 -0
  134. data/lib/subtrac/trac-plugins/worklogplugin/worklog/util.py +31 -0
  135. data/lib/subtrac/trac-plugins/worklogplugin/worklog/webadminui.py +47 -0
  136. data/lib/subtrac/trac-plugins/worklogplugin/worklog/webui.py +174 -0
  137. data/lib/subtrac/trac-plugins/worklogplugin/worklog/xmlrpc.py +73 -0
  138. data/lib/subtrac/version.rb +4 -0
  139. metadata +191 -0
@@ -0,0 +1 @@
1
+ admin:6kvCHrTLk3ubo
@@ -0,0 +1,178 @@
1
+ # -*- coding: utf-8 -*-
2
+
3
+ [attachment]
4
+ max_size = 262144
5
+ render_unsafe_content = false
6
+
7
+ [browser]
8
+ color_scale = True
9
+ downloadable_paths = /trunk, /branches/*, /tags/*
10
+ hide_properties = svk:merge
11
+ intermediate_color =
12
+ intermediate_point =
13
+ newest_color = (255, 136, 136)
14
+ oldest_color = (136, 136, 255)
15
+ oneliner_properties = trac:summary
16
+ render_unsafe_content = false
17
+ wiki_properties = trac:description
18
+
19
+ [changeset]
20
+ max_diff_bytes = 10000000
21
+ max_diff_files = 0
22
+ wiki_format_messages = true
23
+
24
+ [header_logo]
25
+ alt = Saint Development Server
26
+ height = -1
27
+ link = /
28
+ src = /images/trac/saint_logo_small.png
29
+ width = -1
30
+
31
+ [inherit]
32
+ plugins_dir =
33
+ templates_dir =
34
+
35
+ [logging]
36
+ log_file = trac.log
37
+ # log_format = <inherited>
38
+ log_level = DEBUG
39
+ log_type = none
40
+
41
+ [milestone]
42
+ stats_provider = DefaultTicketGroupStatsProvider
43
+
44
+ [mimeviewer]
45
+ enscript_modes = text/x-dylan:dylan:4
46
+ enscript_path = enscript
47
+ max_preview_size = 262144
48
+ mime_map = text/x-dylan:dylan,text/x-idl:ice,text/x-ada:ads:adb
49
+ php_path = php
50
+ tab_width = 8
51
+
52
+ [notification]
53
+ admit_domains =
54
+ always_notify_owner = false
55
+ always_notify_reporter = false
56
+ always_notify_updater = true
57
+ ignore_domains =
58
+ mime_encoding = base64
59
+ smtp_always_bcc =
60
+ smtp_always_cc =
61
+ smtp_default_domain =
62
+ smtp_enabled = false
63
+ smtp_from = trac@localhost
64
+ smtp_from_name =
65
+ smtp_password =
66
+ smtp_port = 25
67
+ smtp_replyto = trac@localhost
68
+ smtp_server = localhost
69
+ smtp_subject_prefix = __default__
70
+ smtp_user =
71
+ ticket_subject_template = $prefix #$ticket.id: $summary
72
+ use_public_cc = false
73
+ use_short_addr = false
74
+ use_tls = false
75
+
76
+ [project]
77
+ admin =
78
+ admin_trac_url = .
79
+ descr = My example project
80
+ footer = Visit the Trac open source project at<br /><a href="http://trac.edgewall.org/">http://trac.edgewall.org/</a>
81
+ icon = /favicon.ico
82
+ url =
83
+
84
+ [query]
85
+ default_anonymous_query = status!=closed&cc~=$USER
86
+ default_query = status!=closed&owner=$USER
87
+ items_per_page = 100
88
+
89
+ [report]
90
+ items_per_page = 100
91
+ items_per_page_rss = 0
92
+
93
+ [revisionlog]
94
+ default_log_limit = 100
95
+
96
+ [roadmap]
97
+ stats_provider = DefaultTicketGroupStatsProvider
98
+
99
+ [search]
100
+ min_query_length = 3
101
+
102
+ [svn]
103
+ branches = trunk,branches/*
104
+ tags = tags/*
105
+
106
+ [ticket]
107
+ default_cc =
108
+ default_component =
109
+ default_description =
110
+ default_keywords =
111
+ default_milestone =
112
+ default_owner =
113
+ default_priority = major
114
+ default_resolution = fixed
115
+ default_severity =
116
+ default_summary =
117
+ default_type = defect
118
+ default_version =
119
+ max_comment_size = 262144
120
+ max_description_size = 262144
121
+ preserve_newlines = default
122
+ restrict_owner = false
123
+ workflow = ConfigurableTicketWorkflow
124
+
125
+ [ticket-workflow]
126
+ accept = new,assigned,accepted,reopened -> accepted
127
+ accept.operations = set_owner_to_self
128
+ accept.permissions = TICKET_MODIFY
129
+ leave = * -> *
130
+ leave.default = 1
131
+ leave.operations = leave_status
132
+ reassign = new,assigned,accepted,reopened -> assigned
133
+ reassign.operations = set_owner
134
+ reassign.permissions = TICKET_MODIFY
135
+ reopen = closed -> reopened
136
+ reopen.operations = del_resolution
137
+ reopen.permissions = TICKET_CREATE
138
+ resolve = new,assigned,accepted,reopened -> closed
139
+ resolve.operations = set_resolution
140
+ resolve.permissions = TICKET_MODIFY
141
+
142
+ [timeline]
143
+ abbreviated_messages = True
144
+ changeset_collapse_events = false
145
+ changeset_long_messages = false
146
+ changeset_show_files = 0
147
+ default_daysback = 30
148
+ max_daysback = 90
149
+ newticket_formatter = oneliner
150
+ ticket_show_details = false
151
+
152
+ [trac]
153
+ authz_file =
154
+ authz_module_name =
155
+ auto_reload = False
156
+ base_url =
157
+ check_auth_ip = false
158
+ database = sqlite:db/trac.db
159
+ default_charset = iso-8859-15
160
+ htdocs_location =
161
+ ignore_auth_case = false
162
+ mainnav = wiki,timeline,roadmap,browser,tickets,newticket,search
163
+ metanav = login,logout,prefs,help,about
164
+ permission_policies = DefaultPermissionPolicy, LegacyAttachmentPolicy
165
+ permission_store = DefaultPermissionStore
166
+ repository_type = svn
167
+ secure_cookies = False
168
+ show_email_addresses = false
169
+ show_ip_addresses = false
170
+ timeout = 20
171
+ use_base_url_for_redirect = False
172
+
173
+ [wiki]
174
+ ignore_missing_pages = false
175
+ max_size = 262144
176
+ render_unsafe_content = false
177
+ split_page_names = false
178
+
@@ -0,0 +1,16 @@
1
+ <location /<%= client_name %>>
2
+ SetHandler mod_python
3
+ PythonInterpreter main_interpreter
4
+ PythonHandler trac.web.modpython_frontend
5
+ PythonOption TracEnvParentDir <%= @APP_CONFIG[:dirs][:trac] %>/<%= client_name %>
6
+ PythonOption TracUriRoot /<%= client_name %>
7
+ PythonOption TracEnvIndexTemplate <%= @APP_CONFIG[:dirs][:trac] %>/<%= client_name %>/trac_theme/htdocs/index/index.html
8
+ PythonOption PYTHON_EGG_CACHE /tmp
9
+ </location>
10
+ <location <%= @APP_CONFIG[:urls][:svn] %>/<%= client_name %>>
11
+ DAV svn
12
+ SVNParentPath <%= @APP_CONFIG[:urls][:svn] %>/<%= client_name %>
13
+ SVNListParentPath On
14
+ SVNAutoversioning On
15
+ SVNReposName "Saint Digital Source Repository for <%= client_name %>"
16
+ </location>
@@ -0,0 +1,57 @@
1
+ [[PageOutline]]
2
+ = Welcome to the Saint Development Server =
3
+
4
+ This is the home of development for #{client}. This page is editable by design. That means YOU. If something is missing, fix it. This is what you make of it so get involved.
5
+
6
+ == Starting Points ==
7
+
8
+ * [#{@APP_CONFIG[:urls][:svn]}/ Browse all #{client_name} SVN Repositories]
9
+ * [#{@APP_CONFIG[:urls][:svn]}/#{client_name}/#{project_name} Browse the #{project_name} repository]
10
+
11
+ === How to check this project out ===
12
+
13
+ Make sure you have subversion client installed, then you can check the project out using:
14
+
15
+ {{{
16
+ svn checkout http://#{@APP_CONFIG[:server][:hostname]}#{@APP_CONFIG[:urls][:svn]}/#{client_name}/#{project_name}/trunk #{project_name}
17
+ }}}
18
+
19
+ === Using SVN ===
20
+
21
+ * [http://tortoisesvn.tigris.org/ For Windows use Tortoise SVN]
22
+ * [http://scplugin.tigris.org/ For OS X use SCPlugin]
23
+ * [http://theappleblog.com/2009/02/23/12-subversion-apps-for-os-x/ There's loads more if you don't like these]
24
+
25
+ == Template Projects ==
26
+
27
+ This system allows you to set up a default template for different project types. All templates are available to browse in the [#{@APP_CONFIG[:urls][:svn]}/templates/svn/ Browse all Templates Repositories] area.
28
+
29
+
30
+ = About Trac =
31
+
32
+ Trac is a '''minimalistic''' approach to '''web-based''' management of
33
+ '''software projects'''. Its goal is to simplify effective tracking and handling of software issues, enhancements and overall progress.
34
+
35
+ All aspects of Trac have been designed with the single goal to
36
+ '''help developers write great software''' while '''staying out of the way'''
37
+ and imposing as little as possible on a team's established process and
38
+ culture.
39
+
40
+ As all Wiki pages, this page is editable, this means that you can
41
+ modify the contents of this page simply by using your
42
+ web-browser. Simply click on the "Edit this page" link at the bottom
43
+ of the page. WikiFormatting will give you a detailed description of
44
+ available Wiki formatting commands.
45
+
46
+ TracGuide is a good place to start.
47
+
48
+ Enjoy! [[BR]]
49
+ ''The Saint Team''
50
+
51
+ == Starting Points ==
52
+
53
+ * TracGuide -- Built-in Documentation
54
+ * [http://trac.edgewall.org/wiki/TracFaq Trac FAQ] -- Frequently Asked Questions
55
+ * TracSupport -- Trac Support
56
+
57
+ For a complete list of local wiki pages, see TitleIndex.
@@ -0,0 +1,46 @@
1
+ [[PageOutline]]
2
+ = Welcome to the Saint Development Server =
3
+
4
+ This is the home of development for {CLIENT_NAME}. This page is editable by design. That means YOU. If something is missing, fix it. This is what you make of it so get involved.
5
+
6
+ == Starting Points ==
7
+
8
+ * [http://{SERVER_HOSTNAME}/{CLIENT_NAME}/svn/ Browse all {CLIENT_NAME} SVN Repositories]
9
+ * [http://{SERVER_HOSTNAME}/{CLIENT_NAME}/svn/{PROJECT_NAME} Browse the {PROJECT_NAME} repository]
10
+
11
+ === How to check this project out ===
12
+
13
+ Make sure you have subversion client installed, then you can check the project out using:
14
+
15
+ {{{
16
+ svn checkout http://{SERVER_HOSTNAME}/svn/{CLIENT_NAME}/{PROJECT_NAME}/trunk {PROJECT_NAME}
17
+ }}}
18
+
19
+ = About Trac =
20
+
21
+ Trac is a '''minimalistic''' approach to '''web-based''' management of
22
+ '''software projects'''. Its goal is to simplify effective tracking and handling of software issues, enhancements and overall progress.
23
+
24
+ All aspects of Trac have been designed with the single goal to
25
+ '''help developers write great software''' while '''staying out of the way'''
26
+ and imposing as little as possible on a team's established process and
27
+ culture.
28
+
29
+ As all Wiki pages, this page is editable, this means that you can
30
+ modify the contents of this page simply by using your
31
+ web-browser. Simply click on the "Edit this page" link at the bottom
32
+ of the page. WikiFormatting will give you a detailed description of
33
+ available Wiki formatting commands.
34
+
35
+ TracGuide is a good place to start.
36
+
37
+ Enjoy! [[BR]]
38
+ ''The Saint Team''
39
+
40
+ == Starting Points ==
41
+
42
+ * TracGuide -- Built-in Documentation
43
+ * [http://trac.edgewall.org/wiki/TracFaq Trac FAQ] -- Frequently Asked Questions
44
+ * TracSupport -- Trac Support
45
+
46
+ For a complete list of local wiki pages, see TitleIndex.
@@ -0,0 +1,23 @@
1
+ = Welcome to the {PROJECT_NAME} for {CLIENT_NAME} =
2
+
3
+ This is the home of development for {CLIENT_NAME}. This page is editable by design. That means YOU. If something is missing, fix it. This is what you make of it so get involved.
4
+
5
+ == Starting Points ==
6
+
7
+ * [http://{SERVER_HOSTNAME}/{CLIENT_NAME}/svn/ Browse all {CLIENT_NAME} SVN Repositories]
8
+ * [http://{SERVER_HOSTNAME}/{CLIENT_NAME}/svn/{PROJECT_NAME} Browse the {PROJECT_NAME} repository]
9
+
10
+ === How to check this project out ===
11
+
12
+ Make sure you have subversion client installed, then you can check the project out using:
13
+
14
+ {{{
15
+ svn checkout http://{SERVER_HOSTNAME}/svn/{CLIENT_NAME}/{PROJECT_NAME}/trunk {PROJECT_NAME}
16
+ }}}
17
+
18
+
19
+ === Using SVN ===
20
+
21
+ * [http://tortoisesvn.tigris.org/ For Windows use Tortoise SVN]
22
+ * [http://scplugin.tigris.org/ For OS X use SCPlugin]
23
+ * [http://theappleblog.com/2009/02/23/12-subversion-apps-for-os-x/ There's loads more if you don't like these]
@@ -0,0 +1,22 @@
1
+ <!DOCTYPE html
2
+ PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
3
+ "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
4
+ <html xmlns="http://www.w3.org/1999/xhtml"
5
+ xmlns:py="http://genshi.edgewall.org/"
6
+ xmlns:xi="http://www.w3.org/2001/XInclude">
7
+ <head>
8
+ <title>Available Projects</title>
9
+ </head>
10
+ <body>
11
+ <h1>Available Projects</h1>
12
+ <ul>
13
+ <li py:for="project in projects" py:choose="">
14
+ <a py:when="project.href" href="$project.href"
15
+ title="$project.description">$project.name</a>
16
+ <py:otherwise>
17
+ <small>$project.name: <em>Error</em> <br /> ($project.description)</small>
18
+ </py:otherwise>
19
+ </li>
20
+ </ul>
21
+ </body>
22
+ </html>
@@ -0,0 +1,56 @@
1
+ <!DOCTYPE html
2
+ PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
3
+ "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
4
+ <html xmlns="http://www.w3.org/1999/xhtml"
5
+ xmlns:xi="http://www.w3.org/2001/XInclude"
6
+ xmlns:py="http://genshi.edgewall.org/"
7
+ py:strip="">
8
+
9
+ <py:match path="head" once="true"><head>
10
+ <title py:with="title = list(select('title/text()'))">
11
+ <py:if test="title">${title} – </py:if>${project.name or 'Trac'}
12
+ </title>
13
+ <py:if test="chrome.links">
14
+ <py:for each="rel, links in chrome.links.items()">
15
+ <link rel="${rel}" py:for="link in links" py:attrs="link" />
16
+ </py:for>
17
+ </py:if>
18
+ <py:if test="'SEARCH_VIEW' in perm" id="search">
19
+ <link type="application/opensearchdescription+xml" rel="search"
20
+ href="${href.search('opensearch')}" title="Search $project.name"/>
21
+ </py:if>
22
+ <script py:for="script in chrome.scripts"
23
+ type="${script.type}" src="${script.href}"></script>
24
+ ${Markup('&lt;!--[if lt IE 7]&gt;')}
25
+ <script type="text/javascript" src="${chrome.htdocs_location}js/ie_pre7_hacks.js"
26
+ ></script>
27
+ ${Markup('&lt;![endif]--&gt;')}
28
+ ${select("*[local-name() != 'title']")}
29
+ </head></py:match>
30
+
31
+ <py:match path="body" once="true" buffer="false"><body>
32
+ ${select('*|text()')}
33
+
34
+ <script type="text/javascript" py:if="chrome.late_links">
35
+ <py:for each="link in chrome.late_links.get('stylesheet')">
36
+ jQuery.loadStyleSheet("${link.href}", "${link.type}");
37
+ </py:for>
38
+ </script>
39
+ <script py:for="script in chrome.late_scripts"
40
+ type="${script.type}" src="${script.href}"></script>
41
+
42
+ <div id="altlinks" py:if="'alternate' in chrome.links">
43
+ <h3>Download in other formats:</h3>
44
+ <ul>
45
+ <li py:for="idx, link in enumerate(chrome.links.alternate)"
46
+ class="${first_last(idx, chrome.links.alternate)}">
47
+ <a rel="nofollow" href="${link.href}" class="${link['class']}"
48
+ py:content="link.title" />
49
+ </li>
50
+ </ul>
51
+ </div>
52
+ </body></py:match>
53
+
54
+ <xi:include href="$chrome.theme"><xi:fallback /></xi:include>
55
+ <xi:include href="site.html"><xi:fallback /></xi:include>
56
+ </html>
@@ -0,0 +1,27 @@
1
+ <html xmlns="http://www.w3.org/1999/xhtml"
2
+ xmlns:py="http://genshi.edgewall.org/"
3
+ py:strip="">
4
+
5
+ <!--! Add site-specific style sheet -->
6
+ <head py:match="head" py:attrs="select('@*')">
7
+ ${select('*|comment()|text()')}
8
+ <link rel="stylesheet" type="text/css"
9
+ href="${href.chrome('site/style.css')}" />
10
+ <link rel="stylesheet" type="text/css"
11
+ href="/styles/trac.css"/>
12
+ </head>
13
+
14
+ <body py:match="body" py:attrs="select('@*')">
15
+ <!--! Add site-specific header -->
16
+ <div id="siteheader">
17
+ <!--! Place your header content here... -->
18
+ </div>
19
+
20
+ ${select('*|text()')}
21
+
22
+ <!--! Add site-specific footer -->
23
+ <div id="sitefooter">
24
+ <!--! Place your footer content here... -->
25
+ </div>
26
+ </body>
27
+ </html>