Skip to content
Projects
Groups
Snippets
Help
This project
Loading...
Sign in / Register
Toggle navigation
E
edx-platform
Overview
Overview
Details
Activity
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
edx
edx-platform
Commits
1d9a3ed2
Commit
1d9a3ed2
authored
Sep 04, 2012
by
Tom Giannattasio
Committed by
Matthew Mongeau
Sep 10, 2012
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
fixed drop filter
parent
280be657
Hide whitespace changes
Inline
Side-by-side
Showing
2 changed files
with
93 additions
and
108 deletions
+93
-108
lms/static/js/discussions-temp.js
+90
-105
lms/static/sass/_discussion.scss
+3
-3
No files found.
lms/static/js/discussions-temp.js
View file @
1d9a3ed2
...
@@ -14,14 +14,18 @@ var $formTopicDropMenu;
...
@@ -14,14 +14,18 @@ var $formTopicDropMenu;
var
$postListWrapper
;
var
$postListWrapper
;
var
$dropFilter
;
var
$dropFilter
;
var
$topicFilter
;
var
$topicFilter
;
var
$discussionBody
;
var
sidebarWidth
;
var
sidebarWidth
;
var
sidebarHeight
;
var
sidebarHeight
;
var
sidebarHeaderHeight
;
var
sidebarHeaderHeight
;
var
sidebarXOffset
;
var
sidebarXOffset
;
var
scrollTop
;
var
scrollTop
;
var
discussionsBodyTop
;
var
discussionsBodyBottom
;
var
tooltipTimer
;
var
tooltipTimer
;
var
tooltipCoords
;
var
tooltipCoords
;
var
SIDEBAR_PADDING
=
-
1
;
var
SIDEBAR_PADDING
=
10
;
var
SIDEBAR_HEADER_HEIGHT
=
87
;
$
(
document
).
ready
(
function
()
{
$
(
document
).
ready
(
function
()
{
...
@@ -34,6 +38,7 @@ $(document).ready(function() {
...
@@ -34,6 +38,7 @@ $(document).ready(function() {
$tooltip
=
$
(
'<div class="tooltip"></div>'
);
$tooltip
=
$
(
'<div class="tooltip"></div>'
);
$newPost
=
$
(
'.new-post-article'
);
$newPost
=
$
(
'.new-post-article'
);
$sidebar
=
$
(
'.sidebar'
);
$sidebar
=
$
(
'.sidebar'
);
$discussionBody
=
$
(
'.discussion-body'
);
$postListWrapper
=
$
(
'.post-list-wrapper'
);
$postListWrapper
=
$
(
'.post-list-wrapper'
);
$formTopicDropBtn
=
$
(
'.new-post-article .form-topic-drop-btn'
);
$formTopicDropBtn
=
$
(
'.new-post-article .form-topic-drop-btn'
);
$formTopicDropMenu
=
$
(
'.new-post-article .form-topic-drop-menu-wrapper'
);
$formTopicDropMenu
=
$
(
'.new-post-article .form-topic-drop-menu-wrapper'
);
...
@@ -61,28 +66,65 @@ $(document).ready(function() {
...
@@ -61,28 +66,65 @@ $(document).ready(function() {
'click'
:
hideTooltip
'click'
:
hideTooltip
});
});
//$body.delegate('.browse-topic-drop-btn', 'click', showTopicDrop);
$body
.
delegate
(
'.browse-topic-drop-search-input, .form-topic-drop-search-input'
,
'keyup'
,
filterDrop
);
//$body.delegate('.browse-topic-drop-search-input', 'keyup', filterDrop);
$body
.
delegate
(
'.form-topic-drop-search-input'
,
'keyup'
,
filterDrop
);
$
(
window
).
bind
(
'resize'
,
updateSidebar
);
//$body.delegate('.browse-topic-drop-menu-wrapper', 'click', setTopic);
$
(
window
).
bind
(
'scroll'
,
updateSidebar
);
updateSidebar
();
$
(
window
).
bind
(
'resize'
,
updateSidebarDimensions
);
$
(
window
).
bind
(
'scroll'
,
updateSidebarCoordinates
);
$
(
'.discussion-column'
).
bind
(
"input"
,
function
(
e
)
{
console
.
log
(
"resized"
);
updateSidebarCoordinates
();
updateSidebarDimensions
();
})
updateSidebarCoordinates
();
updateSidebarDimensions
();
});
});
function
filterDrop
(
e
)
{
function
filterDrop
(
e
)
{
/*
* multiple queries
*/
// var $drop = $(e.target).parents('.form-topic-drop-menu-wrapper, .browse-topic-drop-menu-wrapper');
// var queries = $(this).val().split(' ');
// var $items = $drop.find('a');
// if(queries.length == 0) {
// $items.show();
// return;
// }
// $items.hide();
// $items.each(function(i) {
// var thisText = $(this).children().not('.unread').text();
// $(this).parents('ul').siblings('a').not('.unread').each(function(i) {
// thisText = thisText + ' ' + $(this).text();
// });
// var test = true;
// var terms = thisText.split(' ');
// for(var i = 0; i < queries.length; i++) {
// if(thisText.toLowerCase().search(queries[i].toLowerCase()) == -1) {
// test = false;
// }
// }
// if(test) {
// $(this).show();
// // show children
// $(this).parent().find('a').show();
// // show parents
// $(this).parents('ul').siblings('a').show();
// }
// });
/*
* single query
*/
var
$drop
=
$
(
e
.
target
).
parents
(
'.form-topic-drop-menu-wrapper, .browse-topic-drop-menu-wrapper'
);
var
$drop
=
$
(
e
.
target
).
parents
(
'.form-topic-drop-menu-wrapper, .browse-topic-drop-menu-wrapper'
);
var
quer
ies
=
$
(
this
).
val
().
split
(
' '
);
var
quer
y
=
$
(
this
).
val
(
);
var
$items
=
$drop
.
find
(
'a'
);
var
$items
=
$drop
.
find
(
'a'
);
if
(
quer
ies
.
length
==
0
)
{
if
(
quer
y
.
length
==
0
)
{
$items
.
show
();
$items
.
show
();
return
;
return
;
}
}
...
@@ -97,10 +139,8 @@ function filterDrop(e) {
...
@@ -97,10 +139,8 @@ function filterDrop(e) {
var
test
=
true
;
var
test
=
true
;
var
terms
=
thisText
.
split
(
' '
);
var
terms
=
thisText
.
split
(
' '
);
for
(
var
i
=
0
;
i
<
queries
.
length
;
i
++
)
{
if
(
thisText
.
toLowerCase
().
search
(
query
.
toLowerCase
())
==
-
1
)
{
if
(
thisText
.
toLowerCase
().
search
(
queries
[
i
].
toLowerCase
())
==
-
1
)
{
test
=
false
;
test
=
false
;
}
}
}
if
(
test
)
{
if
(
test
)
{
...
@@ -277,92 +317,37 @@ function setFormTopic(e) {
...
@@ -277,92 +317,37 @@ function setFormTopic(e) {
$formTopicDropBtn
.
html
(
boardName
+
' <span class="drop-arrow">▾</span>'
);
$formTopicDropBtn
.
html
(
boardName
+
' <span class="drop-arrow">▾</span>'
);
}
}
//function updateSidebarCoordinates(e) {
function
updateSidebar
(
e
)
{
// scrollTop = $(window).scrollTop();
// determine page scroll attributes
// sidebarXOffset = $('.discussion-column').offset().top;
scrollTop
=
$
(
window
).
scrollTop
();
//
discussionsBodyTop
=
$discussionBody
.
offset
().
top
;
// var marginTop = scrollTop + SIDEBAR_PADDING > sidebarXOffset ? scrollTop + SIDEBAR_PADDING - sidebarXOffset : 0;
discussionsBodyBottom
=
discussionsBodyTop
+
$discussionBody
.
height
();
//
var
windowHeight
=
$
(
window
).
height
();
// var discussionColumnHeight = $('.discussion-column').height();
// marginTop = marginTop + sidebarHeight > discussionColumnHeight ? discussionColumnHeight - sidebarHeight + 2 : marginTop;
// toggle fixed positioning
//
if
(
scrollTop
>
discussionsBodyTop
-
SIDEBAR_PADDING
)
{
// $sidebar.css('margin-top', marginTop);
$sidebar
.
addClass
(
'fixed'
);
// updateSidebarDimensions();
$sidebar
.
css
(
'top'
,
SIDEBAR_PADDING
+
'px'
);
//}
}
else
{
//
$sidebar
.
removeClass
(
'fixed'
);
//function updateSidebarDimensions(e) {
$sidebar
.
css
(
'top'
,
'0'
);
// sidebarWidth = $sidebar.width();
}
//
// var visibleHeader = sidebarXOffset - scrollTop > 0 ? sidebarXOffset - scrollTop : 0;
// sidebarHeight = $(window).height() - (visibleHeader + SIDEBAR_PADDING * 2);
// sidebarHeight = sidebarHeight > 500 ? sidebarHeight : 500;
//
// var titleWidth = sidebarWidth - 115;
//
// $sidebar.css('height', sidebarHeight + 'px');
//
// if(!$postListWrapper[0]) {
// $postListWrapper = $('.post-list-wrapper');
// }
//
// $postListWrapper.css('height', (sidebarHeight - SIDEBAR_HEADER_HEIGHT - 4) + 'px');
// $sidebarWidthStyles.html('.discussion-body .post-list a .title { width: ' + titleWidth + 'px !important; }');
//}
function
updateSidebarCoordinates
(
e
)
{
if
(
!
$
(
'.sidebar'
).
attr
(
'data-top'
)){
if
(
$
(
'.sidebar'
).
hasClass
(
'fixed'
)){
return
;
}
var
offset
=
$
(
'.sidebar'
).
offset
();
$
(
'.sidebar'
).
attr
(
'data-top'
,
offset
.
top
);
}
$
(
'.sidebar'
).
css
(
'width'
,
.
32
*
$
(
'.discussion-body'
).
width
()
+
'px'
);
scrollTop
=
$
(
window
).
scrollTop
();
offset
=
$
(
'.sidebar'
).
attr
(
'data-top'
);
if
((
offset
<=
scrollTop
)){
$
(
'.sidebar'
).
addClass
(
'fixed'
);
$
(
'.discussion-column'
).
addClass
(
'sidebar-fixed'
);
}
else
{
$
(
'.sidebar'
).
removeClass
(
'fixed'
);
$
(
'.discussion-column'
).
removeClass
(
'sidebar-fixed'
);
}
discussionColumnHeight
=
$
(
'.discussion-column'
).
outerHeight
();
discussionColumnBottom
=
$
(
'.discussion-column'
).
offset
().
top
+
discussionColumnHeight
;
windowHeight
=
$
(
window
).
height
();
if
((
discussionColumnBottom
-
scrollTop
)
<
windowHeight
){
//difference = minHeight - (discussionColumnBottom - scrollTop);
//$('.sidebar').height(minHeight);
//console.log(minHeight);
//$('.sidebar').css('top', -difference);
//$('.post-list-wrapper').height(minHeight - SIDEBAR_HEADER_HEIGHT - 4);
$
(
'.sidebar'
).
removeClass
(
'fixed'
);
$
(
'.discussion-column'
).
removeClass
(
'sidebar-fixed'
);
}
updateSidebarDimensions
();
}
function
updateSidebarDimensions
(
e
)
{
// set sidebar width
var
sidebarWidth
=
.
32
*
$discussionBody
.
width
()
-
10
;
$sidebar
.
css
(
'width'
,
sidebarWidth
+
'px'
);
discussionColumnHeight
=
$
(
'.discussion-column'
).
outerHeight
();
// show the entire sidebar at all times
discussionColumnBottom
=
$
(
'.discussion-column'
).
offset
().
top
+
discussionColumnHeight
;
var
sidebarHeight
=
windowHeight
-
(
scrollTop
<
discussionsBodyTop
-
SIDEBAR_PADDING
?
discussionsBodyTop
-
scrollTop
:
SIDEBAR_PADDING
)
-
SIDEBAR_PADDING
-
(
scrollTop
+
windowHeight
>
discussionsBodyBottom
+
SIDEBAR_PADDING
?
scrollTop
+
windowHeight
-
discussionsBodyBottom
-
SIDEBAR_PADDING
:
0
);
windowHeight
=
$
(
window
).
height
();
$sidebar
.
css
(
'height'
,
sidebarHeight
>
400
?
sidebarHeight
:
400
+
'px'
);
sidebarHeight
=
Math
.
min
(
windowHeight
,
discussionColumnHeight
);
$
(
'.sidebar'
).
height
(
sidebarHeight
);
$
(
'.post-list-wrapper'
).
height
(
sidebarHeight
-
SIDEBAR_HEADER_HEIGHT
-
4
);
$
(
'.sidebar'
).
css
(
'width'
,
.
32
*
$
(
'.discussion-body'
).
width
()
+
'px'
);
//$('.sidebar').height(discussionColumnBottom - scrollTop);
// update the list height
//$('.post-list-wrapper').height(discussionColumnBottom - scrollTop - SIDEBAR_HEADER_HEIGHT - 4);
if
(
!
$postListWrapper
[
0
])
{
$postListWrapper
=
$
(
'.post-list-wrapper'
);
}
$postListWrapper
.
css
(
'height'
,
(
sidebarHeight
-
SIDEBAR_HEADER_HEIGHT
-
4
)
+
'px'
);
if
((
discussionColumnBottom
-
scrollTop
)
<
windowHeight
){
// update title wrappers
$
(
'.sidebar'
).
height
(
discussionColumnHeight
);
var
titleWidth
=
sidebarWidth
-
115
;
$
(
'.post-list-wrapper'
).
height
(
discussionColumnHeight
-
SIDEBAR_HEADER_HEIGHT
-
4
);
$sidebarWidthStyles
.
html
(
'.discussion-body .post-list a .title { width: '
+
titleWidth
+
'px !important; }'
);
}
}
}
lms/static/sass/_discussion.scss
View file @
1d9a3ed2
...
@@ -555,10 +555,9 @@ body.discussion {
...
@@ -555,10 +555,9 @@ body.discussion {
width
:
32%
;
width
:
32%
;
height
:
550px
;
height
:
550px
;
border
:
1px
solid
#aaa
;
border
:
1px
solid
#aaa
;
border-right
:
none
!
important
;
box-shadow
:
0
1px
2px
rgba
(
0
,
0
,
0
,
.05
);
box-shadow
:
0
1px
2px
rgba
(
0
,
0
,
0
,
.05
);
background
:
#f6f6f6
;
background
:
#f6f6f6
;
border-radius
:
3px
0
0
3px
;
border-radius
:
3px
;
border-right
:
1px
solid
#bcbcbc
;
border-right
:
1px
solid
#bcbcbc
;
&
.fixed
{
&
.fixed
{
...
@@ -638,6 +637,7 @@ body.discussion {
...
@@ -638,6 +637,7 @@ body.discussion {
.search
{
.search
{
cursor
:
pointer
;
cursor
:
pointer
;
border-radius
:
0
3px
0
0
;
&
.is-open
{
&
.is-open
{
cursor
:
auto
;
cursor
:
auto
;
...
@@ -1024,7 +1024,7 @@ body.discussion {
...
@@ -1024,7 +1024,7 @@ body.discussion {
.discussion-column
{
.discussion-column
{
float
:
lef
t
;
float
:
righ
t
;
@include
box-sizing
(
border-box
);
@include
box-sizing
(
border-box
);
border
:
1px
solid
#aaa
;
border
:
1px
solid
#aaa
;
border-radius
:
0
3px
3px
0
;
border-radius
:
0
3px
3px
0
;
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment