##// END OF EJS Templates
disable file editing when not on branch head fixes issue #462
marcink -
r3237:f5dd76e2 beta
parent child Browse files
Show More
@@ -1,594 +1,606 b''
1 1 # -*- coding: utf-8 -*-
2 2 """
3 3 rhodecode.controllers.files
4 4 ~~~~~~~~~~~~~~~~~~~~~~~~~~~
5 5
6 6 Files controller for RhodeCode
7 7
8 8 :created_on: Apr 21, 2010
9 9 :author: marcink
10 10 :copyright: (C) 2010-2012 Marcin Kuzminski <marcin@python-works.com>
11 11 :license: GPLv3, see COPYING for more details.
12 12 """
13 13 # This program is free software: you can redistribute it and/or modify
14 14 # it under the terms of the GNU General Public License as published by
15 15 # the Free Software Foundation, either version 3 of the License, or
16 16 # (at your option) any later version.
17 17 #
18 18 # This program is distributed in the hope that it will be useful,
19 19 # but WITHOUT ANY WARRANTY; without even the implied warranty of
20 20 # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
21 21 # GNU General Public License for more details.
22 22 #
23 23 # You should have received a copy of the GNU General Public License
24 24 # along with this program. If not, see <http://www.gnu.org/licenses/>.
25 25 from __future__ import with_statement
26 26 import os
27 27 import logging
28 28 import traceback
29 29 import tempfile
30 30
31 31 from pylons import request, response, tmpl_context as c, url
32 32 from pylons.i18n.translation import _
33 33 from pylons.controllers.util import redirect
34 34 from rhodecode.lib.utils import jsonify
35 35
36 36 from rhodecode.lib import diffs
37 37 from rhodecode.lib import helpers as h
38 38
39 39 from rhodecode.lib.compat import OrderedDict
40 40 from rhodecode.lib.utils2 import convert_line_endings, detect_mode, safe_str,\
41 41 str2bool
42 42 from rhodecode.lib.auth import LoginRequired, HasRepoPermissionAnyDecorator
43 43 from rhodecode.lib.base import BaseRepoController, render
44 44 from rhodecode.lib.vcs.backends.base import EmptyChangeset
45 45 from rhodecode.lib.vcs.conf import settings
46 46 from rhodecode.lib.vcs.exceptions import RepositoryError, \
47 47 ChangesetDoesNotExistError, EmptyRepositoryError, \
48 48 ImproperArchiveTypeError, VCSError, NodeAlreadyExistsError,\
49 49 NodeDoesNotExistError, ChangesetError, NodeError
50 50 from rhodecode.lib.vcs.nodes import FileNode
51 51
52 52 from rhodecode.model.repo import RepoModel
53 53 from rhodecode.model.scm import ScmModel
54 54 from rhodecode.model.db import Repository
55 55
56 56 from rhodecode.controllers.changeset import anchor_url, _ignorews_url,\
57 57 _context_url, get_line_ctx, get_ignore_ws
58 58
59 59
60 60 log = logging.getLogger(__name__)
61 61
62 62
63 63 class FilesController(BaseRepoController):
64 64
65 65 def __before__(self):
66 66 super(FilesController, self).__before__()
67 67 c.cut_off_limit = self.cut_off_limit
68 68
69 69 def __get_cs_or_redirect(self, rev, repo_name, redirect_after=True):
70 70 """
71 71 Safe way to get changeset if error occur it redirects to tip with
72 72 proper message
73 73
74 74 :param rev: revision to fetch
75 75 :param repo_name: repo name to redirect after
76 76 """
77 77
78 78 try:
79 79 return c.rhodecode_repo.get_changeset(rev)
80 80 except EmptyRepositoryError, e:
81 81 if not redirect_after:
82 82 return None
83 83 url_ = url('files_add_home',
84 84 repo_name=c.repo_name,
85 85 revision=0, f_path='')
86 86 add_new = '<a href="%s">[%s]</a>' % (url_, _('click here to add new file'))
87 87 h.flash(h.literal(_('There are no files yet %s') % add_new),
88 88 category='warning')
89 89 redirect(h.url('summary_home', repo_name=repo_name))
90 90
91 91 except RepositoryError, e:
92 92 h.flash(str(e), category='warning')
93 93 redirect(h.url('files_home', repo_name=repo_name, revision='tip'))
94 94
95 95 def __get_filenode_or_redirect(self, repo_name, cs, path):
96 96 """
97 97 Returns file_node, if error occurs or given path is directory,
98 98 it'll redirect to top level path
99 99
100 100 :param repo_name: repo_name
101 101 :param cs: given changeset
102 102 :param path: path to lookup
103 103 """
104 104
105 105 try:
106 106 file_node = cs.get_node(path)
107 107 if file_node.is_dir():
108 108 raise RepositoryError('given path is a directory')
109 109 except RepositoryError, e:
110 110 h.flash(str(e), category='warning')
111 111 redirect(h.url('files_home', repo_name=repo_name,
112 112 revision=cs.raw_id))
113 113
114 114 return file_node
115 115
116 116 @LoginRequired()
117 117 @HasRepoPermissionAnyDecorator('repository.read', 'repository.write',
118 118 'repository.admin')
119 119 def index(self, repo_name, revision, f_path, annotate=False):
120 120 # redirect to given revision from form if given
121 121 post_revision = request.POST.get('at_rev', None)
122 122 if post_revision:
123 123 cs = self.__get_cs_or_redirect(post_revision, repo_name)
124 124 redirect(url('files_home', repo_name=c.repo_name,
125 125 revision=cs.raw_id, f_path=f_path))
126 126
127 127 c.changeset = self.__get_cs_or_redirect(revision, repo_name)
128 128 c.branch = request.GET.get('branch', None)
129 129 c.f_path = f_path
130 130 c.annotate = annotate
131 c.changeset = self.__get_cs_or_redirect(revision, repo_name)
131 132 cur_rev = c.changeset.revision
132 133
133 134 # prev link
134 135 try:
135 136 prev_rev = c.rhodecode_repo.get_changeset(cur_rev).prev(c.branch)
136 137 c.url_prev = url('files_home', repo_name=c.repo_name,
137 138 revision=prev_rev.raw_id, f_path=f_path)
138 139 if c.branch:
139 140 c.url_prev += '?branch=%s' % c.branch
140 141 except (ChangesetDoesNotExistError, VCSError):
141 142 c.url_prev = '#'
142 143
143 144 # next link
144 145 try:
145 146 next_rev = c.rhodecode_repo.get_changeset(cur_rev).next(c.branch)
146 147 c.url_next = url('files_home', repo_name=c.repo_name,
147 148 revision=next_rev.raw_id, f_path=f_path)
148 149 if c.branch:
149 150 c.url_next += '?branch=%s' % c.branch
150 151 except (ChangesetDoesNotExistError, VCSError):
151 152 c.url_next = '#'
152 153
153 154 # files or dirs
154 155 try:
155 156 c.file = c.changeset.get_node(f_path)
156 157
157 158 if c.file.is_file():
158 159 c.load_full_history = False
159 160 file_last_cs = c.file.last_changeset
160 161 c.file_changeset = (c.changeset
161 162 if c.changeset.revision < file_last_cs.revision
162 163 else file_last_cs)
164 #determine if we're on branch head
165 _branches = c.rhodecode_repo.branches
166 c.on_branch_head = revision in _branches.keys() + _branches.values()
163 167 _hist = []
164 168 c.file_history = []
165 169 if c.load_full_history:
166 170 c.file_history, _hist = self._get_node_history(c.changeset, f_path)
167 171
168 172 c.authors = []
169 173 for a in set([x.author for x in _hist]):
170 174 c.authors.append((h.email(a), h.person(a)))
171 175 else:
172 176 c.authors = c.file_history = []
173 177 except RepositoryError, e:
174 178 h.flash(str(e), category='warning')
175 179 redirect(h.url('files_home', repo_name=repo_name,
176 180 revision='tip'))
177 181
178 182 if request.environ.get('HTTP_X_PARTIAL_XHR'):
179 183 return render('files/files_ypjax.html')
180 184
181 185 return render('files/files.html')
182 186
183 187 def history(self, repo_name, revision, f_path, annotate=False):
184 188 if request.environ.get('HTTP_X_PARTIAL_XHR'):
185 189 c.changeset = self.__get_cs_or_redirect(revision, repo_name)
186 190 c.f_path = f_path
187 191 c.annotate = annotate
188 192 c.file = c.changeset.get_node(f_path)
189 193 if c.file.is_file():
190 194 file_last_cs = c.file.last_changeset
191 195 c.file_changeset = (c.changeset
192 196 if c.changeset.revision < file_last_cs.revision
193 197 else file_last_cs)
194 198 c.file_history, _hist = self._get_node_history(c.changeset, f_path)
195 199 c.authors = []
196 200 for a in set([x.author for x in _hist]):
197 201 c.authors.append((h.email(a), h.person(a)))
198 202 return render('files/files_history_box.html')
199 203
200 204 @LoginRequired()
201 205 @HasRepoPermissionAnyDecorator('repository.read', 'repository.write',
202 206 'repository.admin')
203 207 def rawfile(self, repo_name, revision, f_path):
204 208 cs = self.__get_cs_or_redirect(revision, repo_name)
205 209 file_node = self.__get_filenode_or_redirect(repo_name, cs, f_path)
206 210
207 211 response.content_disposition = 'attachment; filename=%s' % \
208 212 safe_str(f_path.split(Repository.url_sep())[-1])
209 213
210 214 response.content_type = file_node.mimetype
211 215 return file_node.content
212 216
213 217 @LoginRequired()
214 218 @HasRepoPermissionAnyDecorator('repository.read', 'repository.write',
215 219 'repository.admin')
216 220 def raw(self, repo_name, revision, f_path):
217 221 cs = self.__get_cs_or_redirect(revision, repo_name)
218 222 file_node = self.__get_filenode_or_redirect(repo_name, cs, f_path)
219 223
220 224 raw_mimetype_mapping = {
221 225 # map original mimetype to a mimetype used for "show as raw"
222 226 # you can also provide a content-disposition to override the
223 227 # default "attachment" disposition.
224 228 # orig_type: (new_type, new_dispo)
225 229
226 230 # show images inline:
227 231 'image/x-icon': ('image/x-icon', 'inline'),
228 232 'image/png': ('image/png', 'inline'),
229 233 'image/gif': ('image/gif', 'inline'),
230 234 'image/jpeg': ('image/jpeg', 'inline'),
231 235 'image/svg+xml': ('image/svg+xml', 'inline'),
232 236 }
233 237
234 238 mimetype = file_node.mimetype
235 239 try:
236 240 mimetype, dispo = raw_mimetype_mapping[mimetype]
237 241 except KeyError:
238 242 # we don't know anything special about this, handle it safely
239 243 if file_node.is_binary:
240 244 # do same as download raw for binary files
241 245 mimetype, dispo = 'application/octet-stream', 'attachment'
242 246 else:
243 247 # do not just use the original mimetype, but force text/plain,
244 248 # otherwise it would serve text/html and that might be unsafe.
245 249 # Note: underlying vcs library fakes text/plain mimetype if the
246 250 # mimetype can not be determined and it thinks it is not
247 251 # binary.This might lead to erroneous text display in some
248 252 # cases, but helps in other cases, like with text files
249 253 # without extension.
250 254 mimetype, dispo = 'text/plain', 'inline'
251 255
252 256 if dispo == 'attachment':
253 257 dispo = 'attachment; filename=%s' % \
254 258 safe_str(f_path.split(os.sep)[-1])
255 259
256 260 response.content_disposition = dispo
257 261 response.content_type = mimetype
258 262 return file_node.content
259 263
260 264 @LoginRequired()
261 265 @HasRepoPermissionAnyDecorator('repository.write', 'repository.admin')
262 266 def edit(self, repo_name, revision, f_path):
263 repo = Repository.get_by_repo_name(repo_name)
267 repo = c.rhodecode_db_repo
264 268 if repo.enable_locking and repo.locked[0]:
265 269 h.flash(_('This repository is has been locked by %s on %s')
266 270 % (h.person_by_id(repo.locked[0]),
267 271 h.fmt_date(h.time_to_datetime(repo.locked[1]))),
268 272 'warning')
269 273 return redirect(h.url('files_home',
270 274 repo_name=repo_name, revision='tip'))
271 275
276 # check if revision is a branch identifier- basically we cannot
277 # create multiple heads via file editing
278 _branches = repo.scm_instance.branches
279 # check if revision is a branch name or branch hash
280 if revision not in _branches.keys() + _branches.values():
281 h.flash(_('You can only edit files with revision '
282 'being a valid branch '), category='warning')
283 return redirect(h.url('files_home',
284 repo_name=repo_name, revision='tip',
285 f_path=f_path))
286
272 287 r_post = request.POST
273 288
274 289 c.cs = self.__get_cs_or_redirect(revision, repo_name)
275 290 c.file = self.__get_filenode_or_redirect(repo_name, c.cs, f_path)
276 291
277 292 if c.file.is_binary:
278 293 return redirect(url('files_home', repo_name=c.repo_name,
279 294 revision=c.cs.raw_id, f_path=f_path))
280
295 c.default_message = _('Edited file %s via RhodeCode') % (f_path)
281 296 c.f_path = f_path
282 297
283 298 if r_post:
284 299
285 300 old_content = c.file.content
286 301 sl = old_content.splitlines(1)
287 302 first_line = sl[0] if sl else ''
288 303 # modes: 0 - Unix, 1 - Mac, 2 - DOS
289 304 mode = detect_mode(first_line, 0)
290 305 content = convert_line_endings(r_post.get('content'), mode)
291 306
292 message = r_post.get('message') or (_('Edited %s via RhodeCode')
293 % (f_path))
307 message = r_post.get('message') or c.default_message
294 308 author = self.rhodecode_user.full_contact
295 309
296 310 if content == old_content:
297 311 h.flash(_('No changes'),
298 312 category='warning')
299 313 return redirect(url('changeset_home', repo_name=c.repo_name,
300 314 revision='tip'))
301
302 315 try:
303 316 self.scm_model.commit_change(repo=c.rhodecode_repo,
304 317 repo_name=repo_name, cs=c.cs,
305 318 user=self.rhodecode_user,
306 319 author=author, message=message,
307 320 content=content, f_path=f_path)
308 321 h.flash(_('Successfully committed to %s') % f_path,
309 322 category='success')
310 323
311 324 except Exception:
312 325 log.error(traceback.format_exc())
313 326 h.flash(_('Error occurred during commit'), category='error')
314 327 return redirect(url('changeset_home',
315 328 repo_name=c.repo_name, revision='tip'))
316 329
317 330 return render('files/files_edit.html')
318 331
319 332 @LoginRequired()
320 333 @HasRepoPermissionAnyDecorator('repository.write', 'repository.admin')
321 334 def add(self, repo_name, revision, f_path):
322 335
323 336 repo = Repository.get_by_repo_name(repo_name)
324 337 if repo.enable_locking and repo.locked[0]:
325 338 h.flash(_('This repository is has been locked by %s on %s')
326 339 % (h.person_by_id(repo.locked[0]),
327 340 h.fmt_date(h.time_to_datetime(repo.locked[1]))),
328 341 'warning')
329 342 return redirect(h.url('files_home',
330 343 repo_name=repo_name, revision='tip'))
331 344
332 345 r_post = request.POST
333 346 c.cs = self.__get_cs_or_redirect(revision, repo_name,
334 347 redirect_after=False)
335 348 if c.cs is None:
336 349 c.cs = EmptyChangeset(alias=c.rhodecode_repo.alias)
337
350 c.default_message = (_('Added file via RhodeCode'))
338 351 c.f_path = f_path
339 352
340 353 if r_post:
341 354 unix_mode = 0
342 355 content = convert_line_endings(r_post.get('content'), unix_mode)
343 356
344 message = r_post.get('message') or (_('Added %s via RhodeCode')
345 % (f_path))
357 message = r_post.get('message') or c.default_message
346 358 location = r_post.get('location')
347 359 filename = r_post.get('filename')
348 360 file_obj = r_post.get('upload_file', None)
349 361
350 362 if file_obj is not None and hasattr(file_obj, 'filename'):
351 363 filename = file_obj.filename
352 364 content = file_obj.file
353 365
354 366 node_path = os.path.join(location, filename)
355 367 author = self.rhodecode_user.full_contact
356 368
357 369 if not content:
358 370 h.flash(_('No content'), category='warning')
359 371 return redirect(url('changeset_home', repo_name=c.repo_name,
360 372 revision='tip'))
361 373 if not filename:
362 374 h.flash(_('No filename'), category='warning')
363 375 return redirect(url('changeset_home', repo_name=c.repo_name,
364 376 revision='tip'))
365 377
366 378 try:
367 379 self.scm_model.create_node(repo=c.rhodecode_repo,
368 380 repo_name=repo_name, cs=c.cs,
369 381 user=self.rhodecode_user,
370 382 author=author, message=message,
371 383 content=content, f_path=node_path)
372 384 h.flash(_('Successfully committed to %s') % node_path,
373 385 category='success')
374 386 except NodeAlreadyExistsError, e:
375 387 h.flash(_(e), category='error')
376 388 except Exception:
377 389 log.error(traceback.format_exc())
378 390 h.flash(_('Error occurred during commit'), category='error')
379 391 return redirect(url('changeset_home',
380 392 repo_name=c.repo_name, revision='tip'))
381 393
382 394 return render('files/files_add.html')
383 395
384 396 @LoginRequired()
385 397 @HasRepoPermissionAnyDecorator('repository.read', 'repository.write',
386 398 'repository.admin')
387 399 def archivefile(self, repo_name, fname):
388 400
389 401 fileformat = None
390 402 revision = None
391 403 ext = None
392 404 subrepos = request.GET.get('subrepos') == 'true'
393 405
394 406 for a_type, ext_data in settings.ARCHIVE_SPECS.items():
395 407 archive_spec = fname.split(ext_data[1])
396 408 if len(archive_spec) == 2 and archive_spec[1] == '':
397 409 fileformat = a_type or ext_data[1]
398 410 revision = archive_spec[0]
399 411 ext = ext_data[1]
400 412
401 413 try:
402 414 dbrepo = RepoModel().get_by_repo_name(repo_name)
403 415 if dbrepo.enable_downloads is False:
404 416 return _('downloads disabled')
405 417
406 418 if c.rhodecode_repo.alias == 'hg':
407 419 # patch and reset hooks section of UI config to not run any
408 420 # hooks on fetching archives with subrepos
409 421 for k, v in c.rhodecode_repo._repo.ui.configitems('hooks'):
410 422 c.rhodecode_repo._repo.ui.setconfig('hooks', k, None)
411 423
412 424 cs = c.rhodecode_repo.get_changeset(revision)
413 425 content_type = settings.ARCHIVE_SPECS[fileformat][0]
414 426 except ChangesetDoesNotExistError:
415 427 return _('Unknown revision %s') % revision
416 428 except EmptyRepositoryError:
417 429 return _('Empty repository')
418 430 except (ImproperArchiveTypeError, KeyError):
419 431 return _('Unknown archive type')
420 432
421 433 fd, archive = tempfile.mkstemp()
422 434 t = open(archive, 'wb')
423 435 cs.fill_archive(stream=t, kind=fileformat, subrepos=subrepos)
424 436 t.close()
425 437
426 438 def get_chunked_archive(archive):
427 439 stream = open(archive, 'rb')
428 440 while True:
429 441 data = stream.read(16 * 1024)
430 442 if not data:
431 443 stream.close()
432 444 os.close(fd)
433 445 os.remove(archive)
434 446 break
435 447 yield data
436 448
437 449 response.content_disposition = str('attachment; filename=%s-%s%s' \
438 450 % (repo_name, revision[:12], ext))
439 451 response.content_type = str(content_type)
440 452 return get_chunked_archive(archive)
441 453
442 454 @LoginRequired()
443 455 @HasRepoPermissionAnyDecorator('repository.read', 'repository.write',
444 456 'repository.admin')
445 457 def diff(self, repo_name, f_path):
446 458 ignore_whitespace = request.GET.get('ignorews') == '1'
447 459 line_context = request.GET.get('context', 3)
448 460 diff1 = request.GET.get('diff1', '')
449 461 diff2 = request.GET.get('diff2', '')
450 462 c.action = request.GET.get('diff')
451 463 c.no_changes = diff1 == diff2
452 464 c.f_path = f_path
453 465 c.big_diff = False
454 466 c.anchor_url = anchor_url
455 467 c.ignorews_url = _ignorews_url
456 468 c.context_url = _context_url
457 469 c.changes = OrderedDict()
458 470 c.changes[diff2] = []
459 471
460 472 #special case if we want a show rev only, it's impl here
461 473 #to reduce JS and callbacks
462 474
463 475 if request.GET.get('show_rev'):
464 476 if str2bool(request.GET.get('annotate', 'False')):
465 477 _url = url('files_annotate_home', repo_name=c.repo_name,
466 478 revision=diff1, f_path=c.f_path)
467 479 else:
468 480 _url = url('files_home', repo_name=c.repo_name,
469 481 revision=diff1, f_path=c.f_path)
470 482
471 483 return redirect(_url)
472 484 try:
473 485 if diff1 not in ['', None, 'None', '0' * 12, '0' * 40]:
474 486 c.changeset_1 = c.rhodecode_repo.get_changeset(diff1)
475 487 try:
476 488 node1 = c.changeset_1.get_node(f_path)
477 489 except NodeDoesNotExistError:
478 490 c.changeset_1 = EmptyChangeset(cs=diff1,
479 491 revision=c.changeset_1.revision,
480 492 repo=c.rhodecode_repo)
481 493 node1 = FileNode(f_path, '', changeset=c.changeset_1)
482 494 else:
483 495 c.changeset_1 = EmptyChangeset(repo=c.rhodecode_repo)
484 496 node1 = FileNode(f_path, '', changeset=c.changeset_1)
485 497
486 498 if diff2 not in ['', None, 'None', '0' * 12, '0' * 40]:
487 499 c.changeset_2 = c.rhodecode_repo.get_changeset(diff2)
488 500 try:
489 501 node2 = c.changeset_2.get_node(f_path)
490 502 except NodeDoesNotExistError:
491 503 c.changeset_2 = EmptyChangeset(cs=diff2,
492 504 revision=c.changeset_2.revision,
493 505 repo=c.rhodecode_repo)
494 506 node2 = FileNode(f_path, '', changeset=c.changeset_2)
495 507 else:
496 508 c.changeset_2 = EmptyChangeset(repo=c.rhodecode_repo)
497 509 node2 = FileNode(f_path, '', changeset=c.changeset_2)
498 510 except (RepositoryError, NodeError):
499 511 log.error(traceback.format_exc())
500 512 return redirect(url('files_home', repo_name=c.repo_name,
501 513 f_path=f_path))
502 514
503 515 if c.action == 'download':
504 516 _diff = diffs.get_gitdiff(node1, node2,
505 517 ignore_whitespace=ignore_whitespace,
506 518 context=line_context)
507 519 diff = diffs.DiffProcessor(_diff, format='gitdiff')
508 520
509 521 diff_name = '%s_vs_%s.diff' % (diff1, diff2)
510 522 response.content_type = 'text/plain'
511 523 response.content_disposition = (
512 524 'attachment; filename=%s' % diff_name
513 525 )
514 526 return diff.as_raw()
515 527
516 528 elif c.action == 'raw':
517 529 _diff = diffs.get_gitdiff(node1, node2,
518 530 ignore_whitespace=ignore_whitespace,
519 531 context=line_context)
520 532 diff = diffs.DiffProcessor(_diff, format='gitdiff')
521 533 response.content_type = 'text/plain'
522 534 return diff.as_raw()
523 535
524 536 else:
525 537 fid = h.FID(diff2, node2.path)
526 538 line_context_lcl = get_line_ctx(fid, request.GET)
527 539 ign_whitespace_lcl = get_ignore_ws(fid, request.GET)
528 540
529 541 lim = request.GET.get('fulldiff') or self.cut_off_limit
530 542 _, cs1, cs2, diff, st = diffs.wrapped_diff(filenode_old=node1,
531 543 filenode_new=node2,
532 544 cut_off_limit=lim,
533 545 ignore_whitespace=ign_whitespace_lcl,
534 546 line_context=line_context_lcl,
535 547 enable_comments=False)
536 548 op = ''
537 549 filename = node1.path
538 550 cs_changes = {
539 551 'fid': [cs1, cs2, op, filename, diff, st]
540 552 }
541 553 c.changes = cs_changes
542 554
543 555 return render('files/file_diff.html')
544 556
545 557 def _get_node_history(self, cs, f_path, changesets=None):
546 558 """
547 559 get changesets history for given node
548 560
549 561 :param cs: changeset to calculate history
550 562 :param f_path: path for node to calculate history for
551 563 :param changesets: if passed don't calculate history and take
552 564 changesets defined in this list
553 565 """
554 566 # calculate history based on tip
555 567 tip_cs = c.rhodecode_repo.get_changeset()
556 568 if changesets is None:
557 569 try:
558 570 changesets = tip_cs.get_file_history(f_path)
559 571 except (NodeDoesNotExistError, ChangesetError):
560 572 #this node is not present at tip !
561 573 changesets = cs.get_file_history(f_path)
562 574 hist_l = []
563 575
564 576 changesets_group = ([], _("Changesets"))
565 577 branches_group = ([], _("Branches"))
566 578 tags_group = ([], _("Tags"))
567 579 _hg = cs.repository.alias == 'hg'
568 580 for chs in changesets:
569 581 #_branch = '(%s)' % chs.branch if _hg else ''
570 582 _branch = chs.branch
571 583 n_desc = 'r%s:%s (%s)' % (chs.revision, chs.short_id, _branch)
572 584 changesets_group[0].append((chs.raw_id, n_desc,))
573 585 hist_l.append(changesets_group)
574 586
575 587 for name, chs in c.rhodecode_repo.branches.items():
576 588 branches_group[0].append((chs, name),)
577 589 hist_l.append(branches_group)
578 590
579 591 for name, chs in c.rhodecode_repo.tags.items():
580 592 tags_group[0].append((chs, name),)
581 593 hist_l.append(tags_group)
582 594
583 595 return hist_l, changesets
584 596
585 597 @LoginRequired()
586 598 @HasRepoPermissionAnyDecorator('repository.read', 'repository.write',
587 599 'repository.admin')
588 600 @jsonify
589 601 def nodelist(self, repo_name, revision, f_path):
590 602 if request.environ.get('HTTP_X_PARTIAL_XHR'):
591 603 cs = self.__get_cs_or_redirect(revision, repo_name)
592 604 _d, _f = ScmModel().get_nodes(repo_name, cs.raw_id, f_path,
593 605 flat=False)
594 606 return {'nodes': _d + _f}
@@ -1,4847 +1,4859 b''
1 1 html,body,div,span,applet,object,iframe,h1,h2,h3,h4,h5,h6,p,blockquote,pre,a,abbr,acronym,address,big,cite,code,del,dfn,em,font,img,ins,kbd,q,s,samp,small,strike,strong,sub,sup,tt,var,b,u,i,center,dl,dt,dd,ol,ul,li,fieldset,form,label,legend,table,caption,tbody,tfoot,thead,tr,th,td
2 2 {
3 3 border: 0;
4 4 outline: 0;
5 5 font-size: 100%;
6 6 vertical-align: baseline;
7 7 background: transparent;
8 8 margin: 0;
9 9 padding: 0;
10 10 }
11 11
12 12 body {
13 13 line-height: 1;
14 14 height: 100%;
15 15 background: url("../images/background.png") repeat scroll 0 0 #B0B0B0;
16 16 font-family: Lucida Grande, Verdana, Lucida Sans Regular,
17 17 Lucida Sans Unicode, Arial, sans-serif; font-size : 12px;
18 18 color: #000;
19 19 margin: 0;
20 20 padding: 0;
21 21 font-size: 12px;
22 22 }
23 23
24 24 ol,ul {
25 25 list-style: none;
26 26 }
27 27
28 28 blockquote,q {
29 29 quotes: none;
30 30 }
31 31
32 32 blockquote:before,blockquote:after,q:before,q:after {
33 33 content: none;
34 34 }
35 35
36 36 :focus {
37 37 outline: 0;
38 38 }
39 39
40 40 del {
41 41 text-decoration: line-through;
42 42 }
43 43
44 44 table {
45 45 border-collapse: collapse;
46 46 border-spacing: 0;
47 47 }
48 48
49 49 html {
50 50 height: 100%;
51 51 }
52 52
53 53 a {
54 54 color: #003367;
55 55 text-decoration: none;
56 56 cursor: pointer;
57 57 }
58 58
59 59 a:hover {
60 60 color: #316293;
61 61 text-decoration: underline;
62 62 }
63 63
64 64 h1,h2,h3,h4,h5,h6,
65 65 div.h1,div.h2,div.h3,div.h4,div.h5,div.h6 {
66 66 color: #292929;
67 67 font-weight: 700;
68 68 }
69 69
70 70 h1,div.h1 {
71 71 font-size: 22px;
72 72 }
73 73
74 74 h2,div.h2 {
75 75 font-size: 20px;
76 76 }
77 77
78 78 h3,div.h3 {
79 79 font-size: 18px;
80 80 }
81 81
82 82 h4,div.h4 {
83 83 font-size: 16px;
84 84 }
85 85
86 86 h5,div.h5 {
87 87 font-size: 14px;
88 88 }
89 89
90 90 h6,div.h6 {
91 91 font-size: 11px;
92 92 }
93 93
94 94 ul.circle {
95 95 list-style-type: circle;
96 96 }
97 97
98 98 ul.disc {
99 99 list-style-type: disc;
100 100 }
101 101
102 102 ul.square {
103 103 list-style-type: square;
104 104 }
105 105
106 106 ol.lower-roman {
107 107 list-style-type: lower-roman;
108 108 }
109 109
110 110 ol.upper-roman {
111 111 list-style-type: upper-roman;
112 112 }
113 113
114 114 ol.lower-alpha {
115 115 list-style-type: lower-alpha;
116 116 }
117 117
118 118 ol.upper-alpha {
119 119 list-style-type: upper-alpha;
120 120 }
121 121
122 122 ol.decimal {
123 123 list-style-type: decimal;
124 124 }
125 125
126 126 div.color {
127 127 clear: both;
128 128 overflow: hidden;
129 129 position: absolute;
130 130 background: #FFF;
131 131 margin: 7px 0 0 60px;
132 132 padding: 1px 1px 1px 0;
133 133 }
134 134
135 135 div.color a {
136 136 width: 15px;
137 137 height: 15px;
138 138 display: block;
139 139 float: left;
140 140 margin: 0 0 0 1px;
141 141 padding: 0;
142 142 }
143 143
144 144 div.options {
145 145 clear: both;
146 146 overflow: hidden;
147 147 position: absolute;
148 148 background: #FFF;
149 149 margin: 7px 0 0 162px;
150 150 padding: 0;
151 151 }
152 152
153 153 div.options a {
154 154 height: 1%;
155 155 display: block;
156 156 text-decoration: none;
157 157 margin: 0;
158 158 padding: 3px 8px;
159 159 }
160 160
161 161 .top-left-rounded-corner {
162 162 -webkit-border-top-left-radius: 8px;
163 163 -khtml-border-radius-topleft: 8px;
164 164 -moz-border-radius-topleft: 8px;
165 165 border-top-left-radius: 8px;
166 166 }
167 167
168 168 .top-right-rounded-corner {
169 169 -webkit-border-top-right-radius: 8px;
170 170 -khtml-border-radius-topright: 8px;
171 171 -moz-border-radius-topright: 8px;
172 172 border-top-right-radius: 8px;
173 173 }
174 174
175 175 .bottom-left-rounded-corner {
176 176 -webkit-border-bottom-left-radius: 8px;
177 177 -khtml-border-radius-bottomleft: 8px;
178 178 -moz-border-radius-bottomleft: 8px;
179 179 border-bottom-left-radius: 8px;
180 180 }
181 181
182 182 .bottom-right-rounded-corner {
183 183 -webkit-border-bottom-right-radius: 8px;
184 184 -khtml-border-radius-bottomright: 8px;
185 185 -moz-border-radius-bottomright: 8px;
186 186 border-bottom-right-radius: 8px;
187 187 }
188 188
189 189 .top-left-rounded-corner-mid {
190 190 -webkit-border-top-left-radius: 4px;
191 191 -khtml-border-radius-topleft: 4px;
192 192 -moz-border-radius-topleft: 4px;
193 193 border-top-left-radius: 4px;
194 194 }
195 195
196 196 .top-right-rounded-corner-mid {
197 197 -webkit-border-top-right-radius: 4px;
198 198 -khtml-border-radius-topright: 4px;
199 199 -moz-border-radius-topright: 4px;
200 200 border-top-right-radius: 4px;
201 201 }
202 202
203 203 .bottom-left-rounded-corner-mid {
204 204 -webkit-border-bottom-left-radius: 4px;
205 205 -khtml-border-radius-bottomleft: 4px;
206 206 -moz-border-radius-bottomleft: 4px;
207 207 border-bottom-left-radius: 4px;
208 208 }
209 209
210 210 .bottom-right-rounded-corner-mid {
211 211 -webkit-border-bottom-right-radius: 4px;
212 212 -khtml-border-radius-bottomright: 4px;
213 213 -moz-border-radius-bottomright: 4px;
214 214 border-bottom-right-radius: 4px;
215 215 }
216 216
217 217 .help-block {
218 218 color: #999999;
219 219 display: block;
220 220 margin-bottom: 0;
221 221 margin-top: 5px;
222 222 }
223 223
224 224 .empty_data{
225 225 color:#B9B9B9;
226 226 }
227 227
228 228 a.permalink{
229 229 visibility: hidden;
230 230 }
231 231
232 232 a.permalink:hover{
233 233 text-decoration: none;
234 234 }
235 235
236 236 h1:hover > a.permalink,
237 237 h2:hover > a.permalink,
238 238 h3:hover > a.permalink,
239 239 h4:hover > a.permalink,
240 240 h5:hover > a.permalink,
241 241 h6:hover > a.permalink,
242 242 div:hover > a.permalink {
243 243 visibility: visible;
244 244 }
245 245
246 246 #header {
247 247 margin: 0;
248 248 padding: 0 10px;
249 249 }
250 250
251 251 #header ul#logged-user {
252 252 margin-bottom: 5px !important;
253 253 -webkit-border-radius: 0px 0px 8px 8px;
254 254 -khtml-border-radius: 0px 0px 8px 8px;
255 255 -moz-border-radius: 0px 0px 8px 8px;
256 256 border-radius: 0px 0px 8px 8px;
257 257 height: 37px;
258 258 background-color: #003B76;
259 259 background-repeat: repeat-x;
260 260 background-image: -khtml-gradient(linear, left top, left bottom, from(#003B76), to(#00376E) );
261 261 background-image: -moz-linear-gradient(top, #003b76, #00376e);
262 262 background-image: -ms-linear-gradient(top, #003b76, #00376e);
263 263 background-image: -webkit-gradient(linear, left top, left bottom, color-stop(0%, #003b76), color-stop(100%, #00376e) );
264 264 background-image: -webkit-linear-gradient(top, #003b76, #00376e);
265 265 background-image: -o-linear-gradient(top, #003b76, #00376e);
266 266 background-image: linear-gradient(top, #003b76, #00376e);
267 267 filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#003b76',endColorstr='#00376e', GradientType=0 );
268 268 box-shadow: 0 2px 2px rgba(0, 0, 0, 0.6);
269 269 }
270 270
271 271 #header ul#logged-user li {
272 272 list-style: none;
273 273 float: left;
274 274 margin: 8px 0 0;
275 275 padding: 4px 12px;
276 276 border-left: 1px solid #316293;
277 277 }
278 278
279 279 #header ul#logged-user li.first {
280 280 border-left: none;
281 281 margin: 4px;
282 282 }
283 283
284 284 #header ul#logged-user li.first div.gravatar {
285 285 margin-top: -2px;
286 286 }
287 287
288 288 #header ul#logged-user li.first div.account {
289 289 padding-top: 4px;
290 290 float: left;
291 291 }
292 292
293 293 #header ul#logged-user li.last {
294 294 border-right: none;
295 295 }
296 296
297 297 #header ul#logged-user li a {
298 298 color: #fff;
299 299 font-weight: 700;
300 300 text-decoration: none;
301 301 }
302 302
303 303 #header ul#logged-user li a:hover {
304 304 text-decoration: underline;
305 305 }
306 306
307 307 #header ul#logged-user li.highlight a {
308 308 color: #fff;
309 309 }
310 310
311 311 #header ul#logged-user li.highlight a:hover {
312 312 color: #FFF;
313 313 }
314 314
315 315 #header #header-inner {
316 316 min-height: 44px;
317 317 clear: both;
318 318 position: relative;
319 319 background-color: #003B76;
320 320 background-repeat: repeat-x;
321 321 background-image: -khtml-gradient(linear, left top, left bottom, from(#003B76), to(#00376E) );
322 322 background-image: -moz-linear-gradient(top, #003b76, #00376e);
323 323 background-image: -ms-linear-gradient(top, #003b76, #00376e);
324 324 background-image: -webkit-gradient(linear, left top, left bottom, color-stop(0%, #003b76),color-stop(100%, #00376e) );
325 325 background-image: -webkit-linear-gradient(top, #003b76, #00376e);
326 326 background-image: -o-linear-gradient(top, #003b76, #00376e);
327 327 background-image: linear-gradient(top, #003b76, #00376e);
328 328 filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#003b76',endColorstr='#00376e', GradientType=0 );
329 329 margin: 0;
330 330 padding: 0;
331 331 display: block;
332 332 box-shadow: 0 2px 2px rgba(0, 0, 0, 0.6);
333 333 -webkit-border-radius: 4px 4px 4px 4px;
334 334 -khtml-border-radius: 4px 4px 4px 4px;
335 335 -moz-border-radius: 4px 4px 4px 4px;
336 336 border-radius: 4px 4px 4px 4px;
337 337 }
338 338 #header #header-inner.hover{
339 339 position: fixed !important;
340 340 width: 100% !important;
341 341 margin-left: -10px !important;
342 342 z-index: 10000;
343 343 -webkit-border-radius: 0px 0px 0px 0px;
344 344 -khtml-border-radius: 0px 0px 0px 0px;
345 345 -moz-border-radius: 0px 0px 0px 0px;
346 346 border-radius: 0px 0px 0px 0px;
347 347 }
348 348
349 349 .ie7 #header #header-inner.hover,
350 350 .ie8 #header #header-inner.hover,
351 351 .ie9 #header #header-inner.hover
352 352 {
353 353 z-index: auto !important;
354 354 }
355 355
356 356 .header-pos-fix, .anchor{
357 357 margin-top: -46px;
358 358 padding-top: 46px;
359 359 }
360 360
361 361 #header #header-inner #home a {
362 362 height: 40px;
363 363 width: 46px;
364 364 display: block;
365 365 background: url("../images/button_home.png");
366 366 background-position: 0 0;
367 367 margin: 0;
368 368 padding: 0;
369 369 }
370 370
371 371 #header #header-inner #home a:hover {
372 372 background-position: 0 -40px;
373 373 }
374 374
375 375 #header #header-inner #logo {
376 376 float: left;
377 377 position: absolute;
378 378 }
379 379
380 380 #header #header-inner #logo h1 {
381 381 color: #FFF;
382 382 font-size: 20px;
383 383 margin: 12px 0 0 13px;
384 384 padding: 0;
385 385 }
386 386
387 387 #header #header-inner #logo a {
388 388 color: #fff;
389 389 text-decoration: none;
390 390 }
391 391
392 392 #header #header-inner #logo a:hover {
393 393 color: #bfe3ff;
394 394 }
395 395
396 396 #header #header-inner #quick,#header #header-inner #quick ul {
397 397 position: relative;
398 398 float: right;
399 399 list-style-type: none;
400 400 list-style-position: outside;
401 401 margin: 8px 8px 0 0;
402 402 padding: 0;
403 403 }
404 404
405 405 #header #header-inner #quick li {
406 406 position: relative;
407 407 float: left;
408 408 margin: 0 5px 0 0;
409 409 padding: 0;
410 410 }
411 411
412 412 #header #header-inner #quick li a.menu_link {
413 413 top: 0;
414 414 left: 0;
415 415 height: 1%;
416 416 display: block;
417 417 clear: both;
418 418 overflow: hidden;
419 419 color: #FFF;
420 420 font-weight: 700;
421 421 text-decoration: none;
422 422 background: #369;
423 423 padding: 0;
424 424 -webkit-border-radius: 4px 4px 4px 4px;
425 425 -khtml-border-radius: 4px 4px 4px 4px;
426 426 -moz-border-radius: 4px 4px 4px 4px;
427 427 border-radius: 4px 4px 4px 4px;
428 428 }
429 429
430 430 #header #header-inner #quick li span.short {
431 431 padding: 9px 6px 8px 6px;
432 432 }
433 433
434 434 #header #header-inner #quick li span {
435 435 top: 0;
436 436 right: 0;
437 437 height: 1%;
438 438 display: block;
439 439 float: left;
440 440 border-left: 1px solid #3f6f9f;
441 441 margin: 0;
442 442 padding: 10px 12px 8px 10px;
443 443 }
444 444
445 445 #header #header-inner #quick li span.normal {
446 446 border: none;
447 447 padding: 10px 12px 8px;
448 448 }
449 449
450 450 #header #header-inner #quick li span.icon {
451 451 top: 0;
452 452 left: 0;
453 453 border-left: none;
454 454 border-right: 1px solid #2e5c89;
455 455 padding: 8px 6px 4px;
456 456 min-width: 16px;
457 457 min-height: 16px;
458 458 }
459 459
460 460 #header #header-inner #quick li span.icon_short {
461 461 top: 0;
462 462 left: 0;
463 463 border-left: none;
464 464 border-right: 1px solid #2e5c89;
465 465 padding: 8px 6px 4px;
466 466 }
467 467
468 468 #header #header-inner #quick li span.icon img,#header #header-inner #quick li span.icon_short img
469 469 {
470 470 margin: 0px -2px 0px 0px;
471 471 }
472 472
473 473 #header #header-inner #quick li.current a,
474 474 #header #header-inner #quick li a:hover {
475 475 background: #4e4e4e no-repeat top left;
476 476 }
477 477
478 478 #header #header-inner #quick li.current a span,
479 479 #header #header-inner #quick li a:hover span {
480 480 border-left: 1px solid #545454;
481 481 }
482 482
483 483 #header #header-inner #quick li.current a span.icon,
484 484 #header #header-inner #quick li.current a span.icon_short,
485 485 #header #header-inner #quick li a:hover span.icon,
486 486 #header #header-inner #quick li a:hover span.icon_short
487 487 {
488 488 border-left: none;
489 489 border-right: 1px solid #464646;
490 490 }
491 491
492 492 #header #header-inner #quick ul {
493 493 top: 29px;
494 494 right: 0;
495 495 min-width: 200px;
496 496 display: none;
497 497 position: absolute;
498 498 background: #FFF;
499 499 border: 1px solid #666;
500 500 border-top: 1px solid #003367;
501 501 z-index: 100;
502 502 margin: 0px 0px 0px 0px;
503 503 padding: 0;
504 504 }
505 505
506 506 #header #header-inner #quick ul.repo_switcher {
507 507 max-height: 275px;
508 508 overflow-x: hidden;
509 509 overflow-y: auto;
510 510 }
511 511
512 512 #header #header-inner #quick ul.repo_switcher li.qfilter_rs {
513 513 float: none;
514 514 margin: 0;
515 515 border-bottom: 2px solid #003367;
516 516 }
517 517
518 518 #header #header-inner #quick .repo_switcher_type {
519 519 position: absolute;
520 520 left: 0;
521 521 top: 9px;
522 522 }
523 523
524 524 #header #header-inner #quick li ul li {
525 525 border-bottom: 1px solid #ddd;
526 526 }
527 527
528 528 #header #header-inner #quick li ul li a {
529 529 width: 182px;
530 530 height: auto;
531 531 display: block;
532 532 float: left;
533 533 background: #FFF;
534 534 color: #003367;
535 535 font-weight: 400;
536 536 margin: 0;
537 537 padding: 7px 9px;
538 538 }
539 539
540 540 #header #header-inner #quick li ul li a:hover {
541 541 color: #000;
542 542 background: #FFF;
543 543 }
544 544
545 545 #header #header-inner #quick ul ul {
546 546 top: auto;
547 547 }
548 548
549 549 #header #header-inner #quick li ul ul {
550 550 right: 200px;
551 551 max-height: 290px;
552 552 overflow: auto;
553 553 overflow-x: hidden;
554 554 white-space: normal;
555 555 }
556 556
557 557 #header #header-inner #quick li ul li a.journal,#header #header-inner #quick li ul li a.journal:hover
558 558 {
559 559 background: url("../images/icons/book.png") no-repeat scroll 4px 9px
560 560 #FFF;
561 561 width: 167px;
562 562 margin: 0;
563 563 padding: 12px 9px 7px 24px;
564 564 }
565 565
566 566 #header #header-inner #quick li ul li a.private_repo,#header #header-inner #quick li ul li a.private_repo:hover
567 567 {
568 568 background: url("../images/icons/lock.png") no-repeat scroll 4px 9px
569 569 #FFF;
570 570 min-width: 167px;
571 571 margin: 0;
572 572 padding: 12px 9px 7px 24px;
573 573 }
574 574
575 575 #header #header-inner #quick li ul li a.public_repo,#header #header-inner #quick li ul li a.public_repo:hover
576 576 {
577 577 background: url("../images/icons/lock_open.png") no-repeat scroll 4px
578 578 9px #FFF;
579 579 min-width: 167px;
580 580 margin: 0;
581 581 padding: 12px 9px 7px 24px;
582 582 }
583 583
584 584 #header #header-inner #quick li ul li a.hg,#header #header-inner #quick li ul li a.hg:hover
585 585 {
586 586 background: url("../images/icons/hgicon.png") no-repeat scroll 4px 9px
587 587 #FFF;
588 588 min-width: 167px;
589 589 margin: 0 0 0 14px;
590 590 padding: 12px 9px 7px 24px;
591 591 }
592 592
593 593 #header #header-inner #quick li ul li a.git,#header #header-inner #quick li ul li a.git:hover
594 594 {
595 595 background: url("../images/icons/giticon.png") no-repeat scroll 4px 9px
596 596 #FFF;
597 597 min-width: 167px;
598 598 margin: 0 0 0 14px;
599 599 padding: 12px 9px 7px 24px;
600 600 }
601 601
602 602 #header #header-inner #quick li ul li a.repos,#header #header-inner #quick li ul li a.repos:hover
603 603 {
604 604 background: url("../images/icons/database_edit.png") no-repeat scroll
605 605 4px 9px #FFF;
606 606 width: 167px;
607 607 margin: 0;
608 608 padding: 12px 9px 7px 24px;
609 609 }
610 610
611 611 #header #header-inner #quick li ul li a.repos_groups,#header #header-inner #quick li ul li a.repos_groups:hover
612 612 {
613 613 background: url("../images/icons/database_link.png") no-repeat scroll
614 614 4px 9px #FFF;
615 615 width: 167px;
616 616 margin: 0;
617 617 padding: 12px 9px 7px 24px;
618 618 }
619 619
620 620 #header #header-inner #quick li ul li a.users,#header #header-inner #quick li ul li a.users:hover
621 621 {
622 622 background: #FFF url("../images/icons/user_edit.png") no-repeat 4px 9px;
623 623 width: 167px;
624 624 margin: 0;
625 625 padding: 12px 9px 7px 24px;
626 626 }
627 627
628 628 #header #header-inner #quick li ul li a.groups,#header #header-inner #quick li ul li a.groups:hover
629 629 {
630 630 background: #FFF url("../images/icons/group_edit.png") no-repeat 4px 9px;
631 631 width: 167px;
632 632 margin: 0;
633 633 padding: 12px 9px 7px 24px;
634 634 }
635 635
636 636 #header #header-inner #quick li ul li a.defaults,#header #header-inner #quick li ul li a.defaults:hover
637 637 {
638 638 background: #FFF url("../images/icons/wrench.png") no-repeat 4px 9px;
639 639 width: 167px;
640 640 margin: 0;
641 641 padding: 12px 9px 7px 24px;
642 642 }
643 643
644 644 #header #header-inner #quick li ul li a.settings,#header #header-inner #quick li ul li a.settings:hover
645 645 {
646 646 background: #FFF url("../images/icons/cog.png") no-repeat 4px 9px;
647 647 width: 167px;
648 648 margin: 0;
649 649 padding: 12px 9px 7px 24px;
650 650 }
651 651
652 652 #header #header-inner #quick li ul li a.permissions,#header #header-inner #quick li ul li a.permissions:hover
653 653 {
654 654 background: #FFF url("../images/icons/key.png") no-repeat 4px 9px;
655 655 width: 167px;
656 656 margin: 0;
657 657 padding: 12px 9px 7px 24px;
658 658 }
659 659
660 660 #header #header-inner #quick li ul li a.ldap,#header #header-inner #quick li ul li a.ldap:hover
661 661 {
662 662 background: #FFF url("../images/icons/server_key.png") no-repeat 4px 9px;
663 663 width: 167px;
664 664 margin: 0;
665 665 padding: 12px 9px 7px 24px;
666 666 }
667 667
668 668 #header #header-inner #quick li ul li a.fork,#header #header-inner #quick li ul li a.fork:hover
669 669 {
670 670 background: #FFF url("../images/icons/arrow_divide.png") no-repeat 4px
671 671 9px;
672 672 width: 167px;
673 673 margin: 0;
674 674 padding: 12px 9px 7px 24px;
675 675 }
676 676
677 677 #header #header-inner #quick li ul li a.locking_add,#header #header-inner #quick li ul li a.locking_add:hover
678 678 {
679 679 background: #FFF url("../images/icons/lock_add.png") no-repeat 4px
680 680 9px;
681 681 width: 167px;
682 682 margin: 0;
683 683 padding: 12px 9px 7px 24px;
684 684 }
685 685
686 686 #header #header-inner #quick li ul li a.locking_del,#header #header-inner #quick li ul li a.locking_del:hover
687 687 {
688 688 background: #FFF url("../images/icons/lock_delete.png") no-repeat 4px
689 689 9px;
690 690 width: 167px;
691 691 margin: 0;
692 692 padding: 12px 9px 7px 24px;
693 693 }
694 694
695 695 #header #header-inner #quick li ul li a.pull_request,#header #header-inner #quick li ul li a.pull_request:hover
696 696 {
697 697 background: #FFF url("../images/icons/arrow_join.png") no-repeat 4px
698 698 9px;
699 699 width: 167px;
700 700 margin: 0;
701 701 padding: 12px 9px 7px 24px;
702 702 }
703 703
704 704 #header #header-inner #quick li ul li a.compare_request,#header #header-inner #quick li ul li a.compare_request:hover
705 705 {
706 706 background: #FFF url("../images/icons/arrow_inout.png") no-repeat 4px
707 707 9px;
708 708 width: 167px;
709 709 margin: 0;
710 710 padding: 12px 9px 7px 24px;
711 711 }
712 712
713 713 #header #header-inner #quick li ul li a.search,#header #header-inner #quick li ul li a.search:hover
714 714 {
715 715 background: #FFF url("../images/icons/search_16.png") no-repeat 4px 9px;
716 716 width: 167px;
717 717 margin: 0;
718 718 padding: 12px 9px 7px 24px;
719 719 }
720 720
721 721 #header #header-inner #quick li ul li a.delete,#header #header-inner #quick li ul li a.delete:hover
722 722 {
723 723 background: #FFF url("../images/icons/delete.png") no-repeat 4px 9px;
724 724 width: 167px;
725 725 margin: 0;
726 726 padding: 12px 9px 7px 24px;
727 727 }
728 728
729 729 #header #header-inner #quick li ul li a.branches,#header #header-inner #quick li ul li a.branches:hover
730 730 {
731 731 background: #FFF url("../images/icons/arrow_branch.png") no-repeat 4px
732 732 9px;
733 733 width: 167px;
734 734 margin: 0;
735 735 padding: 12px 9px 7px 24px;
736 736 }
737 737
738 738 #header #header-inner #quick li ul li a.tags,
739 739 #header #header-inner #quick li ul li a.tags:hover{
740 740 background: #FFF url("../images/icons/tag_blue.png") no-repeat 4px 9px;
741 741 width: 167px;
742 742 margin: 0;
743 743 padding: 12px 9px 7px 24px;
744 744 }
745 745
746 746 #header #header-inner #quick li ul li a.bookmarks,
747 747 #header #header-inner #quick li ul li a.bookmarks:hover{
748 748 background: #FFF url("../images/icons/tag_green.png") no-repeat 4px 9px;
749 749 width: 167px;
750 750 margin: 0;
751 751 padding: 12px 9px 7px 24px;
752 752 }
753 753
754 754 #header #header-inner #quick li ul li a.admin,
755 755 #header #header-inner #quick li ul li a.admin:hover{
756 756 background: #FFF url("../images/icons/cog_edit.png") no-repeat 4px 9px;
757 757 width: 167px;
758 758 margin: 0;
759 759 padding: 12px 9px 7px 24px;
760 760 }
761 761
762 762 .groups_breadcrumbs a {
763 763 color: #fff;
764 764 }
765 765
766 766 .groups_breadcrumbs a:hover {
767 767 color: #bfe3ff;
768 768 text-decoration: none;
769 769 }
770 770
771 771 td.quick_repo_menu {
772 772 background: #FFF url("../images/vertical-indicator.png") 8px 50% no-repeat !important;
773 773 cursor: pointer;
774 774 width: 8px;
775 775 border: 1px solid transparent;
776 776 }
777 777
778 778 td.quick_repo_menu.active {
779 779 background: url("../images/dt-arrow-dn.png") no-repeat scroll 5px 50% #FFFFFF !important;
780 780 border: 1px solid #003367;
781 781 box-shadow: 0 2px 4px rgba(0, 0, 0, 0.2);
782 782 cursor: pointer;
783 783 }
784 784
785 785 td.quick_repo_menu .menu_items {
786 786 margin-top: 10px;
787 787 margin-left:-6px;
788 788 width: 150px;
789 789 position: absolute;
790 790 background-color: #FFF;
791 791 background: none repeat scroll 0 0 #FFFFFF;
792 792 border-color: #003367 #666666 #666666;
793 793 border-right: 1px solid #666666;
794 794 border-style: solid;
795 795 border-width: 1px;
796 796 box-shadow: 2px 8px 4px rgba(0, 0, 0, 0.2);
797 797 border-top-style: none;
798 798 }
799 799
800 800 td.quick_repo_menu .menu_items li {
801 801 padding: 0 !important;
802 802 }
803 803
804 804 td.quick_repo_menu .menu_items a {
805 805 display: block;
806 806 padding: 4px 12px 4px 8px;
807 807 }
808 808
809 809 td.quick_repo_menu .menu_items a:hover {
810 810 background-color: #EEE;
811 811 text-decoration: none;
812 812 }
813 813
814 814 td.quick_repo_menu .menu_items .icon img {
815 815 margin-bottom: -2px;
816 816 }
817 817
818 818 td.quick_repo_menu .menu_items.hidden {
819 819 display: none;
820 820 }
821 821
822 822 .yui-dt-first th {
823 823 text-align: left;
824 824 }
825 825
826 826 /*
827 827 Copyright (c) 2011, Yahoo! Inc. All rights reserved.
828 828 Code licensed under the BSD License:
829 829 http://developer.yahoo.com/yui/license.html
830 830 version: 2.9.0
831 831 */
832 832 .yui-skin-sam .yui-dt-mask {
833 833 position: absolute;
834 834 z-index: 9500;
835 835 }
836 836 .yui-dt-tmp {
837 837 position: absolute;
838 838 left: -9000px;
839 839 }
840 840 .yui-dt-scrollable .yui-dt-bd { overflow: auto }
841 841 .yui-dt-scrollable .yui-dt-hd {
842 842 overflow: hidden;
843 843 position: relative;
844 844 }
845 845 .yui-dt-scrollable .yui-dt-bd thead tr,
846 846 .yui-dt-scrollable .yui-dt-bd thead th {
847 847 position: absolute;
848 848 left: -1500px;
849 849 }
850 850 .yui-dt-scrollable tbody { -moz-outline: 0 }
851 851 .yui-skin-sam thead .yui-dt-sortable { cursor: pointer }
852 852 .yui-skin-sam thead .yui-dt-draggable { cursor: move }
853 853 .yui-dt-coltarget {
854 854 position: absolute;
855 855 z-index: 999;
856 856 }
857 857 .yui-dt-hd { zoom: 1 }
858 858 th.yui-dt-resizeable .yui-dt-resizerliner { position: relative }
859 859 .yui-dt-resizer {
860 860 position: absolute;
861 861 right: 0;
862 862 bottom: 0;
863 863 height: 100%;
864 864 cursor: e-resize;
865 865 cursor: col-resize;
866 866 background-color: #CCC;
867 867 opacity: 0;
868 868 filter: alpha(opacity=0);
869 869 }
870 870 .yui-dt-resizerproxy {
871 871 visibility: hidden;
872 872 position: absolute;
873 873 z-index: 9000;
874 874 background-color: #CCC;
875 875 opacity: 0;
876 876 filter: alpha(opacity=0);
877 877 }
878 878 th.yui-dt-hidden .yui-dt-liner,
879 879 td.yui-dt-hidden .yui-dt-liner,
880 880 th.yui-dt-hidden .yui-dt-resizer { display: none }
881 881 .yui-dt-editor,
882 882 .yui-dt-editor-shim {
883 883 position: absolute;
884 884 z-index: 9000;
885 885 }
886 886 .yui-skin-sam .yui-dt table {
887 887 margin: 0;
888 888 padding: 0;
889 889 font-family: arial;
890 890 font-size: inherit;
891 891 border-collapse: separate;
892 892 *border-collapse: collapse;
893 893 border-spacing: 0;
894 894 border: 1px solid #7f7f7f;
895 895 }
896 896 .yui-skin-sam .yui-dt thead { border-spacing: 0 }
897 897 .yui-skin-sam .yui-dt caption {
898 898 color: #000;
899 899 font-size: 85%;
900 900 font-weight: normal;
901 901 font-style: italic;
902 902 line-height: 1;
903 903 padding: 1em 0;
904 904 text-align: center;
905 905 }
906 906 .yui-skin-sam .yui-dt th { background: #d8d8da url(../images/sprite.png) repeat-x 0 0 }
907 907 .yui-skin-sam .yui-dt th,
908 908 .yui-skin-sam .yui-dt th a {
909 909 font-weight: normal;
910 910 text-decoration: none;
911 911 color: #000;
912 912 vertical-align: bottom;
913 913 }
914 914 .yui-skin-sam .yui-dt th {
915 915 margin: 0;
916 916 padding: 0;
917 917 border: 0;
918 918 border-right: 1px solid #cbcbcb;
919 919 }
920 920 .yui-skin-sam .yui-dt tr.yui-dt-first td { border-top: 1px solid #7f7f7f }
921 921 .yui-skin-sam .yui-dt th .yui-dt-liner { white-space: nowrap }
922 922 .yui-skin-sam .yui-dt-liner {
923 923 margin: 0;
924 924 padding: 0;
925 925 }
926 926 .yui-skin-sam .yui-dt-coltarget {
927 927 width: 5px;
928 928 background-color: red;
929 929 }
930 930 .yui-skin-sam .yui-dt td {
931 931 margin: 0;
932 932 padding: 0;
933 933 border: 0;
934 934 border-right: 1px solid #cbcbcb;
935 935 text-align: left;
936 936 }
937 937 .yui-skin-sam .yui-dt-list td { border-right: 0 }
938 938 .yui-skin-sam .yui-dt-resizer { width: 6px }
939 939 .yui-skin-sam .yui-dt-mask {
940 940 background-color: #000;
941 941 opacity: .25;
942 942 filter: alpha(opacity=25);
943 943 }
944 944 .yui-skin-sam .yui-dt-message { background-color: #FFF }
945 945 .yui-skin-sam .yui-dt-scrollable table { border: 0 }
946 946 .yui-skin-sam .yui-dt-scrollable .yui-dt-hd {
947 947 border-left: 1px solid #7f7f7f;
948 948 border-top: 1px solid #7f7f7f;
949 949 border-right: 1px solid #7f7f7f;
950 950 }
951 951 .yui-skin-sam .yui-dt-scrollable .yui-dt-bd {
952 952 border-left: 1px solid #7f7f7f;
953 953 border-bottom: 1px solid #7f7f7f;
954 954 border-right: 1px solid #7f7f7f;
955 955 background-color: #FFF;
956 956 }
957 957 .yui-skin-sam .yui-dt-scrollable .yui-dt-data tr.yui-dt-last td { border-bottom: 1px solid #7f7f7f }
958 958 .yui-skin-sam th.yui-dt-asc,
959 959 .yui-skin-sam th.yui-dt-desc { background: url(../images/sprite.png) repeat-x 0 -100px }
960 960 .yui-skin-sam th.yui-dt-sortable .yui-dt-label { margin-right: 10px }
961 961 .yui-skin-sam th.yui-dt-asc .yui-dt-liner { background: url(../images/dt-arrow-up.png) no-repeat right }
962 962 .yui-skin-sam th.yui-dt-desc .yui-dt-liner { background: url(../images/dt-arrow-dn.png) no-repeat right }
963 963 tbody .yui-dt-editable { cursor: pointer }
964 964 .yui-dt-editor {
965 965 text-align: left;
966 966 background-color: #f2f2f2;
967 967 border: 1px solid #808080;
968 968 padding: 6px;
969 969 }
970 970 .yui-dt-editor label {
971 971 padding-left: 4px;
972 972 padding-right: 6px;
973 973 }
974 974 .yui-dt-editor .yui-dt-button {
975 975 padding-top: 6px;
976 976 text-align: right;
977 977 }
978 978 .yui-dt-editor .yui-dt-button button {
979 979 background: url(../images/sprite.png) repeat-x 0 0;
980 980 border: 1px solid #999;
981 981 width: 4em;
982 982 height: 1.8em;
983 983 margin-left: 6px;
984 984 }
985 985 .yui-dt-editor .yui-dt-button button.yui-dt-default {
986 986 background: url(../images/sprite.png) repeat-x 0 -1400px;
987 987 background-color: #5584e0;
988 988 border: 1px solid #304369;
989 989 color: #FFF;
990 990 }
991 991 .yui-dt-editor .yui-dt-button button:hover {
992 992 background: url(../images/sprite.png) repeat-x 0 -1300px;
993 993 color: #000;
994 994 }
995 995 .yui-dt-editor .yui-dt-button button:active {
996 996 background: url(../images/sprite.png) repeat-x 0 -1700px;
997 997 color: #000;
998 998 }
999 999 .yui-skin-sam tr.yui-dt-even { background-color: #FFF }
1000 1000 .yui-skin-sam tr.yui-dt-odd { background-color: #edf5ff }
1001 1001 .yui-skin-sam tr.yui-dt-even td.yui-dt-asc,
1002 1002 .yui-skin-sam tr.yui-dt-even td.yui-dt-desc { background-color: #edf5ff }
1003 1003 .yui-skin-sam tr.yui-dt-odd td.yui-dt-asc,
1004 1004 .yui-skin-sam tr.yui-dt-odd td.yui-dt-desc { background-color: #dbeaff }
1005 1005 .yui-skin-sam .yui-dt-list tr.yui-dt-even { background-color: #FFF }
1006 1006 .yui-skin-sam .yui-dt-list tr.yui-dt-odd { background-color: #FFF }
1007 1007 .yui-skin-sam .yui-dt-list tr.yui-dt-even td.yui-dt-asc,
1008 1008 .yui-skin-sam .yui-dt-list tr.yui-dt-even td.yui-dt-desc { background-color: #edf5ff }
1009 1009 .yui-skin-sam .yui-dt-list tr.yui-dt-odd td.yui-dt-asc,
1010 1010 .yui-skin-sam .yui-dt-list tr.yui-dt-odd td.yui-dt-desc { background-color: #edf5ff }
1011 1011 .yui-skin-sam th.yui-dt-highlighted,
1012 1012 .yui-skin-sam th.yui-dt-highlighted a { background-color: #b2d2ff }
1013 1013 .yui-skin-sam tr.yui-dt-highlighted,
1014 1014 .yui-skin-sam tr.yui-dt-highlighted td.yui-dt-asc,
1015 1015 .yui-skin-sam tr.yui-dt-highlighted td.yui-dt-desc,
1016 1016 .yui-skin-sam tr.yui-dt-even td.yui-dt-highlighted,
1017 1017 .yui-skin-sam tr.yui-dt-odd td.yui-dt-highlighted {
1018 1018 cursor: pointer;
1019 1019 background-color: #b2d2ff;
1020 1020 }
1021 1021 .yui-skin-sam .yui-dt-list th.yui-dt-highlighted,
1022 1022 .yui-skin-sam .yui-dt-list th.yui-dt-highlighted a { background-color: #b2d2ff }
1023 1023 .yui-skin-sam .yui-dt-list tr.yui-dt-highlighted,
1024 1024 .yui-skin-sam .yui-dt-list tr.yui-dt-highlighted td.yui-dt-asc,
1025 1025 .yui-skin-sam .yui-dt-list tr.yui-dt-highlighted td.yui-dt-desc,
1026 1026 .yui-skin-sam .yui-dt-list tr.yui-dt-even td.yui-dt-highlighted,
1027 1027 .yui-skin-sam .yui-dt-list tr.yui-dt-odd td.yui-dt-highlighted {
1028 1028 cursor: pointer;
1029 1029 background-color: #b2d2ff;
1030 1030 }
1031 1031 .yui-skin-sam th.yui-dt-selected,
1032 1032 .yui-skin-sam th.yui-dt-selected a { background-color: #446cd7 }
1033 1033 .yui-skin-sam tr.yui-dt-selected td,
1034 1034 .yui-skin-sam tr.yui-dt-selected td.yui-dt-asc,
1035 1035 .yui-skin-sam tr.yui-dt-selected td.yui-dt-desc {
1036 1036 background-color: #426fd9;
1037 1037 color: #FFF;
1038 1038 }
1039 1039 .yui-skin-sam tr.yui-dt-even td.yui-dt-selected,
1040 1040 .yui-skin-sam tr.yui-dt-odd td.yui-dt-selected {
1041 1041 background-color: #446cd7;
1042 1042 color: #FFF;
1043 1043 }
1044 1044 .yui-skin-sam .yui-dt-list th.yui-dt-selected,
1045 1045 .yui-skin-sam .yui-dt-list th.yui-dt-selected a { background-color: #446cd7 }
1046 1046 .yui-skin-sam .yui-dt-list tr.yui-dt-selected td,
1047 1047 .yui-skin-sam .yui-dt-list tr.yui-dt-selected td.yui-dt-asc,
1048 1048 .yui-skin-sam .yui-dt-list tr.yui-dt-selected td.yui-dt-desc {
1049 1049 background-color: #426fd9;
1050 1050 color: #FFF;
1051 1051 }
1052 1052 .yui-skin-sam .yui-dt-list tr.yui-dt-even td.yui-dt-selected,
1053 1053 .yui-skin-sam .yui-dt-list tr.yui-dt-odd td.yui-dt-selected {
1054 1054 background-color: #446cd7;
1055 1055 color: #FFF;
1056 1056 }
1057 1057 .yui-skin-sam .yui-dt-paginator {
1058 1058 display: block;
1059 1059 margin: 6px 0;
1060 1060 white-space: nowrap;
1061 1061 }
1062 1062 .yui-skin-sam .yui-dt-paginator .yui-dt-first,
1063 1063 .yui-skin-sam .yui-dt-paginator .yui-dt-last,
1064 1064 .yui-skin-sam .yui-dt-paginator .yui-dt-selected { padding: 2px 6px }
1065 1065 .yui-skin-sam .yui-dt-paginator a.yui-dt-first,
1066 1066 .yui-skin-sam .yui-dt-paginator a.yui-dt-last { text-decoration: none }
1067 1067 .yui-skin-sam .yui-dt-paginator .yui-dt-previous,
1068 1068 .yui-skin-sam .yui-dt-paginator .yui-dt-next { display: none }
1069 1069 .yui-skin-sam a.yui-dt-page {
1070 1070 border: 1px solid #cbcbcb;
1071 1071 padding: 2px 6px;
1072 1072 text-decoration: none;
1073 1073 background-color: #fff;
1074 1074 }
1075 1075 .yui-skin-sam .yui-dt-selected {
1076 1076 border: 1px solid #fff;
1077 1077 background-color: #fff;
1078 1078 }
1079 1079
1080 1080 #content #left {
1081 1081 left: 0;
1082 1082 width: 280px;
1083 1083 position: absolute;
1084 1084 }
1085 1085
1086 1086 #content #right {
1087 1087 margin: 0 60px 10px 290px;
1088 1088 }
1089 1089
1090 1090 #content div.box {
1091 1091 clear: both;
1092 1092 overflow: hidden;
1093 1093 background: #fff;
1094 1094 margin: 0 0 10px;
1095 1095 padding: 0 0 10px;
1096 1096 -webkit-border-radius: 4px 4px 4px 4px;
1097 1097 -khtml-border-radius: 4px 4px 4px 4px;
1098 1098 -moz-border-radius: 4px 4px 4px 4px;
1099 1099 border-radius: 4px 4px 4px 4px;
1100 1100 box-shadow: 0 2px 2px rgba(0, 0, 0, 0.6);
1101 1101 }
1102 1102
1103 1103 #content div.box-left {
1104 1104 width: 49%;
1105 1105 clear: none;
1106 1106 float: left;
1107 1107 margin: 0 0 10px;
1108 1108 }
1109 1109
1110 1110 #content div.box-right {
1111 1111 width: 49%;
1112 1112 clear: none;
1113 1113 float: right;
1114 1114 margin: 0 0 10px;
1115 1115 }
1116 1116
1117 1117 #content div.box div.title {
1118 1118 clear: both;
1119 1119 overflow: hidden;
1120 1120 background-color: #003B76;
1121 1121 background-repeat: repeat-x;
1122 1122 background-image: -khtml-gradient(linear, left top, left bottom, from(#003B76), to(#00376E) );
1123 1123 background-image: -moz-linear-gradient(top, #003b76, #00376e);
1124 1124 background-image: -ms-linear-gradient(top, #003b76, #00376e);
1125 1125 background-image: -webkit-gradient(linear, left top, left bottom, color-stop(0%, #003b76), color-stop(100%, #00376e) );
1126 1126 background-image: -webkit-linear-gradient(top, #003b76, #00376e);
1127 1127 background-image: -o-linear-gradient(top, #003b76, #00376e);
1128 1128 background-image: linear-gradient(top, #003b76, #00376e);
1129 1129 filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#003b76', endColorstr='#00376e', GradientType=0 );
1130 1130 margin: 0 0 20px;
1131 1131 padding: 0;
1132 1132 }
1133 1133
1134 1134 #content div.box div.title h5 {
1135 1135 float: left;
1136 1136 border: none;
1137 1137 color: #fff;
1138 1138 text-transform: uppercase;
1139 1139 margin: 0;
1140 1140 padding: 11px 0 11px 10px;
1141 1141 }
1142 1142
1143 1143 #content div.box div.title .link-white{
1144 1144 color: #FFFFFF;
1145 1145 }
1146 1146
1147 1147 #content div.box div.title .link-white.current{
1148 1148 color: #BFE3FF;
1149 1149 }
1150 1150
1151 1151 #content div.box div.title ul.links li {
1152 1152 list-style: none;
1153 1153 float: left;
1154 1154 margin: 0;
1155 1155 padding: 0;
1156 1156 }
1157 1157
1158 1158 #content div.box div.title ul.links li a {
1159 1159 border-left: 1px solid #316293;
1160 1160 color: #FFFFFF;
1161 1161 display: block;
1162 1162 float: left;
1163 1163 font-size: 13px;
1164 1164 font-weight: 700;
1165 1165 height: 1%;
1166 1166 margin: 0;
1167 1167 padding: 11px 22px 12px;
1168 1168 text-decoration: none;
1169 1169 }
1170 1170
1171 1171 #content div.box h1,#content div.box h2,#content div.box h3,#content div.box h4,#content div.box h5,#content div.box h6,
1172 1172 #content div.box div.h1,#content div.box div.h2,#content div.box div.h3,#content div.box div.h4,#content div.box div.h5,#content div.box div.h6
1173 1173
1174 1174 {
1175 1175 clear: both;
1176 1176 overflow: hidden;
1177 1177 border-bottom: 1px solid #DDD;
1178 1178 margin: 10px 20px;
1179 1179 padding: 0 0 15px;
1180 1180 }
1181 1181
1182 1182 #content div.box p {
1183 1183 color: #5f5f5f;
1184 1184 font-size: 12px;
1185 1185 line-height: 150%;
1186 1186 margin: 0 24px 10px;
1187 1187 padding: 0;
1188 1188 }
1189 1189
1190 1190 #content div.box blockquote {
1191 1191 border-left: 4px solid #DDD;
1192 1192 color: #5f5f5f;
1193 1193 font-size: 11px;
1194 1194 line-height: 150%;
1195 1195 margin: 0 34px;
1196 1196 padding: 0 0 0 14px;
1197 1197 }
1198 1198
1199 1199 #content div.box blockquote p {
1200 1200 margin: 10px 0;
1201 1201 padding: 0;
1202 1202 }
1203 1203
1204 1204 #content div.box dl {
1205 1205 margin: 10px 0px;
1206 1206 }
1207 1207
1208 1208 #content div.box dt {
1209 1209 font-size: 12px;
1210 1210 margin: 0;
1211 1211 }
1212 1212
1213 1213 #content div.box dd {
1214 1214 font-size: 12px;
1215 1215 margin: 0;
1216 1216 padding: 8px 0 8px 15px;
1217 1217 }
1218 1218
1219 1219 #content div.box li {
1220 1220 font-size: 12px;
1221 1221 padding: 4px 0;
1222 1222 }
1223 1223
1224 1224 #content div.box ul.disc,#content div.box ul.circle {
1225 1225 margin: 10px 24px 10px 38px;
1226 1226 }
1227 1227
1228 1228 #content div.box ul.square {
1229 1229 margin: 10px 24px 10px 40px;
1230 1230 }
1231 1231
1232 1232 #content div.box img.left {
1233 1233 border: none;
1234 1234 float: left;
1235 1235 margin: 10px 10px 10px 0;
1236 1236 }
1237 1237
1238 1238 #content div.box img.right {
1239 1239 border: none;
1240 1240 float: right;
1241 1241 margin: 10px 0 10px 10px;
1242 1242 }
1243 1243
1244 1244 #content div.box div.messages {
1245 1245 clear: both;
1246 1246 overflow: hidden;
1247 1247 margin: 0 20px;
1248 1248 padding: 0;
1249 1249 }
1250 1250
1251 1251 #content div.box div.message {
1252 1252 clear: both;
1253 1253 overflow: hidden;
1254 1254 margin: 0;
1255 1255 padding: 5px 0;
1256 1256 white-space: pre-wrap;
1257 1257 }
1258 1258 #content div.box div.expand {
1259 1259 width: 110%;
1260 1260 height:14px;
1261 1261 font-size:10px;
1262 1262 text-align:center;
1263 1263 cursor: pointer;
1264 1264 color:#666;
1265 1265
1266 1266 background:-webkit-gradient(linear,0% 50%,100% 50%,color-stop(0%,rgba(255,255,255,0)),color-stop(100%,rgba(64,96,128,0.1)));
1267 1267 background:-webkit-linear-gradient(top,rgba(255,255,255,0),rgba(64,96,128,0.1));
1268 1268 background:-moz-linear-gradient(top,rgba(255,255,255,0),rgba(64,96,128,0.1));
1269 1269 background:-o-linear-gradient(top,rgba(255,255,255,0),rgba(64,96,128,0.1));
1270 1270 background:-ms-linear-gradient(top,rgba(255,255,255,0),rgba(64,96,128,0.1));
1271 1271 background:linear-gradient(top,rgba(255,255,255,0),rgba(64,96,128,0.1));
1272 1272
1273 1273 display: none;
1274 1274 }
1275 1275 #content div.box div.expand .expandtext {
1276 1276 background-color: #ffffff;
1277 1277 padding: 2px;
1278 1278 border-radius: 2px;
1279 1279 }
1280 1280
1281 1281 #content div.box div.message a {
1282 1282 font-weight: 400 !important;
1283 1283 }
1284 1284
1285 1285 #content div.box div.message div.image {
1286 1286 float: left;
1287 1287 margin: 9px 0 0 5px;
1288 1288 padding: 6px;
1289 1289 }
1290 1290
1291 1291 #content div.box div.message div.image img {
1292 1292 vertical-align: middle;
1293 1293 margin: 0;
1294 1294 }
1295 1295
1296 1296 #content div.box div.message div.text {
1297 1297 float: left;
1298 1298 margin: 0;
1299 1299 padding: 9px 6px;
1300 1300 }
1301 1301
1302 1302 #content div.box div.message div.dismiss a {
1303 1303 height: 16px;
1304 1304 width: 16px;
1305 1305 display: block;
1306 1306 background: url("../images/icons/cross.png") no-repeat;
1307 1307 margin: 15px 14px 0 0;
1308 1308 padding: 0;
1309 1309 }
1310 1310
1311 1311 #content div.box div.message div.text h1,#content div.box div.message div.text h2,#content div.box div.message div.text h3,#content div.box div.message div.text h4,#content div.box div.message div.text h5,#content div.box div.message div.text h6
1312 1312 {
1313 1313 border: none;
1314 1314 margin: 0;
1315 1315 padding: 0;
1316 1316 }
1317 1317
1318 1318 #content div.box div.message div.text span {
1319 1319 height: 1%;
1320 1320 display: block;
1321 1321 margin: 0;
1322 1322 padding: 5px 0 0;
1323 1323 }
1324 1324
1325 1325 #content div.box div.message-error {
1326 1326 height: 1%;
1327 1327 clear: both;
1328 1328 overflow: hidden;
1329 1329 background: #FBE3E4;
1330 1330 border: 1px solid #FBC2C4;
1331 1331 color: #860006;
1332 1332 }
1333 1333
1334 1334 #content div.box div.message-error h6 {
1335 1335 color: #860006;
1336 1336 }
1337 1337
1338 1338 #content div.box div.message-warning {
1339 1339 height: 1%;
1340 1340 clear: both;
1341 1341 overflow: hidden;
1342 1342 background: #FFF6BF;
1343 1343 border: 1px solid #FFD324;
1344 1344 color: #5f5200;
1345 1345 }
1346 1346
1347 1347 #content div.box div.message-warning h6 {
1348 1348 color: #5f5200;
1349 1349 }
1350 1350
1351 1351 #content div.box div.message-notice {
1352 1352 height: 1%;
1353 1353 clear: both;
1354 1354 overflow: hidden;
1355 1355 background: #8FBDE0;
1356 1356 border: 1px solid #6BACDE;
1357 1357 color: #003863;
1358 1358 }
1359 1359
1360 1360 #content div.box div.message-notice h6 {
1361 1361 color: #003863;
1362 1362 }
1363 1363
1364 1364 #content div.box div.message-success {
1365 1365 height: 1%;
1366 1366 clear: both;
1367 1367 overflow: hidden;
1368 1368 background: #E6EFC2;
1369 1369 border: 1px solid #C6D880;
1370 1370 color: #4e6100;
1371 1371 }
1372 1372
1373 1373 #content div.box div.message-success h6 {
1374 1374 color: #4e6100;
1375 1375 }
1376 1376
1377 1377 #content div.box div.form div.fields div.field {
1378 1378 height: 1%;
1379 1379 border-bottom: 1px solid #DDD;
1380 1380 clear: both;
1381 1381 margin: 0;
1382 1382 padding: 10px 0;
1383 1383 }
1384 1384
1385 1385 #content div.box div.form div.fields div.field-first {
1386 1386 padding: 0 0 10px;
1387 1387 }
1388 1388
1389 1389 #content div.box div.form div.fields div.field-noborder {
1390 1390 border-bottom: 0 !important;
1391 1391 }
1392 1392
1393 1393 #content div.box div.form div.fields div.field span.error-message {
1394 1394 height: 1%;
1395 1395 display: inline-block;
1396 1396 color: red;
1397 1397 margin: 8px 0 0 4px;
1398 1398 padding: 0;
1399 1399 }
1400 1400
1401 1401 #content div.box div.form div.fields div.field span.success {
1402 1402 height: 1%;
1403 1403 display: block;
1404 1404 color: #316309;
1405 1405 margin: 8px 0 0;
1406 1406 padding: 0;
1407 1407 }
1408 1408
1409 1409 #content div.box div.form div.fields div.field div.label {
1410 1410 left: 70px;
1411 1411 width: 155px;
1412 1412 position: absolute;
1413 1413 margin: 0;
1414 1414 padding: 5px 0 0 0px;
1415 1415 }
1416 1416
1417 1417 #content div.box div.form div.fields div.field div.label-summary {
1418 1418 left: 30px;
1419 1419 width: 155px;
1420 1420 position: absolute;
1421 1421 margin: 0;
1422 1422 padding: 0px 0 0 0px;
1423 1423 }
1424 1424
1425 1425 #content div.box-left div.form div.fields div.field div.label,
1426 1426 #content div.box-right div.form div.fields div.field div.label,
1427 1427 #content div.box-left div.form div.fields div.field div.label,
1428 1428 #content div.box-left div.form div.fields div.field div.label-summary,
1429 1429 #content div.box-right div.form div.fields div.field div.label-summary,
1430 1430 #content div.box-left div.form div.fields div.field div.label-summary
1431 1431 {
1432 1432 clear: both;
1433 1433 overflow: hidden;
1434 1434 left: 0;
1435 1435 width: auto;
1436 1436 position: relative;
1437 1437 margin: 0;
1438 1438 padding: 0 0 8px;
1439 1439 }
1440 1440
1441 1441 #content div.box div.form div.fields div.field div.label-select {
1442 1442 padding: 5px 0 0 5px;
1443 1443 }
1444 1444
1445 1445 #content div.box-left div.form div.fields div.field div.label-select,
1446 1446 #content div.box-right div.form div.fields div.field div.label-select
1447 1447 {
1448 1448 padding: 0 0 8px;
1449 1449 }
1450 1450
1451 1451 #content div.box-left div.form div.fields div.field div.label-textarea,
1452 1452 #content div.box-right div.form div.fields div.field div.label-textarea
1453 1453 {
1454 1454 padding: 0 0 8px !important;
1455 1455 }
1456 1456
1457 1457 #content div.box div.form div.fields div.field div.label label,div.label label
1458 1458 {
1459 1459 color: #393939;
1460 1460 font-weight: 700;
1461 1461 }
1462 1462 #content div.box div.form div.fields div.field div.label label,div.label-summary label
1463 1463 {
1464 1464 color: #393939;
1465 1465 font-weight: 700;
1466 1466 }
1467 1467 #content div.box div.form div.fields div.field div.input {
1468 1468 margin: 0 0 0 200px;
1469 1469 }
1470 1470
1471 1471 #content div.box div.form div.fields div.field div.input.summary {
1472 1472 margin: 0 0 0 110px;
1473 1473 }
1474 1474 #content div.box div.form div.fields div.field div.input.summary-short {
1475 1475 margin: 0 0 0 110px;
1476 1476 }
1477 1477 #content div.box div.form div.fields div.field div.file {
1478 1478 margin: 0 0 0 200px;
1479 1479 }
1480 1480
1481 1481 #content div.box-left div.form div.fields div.field div.input,#content div.box-right div.form div.fields div.field div.input
1482 1482 {
1483 1483 margin: 0 0 0 0px;
1484 1484 }
1485 1485
1486 1486 #content div.box div.form div.fields div.field div.input input,
1487 1487 .reviewer_ac input {
1488 1488 background: #FFF;
1489 1489 border-top: 1px solid #b3b3b3;
1490 1490 border-left: 1px solid #b3b3b3;
1491 1491 border-right: 1px solid #eaeaea;
1492 1492 border-bottom: 1px solid #eaeaea;
1493 1493 color: #000;
1494 1494 font-size: 11px;
1495 1495 margin: 0;
1496 1496 padding: 7px 7px 6px;
1497 1497 }
1498 1498
1499 1499 #content div.box div.form div.fields div.field div.input input#clone_url,
1500 1500 #content div.box div.form div.fields div.field div.input input#clone_url_id
1501 1501 {
1502 1502 font-size: 16px;
1503 1503 padding: 2px;
1504 1504 }
1505 1505
1506 1506 #content div.box div.form div.fields div.field div.file input {
1507 1507 background: none repeat scroll 0 0 #FFFFFF;
1508 1508 border-color: #B3B3B3 #EAEAEA #EAEAEA #B3B3B3;
1509 1509 border-style: solid;
1510 1510 border-width: 1px;
1511 1511 color: #000000;
1512 1512 font-size: 11px;
1513 1513 margin: 0;
1514 1514 padding: 7px 7px 6px;
1515 1515 }
1516 1516
1517 1517 input.disabled {
1518 1518 background-color: #F5F5F5 !important;
1519 1519 }
1520 1520 #content div.box div.form div.fields div.field div.input input.small {
1521 1521 width: 30%;
1522 1522 }
1523 1523
1524 1524 #content div.box div.form div.fields div.field div.input input.medium {
1525 1525 width: 55%;
1526 1526 }
1527 1527
1528 1528 #content div.box div.form div.fields div.field div.input input.large {
1529 1529 width: 85%;
1530 1530 }
1531 1531
1532 1532 #content div.box div.form div.fields div.field div.input input.date {
1533 1533 width: 177px;
1534 1534 }
1535 1535
1536 1536 #content div.box div.form div.fields div.field div.input input.button {
1537 1537 background: #D4D0C8;
1538 1538 border-top: 1px solid #FFF;
1539 1539 border-left: 1px solid #FFF;
1540 1540 border-right: 1px solid #404040;
1541 1541 border-bottom: 1px solid #404040;
1542 1542 color: #000;
1543 1543 margin: 0;
1544 1544 padding: 4px 8px;
1545 1545 }
1546 1546
1547 1547 #content div.box div.form div.fields div.field div.textarea {
1548 1548 border-top: 1px solid #b3b3b3;
1549 1549 border-left: 1px solid #b3b3b3;
1550 1550 border-right: 1px solid #eaeaea;
1551 1551 border-bottom: 1px solid #eaeaea;
1552 1552 margin: 0 0 0 200px;
1553 1553 padding: 10px;
1554 1554 }
1555 1555
1556 1556 #content div.box div.form div.fields div.field div.textarea-editor {
1557 1557 border: 1px solid #ddd;
1558 1558 padding: 0;
1559 1559 }
1560 1560
1561 1561 #content div.box div.form div.fields div.field div.textarea textarea {
1562 1562 width: 100%;
1563 1563 height: 220px;
1564 1564 overflow: hidden;
1565 1565 background: #FFF;
1566 1566 color: #000;
1567 1567 font-size: 11px;
1568 1568 outline: none;
1569 1569 border-width: 0;
1570 1570 margin: 0;
1571 1571 padding: 0;
1572 1572 }
1573 1573
1574 1574 #content div.box-left div.form div.fields div.field div.textarea textarea,#content div.box-right div.form div.fields div.field div.textarea textarea
1575 1575 {
1576 1576 width: 100%;
1577 1577 height: 100px;
1578 1578 }
1579 1579
1580 1580 #content div.box div.form div.fields div.field div.textarea table {
1581 1581 width: 100%;
1582 1582 border: none;
1583 1583 margin: 0;
1584 1584 padding: 0;
1585 1585 }
1586 1586
1587 1587 #content div.box div.form div.fields div.field div.textarea table td {
1588 1588 background: #DDD;
1589 1589 border: none;
1590 1590 padding: 0;
1591 1591 }
1592 1592
1593 1593 #content div.box div.form div.fields div.field div.textarea table td table
1594 1594 {
1595 1595 width: auto;
1596 1596 border: none;
1597 1597 margin: 0;
1598 1598 padding: 0;
1599 1599 }
1600 1600
1601 1601 #content div.box div.form div.fields div.field div.textarea table td table td
1602 1602 {
1603 1603 font-size: 11px;
1604 1604 padding: 5px 5px 5px 0;
1605 1605 }
1606 1606
1607 1607 #content div.box div.form div.fields div.field input[type=text]:focus,
1608 1608 #content div.box div.form div.fields div.field input[type=password]:focus,
1609 1609 #content div.box div.form div.fields div.field input[type=file]:focus,
1610 1610 #content div.box div.form div.fields div.field textarea:focus,
1611 1611 #content div.box div.form div.fields div.field select:focus,
1612 1612 .reviewer_ac input:focus
1613 1613 {
1614 1614 background: #f6f6f6;
1615 1615 border-color: #666;
1616 1616 }
1617 1617
1618 1618 .reviewer_ac {
1619 1619 padding:10px
1620 1620 }
1621 1621
1622 1622 div.form div.fields div.field div.button {
1623 1623 margin: 0;
1624 1624 padding: 0 0 0 8px;
1625 1625 }
1626 1626 #content div.box table.noborder {
1627 1627 border: 1px solid transparent;
1628 1628 }
1629 1629
1630 1630 #content div.box table {
1631 1631 width: 100%;
1632 1632 border-collapse: separate;
1633 1633 margin: 0;
1634 1634 padding: 0;
1635 1635 border: 1px solid #eee;
1636 1636 -webkit-border-radius: 4px;
1637 1637 -moz-border-radius: 4px;
1638 1638 border-radius: 4px;
1639 1639 }
1640 1640
1641 1641 #content div.box table th {
1642 1642 background: #eee;
1643 1643 border-bottom: 1px solid #ddd;
1644 1644 padding: 5px 0px 5px 5px;
1645 1645 text-align: left;
1646 1646 }
1647 1647
1648 1648 #content div.box table th.left {
1649 1649 text-align: left;
1650 1650 }
1651 1651
1652 1652 #content div.box table th.right {
1653 1653 text-align: right;
1654 1654 }
1655 1655
1656 1656 #content div.box table th.center {
1657 1657 text-align: center;
1658 1658 }
1659 1659
1660 1660 #content div.box table th.selected {
1661 1661 vertical-align: middle;
1662 1662 padding: 0;
1663 1663 }
1664 1664
1665 1665 #content div.box table td {
1666 1666 background: #fff;
1667 1667 border-bottom: 1px solid #cdcdcd;
1668 1668 vertical-align: middle;
1669 1669 padding: 5px;
1670 1670 }
1671 1671
1672 1672 #content div.box table tr.selected td {
1673 1673 background: #FFC;
1674 1674 }
1675 1675
1676 1676 #content div.box table td.selected {
1677 1677 width: 3%;
1678 1678 text-align: center;
1679 1679 vertical-align: middle;
1680 1680 padding: 0;
1681 1681 }
1682 1682
1683 1683 #content div.box table td.action {
1684 1684 width: 45%;
1685 1685 text-align: left;
1686 1686 }
1687 1687
1688 1688 #content div.box table td.date {
1689 1689 width: 33%;
1690 1690 text-align: center;
1691 1691 }
1692 1692
1693 1693 #content div.box div.action {
1694 1694 float: right;
1695 1695 background: #FFF;
1696 1696 text-align: right;
1697 1697 margin: 10px 0 0;
1698 1698 padding: 0;
1699 1699 }
1700 1700
1701 1701 #content div.box div.action select {
1702 1702 font-size: 11px;
1703 1703 margin: 0;
1704 1704 }
1705 1705
1706 1706 #content div.box div.action .ui-selectmenu {
1707 1707 margin: 0;
1708 1708 padding: 0;
1709 1709 }
1710 1710
1711 1711 #content div.box div.pagination {
1712 1712 height: 1%;
1713 1713 clear: both;
1714 1714 overflow: hidden;
1715 1715 margin: 10px 0 0;
1716 1716 padding: 0;
1717 1717 }
1718 1718
1719 1719 #content div.box div.pagination ul.pager {
1720 1720 float: right;
1721 1721 text-align: right;
1722 1722 margin: 0;
1723 1723 padding: 0;
1724 1724 }
1725 1725
1726 1726 #content div.box div.pagination ul.pager li {
1727 1727 height: 1%;
1728 1728 float: left;
1729 1729 list-style: none;
1730 1730 background: #ebebeb url("../images/pager.png") repeat-x;
1731 1731 border-top: 1px solid #dedede;
1732 1732 border-left: 1px solid #cfcfcf;
1733 1733 border-right: 1px solid #c4c4c4;
1734 1734 border-bottom: 1px solid #c4c4c4;
1735 1735 color: #4A4A4A;
1736 1736 font-weight: 700;
1737 1737 margin: 0 0 0 4px;
1738 1738 padding: 0;
1739 1739 }
1740 1740
1741 1741 #content div.box div.pagination ul.pager li.separator {
1742 1742 padding: 6px;
1743 1743 }
1744 1744
1745 1745 #content div.box div.pagination ul.pager li.current {
1746 1746 background: #b4b4b4 url("../images/pager_selected.png") repeat-x;
1747 1747 border-top: 1px solid #ccc;
1748 1748 border-left: 1px solid #bebebe;
1749 1749 border-right: 1px solid #b1b1b1;
1750 1750 border-bottom: 1px solid #afafaf;
1751 1751 color: #515151;
1752 1752 padding: 6px;
1753 1753 }
1754 1754
1755 1755 #content div.box div.pagination ul.pager li a {
1756 1756 height: 1%;
1757 1757 display: block;
1758 1758 float: left;
1759 1759 color: #515151;
1760 1760 text-decoration: none;
1761 1761 margin: 0;
1762 1762 padding: 6px;
1763 1763 }
1764 1764
1765 1765 #content div.box div.pagination ul.pager li a:hover,#content div.box div.pagination ul.pager li a:active
1766 1766 {
1767 1767 background: #b4b4b4 url("../images/pager_selected.png") repeat-x;
1768 1768 border-top: 1px solid #ccc;
1769 1769 border-left: 1px solid #bebebe;
1770 1770 border-right: 1px solid #b1b1b1;
1771 1771 border-bottom: 1px solid #afafaf;
1772 1772 margin: -1px;
1773 1773 }
1774 1774
1775 1775 #content div.box div.pagination-wh {
1776 1776 height: 1%;
1777 1777 clear: both;
1778 1778 overflow: hidden;
1779 1779 text-align: right;
1780 1780 margin: 10px 0 0;
1781 1781 padding: 0;
1782 1782 }
1783 1783
1784 1784 #content div.box div.pagination-right {
1785 1785 float: right;
1786 1786 }
1787 1787
1788 1788 #content div.box div.pagination-wh a,
1789 1789 #content div.box div.pagination-wh span.pager_dotdot,
1790 1790 #content div.box div.pagination-wh span.yui-pg-previous,
1791 1791 #content div.box div.pagination-wh span.yui-pg-last,
1792 1792 #content div.box div.pagination-wh span.yui-pg-next,
1793 1793 #content div.box div.pagination-wh span.yui-pg-first
1794 1794 {
1795 1795 height: 1%;
1796 1796 float: left;
1797 1797 background: #ebebeb url("../images/pager.png") repeat-x;
1798 1798 border-top: 1px solid #dedede;
1799 1799 border-left: 1px solid #cfcfcf;
1800 1800 border-right: 1px solid #c4c4c4;
1801 1801 border-bottom: 1px solid #c4c4c4;
1802 1802 color: #4A4A4A;
1803 1803 font-weight: 700;
1804 1804 margin: 0 0 0 4px;
1805 1805 padding: 6px;
1806 1806 }
1807 1807
1808 1808 #content div.box div.pagination-wh span.pager_curpage {
1809 1809 height: 1%;
1810 1810 float: left;
1811 1811 background: #b4b4b4 url("../images/pager_selected.png") repeat-x;
1812 1812 border-top: 1px solid #ccc;
1813 1813 border-left: 1px solid #bebebe;
1814 1814 border-right: 1px solid #b1b1b1;
1815 1815 border-bottom: 1px solid #afafaf;
1816 1816 color: #515151;
1817 1817 font-weight: 700;
1818 1818 margin: 0 0 0 4px;
1819 1819 padding: 6px;
1820 1820 }
1821 1821
1822 1822 #content div.box div.pagination-wh a:hover,#content div.box div.pagination-wh a:active
1823 1823 {
1824 1824 background: #b4b4b4 url("../images/pager_selected.png") repeat-x;
1825 1825 border-top: 1px solid #ccc;
1826 1826 border-left: 1px solid #bebebe;
1827 1827 border-right: 1px solid #b1b1b1;
1828 1828 border-bottom: 1px solid #afafaf;
1829 1829 text-decoration: none;
1830 1830 }
1831 1831
1832 1832 #content div.box div.traffic div.legend {
1833 1833 clear: both;
1834 1834 overflow: hidden;
1835 1835 border-bottom: 1px solid #ddd;
1836 1836 margin: 0 0 10px;
1837 1837 padding: 0 0 10px;
1838 1838 }
1839 1839
1840 1840 #content div.box div.traffic div.legend h6 {
1841 1841 float: left;
1842 1842 border: none;
1843 1843 margin: 0;
1844 1844 padding: 0;
1845 1845 }
1846 1846
1847 1847 #content div.box div.traffic div.legend li {
1848 1848 list-style: none;
1849 1849 float: left;
1850 1850 font-size: 11px;
1851 1851 margin: 0;
1852 1852 padding: 0 8px 0 4px;
1853 1853 }
1854 1854
1855 1855 #content div.box div.traffic div.legend li.visits {
1856 1856 border-left: 12px solid #edc240;
1857 1857 }
1858 1858
1859 1859 #content div.box div.traffic div.legend li.pageviews {
1860 1860 border-left: 12px solid #afd8f8;
1861 1861 }
1862 1862
1863 1863 #content div.box div.traffic table {
1864 1864 width: auto;
1865 1865 }
1866 1866
1867 1867 #content div.box div.traffic table td {
1868 1868 background: transparent;
1869 1869 border: none;
1870 1870 padding: 2px 3px 3px;
1871 1871 }
1872 1872
1873 1873 #content div.box div.traffic table td.legendLabel {
1874 1874 padding: 0 3px 2px;
1875 1875 }
1876 1876
1877 1877 #summary {
1878 1878
1879 1879 }
1880 1880
1881 1881 #summary .metatag {
1882 1882 display: inline-block;
1883 1883 padding: 3px 5px;
1884 1884 margin-bottom: 3px;
1885 1885 margin-right: 1px;
1886 1886 border-radius: 5px;
1887 1887 }
1888 1888
1889 1889 #content div.box #summary p {
1890 1890 margin-bottom: -5px;
1891 1891 width: 600px;
1892 1892 white-space: pre-wrap;
1893 1893 }
1894 1894
1895 1895 #content div.box #summary p:last-child {
1896 1896 margin-bottom: 9px;
1897 1897 }
1898 1898
1899 1899 #content div.box #summary p:first-of-type {
1900 1900 margin-top: 9px;
1901 1901 }
1902 1902
1903 1903 .metatag {
1904 1904 display: inline-block;
1905 1905 margin-right: 1px;
1906 1906 -webkit-border-radius: 4px 4px 4px 4px;
1907 1907 -khtml-border-radius: 4px 4px 4px 4px;
1908 1908 -moz-border-radius: 4px 4px 4px 4px;
1909 1909 border-radius: 4px 4px 4px 4px;
1910 1910
1911 1911 border: solid 1px #9CF;
1912 1912 padding: 2px 3px 2px 3px !important;
1913 1913 background-color: #DEF;
1914 1914 }
1915 1915
1916 1916 .metatag[tag="dead"] {
1917 1917 background-color: #E44;
1918 1918 }
1919 1919
1920 1920 .metatag[tag="stale"] {
1921 1921 background-color: #EA4;
1922 1922 }
1923 1923
1924 1924 .metatag[tag="featured"] {
1925 1925 background-color: #AEA;
1926 1926 }
1927 1927
1928 1928 .metatag[tag="requires"] {
1929 1929 background-color: #9CF;
1930 1930 }
1931 1931
1932 1932 .metatag[tag="recommends"] {
1933 1933 background-color: #BDF;
1934 1934 }
1935 1935
1936 1936 .metatag[tag="lang"] {
1937 1937 background-color: #FAF474;
1938 1938 }
1939 1939
1940 1940 .metatag[tag="license"] {
1941 1941 border: solid 1px #9CF;
1942 1942 background-color: #DEF;
1943 1943 target-new: tab !important;
1944 1944 }
1945 1945 .metatag[tag="see"] {
1946 1946 border: solid 1px #CBD;
1947 1947 background-color: #EDF;
1948 1948 }
1949 1949
1950 1950 a.metatag[tag="license"]:hover {
1951 1951 background-color: #003367;
1952 1952 color: #FFF;
1953 1953 text-decoration: none;
1954 1954 }
1955 1955
1956 1956 #summary .desc {
1957 1957 white-space: pre;
1958 1958 width: 100%;
1959 1959 }
1960 1960
1961 1961 #summary .repo_name {
1962 1962 font-size: 1.6em;
1963 1963 font-weight: bold;
1964 1964 vertical-align: baseline;
1965 1965 clear: right
1966 1966 }
1967 1967
1968 1968 #footer {
1969 1969 clear: both;
1970 1970 overflow: hidden;
1971 1971 text-align: right;
1972 1972 margin: 0;
1973 1973 padding: 0 10px 4px;
1974 1974 margin: -10px 0 0;
1975 1975 }
1976 1976
1977 1977 #footer div#footer-inner {
1978 1978 background-color: #003B76;
1979 1979 background-repeat : repeat-x;
1980 1980 background-image : -khtml-gradient( linear, left top, left bottom, from(#003B76), to(#00376E));
1981 1981 background-image : -moz-linear-gradient(top, #003b76, #00376e);
1982 1982 background-image : -ms-linear-gradient( top, #003b76, #00376e);
1983 1983 background-image : -webkit-gradient( linear, left top, left bottom, color-stop( 0%, #003b76), color-stop( 100%, #00376e));
1984 1984 background-image : -webkit-linear-gradient( top, #003b76, #00376e));
1985 1985 background-image : -o-linear-gradient( top, #003b76, #00376e));
1986 1986 background-image : linear-gradient( top, #003b76, #00376e);
1987 1987 filter :progid : DXImageTransform.Microsoft.gradient ( startColorstr = '#003b76', endColorstr = '#00376e', GradientType = 0);
1988 1988 box-shadow: 0 2px 2px rgba(0, 0, 0, 0.6);
1989 1989 -webkit-border-radius: 4px 4px 4px 4px;
1990 1990 -khtml-border-radius: 4px 4px 4px 4px;
1991 1991 -moz-border-radius: 4px 4px 4px 4px;
1992 1992 border-radius: 4px 4px 4px 4px;
1993 1993 }
1994 1994
1995 1995 #footer div#footer-inner p {
1996 1996 padding: 15px 25px 15px 0;
1997 1997 color: #FFF;
1998 1998 font-weight: 700;
1999 1999 }
2000 2000
2001 2001 #footer div#footer-inner .footer-link {
2002 2002 float: left;
2003 2003 padding-left: 10px;
2004 2004 }
2005 2005
2006 2006 #footer div#footer-inner .footer-link a,#footer div#footer-inner .footer-link-right a
2007 2007 {
2008 2008 color: #FFF;
2009 2009 }
2010 2010
2011 2011 #login div.title {
2012 2012 clear: both;
2013 2013 overflow: hidden;
2014 2014 position: relative;
2015 2015 background-color: #003B76;
2016 2016 background-repeat : repeat-x;
2017 2017 background-image : -khtml-gradient( linear, left top, left bottom, from(#003B76), to(#00376E));
2018 2018 background-image : -moz-linear-gradient( top, #003b76, #00376e);
2019 2019 background-image : -ms-linear-gradient( top, #003b76, #00376e);
2020 2020 background-image : -webkit-gradient( linear, left top, left bottom, color-stop( 0%, #003b76), color-stop( 100%, #00376e));
2021 2021 background-image : -webkit-linear-gradient( top, #003b76, #00376e));
2022 2022 background-image : -o-linear-gradient( top, #003b76, #00376e));
2023 2023 background-image : linear-gradient( top, #003b76, #00376e);
2024 2024 filter : progid : DXImageTransform.Microsoft.gradient ( startColorstr = '#003b76', endColorstr = '#00376e', GradientType = 0);
2025 2025 margin: 0 auto;
2026 2026 padding: 0;
2027 2027 }
2028 2028
2029 2029 #login div.inner {
2030 2030 background: #FFF url("../images/login.png") no-repeat top left;
2031 2031 border-top: none;
2032 2032 border-bottom: none;
2033 2033 margin: 0 auto;
2034 2034 padding: 20px;
2035 2035 }
2036 2036
2037 2037 #login div.form div.fields div.field div.label {
2038 2038 width: 173px;
2039 2039 float: left;
2040 2040 text-align: right;
2041 2041 margin: 2px 10px 0 0;
2042 2042 padding: 5px 0 0 5px;
2043 2043 }
2044 2044
2045 2045 #login div.form div.fields div.field div.input input {
2046 2046 background: #FFF;
2047 2047 border-top: 1px solid #b3b3b3;
2048 2048 border-left: 1px solid #b3b3b3;
2049 2049 border-right: 1px solid #eaeaea;
2050 2050 border-bottom: 1px solid #eaeaea;
2051 2051 color: #000;
2052 2052 font-size: 11px;
2053 2053 margin: 0;
2054 2054 padding: 7px 7px 6px;
2055 2055 }
2056 2056
2057 2057 #login div.form div.fields div.buttons {
2058 2058 clear: both;
2059 2059 overflow: hidden;
2060 2060 border-top: 1px solid #DDD;
2061 2061 text-align: right;
2062 2062 margin: 0;
2063 2063 padding: 10px 0 0;
2064 2064 }
2065 2065
2066 2066 #login div.form div.links {
2067 2067 clear: both;
2068 2068 overflow: hidden;
2069 2069 margin: 10px 0 0;
2070 2070 padding: 0 0 2px;
2071 2071 }
2072 2072
2073 2073 .user-menu{
2074 2074 margin: 0px !important;
2075 2075 float: left;
2076 2076 }
2077 2077
2078 2078 .user-menu .container{
2079 2079 padding:0px 4px 0px 4px;
2080 2080 margin: 0px 0px 0px 0px;
2081 2081 }
2082 2082
2083 2083 .user-menu .gravatar{
2084 2084 margin: 0px 0px 0px 0px;
2085 2085 cursor: pointer;
2086 2086 }
2087 2087 .user-menu .gravatar.enabled{
2088 2088 background-color: #FDF784 !important;
2089 2089 }
2090 2090 .user-menu .gravatar:hover{
2091 2091 background-color: #FDF784 !important;
2092 2092 }
2093 2093 #quick_login{
2094 2094 min-height: 80px;
2095 2095 padding: 4px;
2096 2096 position: absolute;
2097 2097 right: 0;
2098 2098 width: 278px;
2099 2099 background-color: #003B76;
2100 2100 background-repeat: repeat-x;
2101 2101 background-image: -khtml-gradient(linear, left top, left bottom, from(#003B76), to(#00376E) );
2102 2102 background-image: -moz-linear-gradient(top, #003b76, #00376e);
2103 2103 background-image: -ms-linear-gradient(top, #003b76, #00376e);
2104 2104 background-image: -webkit-gradient(linear, left top, left bottom, color-stop(0%, #003b76), color-stop(100%, #00376e) );
2105 2105 background-image: -webkit-linear-gradient(top, #003b76, #00376e);
2106 2106 background-image: -o-linear-gradient(top, #003b76, #00376e);
2107 2107 background-image: linear-gradient(top, #003b76, #00376e);
2108 2108 filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#003b76', endColorstr='#00376e', GradientType=0 );
2109 2109
2110 2110 z-index: 999;
2111 2111 -webkit-border-radius: 0px 0px 4px 4px;
2112 2112 -khtml-border-radius: 0px 0px 4px 4px;
2113 2113 -moz-border-radius: 0px 0px 4px 4px;
2114 2114 border-radius: 0px 0px 4px 4px;
2115 2115 box-shadow: 0 2px 2px rgba(0, 0, 0, 0.6);
2116 2116 }
2117 2117 #quick_login h4{
2118 2118 color: #fff;
2119 2119 padding: 5px 0px 5px 14px;
2120 2120 }
2121 2121
2122 2122 #quick_login .password_forgoten {
2123 2123 padding-right: 10px;
2124 2124 padding-top: 0px;
2125 2125 text-align: left;
2126 2126 }
2127 2127
2128 2128 #quick_login .password_forgoten a {
2129 2129 font-size: 10px;
2130 2130 color: #fff;
2131 2131 }
2132 2132
2133 2133 #quick_login .register {
2134 2134 padding-right: 10px;
2135 2135 padding-top: 5px;
2136 2136 text-align: left;
2137 2137 }
2138 2138
2139 2139 #quick_login .register a {
2140 2140 font-size: 10px;
2141 2141 color: #fff;
2142 2142 }
2143 2143
2144 2144 #quick_login .submit {
2145 2145 margin: -20px 0 0 0px;
2146 2146 position: absolute;
2147 2147 right: 15px;
2148 2148 }
2149 2149
2150 2150 #quick_login .links_left{
2151 2151 float: left;
2152 2152 }
2153 2153 #quick_login .links_right{
2154 2154 float: right;
2155 2155 }
2156 2156 #quick_login .full_name{
2157 2157 color: #FFFFFF;
2158 2158 font-weight: bold;
2159 2159 padding: 3px;
2160 2160 }
2161 2161 #quick_login .big_gravatar{
2162 2162 padding:4px 0px 0px 6px;
2163 2163 }
2164 2164 #quick_login .inbox{
2165 2165 padding:4px 0px 0px 6px;
2166 2166 color: #FFFFFF;
2167 2167 font-weight: bold;
2168 2168 }
2169 2169 #quick_login .inbox a{
2170 2170 color: #FFFFFF;
2171 2171 }
2172 2172 #quick_login .email,#quick_login .email a{
2173 2173 color: #FFFFFF;
2174 2174 padding: 3px;
2175 2175
2176 2176 }
2177 2177 #quick_login .links .logout{
2178 2178
2179 2179 }
2180 2180
2181 2181 #quick_login div.form div.fields {
2182 2182 padding-top: 2px;
2183 2183 padding-left: 10px;
2184 2184 }
2185 2185
2186 2186 #quick_login div.form div.fields div.field {
2187 2187 padding: 5px;
2188 2188 }
2189 2189
2190 2190 #quick_login div.form div.fields div.field div.label label {
2191 2191 color: #fff;
2192 2192 padding-bottom: 3px;
2193 2193 }
2194 2194
2195 2195 #quick_login div.form div.fields div.field div.input input {
2196 2196 width: 236px;
2197 2197 background: #FFF;
2198 2198 border-top: 1px solid #b3b3b3;
2199 2199 border-left: 1px solid #b3b3b3;
2200 2200 border-right: 1px solid #eaeaea;
2201 2201 border-bottom: 1px solid #eaeaea;
2202 2202 color: #000;
2203 2203 font-size: 11px;
2204 2204 margin: 0;
2205 2205 padding: 5px 7px 4px;
2206 2206 }
2207 2207
2208 2208 #quick_login div.form div.fields div.buttons {
2209 2209 clear: both;
2210 2210 overflow: hidden;
2211 2211 text-align: right;
2212 2212 margin: 0;
2213 2213 padding: 5px 14px 0px 5px;
2214 2214 }
2215 2215
2216 2216 #quick_login div.form div.links {
2217 2217 clear: both;
2218 2218 overflow: hidden;
2219 2219 margin: 10px 0 0;
2220 2220 padding: 0 0 2px;
2221 2221 }
2222 2222
2223 2223 #quick_login ol.links{
2224 2224 display: block;
2225 2225 font-weight: bold;
2226 2226 list-style: none outside none;
2227 2227 text-align: right;
2228 2228 }
2229 2229 #quick_login ol.links li{
2230 2230 line-height: 27px;
2231 2231 margin: 0;
2232 2232 padding: 0;
2233 2233 color: #fff;
2234 2234 display: block;
2235 2235 float:none !important;
2236 2236 }
2237 2237
2238 2238 #quick_login ol.links li a{
2239 2239 color: #fff;
2240 2240 display: block;
2241 2241 padding: 2px;
2242 2242 }
2243 2243 #quick_login ol.links li a:HOVER{
2244 2244 background-color: inherit !important;
2245 2245 }
2246 2246
2247 2247 #register div.title {
2248 2248 clear: both;
2249 2249 overflow: hidden;
2250 2250 position: relative;
2251 2251 background-color: #003B76;
2252 2252 background-repeat: repeat-x;
2253 2253 background-image: -khtml-gradient(linear, left top, left bottom, from(#003B76), to(#00376E) );
2254 2254 background-image: -moz-linear-gradient(top, #003b76, #00376e);
2255 2255 background-image: -ms-linear-gradient(top, #003b76, #00376e);
2256 2256 background-image: -webkit-gradient(linear, left top, left bottom, color-stop(0%, #003b76), color-stop(100%, #00376e) );
2257 2257 background-image: -webkit-linear-gradient(top, #003b76, #00376e);
2258 2258 background-image: -o-linear-gradient(top, #003b76, #00376e);
2259 2259 background-image: linear-gradient(top, #003b76, #00376e);
2260 2260 filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#003b76',
2261 2261 endColorstr='#00376e', GradientType=0 );
2262 2262 margin: 0 auto;
2263 2263 padding: 0;
2264 2264 }
2265 2265
2266 2266 #register div.inner {
2267 2267 background: #FFF;
2268 2268 border-top: none;
2269 2269 border-bottom: none;
2270 2270 margin: 0 auto;
2271 2271 padding: 20px;
2272 2272 }
2273 2273
2274 2274 #register div.form div.fields div.field div.label {
2275 2275 width: 135px;
2276 2276 float: left;
2277 2277 text-align: right;
2278 2278 margin: 2px 10px 0 0;
2279 2279 padding: 5px 0 0 5px;
2280 2280 }
2281 2281
2282 2282 #register div.form div.fields div.field div.input input {
2283 2283 width: 300px;
2284 2284 background: #FFF;
2285 2285 border-top: 1px solid #b3b3b3;
2286 2286 border-left: 1px solid #b3b3b3;
2287 2287 border-right: 1px solid #eaeaea;
2288 2288 border-bottom: 1px solid #eaeaea;
2289 2289 color: #000;
2290 2290 font-size: 11px;
2291 2291 margin: 0;
2292 2292 padding: 7px 7px 6px;
2293 2293 }
2294 2294
2295 2295 #register div.form div.fields div.buttons {
2296 2296 clear: both;
2297 2297 overflow: hidden;
2298 2298 border-top: 1px solid #DDD;
2299 2299 text-align: left;
2300 2300 margin: 0;
2301 2301 padding: 10px 0 0 150px;
2302 2302 }
2303 2303
2304 2304 #register div.form div.activation_msg {
2305 2305 padding-top: 4px;
2306 2306 padding-bottom: 4px;
2307 2307 }
2308 2308
2309 2309 #journal .journal_day {
2310 2310 font-size: 20px;
2311 2311 padding: 10px 0px;
2312 2312 border-bottom: 2px solid #DDD;
2313 2313 margin-left: 10px;
2314 2314 margin-right: 10px;
2315 2315 }
2316 2316
2317 2317 #journal .journal_container {
2318 2318 padding: 5px;
2319 2319 clear: both;
2320 2320 margin: 0px 5px 0px 10px;
2321 2321 }
2322 2322
2323 2323 #journal .journal_action_container {
2324 2324 padding-left: 38px;
2325 2325 }
2326 2326
2327 2327 #journal .journal_user {
2328 2328 color: #747474;
2329 2329 font-size: 14px;
2330 2330 font-weight: bold;
2331 2331 height: 30px;
2332 2332 }
2333 2333
2334 2334 #journal .journal_user.deleted {
2335 2335 color: #747474;
2336 2336 font-size: 14px;
2337 2337 font-weight: normal;
2338 2338 height: 30px;
2339 2339 font-style: italic;
2340 2340 }
2341 2341
2342 2342
2343 2343 #journal .journal_icon {
2344 2344 clear: both;
2345 2345 float: left;
2346 2346 padding-right: 4px;
2347 2347 padding-top: 3px;
2348 2348 }
2349 2349
2350 2350 #journal .journal_action {
2351 2351 padding-top: 4px;
2352 2352 min-height: 2px;
2353 2353 float: left
2354 2354 }
2355 2355
2356 2356 #journal .journal_action_params {
2357 2357 clear: left;
2358 2358 padding-left: 22px;
2359 2359 }
2360 2360
2361 2361 #journal .journal_repo {
2362 2362 float: left;
2363 2363 margin-left: 6px;
2364 2364 padding-top: 3px;
2365 2365 }
2366 2366
2367 2367 #journal .date {
2368 2368 clear: both;
2369 2369 color: #777777;
2370 2370 font-size: 11px;
2371 2371 padding-left: 22px;
2372 2372 }
2373 2373
2374 2374 #journal .journal_repo .journal_repo_name {
2375 2375 font-weight: bold;
2376 2376 font-size: 1.1em;
2377 2377 }
2378 2378
2379 2379 #journal .compare_view {
2380 2380 padding: 5px 0px 5px 0px;
2381 2381 width: 95px;
2382 2382 }
2383 2383
2384 2384 .journal_highlight {
2385 2385 font-weight: bold;
2386 2386 padding: 0 2px;
2387 2387 vertical-align: bottom;
2388 2388 }
2389 2389
2390 2390 .trending_language_tbl,.trending_language_tbl td {
2391 2391 border: 0 !important;
2392 2392 margin: 0 !important;
2393 2393 padding: 0 !important;
2394 2394 }
2395 2395
2396 2396 .trending_language_tbl,.trending_language_tbl tr {
2397 2397 border-spacing: 1px;
2398 2398 }
2399 2399
2400 2400 .trending_language {
2401 2401 background-color: #003367;
2402 2402 color: #FFF;
2403 2403 display: block;
2404 2404 min-width: 20px;
2405 2405 text-decoration: none;
2406 2406 height: 12px;
2407 2407 margin-bottom: 0px;
2408 2408 margin-left: 5px;
2409 2409 white-space: pre;
2410 2410 padding: 3px;
2411 2411 }
2412 2412
2413 2413 h3.files_location {
2414 2414 font-size: 1.8em;
2415 2415 font-weight: 700;
2416 2416 border-bottom: none !important;
2417 2417 margin: 10px 0 !important;
2418 2418 }
2419 2419
2420 2420 #files_data dl dt {
2421 2421 float: left;
2422 2422 width: 60px;
2423 2423 margin: 0 !important;
2424 2424 padding: 5px;
2425 2425 }
2426 2426
2427 2427 #files_data dl dd {
2428 2428 margin: 0 !important;
2429 2429 padding: 5px !important;
2430 2430 }
2431 2431
2432 2432 .file_history{
2433 2433 padding-top:10px;
2434 2434 font-size:16px;
2435 2435 }
2436 2436 .file_author{
2437 2437 float: left;
2438 2438 }
2439 2439
2440 2440 .file_author .item{
2441 2441 float:left;
2442 2442 padding:5px;
2443 2443 color: #888;
2444 2444 }
2445 2445
2446 2446 .tablerow0 {
2447 2447 background-color: #F8F8F8;
2448 2448 }
2449 2449
2450 2450 .tablerow1 {
2451 2451 background-color: #FFFFFF;
2452 2452 }
2453 2453
2454 2454 .changeset_id {
2455 2455 font-family: monospace;
2456 2456 color: #666666;
2457 2457 }
2458 2458
2459 2459 .changeset_hash {
2460 2460 color: #000000;
2461 2461 }
2462 2462
2463 2463 #changeset_content {
2464 2464 border-left: 1px solid #CCC;
2465 2465 border-right: 1px solid #CCC;
2466 2466 border-bottom: 1px solid #CCC;
2467 2467 padding: 5px;
2468 2468 }
2469 2469
2470 2470 #changeset_compare_view_content {
2471 2471 border: 1px solid #CCC;
2472 2472 padding: 5px;
2473 2473 }
2474 2474
2475 2475 #changeset_content .container {
2476 2476 min-height: 100px;
2477 2477 font-size: 1.2em;
2478 2478 overflow: hidden;
2479 2479 }
2480 2480
2481 2481 #changeset_compare_view_content .compare_view_commits {
2482 2482 width: auto !important;
2483 2483 }
2484 2484
2485 2485 #changeset_compare_view_content .compare_view_commits td {
2486 2486 padding: 0px 0px 0px 12px !important;
2487 2487 }
2488 2488
2489 2489 #changeset_content .container .right {
2490 2490 float: right;
2491 2491 width: 20%;
2492 2492 text-align: right;
2493 2493 }
2494 2494
2495 2495 #changeset_content .container .left .message {
2496 2496 white-space: pre-wrap;
2497 2497 }
2498 2498 #changeset_content .container .left .message a:hover {
2499 2499 text-decoration: none;
2500 2500 }
2501 2501 .cs_files .cur_cs {
2502 2502 margin: 10px 2px;
2503 2503 font-weight: bold;
2504 2504 }
2505 2505
2506 2506 .cs_files .node {
2507 2507 float: left;
2508 2508 }
2509 2509
2510 2510 .cs_files .changes {
2511 2511 float: right;
2512 2512 color:#003367;
2513 2513
2514 2514 }
2515 2515
2516 2516 .cs_files .changes .added {
2517 2517 background-color: #BBFFBB;
2518 2518 float: left;
2519 2519 text-align: center;
2520 2520 font-size: 9px;
2521 2521 padding: 2px 0px 2px 0px;
2522 2522 }
2523 2523
2524 2524 .cs_files .changes .deleted {
2525 2525 background-color: #FF8888;
2526 2526 float: left;
2527 2527 text-align: center;
2528 2528 font-size: 9px;
2529 2529 padding: 2px 0px 2px 0px;
2530 2530 }
2531 2531 /*new binary*/
2532 2532 .cs_files .changes .bin1 {
2533 2533 background-color: #BBFFBB;
2534 2534 float: left;
2535 2535 text-align: center;
2536 2536 font-size: 9px;
2537 2537 padding: 2px 0px 2px 0px;
2538 2538 }
2539 2539
2540 2540 /*deleted binary*/
2541 2541 .cs_files .changes .bin2 {
2542 2542 background-color: #FF8888;
2543 2543 float: left;
2544 2544 text-align: center;
2545 2545 font-size: 9px;
2546 2546 padding: 2px 0px 2px 0px;
2547 2547 }
2548 2548
2549 2549 /*mod binary*/
2550 2550 .cs_files .changes .bin3 {
2551 2551 background-color: #DDDDDD;
2552 2552 float: left;
2553 2553 text-align: center;
2554 2554 font-size: 9px;
2555 2555 padding: 2px 0px 2px 0px;
2556 2556 }
2557 2557
2558 2558 /*rename file*/
2559 2559 .cs_files .changes .bin4 {
2560 2560 background-color: #6D99FF;
2561 2561 float: left;
2562 2562 text-align: center;
2563 2563 font-size: 9px;
2564 2564 padding: 2px 0px 2px 0px;
2565 2565 }
2566 2566
2567 2567
2568 2568 .cs_files .cs_added,.cs_files .cs_A {
2569 2569 background: url("../images/icons/page_white_add.png") no-repeat scroll
2570 2570 3px;
2571 2571 height: 16px;
2572 2572 padding-left: 20px;
2573 2573 margin-top: 7px;
2574 2574 text-align: left;
2575 2575 }
2576 2576
2577 2577 .cs_files .cs_changed,.cs_files .cs_M {
2578 2578 background: url("../images/icons/page_white_edit.png") no-repeat scroll
2579 2579 3px;
2580 2580 height: 16px;
2581 2581 padding-left: 20px;
2582 2582 margin-top: 7px;
2583 2583 text-align: left;
2584 2584 }
2585 2585
2586 2586 .cs_files .cs_removed,.cs_files .cs_D {
2587 2587 background: url("../images/icons/page_white_delete.png") no-repeat
2588 2588 scroll 3px;
2589 2589 height: 16px;
2590 2590 padding-left: 20px;
2591 2591 margin-top: 7px;
2592 2592 text-align: left;
2593 2593 }
2594 2594
2595 2595 #graph {
2596 2596 overflow: hidden;
2597 2597 }
2598 2598
2599 2599 #graph_nodes {
2600 2600 float: left;
2601 2601 margin-right: 0px;
2602 2602 margin-top: 0px;
2603 2603 }
2604 2604
2605 2605 #graph_content {
2606 2606 width: 80%;
2607 2607 float: left;
2608 2608 }
2609 2609
2610 2610 #graph_content .container_header {
2611 2611 border-bottom: 1px solid #DDD;
2612 2612 padding: 10px;
2613 2613 height: 25px;
2614 2614 }
2615 2615
2616 2616 #graph_content #rev_range_container {
2617 2617 float: left;
2618 2618 margin: 0px 0px 0px 3px;
2619 2619 }
2620 2620
2621 2621 #graph_content #rev_range_clear {
2622 2622 float: left;
2623 2623 margin: 0px 0px 0px 3px;
2624 2624 }
2625 2625
2626 2626 #graph_content .container {
2627 2627 border-bottom: 1px solid #DDD;
2628 2628 height: 56px;
2629 2629 overflow: hidden;
2630 2630 }
2631 2631
2632 2632 #graph_content .container .right {
2633 2633 float: right;
2634 2634 width: 23%;
2635 2635 text-align: right;
2636 2636 }
2637 2637
2638 2638 #graph_content .container .left {
2639 2639 float: left;
2640 2640 width: 25%;
2641 2641 padding-left: 5px;
2642 2642 }
2643 2643
2644 2644 #graph_content .container .mid {
2645 2645 float: left;
2646 2646 width: 49%;
2647 2647 }
2648 2648
2649 2649
2650 2650 #graph_content .container .left .date {
2651 2651 color: #666;
2652 2652 padding-left: 22px;
2653 2653 font-size: 10px;
2654 2654 }
2655 2655
2656 2656 #graph_content .container .left .author {
2657 2657 height: 22px;
2658 2658 }
2659 2659
2660 2660 #graph_content .container .left .author .user {
2661 2661 color: #444444;
2662 2662 float: left;
2663 2663 margin-left: -4px;
2664 2664 margin-top: 4px;
2665 2665 }
2666 2666
2667 2667 #graph_content .container .mid .message {
2668 2668 white-space: pre-wrap;
2669 2669 }
2670 2670
2671 2671 #graph_content .container .mid .message a:hover{
2672 2672 text-decoration: none;
2673 2673 }
2674 2674
2675 2675 .revision-link
2676 2676 {
2677 2677 color:#3F6F9F;
2678 2678 font-weight: bold !important;
2679 2679 }
2680 2680
2681 2681 .issue-tracker-link{
2682 2682 color:#3F6F9F;
2683 2683 font-weight: bold !important;
2684 2684 }
2685 2685
2686 2686 .changeset-status-container{
2687 2687 padding-right: 5px;
2688 2688 margin-top:1px;
2689 2689 float:right;
2690 2690 height:14px;
2691 2691 }
2692 2692 .code-header .changeset-status-container{
2693 2693 float:left;
2694 2694 padding:2px 0px 0px 2px;
2695 2695 }
2696 2696 .changeset-status-container .changeset-status-lbl{
2697 2697 color: rgb(136, 136, 136);
2698 2698 float: left;
2699 2699 padding: 3px 4px 0px 0px
2700 2700 }
2701 2701 .code-header .changeset-status-container .changeset-status-lbl{
2702 2702 float: left;
2703 2703 padding: 0px 4px 0px 0px;
2704 2704 }
2705 2705 .changeset-status-container .changeset-status-ico{
2706 2706 float: left;
2707 2707 }
2708 2708 .code-header .changeset-status-container .changeset-status-ico, .container .changeset-status-ico{
2709 2709 float: left;
2710 2710 }
2711 2711 .right .comments-container{
2712 2712 padding-right: 5px;
2713 2713 margin-top:1px;
2714 2714 float:right;
2715 2715 height:14px;
2716 2716 }
2717 2717
2718 2718 .right .comments-cnt{
2719 2719 float: left;
2720 2720 color: rgb(136, 136, 136);
2721 2721 padding-right: 2px;
2722 2722 }
2723 2723
2724 2724 .right .changes{
2725 2725 clear: both;
2726 2726 }
2727 2727
2728 2728 .right .changes .changed_total {
2729 2729 display: block;
2730 2730 float: right;
2731 2731 text-align: center;
2732 2732 min-width: 45px;
2733 2733 cursor: pointer;
2734 2734 color: #444444;
2735 2735 background: #FEA;
2736 2736 -webkit-border-radius: 0px 0px 0px 6px;
2737 2737 -moz-border-radius: 0px 0px 0px 6px;
2738 2738 border-radius: 0px 0px 0px 6px;
2739 2739 padding: 1px;
2740 2740 }
2741 2741
2742 2742 .right .changes .added,.changed,.removed {
2743 2743 display: block;
2744 2744 padding: 1px;
2745 2745 color: #444444;
2746 2746 float: right;
2747 2747 text-align: center;
2748 2748 min-width: 15px;
2749 2749 }
2750 2750
2751 2751 .right .changes .added {
2752 2752 background: #CFC;
2753 2753 }
2754 2754
2755 2755 .right .changes .changed {
2756 2756 background: #FEA;
2757 2757 }
2758 2758
2759 2759 .right .changes .removed {
2760 2760 background: #FAA;
2761 2761 }
2762 2762
2763 2763 .right .merge {
2764 2764 padding: 1px 3px 1px 3px;
2765 2765 background-color: #fca062;
2766 2766 font-size: 10px;
2767 2767 font-weight: bold;
2768 2768 color: #ffffff;
2769 2769 text-transform: uppercase;
2770 2770 white-space: nowrap;
2771 2771 -webkit-border-radius: 3px;
2772 2772 -moz-border-radius: 3px;
2773 2773 border-radius: 3px;
2774 2774 margin-right: 2px;
2775 2775 }
2776 2776
2777 2777 .right .parent {
2778 2778 color: #666666;
2779 2779 clear:both;
2780 2780 }
2781 2781 .right .logtags{
2782 2782 padding: 2px 2px 2px 2px;
2783 2783 }
2784 2784 .right .logtags .branchtag,.right .logtags .tagtag,.right .logtags .booktag{
2785 2785 margin: 0px 2px;
2786 2786 }
2787 2787
2788 2788 .right .logtags .branchtag,
2789 2789 .logtags .branchtag,
2790 2790 .spantag {
2791 2791 padding: 1px 3px 1px 3px;
2792 2792 background-color: #bfbfbf;
2793 2793 font-size: 10px;
2794 2794 font-weight: bold;
2795 2795 color: #ffffff;
2796 2796 white-space: nowrap;
2797 2797 -webkit-border-radius: 3px;
2798 2798 -moz-border-radius: 3px;
2799 2799 border-radius: 3px;
2800 2800 }
2801 2801 .right .logtags .branchtag a:hover,.logtags .branchtag a{
2802 2802 color: #ffffff;
2803 2803 }
2804 2804 .right .logtags .branchtag a:hover,.logtags .branchtag a:hover{
2805 2805 text-decoration: none;
2806 2806 color: #ffffff;
2807 2807 }
2808 2808 .right .logtags .tagtag,.logtags .tagtag {
2809 2809 padding: 1px 3px 1px 3px;
2810 2810 background-color: #62cffc;
2811 2811 font-size: 10px;
2812 2812 font-weight: bold;
2813 2813 color: #ffffff;
2814 2814 white-space: nowrap;
2815 2815 -webkit-border-radius: 3px;
2816 2816 -moz-border-radius: 3px;
2817 2817 border-radius: 3px;
2818 2818 }
2819 2819 .right .logtags .tagtag a:hover,.logtags .tagtag a{
2820 2820 color: #ffffff;
2821 2821 }
2822 2822 .right .logtags .tagtag a:hover,.logtags .tagtag a:hover{
2823 2823 text-decoration: none;
2824 2824 color: #ffffff;
2825 2825 }
2826 2826 .right .logbooks .bookbook,.logbooks .bookbook,.right .logtags .bookbook,.logtags .bookbook {
2827 2827 padding: 1px 3px 1px 3px;
2828 2828 background-color: #46A546;
2829 2829 font-size: 10px;
2830 2830 font-weight: bold;
2831 2831 color: #ffffff;
2832 2832 text-transform: uppercase;
2833 2833 white-space: nowrap;
2834 2834 -webkit-border-radius: 3px;
2835 2835 -moz-border-radius: 3px;
2836 2836 border-radius: 3px;
2837 2837 }
2838 2838 .right .logbooks .bookbook,.logbooks .bookbook a,.right .logtags .bookbook,.logtags .bookbook a{
2839 2839 color: #ffffff;
2840 2840 }
2841 2841 .right .logbooks .bookbook,.logbooks .bookbook a:hover,.right .logtags .bookbook,.logtags .bookbook a:hover{
2842 2842 text-decoration: none;
2843 2843 color: #ffffff;
2844 2844 }
2845 2845 div.browserblock {
2846 2846 overflow: hidden;
2847 2847 border: 1px solid #ccc;
2848 2848 background: #f8f8f8;
2849 2849 font-size: 100%;
2850 2850 line-height: 125%;
2851 2851 padding: 0;
2852 2852 -webkit-border-radius: 6px 6px 0px 0px;
2853 2853 -moz-border-radius: 6px 6px 0px 0px;
2854 2854 border-radius: 6px 6px 0px 0px;
2855 2855 }
2856 2856
2857 2857 div.browserblock .browser-header {
2858 2858 background: #FFF;
2859 2859 padding: 10px 0px 15px 0px;
2860 2860 width: 100%;
2861 2861 }
2862 2862
2863 2863 div.browserblock .browser-nav {
2864 2864 float: left
2865 2865 }
2866 2866
2867 2867 div.browserblock .browser-branch {
2868 2868 float: left;
2869 2869 }
2870 2870
2871 2871 div.browserblock .browser-branch label {
2872 2872 color: #4A4A4A;
2873 2873 vertical-align: text-top;
2874 2874 }
2875 2875
2876 2876 div.browserblock .browser-header span {
2877 2877 margin-left: 5px;
2878 2878 font-weight: 700;
2879 2879 }
2880 2880
2881 2881 div.browserblock .browser-search {
2882 2882 clear: both;
2883 2883 padding: 8px 8px 0px 5px;
2884 2884 height: 20px;
2885 2885 }
2886 2886
2887 2887 div.browserblock #node_filter_box {
2888 2888
2889 2889 }
2890 2890
2891 2891 div.browserblock .search_activate {
2892 2892 float: left
2893 2893 }
2894 2894
2895 2895 div.browserblock .add_node {
2896 2896 float: left;
2897 2897 padding-left: 5px;
2898 2898 }
2899 2899
2900 2900 div.browserblock .search_activate a:hover,div.browserblock .add_node a:hover
2901 2901 {
2902 2902 text-decoration: none !important;
2903 2903 }
2904 2904
2905 2905 div.browserblock .browser-body {
2906 2906 background: #EEE;
2907 2907 border-top: 1px solid #CCC;
2908 2908 }
2909 2909
2910 2910 table.code-browser {
2911 2911 border-collapse: collapse;
2912 2912 width: 100%;
2913 2913 }
2914 2914
2915 2915 table.code-browser tr {
2916 2916 margin: 3px;
2917 2917 }
2918 2918
2919 2919 table.code-browser thead th {
2920 2920 background-color: #EEE;
2921 2921 height: 20px;
2922 2922 font-size: 1.1em;
2923 2923 font-weight: 700;
2924 2924 text-align: left;
2925 2925 padding-left: 10px;
2926 2926 }
2927 2927
2928 2928 table.code-browser tbody td {
2929 2929 padding-left: 10px;
2930 2930 height: 20px;
2931 2931 }
2932 2932
2933 2933 table.code-browser .browser-file {
2934 2934 background: url("../images/icons/document_16.png") no-repeat scroll 3px;
2935 2935 height: 16px;
2936 2936 padding-left: 20px;
2937 2937 text-align: left;
2938 2938 }
2939 2939 .diffblock .changeset_header {
2940 2940 height: 16px;
2941 2941 }
2942 2942 .diffblock .changeset_file {
2943 2943 background: url("../images/icons/file.png") no-repeat scroll 3px;
2944 2944 text-align: left;
2945 2945 float: left;
2946 2946 padding: 2px 0px 2px 22px;
2947 2947 }
2948 2948 .diffblock .diff-menu-wrapper{
2949 2949 float: left;
2950 2950 }
2951 2951
2952 2952 .diffblock .diff-menu{
2953 2953 position: absolute;
2954 2954 background: none repeat scroll 0 0 #FFFFFF;
2955 2955 border-color: #003367 #666666 #666666;
2956 2956 border-right: 1px solid #666666;
2957 2957 border-style: solid solid solid;
2958 2958 border-width: 1px;
2959 2959 box-shadow: 2px 8px 4px rgba(0, 0, 0, 0.2);
2960 2960 margin-top:5px;
2961 2961 margin-left:1px;
2962 2962
2963 2963 }
2964 2964 .diffblock .diff-actions {
2965 2965 padding: 2px 0px 0px 2px;
2966 2966 float: left;
2967 2967 }
2968 2968 .diffblock .diff-menu ul li {
2969 2969 padding: 0px 0px 0px 0px !important;
2970 2970 }
2971 2971 .diffblock .diff-menu ul li a{
2972 2972 display: block;
2973 2973 padding: 3px 8px 3px 8px !important;
2974 2974 }
2975 2975 .diffblock .diff-menu ul li a:hover{
2976 2976 text-decoration: none;
2977 2977 background-color: #EEEEEE;
2978 2978 }
2979 2979 table.code-browser .browser-dir {
2980 2980 background: url("../images/icons/folder_16.png") no-repeat scroll 3px;
2981 2981 height: 16px;
2982 2982 padding-left: 20px;
2983 2983 text-align: left;
2984 2984 }
2985 2985
2986 2986 table.code-browser .submodule-dir {
2987 2987 background: url("../images/icons/disconnect.png") no-repeat scroll 3px;
2988 2988 height: 16px;
2989 2989 padding-left: 20px;
2990 2990 text-align: left;
2991 2991 }
2992 2992
2993 2993
2994 2994 .box .search {
2995 2995 clear: both;
2996 2996 overflow: hidden;
2997 2997 margin: 0;
2998 2998 padding: 0 20px 10px;
2999 2999 }
3000 3000
3001 3001 .box .search div.search_path {
3002 3002 background: none repeat scroll 0 0 #EEE;
3003 3003 border: 1px solid #CCC;
3004 3004 color: blue;
3005 3005 margin-bottom: 10px;
3006 3006 padding: 10px 0;
3007 3007 }
3008 3008
3009 3009 .box .search div.search_path div.link {
3010 3010 font-weight: 700;
3011 3011 margin-left: 25px;
3012 3012 }
3013 3013
3014 3014 .box .search div.search_path div.link a {
3015 3015 color: #003367;
3016 3016 cursor: pointer;
3017 3017 text-decoration: none;
3018 3018 }
3019 3019
3020 3020 #path_unlock {
3021 3021 color: red;
3022 3022 font-size: 1.2em;
3023 3023 padding-left: 4px;
3024 3024 }
3025 3025
3026 3026 .info_box span {
3027 3027 margin-left: 3px;
3028 3028 margin-right: 3px;
3029 3029 }
3030 3030
3031 3031 .info_box .rev {
3032 3032 color: #003367;
3033 3033 font-size: 1.6em;
3034 3034 font-weight: bold;
3035 3035 vertical-align: sub;
3036 3036 }
3037 3037
3038 3038 .info_box input#at_rev,.info_box input#size {
3039 3039 background: #FFF;
3040 3040 border-top: 1px solid #b3b3b3;
3041 3041 border-left: 1px solid #b3b3b3;
3042 3042 border-right: 1px solid #eaeaea;
3043 3043 border-bottom: 1px solid #eaeaea;
3044 3044 color: #000;
3045 3045 font-size: 12px;
3046 3046 margin: 0;
3047 3047 padding: 1px 5px 1px;
3048 3048 }
3049 3049
3050 3050 .info_box input#view {
3051 3051 text-align: center;
3052 3052 padding: 4px 3px 2px 2px;
3053 3053 }
3054 3054
3055 3055 .yui-overlay,.yui-panel-container {
3056 3056 visibility: hidden;
3057 3057 position: absolute;
3058 3058 z-index: 2;
3059 3059 }
3060 3060
3061 3061 #tip-box {
3062 3062 position: absolute;
3063 3063
3064 3064 background-color: #FFF;
3065 3065 border: 2px solid #003367;
3066 3066 font: 100% sans-serif;
3067 3067 width: auto;
3068 3068 opacity: 1px;
3069 3069 padding: 8px;
3070 3070
3071 3071 white-space: pre-wrap;
3072 3072 -webkit-border-radius: 8px 8px 8px 8px;
3073 3073 -khtml-border-radius: 8px 8px 8px 8px;
3074 3074 -moz-border-radius: 8px 8px 8px 8px;
3075 3075 border-radius: 8px 8px 8px 8px;
3076 3076 box-shadow: 0 2px 2px rgba(0, 0, 0, 0.6);
3077 3077 -moz-box-shadow: 0 2px 2px rgba(0, 0, 0, 0.6);
3078 3078 -webkit-box-shadow: 0 2px 2px rgba(0, 0, 0, 0.6);
3079 3079 }
3080 3080
3081 3081 .hl-tip-box {
3082 3082 visibility: hidden;
3083 3083 position: absolute;
3084 3084 color: #666;
3085 3085 background-color: #FFF;
3086 3086 border: 2px solid #003367;
3087 3087 font: 100% sans-serif;
3088 3088 width: auto;
3089 3089 opacity: 1px;
3090 3090 padding: 8px;
3091 3091 white-space: pre-wrap;
3092 3092 -webkit-border-radius: 8px 8px 8px 8px;
3093 3093 -khtml-border-radius: 8px 8px 8px 8px;
3094 3094 -moz-border-radius: 8px 8px 8px 8px;
3095 3095 border-radius: 8px 8px 8px 8px;
3096 3096 box-shadow: 0 2px 2px rgba(0, 0, 0, 0.6);
3097 3097 }
3098 3098
3099 3099
3100 3100 .mentions-container{
3101 3101 width: 90% !important;
3102 3102 }
3103 3103 .mentions-container .yui-ac-content{
3104 3104 width: 100% !important;
3105 3105 }
3106 3106
3107 3107 .ac {
3108 3108 vertical-align: top;
3109 3109 }
3110 3110
3111 3111 .ac .yui-ac {
3112 3112 position: inherit;
3113 3113 font-size: 100%;
3114 3114 }
3115 3115
3116 3116 .ac .perm_ac {
3117 3117 width: 20em;
3118 3118 }
3119 3119
3120 3120 .ac .yui-ac-input {
3121 3121 width: 100%;
3122 3122 }
3123 3123
3124 3124 .ac .yui-ac-container {
3125 3125 position: absolute;
3126 3126 top: 1.6em;
3127 3127 width: auto;
3128 3128 }
3129 3129
3130 3130 .ac .yui-ac-content {
3131 3131 position: absolute;
3132 3132 border: 1px solid gray;
3133 3133 background: #fff;
3134 3134 z-index: 9050;
3135 3135
3136 3136 }
3137 3137
3138 3138 .ac .yui-ac-shadow {
3139 3139 position: absolute;
3140 3140 width: 100%;
3141 3141 background: #000;
3142 3142 -moz-opacity: 0.1px;
3143 3143 opacity: .10;
3144 3144 filter: alpha(opacity = 10);
3145 3145 z-index: 9049;
3146 3146 margin: .3em;
3147 3147 }
3148 3148
3149 3149 .ac .yui-ac-content ul {
3150 3150 width: 100%;
3151 3151 margin: 0;
3152 3152 padding: 0;
3153 3153 z-index: 9050;
3154 3154 }
3155 3155
3156 3156 .ac .yui-ac-content li {
3157 3157 cursor: default;
3158 3158 white-space: nowrap;
3159 3159 margin: 0;
3160 3160 padding: 2px 5px;
3161 3161 height: 18px;
3162 3162 z-index: 9050;
3163 3163 display: block;
3164 3164 width: auto !important;
3165 3165 }
3166 3166
3167 3167 .ac .yui-ac-content li .ac-container-wrap{
3168 3168 width: auto;
3169 3169 }
3170 3170
3171 3171 .ac .yui-ac-content li.yui-ac-prehighlight {
3172 3172 background: #B3D4FF;
3173 3173 z-index: 9050;
3174 3174 }
3175 3175
3176 3176 .ac .yui-ac-content li.yui-ac-highlight {
3177 3177 background: #556CB5;
3178 3178 color: #FFF;
3179 3179 z-index: 9050;
3180 3180 }
3181 3181 .ac .yui-ac-bd{
3182 3182 z-index: 9050;
3183 3183 }
3184 3184
3185 3185 .follow {
3186 3186 background: url("../images/icons/heart_add.png") no-repeat scroll 3px;
3187 3187 height: 16px;
3188 3188 width: 20px;
3189 3189 cursor: pointer;
3190 3190 display: block;
3191 3191 float: right;
3192 3192 margin-top: 2px;
3193 3193 }
3194 3194
3195 3195 .following {
3196 3196 background: url("../images/icons/heart_delete.png") no-repeat scroll 3px;
3197 3197 height: 16px;
3198 3198 width: 20px;
3199 3199 cursor: pointer;
3200 3200 display: block;
3201 3201 float: right;
3202 3202 margin-top: 2px;
3203 3203 }
3204 3204
3205 3205 .locking_locked{
3206 3206 background: #FFF url("../images/icons/block_16.png") no-repeat scroll 3px;
3207 3207 height: 16px;
3208 3208 width: 20px;
3209 3209 cursor: pointer;
3210 3210 display: block;
3211 3211 float: right;
3212 3212 margin-top: 2px;
3213 3213 }
3214 3214
3215 3215 .locking_unlocked{
3216 3216 background: #FFF url("../images/icons/accept.png") no-repeat scroll 3px;
3217 3217 height: 16px;
3218 3218 width: 20px;
3219 3219 cursor: pointer;
3220 3220 display: block;
3221 3221 float: right;
3222 3222 margin-top: 2px;
3223 3223 }
3224 3224
3225 3225 .currently_following {
3226 3226 padding-left: 10px;
3227 3227 padding-bottom: 5px;
3228 3228 }
3229 3229
3230 3230 .add_icon {
3231 3231 background: url("../images/icons/add.png") no-repeat scroll 3px;
3232 3232 padding-left: 20px;
3233 3233 padding-top: 0px;
3234 3234 text-align: left;
3235 3235 }
3236 3236
3237 3237 .accept_icon {
3238 3238 background: url("../images/icons/accept.png") no-repeat scroll 3px;
3239 3239 padding-left: 20px;
3240 3240 padding-top: 0px;
3241 3241 text-align: left;
3242 3242 }
3243 3243
3244 3244 .edit_icon {
3245 3245 background: url("../images/icons/application_form_edit.png") no-repeat scroll 3px;
3246 3246 padding-left: 20px;
3247 3247 padding-top: 0px;
3248 3248 text-align: left;
3249 3249 }
3250 3250
3251 3251 .delete_icon {
3252 3252 background: url("../images/icons/delete.png") no-repeat scroll 3px;
3253 3253 padding-left: 20px;
3254 3254 padding-top: 0px;
3255 3255 text-align: left;
3256 3256 }
3257 3257
3258 3258 .refresh_icon {
3259 3259 background: url("../images/icons/arrow_refresh.png") no-repeat scroll
3260 3260 3px;
3261 3261 padding-left: 20px;
3262 3262 padding-top: 0px;
3263 3263 text-align: left;
3264 3264 }
3265 3265
3266 3266 .pull_icon {
3267 3267 background: url("../images/icons/connect.png") no-repeat scroll 3px;
3268 3268 padding-left: 20px;
3269 3269 padding-top: 0px;
3270 3270 text-align: left;
3271 3271 }
3272 3272
3273 3273 .rss_icon {
3274 3274 background: url("../images/icons/rss_16.png") no-repeat scroll 3px;
3275 3275 padding-left: 20px;
3276 3276 padding-top: 4px;
3277 3277 text-align: left;
3278 3278 font-size: 8px
3279 3279 }
3280 3280
3281 3281 .atom_icon {
3282 3282 background: url("../images/icons/atom.png") no-repeat scroll 3px;
3283 3283 padding-left: 20px;
3284 3284 padding-top: 4px;
3285 3285 text-align: left;
3286 3286 font-size: 8px
3287 3287 }
3288 3288
3289 3289 .archive_icon {
3290 3290 background: url("../images/icons/compress.png") no-repeat scroll 3px;
3291 3291 padding-left: 20px;
3292 3292 text-align: left;
3293 3293 padding-top: 1px;
3294 3294 }
3295 3295
3296 3296 .start_following_icon {
3297 3297 background: url("../images/icons/heart_add.png") no-repeat scroll 3px;
3298 3298 padding-left: 20px;
3299 3299 text-align: left;
3300 3300 padding-top: 0px;
3301 3301 }
3302 3302
3303 3303 .stop_following_icon {
3304 3304 background: url("../images/icons/heart_delete.png") no-repeat scroll 3px;
3305 3305 padding-left: 20px;
3306 3306 text-align: left;
3307 3307 padding-top: 0px;
3308 3308 }
3309 3309
3310 3310 .action_button {
3311 3311 border: 0;
3312 3312 display: inline;
3313 3313 }
3314 3314
3315 3315 .action_button:hover {
3316 3316 border: 0;
3317 3317 text-decoration: underline;
3318 3318 cursor: pointer;
3319 3319 }
3320 3320
3321 3321 #switch_repos {
3322 3322 position: absolute;
3323 3323 height: 25px;
3324 3324 z-index: 1;
3325 3325 }
3326 3326
3327 3327 #switch_repos select {
3328 3328 min-width: 150px;
3329 3329 max-height: 250px;
3330 3330 z-index: 1;
3331 3331 }
3332 3332
3333 3333 .breadcrumbs {
3334 3334 border: medium none;
3335 3335 color: #FFF;
3336 3336 float: left;
3337 3337 font-weight: 700;
3338 3338 font-size: 14px;
3339 3339 margin: 0;
3340 3340 padding: 11px 0 11px 10px;
3341 3341 }
3342 3342
3343 3343 .breadcrumbs .hash {
3344 3344 text-transform: none;
3345 3345 color: #fff;
3346 3346 }
3347 3347
3348 3348 .breadcrumbs a {
3349 3349 color: #FFF;
3350 3350 }
3351 3351
3352 3352 .flash_msg {
3353 3353
3354 3354 }
3355 3355
3356 3356 .flash_msg ul {
3357 3357
3358 3358 }
3359 3359
3360 3360 .error_red {
3361 3361 color:red;
3362 3362 }
3363 3363
3364 3364 .error_msg {
3365 3365 background-color: #c43c35;
3366 3366 background-repeat: repeat-x;
3367 3367 background-image: -khtml-gradient(linear, left top, left bottom, from(#ee5f5b), to(#c43c35) );
3368 3368 background-image: -moz-linear-gradient(top, #ee5f5b, #c43c35);
3369 3369 background-image: -ms-linear-gradient(top, #ee5f5b, #c43c35);
3370 3370 background-image: -webkit-gradient(linear, left top, left bottom, color-stop(0%, #ee5f5b), color-stop(100%, #c43c35) );
3371 3371 background-image: -webkit-linear-gradient(top, #ee5f5b, #c43c35);
3372 3372 background-image: -o-linear-gradient(top, #ee5f5b, #c43c35);
3373 3373 background-image: linear-gradient(top, #ee5f5b, #c43c35);
3374 3374 filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ee5f5b',endColorstr='#c43c35', GradientType=0 );
3375 3375 border-color: #c43c35 #c43c35 #882a25;
3376 3376 }
3377 3377
3378 3378 .warning_msg {
3379 3379 color: #404040 !important;
3380 3380 background-color: #eedc94;
3381 3381 background-repeat: repeat-x;
3382 3382 background-image: -khtml-gradient(linear, left top, left bottom, from(#fceec1), to(#eedc94) );
3383 3383 background-image: -moz-linear-gradient(top, #fceec1, #eedc94);
3384 3384 background-image: -ms-linear-gradient(top, #fceec1, #eedc94);
3385 3385 background-image: -webkit-gradient(linear, left top, left bottom, color-stop(0%, #fceec1), color-stop(100%, #eedc94) );
3386 3386 background-image: -webkit-linear-gradient(top, #fceec1, #eedc94);
3387 3387 background-image: -o-linear-gradient(top, #fceec1, #eedc94);
3388 3388 background-image: linear-gradient(top, #fceec1, #eedc94);
3389 3389 filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#fceec1', endColorstr='#eedc94', GradientType=0 );
3390 3390 border-color: #eedc94 #eedc94 #e4c652;
3391 3391 }
3392 3392
3393 3393 .success_msg {
3394 3394 background-color: #57a957;
3395 3395 background-repeat: repeat-x !important;
3396 3396 background-image: -khtml-gradient(linear, left top, left bottom, from(#62c462), to(#57a957) );
3397 3397 background-image: -moz-linear-gradient(top, #62c462, #57a957);
3398 3398 background-image: -ms-linear-gradient(top, #62c462, #57a957);
3399 3399 background-image: -webkit-gradient(linear, left top, left bottom, color-stop(0%, #62c462), color-stop(100%, #57a957) );
3400 3400 background-image: -webkit-linear-gradient(top, #62c462, #57a957);
3401 3401 background-image: -o-linear-gradient(top, #62c462, #57a957);
3402 3402 background-image: linear-gradient(top, #62c462, #57a957);
3403 3403 filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#62c462', endColorstr='#57a957', GradientType=0 );
3404 3404 border-color: #57a957 #57a957 #3d773d;
3405 3405 }
3406 3406
3407 3407 .notice_msg {
3408 3408 background-color: #339bb9;
3409 3409 background-repeat: repeat-x;
3410 3410 background-image: -khtml-gradient(linear, left top, left bottom, from(#5bc0de), to(#339bb9) );
3411 3411 background-image: -moz-linear-gradient(top, #5bc0de, #339bb9);
3412 3412 background-image: -ms-linear-gradient(top, #5bc0de, #339bb9);
3413 3413 background-image: -webkit-gradient(linear, left top, left bottom, color-stop(0%, #5bc0de), color-stop(100%, #339bb9) );
3414 3414 background-image: -webkit-linear-gradient(top, #5bc0de, #339bb9);
3415 3415 background-image: -o-linear-gradient(top, #5bc0de, #339bb9);
3416 3416 background-image: linear-gradient(top, #5bc0de, #339bb9);
3417 3417 filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#5bc0de', endColorstr='#339bb9', GradientType=0 );
3418 3418 border-color: #339bb9 #339bb9 #22697d;
3419 3419 }
3420 3420
3421 3421 .success_msg,.error_msg,.notice_msg,.warning_msg {
3422 3422 font-size: 12px;
3423 3423 font-weight: 700;
3424 3424 min-height: 14px;
3425 3425 line-height: 14px;
3426 3426 margin-bottom: 10px;
3427 3427 margin-top: 0;
3428 3428 display: block;
3429 3429 overflow: auto;
3430 3430 padding: 6px 10px 6px 10px;
3431 3431 border-color: rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.25);
3432 3432 position: relative;
3433 3433 color: #FFF;
3434 3434 border-width: 1px;
3435 3435 border-style: solid;
3436 3436 -webkit-border-radius: 4px;
3437 3437 -moz-border-radius: 4px;
3438 3438 border-radius: 4px;
3439 3439 -webkit-box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.25);
3440 3440 -moz-box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.25);
3441 3441 box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.25);
3442 3442 }
3443 3443
3444 3444 #msg_close {
3445 3445 background: transparent url("../icons/cross_grey_small.png") no-repeat scroll 0 0;
3446 3446 cursor: pointer;
3447 3447 height: 16px;
3448 3448 position: absolute;
3449 3449 right: 5px;
3450 3450 top: 5px;
3451 3451 width: 16px;
3452 3452 }
3453 3453 div#legend_data{
3454 3454 padding-left:10px;
3455 3455 }
3456 3456 div#legend_container table{
3457 3457 border: none !important;
3458 3458 }
3459 3459 div#legend_container table,div#legend_choices table {
3460 3460 width: auto !important;
3461 3461 }
3462 3462
3463 3463 table#permissions_manage {
3464 3464 width: 0 !important;
3465 3465 }
3466 3466
3467 3467 table#permissions_manage span.private_repo_msg {
3468 3468 font-size: 0.8em;
3469 3469 opacity: 0.6px;
3470 3470 }
3471 3471
3472 3472 table#permissions_manage td.private_repo_msg {
3473 3473 font-size: 0.8em;
3474 3474 }
3475 3475
3476 3476 table#permissions_manage tr#add_perm_input td {
3477 3477 vertical-align: middle;
3478 3478 }
3479 3479
3480 3480 div.gravatar {
3481 3481 background-color: #FFF;
3482 3482 float: left;
3483 3483 margin-right: 0.7em;
3484 3484 padding: 1px 1px 1px 1px;
3485 3485 line-height:0;
3486 3486 -webkit-border-radius: 3px;
3487 3487 -khtml-border-radius: 3px;
3488 3488 -moz-border-radius: 3px;
3489 3489 border-radius: 3px;
3490 3490 }
3491 3491
3492 3492 div.gravatar img {
3493 3493 -webkit-border-radius: 2px;
3494 3494 -khtml-border-radius: 2px;
3495 3495 -moz-border-radius: 2px;
3496 3496 border-radius: 2px;
3497 3497 }
3498 3498
3499 3499 #header,#content,#footer {
3500 3500 min-width: 978px;
3501 3501 }
3502 3502
3503 3503 #content {
3504 3504 clear: both;
3505 3505 overflow: hidden;
3506 3506 padding: 54px 10px 14px 10px;
3507 3507 }
3508 3508
3509 3509 #content div.box div.title div.search {
3510 3510
3511 3511 border-left: 1px solid #316293;
3512 3512 }
3513 3513
3514 3514 #content div.box div.title div.search div.input input {
3515 3515 border: 1px solid #316293;
3516 3516 }
3517 3517
3518 3518 .ui-btn{
3519 3519 color: #515151;
3520 3520 background-color: #DADADA;
3521 3521 background-repeat: repeat-x;
3522 3522 background-image: -khtml-gradient(linear, left top, left bottom, from(#F4F4F4),to(#DADADA) );
3523 3523 background-image: -moz-linear-gradient(top, #F4F4F4, #DADADA);
3524 3524 background-image: -ms-linear-gradient(top, #F4F4F4, #DADADA);
3525 3525 background-image: -webkit-gradient(linear, left top, left bottom, color-stop(0%, #F4F4F4),color-stop(100%, #DADADA) );
3526 3526 background-image: -webkit-linear-gradient(top, #F4F4F4, #DADADA) );
3527 3527 background-image: -o-linear-gradient(top, #F4F4F4, #DADADA) );
3528 3528 background-image: linear-gradient(top, #F4F4F4, #DADADA);
3529 3529 filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#F4F4F4', endColorstr='#DADADA', GradientType=0);
3530 3530
3531 3531 border-top: 1px solid #DDD;
3532 3532 border-left: 1px solid #c6c6c6;
3533 3533 border-right: 1px solid #DDD;
3534 3534 border-bottom: 1px solid #c6c6c6;
3535 3535 color: #515151;
3536 3536 outline: none;
3537 3537 margin: 0px 3px 3px 0px;
3538 3538 -webkit-border-radius: 4px 4px 4px 4px !important;
3539 3539 -khtml-border-radius: 4px 4px 4px 4px !important;
3540 3540 -moz-border-radius: 4px 4px 4px 4px !important;
3541 3541 border-radius: 4px 4px 4px 4px !important;
3542 3542 cursor: pointer !important;
3543 3543 padding: 3px 3px 3px 3px;
3544 3544 background-position: 0 -15px;
3545 3545
3546 3546 }
3547
3548 .ui-btn.disabled{
3549 color: #999;
3550 }
3551
3547 3552 .ui-btn.xsmall{
3548 3553 padding: 1px 2px 1px 1px;
3549 3554 }
3550 3555
3551 3556 .ui-btn.large{
3552 3557 padding: 6px 12px;
3553 3558 }
3554 3559
3555 3560 .ui-btn.clone{
3556 3561 padding: 5px 2px 6px 1px;
3557 3562 margin: 0px -4px 3px 0px;
3558 3563 -webkit-border-radius: 4px 0px 0px 4px !important;
3559 3564 -khtml-border-radius: 4px 0px 0px 4px !important;
3560 3565 -moz-border-radius: 4px 0px 0px 4px !important;
3561 3566 border-radius: 4px 0px 0px 4px !important;
3562 3567 width: 100px;
3563 3568 text-align: center;
3564 3569 float: left;
3565 3570 position: absolute;
3566 3571 }
3567 3572 .ui-btn:focus {
3568 3573 outline: none;
3569 3574 }
3570 3575 .ui-btn:hover{
3571 background-position: 0 0px;
3576 background-position: 0 -15px;
3572 3577 text-decoration: none;
3573 3578 color: #515151;
3574 3579 box-shadow: 0 1px 2px rgba(0, 0, 0, 0.25), 0 0 3px #FFFFFF !important;
3575 3580 }
3576 3581
3582 .ui-btn.disabled:hover{
3583 background-position:none;
3584 color: #999;
3585 text-decoration: none;
3586 box-shadow: none !important;
3587 }
3588
3577 3589 .ui-btn.red{
3578 3590 color:#fff;
3579 3591 background-color: #c43c35;
3580 3592 background-repeat: repeat-x;
3581 3593 background-image: -khtml-gradient(linear, left top, left bottom, from(#ee5f5b), to(#c43c35));
3582 3594 background-image: -moz-linear-gradient(top, #ee5f5b, #c43c35);
3583 3595 background-image: -ms-linear-gradient(top, #ee5f5b, #c43c35);
3584 3596 background-image: -webkit-gradient(linear, left top, left bottom, color-stop(0%, #ee5f5b), color-stop(100%, #c43c35));
3585 3597 background-image: -webkit-linear-gradient(top, #ee5f5b, #c43c35);
3586 3598 background-image: -o-linear-gradient(top, #ee5f5b, #c43c35);
3587 3599 background-image: linear-gradient(top, #ee5f5b, #c43c35);
3588 3600 filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ee5f5b', endColorstr='#c43c35', GradientType=0);
3589 3601 border-color: #c43c35 #c43c35 #882a25;
3590 3602 border-color: rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.25);
3591 3603 }
3592 3604
3593 3605
3594 3606 .ui-btn.blue{
3595 3607 color:#fff;
3596 3608 background-color: #339bb9;
3597 3609 background-repeat: repeat-x;
3598 3610 background-image: -khtml-gradient(linear, left top, left bottom, from(#5bc0de), to(#339bb9));
3599 3611 background-image: -moz-linear-gradient(top, #5bc0de, #339bb9);
3600 3612 background-image: -ms-linear-gradient(top, #5bc0de, #339bb9);
3601 3613 background-image: -webkit-gradient(linear, left top, left bottom, color-stop(0%, #5bc0de), color-stop(100%, #339bb9));
3602 3614 background-image: -webkit-linear-gradient(top, #5bc0de, #339bb9);
3603 3615 background-image: -o-linear-gradient(top, #5bc0de, #339bb9);
3604 3616 background-image: linear-gradient(top, #5bc0de, #339bb9);
3605 3617 filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#5bc0de', endColorstr='#339bb9', GradientType=0);
3606 3618 border-color: #339bb9 #339bb9 #22697d;
3607 3619 border-color: rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.25);
3608 3620 }
3609 3621
3610 3622 .ui-btn.green{
3611 3623 background-color: #57a957;
3612 3624 background-repeat: repeat-x;
3613 3625 background-image: -khtml-gradient(linear, left top, left bottom, from(#62c462), to(#57a957));
3614 3626 background-image: -moz-linear-gradient(top, #62c462, #57a957);
3615 3627 background-image: -ms-linear-gradient(top, #62c462, #57a957);
3616 3628 background-image: -webkit-gradient(linear, left top, left bottom, color-stop(0%, #62c462), color-stop(100%, #57a957));
3617 3629 background-image: -webkit-linear-gradient(top, #62c462, #57a957);
3618 3630 background-image: -o-linear-gradient(top, #62c462, #57a957);
3619 3631 background-image: linear-gradient(top, #62c462, #57a957);
3620 3632 filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#62c462', endColorstr='#57a957', GradientType=0);
3621 3633 border-color: #57a957 #57a957 #3d773d;
3622 3634 border-color: rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.25);
3623 3635 }
3624 3636
3625 3637 .ui-btn.blue.hidden{
3626 3638 display: none;
3627 3639 }
3628 3640
3629 3641 .ui-btn.active{
3630 3642 font-weight: bold;
3631 3643 }
3632 3644
3633 3645 ins,div.options a:hover {
3634 3646 text-decoration: none;
3635 3647 }
3636 3648
3637 3649 img,
3638 3650 #header #header-inner #quick li a:hover span.normal,
3639 3651 #header #header-inner #quick li ul li.last,
3640 3652 #content div.box div.form div.fields div.field div.textarea table td table td a,
3641 3653 #clone_url,
3642 3654 #clone_url_id
3643 3655 {
3644 3656 border: none;
3645 3657 }
3646 3658
3647 3659 img.icon,.right .merge img {
3648 3660 vertical-align: bottom;
3649 3661 }
3650 3662
3651 3663 #header ul#logged-user,#content div.box div.title ul.links,
3652 3664 #content div.box div.message div.dismiss,
3653 3665 #content div.box div.traffic div.legend ul
3654 3666 {
3655 3667 float: right;
3656 3668 margin: 0;
3657 3669 padding: 0;
3658 3670 }
3659 3671
3660 3672 #header #header-inner #home,#header #header-inner #logo,
3661 3673 #content div.box ul.left,#content div.box ol.left,
3662 3674 #content div.box div.pagination-left,div#commit_history,
3663 3675 div#legend_data,div#legend_container,div#legend_choices
3664 3676 {
3665 3677 float: left;
3666 3678 }
3667 3679
3668 3680 #header #header-inner #quick li #quick_login,
3669 3681 #header #header-inner #quick li:hover ul ul,
3670 3682 #header #header-inner #quick li:hover ul ul ul,
3671 3683 #header #header-inner #quick li:hover ul ul ul ul,
3672 3684 #content #left #menu ul.closed,#content #left #menu li ul.collapsed,.yui-tt-shadow
3673 3685 {
3674 3686 display: none;
3675 3687 }
3676 3688
3677 3689 #header #header-inner #quick li:hover #quick_login,
3678 3690 #header #header-inner #quick li:hover ul,#header #header-inner #quick li li:hover ul,#header #header-inner #quick li li li:hover ul,#header #header-inner #quick li li li li:hover ul,#content #left #menu ul.opened,#content #left #menu li ul.expanded
3679 3691 {
3680 3692 display: block;
3681 3693 }
3682 3694
3683 3695 #content div.graph {
3684 3696 padding: 0 10px 10px;
3685 3697 }
3686 3698
3687 3699 #content div.box div.title ul.links li a:hover,#content div.box div.title ul.links li.ui-tabs-selected a
3688 3700 {
3689 3701 color: #bfe3ff;
3690 3702 }
3691 3703
3692 3704 #content div.box ol.lower-roman,#content div.box ol.upper-roman,#content div.box ol.lower-alpha,#content div.box ol.upper-alpha,#content div.box ol.decimal
3693 3705 {
3694 3706 margin: 10px 24px 10px 44px;
3695 3707 }
3696 3708
3697 3709 #content div.box div.form,#content div.box div.table,#content div.box div.traffic
3698 3710 {
3699 3711 clear: both;
3700 3712 overflow: hidden;
3701 3713 margin: 0;
3702 3714 padding: 0 20px 10px;
3703 3715 }
3704 3716
3705 3717 #content div.box div.form div.fields,#login div.form,#login div.form div.fields,#register div.form,#register div.form div.fields
3706 3718 {
3707 3719 clear: both;
3708 3720 overflow: hidden;
3709 3721 margin: 0;
3710 3722 padding: 0;
3711 3723 }
3712 3724
3713 3725 #content div.box div.form div.fields div.field div.label span,#login div.form div.fields div.field div.label span,#register div.form div.fields div.field div.label span
3714 3726 {
3715 3727 height: 1%;
3716 3728 display: block;
3717 3729 color: #363636;
3718 3730 margin: 0;
3719 3731 padding: 2px 0 0;
3720 3732 }
3721 3733
3722 3734 #content div.box div.form div.fields div.field div.input input.error,#login div.form div.fields div.field div.input input.error,#register div.form div.fields div.field div.input input.error
3723 3735 {
3724 3736 background: #FBE3E4;
3725 3737 border-top: 1px solid #e1b2b3;
3726 3738 border-left: 1px solid #e1b2b3;
3727 3739 border-right: 1px solid #FBC2C4;
3728 3740 border-bottom: 1px solid #FBC2C4;
3729 3741 }
3730 3742
3731 3743 #content div.box div.form div.fields div.field div.input input.success,#login div.form div.fields div.field div.input input.success,#register div.form div.fields div.field div.input input.success
3732 3744 {
3733 3745 background: #E6EFC2;
3734 3746 border-top: 1px solid #cebb98;
3735 3747 border-left: 1px solid #cebb98;
3736 3748 border-right: 1px solid #c6d880;
3737 3749 border-bottom: 1px solid #c6d880;
3738 3750 }
3739 3751
3740 3752 #content div.box-left div.form div.fields div.field div.textarea,#content div.box-right div.form div.fields div.field div.textarea,#content div.box div.form div.fields div.field div.select select,#content div.box table th.selected input,#content div.box table td.selected input
3741 3753 {
3742 3754 margin: 0;
3743 3755 }
3744 3756
3745 3757 #content div.box-left div.form div.fields div.field div.select,#content div.box-left div.form div.fields div.field div.checkboxes,#content div.box-left div.form div.fields div.field div.radios,#content div.box-right div.form div.fields div.field div.select,#content div.box-right div.form div.fields div.field div.checkboxes,#content div.box-right div.form div.fields div.field div.radios
3746 3758 {
3747 3759 margin: 0 0 0 0px !important;
3748 3760 padding: 0;
3749 3761 }
3750 3762
3751 3763 #content div.box div.form div.fields div.field div.select,#content div.box div.form div.fields div.field div.checkboxes,#content div.box div.form div.fields div.field div.radios
3752 3764 {
3753 3765 margin: 0 0 0 200px;
3754 3766 padding: 0;
3755 3767 }
3756 3768
3757 3769 #content div.box div.form div.fields div.field div.select a:hover,#content div.box div.form div.fields div.field div.select a.ui-selectmenu:hover,#content div.box div.action a:hover
3758 3770 {
3759 3771 color: #000;
3760 3772 text-decoration: none;
3761 3773 }
3762 3774
3763 3775 #content div.box div.form div.fields div.field div.select a.ui-selectmenu-focus,#content div.box div.action a.ui-selectmenu-focus
3764 3776 {
3765 3777 border: 1px solid #666;
3766 3778 }
3767 3779
3768 3780 #content div.box div.form div.fields div.field div.checkboxes div.checkbox,#content div.box div.form div.fields div.field div.radios div.radio
3769 3781 {
3770 3782 clear: both;
3771 3783 overflow: hidden;
3772 3784 margin: 0;
3773 3785 padding: 8px 0 2px;
3774 3786 }
3775 3787
3776 3788 #content div.box div.form div.fields div.field div.checkboxes div.checkbox input,#content div.box div.form div.fields div.field div.radios div.radio input
3777 3789 {
3778 3790 float: left;
3779 3791 margin: 0;
3780 3792 }
3781 3793
3782 3794 #content div.box div.form div.fields div.field div.checkboxes div.checkbox label,#content div.box div.form div.fields div.field div.radios div.radio label
3783 3795 {
3784 3796 height: 1%;
3785 3797 display: block;
3786 3798 float: left;
3787 3799 margin: 2px 0 0 4px;
3788 3800 }
3789 3801
3790 3802 div.form div.fields div.field div.button input,
3791 3803 #content div.box div.form div.fields div.buttons input
3792 3804 div.form div.fields div.buttons input,
3793 3805 #content div.box div.action div.button input {
3794 3806 /*color: #000;*/
3795 3807 font-size: 11px;
3796 3808 font-weight: 700;
3797 3809 margin: 0;
3798 3810 }
3799 3811
3800 3812 input.ui-button {
3801 3813 background: #e5e3e3 url("../images/button.png") repeat-x;
3802 3814 border-top: 1px solid #DDD;
3803 3815 border-left: 1px solid #c6c6c6;
3804 3816 border-right: 1px solid #DDD;
3805 3817 border-bottom: 1px solid #c6c6c6;
3806 3818 color: #515151 !important;
3807 3819 outline: none;
3808 3820 margin: 0;
3809 3821 padding: 6px 12px;
3810 3822 -webkit-border-radius: 4px 4px 4px 4px;
3811 3823 -khtml-border-radius: 4px 4px 4px 4px;
3812 3824 -moz-border-radius: 4px 4px 4px 4px;
3813 3825 border-radius: 4px 4px 4px 4px;
3814 3826 box-shadow: 0 1px 0 #ececec;
3815 3827 cursor: pointer;
3816 3828 }
3817 3829
3818 3830 input.ui-button:hover {
3819 3831 background: #b4b4b4 url("../images/button_selected.png") repeat-x;
3820 3832 border-top: 1px solid #ccc;
3821 3833 border-left: 1px solid #bebebe;
3822 3834 border-right: 1px solid #b1b1b1;
3823 3835 border-bottom: 1px solid #afafaf;
3824 3836 }
3825 3837
3826 3838 div.form div.fields div.field div.highlight,#content div.box div.form div.fields div.buttons div.highlight
3827 3839 {
3828 3840 display: inline;
3829 3841 }
3830 3842
3831 3843 #content div.box div.form div.fields div.buttons,div.form div.fields div.buttons
3832 3844 {
3833 3845 margin: 10px 0 0 200px;
3834 3846 padding: 0;
3835 3847 }
3836 3848
3837 3849 #content div.box-left div.form div.fields div.buttons,#content div.box-right div.form div.fields div.buttons,div.box-left div.form div.fields div.buttons,div.box-right div.form div.fields div.buttons
3838 3850 {
3839 3851 margin: 10px 0 0;
3840 3852 }
3841 3853
3842 3854 #content div.box table td.user,#content div.box table td.address {
3843 3855 width: 10%;
3844 3856 text-align: center;
3845 3857 }
3846 3858
3847 3859 #content div.box div.action div.button,#login div.form div.fields div.field div.input div.link,#register div.form div.fields div.field div.input div.link
3848 3860 {
3849 3861 text-align: right;
3850 3862 margin: 6px 0 0;
3851 3863 padding: 0;
3852 3864 }
3853 3865
3854 3866 #content div.box div.action div.button input.ui-state-hover,#login div.form div.fields div.buttons input.ui-state-hover,#register div.form div.fields div.buttons input.ui-state-hover
3855 3867 {
3856 3868 background: #b4b4b4 url("../images/button_selected.png") repeat-x;
3857 3869 border-top: 1px solid #ccc;
3858 3870 border-left: 1px solid #bebebe;
3859 3871 border-right: 1px solid #b1b1b1;
3860 3872 border-bottom: 1px solid #afafaf;
3861 3873 color: #515151;
3862 3874 margin: 0;
3863 3875 padding: 6px 12px;
3864 3876 }
3865 3877
3866 3878 #content div.box div.pagination div.results,#content div.box div.pagination-wh div.results
3867 3879 {
3868 3880 text-align: left;
3869 3881 float: left;
3870 3882 margin: 0;
3871 3883 padding: 0;
3872 3884 }
3873 3885
3874 3886 #content div.box div.pagination div.results span,#content div.box div.pagination-wh div.results span
3875 3887 {
3876 3888 height: 1%;
3877 3889 display: block;
3878 3890 float: left;
3879 3891 background: #ebebeb url("../images/pager.png") repeat-x;
3880 3892 border-top: 1px solid #dedede;
3881 3893 border-left: 1px solid #cfcfcf;
3882 3894 border-right: 1px solid #c4c4c4;
3883 3895 border-bottom: 1px solid #c4c4c4;
3884 3896 color: #4A4A4A;
3885 3897 font-weight: 700;
3886 3898 margin: 0;
3887 3899 padding: 6px 8px;
3888 3900 }
3889 3901
3890 3902 #content div.box div.pagination ul.pager li.disabled,#content div.box div.pagination-wh a.disabled
3891 3903 {
3892 3904 color: #B4B4B4;
3893 3905 padding: 6px;
3894 3906 }
3895 3907
3896 3908 #login,#register {
3897 3909 width: 520px;
3898 3910 margin: 10% auto 0;
3899 3911 padding: 0;
3900 3912 }
3901 3913
3902 3914 #login div.color,#register div.color {
3903 3915 clear: both;
3904 3916 overflow: hidden;
3905 3917 background: #FFF;
3906 3918 margin: 10px auto 0;
3907 3919 padding: 3px 3px 3px 0;
3908 3920 }
3909 3921
3910 3922 #login div.color a,#register div.color a {
3911 3923 width: 20px;
3912 3924 height: 20px;
3913 3925 display: block;
3914 3926 float: left;
3915 3927 margin: 0 0 0 3px;
3916 3928 padding: 0;
3917 3929 }
3918 3930
3919 3931 #login div.title h5,#register div.title h5 {
3920 3932 color: #fff;
3921 3933 margin: 10px;
3922 3934 padding: 0;
3923 3935 }
3924 3936
3925 3937 #login div.form div.fields div.field,#register div.form div.fields div.field
3926 3938 {
3927 3939 clear: both;
3928 3940 overflow: hidden;
3929 3941 margin: 0;
3930 3942 padding: 0 0 10px;
3931 3943 }
3932 3944
3933 3945 #login div.form div.fields div.field span.error-message,#register div.form div.fields div.field span.error-message
3934 3946 {
3935 3947 height: 1%;
3936 3948 display: block;
3937 3949 color: red;
3938 3950 margin: 8px 0 0;
3939 3951 padding: 0;
3940 3952 max-width: 320px;
3941 3953 }
3942 3954
3943 3955 #login div.form div.fields div.field div.label label,#register div.form div.fields div.field div.label label
3944 3956 {
3945 3957 color: #000;
3946 3958 font-weight: 700;
3947 3959 }
3948 3960
3949 3961 #login div.form div.fields div.field div.input,#register div.form div.fields div.field div.input
3950 3962 {
3951 3963 float: left;
3952 3964 margin: 0;
3953 3965 padding: 0;
3954 3966 }
3955 3967
3956 3968 #login div.form div.fields div.field div.checkbox,#register div.form div.fields div.field div.checkbox
3957 3969 {
3958 3970 margin: 0 0 0 184px;
3959 3971 padding: 0;
3960 3972 }
3961 3973
3962 3974 #login div.form div.fields div.field div.checkbox label,#register div.form div.fields div.field div.checkbox label
3963 3975 {
3964 3976 color: #565656;
3965 3977 font-weight: 700;
3966 3978 }
3967 3979
3968 3980 #login div.form div.fields div.buttons input,#register div.form div.fields div.buttons input
3969 3981 {
3970 3982 color: #000;
3971 3983 font-size: 1em;
3972 3984 font-weight: 700;
3973 3985 margin: 0;
3974 3986 }
3975 3987
3976 3988 #changeset_content .container .wrapper,#graph_content .container .wrapper
3977 3989 {
3978 3990 width: 600px;
3979 3991 }
3980 3992
3981 3993 #changeset_content .container .left {
3982 3994 float: left;
3983 3995 width: 75%;
3984 3996 padding-left: 5px;
3985 3997 }
3986 3998
3987 3999 #changeset_content .container .left .date,.ac .match {
3988 4000 font-weight: 700;
3989 4001 padding-top: 5px;
3990 4002 padding-bottom: 5px;
3991 4003 }
3992 4004
3993 4005 div#legend_container table td,div#legend_choices table td {
3994 4006 border: none !important;
3995 4007 height: 20px !important;
3996 4008 padding: 0 !important;
3997 4009 }
3998 4010
3999 4011 .q_filter_box {
4000 4012 -webkit-box-shadow: rgba(0,0,0,0.07) 0 1px 2px inset;
4001 4013 -webkit-border-radius: 4px;
4002 4014 -moz-border-radius: 4px;
4003 4015 border-radius: 4px;
4004 4016 border: 0 none;
4005 4017 color: #AAAAAA;
4006 4018 margin-bottom: -4px;
4007 4019 margin-top: -4px;
4008 4020 padding-left: 3px;
4009 4021 }
4010 4022
4011 4023 #node_filter {
4012 4024 border: 0px solid #545454;
4013 4025 color: #AAAAAA;
4014 4026 padding-left: 3px;
4015 4027 }
4016 4028
4017 4029
4018 4030 .group_members_wrap{
4019 4031 min-height: 85px;
4020 4032 padding-left: 20px;
4021 4033 }
4022 4034
4023 4035 .group_members .group_member{
4024 4036 height: 30px;
4025 4037 padding:0px 0px 0px 0px;
4026 4038 }
4027 4039
4028 4040 .reviewers_member{
4029 4041 height: 15px;
4030 4042 padding:0px 0px 0px 10px;
4031 4043 }
4032 4044
4033 4045 .emails_wrap{
4034 4046 padding: 0px 20px;
4035 4047 }
4036 4048
4037 4049 .emails_wrap .email_entry{
4038 4050 height: 30px;
4039 4051 padding:0px 0px 0px 10px;
4040 4052 }
4041 4053 .emails_wrap .email_entry .email{
4042 4054 float: left
4043 4055 }
4044 4056 .emails_wrap .email_entry .email_action{
4045 4057 float: left
4046 4058 }
4047 4059
4048 4060 .ips_wrap{
4049 4061 padding: 0px 20px;
4050 4062 }
4051 4063
4052 4064 .ips_wrap .ip_entry{
4053 4065 height: 30px;
4054 4066 padding:0px 0px 0px 10px;
4055 4067 }
4056 4068 .ips_wrap .ip_entry .ip{
4057 4069 float: left
4058 4070 }
4059 4071 .ips_wrap .ip_entry .ip_action{
4060 4072 float: left
4061 4073 }
4062 4074
4063 4075
4064 4076 /*README STYLE*/
4065 4077
4066 4078 div.readme {
4067 4079 padding:0px;
4068 4080 }
4069 4081
4070 4082 div.readme h2 {
4071 4083 font-weight: normal;
4072 4084 }
4073 4085
4074 4086 div.readme .readme_box {
4075 4087 background-color: #fafafa;
4076 4088 }
4077 4089
4078 4090 div.readme .readme_box {
4079 4091 clear:both;
4080 4092 overflow:hidden;
4081 4093 margin:0;
4082 4094 padding:0 20px 10px;
4083 4095 }
4084 4096
4085 4097 div.readme .readme_box h1, div.readme .readme_box h2, div.readme .readme_box h3, div.readme .readme_box h4, div.readme .readme_box h5, div.readme .readme_box h6 {
4086 4098 border-bottom: 0 !important;
4087 4099 margin: 0 !important;
4088 4100 padding: 0 !important;
4089 4101 line-height: 1.5em !important;
4090 4102 }
4091 4103
4092 4104
4093 4105 div.readme .readme_box h1:first-child {
4094 4106 padding-top: .25em !important;
4095 4107 }
4096 4108
4097 4109 div.readme .readme_box h2, div.readme .readme_box h3 {
4098 4110 margin: 1em 0 !important;
4099 4111 }
4100 4112
4101 4113 div.readme .readme_box h2 {
4102 4114 margin-top: 1.5em !important;
4103 4115 border-top: 4px solid #e0e0e0 !important;
4104 4116 padding-top: .5em !important;
4105 4117 }
4106 4118
4107 4119 div.readme .readme_box p {
4108 4120 color: black !important;
4109 4121 margin: 1em 0 !important;
4110 4122 line-height: 1.5em !important;
4111 4123 }
4112 4124
4113 4125 div.readme .readme_box ul {
4114 4126 list-style: disc !important;
4115 4127 margin: 1em 0 1em 2em !important;
4116 4128 }
4117 4129
4118 4130 div.readme .readme_box ol {
4119 4131 list-style: decimal;
4120 4132 margin: 1em 0 1em 2em !important;
4121 4133 }
4122 4134
4123 4135 div.readme .readme_box pre, code {
4124 4136 font: 12px "Bitstream Vera Sans Mono","Courier",monospace;
4125 4137 }
4126 4138
4127 4139 div.readme .readme_box code {
4128 4140 font-size: 12px !important;
4129 4141 background-color: ghostWhite !important;
4130 4142 color: #444 !important;
4131 4143 padding: 0 .2em !important;
4132 4144 border: 1px solid #dedede !important;
4133 4145 }
4134 4146
4135 4147 div.readme .readme_box pre code {
4136 4148 padding: 0 !important;
4137 4149 font-size: 12px !important;
4138 4150 background-color: #eee !important;
4139 4151 border: none !important;
4140 4152 }
4141 4153
4142 4154 div.readme .readme_box pre {
4143 4155 margin: 1em 0;
4144 4156 font-size: 12px;
4145 4157 background-color: #eee;
4146 4158 border: 1px solid #ddd;
4147 4159 padding: 5px;
4148 4160 color: #444;
4149 4161 overflow: auto;
4150 4162 -webkit-box-shadow: rgba(0,0,0,0.07) 0 1px 2px inset;
4151 4163 -webkit-border-radius: 3px;
4152 4164 -moz-border-radius: 3px;
4153 4165 border-radius: 3px;
4154 4166 }
4155 4167
4156 4168 div.readme .readme_box table {
4157 4169 display: table;
4158 4170 border-collapse: separate;
4159 4171 border-spacing: 2px;
4160 4172 border-color: gray;
4161 4173 width: auto !important;
4162 4174 }
4163 4175
4164 4176
4165 4177 /** RST STYLE **/
4166 4178
4167 4179
4168 4180 div.rst-block {
4169 4181 padding:0px;
4170 4182 }
4171 4183
4172 4184 div.rst-block h2 {
4173 4185 font-weight: normal;
4174 4186 }
4175 4187
4176 4188 div.rst-block {
4177 4189 background-color: #fafafa;
4178 4190 }
4179 4191
4180 4192 div.rst-block {
4181 4193 clear:both;
4182 4194 overflow:hidden;
4183 4195 margin:0;
4184 4196 padding:0 20px 10px;
4185 4197 }
4186 4198
4187 4199 div.rst-block h1, div.rst-block h2, div.rst-block h3, div.rst-block h4, div.rst-block h5, div.rst-block h6 {
4188 4200 border-bottom: 0 !important;
4189 4201 margin: 0 !important;
4190 4202 padding: 0 !important;
4191 4203 line-height: 1.5em !important;
4192 4204 }
4193 4205
4194 4206
4195 4207 div.rst-block h1:first-child {
4196 4208 padding-top: .25em !important;
4197 4209 }
4198 4210
4199 4211 div.rst-block h2, div.rst-block h3 {
4200 4212 margin: 1em 0 !important;
4201 4213 }
4202 4214
4203 4215 div.rst-block h2 {
4204 4216 margin-top: 1.5em !important;
4205 4217 border-top: 4px solid #e0e0e0 !important;
4206 4218 padding-top: .5em !important;
4207 4219 }
4208 4220
4209 4221 div.rst-block p {
4210 4222 color: black !important;
4211 4223 margin: 1em 0 !important;
4212 4224 line-height: 1.5em !important;
4213 4225 }
4214 4226
4215 4227 div.rst-block ul {
4216 4228 list-style: disc !important;
4217 4229 margin: 1em 0 1em 2em !important;
4218 4230 }
4219 4231
4220 4232 div.rst-block ol {
4221 4233 list-style: decimal;
4222 4234 margin: 1em 0 1em 2em !important;
4223 4235 }
4224 4236
4225 4237 div.rst-block pre, code {
4226 4238 font: 12px "Bitstream Vera Sans Mono","Courier",monospace;
4227 4239 }
4228 4240
4229 4241 div.rst-block code {
4230 4242 font-size: 12px !important;
4231 4243 background-color: ghostWhite !important;
4232 4244 color: #444 !important;
4233 4245 padding: 0 .2em !important;
4234 4246 border: 1px solid #dedede !important;
4235 4247 }
4236 4248
4237 4249 div.rst-block pre code {
4238 4250 padding: 0 !important;
4239 4251 font-size: 12px !important;
4240 4252 background-color: #eee !important;
4241 4253 border: none !important;
4242 4254 }
4243 4255
4244 4256 div.rst-block pre {
4245 4257 margin: 1em 0;
4246 4258 font-size: 12px;
4247 4259 background-color: #eee;
4248 4260 border: 1px solid #ddd;
4249 4261 padding: 5px;
4250 4262 color: #444;
4251 4263 overflow: auto;
4252 4264 -webkit-box-shadow: rgba(0,0,0,0.07) 0 1px 2px inset;
4253 4265 -webkit-border-radius: 3px;
4254 4266 -moz-border-radius: 3px;
4255 4267 border-radius: 3px;
4256 4268 }
4257 4269
4258 4270
4259 4271 /** comment main **/
4260 4272 .comments {
4261 4273 padding:10px 20px;
4262 4274 }
4263 4275
4264 4276 .comments .comment {
4265 4277 border: 1px solid #ddd;
4266 4278 margin-top: 10px;
4267 4279 -webkit-border-radius: 4px;
4268 4280 -moz-border-radius: 4px;
4269 4281 border-radius: 4px;
4270 4282 }
4271 4283
4272 4284 .comments .comment .meta {
4273 4285 background: #f8f8f8;
4274 4286 padding: 4px;
4275 4287 border-bottom: 1px solid #ddd;
4276 4288 height: 18px;
4277 4289 }
4278 4290
4279 4291 .comments .comment .meta img {
4280 4292 vertical-align: middle;
4281 4293 }
4282 4294
4283 4295 .comments .comment .meta .user {
4284 4296 font-weight: bold;
4285 4297 float: left;
4286 4298 padding: 4px 2px 2px 2px;
4287 4299 }
4288 4300
4289 4301 .comments .comment .meta .date {
4290 4302 float: left;
4291 4303 padding:4px 4px 0px 4px;
4292 4304 }
4293 4305
4294 4306 .comments .comment .text {
4295 4307 background-color: #FAFAFA;
4296 4308 }
4297 4309 .comment .text div.rst-block p {
4298 4310 margin: 0.5em 0px !important;
4299 4311 }
4300 4312
4301 4313 .comments .comments-number{
4302 4314 padding:0px 0px 10px 0px;
4303 4315 font-weight: bold;
4304 4316 color: #666;
4305 4317 font-size: 16px;
4306 4318 }
4307 4319
4308 4320 /** comment form **/
4309 4321
4310 4322 .status-block{
4311 4323 height:80px;
4312 4324 clear:both
4313 4325 }
4314 4326
4315 4327 .comment-form .clearfix{
4316 4328 background: #EEE;
4317 4329 -webkit-border-radius: 4px;
4318 4330 -moz-border-radius: 4px;
4319 4331 border-radius: 4px;
4320 4332 padding: 10px;
4321 4333 }
4322 4334
4323 4335 div.comment-form {
4324 4336 margin-top: 20px;
4325 4337 }
4326 4338
4327 4339 .comment-form strong {
4328 4340 display: block;
4329 4341 margin-bottom: 15px;
4330 4342 }
4331 4343
4332 4344 .comment-form textarea {
4333 4345 width: 100%;
4334 4346 height: 100px;
4335 4347 font-family: 'Monaco', 'Courier', 'Courier New', monospace;
4336 4348 }
4337 4349
4338 4350 form.comment-form {
4339 4351 margin-top: 10px;
4340 4352 margin-left: 10px;
4341 4353 }
4342 4354
4343 4355 .comment-form-submit {
4344 4356 margin-top: 5px;
4345 4357 margin-left: 525px;
4346 4358 }
4347 4359
4348 4360 .file-comments {
4349 4361 display: none;
4350 4362 }
4351 4363
4352 4364 .comment-form .comment {
4353 4365 margin-left: 10px;
4354 4366 }
4355 4367
4356 4368 .comment-form .comment-help{
4357 4369 padding: 0px 0px 5px 0px;
4358 4370 color: #666;
4359 4371 }
4360 4372
4361 4373 .comment-form .comment-button{
4362 4374 padding-top:5px;
4363 4375 }
4364 4376
4365 4377 .add-another-button {
4366 4378 margin-left: 10px;
4367 4379 margin-top: 10px;
4368 4380 margin-bottom: 10px;
4369 4381 }
4370 4382
4371 4383 .comment .buttons {
4372 4384 float: right;
4373 4385 padding:2px 2px 0px 0px;
4374 4386 }
4375 4387
4376 4388
4377 4389 .show-inline-comments{
4378 4390 position: relative;
4379 4391 top:1px
4380 4392 }
4381 4393
4382 4394 /** comment inline form **/
4383 4395 .comment-inline-form .overlay{
4384 4396 display: none;
4385 4397 }
4386 4398 .comment-inline-form .overlay.submitting{
4387 4399 display:block;
4388 4400 background: none repeat scroll 0 0 white;
4389 4401 font-size: 16px;
4390 4402 opacity: 0.5;
4391 4403 position: absolute;
4392 4404 text-align: center;
4393 4405 vertical-align: top;
4394 4406
4395 4407 }
4396 4408 .comment-inline-form .overlay.submitting .overlay-text{
4397 4409 width:100%;
4398 4410 margin-top:5%;
4399 4411 }
4400 4412
4401 4413 .comment-inline-form .clearfix{
4402 4414 background: #EEE;
4403 4415 -webkit-border-radius: 4px;
4404 4416 -moz-border-radius: 4px;
4405 4417 border-radius: 4px;
4406 4418 padding: 5px;
4407 4419 }
4408 4420
4409 4421 div.comment-inline-form {
4410 4422 padding:4px 0px 6px 0px;
4411 4423 }
4412 4424
4413 4425
4414 4426 tr.hl-comment{
4415 4427 /*
4416 4428 background-color: #FFFFCC !important;
4417 4429 */
4418 4430 }
4419 4431
4420 4432 /*
4421 4433 tr.hl-comment pre {
4422 4434 border-top: 2px solid #FFEE33;
4423 4435 border-left: 2px solid #FFEE33;
4424 4436 border-right: 2px solid #FFEE33;
4425 4437 }
4426 4438 */
4427 4439
4428 4440 .comment-inline-form strong {
4429 4441 display: block;
4430 4442 margin-bottom: 15px;
4431 4443 }
4432 4444
4433 4445 .comment-inline-form textarea {
4434 4446 width: 100%;
4435 4447 height: 100px;
4436 4448 font-family: 'Monaco', 'Courier', 'Courier New', monospace;
4437 4449 }
4438 4450
4439 4451 form.comment-inline-form {
4440 4452 margin-top: 10px;
4441 4453 margin-left: 10px;
4442 4454 }
4443 4455
4444 4456 .comment-inline-form-submit {
4445 4457 margin-top: 5px;
4446 4458 margin-left: 525px;
4447 4459 }
4448 4460
4449 4461 .file-comments {
4450 4462 display: none;
4451 4463 }
4452 4464
4453 4465 .comment-inline-form .comment {
4454 4466 margin-left: 10px;
4455 4467 }
4456 4468
4457 4469 .comment-inline-form .comment-help{
4458 4470 padding: 0px 0px 2px 0px;
4459 4471 color: #666666;
4460 4472 font-size: 10px;
4461 4473 }
4462 4474
4463 4475 .comment-inline-form .comment-button{
4464 4476 padding-top:5px;
4465 4477 }
4466 4478
4467 4479 /** comment inline **/
4468 4480 .inline-comments {
4469 4481 padding:10px 20px;
4470 4482 }
4471 4483
4472 4484 .inline-comments div.rst-block {
4473 4485 clear:both;
4474 4486 overflow:hidden;
4475 4487 margin:0;
4476 4488 padding:0 20px 0px;
4477 4489 }
4478 4490 .inline-comments .comment {
4479 4491 border: 1px solid #ddd;
4480 4492 -webkit-border-radius: 4px;
4481 4493 -moz-border-radius: 4px;
4482 4494 border-radius: 4px;
4483 4495 margin: 3px 3px 5px 5px;
4484 4496 background-color: #FAFAFA;
4485 4497 }
4486 4498 .inline-comments .add-comment {
4487 4499 padding: 2px 4px 8px 5px;
4488 4500 }
4489 4501
4490 4502 .inline-comments .comment-wrapp{
4491 4503 padding:1px;
4492 4504 }
4493 4505 .inline-comments .comment .meta {
4494 4506 background: #f8f8f8;
4495 4507 padding: 4px;
4496 4508 border-bottom: 1px solid #ddd;
4497 4509 height: 20px;
4498 4510 }
4499 4511
4500 4512 .inline-comments .comment .meta img {
4501 4513 vertical-align: middle;
4502 4514 }
4503 4515
4504 4516 .inline-comments .comment .meta .user {
4505 4517 font-weight: bold;
4506 4518 float:left;
4507 4519 padding: 3px;
4508 4520 }
4509 4521
4510 4522 .inline-comments .comment .meta .date {
4511 4523 float:left;
4512 4524 padding: 3px;
4513 4525 }
4514 4526
4515 4527 .inline-comments .comment .text {
4516 4528 background-color: #FAFAFA;
4517 4529 }
4518 4530
4519 4531 .inline-comments .comments-number{
4520 4532 padding:0px 0px 10px 0px;
4521 4533 font-weight: bold;
4522 4534 color: #666;
4523 4535 font-size: 16px;
4524 4536 }
4525 4537 .inline-comments-button .add-comment{
4526 4538 margin:2px 0px 8px 5px !important
4527 4539 }
4528 4540
4529 4541
4530 4542 .notification-paginator{
4531 4543 padding: 0px 0px 4px 16px;
4532 4544 float: left;
4533 4545 }
4534 4546
4535 4547 .menu_link_user{
4536 4548 padding: 10px 8px 8px 8px !important;
4537 4549 }
4538 4550
4539 4551 .menu_link_notifications {
4540 4552 padding: 4px 4px !important;
4541 4553 margin: 7px 4px 0px 0px !important;
4542 4554 text-align: center;
4543 4555 color:#888 !important;
4544 4556 font-size: 10px;
4545 4557 background-color: #DEDEDE !important;
4546 4558 border-radius: 4px !important;
4547 4559 -webkit-border-radius: 4px !important;
4548 4560 -moz-border-radius: 4px !important;
4549 4561 }
4550 4562
4551 4563 .notification-header{
4552 4564 padding-top:6px;
4553 4565 }
4554 4566 .notification-header .desc{
4555 4567 font-size: 16px;
4556 4568 height: 24px;
4557 4569 float: left
4558 4570 }
4559 4571 .notification-list .container.unread{
4560 4572 background: none repeat scroll 0 0 rgba(255, 255, 180, 0.6);
4561 4573 }
4562 4574 .notification-header .gravatar{
4563 4575 background: none repeat scroll 0 0 transparent;
4564 4576 padding: 0px 0px 0px 8px;
4565 4577 }
4566 4578 .notification-list .container .notification-header .desc{
4567 4579 font-weight: bold;
4568 4580 font-size: 17px;
4569 4581 }
4570 4582 .notification-table{
4571 4583 border: 1px solid #ccc;
4572 4584 -webkit-border-radius: 6px 6px 6px 6px;
4573 4585 -moz-border-radius: 6px 6px 6px 6px;
4574 4586 border-radius: 6px 6px 6px 6px;
4575 4587 clear: both;
4576 4588 margin: 0px 20px 0px 20px;
4577 4589 }
4578 4590 .notification-header .delete-notifications{
4579 4591 float: right;
4580 4592 padding-top: 8px;
4581 4593 cursor: pointer;
4582 4594 }
4583 4595 .notification-header .read-notifications{
4584 4596 float: right;
4585 4597 padding-top: 8px;
4586 4598 cursor: pointer;
4587 4599 }
4588 4600 .notification-subject{
4589 4601 clear:both;
4590 4602 border-bottom: 1px solid #eee;
4591 4603 padding:5px 0px 5px 38px;
4592 4604 }
4593 4605
4594 4606 .notification-body{
4595 4607 clear:both;
4596 4608 margin: 34px 2px 2px 8px
4597 4609 }
4598 4610
4599 4611 /****
4600 4612 PULL REQUESTS
4601 4613 *****/
4602 4614 .pullrequests_section_head {
4603 4615 padding:10px 10px 10px 0px;
4604 4616 font-size:16px;
4605 4617 font-weight: bold;
4606 4618 }
4607 4619
4608 4620 /****
4609 4621 PERMS
4610 4622 *****/
4611 4623 #perms .perms_section_head {
4612 4624 padding:10px 10px 10px 0px;
4613 4625 font-size:16px;
4614 4626 font-weight: bold;
4615 4627 }
4616 4628
4617 4629 #perms .perm_tag{
4618 4630 padding: 1px 3px 1px 3px;
4619 4631 font-size: 10px;
4620 4632 font-weight: bold;
4621 4633 text-transform: uppercase;
4622 4634 white-space: nowrap;
4623 4635 -webkit-border-radius: 3px;
4624 4636 -moz-border-radius: 3px;
4625 4637 border-radius: 3px;
4626 4638 }
4627 4639
4628 4640 #perms .perm_tag.admin{
4629 4641 background-color: #B94A48;
4630 4642 color: #ffffff;
4631 4643 }
4632 4644
4633 4645 #perms .perm_tag.write{
4634 4646 background-color: #DB7525;
4635 4647 color: #ffffff;
4636 4648 }
4637 4649
4638 4650 #perms .perm_tag.read{
4639 4651 background-color: #468847;
4640 4652 color: #ffffff;
4641 4653 }
4642 4654
4643 4655 #perms .perm_tag.none{
4644 4656 background-color: #bfbfbf;
4645 4657 color: #ffffff;
4646 4658 }
4647 4659
4648 4660 .perm-gravatar{
4649 4661 vertical-align:middle;
4650 4662 padding:2px;
4651 4663 }
4652 4664 .perm-gravatar-ac{
4653 4665 vertical-align:middle;
4654 4666 padding:2px;
4655 4667 width: 14px;
4656 4668 height: 14px;
4657 4669 }
4658 4670
4659 4671 /*****************************************************************************
4660 4672 DIFFS CSS
4661 4673 ******************************************************************************/
4662 4674
4663 4675 div.diffblock {
4664 4676 overflow: auto;
4665 4677 padding: 0px;
4666 4678 border: 1px solid #ccc;
4667 4679 background: #f8f8f8;
4668 4680 font-size: 100%;
4669 4681 line-height: 100%;
4670 4682 /* new */
4671 4683 line-height: 125%;
4672 4684 -webkit-border-radius: 6px 6px 0px 0px;
4673 4685 -moz-border-radius: 6px 6px 0px 0px;
4674 4686 border-radius: 6px 6px 0px 0px;
4675 4687 }
4676 4688 div.diffblock.margined{
4677 4689 margin: 0px 20px 0px 20px;
4678 4690 }
4679 4691 div.diffblock .code-header{
4680 4692 border-bottom: 1px solid #CCCCCC;
4681 4693 background: #EEEEEE;
4682 4694 padding:10px 0 10px 0;
4683 4695 height: 14px;
4684 4696 }
4685 4697
4686 4698 div.diffblock .code-header.banner{
4687 4699 border-bottom: 1px solid #CCCCCC;
4688 4700 background: #EEEEEE;
4689 4701 height: 14px;
4690 4702 margin: 0px 95px 0px 95px;
4691 4703 padding: 3px 3px 11px 3px;
4692 4704 }
4693 4705
4694 4706 div.diffblock .code-header.cv{
4695 4707 height: 34px;
4696 4708 }
4697 4709 div.diffblock .code-header-title{
4698 4710 padding: 0px 0px 10px 5px !important;
4699 4711 margin: 0 !important;
4700 4712 }
4701 4713 div.diffblock .code-header .hash{
4702 4714 float: left;
4703 4715 padding: 2px 0 0 2px;
4704 4716 }
4705 4717 div.diffblock .code-header .date{
4706 4718 float:left;
4707 4719 text-transform: uppercase;
4708 4720 padding: 2px 0px 0px 2px;
4709 4721 }
4710 4722 div.diffblock .code-header div{
4711 4723 margin-left:4px;
4712 4724 font-weight: bold;
4713 4725 font-size: 14px;
4714 4726 }
4715 4727
4716 4728 div.diffblock .parents {
4717 4729 float: left;
4718 4730 height: 26px;
4719 4731 width:100px;
4720 4732 font-size: 10px;
4721 4733 font-weight: 400;
4722 4734 vertical-align: middle;
4723 4735 padding: 0px 2px 2px 2px;
4724 4736 background-color:#eeeeee;
4725 4737 border-bottom: 1px solid #CCCCCC;
4726 4738 }
4727 4739
4728 4740 div.diffblock .children {
4729 4741 float: right;
4730 4742 height: 26px;
4731 4743 width:100px;
4732 4744 font-size: 10px;
4733 4745 font-weight: 400;
4734 4746 vertical-align: middle;
4735 4747 text-align: right;
4736 4748 padding: 0px 2px 2px 2px;
4737 4749 background-color:#eeeeee;
4738 4750 border-bottom: 1px solid #CCCCCC;
4739 4751 }
4740 4752
4741 4753 div.diffblock .code-body{
4742 4754 background: #FFFFFF;
4743 4755 }
4744 4756 div.diffblock pre.raw{
4745 4757 background: #FFFFFF;
4746 4758 color:#000000;
4747 4759 }
4748 4760 table.code-difftable{
4749 4761 border-collapse: collapse;
4750 4762 width: 99%;
4751 4763 }
4752 4764 table.code-difftable td {
4753 4765 padding: 0 !important;
4754 4766 background: none !important;
4755 4767 border:0 !important;
4756 4768 vertical-align: none !important;
4757 4769 }
4758 4770 table.code-difftable .context{
4759 4771 background:none repeat scroll 0 0 #DDE7EF;
4760 4772 }
4761 4773 table.code-difftable .add{
4762 4774 background:none repeat scroll 0 0 #DDFFDD;
4763 4775 }
4764 4776 table.code-difftable .add ins{
4765 4777 background:none repeat scroll 0 0 #AAFFAA;
4766 4778 text-decoration:none;
4767 4779 }
4768 4780 table.code-difftable .del{
4769 4781 background:none repeat scroll 0 0 #FFDDDD;
4770 4782 }
4771 4783 table.code-difftable .del del{
4772 4784 background:none repeat scroll 0 0 #FFAAAA;
4773 4785 text-decoration:none;
4774 4786 }
4775 4787
4776 4788 /** LINE NUMBERS **/
4777 4789 table.code-difftable .lineno{
4778 4790
4779 4791 padding-left:2px;
4780 4792 padding-right:2px;
4781 4793 text-align:right;
4782 4794 width:32px;
4783 4795 -moz-user-select:none;
4784 4796 -webkit-user-select: none;
4785 4797 border-right: 1px solid #CCC !important;
4786 4798 border-left: 0px solid #CCC !important;
4787 4799 border-top: 0px solid #CCC !important;
4788 4800 border-bottom: none !important;
4789 4801 vertical-align: middle !important;
4790 4802
4791 4803 }
4792 4804 table.code-difftable .lineno.new {
4793 4805 }
4794 4806 table.code-difftable .lineno.old {
4795 4807 }
4796 4808 table.code-difftable .lineno a{
4797 4809 color:#747474 !important;
4798 4810 font:11px "Bitstream Vera Sans Mono",Monaco,"Courier New",Courier,monospace !important;
4799 4811 letter-spacing:-1px;
4800 4812 text-align:right;
4801 4813 padding-right: 2px;
4802 4814 cursor: pointer;
4803 4815 display: block;
4804 4816 width: 32px;
4805 4817 }
4806 4818
4807 4819 table.code-difftable .lineno-inline{
4808 4820 background:none repeat scroll 0 0 #FFF !important;
4809 4821 padding-left:2px;
4810 4822 padding-right:2px;
4811 4823 text-align:right;
4812 4824 width:30px;
4813 4825 -moz-user-select:none;
4814 4826 -webkit-user-select: none;
4815 4827 }
4816 4828
4817 4829 /** CODE **/
4818 4830 table.code-difftable .code {
4819 4831 display: block;
4820 4832 width: 100%;
4821 4833 }
4822 4834 table.code-difftable .code td{
4823 4835 margin:0;
4824 4836 padding:0;
4825 4837 }
4826 4838 table.code-difftable .code pre{
4827 4839 margin:0;
4828 4840 padding:0;
4829 4841 height: 17px;
4830 4842 line-height: 17px;
4831 4843 }
4832 4844
4833 4845
4834 4846 .diffblock.margined.comm .line .code:hover{
4835 4847 background-color:#FFFFCC !important;
4836 4848 cursor: pointer !important;
4837 4849 background-image:url("../images/icons/comment_add.png") !important;
4838 4850 background-repeat:no-repeat !important;
4839 4851 background-position: right !important;
4840 4852 background-position: 0% 50% !important;
4841 4853 }
4842 4854 .diffblock.margined.comm .line .code.no-comment:hover{
4843 4855 background-image: none !important;
4844 4856 cursor: auto !important;
4845 4857 background-color: inherit !important;
4846 4858
4847 4859 }
@@ -1,92 +1,92 b''
1 1 <%inherit file="/base/base.html"/>
2 2
3 3 <%def name="title()">
4 4 ${_('%s Edit file') % c.repo_name} - ${c.rhodecode_name}
5 5 </%def>
6 6
7 7 <%def name="js_extra()">
8 8 <script type="text/javascript" src="${h.url('/js/codemirror.js')}"></script>
9 9 </%def>
10 10 <%def name="css_extra()">
11 11 <link rel="stylesheet" type="text/css" href="${h.url('/css/codemirror.css')}"/>
12 12 </%def>
13 13
14 14 <%def name="breadcrumbs_links()">
15 15 ${h.link_to(_(u'Home'),h.url('/'))}
16 16 &raquo;
17 17 ${h.link_to(c.repo_name,h.url('summary_home',repo_name=c.repo_name))}
18 18 &raquo;
19 19 ${_('add file')} @ R${c.cs.revision}:${h.short_id(c.cs.raw_id)}
20 20 </%def>
21 21
22 22 <%def name="page_nav()">
23 23 ${self.menu('files')}
24 24 </%def>
25 25 <%def name="main()">
26 26 <div class="box">
27 27 <!-- box / title -->
28 28 <div class="title">
29 29 ${self.breadcrumbs()}
30 30 <ul class="links">
31 31 <li>
32 32 <span style="text-transform: uppercase;">
33 33 <a href="#">${_('branch')}: ${c.cs.branch}</a></span>
34 34 </li>
35 35 </ul>
36 36 </div>
37 37 <div class="table">
38 38 <div id="files_data">
39 39 ${h.form(h.url.current(),method='post',id='eform',enctype="multipart/form-data")}
40 40 <h3>${_('Add new file')}</h3>
41 41 <div class="form">
42 42 <div class="fields">
43 43 <div id="filename_container" class="field file">
44 44 <div class="label">
45 45 <label for="filename">${_('File Name')}:</label>
46 46 </div>
47 47 <div class="input">
48 48 <input type="text" value="" size="30" name="filename" id="filename">
49 49 ${_('or')} <span class="ui-btn" id="upload_file_enable">${_('Upload file')}</span>
50 50 </div>
51 51 </div>
52 52 <div id="upload_file_container" class="field" style="display:none">
53 53 <div class="label">
54 54 <label for="location">${_('Upload file')}</label>
55 55 </div>
56 56 <div class="file">
57 57 <input type="file" size="30" name="upload_file" id="upload_file">
58 58 ${_('or')} <span class="ui-btn" id="file_enable">${_('Create new file')}</span>
59 59 </div>
60 60 </div>
61 61 <div class="field">
62 62 <div class="label">
63 63 <label for="location">${_('Location')}</label>
64 64 </div>
65 65 <div class="input">
66 66 <input type="text" value="${c.f_path}" size="30" name="location" id="location">
67 67 ${_('use / to separate directories')}
68 68 </div>
69 69 </div>
70 70 </div>
71 71 </div>
72 72 <div id="body" class="codeblock">
73 73 <div id="editor_container">
74 74 <pre id="editor_pre"></pre>
75 75 <textarea id="editor" name="content" style="display:none"></textarea>
76 76 </div>
77 77 <div style="padding: 10px;color:#666666">${_('commit message')}</div>
78 <textarea id="commit" name="message" style="height: 100px;width: 99%;margin-left:4px"></textarea>
78 <textarea id="commit" name="message" style="height: 100px;width: 99%;margin-left:4px" placeholder="${c.default_message}"></textarea>
79 79 </div>
80 80 <div style="text-align: l;padding-top: 5px">
81 81 ${h.submit('commit',_('Commit changes'),class_="ui-btn")}
82 82 ${h.reset('reset',_('Reset'),class_="ui-btn")}
83 83 </div>
84 84 ${h.end_form()}
85 85 <script type="text/javascript">
86 86 var reset_url = "${h.url('files_home',repo_name=c.repo_name,revision=c.cs.raw_id,f_path=c.f_path)}";
87 87 initCodeMirror('editor',reset_url);
88 88 </script>
89 89 </div>
90 90 </div>
91 91 </div>
92 92 </%def>
@@ -1,78 +1,78 b''
1 1 <%inherit file="/base/base.html"/>
2 2
3 3 <%def name="title()">
4 4 ${_('%s Edit file') % c.repo_name} - ${c.rhodecode_name}
5 5 </%def>
6 6
7 7 <%def name="js_extra()">
8 8 <script type="text/javascript" src="${h.url('/js/codemirror.js')}"></script>
9 9 </%def>
10 10 <%def name="css_extra()">
11 11 <link rel="stylesheet" type="text/css" href="${h.url('/css/codemirror.css')}"/>
12 12 </%def>
13 13
14 14 <%def name="breadcrumbs_links()">
15 15 ${h.link_to(_(u'Home'),h.url('/'))}
16 16 &raquo;
17 17 ${h.link_to(c.repo_name,h.url('summary_home',repo_name=c.repo_name))}
18 18 &raquo;
19 19 ${_('edit file')} @ R${c.cs.revision}:${h.short_id(c.cs.raw_id)}
20 20 </%def>
21 21
22 22 <%def name="page_nav()">
23 23 ${self.menu('files')}
24 24 </%def>
25 25 <%def name="main()">
26 26 <div class="box">
27 27 <!-- box / title -->
28 28 <div class="title">
29 29 ${self.breadcrumbs()}
30 30 <ul class="links">
31 31 <li>
32 32 <span style="text-transform: uppercase;">
33 33 <a href="#">${_('branch')}: ${c.cs.branch}</a></span>
34 34 </li>
35 35 </ul>
36 36 </div>
37 37 <div class="table">
38 38 <div id="files_data">
39 39 <h3 class="files_location">${_('Location')}: ${h.files_breadcrumbs(c.repo_name,c.cs.revision,c.file.path)}</h3>
40 40 ${h.form(h.url.current(),method='post',id='eform')}
41 41 <div id="body" class="codeblock">
42 42 <div class="code-header">
43 43 <div class="stats">
44 44 <div class="left"><img src="${h.url('/images/icons/file.png')}"/></div>
45 45 <div class="left item">${h.link_to("r%s:%s" % (c.file.changeset.revision,h.short_id(c.file.changeset.raw_id)),h.url('changeset_home',repo_name=c.repo_name,revision=c.file.changeset.raw_id))}</div>
46 46 <div class="left item">${h.format_byte_size(c.file.size,binary=True)}</div>
47 47 <div class="left item last">${c.file.mimetype}</div>
48 48 <div class="buttons">
49 49 ${h.link_to(_('show annotation'),h.url('files_annotate_home',repo_name=c.repo_name,revision=c.cs.raw_id,f_path=c.f_path),class_="ui-btn")}
50 50 ${h.link_to(_('show as raw'),h.url('files_raw_home',repo_name=c.repo_name,revision=c.cs.raw_id,f_path=c.f_path),class_="ui-btn")}
51 51 ${h.link_to(_('download as raw'),h.url('files_rawfile_home',repo_name=c.repo_name,revision=c.cs.raw_id,f_path=c.f_path),class_="ui-btn")}
52 52 % if h.HasRepoPermissionAny('repository.write','repository.admin')(c.repo_name):
53 53 % if not c.file.is_binary:
54 54 ${h.link_to(_('source'),h.url('files_home',repo_name=c.repo_name,revision=c.cs.raw_id,f_path=c.f_path),class_="ui-btn")}
55 55 % endif
56 56 % endif
57 57 </div>
58 58 </div>
59 59 <div class="commit">${_('Editing file')}: ${c.file.unicode_path}</div>
60 60 </div>
61 61 <pre id="editor_pre"></pre>
62 62 <textarea id="editor" name="content" style="display:none">${h.escape(c.file.content)|n}</textarea>
63 63 <div style="padding: 10px;color:#666666">${_('commit message')}</div>
64 <textarea id="commit" name="message" style="height: 60px;width: 99%;margin-left:4px"></textarea>
64 <textarea id="commit" name="message" style="height: 60px;width: 99%;margin-left:4px" placeholder="${c.default_message}"></textarea>
65 65 </div>
66 66 <div style="text-align: left;padding-top: 5px">
67 67 ${h.submit('commit',_('Commit changes'),class_="ui-btn")}
68 68 ${h.reset('reset',_('Reset'),class_="ui-btn")}
69 69 </div>
70 70 ${h.end_form()}
71 71 <script type="text/javascript">
72 72 var reset_url = "${h.url('files_home',repo_name=c.repo_name,revision=c.cs.raw_id,f_path=c.file.path)}";
73 73 initCodeMirror('editor',reset_url);
74 74 </script>
75 75 </div>
76 76 </div>
77 77 </div>
78 78 </%def>
@@ -1,104 +1,106 b''
1 1 <div id="node_history">
2 2 %if c.load_full_history:
3 3 <%include file='files_history_box.html'/>
4 4 %else:
5 5 <div style="padding-bottom:10px">
6 6 <span id="load_node_history" class="ui-btn">${_('Load file history')}</span>
7 7 </div>
8 8 %endif
9 9 </div>
10 10
11 11
12 12 <div id="body" class="codeblock">
13 13 <div class="code-header">
14 14 <div class="stats">
15 15 <div class="left img"><img src="${h.url('/images/icons/file.png')}"/></div>
16 16 <div class="left item"><pre class="tooltip" title="${h.tooltip(h.fmt_date(c.file_changeset.date))}">${h.link_to("r%s:%s" % (c.file_changeset.revision,h.short_id(c.file_changeset.raw_id)),h.url('changeset_home',repo_name=c.repo_name,revision=c.file_changeset.raw_id))}</pre></div>
17 17 <div class="left item"><pre>${h.format_byte_size(c.file.size,binary=True)}</pre></div>
18 18 <div class="left item last"><pre>${c.file.mimetype}</pre></div>
19 19 <div class="buttons">
20 20 %if c.annotate:
21 21 ${h.link_to(_('show source'), h.url('files_home', repo_name=c.repo_name,revision=c.file_changeset.raw_id,f_path=c.f_path),class_="ui-btn")}
22 22 %else:
23 23 ${h.link_to(_('show annotation'),h.url('files_annotate_home',repo_name=c.repo_name,revision=c.file_changeset.raw_id,f_path=c.f_path),class_="ui-btn")}
24 24 %endif
25 25 ${h.link_to(_('show as raw'),h.url('files_raw_home',repo_name=c.repo_name,revision=c.file_changeset.raw_id,f_path=c.f_path),class_="ui-btn")}
26 26 ${h.link_to(_('download as raw'),h.url('files_rawfile_home',repo_name=c.repo_name,revision=c.file_changeset.raw_id,f_path=c.f_path),class_="ui-btn")}
27 27 % if h.HasRepoPermissionAny('repository.write','repository.admin')(c.repo_name):
28 % if not c.file.is_binary:
29 ${h.link_to(_('edit'),h.url('files_edit_home',repo_name=c.repo_name,revision=c.file_changeset.raw_id,f_path=c.f_path),class_="ui-btn")}
28 % if c.on_branch_head and c.file.is_binary is False:
29 ${h.link_to(_('edit on branch:%s' % c.changeset.branch),h.url('files_edit_home',repo_name=c.repo_name,revision=c.changeset.branch,f_path=c.f_path),class_="ui-btn")}
30 %else:
31 ${h.link_to(_('edit on branch:?'), '#', class_="ui-btn disabled tooltip", title=_('Editing files allowed only when on branch head revision'))}
30 32 % endif
31 33 % endif
32 34 </div>
33 35 </div>
34 36 <div class="author">
35 37 <div class="gravatar">
36 38 <img alt="gravatar" src="${h.gravatar_url(h.email_or_none(c.file_changeset.author),16)}"/>
37 39 </div>
38 40 <div title="${c.file_changeset.author}" class="user">${h.person(c.file_changeset.author)}</div>
39 41 </div>
40 42 <div class="commit">${h.urlify_commit(c.file_changeset.message,c.repo_name)}</div>
41 43 </div>
42 44 <div class="code-body">
43 45 %if c.file.is_binary:
44 46 ${_('Binary file (%s)') % c.file.mimetype}
45 47 %else:
46 48 % if c.file.size < c.cut_off_limit:
47 49 %if c.annotate:
48 50 ${h.pygmentize_annotation(c.repo_name,c.file,linenos=True,anchorlinenos=True,lineanchors='L',cssclass="code-highlight")}
49 51 %else:
50 52 ${h.pygmentize(c.file,linenos=True,anchorlinenos=True,lineanchors='L',cssclass="code-highlight")}
51 53 %endif
52 54 %else:
53 55 ${_('File is too big to display')} ${h.link_to(_('show as raw'),
54 56 h.url('files_raw_home',repo_name=c.repo_name,revision=c.file_changeset.raw_id,f_path=c.f_path))}
55 57 %endif
56 58 %endif
57 59 </div>
58 60 </div>
59 61
60 62 <script type="text/javascript">
61 63 YUE.onDOMReady(function(){
62 64 function highlight_lines(lines){
63 65 for(pos in lines){
64 66 YUD.setStyle('L'+lines[pos],'background-color','#FFFFBE');
65 67 }
66 68 }
67 69 page_highlights = location.href.substring(location.href.indexOf('#')+1).split('L');
68 70 if (page_highlights.length == 2){
69 71 highlight_ranges = page_highlights[1].split(",");
70 72
71 73 var h_lines = [];
72 74 for (pos in highlight_ranges){
73 75 var _range = highlight_ranges[pos].split('-');
74 76 if(_range.length == 2){
75 77 var start = parseInt(_range[0]);
76 78 var end = parseInt(_range[1]);
77 79 if (start < end){
78 80 for(var i=start;i<=end;i++){
79 81 h_lines.push(i);
80 82 }
81 83 }
82 84 }
83 85 else{
84 86 h_lines.push(parseInt(highlight_ranges[pos]));
85 87 }
86 88 }
87 89 highlight_lines(h_lines);
88 90
89 91 }
90 92
91 93 // select code link event
92 94 YUE.on('hlcode', 'mouseup', getSelectionLink);
93 95
94 96 //load history of file
95 97 YUE.on('load_node_history', 'click', function(e){
96 98 var _url = node_history_url.replace('__REV__','${c.file_changeset.raw_id}').replace('__FPATH__', '${c.f_path}');
97 99 ypjax(_url, 'node_history', function(o){
98 100 tooltip_activate();
99 101 })
100 102 });
101 103
102 104 });
103 105
104 106 </script>
General Comments 0
You need to be logged in to leave comments. Login now