Merge branch 'master' of github.com:martini/zammad

This commit is contained in:
Martin Edenhofer 2012-04-22 17:45:42 +02:00
commit c986be287b
11 changed files with 119 additions and 106 deletions

Binary file not shown.

Before

Width:  |  Height:  |  Size: 4.3 KiB

After

Width:  |  Height:  |  Size: 10 KiB

View file

@ -110,7 +110,7 @@ class Index extends App.Controller
@configure_attributes_ticket = [
{ name: 'ticket_state_id', display: 'State', tag: 'select', multiple: false, null: true, relation: 'TicketState', default: 'new', class: 'span2', item_class: 'keepleft' },
{ name: 'ticket_priority_id', display: 'Priority', tag: 'select', multiple: false, null: true, relation: 'TicketPriority', default: '2 normal', class: 'span2', item_class: 'keepleft' },
{ name: 'ticket_priority_id', display: 'Priority', tag: 'select', multiple: false, null: true, relation: 'TicketPriority', default: '2 normal', class: 'span1', item_class: 'keepleft' },
{ name: 'group_id', display: 'Group', tag: 'select', multiple: false, null: true, relation: 'Group', class: 'span2', item_class: 'keepleft' },
{ name: 'owner_id', display: 'Owner', tag: 'select', multiple: false, null: true, relation: 'User', filter: @edit_form, nulloption: true, class: 'span2', item_class: 'keepleft' },
]

View file

