aboutsummaryrefslogtreecommitdiffstats
path: root/view
diff options
context:
space:
mode:
Diffstat (limited to 'view')
-rw-r--r--view/css/mod_chat.css35
-rw-r--r--view/js/main.js15
-rw-r--r--view/pdl/mod_chat.pdl1
-rw-r--r--view/pdl/mod_cloud.pdl2
-rw-r--r--view/theme/redbasic/css/style.css35
-rw-r--r--view/tpl/bookmarkedchats.tpl4
-rw-r--r--view/tpl/chat.tpl99
-rw-r--r--view/tpl/chatroomlist.tpl7
-rwxr-xr-xview/tpl/mail_display.tpl10
-rwxr-xr-xview/tpl/xchan_vcard.tpl2
10 files changed, 152 insertions, 58 deletions
diff --git a/view/css/mod_chat.css b/view/css/mod_chat.css
index 69c2e1528..830cc2f06 100644
--- a/view/css/mod_chat.css
+++ b/view/css/mod_chat.css
@@ -25,14 +25,21 @@ aside {
padding-bottom: 0px;
}
+#chat-destroy {
+ display: inline;
+}
+
#chatTopBar {
- float: left;
- height: 400px;
+ width: 100%;
overflow-y: auto;
}
+#chatroom_list,
+#chatroom_members {
+ display: none;
+}
-#chatUsers img {
+#chatMembers img {
float: left;
margin-right: 5px;
}
@@ -49,11 +56,16 @@ aside {
.chat-item {
display: table;
- table-layout: fixed;
+ float: left;
+}
+.chat-item-self {
+ display: table;
+ float: right;
}
-.chat-item-photo {
+.chat-item-photo,
+.chat-item-photo-self {
display: table-cell;
height: 32px;
width: 32px;
@@ -66,7 +78,17 @@ aside {
padding: 0px 0px 20px 10px;
}
-.chat-item-title {
+.chat-body-self {
+ display: table-cell;
+ vertical-align: top;
+ padding: 0px 10px 20px 0px;
+ text-align: right;
+}
+
+
+
+.chat-item-title,
+.chat-item-title-self {
display: inline-block;
padding: 3px;
margin-bottom: 3px;
@@ -83,4 +105,3 @@ aside {
.leave {
color: red;
}
-
diff --git a/view/js/main.js b/view/js/main.js
index 04b317914..4e99bf1aa 100644
--- a/view/js/main.js
+++ b/view/js/main.js
@@ -1451,3 +1451,18 @@ function zid(s) {
return s;
}
+
+function makeFullScreen(full) {
+ if(typeof full=='undefined' || full == true) {
+ $('#fullscreen-btn, header, nav, aside').hide();
+ $('main').css({'width': '100%', 'max-width': 'none'});
+ $('#inline-btn').show();
+ $('.generic-content-wrapper').addClass('fullscreen');
+ }
+ else {
+ $('#fullscreen-btn, header, nav, aside').show();
+ $('main').removeAttr('style');
+ $('#inline-btn').hide();
+ $('.generic-content-wrapper').removeClass('fullscreen');
+ }
+}
diff --git a/view/pdl/mod_chat.pdl b/view/pdl/mod_chat.pdl
index 564199bed..664e77f53 100644
--- a/view/pdl/mod_chat.pdl
+++ b/view/pdl/mod_chat.pdl
@@ -3,4 +3,5 @@
[widget=chatroom_list][/widget]
[widget=bookmarkedchats][/widget]
[widget=suggestedchats][/widget]
+[widget=chatroom_members][/widget]
[/region]
diff --git a/view/pdl/mod_cloud.pdl b/view/pdl/mod_cloud.pdl
index 6b1d2a15e..d8f50ad7a 100644
--- a/view/pdl/mod_cloud.pdl
+++ b/view/pdl/mod_cloud.pdl
@@ -1,3 +1,3 @@
[region=aside]
-[widget=profile][/widget]
+[widget=vcard][/widget]
[/region]
diff --git a/view/theme/redbasic/css/style.css b/view/theme/redbasic/css/style.css
index 7f9f621a3..6feb1154b 100644
--- a/view/theme/redbasic/css/style.css
+++ b/view/theme/redbasic/css/style.css
@@ -1264,7 +1264,8 @@ img.mail-conv-sender-photo {
.wall-item-content,
.mail-conv-body,
.page-body,
-.chat-item-text {
+.chat-item-text,
+.chat-item-text-self {
font-size: $font_size;
clear: both;
}
@@ -1363,15 +1364,21 @@ img.mail-conv-sender-photo {
cursor: pointer;
}
-.chat-item-photo {
+.chat-item-photo,
+.chat-item-photo-self {
border-radius: $radiuspx;
}
-.chat-item-title {
+.chat-item-title,
+.chat-item-title-self {
border-radius: $radiuspx;
background-color: $item_colour;
}
+#chatMembers img {
+ border-radius: $radiuspx;
+}
+
/* nav bootstrap */
@@ -1511,6 +1518,28 @@ nav .dropdown-menu {
word-wrap: break-word;
}
+.generic-content-wrapper.fullscreen {
+ position: absolute;
+ width: 100%;
+ height: 100%;
+ top: 0px;
+ left: 0px;
+ border: 0px;
+ border-radius: 0px;
+}
+
+.generic-content-wrapper.fullscreen .section-title-wrapper {
+ border-radius: 0px;
+}
+
+.generic-content-wrapper.fullscreen .section-content-wrapper {
+ border-radius: 0px;
+}
+
+#inline-btn {
+ display: none;
+}
+
.chatroom-index-row:hover td,
.locs-index-row:hover td,
[id^="cloud-index-"]:hover td,
diff --git a/view/tpl/bookmarkedchats.tpl b/view/tpl/bookmarkedchats.tpl
index ab4372c25..3aabf835a 100644
--- a/view/tpl/bookmarkedchats.tpl
+++ b/view/tpl/bookmarkedchats.tpl
@@ -1,5 +1,5 @@
{{if $rooms}}
-<div class="widget">
+<div id="chatroom_bookmarks" class="widget">
<h3>{{$header}}</h3>
<ul class="bookmarkchat nav nav-pills nav-stacked">
{{foreach $rooms as $room}}
@@ -7,4 +7,4 @@
{{/foreach}}
</ul>
</div>
-{{/if}} \ No newline at end of file
+{{/if}}
diff --git a/view/tpl/chat.tpl b/view/tpl/chat.tpl
index a040cbd3f..4750f81fd 100644
--- a/view/tpl/chat.tpl
+++ b/view/tpl/chat.tpl
@@ -1,14 +1,16 @@
<div class="generic-content-wrapper">
<div class="section-title-wrapper">
- {{if $is_owner}}
- <div id="chatDrop" class="pull-right">
+ <div class="pull-right">
+ <button id="fullscreen-btn" type="button" class="btn btn-default btn-xs" onclick="makeFullScreen(); adjustFullscreenTopBarHeight();"><i class="icon-resize-full"></i></button>
+ <button id="inline-btn" type="button" class="btn btn-default btn-xs" onclick="makeFullScreen(false); adjustInlineTopBarHeight();"><i class="icon-resize-small"></i></button>
+ {{if $is_owner}}
<form id="chat-destroy" method="post" action="chat">
<input type="hidden" name="room_name" value="{{$room_name}}" />
<input type="hidden" name="action" value="drop" />
<button class="btn btn-danger btn-xs" type="submit" name="submit" value="{{$drop}}" onclick="return confirmDelete();"><i class="icon-trash"></i>&nbsp;{{$drop}}</button>
</form>
+ {{/if}}
</div>
- {{/if}}
<h2>{{$room_name}}</h2>
<div class="clear"></div>
</div>
@@ -28,8 +30,8 @@
<div class="form-group">
</div>
- <div id="chat-submit-wrapper" class="form-group">
- <div id="chat-submit" class="btn-group dropup pull-right">
+ <div id="chat-submit-wrapper">
+ <div id="chat-submit" class="dropup pull-right">
<button class="btn btn-default btn-sm dropdown-toggle" type="button" data-toggle="dropdown"><i class="icon-caret-down"></i></button>
<button class="btn btn-primary btn-sm" type="submit" id="chat-submit" name="submit" value="{{$submit}}">{{$submit}}</button>
<ul class="dropdown-menu">
@@ -103,10 +105,22 @@ var last_chat = 0;
var chat_timer = null;
$(document).ready(function() {
+ $('#chatTopBar').spin('small');
chat_timer = setTimeout(load_chats,300);
-
+ $('#chatroom_bookmarks, #vcard').hide();
+ $('#chatroom_list, #chatroom_members').show();
+ adjustInlineTopBarHeight();
});
+$(window).resize(function () {
+ if($('.generic-content-wrapper').hasClass('fullscreen')) {
+ adjustFullscreenTopBarHeight();
+ }
+ else {
+ adjustInlineTopBarHeight();
+ }
+ $('#chatTopBar').scrollTop($('#chatTopBar').scrollTop() + $('#chatTopBar').outerHeight(true));
+});
$('#chat-form').submit(function(ev) {
$('body').css('cursor','wait');
@@ -124,6 +138,7 @@ function load_chats() {
if(data.success && (! stopped)) {
update_inroom(data.inroom);
update_chats(data.chats);
+ $('#chatTopBar').spin(false);
}
});
@@ -136,20 +151,27 @@ function update_inroom(inroom) {
var count = inroom.length;
$.each( inroom, function(index, item) {
var newNode = document.createElement('div');
+ newNode.setAttribute('class', 'member-item');
$(newNode).html('<img style="height: 32px; width: 32px;" src="' + item.img + '" alt="' + item.name + '" /> ' + '<span class="name">' + item.name + '</span><br /><span class="' + item.status_class + '">' + item.status + '</span>');
html.appendChild(newNode);
});
- $('#chatUsers').html(html);
+ $('#chatMembers').html(html);
}
function update_chats(chats) {
-
var count = chats.length;
$.each( chats, function(index, item) {
last_chat = item.id;
var newNode = document.createElement('div');
- newNode.setAttribute('class', 'chat-item');
- $(newNode).html('<img class="chat-item-photo" src="' + item.img + '" alt="' + item.name + '" /><div class="chat-body"><div class="chat-item-title"><span class="chat-item-name">' + item.name + ' </span><span class="autotime chat-item-time" title="' + item.isotime + '">' + item.localtime + '</span></div><div class="chat-item-text">' + item.text + '</div></div><div class="chat-item-end"></div>');
+
+ if(item.self) {
+ newNode.setAttribute('class', 'chat-item-self clear');
+ $(newNode).html('<div class="chat-body-self"><div class="chat-item-title-self"><span class="chat-item-name-self">' + item.name + ' </span><span class="autotime chat-item-time-self" title="' + item.isotime + '">' + item.localtime + '</span></div><div class="chat-item-text-self">' + item.text + '</div></div><img class="chat-item-photo-self" src="' + item.img + '" alt="' + item.name + '" />');
+ }
+ else {
+ newNode.setAttribute('class', 'chat-item clear');
+ $(newNode).html('<img class="chat-item-photo" src="' + item.img + '" alt="' + item.name + '" /><div class="chat-body"><div class="chat-item-title"><span class="chat-item-name">' + item.name + ' </span><span class="autotime chat-item-time" title="' + item.isotime + '">' + item.localtime + '</span></div><div class="chat-item-text">' + item.text + '</div></div>');
+ }
$('#chatLineHolder').append(newNode);
$(".autotime").timeago();
@@ -159,7 +181,6 @@ function update_chats(chats) {
}
-
function chatJotGetLink() {
reply = prompt("{{$linkurl}}");
if(reply && reply.length) {
@@ -175,32 +196,40 @@ function addmailtext(data) {
var currentText = $("#chatText").val();
$("#chatText").val(currentText + data);
}
-</script>
-<script>
-function isMobile() {
-if( navigator.userAgent.match(/Android/i)
- || navigator.userAgent.match(/webOS/i)
- || navigator.userAgent.match(/iPhone/i)
- || navigator.userAgent.match(/iPad/i)
- || navigator.userAgent.match(/iPod/i)
- || navigator.userAgent.match(/BlackBerry/i)
- || navigator.userAgent.match(/Windows Phone/i)
- ){
- return true;
- }
- else {
- return false;
- }
+
+function adjustFullscreenTopBarHeight() {
+ $('#chatTopBar').height($(window).height() - $('#chatBottomBar').outerHeight(true) - $('.section-title-wrapper').outerHeight(true) - 23);
+}
+
+function adjustInlineTopBarHeight() {
+ $('#chatTopBar').height($(window).height() - $('#chatBottomBar').outerHeight(true) - $('.section-title-wrapper').outerHeight(true) - $('nav').outerHeight(true) - 23);
}
-$(function(){
- $('#chatText').keypress(function(e){
- if (e.keyCode == 13 && e.shiftKey||isMobile()) {
+function isMobile() {
+ if( navigator.userAgent.match(/Android/i)
+ || navigator.userAgent.match(/webOS/i)
+ || navigator.userAgent.match(/iPhone/i)
+ || navigator.userAgent.match(/iPad/i)
+ || navigator.userAgent.match(/iPod/i)
+ || navigator.userAgent.match(/BlackBerry/i)
+ || navigator.userAgent.match(/Windows Phone/i)
+ ){
+ return true;
+ }
+ else {
+ return false;
}
- else if (e.keyCode == 13) {
- e.preventDefault();
- $('#chat-form').trigger('submit');
- }
- });
+}
+
+$(function(){
+ $('#chatText').keypress(function(e){
+ if (e.keyCode == 13 && e.shiftKey||isMobile()) {
+ //do nothing
+ }
+ else if (e.keyCode == 13) {
+ e.preventDefault();
+ $('#chat-form').trigger('submit');
+ }
+ });
});
</script>
diff --git a/view/tpl/chatroomlist.tpl b/view/tpl/chatroomlist.tpl
index 542ff9a0c..ff4b79a4b 100644
--- a/view/tpl/chatroomlist.tpl
+++ b/view/tpl/chatroomlist.tpl
@@ -1,15 +1,10 @@
-<div class="widget">
+<div id="chatroom_list" class="widget">
<h3>{{$header}}</h3>
- {{if $items}}
<ul class="nav nav-pills nav-stacked">
<li><a href="{{$baseurl}}/chat/{{$nickname}}">{{$overview}}</a></li>
{{foreach $items as $item}}
<li><a href="{{$baseurl}}/chat/{{$nickname}}/{{$item.cr_id}}"><span class="badge pull-right">{{$item.cr_inroom}}</span>{{$item.cr_name}}</a></li>
{{/foreach}}
</ul>
- {{/if}}
- <div id="chatSide">
- <div id="chatUsers"></div>
- </div>
</div>
diff --git a/view/tpl/mail_display.tpl b/view/tpl/mail_display.tpl
index 24e763571..a7754daf2 100755
--- a/view/tpl/mail_display.tpl
+++ b/view/tpl/mail_display.tpl
@@ -1,8 +1,12 @@
<div class="generic-content-wrapper">
<div class="section-title-wrapper">
- {{if $mailbox == 'combined'}}
- <a class="btn btn-xs btn-danger pull-right" href="mail/{{$mailbox}}/dropconv/{{$thread_id}}" onclick="return confirmDelete();"><i class="icon-trash"></i> {{$delete}}</a>
- {{/if}}
+ <div class="pull-right">
+ <button id="fullscreen-btn" type="button" class="btn btn-default btn-xs" onclick="makeFullScreen();"><i class="icon-resize-full"></i></button>
+ <button id="inline-btn" type="button" class="btn btn-default btn-xs" onclick="makeFullScreen(false);"><i class="icon-resize-small"></i></button>
+ {{if $mailbox == 'combined'}}
+ <a class="btn btn-xs btn-danger" href="mail/{{$mailbox}}/dropconv/{{$thread_id}}" onclick="return confirmDelete();"><i class="icon-trash"></i> {{$delete}}</a>
+ {{/if}}
+ </div>
<h2>{{$prvmsg_header}}</h2>
<div class="clear"></div>
</div>
diff --git a/view/tpl/xchan_vcard.tpl b/view/tpl/xchan_vcard.tpl
index ad409d75b..52bf6ab47 100755
--- a/view/tpl/xchan_vcard.tpl
+++ b/view/tpl/xchan_vcard.tpl
@@ -1,4 +1,4 @@
-<div class="vcard">
+<div id="vcard" class="vcard">
<div id="profile-photo-wrapper"><a href="{{$link}}"><img class="vcard-photo photo" src="{{$photo}}" alt="{{$name}}" /></a></div>
{{if $connect}}
<div class="connect-btn-wrapper"><a href="follow?f=&url={{$follow}}" class="btn btn-block btn-success btn-sm"><i class="icon-plus"></i> {{$connect}}</a></div>