bug/bug.xhtml | 115 +++++++------- bug/bug/bug.css | 278 +++++++++++++++++++++++++++++++--- bug/bug/bug.js | 49 +++-- bug/bug/images/description.png |binary bug/bug/images/error-bottom-left.png |binary bug/bug/images/error-bottom-right.png |binary bug/bug/images/error-bottom.png |binary bug/bug/images/error-left.png |binary bug/bug/images/error-right.png |binary bug/bug/images/error-top-left.png |binary bug/bug/images/error-top-right.png |binary bug/bug/images/error-top.png |binary bug/bug/images/login-container.png |binary bug/bug/images/login-input.png |binary bug/bug/images/signin-hover.png |binary bug/bug/images/signin.png |binary bug/bug/images/subject.png |binary bug/bug/images/submit-hover.png |binary bug/bug/images/submit.png |binary bug/bug/images/upload-hover.png |binary bug/bug/images/upload.png |binary bug/bug/skin.js | 61 +++---- bug/component_comments.xsl | 11 - bug/components.xsl | 33 +++- bug/query.pl | 32 +++ bug/subcomponents.xsl | 4 26 files changed, 446 insertions(+), 137 deletions(-)
New commits: commit 1b20ec920288d88e1ede17b3cc180665e8893431 Author: Loic Dachary <l...@dachary.org> Date: Tue Sep 20 00:41:52 2011 +0200 attachment integration diff --git a/bug/bug.xhtml b/bug/bug.xhtml index f8554f4..94e74b7 100644 --- a/bug/bug.xhtml +++ b/bug/bug.xhtml @@ -134,17 +134,23 @@ </div> <div class="state_attach"> + <div class="attach-invite"> Upload an attachment illustrating the problem + </div> <form action='/attachment.cgi' method='post' enctype='multipart/form-data'> <input type="hidden" name="action" value="insert"></input> <input class="bug" type="hidden" name="bugid"></input> <input type="hidden" name="description" value="SCREENSHOT"></input> - <input type="hidden" name="comment" value="SCREENSHOT"></input> + <input type="hidden" name="comment" value="SCREENSHOT COMMENT"></input> <input type="hidden" name="contenttypemethod" value="autodetect"></input> - <input type="file" name="data"></input> - <input type="submit" value="Upload"></input> + <div class="attach-file"> + <input type="file" name="data"></input> + </div> + <div class="attach-submit"> + <input type="submit" value="Upload"></input> + </div> </form> - <img title="SCREENSHOT" /> + <img title="screenshot" /> </div> </div> diff --git a/bug/bug/bug.css b/bug/bug/bug.css index d5d983c..ef22aa5 100644 --- a/bug/bug/bug.css +++ b/bug/bug/bug.css @@ -377,11 +377,46 @@ body { /* state_success */ .state_success { display: none; + text-align: center; + padding: 30px; + font-weight: bold; +} + +.state_success a { + color: #025587; +} + +.state_success a:hover { + color: #29a1e0; } /* state_attach */ .state_attach { display: none; + text-align: center; +} + +.state_attach .attach-invite { + color: #18a403; + padding: 10px; +} + +.state_attach .attach-submit input { + margin-left: auto; + margin-right: 40px; + background: url('images/upload.png') no-repeat; + width: 163px; + height: 49px; + font-weight: bold; + font-size: 20px; + color: #fff; + text-align: center; + line-height: 49px; + border: 0; +} + +.state_attach .attach-submit input:hover { + background: url('images/upload-hover.png') no-repeat; } /* skin */ diff --git a/bug/bug/images/upload-hover.png b/bug/bug/images/upload-hover.png new file mode 100644 index 0000000..886c540 Binary files /dev/null and b/bug/bug/images/upload-hover.png differ diff --git a/bug/bug/images/upload.png b/bug/bug/images/upload.png new file mode 100644 index 0000000..886c540 Binary files /dev/null and b/bug/bug/images/upload.png differ commit c71f8f3fbfb1c8b6284086562728e9befe4527ad Author: Loic Dachary <l...@dachary.org> Date: Tue Sep 20 00:14:29 2011 +0200 integrate the error message diff --git a/bug/bug.xhtml b/bug/bug.xhtml index ad61d5f..f8554f4 100644 --- a/bug/bug.xhtml +++ b/bug/bug.xhtml @@ -42,6 +42,24 @@ </div> </div> <div class="right"> + + <div class="error-container"> + <div class="error-top"> + <div class="error-left"> + <div class="error-bottom"> + <div class="error-right"> + <div class="error-top-left"></div> + <div class="error-top-right"></div> + <div class="error-bottom-left"></div> + <div class="error-bottom-right"></div> + <div class="error"> + </div> + </div> + </div> + </div> + </div> + </div> + <div class="username"></div> @@ -129,23 +147,6 @@ <img title="SCREENSHOT" /> </div> - <div class="error-container"> - <div class="error-top"> - <div class="error-left"> - <div class="error-bottom"> - <div class="error-right"> - <div class="error-top-left"></div> - <div class="error-top-right"></div> - <div class="error-bottom-left"></div> - <div class="error-bottom-right"></div> - <div class="error"> - </div> - </div> - </div> - </div> - </div> - </div> - </div> </div> <script> diff --git a/bug/bug/bug.css b/bug/bug/bug.css index 60e81ad..d5d983c 100644 --- a/bug/bug/bug.css +++ b/bug/bug/bug.css @@ -111,6 +111,7 @@ body { } .error-container { + display: none; position: relative; z-index: 1; } diff --git a/bug/bug/bug.js b/bug/bug/bug.js index 3ecbf0c..9c55d0d 100644 --- a/bug/bug/bug.js +++ b/bug/bug/bug.js @@ -35,7 +35,7 @@ if('statusText' in error) { message += 'statusText = ' + error.statusText + ' '; } - $('.error').text(message); + $.bug.error_set(message); throw error; }); }, @@ -50,7 +50,7 @@ if(success !== null) { return success[1]; } else { - $('.error').text("could not match " + success_regexp + " on the string returned by the server " + data); + $.bug.error_set("could not match " + success_regexp + " on the string returned by the server " + data); throw data; } } @@ -61,13 +61,22 @@ $('.step_' + name).addClass('current'); }, + error_clear: function() { + $('.error-container').hide(); + }, + + error_set: function(message) { + $('.error').text(message); + $('.error-container').show(); + }, + state_signin_error_regexp: 'class="throw_error">([^<]*)', state_signin_success_regexp: 'Log out</a>([^<]*)', state_signin: function() { var element = $('.signin'); $('.go', element).click(function() { - $('.error').empty(); + $.bug.error_clear(); $.bug.ajax('POST', '/index.cgi', { Bugzilla_login: $('.user', element).val(), Bugzilla_password: $('.password', element).val() diff --git a/bug/bug/skin.js b/bug/bug/skin.js index 4aebff2..03f56f5 100644 --- a/bug/bug/skin.js +++ b/bug/bug/skin.js @@ -48,7 +48,7 @@ if(location.search.indexOf('skin=login') >= 0) { $.bug.state_signin(); - $('.error').text("THIS IS AN ERROR MESSAGE"); + $.bug.error_set("THIS IS AN ERROR MESSAGE"); } else if(location.search.indexOf('skin=component') >= 0) { component(); } else if(location.search.indexOf('skin=subcomponent') >= 0) { commit 910bf0621fdc213acd38bcb6ca078cf27218a8e6 Author: Loic Dachary <l...@dachary.org> Date: Tue Sep 20 00:00:45 2011 +0200 integrate login diff --git a/bug/bug.xhtml b/bug/bug.xhtml index 952216a..ad61d5f 100644 --- a/bug/bug.xhtml +++ b/bug/bug.xhtml @@ -46,16 +46,18 @@ <div class="state signin"> - <div> - Please login using your <a href="/">Bugzilla account</a>. + <div class="signin-invite"> + Please login using your <a href="/">bugzilla account</a>. </div> - <div> - User: <input class='user' type="text" name="user"></input> - Password: <input class='password' type="password" name="password"></input> + <div class="signin-container"> + <div>User:</div> + <div class="signin-input"><input class='user' type="text" name="user"></input></div> + <div>Password:</div> + <div class="signin-input"><input class='password' type="password" name="password"></input></div> <div class="go">Sign in</div> - </div> - <div> - Or <a href="/enter_bug.cgi" target="_blank">signup</a>. + <div class="signin-create"> + or <a href="/enter_bug.cgi" target="_blank">create an account</a> + </div> </div> </div> diff --git a/bug/bug/bug.css b/bug/bug/bug.css index f7e5bea..60e81ad 100644 --- a/bug/bug/bug.css +++ b/bug/bug/bug.css @@ -106,6 +106,10 @@ body { /* error */ +.error { + color: #f07a7a; +} + .error-container { position: relative; z-index: 1; @@ -185,12 +189,63 @@ body { /* signin */ .signin { - margin: 5px; + padding-top: 20px; + padding-left: 50px; display: none; } +.signin .signin-invite { + padding-left: 20px; + color: #29a1e0; +} + +.signin .signin-container { + background: url('images/login-container.png') no-repeat; + height: 218px; + width: 277px; + padding: 30px; +} + +.signin .signin-input { + margin-left: auto; + margin-right: auto; +} + +.signin .signin-input input { + background: url('images/login-input.png') no-repeat; + height: 42px; + width: 263px; + border: 0; + padding: 5px; +} + .signin .go { - background-color: #BADA55; + margin: 20px 15px 10px auto; + background: url('images/signin.png') no-repeat; + width: 163px; + height: 49px; + font-weight: bold; + font-size: 20px; + color: #fff; + text-align: center; + line-height: 49px; +} + +.signin div:hover.go { + background: url('images/signin-hover.png') no-repeat; +} + +.signin .signin-create { + padding-right: 15px; + text-align: right; +} + +.signin a { + color: #025587; +} + +.signin a:hover { + color: #29a1e0; } /* state_component */ diff --git a/bug/bug/images/login-container.png b/bug/bug/images/login-container.png new file mode 100644 index 0000000..93b7b4c Binary files /dev/null and b/bug/bug/images/login-container.png differ diff --git a/bug/bug/images/login-input.png b/bug/bug/images/login-input.png new file mode 100644 index 0000000..c3af76e Binary files /dev/null and b/bug/bug/images/login-input.png differ diff --git a/bug/bug/images/signin-hover.png b/bug/bug/images/signin-hover.png new file mode 100644 index 0000000..886c540 Binary files /dev/null and b/bug/bug/images/signin-hover.png differ diff --git a/bug/bug/images/signin.png b/bug/bug/images/signin.png new file mode 100644 index 0000000..886c540 Binary files /dev/null and b/bug/bug/images/signin.png differ commit e5ceae90cdac1b3ef259acf6860ef6d5019ad3f6 Author: Loic Dachary <l...@dachary.org> Date: Mon Sep 19 22:58:29 2011 +0200 integrate error message diff --git a/bug/bug.xhtml b/bug/bug.xhtml index c3b9555..952216a 100644 --- a/bug/bug.xhtml +++ b/bug/bug.xhtml @@ -98,7 +98,7 @@ <div class="bug"></div> </div> - <div class="state_duplicates"> + <div class="state state_subcomponent state_duplicates"> Related bug reports <div class="related_bugs"></div> </div> @@ -127,7 +127,22 @@ <img title="SCREENSHOT" /> </div> - <div class="error"></div> + <div class="error-container"> + <div class="error-top"> + <div class="error-left"> + <div class="error-bottom"> + <div class="error-right"> + <div class="error-top-left"></div> + <div class="error-top-right"></div> + <div class="error-bottom-left"></div> + <div class="error-bottom-right"></div> + <div class="error"> + </div> + </div> + </div> + </div> + </div> + </div> </div> </div> diff --git a/bug/bug/bug.css b/bug/bug/bug.css index 6c30d01..f7e5bea 100644 --- a/bug/bug/bug.css +++ b/bug/bug/bug.css @@ -106,8 +106,81 @@ body { /* error */ -.error { - background-color: #ff5555; +.error-container { + position: relative; + z-index: 1; +} + +.error-container .error-top-left { + position: absolute; + top: 0; + left: 0; + z-index: 2; +} + +.error-container .error-bottom-left { + position: absolute; + bottom: 0; + left: 0; + z-index: 2; +} + +.error-container .error-top-right { + position: absolute; + top: 0; + right: 0; + z-index: 2; +} + +.error-container .error-bottom-right { + position: absolute; + bottom: 0; + right: 0; + z-index: 2; +} + +.error-container .error-top { + padding-top: 4px; + background: url('images/error-top.png') repeat-x top left; +} + +.error-container .error-bottom { + padding-bottom: 4px; + background: url('images/error-bottom.png') repeat-x bottom left; +} + +.error-container .error-top-left { + background: url('images/error-top-left.png') no-repeat; + height: 4px; + width: 5px; +} + +.error-container .error-top-right { + background: url('images/error-top-right.png') no-repeat; + height: 4px; + width: 5px; +} + +.error-container .error-bottom-left { + background: url('images/error-bottom-left.png') no-repeat; + height: 4px; + width: 5px; +} + +.error-container .error-bottom-right { + background: url('images/error-bottom-right.png') no-repeat; + height: 4px; + width: 5px; +} + +.error-container .error-left { + background: url('images/error-left.png') repeat-y top left; + padding-left: 5px; +} + +.error-container .error-right { + background: url('images/error-right.png') repeat-y top right; + padding-right: 5px; } /* signin */ diff --git a/bug/bug/images/error-bottom-left.png b/bug/bug/images/error-bottom-left.png new file mode 100644 index 0000000..60f48f1 Binary files /dev/null and b/bug/bug/images/error-bottom-left.png differ diff --git a/bug/bug/images/error-bottom-right.png b/bug/bug/images/error-bottom-right.png new file mode 100644 index 0000000..7299107 Binary files /dev/null and b/bug/bug/images/error-bottom-right.png differ diff --git a/bug/bug/images/error-bottom.png b/bug/bug/images/error-bottom.png new file mode 100644 index 0000000..d7046ee Binary files /dev/null and b/bug/bug/images/error-bottom.png differ diff --git a/bug/bug/images/error-left.png b/bug/bug/images/error-left.png new file mode 100644 index 0000000..dcb43ab Binary files /dev/null and b/bug/bug/images/error-left.png differ diff --git a/bug/bug/images/error-right.png b/bug/bug/images/error-right.png new file mode 100644 index 0000000..9c5f23a Binary files /dev/null and b/bug/bug/images/error-right.png differ diff --git a/bug/bug/images/error-top-left.png b/bug/bug/images/error-top-left.png new file mode 100644 index 0000000..f9a449c Binary files /dev/null and b/bug/bug/images/error-top-left.png differ diff --git a/bug/bug/images/error-top-right.png b/bug/bug/images/error-top-right.png new file mode 100644 index 0000000..0368463 Binary files /dev/null and b/bug/bug/images/error-top-right.png differ diff --git a/bug/bug/images/error-top.png b/bug/bug/images/error-top.png new file mode 100644 index 0000000..0ebfacf Binary files /dev/null and b/bug/bug/images/error-top.png differ diff --git a/bug/bug/skin.js b/bug/bug/skin.js index bb37ee3..4aebff2 100644 --- a/bug/bug/skin.js +++ b/bug/bug/skin.js @@ -48,6 +48,7 @@ if(location.search.indexOf('skin=login') >= 0) { $.bug.state_signin(); + $('.error').text("THIS IS AN ERROR MESSAGE"); } else if(location.search.indexOf('skin=component') >= 0) { component(); } else if(location.search.indexOf('skin=subcomponent') >= 0) { commit cc1bd02582dbf200353ed7394638418e0cf3f490 Author: Loic Dachary <l...@dachary.org> Date: Mon Sep 19 22:30:45 2011 +0200 integrate submit diff --git a/bug/bug.xhtml b/bug/bug.xhtml index 24d4aed..c3b9555 100644 --- a/bug/bug.xhtml +++ b/bug/bug.xhtml @@ -94,7 +94,7 @@ </div> <div class="state state_submit"> - <div class="go">SUBMIT</div> + <div class="go">Submit</div> <div class="bug"></div> </div> diff --git a/bug/bug/bug.css b/bug/bug/bug.css index aee2672..6c30d01 100644 --- a/bug/bug/bug.css +++ b/bug/bug/bug.css @@ -214,7 +214,20 @@ body { } .state_submit .go { - background-color: #BADA55; + margin-left: auto; + margin-right: 40px; + background: url('images/submit.png') no-repeat; + width: 163px; + height: 49px; + font-weight: bold; + font-size: 20px; + color: #fff; + text-align: center; + line-height: 49px; +} + +.state_submit div:hover.go { + background: url('images/submit-hover.png') no-repeat; } /* related bugs */ diff --git a/bug/bug/images/submit-hover.png b/bug/bug/images/submit-hover.png new file mode 100644 index 0000000..886c540 Binary files /dev/null and b/bug/bug/images/submit-hover.png differ diff --git a/bug/bug/images/submit.png b/bug/bug/images/submit.png new file mode 100644 index 0000000..886c540 Binary files /dev/null and b/bug/bug/images/submit.png differ commit 369534650d3c539f830b9bffe2bc97a32c0777cc Author: Loic Dachary <l...@dachary.org> Date: Mon Sep 19 21:43:23 2011 +0200 integrate description diff --git a/bug/bug.xhtml b/bug/bug.xhtml index 29f4aab..24d4aed 100644 --- a/bug/bug.xhtml +++ b/bug/bug.xhtml @@ -87,8 +87,10 @@ </div> <div class="state state_description"> - <div>Subject: <input type="text" class="short"></input> (5 chars min).</div> - <div>Long description (10 chars min): <textarea rows="10" cols="80" class="long"></textarea></div> + <div class="subject">Subject:</div> + <div class="subject-input"><input type="text" class="short" size="50"></input></div> + <div class="desciption">Long description:</div> + <div class="description-input"><textarea rows="10" cols="60" class="long"></textarea></div> </div> <div class="state state_submit"> diff --git a/bug/bug/bug.css b/bug/bug/bug.css index 6ba7b34..aee2672 100644 --- a/bug/bug/bug.css +++ b/bug/bug/bug.css @@ -192,6 +192,22 @@ body { display: none; } +.state_description .subject-input input { + background: url('images/subject.png') no-repeat; + height: 38px; + width: 328px; + border: 0; + padding: 5px; +} + +.state_description .description-input textarea { + background: url('images/description.png') no-repeat; + height: 118px; + width: 548px; + border: 0; + padding: 5px; +} + /* state_submit */ .state_submit { display: none; @@ -201,6 +217,21 @@ body { background-color: #BADA55; } +/* related bugs */ + +.state_duplicates { + padding-left: 10px; +} + +.state_duplicates .related_bugs { + padding-top: 10px; +} + +.state_duplicates a { + text-decoration: none; + color: #1d97e0; +} + /* state_success */ .state_success { display: none; diff --git a/bug/bug/images/description.png b/bug/bug/images/description.png new file mode 100644 index 0000000..bc7711b Binary files /dev/null and b/bug/bug/images/description.png differ diff --git a/bug/bug/images/subject.png b/bug/bug/images/subject.png new file mode 100644 index 0000000..ea854b6 Binary files /dev/null and b/bug/bug/images/subject.png differ commit 6c43ae61121a6b779333b42338f4ace5def06245 Author: Loic Dachary <l...@dachary.org> Date: Mon Sep 19 21:19:24 2011 +0200 subcomponent shows next to version diff --git a/bug/bug.xhtml b/bug/bug.xhtml index 79dd2b3..29f4aab 100644 --- a/bug/bug.xhtml +++ b/bug/bug.xhtml @@ -61,44 +61,29 @@ <div class="submission"> <div class="state state_component"> - <div class="components_icons"> - <div> - <img src="icons/Libreoffice.png" title="BASIC" alt="BASIC" /> - <img src="icons/Chart.png" title="Chart" alt="Chart" /> - <img src="icons/Libreoffice.png" title="Contrib" alt="Contrib" /> - <img src="icons/Database.png" title="Database" alt="Database" /> - <img src="icons/Documentation.png" title="Documentation" alt="Documentation" /> - <img src="icons/Drawing.png" title="Drawing" alt="Drawing" /> - <img src="icons/Extensions.png" title="Extensions" alt="Extensions" /> - <img src="icons/Formula_editor.png" title="Formula" alt="Formula" /> - <img src="icons/Installation.png" title="Installation" alt="Installation" /> - </div> - <div> - <img src="icons/Libreoffice.png" title="Libreoffice" alt="Libreoffice" /> - <img src="icons/Libreoffice.png" title="Linguistic" alt="Linguistic" /> - <img src="icons/Libreoffice.png" title="Localization" alt="Localization" /> - <img src="icons/PDF_export.png" title="PDF" alt="PDF" /> - <img src="icons/Presentation.png" title="Presentation" alt="Presentation" /> - <img src="icons/Spreadsheet.png" title="Spreadsheet" alt="Spreadsheet" /> - <img src="icons/Libreoffice.png" title="UI" alt="UI" /> - <img src="icons/WRITER.png" title="WRITER" alt="WRITER" /> - <img src="icons/WWW.png" title="WWW" alt="WWW" /> + <div> + <div>Select component</div> + <div>&components;</div> + </div> + <div> + <div class="components_icons"> + <div><img src="icons/Libreoffice.png" title="BASIC" data="BASIC" alt="BASIC" /><img src="icons/Chart.png" title="Chart" data="Chart" alt="Chart" /><img src="icons/Libreoffice.png" title="Contrib" data="Contrib" alt="Contrib" /><img src="icons/Database.png" title="Database" data="Database" alt="Database" /><img src="icons/Documentation.png" title="Documentation" data="Documentation" alt="Documentation" /><img src="icons/Drawing.png" title="Drawing" data="Drawing" alt="Drawing" /></div><div><img src="icons/Extensions.png" title="Extensions" data="Extensions" alt="Extensions" /><img src="icons/Formula_editor.png" title="Formula" data="Formula_editor" alt="Formula" /><img src="icons/Installation.png" title="Installation" data="Installation" alt="Installation" /><img src="icons/Libreoffice.png" title="Libreoffice" data="Libreoffice" alt="Libreoffice" /><img src="icons/Libreoffice.png" title="Linguistic" data="Linguistic" alt="Linguistic" /><img src="icons/Libreoff ice.png" title="Localization" data="Localization" alt="Localization" /></div><div><img src="icons/PDF_export.png" title="PDF" data="PDF_Export" alt="PDF" /><img src="icons/Presentation.png" title="Presentation" data="Presentation" alt="Presentation" /><img src="icons/Spreadsheet.png" title="Spreadsheet" data="Spreadsheet" alt="Spreadsheet" /><img src="icons/Libreoffice.png" title="UI" data="UI" alt="UI" /><img src="icons/WRITER.png" title="WRITER" data="WRITER" alt="WRITER" /><img src="icons/WWW.png" title="WWW" data="WWW" alt="WWW" /></div> </div> + <div>&component_comments;</div> </div> </div> - <div class="state state_component"> - <div>Component</div> - <div>&components;</div> - <div>&component_comments;</div> - </div> - - <div class="state state_subcomponent"> - Sub component <div class="active_subcomponent"></div> - </div> - - <div class="state state_version"> - Version &versions; + <div class="version_and_subcomponent"> + <div> + <div class="state state_subcomponent"> + Sub component <div class="active_subcomponent"></div> + </div> + </div> + <div> + <div class="state state_version"> + Version &versions; + </div> + </div> </div> <div class="state state_description"> diff --git a/bug/bug/bug.css b/bug/bug/bug.css index 8bce573..6ba7b34 100644 --- a/bug/bug/bug.css +++ b/bug/bug/bug.css @@ -1,6 +1,7 @@ body { margin: 0; - height: 650px; + height: 1024px; + font-family: helvetica, arial; } .header { @@ -31,7 +32,7 @@ body { } .content { - width: 800px; + width: 900px; } .content > div { @@ -94,13 +95,13 @@ body { } .right { - padding: 20px; - width: 500px; + padding-left: 40px; + padding-top: 10px; + width: 600px; } .right .state { margin: 5px; - border: 3px solid #18A303; } /* error */ @@ -112,7 +113,6 @@ body { /* signin */ .signin { margin: 5px; - border: 3px solid #18A303; display: none; } @@ -121,24 +121,58 @@ body { } /* state_component */ -.state_component > div { - vertical-align: top; - display: inline-block; -} .state_component { display: none; } +.state_component > div > div { + display: inline-block; +} + .state_component .comments { - width: 250px; + width: 210px; + height: 160px; + background: url('images/comment.png') no-repeat; + float: right; + padding: 5px 10px; + font-size: 12px; +} + +.state_component .comments .comment-header { + color: #4fb33f; + font-weight: bold; + position: relative; + right: 0; +} + +.state_component .comments .comment-read-more a { + text-decoration: none; + color: #cc1300; +} + +.state_component .comments .comment-read-more a:hover { + color: #ea1600; + background: #fafafa; } .state_component .comments .comment { display: none; } +.state_component img { + padding: 5px; +} + +.state_component img:hover { + background: url('icons/icon-hover.png') no-repeat; +} + /* state_subcomponent */ +.version_and_subcomponent > div { + display: inline-block; +} + .state_subcomponent { display: none; } @@ -149,6 +183,7 @@ body { /* state_version */ .state_version { + padding-left: 50px; display: none; } @@ -182,14 +217,15 @@ body { } /* select */ -.select .header { +.select .select-header { background: url('images/select-header.png') no-repeat; padding: 5px 40px 5px 10px; height: 33px; line-height: 33px; + min-width: 150px; } -.select .header, .select .choice { +.select .select-header, .select .choice { font-family: helvetica, arial; font-size: 18px; color: #b8af9e; diff --git a/bug/bug/bug.js b/bug/bug/bug.js index bf4d797..3ecbf0c 100644 --- a/bug/bug/bug.js +++ b/bug/bug/bug.js @@ -88,44 +88,42 @@ state_component: function() { var element = $('.state_component'); - var change_component = function() { - var component = $(this).val(); + $.bug.current_step('component'); + element.show(); + $('.select', element).select(); + $('.select .choice, img', element).click(function() { + var component = $(this).attr('data'); + $('.select .chosen', element).attr('data', component); $('.comment', element).hide(); $('.comment.' + component, element).show(); $.bug.state_subcomponent(); - }; - - $('.component', element).change(change_component); - $('.component', element).prop("selectedIndex", 0); - - $.bug.current_step('component'); - element.show(); + }); }, state_subcomponent: function() { var element = $('.state_subcomponent'); - var component = $('.state_component .component').val(); + var component = $('.state_component .chosen').attr('data'); var subcomponent = $('.subcomponents .' + component, element).html(); $('.active_subcomponent', element).html(subcomponent); - $('.active_subcomponent .select li', element).click(function() { - $.bug.refresh_related_bugs(); - $.bug.state_version(); - }); $.bug.current_step('subcomponent'); element.show(); $('.active_subcomponent .select', element).select(); + $('.active_subcomponent .select .choice', element).click(function() { + $.bug.refresh_related_bugs(); + $.bug.state_version(); + }); }, state_version: function() { var element = $('.state_version'); if(!element.hasClass('initialized')) { - $(".versions", element).change(function() { - $.bug.state_description(); - }); - $(".versions").prop("selectedIndex", 0); element.addClass('initialized'); $.bug.current_step('version'); element.show(); + $('.select', element).select(); + $(".select .choice", element).click(function() { + $.bug.state_description(); + }); } }, diff --git a/bug/bug/skin.js b/bug/bug/skin.js index 0386b7b..bb37ee3 100644 --- a/bug/bug/skin.js +++ b/bug/bug/skin.js @@ -19,47 +19,45 @@ $.skin = function() { $('.skin').show(); - if(location.search.indexOf('skin=login') >= 0) { - $.bug.state_signin(); - } else if(location.search.indexOf('skin=component') >= 0) { - $.bug.state_component(); - } else if(location.search.indexOf('skin=subcomponent') >= 0) { - $.bug.state_component(); - $('.state_component .component').prop("selectedIndex", 2); - $('.state_component .component').change(); - } else if(location.search.indexOf('skin=version') >= 0) { - $.bug.state_component(); - $('.state_component .component').prop("selectedIndex", 2); - $('.state_component .component').change(); - $.bug.ajax = function(settings) { - return $.Deferred().resolve('NUM,DESC\n100,"BUG 1"\n200,"BUG 2"\n'); - }; - $('.state_subcomponent .active_subcomponent .choice:nth(2)').click(); - } else if(location.search.indexOf('skin=description') >= 0) { + function component() { $.bug.state_component(); - $('.state_component .component').prop("selectedIndex", 2); - $('.state_component .component').change(); + } + function subcomponent() { + component(); + $('.state_component .choice:nth(3)').click(); + } + function version() { + subcomponent(); $.bug.ajax = function(settings) { return $.Deferred().resolve('NUM,DESC\n100,"BUG 1"\n200,"BUG 2"\n'); }; $('.state_subcomponent .active_subcomponent .choice:nth(2)').click(); - $('.state_version .versions').prop("selectedIndex", 2); - $('.state_version .versions').change(); + } + function description() { + version(); + $('.state_version .choice:nth(2)').click(); $('.state_description .short').val('12'); $('.state_description .long').val('123456'); - } else if(location.search.indexOf('skin=submit') >= 0) { - $.bug.state_component(); - $('.state_component .component').prop("selectedIndex", 2); - $('.state_component .component').change(); - $.bug.ajax = function(settings) { - return $.Deferred().resolve('NUM,DESC\n100,"BUG 1"\n200,"BUG 2"\n'); - }; - $('.state_subcomponent .active_subcomponent .choice:nth(2)').click(); - $('.state_version .versions').prop("selectedIndex", 2); - $('.state_version .versions').change(); + } + function submit() { + description(); $('.state_description .short').val('1234567890'); $('.state_description .long').val('12345678901'); $('.state_description .short').change(); + } + + if(location.search.indexOf('skin=login') >= 0) { + $.bug.state_signin(); + } else if(location.search.indexOf('skin=component') >= 0) { + component(); + } else if(location.search.indexOf('skin=subcomponent') >= 0) { + subcomponent(); + } else if(location.search.indexOf('skin=version') >= 0) { + version(); + } else if(location.search.indexOf('skin=description') >= 0) { + description(); + } else if(location.search.indexOf('skin=submit') >= 0) { + submit(); } else if(location.search.indexOf('skin=complete') >= 0) { $.bug.state_success(); $.bug.state_attach(); diff --git a/bug/component_comments.xsl b/bug/component_comments.xsl index 75e8da6..436f810 100644 --- a/bug/component_comments.xsl +++ b/bug/component_comments.xsl @@ -17,11 +17,14 @@ <xsl:template match="div[@class='component']"> <xsl:element name="div"> <xsl:attribute name="class"><xsl:value-of select="translate(translate(*[position()=1],' ','_')," ",'_')" /> comment</xsl:attribute> + <div class="comment-header">Component <xsl:value-of select="*[position()=1]" /> </div> <xsl:apply-templates select="*[position()>1]"/> - <xsl:element name="a"> - <xsl:attribute name="href">http://wiki.documentfoundation.org/BugzAssHlp_<xsl:value-of select="translate(translate(*[position()=1],' ','_')," ",'_')" />_long</xsl:attribute> - Read more ... > - </xsl:element> + <div class="comment-read-more"> + <xsl:element name="a"> + <xsl:attribute name="href">http://wiki.documentfoundation.org/BugzAssHlp_<xsl:value-of select="translate(translate(*[position()=1],' ','_')," ",'_')" />_long</xsl:attribute> + Read more ... > + </xsl:element> + </div> </xsl:element> </xsl:template> diff --git a/bug/components.xsl b/bug/components.xsl index 514b7c8..2bb0e77 100644 --- a/bug/components.xsl +++ b/bug/components.xsl @@ -9,15 +9,36 @@ </xsl:template> <xsl:template match="html"> - <select size='7' class="component" name="component"> - <option value=''>(chose a component)</option> - <xsl:apply-templates select="//*[@class='component']"/> - </select> + <div class="component select"> + <div class="select-header"> + <div class="chosen">(chose one)</div> + </div> + <div class="choices"> + <div class="select-top"> + <div class="select-left"> + <div class="select-bottom"> + <div class="select-right"> + <div class="top-left"></div> + <div class="top-right"></div> + <div class="bottom-left"></div> + <div class="bottom-right"></div> + <div class="center"> + <ul> + <xsl:apply-templates select="//*[@class='component']"/> + </ul> + </div> + </div> + </div> + </div> + </div> + </div> + </div> </xsl:template> <xsl:template match="div[@class='component']"> - <xsl:element name="option"> - <xsl:attribute name="value"><xsl:value-of select="translate(translate(*[position()=1],' ','_')," ",'_')" /></xsl:attribute> + <xsl:element name="li"> + <xsl:attribute name="data"><xsl:value-of select="translate(translate(*[position()=1],' ','_')," ",'_')" /></xsl:attribute> + <xsl:attribute name="class">choice</xsl:attribute> <xsl:value-of select="*[position()=1]"/> </xsl:element> </xsl:template> diff --git a/bug/query.pl b/bug/query.pl index 25ee7fc..3d1e8d6 100644 --- a/bug/query.pl +++ b/bug/query.pl @@ -16,10 +16,34 @@ print "<?xml version='1.0' encoding='ISO-8859-1'?>\n"; if($ARGV[0] eq 'versions') { @versions = @{$vers[$libreoffice]}; - print "<select name='version' class='versions'>\n"; - print " <option value=''>(chose a version)</option>\n"; + print <<EOF; + <div class="versions select"> + <div class="select-header"> + <div class="chosen">(chose one)</div> + </div> + <div class="choices"> + <div class="select-top"> + <div class="select-left"> + <div class="select-bottom"> + <div class="select-right"> + <div class="top-left"></div> + <div class="top-right"></div> + <div class="bottom-left"></div> + <div class="bottom-right"></div> + <div class="center"> + <ul> +EOF for($count = 0; $count < @versions; $count++) { - print " <option value='$versions[$count]'>$versions[$count]</option>\n"; + print " <li class='choice' data='$versions[$count]'>$versions[$count]</li>\n"; } - print "</select>\n"; + print <<EOF; + </ul> + </div> + </div> + </div> + </div> + </div> + </div> + </div> +EOF } diff --git a/bug/subcomponents.xsl b/bug/subcomponents.xsl index 8e2050c..54a58e9 100644 --- a/bug/subcomponents.xsl +++ b/bug/subcomponents.xsl @@ -8,7 +8,7 @@ <xsl:element name="div"> <xsl:attribute name="class"><xsl:value-of select="translate(translate(*[position()=1],' ','_')," ",'_')" /></xsl:attribute> <div class="subcomponent select"> - <div class="header"> + <div class="select-header"> <div class="chosen">(chose one)</div> </div> <div class="choices"> @@ -22,7 +22,7 @@ <div class="bottom-right"></div> <div class="center"> <ul> - <li class="choice" data=''><span class="XXX">(all other problems)</span></li> + <li class="choice" data=''>(all other problems)</li> <xsl:apply-templates select="descendant::*[contains(@class,'search')]"/> </ul> </div> _______________________________________________ Libreoffice-commits mailing list Libreoffice-commits@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/libreoffice-commits