@ -485,8 +485,8 @@ qq.FileUploader = function(o){
listElement: null,
template: '<div class="qq-uploader">' +
'<div class="qq-upload-drop-area"><span>Drop files here to upload</span></div>' +
'<div class="qq-upload-button">Upload a file</div>' +
'<div class="qq-upload-drop-area btn"><i class="icon-attachment"></i> Drop to attach files</div>' +
'<div class="qq-upload-button btn"><i class="icon-attachment"></i> Attach files</div>' +
'<ul class="qq-upload-list"></ul>' +
'</div>',
@ -549,7 +549,8 @@ qq.extend(qq.FileUploader.prototype, {
},
_setupDragDrop: function(){
var self = this,
dropArea = this._find(this._element, 'drop');
dropArea = this._find(this._element, 'drop'),
button = this._find(this._element, 'button');
var dz = new qq.UploadDropZone({
element: dropArea,
@ -565,6 +566,7 @@ qq.extend(qq.FileUploader.prototype, {
},
onDrop: function(e){
dropArea.style.display = 'none';
button.style.display = 'inline-block';
qq.removeClass(dropArea, self._classes.dropActive);
self._uploadFileList(e.dataTransfer.files);
}
@ -575,7 +577,8 @@ qq.extend(qq.FileUploader.prototype, {
qq.attach(document, 'dragenter', function(e){
if (!dz._isValidFileDrag(e)) return;
dropArea.style.display = 'block';
dropArea.style.display = 'block';
button.style.display = 'none';
});
qq.attach(document, 'dragleave', function(e){
if (!dz._isValidFileDrag(e)) return;
@ -583,7 +586,8 @@ qq.extend(qq.FileUploader.prototype, {
var relatedTarget = document.elementFromPoint(e.clientX, e.clientY);
// only fire when leaving document out
if ( ! relatedTarget || relatedTarget.nodeName == "HTML"){
dropArea.style.display = 'none';
dropArea.style.display = 'none';
button.style.display = 'inline-block';
}
});
},

View file

@ -18,7 +18,7 @@
</ul>
</div>
<div class="pagination keepleft">
<div class="pagination keepright">
<ul>
<% for item in @view_modes: %>
<li class="<%= item.class %>">

View file

@ -2,16 +2,16 @@
<h1><%= @ticket.title %> <small><%= @ticket.number %></small></h1>
</div>
<div class="row">
<div class="row ticket-answer">
<div class="span9">
<div class="row">
<div class="span1 media-grid">
<div class="row well">
<div class="avatar span1 media-grid">
<img class="thumbnail user-data" data-id="<%= window.Session['id'] %>"" src="<%- window.Session['image'] %>" alt="">
</div>
<div class="span8">
<div class="row ">
<div class="row">
<form class="form-stacked keepleft update-box">
@ -21,7 +21,7 @@
<div class="keepleft" id="file-uploader"></div>
&nbsp;
<input type="submit" class="btn primary submit" value="submit">
<input type="submit" class="btn btn-primary submit" value="submit">
</form>
</div>

View file

@ -1410,7 +1410,7 @@ table .span24 {
.icon-glass {
background-position: 0 0;
}
.icon-music {
.icon-attachment {
background-position: -24px 0;
}
.icon-search {
@ -3193,6 +3193,11 @@ input[type="submit"].btn.btn-mini {
-moz-border-radius: 0 3px 3px 0;
border-radius: 0 3px 3px 0;
}
.pagination li:only-child a {
-webkit-border-radius: 3px;
-moz-border-radius: 3px;
border-radius: 3px;
}
.pagination-centered {
text-align: center;
}

View file

@ -1,21 +1,21 @@
.qq-uploader { position:relative; width: 100%;}
.qq-upload-button {
display:block; /* or inline-block */
width: 105px; padding: 7px 0; text-align:center;
background:#880000; border-bottom:1px solid #ddd;color:#fff;
/*display:block; /* or inline-block */
/*width: 105px; padding: 7px 0; text-align:center;
background:#880000; border-bottom:1px solid #ddd;color:#fff;*/
}
.qq-upload-button-hover {background:#cc0000;}
.qq-upload-button-focus {outline:1px dotted black;}
.qq-upload-drop-area {
position:absolute; top:0; left:0; width:100%; height:100%; min-height: 70px; z-index:2;
background:#FF9797; text-align:center;
/*position:absolute; top:0; left:0; width:100%; height:100%; min-height: 70px; z-index:2;
background:#FF9797; text-align:center; */
}
.qq-upload-drop-area span {
display:block; position:absolute; top: 50%; width:100%; margin-top:-8px; font-size:16px;
/*display:block; position:absolute; top: 50%; width:100%; margin-top:-8px; font-size:16px;*/
}
.qq-upload-drop-area-active {background:#FF7171;}
.qq-upload-drop-area-active {}
.qq-upload-list {margin:15px 35px; padding:0; list-style:disc;}
.qq-upload-list li { margin:0; padding:0; line-height:15px; font-size:12px;}

View file

@ -74,15 +74,29 @@ footer {
}
.keepleft {
float:left;
float: left;
}
.keepright {
float: right;
}
.update-box {
margin-left: 10px;
}
.article {
.ticket-answer .well {
margin-left: 0;
margin-right: 20px;
}
.ticket-answer .avatar {
margin-left: 0;
}
.ticket-answer .span8 { width: 560px; }
.article {
margin-left: 0;
padding-top: 4px;
padding-bottom: 4px;
margin-top: 5px;

View file

@ -6,6 +6,7 @@ body {
color: rgba(0,0,0,.89);
font: 12px/17px "Helvetica Neue", Helvetica, Arial, sans-serif;
background: url(../img/minimalism_by_nerdynotdirty.jpg);
background: url(../img/bg.jpg);
background-size: cover;
}
.avatar {
@ -15,8 +16,9 @@ body {
background-size: cover;
}
header {
height: 36px;
padding: 8px 0 8px 13px;
height: 40px;
padding: 12px 0 8px 13px;
background: #eee;
border-bottom: 1px solid hsla(222, 10%, 55%,.34);
}
h2 {
@ -30,6 +32,9 @@ header {
margin-right: 13px;
float: right;
}
header button {
margin-top: -3px;
}
.sidebar {
width: 200px;
left: 0;
@ -105,8 +110,16 @@ header {
float: right;
padding: 1px 5px;
font-size: 10px;
background: hsl(10, 100%, 50%);
border-radius: 3px;
font-weight: bold;
text-shadow: 0 1px rgba(255,255,255,.55);
background-color: hsl(55, 100%, 50%);
background-image: -webkit-linear-gradient(transparent, rgba(0,0,0,.05));
border-radius: 2px;
border: 1px solid rgba(0,0,0,.34);
box-shadow:
0 1px rgba(0,0,0,.05),
0 1px 3px rgba(0,0,0,.05),
0 0 0 1px rgba(255,255,255,.21) inset;
}
.twoColumns, .stream, .conversation {
top: 0;
@ -121,9 +134,10 @@ header {
left: 0;
right: 0;
bottom: 0;
top: 36px;
top: 40px;
position: absolute;
overflow: auto;
background: white;
}
.stream {
left: 0;
@ -139,28 +153,37 @@ header {
.stream.important article { border-left: 5px solid rgba(0,255,0,.34); }
.stream article.urgent { border-left-color: rgba(255,0,0,.55); }
.stream article.important { border-left-color: rgba(255,180,80,.89); }
.stream article:before { width: 16px; height: 16px; top: 44px; left: 44px; content: " "; position: absolute; display: none; z-index: 1; opacity: 0.8; }
.stream article:hover:before { display: block; }
.stream article.fbt:before { background: url(img/facebook_16.png); }
.stream article.selected {
background-image: -webkit-linear-gradient(rgba(0,0,0,.13), rgba(0,0,0,.08));
background: hsl(55, 100%, 50%);
}
.stream section {
height: 100%;
.stream article.selected p {
color: black;
}
.stream section {
margin-left: 63px;
overflow: hidden;
text-overflow: ellipsis;
}
.stream .name { font-weight: bold; }
.stream nav, .stream .time { float: right; }
.stream nav { display: none; margin-top: -3px; }
.stream nav span { color: hsl(222, 10%, 75%); padding-left: 3px; cursor: pointer; }
.stream nav span:hover { color: hsl(222, 10%, 34%); }
.stream article:hover nav { display: block; }
.stream .time, .stream .service { padding-left: 5px; color: rgba(0,0,0,.34); font-size: 0.9em; }
.stream article:hover .time { display: none; }
.stream .service { visibility: hidden; }
.stream article:hover .service { visibility: visible; }
.stream .name {
font-weight: bold;
}
.stream nav, .stream .time {
float: right;
}
.stream nav {
margin-top: -5px;
}
.stream nav span {
color: rgba(0,0,0,.34);
padding-left: 3px;
cursor: pointer;
}
.stream nav span:hover {
color: rgba(0,0,0,1);
}
.stream .time, .stream .channel {
padding-left: 5px;
color: black;
font-size: 0.95em;
}
.stream img {
left: 13px;
position: absolute;
@ -182,6 +205,12 @@ header {
}
.stream section.answer button { float: right; }
.stream section.answer img { top: 6px; left: 5px; width: 25px; border-radius: 2px; }
.stream p {
height: 32px;
color: rgba(0,0,0,.50);
overflow: hidden;
text-overflow: ellipsis;
}
.conversation {
left: 40%;
right: 0;
@ -198,15 +227,17 @@ header {
.conversation .agent .body, .conversation .customer .body {
min-height: 34px;
float: left;
padding: 8px 13px;
padding: 0 13px;
margin: 0 0 13px 58px;
background: white;
border: 1px solid hsla(222, 10%, 55%,.34);
border-radius: 5px;
box-shadow: 0 1px 2px hsla(222, 10%, 55%,.34);
}
.conversation .agent .body { float: right; margin: 0 58px 13px 0; }
.converastion .agent { float: right; }
.conversation .body p {
margin: 8px 0;
}
.converastion .customer { float: left; }
blockquote {
margin: 8px 0;
@ -227,6 +258,7 @@ header {
button {
padding: 3px 13px;
color: rgba(0,0,0,.89);
line-height: 15px;
text-shadow: 0 1px rgba(255,255,255,.34);
background: rgba(0,0,0,.13);
background: -webkit-linear-gradient(rgba(0,0,0,.03), rgba(0,0,0,.08));

BIN
prototype/img/bg.jpg Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 29 KiB

View file

@ -51,12 +51,8 @@
<img src="img/user2.jpg" />
<section>
<div class="info">
<span class="name">Jennifer Rostock</span><span class="service">via Mail</span>
<nav>
<span class="answer">antworten</span>
<span class="mark">markieren</span>
</nav>
<span class="time">1 day ago</span>
<span class="name">Jennifer Rostock</span><span class="channel">via Mail</span>
<span class="time">30 seconds ago</span>
</div>
<p>What?! As you wish. No! Alderaan is peaceful. We have no weapons. You can't possibly… But with the blast shield down, I can't even see! How am I supposed to fight? Hey, Luke! May the Force be with you.</p>
</section>
@ -65,12 +61,8 @@
<img src="img/user3.jpg" />
<section>
<div class="info">
<span class="name">Thomas B.</span><span class="service">via Twitter</span>
<nav>
<span class="answer">antworten</span>
<span class="mark">markieren</span>
</nav>
<span class="time">3 days ago</span>
<span class="name">Thomas B.</span><span class="channel">via Twitter</span>
<span class="time">5 minutes ago</span>
</div>
<p>As you wish. Leave that to me. Send a distress signal, and inform the Senate that all on board were killed. Partially, but it also obeys your commands. Red Five standing by. I call it luck. Don't underestimate the Force.</p>
</section>
@ -79,12 +71,8 @@
<img src="img/user4.jpg" />
<section>
<div class="info">
<span class="name">Martin R.</span><span class="service">via Mail</span>
<nav>
<span class="answer">antworten</span>
<span class="mark">markieren</span>
</nav>
<span class="time">2 days ago</span>
<span class="name">Martin R.</span><span class="channel">via Mail</span>
<span class="time">5 hours ago</span>
</div>
<p>I want to know what happened to the plans they sent you. A tremor in the Force. The last time I felt it was in the presence of my old master.</p>
</section>
@ -93,11 +81,7 @@
<img src="img/user5.jpg" />
<section>
<div class="info">
<span class="name">Stefan Lohammer</span><span class="service">via Facebook</span>
<nav>
<span class="answer">antworten</span>
<span class="mark">markieren</span>
</nav>
<span class="name">Stefan Lohammer</span><span class="channel">via Facebook</span>
<span class="time">2 days</span>
</div>
<p>I suggest you try it again, Luke. This time, let go your conscious self and act on instinct. Leave that to me. Send a distress signal, and inform the Senate that all on board were killed.</p>
@ -108,10 +92,6 @@
<section>
<div class="info">
<span class="name">Anna Huber</span>
<nav>
<span class="answer">antworten</span>
<span class="mark">markieren</span>
</nav>
<span class="time">5 days</span>
</div>
<p>Your eyes can deceive you. Don't trust them. I want to come with you to Alderaan. There's nothing for me here now. I want to learn the ways of the Force and be a Jedi, like my father before me.</p>
@ -122,10 +102,6 @@
<section>
<div class="info">
<span class="name">Ramona Kurzer</span>
<nav>
<span class="answer">antworten</span>
<span class="mark">markieren</span>
</nav>
<span class="time">1 week ago</span>
</div>
<p>I'm surprised you had the courage to take the responsibility yourself. I can't get involved! I've got work to do! It's not that I like the Empire, I hate it, but there's nothing I can do about it right now. It's such a long way from here. The Force is strong with this one. I have you now.</p>
@ -136,10 +112,6 @@
<section>
<div class="info">
<span class="name">Philipp Maier</span>
<nav>
<span class="answer">antworten</span>
<span class="mark">markieren</span>
</nav>
<span class="time">2 weeks ago</span>
</div>
<p>Escape is not his plan. I must face him, alone. But with the blast shield down, I can't even see! How am I supposed to fight? All right. Well, take care of yourself, Han. I guess that's what you're best at, ain't it?</p>
@ -150,10 +122,6 @@
<section>
<div class="info">
<span class="name">Simon Lanz</span>
<nav>
<span class="answer">antworten</span>
<span class="mark">markieren</span>
</nav>
<span class="time">1 month ago</span>
</div>
<p>
@ -166,11 +134,7 @@
<section>
<div class="info">
<span class="name">Elisabeth Franke</span>
<nav>
<span class="answer">antworten</span>
<span class="mark">markieren</span>
</nav>
<span class="time">2 Tagen</span>
<span class="time">3 months ago</span>
</div>
<p>
I don't know what you're talking about. I am a member of the Imperial Senate on a diplomatic mission to Alderaan-- I'm trying not to, kid. You don't believe in the Force, do you? Look, I ain't in this for your revolution, and I'm not in it for you, Princess. I expect to be well paid.
@ -182,11 +146,7 @@
<section>
<div class="info">
<span class="name">Franz Huber</span>
<nav>
<span class="answer">antworten</span>
<span class="mark">markieren</span>
</nav>
<span class="time">2 Tagen</span>
<span class="time">6 months ago</span>
</div>
<p>
I'm in it for the money. She must have hidden the plans in the escape pod. Send a detachment down to retrieve them, and see to it personally, Commander. There'll be no one to stop us this time!
@ -198,11 +158,7 @@
<section>
<div class="info">
<span class="name">Lars Friedrich</span>
<nav>
<span class="answer">antworten</span>
<span class="mark">markieren</span>
</nav>
<span class="time">5 months</span>
<span class="time">1 year ago</span>
</div>
<p>
Obi-Wan is here. The Force is with him. Partially, but it also obeys your commands. Hokey religions and ancient weapons are no match for a good blaster at your side, kid. All right.
@ -214,11 +170,7 @@
<section>
<div class="info">
<span class="name">Felix</span>
<nav>
<span class="answer">antworten</span>
<span class="mark">markieren</span>
</nav>
<span class="time">2 Tagen</span>
<span class="time">3 years ago</span>
</div>
<p>
Well, take care of yourself, Han. I guess that's what you're best at, ain't it? Remember, a Jedi can feel the Force flowing through him. You don't believe in the Force, do you?
@ -303,5 +255,11 @@
</div>
</div>
</div>
<script type="text/javascript" src="../app/assets/javascripts/app/lib/jquery-1.7.2.min.js"></script>
<script>
$('.stream article').click(function(){
$(this).addClass('selected').siblings().removeClass('selected');
});
</script>
</body>
</html>