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