Changeset 11129
- Timestamp:
- Jul 18, 2012, 10:01:08 PM (12 years ago)
- Location:
- trunk
- Files:
-
- 1 added
- 29 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/trac/admin/templates/admin_components.html
r9042 r11129 39 39 ${owner_field(component.owner)} 40 40 <div class="field"> 41 <fieldset class="iefix">41 <fieldset> 42 42 <label for="description" i18n:msg=""> 43 43 Description (you may use -
trunk/trac/admin/templates/admin_milestones.html
r11105 r11129 60 60 </div> 61 61 <div class="field"> 62 <fieldset class="iefix">62 <fieldset> 63 63 <label for="description" i18n:msg=""> 64 64 Description (you may use <a tabindex="42" href="${href.wiki('WikiFormatting')}">WikiFormatting</a> here): -
trunk/trac/admin/templates/admin_versions.html
r11105 r11129 37 37 </div> 38 38 <div class="field"> 39 <fieldset class="iefix">39 <fieldset> 40 40 <label for="description" i18n:msg=""> 41 41 Description (you may use <a tabindex="42" href="${href.wiki('WikiFormatting')}">WikiFormatting</a> here): -
trunk/trac/htdocs/css/admin.css
r11054 r11129 4 4 #content.admin h1 { float: left; } 5 5 6 #tabs { background: #f7f7f0; border: 1px solid black; 7 border-color: #ccc #666 #666 #ccc; clear: left; 8 margin: 1em 0 2em; padding: .5em 0 0; float: left; width: 12em; 6 #tabs { 7 background: #f7f7f0; 8 border: 1px solid black; 9 border-color: #ccc #666 #666 #ccc; 10 clear: left; 11 margin: 1em 0 2em; 12 padding: .5em 0 0; 13 float: left; 14 width: 12em; 15 /* taken from #prefs */ 16 border-radius: 1em; 17 box-shadow: .2em .2em .7em 0 #777; 9 18 } 10 19 #tabs ul { list-style: none; margin: 0 0 .5em; padding: 0; } … … 15 24 margin: 0 -3px; padding: 1px 0 1px 10px; 16 25 } 17 #tabs li li.active { background: #ddc; border: 1px solid; 18 border-color: #ccc #000 #666 #ccc; padding: 0 0 0 9px; 26 #tabs li li.active { 27 background: #ddc; 28 border: 1px solid; 29 border-color: #ccc #999 #999 #ccc; 30 border-radius: .2em; 31 box-shadow: .1em .2em .5em #aa9; 32 padding: 0 0 0 9px; 19 33 } 20 34 #tabs :link, #tabs :visited { border: none; display: block } … … 54 68 .plugin .uninstall { margin-top: -2.6em; padding: 0; } 55 69 .plugin .summary, .plugin .info { padding-left: 16px; color: #999; font-size: 80%; } 56 .plugin .summary { margin: -.5em 0 .5em; }70 .plugin .summary { margin: 1.2em 0 .5em; } 57 71 .plugin .info { margin: 1em 0 .5em; } 58 72 .plugin .info dt { float: left; width: 7em; } … … 71 85 .trac-component .trac-heading.foldable { text-indent: -16px } 72 86 .trac-component > div { margin-left: 3em; } 73 .trac-summary { color: #888; } 87 .trac-summary { color: #888 } 88 .trac-heading :link { padding: .1em .5em 0 20px } 74 89 table.trac-pluglist td { padding-left: 1em; } 75 90 -
trunk/trac/htdocs/css/code.css
r11057 r11129 2 2 background: #f7f7f7; 3 3 border: 1px solid #d7d7d7; 4 border-radius: .3em; 4 5 margin: 1em 1.75em; 5 6 padding: .25em; -
trunk/trac/htdocs/css/report.css
r11097 r11129 25 25 26 26 .report div.reports { clear: both } 27 28 27 29 .report div.reports h2 { 28 border-bottom: 1px solid #eeeeee; 29 margin-top: 0; 30 } 31 .report div.reports h2 :link, .report div.reports h2 :visited { 30 /* taken from .wikipage h2 */ 31 border-bottom: 1px solid #ddd; 32 box-shadow: .1em .2em .8em 0 #eee; 33 padding: 0.2em .3em .1em; 34 } 35 .report div.reports h3 { 36 /* taken from .wikipage h3 */ 37 border-bottom: 1px dashed #ddd; 38 } 39 .report div.reports h3 :link, .report div.reports h3 :visited { 32 40 color: #000; 33 41 border-bottom: none; 34 42 } 35 .report div.reports h 2 em {43 .report div.reports h3 em { 36 44 color: #800; 37 45 font-style: normal; 38 46 } 39 47 40 .report form div.inlinebuttons { 41 float: right; 42 margin-top: -2px; 43 margin-left: 0.2em; 44 } 48 .report form .inlinebuttons { float: right } 49 .uisymbols .report form .inlinebuttons { margin-top: -.6em } 45 50 46 51 .report span.foldable { display: none } … … 71 76 border-bottom: 1px solid #d7d7d7; 72 77 margin: 2em 0 0; 73 padding: 0 .33em; 78 padding: .2em .4em; 79 box-shadow: 1px 1px .5em 0 #ccc; 80 border-radius: .1em 74 81 } 75 82 #report-descr { margin: 0 2em; font-size: 90% } … … 79 86 80 87 #query { clear: right } 81 #query fieldset, #query fieldset input, #query fieldset select { font-size: 11px } 82 #query fieldset input[type="button"] { 83 border: 1px solid #999; 84 border-radius: 1em; 85 padding: 0 .4em .1em; 88 #query fieldset, #query fieldset input, #query fieldset select { 89 font-size: 11px; 86 90 } 87 91 #query fieldset { margin-top: 1em } -
trunk/trac/htdocs/css/roadmap.css
r10751 r11129 35 35 background: #f7f7f7; 36 36 border-bottom: 1px solid #d7d7d7; 37 margin: 0; 37 margin: .5em 0; 38 box-shadow: 1px 1px .5em 0 #ccc; 39 border-radius: .1em; 38 40 } 39 41 .milestone .info h2 :link, .milestone .info h2 :visited { … … 41 43 display: block; 42 44 border-bottom: none; 45 padding: .2em .4em; 43 46 } 44 47 .milestone .info h2 :link:hover, .milestone .info h2 :visited:hover { … … 57 60 .milestone .date { color: #888; font-style: italic; margin: 0 } 58 61 .milestone .description { margin: 1em 0 2em } 59 #stats { float: right; margin: 0 0 2em 2em; padding: 0; width: 400px; max-width: 40% } 62 #stats { 63 float: right; 64 margin: 0 1em 2em 2em; 65 padding: 0; 66 width: 400px; 67 max-width: 40%; 68 } 60 69 #stats legend { white-space: nowrap } 61 70 … … 85 94 #edit .field { margin: 0.5em 0 } 86 95 #edit label { padding-left: .2em } 87 #edit fieldset .iefix{ margin-left: 1px; margin-right: 1px }96 #edit fieldset { margin-left: 1px; margin-right: 1px } 88 97 #edit textarea#description { margin-left: -1px; margin-right: -1px; padding: 0; width: 100% } 89 98 #edit .wikitoolbar { margin-left: -1px } -
trunk/trac/htdocs/css/ticket.css
r11128 r11129 11 11 #properties div.trac-resizable, #field-description { width: 100% } 12 12 13 /* "Yellow Ticket Box" */ 13 14 #ticket { 14 15 background: #ffd; 15 border: 1px outset #996;16 border: 1px solid #dd9; 16 17 border-radius: .4em; 17 18 margin-top: 1em; … … 20 21 } 21 22 23 /* YTB in preview mode */ 22 24 #ticket.ticketdraft { 23 25 background: #f8f8f8 url(../draft.png); … … 34 36 .ticketdraft { 35 37 background: #f8f8f8 url(../draft.png); 36 border: 1px outset #996;38 border: 1px solid #d7d7d7; 37 39 border-radius: .4em; 38 40 padding: 0 .2em; 39 41 } 40 42 41 h1 .status { color: #444; } 42 #ticket h2.summary { margin: 0 0 .8em 0 } 43 #trac-ticket-title { margin-top: .4em; } 44 45 #ticket h2 { 46 color: #844; 47 margin: 0 0 .4em; 48 } 49 #ticket h2 .trac-id { 50 font-size: 145%; 51 vertical-align: middle; 52 margin: 0 .4em 0 0; 53 } 54 #ticket h2 .status { 55 vertical-align: middle; 56 } 57 #ticket h2 .trac-type { 58 color: #955; 59 } 60 43 61 #ticket .date { color: #996; float: right; font-size: 85%; position: relative } 44 62 #ticket .date p { margin: .3em } … … 63 81 width: 20%; 64 82 } 83 #ticket table.properties th.missing { color: #d3d398; } 65 84 #ticket table.properties td { width: 30% } 66 85 #ticket table.properties td p:first-child { margin-top: 0 } … … 77 96 font-size: 90%; 78 97 } 79 #ticket .inlinebuttons { 98 #ticket .inlinebuttons { 80 99 float: right; 81 100 position: relative; 82 101 bottom: 0.3em; 83 margin-left: 0.2em; 84 } 85 102 } 103 104 /* Change History */ 86 105 #changelog { 87 border: 1px outset #d7d7d7;88 border-radius: .4em;89 106 padding: 1em; 90 107 } 91 108 .trac-shade { background-color: #eee } 92 109 #trac-threaded-form { float: right } 110 111 /* Threaded comments */ 93 112 ul.children { 94 113 margin-top: 1.5em; … … 97 116 } 98 117 ul.children > li.child { 99 border-left: 1px solid #e0e0e0; 100 padding-left: .75em; 118 padding: 0 .75em 0 .5em; 101 119 margin-bottom: 1.5em; 102 } 120 border-left: 1px solid #bbb; 121 border-radius: 1em; 122 } 123 124 /* Comment contents */ 125 #changelog h3, #ticketchange h3 { 126 border-bottom: 1px solid #d7d7d7; 127 box-shadow: .1em .2em .8em 0 #eee; 128 padding: 0 .2em; 129 margin-bottom: .5em; 130 color: #999; 131 font-size: 100%; 132 font-weight: normal; 133 } 134 @media print { 135 #changelog h3, #ticketchange h3 { box-shadow: none } 136 } 137 103 138 div.comment ul { list-style: disc } 104 139 div.comment ul ul, div.comment ol ul { list-style: circle } … … 107 142 div.comment ol { list-style: decimal } 108 143 144 /* Comment editor */ 109 145 #trac-comment-editor { margin-left: 2em; margin-bottom: 1em } 110 146 #trac-comment-editor div.trac-resizable { width: 100% } … … 117 153 #trac-comment-editor .wikitoolbar { margin-left: -1px } 118 154 .trac-new { border-left: 0.31em solid #c0f0c0; padding-left: 0.31em; } 119 #changelog h3, #ticketchange h3 { 120 border-bottom: 1px solid #d7d7d7; 121 color: #999; 122 font-size: 100%; 123 font-weight: normal; 124 } 155 125 156 .trac-loading { 126 157 background: url(../loading.gif) 0 50% no-repeat; … … 129 160 display: none; 130 161 } 131 .threading, #changelog .inlinebuttons { float: right; margin-left: 0.2em } 162 .threading, #changelog .inlinebuttons { 163 float: right; 164 } 132 165 .threading { font-size: 85%; } 133 166 .threading :link, .threading :visited { border-bottom: 0 } … … 158 191 159 192 form .field { margin-top: .75em; width: 100% } 160 form .field fieldset .iefix{ margin-left: 1px; margin-right: 1px }193 form .field fieldset { margin-left: 1px; margin-right: 1px } 161 194 label[for=comment] { float: right } 162 195 #comment { margin-left: -1px; margin-right: -1px; padding: 0; width: 100% } -
trunk/trac/htdocs/css/timeline.css
r11015 r11129 10 10 font-size: 105%; 11 11 margin: 2em 0 .5em; 12 padding: .4em; 13 box-shadow: 1px 1px .5em 0 #ccc; 14 border-radius: .1em; 12 15 } 13 16 dl { -
trunk/trac/htdocs/css/trac.css
r11127 r11129 1 /* -*- coding: utf-8 -*- */ 1 2 body { background: #fff; color: #000; margin: 10px; padding: 0; } 2 3 body, th, tr { … … 91 92 text-shadow: .1em .1em #fcfcfc; 92 93 } 94 input[type=button]:active, 95 input[type=submit]:active, 96 input[type=reset]:active { 97 margin: 3px 1px 1px 3px; /* see input margin */ 98 } 99 .buttons input[type=button]:active, 100 .buttons input[type=submit]:active, 101 .buttons input[type=reset]:active { 102 margin: 1.1em .4em 0 .1em; /* see .buttons input margin */ 103 } 93 104 input[type=button][disabled], input[type=submit][disabled], 94 105 input[type=reset][disabled] { … … 97 108 color: #999; 98 109 } 99 input[type=text], input.textwidget, textarea { border: 1px solid #d7d7d7 } 110 input[type=text], input.textwidget, textarea { 111 border: 1px solid #d7d7d7; 112 border-radius: .3em; 113 } 100 114 input[type=text], input.textwidget { padding: .25em .5em } 101 115 input[type=text]:focus, input.textwidget:focus, textarea:focus { … … 106 120 border: 1px solid #d7d7d7; 107 121 border-radius: .4em; 108 padding: .5em;109 122 margin: 1em 0; 123 background: #F7F7F0; 124 box-shadow: .1em .1em 1em 0 #E7E7E7 inset; 125 padding: 1em; 110 126 } 111 127 p.hint, span.hint { color: #666; font-size: 85%; font-style: italic; margin: .5em 0; 112 128 padding-left: 1em; 113 129 } 114 fieldset.iefix {115 background: transparent;116 border: none;117 padding: 0;118 margin: 0;119 }120 * html fieldset.iefix { width: 98% }121 fieldset.iefix p { margin: 0 }122 130 legend { 123 131 color: #999; … … 131 139 .buttons form, .buttons form div { display: inline } 132 140 .buttons input { margin: 1em .5em .1em 0 } 141 133 142 .inlinebuttons input { 143 border: 1px solid #ddd; 144 border-radius: 1em; 145 height: 1.6em; 146 padding: 0 .4em .1em; 134 147 font-size: 70%; 135 border: 1px dotted #ccc;136 148 box-shadow: none; 137 margin: 0 .1em; 138 padding: 0.1em; 149 margin: 0 .1em .1em; 139 150 background: none; 151 color: #808080; 152 } 153 .uisymbols .inlinebuttons input[type=button], 154 .uisymbols .inlinebuttons input[type=submit] { 155 font-size: 100%; 156 } 157 .inlinebuttons input[type=button]:hover, 158 .inlinebuttons input[type=submit]:hover { 159 background: #f6f6f6; 160 color: #333; 161 text-shadow: .1em .1em #fcfcfc; 162 box-shadow: .1em .1em .6em 0 #999; 163 } 164 .inlinebuttons input[type=button]:active, 165 .inlinebuttons input[type=submit]:active { 166 margin: .1em 0 0 .2em; 167 } 168 input[type=button].trac-delete, 169 input[type=submit].trac-delete { 170 color: #d31313; 171 } 172 input[type=button].trac-delete:hover, 173 input[type=submit].trac-delete:hover { 174 color: #e31313; 140 175 } 141 176 … … 324 359 } 325 360 361 /* Container for all the elements in the page, usually single child of the body element */ 326 362 #content { 327 363 position: relative; /* reference for absolute positioning of children */ 364 } 365 366 /* Information content */ 367 div.trac-content { 368 padding: .5em 1em; 328 369 margin: .3em auto; 329 padding: .5em 1em;330 370 border: 1px solid #e4e4e4; 331 371 border-radius: .5em; 332 box-shadow: 0 .5em 1.5em #eee; 333 } 334 372 box-shadow: .2em .3em 1.5em #eee; 373 } 374 375 /* Help links */ 376 .uinohelp #help { display: none } 335 377 #help { 336 378 clear: both; … … 361 403 color: #666; 362 404 font-size: 110%; 405 text-shadow: .1em .1em #ddd; 363 406 } 364 407 … … 453 496 } 454 497 498 tt { 499 color: #600; 500 border: 1px solid #CBA; 501 border-radius: .25em; 502 padding: 0 0.3em; 503 background: #F7F7F7; 504 } 505 455 506 blockquote.citation { 456 507 margin: -0.6em 0; … … 532 583 /* Styles for the list of attachments. */ 533 584 #attachments > div.attachments { 534 border: 1px outset #d7d7d7; 535 border-radius: .4em; 536 padding: 1em; 585 padding: 0 0 1em 1em; 537 586 } 538 587 #attachments dl.attachments { margin-left: 2em; padding: 0 } … … 634 683 white-space: normal; 635 684 } 636 div.system-message p { margin: 0; } 685 686 div.system-message p { margin: 0 } 637 687 div.system-message p.system-message-title { font-weight: bold; } 638 div.system-message .trac-close-msg {639 float: right;640 margin: 0 0 0.5em 1em;641 display: none;642 }643 688 644 689 /* rst errors are less emphasized */ … … 652 697 653 698 /* whole-page admonitions in theme.html */ 654 #warning.system-message, .warning.system-message { background: #ffb; border: 1px solid #000; } 699 div.system-message { 700 border-radius: .5em; 701 /* taken from #prefs */ 702 box-shadow: .2em .2em .7em 0 #777; 703 } 704 705 #warning.system-message, .warning.system-message { 706 background: #ffb; 707 border: 1px solid #500; 708 } 655 709 #warning.system-message li { list-style-type: square; } 656 710 657 #notice.system-message, .notice.system-message { background: #dfd; border: 1px solid #000; } 711 #notice.system-message, .notice.system-message { 712 background: #dfd; 713 border: 1px solid #500; 714 } 658 715 #notice.system-message li { list-style-type: square; } 716 717 div.system-message .trac-close-msg { 718 display: none; /* hidden when no Javascript available */ 719 float: right; 720 font-size: 80%; 721 /* taken from .inlinebuttons */ 722 border: 1px solid #ddd; 723 border-radius: 1em; 724 height: 1.6em; 725 padding: 0 .4em .1em; 726 box-shadow: none; 727 margin: 0 .1em .1em 0; 728 background: none; 729 color: #999; 730 /* taken from trac-delete */ 731 color: #d31313; 732 /* override */ 733 height: 1.4em; 734 } 735 div.system-message .trac-close-msg:hover { 736 /* taken from .inlinebuttons */ 737 background: #f6f6f6; 738 color: #333; 739 text-shadow: .1em .1em #fcfcfc; 740 box-shadow: .1em .1em .6em 0 #999; 741 } 742 .uisymbols div.system-message .trac-close-msg > span { 743 display: none; 744 } 745 .uisymbols div.system-message .trac-close-msg:after { 746 content: "x"; /* or – "–"; */ 747 } 659 748 660 749 /* error.html page */ … … 736 825 #header, #altlinks, #footer, #help, #warning, #notice { display: none } 737 826 .nav, form, .buttons form, form .buttons, form .inlinebuttons, 738 .noprint, .trac-nav, .trac-topnav { 827 .noprint, .trac-nav, .trac-topnav, 828 #attachments > div.attachments > p { 739 829 display: none; 740 830 } … … 742 832 div.code pre { white-space: pre-wrap } 743 833 :link, :visited { border-bottom: none } 744 } 834 div.trac-content { box-shadow: none } 835 .foldable :link, .foldable :visited { 836 text-shadow: none; 837 box-shadow: none; 838 } 839 } -
trunk/trac/htdocs/css/wiki.css
r11109 r11129 3 3 #info { margin: 0 0 1em 0 } 4 4 #wikipage { clear: both } 5 6 .wikipage h2 { 7 border-bottom: 1px solid #ddd; 8 box-shadow: .1em .2em .8em 0 #eee; 9 padding: 0.2em .3em .1em; 10 } 11 @media print { .wikipage h2 { box-shadow: none } } 12 13 .wikipage h3 { 14 border-bottom: 1px dashed #ddd; 15 } 16 .wikipage .trac-content { 17 margin-left: -18px; 18 padding-left: 28px; 19 } 5 20 6 21 /* Styles for the path of hierarchical pages */ -
trunk/trac/prefs/web_ui.py
r10989 r11129 41 41 IRequestHandler, ITemplateProvider) 42 42 43 _form_fields = ['newsid', 'name', 'email', 'tz', 'lc_time', 'dateinfo', 44 'language', 'accesskeys'] 43 _form_fields = [ 44 'newsid', 'name', 'email', 'tz', 'lc_time', 'dateinfo', 45 'language', 'accesskeys', 46 'ui.use_symbols', 'ui.hide_help', 47 ] 45 48 46 49 # INavigationContributor methods … … 92 95 yield ('datetime', _('Date & Time')) 93 96 yield ('keybindings', _('Keyboard Shortcuts')) 97 yield ('userinterface', _('User Interface')) 94 98 if Locale: 95 99 yield ('language', _('Language')) -
trunk/trac/templates/theme.html
r11055 r11129 34 34 ${navigation('mainnav')} 35 35 36 <div id="main"> 36 <div id="main" class="${classes(uisymbols=req.session.get('ui.use_symbols'), 37 uinohelp=req.session.get('ui.hide_help'))}"> 37 38 <xi:include py:if="value_of('resourcepath_template')" href="${resourcepath_template}" /> 38 39 … … 47 48 48 49 <div id="warning" py:if="chrome.warnings" class="system-message"> 49 <a class="trac-close-msg" href="#" >[close]</a>50 <a class="trac-close-msg" href="#" title="Hide this warning"><span>close</span></a> 50 51 <py:choose test="len(chrome.warnings)"> 51 52 <strong>Warning:</strong> … … 55 56 </div> 56 57 <div id="notice" py:if="chrome.notices" class="system-message"> 57 <a class="trac-close-msg" href="#" >[close]</a>58 <a class="trac-close-msg" href="#" title="Hide this notice"><span>close</span></a> 58 59 <py:choose test="len(chrome.notices)"> 59 60 <py:when test="1">${chrome.notices[0]}</py:when> -
trunk/trac/ticket/templates/milestone_edit.html
r10992 r11129 96 96 </fieldset> 97 97 <div class="field"> 98 <fieldset class="iefix">98 <fieldset> 99 99 <label for="description" i18n:msg="">Description (you may use <a tabindex="42" 100 100 href="${href.wiki('WikiFormatting')}">WikiFormatting</a> here):</label> -
trunk/trac/ticket/templates/milestone_view.html
r10751 r11129 66 66 </form> 67 67 68 <div class="description" xml:space="preserve">68 <div py:if="milestone.description" class="description trac-content" xml:space="preserve"> 69 69 ${wiki_to_html(context, milestone.description)} 70 70 </div> -
trunk/trac/ticket/templates/report_list.html
r10594 r11129 41 41 <form method="get" action="${href.report()}"> 42 42 <div class="inlinebuttons"> 43 43 44 <input type="hidden" name="action" value="clear" /> 44 <input type="submit" class="inlinebutton" title="Forget last query" value="${_('Clear')}" />45 <input type="submit" value="${captioned_button('x', _('Clear'))}" title="Forget last query" class="trac-delete" /> 45 46 </div> 46 47 </form> 47 <h 2><a href="$saved_query_href"><em>Return to Last Query</em></a></h2>48 <h3><a href="$saved_query_href"><em>Return to Last Query</em></a></h3> 48 49 <span class="foldable" /> 49 50 <div class="description"> … … 54 55 55 56 <div py:if="query_href"> 56 <h 2><a href="$query_href"><em>Custom Query</em></a></h2>57 <h3><a href="$query_href"><em>Custom Query</em></a></h3> 57 58 <span class="foldable" /> 58 59 <div class="description"> … … 79 80 <div class="inlinebuttons"> 80 81 <input type="hidden" name="action" value="delete" /> 81 <input type="submit" class="inlinebutton" title="Delete report" value="${_('Delete')}" /> 82 <input type="submit" value="${captioned_button('–', _('Delete'))}" 83 title="Delete report" class="trac-delete" /> 82 84 </div> 83 85 </form> … … 85 87 <div class="inlinebuttons"> 86 88 <input type="hidden" name="action" value="edit" /> 87 <input type="submit" class="inlinebutton" title="Edit report" value="${_('Edit')}" /> 89 <input type="submit" value="${captioned_button('✎', _('Edit'))}" 90 title="Edit report" /> 88 91 </div> 89 92 </form> 90 <h2><a title="View report" href="${href.report(id)}">{$id} <em>$title</em></a></h2> 93 <h3><a title="View report" href="${href.report(id)}" py:choose="sort"> 94 <py:when test="'title'">$title <em>{$id}</em></py:when> 95 <py:otherwise><em>{$id}</em> $title</py:otherwise> 96 </a></h3> 91 97 <span class="foldable" /> 92 98 <div py:if="description" class="description" xml:space="preserve"> -
trunk/trac/ticket/templates/ticket.html
r11128 r11129 22 22 $("#attachments").toggleClass("collapsed"); 23 23 $("#modify").parent().toggleClass("collapsed"); 24 $(".trac-topnav a").click(function() { $("#modify").parent().removeClass("collapsed"); });25 24 26 25 /* only enable control elements for the currently selected action */ … … 124 123 has_property_editor = not version and version != 0 and not cnum_edit 125 124 and (can_append or can_modify or can_edit or can_create)"> 126 <div class="trac-topnav" py:if="ticket.exists and has_property_editor"> 127 <a href="#propertyform" title="Go to the ticket editor">Modify</a> ↓ 128 </div> 129 <h1 id="trac-ticket-title" py:choose=""> 130 <py:when test="ticket.exists"> 131 <a href="${href.ticket(ticket.id)}" i18n:msg="id">Ticket #${ticket.id}</a> 132 <span class="status">(${ticket.status}<py:if 133 test="ticket.type"> ${ticket.type}</py:if><py:if 134 test="ticket.resolution">: ${ticket.resolution}</py:if>)</span> 135 <py:choose test=""> 136 <py:when test="version is None" /> 137 <py:when test="version == 0"> 138 — <i18n:msg>at <a href="#comment:description">Initial Version</a></i18n:msg> 139 </py:when> 140 <py:otherwise> 141 — <i18n:msg params="version">at <a href="#comment:$version">Version $version</a></i18n:msg> 142 </py:otherwise> 143 </py:choose> 144 </py:when> 145 <py:otherwise> 146 Create New Ticket <span py:if="preview_mode and ticket.type" class="status">(${ticket.type})</span> 147 </py:otherwise> 125 126 <h1 py:if="not ticket.exists"> 127 Create New Ticket <span py:if="preview_mode and ticket.type" class="status">(${ticket.type})</span> 148 128 </h1> 149 150 129 151 130 <py:if test="ticket.exists"> … … 197 176 <!--! Add comment --> 198 177 <div py:if="ticket.exists and can_append" id="trac-add-comment" class="field"> 199 <div class="trac-nav">200 <a href="#content" title="View ticket fields and description">View Description</a> ↑201 </div>202 178 <h2 class="foldable" id="edit">Add Comment</h2> 203 179 <div> … … 211 187 </div> 212 188 <!--! Comment field --> 213 <fieldset class="iefix">189 <fieldset> 214 190 <label for="comment" i18n:msg="">You may use 215 191 <a tabindex="42" href="${href.wiki('WikiFormatting')}">WikiFormatting</a> … … 253 229 <th><label for="field-description">Description:</label></th> 254 230 <td class="fullrow" colspan="3"> 255 <fieldset class="iefix">231 <fieldset> 256 232 <label for="field-description" id="field-description-help" i18n:msg="">You may use 257 233 <a tabindex="42" href="${href.wiki('WikiFormatting')}">WikiFormatting</a> here. -
trunk/trac/ticket/templates/ticket_box.html
r11060 r11129 16 16 xmlns:xi="http://www.w3.org/2001/XInclude" 17 17 xmlns:i18n="http://genshi.edgewall.org/i18n" 18 id="ticket" class=" ${'ticketdraft' if preview_mode else None}"18 id="ticket" class="trac-content ${'ticketdraft' if preview_mode else None}" 19 19 style="${'display: none' if value_of('hide', False) else None}"> 20 20 21 <div class="date"> 21 22 <p i18n:msg="created" py:if="ticket.exists">Opened ${pretty_dateinfo(ticket.time)}</p> 22 <p i18n:msg="modified" py:if="ticket.changetime != ticket.time">Last modified ${pretty_dateinfo(ticket.changetime)}</p> 23 <p i18n:msg="closed" py:if="closetime">Closed ${pretty_dateinfo(closetime)}</p> 24 <p i18n:msg="modified" py:if="ticket.changetime != ticket.time and ticket.changetime != closetime"> 25 Last modified ${pretty_dateinfo(ticket.changetime)}</p> 23 26 <p py:if="not ticket.exists"><span class="trac-loading"/><i>(ticket not yet created)</i></p> 24 27 </div> 25 28 <!--! use a placeholder if it's a new ticket --> 26 <h2 class="summary searchable">$ticket.summary</h2> 29 30 <h2> 31 <a href="${href.ticket(ticket.id)}" class="${classes('trac-id', closed=ticket.status == 'closed')}"> 32 #${ticket.id} 33 </a> 34 <span class="trac-status">${ticket.status}</span> 35 <span class="trac-type" py:if="ticket.type">${ticket.type}</span> 36 <span class="trac-resolution" py:if="ticket.resolution">(${ticket.resolution})</span> 37 </h2> 38 39 <h1 id="trac-ticket-title" class="searchable"> 40 <span class="summary">$ticket.summary</span> 41 <py:choose test=""> 42 <py:when test="version is None" /> 43 <py:when test="version == 0"> 44 — <i18n:msg>at <a href="#comment:description">Initial Version</a></i18n:msg> 45 </py:when> 46 <py:otherwise> 47 — <i18n:msg params="version">at <a href="#comment:$version">Version $version</a></i18n:msg> 48 </py:otherwise> 49 </py:choose> 50 </h1> 27 51 28 52 <table class="properties" 29 53 py:with="fields = [f for f in fields if not f.skip and f.name not in ('type', 'owner')]"> 30 <tr> 31 <th id="h_reporter">Reported by:</th> 32 <td headers="h_reporter" class="searchable"> 33 ${reporter_link if defined('reporter_link') else authorinfo(ticket.reporter)} 34 </td> 35 <th id="h_owner">Owned by:</th> 36 <td headers="h_owner"> 37 ${(owner_link if defined('owner_link') else authorinfo(ticket.owner)) if ticket.owner else ''} 38 </td> 54 <tr py:with=" 55 v_reporter = reporter_link if defined('reporter_link') else authorinfo(ticket.reporter); 56 v_owner = (owner_link if defined('owner_link') else authorinfo(ticket.owner)) if ticket.owner else '' 57 "> 58 <th id="h_reporter" class="${classes(missing=not v_reporter)}">Reported by:</th> 59 <td headers="h_reporter" class="searchable">$v_reporter</td> 60 <th id="h_owner" class="${classes(missing=not v_owner)}">Owned by:</th> 61 <td headers="h_owner">$v_owner</td> 39 62 </tr> 40 63 <tr py:for="row in group(fields, 2, lambda f: f.type != 'textarea')" … … 42 65 <py:for each="idx, field in enumerate(row)"> 43 66 <th py:if="idx == 0 or not fullrow" 44 id="${'h_' + field.name if field else None}"> 67 id="${'h_' + field.name if field else None}" 68 class="${classes(missing=not field or 69 ('rendered' in field and not field.rendered) or 70 not ticket[field.name])}" > 45 71 <py:if test="field"><i18n:msg params="field">${field.label or field.name}:</i18n:msg></py:if> 46 72 </th> … … 62 88 <h3 id="comment:description"> 63 89 Description 64 < span py:if="description_change" class="lastmod" title="$description_change.date">65 <i18n:msg params="author">(last modified by ${authorinfo(description_change.author)})</i18n:msg>66 (<a href="${href.ticket(ticket.id, action='diff', version=description_change.cnum)}">diff</a>)67 </ span>90 <a href="${href.ticket(ticket.id, action='diff', version=description_change.cnum)}" 91 py:if="description_change" class="lastmod" title="$description_change.date"> 92 <i18n:msg params="author">(last modified by ${authorinfo(description_change.author)})</i18n:msg> ∆ 93 </a> 68 94 </h3> 69 95 … … 73 99 <div class="inlinebuttons"> 74 100 <input type="hidden" name="replyto" value="description" /> 75 <input type="submit" name="reply" value="${ _('Reply')}" title="Reply, quoting this description" />101 <input type="submit" name="reply" value="${captioned_button('↳', _('Reply'))}" title="Reply, quoting this description" /> 76 102 </div> 77 103 </form> -
trunk/trac/ticket/templates/ticket_change.html
r11112 r11129 63 63 <div class="inlinebuttons"> 64 64 <input type="hidden" name="cnum_edit" value="${cnum}"/> 65 <input type="submit" value="${ _('Edit')}" title="${_('Edit comment %(cnum)s', cnum=cnum)}"/>65 <input type="submit" value="${captioned_button('✎', _('Edit'))}" title="${_('Edit comment %(cnum)s', cnum=cnum)}" /> 66 66 </div> 67 67 </form> … … 70 70 <div class="inlinebuttons"> 71 71 <input type="hidden" name="replyto" value="${cnum}"/> 72 <input type="submit" value="${ _('Reply')}" title="${_('Reply to comment %(cnum)s', cnum=cnum)}"/>72 <input type="submit" value="${captioned_button('↳', _('Reply'))}" title="${_('Reply to comment %(cnum)s', cnum=cnum)}" /> 73 73 </div> 74 74 </form> -
trunk/trac/ticket/tests/functional.py
r11123 r11129 1 1 #!/usr/bin/python 2 # -*- coding: utf-8 -*- 2 3 import os 3 4 import re … … 1603 1604 self._tester.add_comment(ticketid) 1604 1605 self._tester.go_to_ticket(ticketid) 1605 tc.submit(' Reply', formname='reply-to-comment-1')1606 tc.submit('2', formname='reply-to-comment-1') # '1' hidden, '2' submit 1606 1607 tc.formvalue('propertyform', 'comment', random_sentence(3)) 1607 1608 tc.submit('Submit changes') -
trunk/trac/ticket/web_ui.py
r11124 r11129 1615 1615 1616 1616 selected_action = req.args.get('action') 1617 1618 # retrieve close time from changes 1619 closetime = None 1620 for c in changes: 1621 s = c['fields'].get('status') 1622 if s: 1623 closetime = c['date'] if s['new'] == 'closed' else None 1617 1624 1618 1625 # action_controls is an ordered list of "renders" tuples, where … … 1670 1677 'attachments': AttachmentModule(self.env).attachment_data(context), 1671 1678 'action_controls': action_controls, 'action': selected_action, 1672 'change_preview': change_preview, 1679 'change_preview': change_preview, 'closetime': closetime, 1673 1680 }) 1674 1681 -
trunk/trac/util/presentation.py
r10644 r11129 20 20 import re 21 21 22 __all__ = ['classes', 'first_last', 'group', 'istext', 'prepared_paginate', 23 'paginate', 'Paginator'] 24 22 __all__ = ['captioned_button', 'classes', 'first_last', 'group', 'istext', 23 'prepared_paginate', 'paginate', 'Paginator'] 24 25 26 def captioned_button(req, symbol, text): 27 return symbol if req.session.get('ui.use_symbols') \ 28 else u'%s %s' % (symbol, text) 25 29 26 30 def classes(*args, **kwargs): -
trunk/trac/versioncontrol/templates/admin_repositories.html
r10594 r11129 70 70 </div> 71 71 <div class="field"> 72 <fieldset class="iefix">72 <fieldset> 73 73 <label for="description" i18n:msg=""> 74 74 Description (you may use <a tabindex="42" href="${href.wiki('WikiFormatting')}">WikiFormatting</a> here): -
trunk/trac/web/chrome.py
r11125 r11129 915 915 'format_emails': self.format_emails, 916 916 'get_systeminfo': self.env.get_systeminfo, 917 'captioned_button': partial(presentation.captioned_button, req), 917 918 918 919 # Date/time formatting -
trunk/trac/wiki/templates/wiki_edit.html
r11115 r11129 89 89 <div id="content" class="wiki" 90 90 py:with="preview_or_review = action == 'preview' and (not diff or changes[0].diffs)"> 91 <div class="trac-topnav" py:if="sidebyside or preview_or_review" py:choose=""> 92 <a py:when="sidebyside" href="#changeinfo" 93 title="Go to Save, Preview, Review or Cancel buttons">Actions</a> 91 <div class="trac-topnav" py:if="not sidebyside and preview_or_review" py:choose=""> 94 92 <a py:when="diff" href="#info" title="See the diffs">Review</a> 95 93 <a py:otherwise="" href="#info" title="See the preview">Preview</a> … … 149 147 <a href="#content" title="Go to the editor">Edit</a> ↑ 150 148 </div> 151 <h2 py: choose="">149 <h2 py:if="not sidebyside" py:choose=""> 152 150 <py:when test="preview_or_review and diff">Review Changes</py:when> 153 151 <py:when test="preview_or_review">Preview</py:when> 154 152 <py:otherwise>No changes</py:otherwise> 155 153 </h2> 156 <div id="preview" >154 <div id="preview" class="trac-content"> 157 155 <div py:when="diff" class="diff"> 158 156 <xi:include href="diff_div.html" py:with="no_id=True" /> -
trunk/trac/wiki/templates/wiki_edit_form.html
r11109 r11129 6 6 xmlns:i18n="http://genshi.edgewall.org/i18n" py:strip=""> 7 7 <form id="edit" action="${href.wiki(page.name)}" method="post"> 8 <fieldset class="${classes( 'iefix',sidebyside=sidebyside)}">8 <fieldset class="${classes(sidebyside=sidebyside)}"> 9 9 <input type="hidden" name="from_editor" value="1" /> 10 10 <input type="hidden" name="action" value="edit" /> … … 36 36 </div> 37 37 </fieldset> 38 <div class="trac-nav" py:if="sidebyside" py:choose="">39 <a py:when="diff" href="#content" title="See the start of the diffs">Review</a>40 <a py:otherwise="" href="#content" title="See the start of the preview">Preview</a>41 ↑42 </div>43 38 <fieldset id="changeinfo"> 44 39 <legend>Change information</legend> … … 54 49 <div class="field"> 55 50 <label>Comment about this change (optional):<br /> 56 <input id="comment" type="text" name="comment" size=" 60" value="$comment" />51 <input id="comment" type="text" name="comment" size="80" value="$comment" /> 57 52 </label> 58 53 </div> -
trunk/trac/wiki/templates/wiki_view.html
r10741 r11129 47 47 <div class="wikipage searchable" py:choose="" xml:space="preserve"> 48 48 <py:when test="page.exists"> 49 <div id="wikipage" class="trac-content" py:content="wiki_to_html(context, text)" /> 49 50 <?python 50 51 last_modification = (page.comment and … … 61 62 <span class="trac-print" i18n:msg="date">Last modified on ${format_datetime(page.time)}</span> 62 63 </div> 63 <div id="wikipage" py:content="wiki_to_html(context, text)" />64 64 </py:when> 65 65 <py:otherwise> -
trunk/tracopt/ticket/clone.py
r10686 r11129 17 17 from trac.core import Component, implements 18 18 from trac.web.api import ITemplateStreamFilter 19 from trac.util.presentation import captioned_button 19 20 from trac.util.translation import _ 20 21 … … 56 57 return tag.form( 57 58 tag.div( 58 tag.input(type="submit", name="clone", value=_("Clone"), 59 tag.input(type="submit", name="clone", 60 value=captioned_button(req, '+#', _("Clone")), 59 61 title=_("Create a copy of this ticket")), 60 62 [tag.input(type="hidden", name='field_' + n, value=v) -
trunk/tracopt/ticket/deleter.py
r10687 r11129 21 21 from trac.util import get_reporter_id 22 22 from trac.util.datefmt import from_utimestamp 23 from trac.util.presentation import captioned_button 23 24 from trac.util.translation import _ 24 25 from trac.web.api import IRequestFilter, IRequestHandler, ITemplateStreamFilter … … 68 69 tag.div( 69 70 tag.input(type='hidden', name='action', value='delete'), 70 tag.input(type='submit', value=_('Delete'), 71 title=_('Delete ticket')), 72 class_='inlinebuttons'), 71 tag.input(type='submit', 72 value=captioned_button(req, u'–', # 'EN DASH' 73 _("Delete")), 74 title=_('Delete ticket'), 75 class_="trac-delete"), 76 class_="inlinebuttons"), 73 77 action='#', method='get') 74 78 … … 82 86 tag.input(type='hidden', name='cnum', value=cnum), 83 87 tag.input(type='hidden', name='cdate', value=cdate), 84 tag.input(type='submit', value=_('Delete'), 85 title=_('Delete comment %(num)s', 86 num=cnum)), 87 class_='inlinebuttons'), 88 tag.input(type='submit', 89 value=captioned_button(req, u'–', # 'EN DASH' 90 _("Delete")), 91 title=_('Delete comment %(num)s', num=cnum), 92 class_="trac-delete"), 93 class_="inlinebuttons"), 88 94 action='#', method='get') 89 95
Note:
See TracChangeset
for help on using the changeset viewer.