[FIX] website_twitter: display setup/debug info only for website editors, not visitors
This commit is contained in:
parent
1d6c0b2148
commit
e133e5fc36
|
@ -14,19 +14,28 @@ class Twitter(http.Controller):
|
|||
key = request.website.twitter_api_key
|
||||
secret = request.website.twitter_api_secret
|
||||
screen_name = request.website.twitter_screen_name
|
||||
cr, uid = request.cr, request.uid
|
||||
debug = request.registry['res.users'].has_group(cr, uid, 'base.group_website_publisher')
|
||||
if not key or not secret:
|
||||
return {"error": _("Please set the Twitter API Key and Secret in the Website Settings.")}
|
||||
if debug:
|
||||
return {"error": _("Please set the Twitter API Key and Secret in the Website Settings.")}
|
||||
return []
|
||||
if not screen_name:
|
||||
return {"error": _("Please set a Twitter screen name to load favorites from, "
|
||||
"in the Website Settings (it does not have to be yours)")}
|
||||
if debug:
|
||||
return {"error": _("Please set a Twitter screen name to load favorites from, "
|
||||
"in the Website Settings (it does not have to be yours)")}
|
||||
return []
|
||||
twitter_tweets = request.registry['website.twitter.tweet']
|
||||
tweets = twitter_tweets.search_read(
|
||||
request.cr, request.uid,
|
||||
cr, uid,
|
||||
[('website_id','=', request.website.id),
|
||||
('screen_name','=', screen_name)],
|
||||
['tweet'], limit=int(limit), order="tweet_id desc", context=request.context)
|
||||
if len(tweets) < 12:
|
||||
return {"error": _("Twitter user @%(username)s has less than 12 favorite tweets. "
|
||||
"Please add more or choose a different screen name.") % \
|
||||
{'username': screen_name}}
|
||||
if debug:
|
||||
return {"error": _("Twitter user @%(username)s has less than 12 favorite tweets. "
|
||||
"Please add more or choose a different screen name.") % \
|
||||
{'username': screen_name}}
|
||||
else:
|
||||
return []
|
||||
return [json.loads(tweet['tweet']) for tweet in tweets]
|
||||
|
|
|
@ -93,23 +93,25 @@
|
|||
tweet.text = self.parse_tweet(tweet);
|
||||
tweets.push(qweb.render("website.Twitter.Tweet", {'tweet': tweet}));
|
||||
});
|
||||
|
||||
var f = Math.floor(tweets.length / 3);
|
||||
var tweet_slice = [tweets.slice(0, f).join(" "), tweets.slice(f, f * 2).join(" "), tweets.slice(f * 2, tweets.length).join(" ")];
|
||||
|
||||
this.$scroller = $(qweb.render("website.Twitter.Scroller"));
|
||||
this.$scroller.appendTo(this.$target.find(".twitter_timeline"));
|
||||
this.$scroller.find("div[id^='scroller']").each(function(index, element){
|
||||
var scrollWrapper = $('<div class="scrollWrapper"></div>');
|
||||
var scrollableArea = $('<div class="scrollableArea"></div>');
|
||||
scrollWrapper.append(scrollableArea)
|
||||
.data('scrollableArea', scrollableArea);
|
||||
scrollableArea.append(tweet_slice[index]);
|
||||
$(element).append(scrollWrapper);
|
||||
scrollableArea.width(self.get_wrapper_width(scrollableArea));
|
||||
scrollWrapper.scrollLeft(index*180);
|
||||
self.start_scrolling(scrollWrapper);
|
||||
});
|
||||
|
||||
if (!_.isEmpty(tweets)) {
|
||||
var f = Math.floor(tweets.length / 3);
|
||||
var tweet_slice = [tweets.slice(0, f).join(" "), tweets.slice(f, f * 2).join(" "), tweets.slice(f * 2, tweets.length).join(" ")];
|
||||
|
||||
this.$scroller = $(qweb.render("website.Twitter.Scroller"));
|
||||
this.$scroller.appendTo(this.$target.find(".twitter_timeline"));
|
||||
this.$scroller.find("div[id^='scroller']").each(function(index, element){
|
||||
var scrollWrapper = $('<div class="scrollWrapper"></div>');
|
||||
var scrollableArea = $('<div class="scrollableArea"></div>');
|
||||
scrollWrapper.append(scrollableArea)
|
||||
.data('scrollableArea', scrollableArea);
|
||||
scrollableArea.append(tweet_slice[index]);
|
||||
$(element).append(scrollWrapper);
|
||||
scrollableArea.width(self.get_wrapper_width(scrollableArea));
|
||||
scrollWrapper.scrollLeft(index*180);
|
||||
self.start_scrolling(scrollWrapper);
|
||||
});
|
||||
}
|
||||
},
|
||||
get_wrapper_width: function(wrapper){
|
||||
var total_width = 0;
|
||||
|
|
Loading…
Reference in New Issue