Commit Graph

992 Commits

Author SHA1 Message Date
William MARTIN
c3cd494386 Add Project List API 2011-03-07 15:01:51 +01:00
Thomas Keller
00ebe1633c Merge branch 'develop' of git://projects.ceondo.com/indefero into develop 2011-03-03 23:44:10 +01:00
Thomas Keller
f63bfcb4f6 Raise PCRE's backtrack_limit for our regex callback usage to avoid
spurious errors on weird input (fixes issue 618).
2011-03-03 23:42:21 +01:00
Patrick Georgi
04069871bb Fixes to bugs introduced by the multiple mail feature 2011-03-03 21:04:24 +01:00
William MARTIN
31469204e0 Merge branch 'develop' of projects.ceondo.com:indefero into develop 2011-03-03 15:44:01 +01:00
William MARTIN
9b148c8c4a Fix precondition for API Issue Create
One is supposed to always need auth to post a ticket.
2011-03-03 15:43:51 +01:00
Patrick Georgi
98f4eac82a Merge branch 'multiple-mails' into develop 2011-03-03 14:12:03 +01:00
William MARTIN
cc89a7e6f8 Add support of renamed file for IDF_Scm_Git::getchanges() 2011-02-25 11:10:10 +01:00
William MARTIN
c486fe98fb Merge branch 'develop' of projects.ceondo.com:indefero into develop 2011-02-24 15:22:00 +01:00
William MARTIN
f0ac256ff6 Implementation of IDF_Scm_Git::getChanges() 2011-02-24 15:21:51 +01:00
Thomas Keller
e4b3adb2f5 Merge branch 'develop' of projects.ceondo.com:indefero into develop 2011-02-24 13:39:58 +01:00
Thomas Keller
58a5bc46d9 Temporarily disable the change view and diff download for merge
revisions until issue 581 has been fixed properly.
2011-02-24 13:38:42 +01:00
William MARTIN
52f8261d8c Finalize French translation 2011-02-24 09:10:44 +01:00
William MARTIN
721c385993 Merge branch 'develop' of projects.ceondo.com:indefero into develop 2011-02-24 08:59:23 +01:00
William MARTIN
9c80de19d7 Fix url in the tag cloud 2011-02-24 08:58:43 +01:00
Thomas Keller
f2c4faf054 * update pot and po files with latest strings from source and tx
* finalize German translation (again)
2011-02-23 23:49:19 +01:00
Thomas Keller
bc54b663e0 Improve the english a bit and make the previous error message cleaner 2011-02-23 23:04:47 +01:00
William MARTIN
6f1bb309d4 Apply the UI enhancement of issue tags cloud to wiki and download part too. 2011-02-23 22:35:43 +01:00
William MARTIN
cdedaa4604 Fix issue 591
Improve render of issue tag list
2011-02-23 20:20:02 +01:00
William MARTIN
2130b327df Fix issue 616
Patch from Patrick Georgi
2011-02-23 18:24:49 +01:00
William MARTIN
3e238bea0b Enhancement of the invalid revision handler
Show the list of available branch
2011-02-23 18:12:29 +01:00
William MARTIN
266c297632 Merge branch 'develop' of projects.ceondo.com:indefero into develop 2011-02-23 16:23:34 +01:00
William MARTIN
4477b07bc6 Rewrite a string to better handle i18n 2011-02-23 16:22:27 +01:00
Thomas Keller
74b44186d2 Update pot file and translations from source and transifex updates 2011-02-23 16:06:40 +01:00
William MARTIN
5e6d61b3a7 Add more statistics on the projects list page 2011-02-23 14:29:01 +01:00
William MARTIN
4e00051a10 Login form enhancement 2011-02-23 13:31:45 +01:00
Patrick Georgi
38e6e4f8d3 Use all registered email addresses to map Scm users to IDF users. 2011-02-21 10:57:36 +01:00
Patrick Georgi
dfa223b39e Manage addition of secondary emails 2011-02-21 10:57:36 +01:00
Patrick Georgi
0a8d771c11 Add UI for adding secondary email addresses 2011-02-21 10:57:36 +01:00
Patrick Georgi
5afd073ff3 If secondary mails exist, print them in account settings, and allow to delete them 2011-02-21 10:57:36 +01:00
Patrick Georgi
46fda14e08 Make sure no secondary email addresses are used for registration or when changing email address 2011-02-21 10:57:36 +01:00
Patrick Georgi
bbf9ef8b3d Store secondary email addresses.
Create a place to store additional email addresses and
provide an API to access them
2011-02-21 10:57:36 +01:00
William MARTIN
f590b1c5f8 First part of the spanish translate by Mika
Signed-off-by: William MARTIN <william.martin@lcpc.fr>
2011-02-21 09:44:42 +01:00
Thomas Keller
bae73f266c German translation finalized. 2011-02-14 00:05:37 +01:00
Thomas Keller
b00dbfaeaa Typos fixed. 2011-02-13 01:19:17 +01:00
Thomas Keller
e2e1e50890 14 left, but too much for tonight. I fixed a couple of f'ups and
added a short translation intro on top with the proper copyrights.
2011-02-13 01:12:42 +01:00
Thomas Keller
423548dc2c Grammar. 2011-02-13 00:24:18 +01:00
Thomas Keller
545117eeae Punctation fixes and phrase changes. 2011-02-12 01:08:16 +01:00
Thomas Keller
0b0392a274 Another large chunk for the German translation has been finished.
Many fixes also went in.
2011-02-12 00:57:14 +01:00
Thomas Keller
0c0236c766 Russian and German translation updated. 2011-02-11 01:54:48 +01:00
Thomas Keller
067d88136e Updated ru translation from indefero (thanks Denis Kot!) 2011-02-10 01:40:57 +01:00
Thomas Keller
d0cd0bb9bf Update the German translation a bit - still lots of work left. 2011-02-10 01:38:50 +01:00
Thomas Keller
69ecb1a049 Add a proper Plural-Forms setting (Chinese doesn't have a plural)
and remove a wrong translation (I'm unable to find out where the %s
should have been put), so again, 'msgfmt -c' is happy now.
2011-02-09 01:30:33 +01:00
Thomas Keller
e50f2f2b5f Fix a couple of fatal errors reported by 'msgfmt -c'. 2011-02-09 01:24:36 +01:00
Thomas Keller
905a81a715 'zh' alone is actually not a valid locale, but 'zh_CN' is. 2011-02-09 01:17:08 +01:00
Thomas Keller
4d0d41ef02 Updated idf.pot and all translations with the latest strings. 2011-02-09 01:08:39 +01:00
Thomas Keller
86832e4a36 Started on the overhaul of the German translation:
- The previous translator mixed "Du" and "Sie", I stumbled upon
  "Du" at first and decided to stick with that.
- The poedit extra headers have been removed; a proper plural
  configuration has been added.
- Many strings have been misspelled and were thus fixed, though
  there is still lots of work left.
2011-02-09 00:39:03 +01:00
Baptiste Durand-Bret
c6ffc47c24 Fixed issue 611, updated the French translations. 2011-02-04 13:56:04 +01:00
Loïc d'Anterroches
7cedd4af7a Fixed to not work on a bad key. 2011-02-02 10:34:48 +01:00
Loïc d'Anterroches
e31f10e648 Fixed error in the cron job if a key has a bad format. 2011-02-01 20:58:24 +01:00
Patrick Georgi
336faa4503 Monotone's diff parsing conflicts with Subversion's - make sure we
do not let mtn recognize svn's underline that marks a new patch.
2011-01-30 00:14:35 +01:00
Patrick Georgi
fbd1ebc294 Add the parent property to a subversion commit. 2011-01-30 00:05:09 +01:00
Thomas Keller
7bcfb806b0 Create valid HTML for the branch and tag list headings (no block
elements inside headings) and also use a lower heading, h3 and not h1
for the subheadings.
Reduce the amount of code duplication with include's for each VCS.
2011-01-27 14:12:42 +01:00
Thomas Keller
a188e1b275 Use the proper unicode arrow code point instead of "->". 2011-01-26 02:37:34 +01:00
Thomas Keller
52d76cd146 Make the change list in the commit view a little nicer by styling the
individual change types with colored markers and apply a little help
hint to each of them.
2011-01-26 02:27:08 +01:00
Thomas Keller
4eb34044ff Apply the context area changes to git and hg scm views as well
(partially resolves issue 601)
2011-01-26 01:55:58 +01:00
Thomas Keller
ccb1bd33d4 Add a clear button to the tag / branch filter input fields; simplify
the jQuery code a bit.
2011-01-26 01:37:29 +01:00
Thomas Keller
ddb05e68a3 Implement IDF_Scm::getExtraProperties 2011-01-24 15:11:12 +01:00
Loïc d'Anterroches
07c94b97f9 Merge branch 'feature-merge-history' into develop 2011-01-24 14:20:49 +01:00
Loïc d'Anterroches
116a7e34db Added the display of the commit parents in the changelog view.
The old commits will not have the parents displayed as already cached in the DB, but the new will get them.
2011-01-24 14:20:33 +01:00
Loïc d'Anterroches
207eb1322d Fixed to correctly store utf-8 string in the git cache. 2011-01-24 11:53:24 +01:00
Loïc d'Anterroches
390c9b5048 Added to collect associated data for the commits in one SQL query. 2011-01-23 17:12:19 +01:00
Loïc d'Anterroches
58804923ef Cosmetic fix to prevent wrapping of the date. 2011-01-23 17:08:07 +01:00
Thomas Keller
296091e977 Fetch parent revisions for monotone commits as well. 2011-01-20 23:45:21 +01:00
Thomas Keller
77ba17eb61 Remove commented-out, unneeded manual includes 2011-01-20 23:40:21 +01:00
Loïc d'Anterroches
a489cb15b5 Added the display of the merge history in a commit view. 2011-01-20 10:25:41 +01:00
Thomas Keller
74baebde96 I changed my mind: remote automate access should be prevented for
private projects and we should also take care that the symlink that
enables it is dynamically created / removed when the private flag
changes for a project.
2011-01-18 15:43:35 +01:00
Thomas Keller
caac979263 Don't throw an exception in case we do not find a branch cert tacked on
a revision from which we want to start our log from, but simply ignore
that and go over to the next revision. Note that this is also a bit
fragile and should probably be converted to plain mtn au log usage.
2011-01-17 11:57:39 +01:00
Thomas Keller
bbc9bd6ef4 Forgot to add the JS filter file. 2011-01-17 01:26:32 +01:00
Thomas Keller
d445a65788 Beef up the branch and tag lists as per issue 601 - currently
only for the monotone plugin's source view.
2011-01-17 01:20:33 +01:00
Thomas Keller
cdebac0b13 The commit object's diff member changed from "changes" to "diff"
so the "dowload the corresponding diff file" link was broken.
2011-01-15 01:02:22 +01:00
Loïc d'Anterroches
a7b62a30ff Correctly mark a Subversion repository as empty when at revision 0. 2011-01-09 13:47:07 +01:00
Loïc d'Anterroches
431e199c1c Fixed to correctly provide the origin url. 2011-01-09 11:26:17 +01:00
Loïc d'Anterroches
c67e61cbaa Fixed the watch list to not crash when empty and support PostgreSQL. 2011-01-08 21:34:51 +01:00
William MARTIN
93af6a68bd Add table of contents on wiki pages 2011-01-07 22:33:18 +01:00
William MARTIN
146e956432 Add a favicon
Fix issue 594
2011-01-07 11:17:14 +01:00
William MARTIN
afa91188d8 Enhancement of the view of an issue.
Add link previous and after to quickly jump to another issue.
Those links are pointing to issue with the same status (open/closed).

With little trick on url we can do the same thing for browse "my issue" and "my watchlist".
2011-01-06 22:38:38 +01:00
William MARTIN
c2a9a60aa7 Naming conventions correction 2011-01-06 14:30:39 +01:00
William MARTIN
d654c95689 Fix issue 553 : Git escape too much character in a UTF-8 shell
Add an option to configure the git core.quotepath option
2011-01-06 14:03:07 +01:00
William MARTIN
439f1fefe2 Fix issue 588 : Redirect connected user to the anonymous url if they don't have register a SSH Key for GIT 2011-01-06 11:13:29 +01:00
William MARTIN
4245617c6f Fix issue 546 : Add the irc protocol in the markdown prefilter 2011-01-06 11:01:35 +01:00
William MARTIN
5635cdcac7 Remove the use of GROUP_CONCAT in SQL request. 2011-01-06 10:26:29 +01:00
Thomas Keller
dd05a58c8c Major configuration changes for SyncMonotone - we're now using a predefined
configuration tree as template for a new project and copy / symlink that on
project creation. To make this process a little more configurable, two new
configuration options, 'mtn_confdir' and 'mtn_confdir_extra', have been
added which allow the forge admin to adapt the directory structure and its
default hooks to his likings for all new projects. (More on that in
doc/syncmonotone.mdtext).
The 'mtn_remote_auth' configuration option was removed, because setting this
to false would have not worked for setups which did not allow write access
to remote automate commands for anonymous users and opening this would have
meant a huge security hole. Instead, for every project which is created a
corresponding client key is created as well which is used as authentication
in the IDF source frontend.
Finally the monolithic monotonerc file has been split up into individual,
easily configurable lua files which are linked / copied underknees hooks.d/
and which do not conflict with each other (for example by overwriting certain
main notification hooks).
2011-01-06 01:44:41 +01:00
William MARTIN
a437da6a4c Fix sort option of forge watchlist 2011-01-05 17:51:34 +01:00
William MARTIN
0334e88625 Merge branch 'develop' of git://projects.ceondo.com/indefero into develop 2011-01-05 17:21:35 +01:00
William MARTIN
c7c39c6fa1 Implementation of the watch-list viewer
Fix issue 589
2011-01-05 17:02:06 +01:00
Thomas Keller
fd7a53a854 According to the base64 standard, zero, one or two fill bytes ("=")
might pop up at the end, so always expecting "==" is plainly wrong
(originates from 0897c860, fixes issue 592)
2011-01-05 15:34:01 +01:00
Loïc d'Anterroches
90b9279c3a Fixed not to try to include a document from a non available repository. 2011-01-05 10:28:25 +01:00
Thomas Keller
80be99890a Add a title to the star when viewing an issue (thanks to William Martin) 2011-01-04 16:51:33 +01:00
Thomas Keller
d4929622bf Sort directories before files in source views. Thanks to William Martin!
(closes issue 573)
2011-01-03 15:10:42 +01:00
Loïc d'Anterroches
777937b70c Fixed apparence of the description of the labels for the default ticket labels. 2010-12-23 17:26:34 +01:00
Loïc d'Anterroches
97bc383bc0 Updated to display changes only if the backend supports this function. 2010-12-23 11:57:39 +01:00
Loïc d'Anterroches
0739b856e0 Changed to sort the list of projects by name as more natural than by short name. 2010-12-23 11:31:52 +01:00
Thomas Keller
80e965a904 Forgot to add the model filter parameter to the timeline action which
basically rendered the complete navigation useless.
2010-12-08 02:28:56 +01:00
Thomas Keller
39c29dbe10 Started on issue 544, extended commit details
* Scm.php: new SCM method "getChanges" which returns all available
  change information grouped by type
* Monotone.php: implement getChanges via get_revision
* <other scms>: rename "changes" member for getCommit to "diff" which
  matches better
* Source.php: query the commit's changes and set them in the template
* commit.html: render the changes, type-by-type. Link to the tree or
  the individual diff if applicable
* styles.css: some initial style sheet work
2010-12-08 01:48:26 +01:00
Thomas Keller
51c42a65c5 Project owners can now enter multiple email addresses for each notification type.
Each email must be separated by a comma from the other. (Based on a patch from
Pierre Marechal, fixes issue 372).
2010-12-06 00:11:59 +01:00
Thomas Keller
784c9718eb Implemented an extended user profile based on a patch from Jethro Carr (issue 510).
Changes with respect to the original patch:
- use Gconf instead of separate table / data scheme
- better form validation for URLs and emails
- no htmlentity-encoded contents in the database (pluf automatically safe-encodes
  stuff before it writes out contents into templates)
- add visual separators in the form views to have a distinct view of basic
  (important) data and other data which are only displayed in the public profile
- give a hint about the maximum display size of 60x60 px^2 and use max-width and
  max-height in the templates to avoid nasty distortions by the browser
- use target=_blank and rel=nofollow on the twitter and website links in the profile
- some whitespace / formatting / code style fixes
2010-12-05 01:22:32 +01:00
Thomas Keller
874b5aa7e9 monotone changelog: do not add the parents of revisions which have not attached
the branch certificates in question to the horizont, otherwise we end up going
up the whole history for some feature branch as soon as we hit the base branch
of a project.
2010-12-02 23:23:38 +01:00
Thomas Keller
bf28a24b72 French translation updated (closes issue 574) 2010-12-02 22:44:35 +01:00
Thomas Keller
dffeb1f9d5 * move common file-specific functionality out of IDF_Views_Source into new
IDF_FileUtil and change all occurrences accordingly
* cache /etc/mime.types (or whatever is configured) per request in a static
variable in IDF_FileUtil
* always link directly to the download of attached files in the issues view
and place an additional "view" link only for those attachments which we
recognize as text with our weak criteria (closes issue 575)
2010-12-02 01:50:01 +01:00
Thomas Keller
6d7d7ebbfa copy'n'paste from some console window sucks sometimes 2010-12-02 01:48:34 +01:00
Thomas Keller
5b41fe3167 I promise I keep my fingers off git stuff now (a fix for issue 572) 2010-12-01 11:19:13 +01:00
Thomas Keller
dc2881ad02 Expand the revision and source linking automatisms to support the following
rev 12345
 added in abc12
 removed in abc12
 src:README@abc12
 src:README, src:COPYING#12
and many more schemes.
2010-11-29 21:50:40 +01:00
Thomas Keller
653299f4d8 Put a proper link around the "Home" menu entry. 2010-11-25 02:02:38 +01:00
Thomas Keller
704850f5c6 Add Chinese localization (thanks go to Jerry! fixes issue 521) 2010-11-25 00:20:10 +01:00
Thomas Keller
1548d4184e Suppress a notice in case the git log line does not contain
a title (fixes issue 520)
2010-11-25 00:13:47 +01:00
Thomas Keller
abc8b8f4ab Another f'up - isValidRevision() is gone, replaced by validateRevision().
Unit tests would really, really help us here...
2010-11-17 23:18:06 +01:00
Thomas Keller
08ef485ca9 Return the proper validation value if "HEAD" is the to-be-validated revision
(fixes issue 568)
2010-11-17 19:10:51 +01:00
Thomas Keller
35e670a1ab The data structure is already a stdClass object, so add a property,
not a key (partially fixes issue 568)
2010-11-17 19:08:41 +01:00
Thomas Keller
70e8d12420 Output the branch a particular commit is on; this is easy for
mercurial and monotone, but slightly harder till impossible to
do properly for git and svn. Please review and eventually adapt
the code to make it work better (partially fixes issue 450)
2010-11-17 01:53:17 +01:00
Thomas Keller
b4bc6abace Make the monotone master branch editable on forge level at least to
make it possible to switch the default project branch (partially
fixes issue 560)
2010-11-17 00:47:55 +01:00
Thomas Keller
e6f255bc56 Code style; wider input for monotone branch name 2010-11-17 00:47:52 +01:00
Thomas Keller
470a961a80 Add syntax highlighter support for h, hh and hpp (fixes issue 567) 2010-11-17 00:06:18 +01:00
Thomas Keller
8993d2988b Pick initial issue type and priority from the particular first item of the predefined issue labels list (thanks Jakub Vitak, closes issue 556) 2010-10-31 23:18:35 +00:00
Thomas Keller
e776fc0713 Switch doctype from html 4.01 strict to xhtml 1.0 transitional, we
largely ignored the former with xml-like constructs either
(closes issue 511).
2010-10-31 18:26:31 +01:00
Thomas Keller
c0ccdc768a add a couple of file extensions which are supported by our in-tree version of prettyfy (closes issue 490) 2010-10-31 18:18:20 +01:00
Thomas Keller
039ae01cfa Use an even smarter way of including additional resources for monotone
by using a wildcard dir matcher and document this accordingly.
2010-10-30 22:09:55 +00:00
Thomas Keller
fe001abd26 Rework the way IDF's SCM interface provides downloadable snapshots.
Instead of returning a command which gets executed and which should
pass through / stream its output data to the client, we're just
returning an instance of Pluf_HTTP_Response. This is needed, because
some SCMs, most noticable monotone, have no locally executable command
to provide a snapshot archive (and probably never will for our kind
of setup).

We therefor added a little BSD-licensed class "ZipArchive" which allows
the creation of pkzip-compatible archives on the fly by letting it eat
the file contents directly feed from the (remote) stdio instance.
Download performance is ok and lies between 15K/s and 110K/s, but at
least we do no longer block the browser while we pre-generate the zip
file server-side.

Thanks to Patrick Georgi for all his work!
2010-10-30 21:52:40 +00:00
Thomas Keller
8a55952204 * use the built-in push_hook_functions to register the netsync hooks,
this way additional hooks which need these notifications as well
  do not override earlier hooks
* optionally include an additional hooks.lua file at the very end
  in which custom hooks can be defined
2010-10-28 19:45:45 +02:00
Thomas Keller
c807c4b734 Add *.pas ([object] pascal) to the list of supported source extensions 2010-10-22 16:11:04 +02:00
Thomas Keller
972df3b231 Merge branch 'develop' of git://projects.ceondo.com/indefero into develop 2010-10-16 01:19:17 +02:00
Thomas Keller
7e10524f92 Add a popup menu in the main menu which allows to quickly jump between projects.
* refactor out the common menu code from several base*.html classes into main-menu.html
  and put the raw links into a unordered list (which makes it easier to create dynamic
  menus as we cannot insert block items into inline items in strict mode)
* query the list of available projects on every request and set them for every template
  in Middleware.php
* make the popup menu pretty
2010-10-15 00:40:09 +00:00
Thomas Keller
c3ff90c4f8 The signal name was wrong, therefor mtn syncs never updated the IDF timeline. 2010-10-14 19:26:09 +00:00
Thomas Keller
07aec736f5 Add --timestamp and --ticker=dot as default options for newly created
servers, which make it easier to follow the logs of individual servers.
2010-10-14 18:46:08 +00:00
Thomas Keller
b30bdc9833 While for allowed upload extensions the user was hinted to the
need of having to start the list with a space, here it was actually
needed code-wise. I rewrote the code so the space was not needed
and the documentation follows the actual behaviour.
2010-10-14 12:13:38 +00:00
Thomas Keller
d171a249c5 Its untrue that the list of extra allowed extensions for uploaded files
has to start with a space - its even a little quirky since the code
expands that to a regex like "/\.(|ext1|ext2...)$/", so in theory files
which end up with a dot and without an extension would be allowed by this.
For now we just fix the comment and indentation of the default
configuration option.
2010-10-14 12:13:21 +00:00
Thomas Keller
0379b862ec Document 'idf_strong_key_check' (closes issue 516) 2010-10-09 12:21:20 +00:00
Thomas Keller
5af2ab4d97 Make the timeline view and RSS feeds filterable by model (closes issue 543). 2010-10-09 11:53:01 +00:00
Thomas Keller
b518385962 Introduce a per-project issue template to hint a reporter to provide
certain information in his issue report (closes issue 540).
2010-10-09 10:40:30 +00:00
Thomas Keller
d25bc74d71 If no branch certificates are attached to a revision, we do not get
an empty array back from _getCerts(), but no entry for 'branch' at all.
2010-10-09 10:09:51 +00:00
Thomas Keller
5641173a04 Comment in hg_repositories by default, so it matches the defaults of the other SCMs 2010-10-07 19:21:05 +02:00
Thomas Keller
806e69b858 Don't let sync git fail on ssh keys with no comment field (references:
issue 531 and issue 545)
2010-10-07 11:56:52 +00:00
Thomas Keller
a29a2a0fa4 The connection list view could never work with this messy backend. 2010-10-07 01:05:15 +00:00
Thomas Keller
4951498c0b Ignore pseudo diff stanzas which mention binary files. 2010-10-06 21:37:53 +00:00
Thomas Keller
97ea828532 Use a persistent cache through Pluf_Cache to speed up cert queries. 2010-10-04 15:42:21 +00:00
Thomas Keller
d539eaf64b - _getLastChangeFor(): drop that, no longer needed
- getTree(), getPathInfo(): use the new extended manifest format
  and save the calls to query file sizes from contents as well
  as the calls to determine the revision in which a file changed
  at last
