feat(docs): disqus integration

- add style for disqus threads in css
- add loadDisqus method to be called afterPartialLoaded
- add div container for disqus threads
This commit is contained in:
dandoyon 2011-09-19 20:11:32 -07:00 committed by Igor Minar
parent 02dc81bae0
commit 28ed5ba465
3 changed files with 40 additions and 7 deletions

View file

@ -268,7 +268,7 @@ li {
/*----- content styles -----*/
#content-panel {
.content-panel {
float: left;
margin-top: 4em;
margin-left: 3em;
@ -286,7 +286,7 @@ li {
border-radius: 15px;
}
#content-panel > h2 {
.content-panel > h2 {
font-size: 2em;
font-weight: normal;
color: #fff;
@ -294,8 +294,7 @@ li {
height: 1em;
}
#content {
.content-panel-content {
background-color: #fff;
display: block;
margin: 0.7em -1em -1em;
@ -354,6 +353,10 @@ li {
padding-left: 0;
}
#disqus #disqus_thread {
margin: 0.7em -1em -1em;
}
/* subpages */
#fader {

View file

@ -71,11 +71,13 @@ function DocsController($location, $window, $cookies) {
};
scope.afterPartialLoaded = function() {
var currentPageId = $location.path();
scope.loading--;
scope.partialTitle = scope.futurePartialTitle;
SyntaxHighlighter.highlight();
$window.scrollTo(0,0);
$window._gaq.push(['_trackPageview', $location.path()]);
$window._gaq.push(['_trackPageview', currentPageId]);
loadDisqus(currentPageId);
};
scope.getFeedbackUrl = function() {
@ -105,6 +107,26 @@ function DocsController($location, $window, $cookies) {
});
}
});
function loadDisqus(currentPageId) {
// http://docs.disqus.com/help/2/
window.disqus_shortname = 'angularjs';
window.disqus_identifier = currentPageId;
if ($location.host() == 'localhost') {
window.disqus_developer = 1;
}
// http://docs.disqus.com/developers/universal/
(function() {
var dsq = document.createElement('script'); dsq.type = 'text/javascript'; dsq.async = true;
dsq.src = 'http://angularjs.disqus.com/embed.js';
(document.getElementsByTagName('head')[0] ||
document.getElementsByTagName('body')[0]).appendChild(dsq);
})();
angular.element(document.getElementById('disqus_thread')).html('');
}
}
// prevent compilation of code

View file

@ -114,10 +114,18 @@
<div id="loading" ng:show="loading">Loading...</div>
<div id="content-panel">
<div class="content-panel">
<h2 ng:bind="partialTitle"></h2>
<a id="feedback" ng:href="{{getFeedbackUrl()}}">Report an Issue or Ask a Question</a>
<ng:include id="content" src="getCurrentPartial()" onload="afterPartialLoaded()"></ng:include>
<ng:include id="content"
class="content-panel-content"
src="getCurrentPartial()"
onload="afterPartialLoaded()"></ng:include>
</div>
<div id="disqus" class="content-panel">
<h2>Discussion</h2>
<div id="disqus_thread" class="content-panel-content"></div>
</div>
<div id="footer" ng:cloak>