2010-10-04 15:22:57 +00:00
Thomas Keller
90edbf0d8b Tweak the basicio parser so that it properly handles multi-value
lines with hashes (lines like symbol [hash] [hash] are still not
handled, but aren't outputted from any command either as of now).
2010-10-04 15:20:53 +00:00
Thomas Keller
0c575ccc74 If a symbol is printed without a value list at the very end of a
basic_io dump, we might access a non-existing character position.
This has been fixed and the string length calculation is now only
done once.
2010-10-03 22:23:08 +00:00
Thomas Keller
eebdc5ad12 IDF_Scm_Monotone::getCommit() separate the first line of a commit from the
rest and write the rest in full_message - just like we do it for log and
everything else. This is ugly, really ugly, because it assumes something
on the format of a commit message, which might not be true at all for
some project, but this is something Loic has to decide (see also issue 491
and issue 535)
2010-09-28 21:37:26 +00:00
Thomas Keller
617589f41b Reorganize and expand the help of the monotone plugin.
Make the commentary in idf.php-dist less verbose.
2010-09-17 03:11:36 +02:00
Thomas Keller
50638c768f Ensure that the SyncMonotone plugin does not throw around errors
in case of a local (non-usher) monotone setup.
2010-09-17 02:36:48 +02:00
Thomas Keller
29b8bf8a4e Some revisions might not carry a branch cert (yet), because they're
part of another branch whose certs haven't been pushed into the server
yet, so we need to skip these revisions while going back in time
for the changelog. The initial revision however must carry a branch
cert, otherwise we have nothing to "follow".
2010-09-15 08:46:10 +00:00
Thomas Keller
42936cc51d Mark the submenu item "Open Issues" active when its active
(partially resolves issue 536)
2010-09-14 23:14:29 +00:00
Thomas Keller
b138548a10 * check if the project actually uses mtn as scm for the
membershipsUpdated signal
* code cleanup and simplification
2010-09-14 22:58:34 +00:00
Thomas Keller
7d5ba6248e Merge branch 'develop' of projects.ceondo.com:indefero into develop 2010-09-14 22:34:57 +00:00
Thomas Keller
36a58dcae2 * update the permissions on IDF_Project::membershipsUpdated - listen
to the same signal also for the initial setup, since the memberships
haven't been added at the time the create signal is thrown
* my array references goo was slightly stupid (the usage of foreach
is of course hazardous in cases like this)
* always insert a trailing new line in write-permissions and skip
read-in newlines from being processed
2010-09-14 22:30:28 +00:00
Thomas Keller
2106a5fbdc Merge branch 'develop' of projects.ceondo.com:indefero 2010-09-14 14:23:18 +02:00
Thomas Keller
0897c8608f Allow the upload of SSH keys without the optional comment field
(fixes issue 531 - thanks William!)
2010-09-14 14:22:34 +02:00
Thomas Keller
a32d6d8265 * its late - put_public_key of course needs a specific database
* do not throw around exceptions if a key which should be removed is not found in the database
2010-09-13 01:13:49 +00:00
Thomas Keller
0f9f337e66 * configure whether or not to set remote client authentication for IDF -> remote_stdio
* hook into IDF_Project::preDelete, IDF_Key::postSave and IDF_Key::preDelete
* this is all not quite finished, but a big leap forward to completion
2010-09-13 00:53:24 +00:00
Thomas Keller
bb13722a2f bump copyright year 2010-09-13 00:51:45 +00:00
Thomas Keller
77cdbefe0c Added getter for the stdio instance 2010-09-13 00:50:16 +00:00
Thomas Keller
f68bba1292 Be more careful when parsing value lists - in case we process the last
line of a stanza which does _not_ close with a newline, we're accessing
a not existing string index.
2010-09-12 23:18:58 +00:00
Thomas Keller
37d0ccc728 partially resolve issue 492 (at least for the monotone tree view) 2010-09-11 00:28:31 +02:00
Thomas Keller
7557a73014 While the dateAgo code internally doesn't seem to care about the argument
(unless its not "withal"), its better to fix the spelling here anyways.
2010-09-11 00:21:30 +02:00
Loïc d'Anterroches
f3f00dd182 Fixed ticket 489, improve the Markdown and wiki syntax documentation. 2010-09-02 14:46:15 +02:00
Thomas Keller
07b2b2f305 Merge branch 'develop' of projects.ceondo.com:indefero into develop 2010-09-02 12:26:52 +00:00
Thomas Keller
85df9e5ab2 move IDF_View_Source_Precondition into a separate class file 2010-09-02 12:22:59 +00:00
Loïc d'Anterroches
439014b0b1 Fixed ticket 479, project editing inconsistency. 2010-09-02 14:16:41 +02:00
Thomas Keller
f6fc5ae466 Merge branch 'develop' of projects.ceondo.com:indefero 2010-09-01 13:18:10 +00:00
Thomas Keller
21cdf60c31 Introduce a more subtle concept of validity when it comes to revision
indentifiers in IDF - the SCM function isValidRevision has been replaced
by a validateRevision() method which returns one of three states,
valid, invalid or ambiguous.
The source view can then act accordingly and display disambiguate view
for the latter, so the user can select for which revision he actually
wants to execute the requested action. Also, invalid revisions now lead
to another separate view, telling the user that it is invalid / does
not exist and pointing him optionally to the help page where he can read
further how to access his repository to push the first changes into.
(partially resolves issue 525)
2010-09-01 13:13:52 +00:00
Brenda Wallace
b4f8cf8c50 Corrected grammar in instructions. 2010-09-01 15:06:02 +02:00
Loïc d'Anterroches
f4dbabe8de Merge branch 'master' of git://projects.ceondo.com/indefero 2010-09-01 14:51:33 +02:00
Matthew Dawson
c5c7ebff04 Improved the wiki links to have better descripting links. 2010-09-01 14:50:04 +02:00
Thomas Keller
5d263e78e0 its dateago:"without", not dateago:"wihtout" 2010-08-31 21:17:09 +00:00
Thomas Keller
5f4e1da0c8 while there _should_ be really a custom application exception,
currently there is no such one
2010-08-31 21:07:31 +00:00
Thomas Keller
187365db76 IDF_Scm::isValidRevision() only ever takes one argument 2010-08-30 21:50:25 +00:00
Thomas Keller
e26a5c8cdf waiting usher instances should be stoppable as well 2010-08-30 21:29:42 +00:00
Thomas Keller
a384c60937 fix a PHP notice 2010-08-30 20:14:03 +00:00
Thomas Keller
6b4abac08e - PHP doesn't like the $var = <init> kind of initialization and
won't return variable references properly, so revert that change
  again
- since we're requiring 0.99 now, we also have to use au generate_key
  instead of au genkey
2010-08-30 13:46:05 +00:00
Thomas Keller
e789263068 - raise required mtn version to 0.99
- add '--key=' to the default mtn arguments in idf.php-dist
2010-08-30 12:58:52 +00:00
Thomas Keller
82aaf43d5d - initial work on a mtn-post-push script which updates IDF's timeline
when new revisions arrive. this still needs some more tests, but
  its a start.
- refactor out the monotonerc template from SyncMonotone.php and
  place it in a separate template file (access control hooks are
  still missing from there)
2010-08-30 11:20:47 +00:00
Thomas Keller
adae73080c simplify and harden the configuration file writeouts, didn't knew
file_put_contents was around for so long already...
2010-08-30 09:00:20 +02:00
Thomas Keller
b648e6f7a7 - now that we have to configure usher's configuration file anyway,
we can skip the explicit configuration of its host and admin
  password, as we can directly read that from the configuration file
  itself
- expand the SyncMonotone plugin a bit to where this actually becomes
  useful, i.e.  create an accompanying key for each created database
  and also add some initial database-specific configuration
- update the config docs in idf.php-dist to reflect the changes and
  add more details about the inner workings of the SyncMonotone plugin
2010-08-29 23:01:25 +00:00
Thomas Keller
194dcad0e3 Don't check if the main branch is empty, but let the view code later
handle the case where a selector doesn't resolve to at least one
revision gracefully (see also issue 525).
2010-08-29 22:59:12 +00:00
Thomas Keller
af3df142d4 First attempt on a monotone plugin which creates a new database upon
project creation and adds the new server to the running usher instance.
If everything goes well, the usher instance is told to reload its
configuration, so the new server / database is picked up and started
automatically.
2010-08-28 23:10:08 +00:00
Thomas Keller
f2a9518b5c single quoted newlines of course will not work here... stupid me 2010-08-28 22:47:37 +00:00
Thomas Keller
593240b420 implement IDF_Scm_Monotone_BasicIO::compile() 2010-08-28 22:03:47 +00:00
Thomas Keller
8aae0f29d4 refactor the basicio parser into a separate utility class (we soon need a compiler part as well) 2010-08-28 14:06:17 +00:00
Loïc d'Anterroches
3eb0247b37 Fixed to correctly have a type text input. 2010-08-27 08:57:54 +02:00
Thomas Keller
7f32a5679d * removed type field in IDF_Key on request of Loic and automatically detect
and validate raw key data
* reworked the parseMonotoneKeyData() function to parse ssh and monotone keys
* tweak help texts and exception strings
2010-08-24 23:30:12 +02:00
Thomas Keller
a442fd588e Merge branch 'master' of github.com:tommyd3mdi/indefero-monotone 2010-08-24 22:57:52 +02:00
Thomas Keller
e7ce32fc26 Merge branch 'master' of git://projects.ceondo.com/indefero 2010-08-24 22:45:28 +02:00
Thomas Keller
f0a606e5cf * its IDF_Key, not IDF_Keys 2010-08-23 09:45:04 +02:00
Thomas Keller
31e81118dd Follow IDFs coding standards and tweak opening curly braces as well as
quoting where possible
2010-08-13 11:21:07 +02:00
Thomas Keller
e47d51d14c Add the possibility to save mtn public keys per user
* src/IDF/Key.php: new column "type" which is either "ssh" or "mtn";
  utility functions to query the mtn key name and id as well as
  all available key types for the current IDF installation
* src/IDF/Migrations/16KeyType.php: needed migration script
* src/IDF/Plugin/SyncGit/Cron.php: ensure only SSH keys are handled
* adapt forms and templates accordingly
2010-08-11 23:48:09 +02:00
Thomas Keller
ce436cc6ec ensure the usher section is active when we browse it 2010-08-11 23:43:15 +02:00
Loïc d'Anterroches
3d1ac97dc3 Correctly uses the private/description from the template project. 2010-08-11 14:50:32 +02:00
Loïc d'Anterroches
7a2065c687 Fixed to correctly use the default values if the template project was not fully updated. 2010-08-11 14:42:06 +02:00
Loïc d'Anterroches
9e6c7dad88 Fixed to use the private status and the description from the template when creating a project. 2010-08-11 14:12:03 +02:00
Loïc d'Anterroches
4f23ea4dd5 Added the ability to create a new project with another one as template. 2010-08-11 13:58:41 +02:00
Thomas Keller
f25dbd8872 Merge branch 'master' of git://projects.ceondo.com/indefero 2010-08-07 23:42:13 +02:00
Thomas Keller
de036920a4 * src/IDF/Middlewre.php: add a global template variable
"usherConfigured" to denote whether we render links to the usher
control functions in the forge administration
* src/IDF/Scm/Monotone.php: moved IDF_Scm_Monotone_Stdio into
separate file src/IDF/Scm/Monotone/Stdio.php
* src/IDF/Scm/Usher.php: new class to query and modify the state
of a running usher instance
* src/IDF/Views/Admin.php: add actions to query the list of
configured servers, edit their status, view their open connections
and control the state of the usher as a whole
* src/IDF/conf/idf.php-dist: optional usher configuration added;
mail address of monotone-users added; spelling changes
* src/IDF/conf/urls.php: added needed URLs for usher actions
* src/IDF/templates/idf/gadmin/base.html: usher links
2010-08-07 23:28:13 +02:00
Mehdi Kabab
061c806588 Fixed issue 509, indefero wiki do not support strikethrough. 2010-07-25 13:37:05 +02:00
Thomas Keller
780267978d basic test setup works; added tests for isAvailable(), getBranches(),
getTags(), inTags(), inBranches(), getTree() and isValidRevision()
2010-06-30 00:42:09 +02:00
Thomas Keller
0ad7f47885 first, incomplete version of a basic monotone test driver 2010-06-29 16:00:53 +02:00
Thomas Keller
d2f0bac907 * Monotone.php: get inTags() and inBranches() correct - they need to
return a list with selectors as keys, otherwise the main menu won't
  link the active revision, but instead use the main branch
* changelog.html, tree.html: shorten the branch / tag output a bit
  (still ugly to have a fixed output like this, though), link tags
  by their selector, no longer by their revision ID. We loose some
  flexibility here, since tags could actually mark different
  revisions, which are now ignored
2010-06-29 09:59:49 +02:00
Thomas Keller
e46a6fa171 link from the changelog view to the changelog view again when another
revision is selected
2010-06-28 11:46:48 +02:00
Thomas Keller
7cbc690890 use date instead of gmdate, monotone's dates are already UTC 2010-06-28 08:47:39 +02:00
Thomas Keller
a46fd28dae print the mtn master branch configuration in bold, because it is required
when monotone is selected as SCM
2010-06-26 00:18:52 +02:00
Thomas Keller
8decc383aa bugfix: do not validate the custom branch field in the project creation
formular if we should set the project up with another SCM
2010-06-26 00:07:56 +02:00
Thomas Keller
f3268b3d37 uh, we should really share one mtn instance per project and request... 2010-06-24 02:27:38 +02:00
Thomas Keller
4fdf248cb6 Merge branch 'master' of github.com:tommyd3mdi/indefero-monotone 2010-06-24 02:07:44 +02:00
Thomas Keller
1fd1e63043 * idf.php-dist: rework the documentation of the configuration options and
add two scenarios, one with a single, global database and one with
  multiple project databases and usher as proxy; add an option for additional
  command line options for the mtn process; remove the protocol type
  configuration option - we're handling this implicit with the new
  mtn_remote_url configuration
* Monotone.php: add the IDF user for ssh:// URIs; add support for remote_stdio
  and rework the command line stitching
2010-06-24 01:58:41 +02:00
Thomas Keller
5ce324f35f * clear the process environment and set LANG properly so we get english error codes and still keep utf8 compliant
* rename _read to _readStdout and introduce a generic _readStderr which reads from the other pipe on failure
2010-06-24 00:10:41 +02:00
Thomas Keller
7303e9dd58 return the correct file name for dropped files from monotone's diff output 2010-06-23 15:58:07 +02:00
Thomas Keller
9a8148079d prevent endless redirection if a requested branch does not exist, i.e. has no matching revisions 2010-06-23 00:22:10 +02:00
Thomas Keller
24762adecc improve error handling and reporting of the stdio process 2010-06-21 23:24:47 +02:00
Thomas Keller
2ee665ac96 Merge branch 'master' of git://projects.ceondo.com/indefero 2010-06-21 23:23:26 +02:00
Denis
2e1a91622e Updated the Russian translations. 2010-06-17 20:03:52 +02:00
mainiak
4687355351 Updated the Czech translations. 2010-06-15 11:21:06 +02:00
Loïc d'Anterroches
38dd610319 Updated the German translations. 2010-06-15 11:18:13 +02:00
mainiak
a4408de74d Updated the Czech translations. 2010-05-27 20:20:53 +02:00
Loic d'Anterroches
7a952215aa Added a series of hooks to trigger backup jobs when files are uploaded/deleted. 2010-05-21 11:29:36 +02:00
Loic d'Anterroches
982b330739 Added the droping of the tags in the predelete to prevent some integrity issues. 2010-05-21 11:28:48 +02:00
Loic d'Anterroches
3e9229be5f Updated to set the subversion hooks at creation of the repository. 2010-05-20 10:42:51 +02:00
Loic d'Anterroches
ad6148cae7 Fixed issue 403, make the calcul of project's disk used space optionnal. 2010-05-19 10:55:50 +02:00
Loic d'Anterroches
2aebc0e099 Fixed to correctly populate the queue when no notifications are defined. 2010-05-18 15:10:43 +02:00
Loic d'Anterroches
06022bf378 Added the type of scm in the queue payload. 2010-05-18 14:31:01 +02:00
Vladimir Solomatin
430c9cb00e Fixed issue 467, exception when deleting an orphan git repo. 2010-05-17 19:40:26 +02:00
Loic d'Anterroches
89780b0317 Fixed ticket 466, Mac OS-friendly source viewing / syntax highlighting. 2010-05-17 12:53:17 +02:00
Loic d'Anterroches
c534894995 Added caching of the database, attachments and uploaded files to avoid calculating them each time. 2010-05-17 12:17:02 +02:00
Loic d'Anterroches
a91ce1600f Added a global configuration registry. 2010-05-17 10:29:00 +02:00
Loic d'Anterroches
04e7d7c99b Merge branch 'master' of git://projects.ceondo.com/indefero 2010-05-12 09:19:57 +02:00
mainiak
7ed69c7f4a Improved the Czech translations 2010-05-12 09:19:36 +02:00
Mehdi Kabab
8f914c44a1 Fixed issue 459, variables not defined for exec in PHP 5.3. 2010-05-11 10:13:38 +02:00
Loic d'Anterroches
28ce82c6f6 Improved to sort the Git tags by reverse chronological order. 2010-05-11 09:41:22 +02:00
Loic d'Anterroches
641a3b24a5 Fixed error in the queue addition. 2010-05-11 09:23:15 +02:00
Loic d'Anterroches
0d61866b89 Added initial work on the Czech translation. 2010-05-10 12:55:58 +02:00
Loic d'Anterroches
c1a477e7d0 Do nothing on webhook without an url. 2010-05-10 10:43:47 +02:00
Loic d'Anterroches
692d2e53b2 Changed the header name of the hmac to be generic. 2010-05-10 10:21:22 +02:00
Loic d'Anterroches
47acc73451 Added the webhooks. 2010-05-10 10:11:27 +02:00
Loic d'Anterroches
2f22d48dd0 Added the queue system to handle the webhooks and asynchronous events. 2010-05-06 10:27:08 +02:00
Thomas Keller
e0b0a732b4 phpdoc improved; remove _getMasterBranch() method and implement the specific code directly in getMainBranch() 2010-05-02 01:31:30 +02:00
Thomas Keller
59ad0f5b11 * idf.php-dist: improve the document of the various mtn-related configure options; introduce an option to configure the protocole - separate from the url option, which we now name mtn_remote_host
* IDF_Project: optionally give getSourceAccessUrl() a commit argument, so a particular VCS module can determine a subset of revisions to pull for the specific revision which is browsed
* IDF_Scm_*: add the argument null'd for all VCS; implement a branch lookup for monotone
* tree.html: display the correct branch to clone under each revision tree
2010-05-02 00:56:04 +02:00
Thomas Keller
3b53ceedcd * Monotone.php (IDF_Scm_Monotone): basic_io values need to be unescaped; implement getChangeLog()
* Monotone.php (IDF_Scm_Monotone_Stdio): add support for multiple, equally named options
* Source.php, commit.html: split-off the global commit template (which had some separate code already for SVN) and adapt the left blocks for mtn to shorten branch and tag names just like we do everywhere else
2010-05-01 01:05:54 +02:00
Thomas Keller
15a2bd90b3 Add support for monotone's diff header 2010-05-01 00:56:48 +02:00
Thomas Keller
c49a8204e0 Properly activate the correct branches / tags for the currently viewed revision 2010-04-30 02:38:45 +02:00
Thomas Keller
601e894935 Use the branch / tag name shortener in two other templates as well. 2010-04-30 02:11:40 +02:00
Thomas Keller
445c90fefe Create a separate class which handles command streaming over mtn automate stdio. Use that everywhere instead of the direct system calls. 2010-04-30 02:03:58 +02:00
Thomas Keller
b7ced5fa69 Do not shorten the changelog in the SCM model - thats a task for the view. 2010-04-29 23:38:28 +02:00
Thomas Keller
995f1a13c3 Add a new view modifier which allows the shortening of long strings such as branch or tag names. Use that in the tree view and display the full name in a title tag. 2010-04-29 23:35:57 +02:00
Thomas Keller
cf22909722 * isAvailable(): check monotone's interface version and mark the interface as available if it matches (we might see later on if this alone is actually a good idea especially if we browse an empty database...)
* _getCerts(): implement a cert cache and make multiple cert values easily available
* getCommit(), getCommitLarge(), getFile(), getPathInfo(), testHash(): implement
* getTags(): save the first found revision id for a tag as key in the associative array to make tags actually browsable
2010-04-29 01:44:34 +02:00
Thomas Keller
02603fd8fd disable archive generation for now, this is not possible with monotone as it is implemented now in IDF 2010-04-29 01:42:50 +02:00
Thomas Keller
af4f5aaeb0 make the path to the monotone executable configurable 2010-04-29 01:37:28 +02:00
Thomas Keller
f8012c37d1 from monotone 0.48 onwards the setup command creates its own internal database 2010-04-28 01:12:29 +02:00
Thomas Keller
5954cd0ad1 default to the master branch for the head / tip / main revision 2010-04-28 00:14:19 +02:00
Thomas Keller
5ef6e6c08f mtn still needs a local db and project setup if there is nothing beside an empty database remotely 2010-04-28 00:13:42 +02:00
Thomas Keller
94a5464155 * idf.php-dist: no need to configure a branch prefix any longer now that the project owner can define the master branch name
* Monotone.php: change accordingly to use the configured master branch name and fallback to all branches ("*") if noone is found
2010-04-27 23:28:52 +02:00
Thomas Keller
18ba8d0ac5 Some more files from the initial work 2010-04-27 00:02:47 +02:00