Skip to content
This repository has been archived by the owner on Apr 16, 2022. It is now read-only.

Commit

Permalink
CHANGED: RingRanking contain 3 ranks authors, am, scenario
Browse files Browse the repository at this point in the history
FIXED: Scenario Ranking sql request can now use a list of anim_mode (not use for the moment)
  • Loading branch information
Patrick Bernard committed Oct 24, 2006
1 parent 99fc8bc commit 796a75a
Show file tree
Hide file tree
Showing 6 changed files with 46 additions and 29 deletions.
36 changes: 23 additions & 13 deletions web/ryzom_com/RingRanking/RingRanking.py
Original file line number Diff line number Diff line change
Expand Up @@ -61,9 +61,10 @@ class RingRanking(BaseFolder):
#name (title & id) of the content created
content = ['AMRanking',
'AuthorsRanking',
'ScenarioMasterlessRanking',
'ScenarioMasteredRanking',]

# 'ScenarioMasterlessRanking',
# 'ScenarioMasteredRanking',
'ScenarioRanking',
]

actions = (
{ 'id': 'view',
Expand All @@ -78,17 +79,26 @@ def initializeArchetype(self, **kwargs):
"""use automatically at creation"""
BaseFolder.initializeArchetype(self, **kwargs)

if not hasattr(self.aq_inner.aq_explicit, 'ScenarioMasteredRanking'):
self.invokeFactory('ScenarioRanking',id='ScenarioMasteredRanking')
obj = getattr(self.aq_inner.aq_explicit, 'ScenarioMasteredRanking')
obj.setTitle('ScenarioMasteredRanking')
obj.setMasterless(False)

if not hasattr(self.aq_inner.aq_explicit, 'ScenarioMasterlessRanking'):
self.invokeFactory('ScenarioRanking',id='ScenarioMasterlessRanking')
obj = getattr(self.aq_inner.aq_explicit, 'ScenarioMasterlessRanking')
obj.setTitle('ScenarioMasterlessRanking')
# if not hasattr(self.aq_inner.aq_explicit, 'ScenarioMasteredRanking'):
# self.invokeFactory('ScenarioRanking',id='ScenarioMasteredRanking')
# obj = getattr(self.aq_inner.aq_explicit, 'ScenarioMasteredRanking')
# obj.setTitle('ScenarioMasteredRanking')
# obj.setMasterless(False)
# obj.setMastered(True)

# if not hasattr(self.aq_inner.aq_explicit, 'ScenarioMasterlessRanking'):
# self.invokeFactory('ScenarioRanking',id='ScenarioMasterlessRanking')
# obj = getattr(self.aq_inner.aq_explicit, 'ScenarioMasterlessRanking')
# obj.setTitle('ScenarioMasterlessRanking')
# obj.setMasterless(True)
# obj.setMastered(False)

if not hasattr(self.aq_inner.aq_explicit, 'ScenarioRanking'):
self.invokeFactory('ScenarioRanking',id='ScenarioRanking')
obj = getattr(self.aq_inner.aq_explicit, 'ScenarioRanking')
obj.setTitle('ScenarioRanking')
obj.setMasterless(True)
obj.setMastered(True)

if not hasattr(self.aq_inner.aq_explicit, 'AuthorsRanking'):
self.invokeFactory('AuthorsRanking',id='AuthorsRanking')
Expand Down
19 changes: 13 additions & 6 deletions web/ryzom_com/RingRanking/ScenarioRanking.py
Original file line number Diff line number Diff line change
Expand Up @@ -21,6 +21,12 @@
description="Select for Masterless Ranking **not use for the moment**"
),
),
BooleanField('mastered',
default = False,
widget=BooleanWidget(
description="Select for Mastered Ranking **not use for the moment**"
),
),
# LinesField('lang',
# required=True,
# vocabulary=['en','fr','de'],
Expand Down Expand Up @@ -152,14 +158,15 @@ def update(self,limit=10):
ranking_by='rrp_scored'
limit = int(limit)
req = []
anim_mode = []
if self.getMasterless():
master = 'am_autonomous'
else:
master = 'am_dm'
anim_mode.append('am_autonomous')
if self.getMastered():
anim_mode.append('am_dm')

## SQL Request
try:
request = self.zsql.SQL_ScenarioRanking(ranking_by=ranking_by,master=master)
request = self.zsql.SQL_ScenarioRanking(ranking_by=ranking_by,anim_mode=anim_mode)
except:
return 'ScenarioRanking Update Failed'
if len(request) > limit:
Expand All @@ -173,7 +180,7 @@ def update(self,limit=10):
## update Ranking FR,EN,DE
for lang in ['fr','en','de']:
try:
request = self.zsql.SQL_ScenarioRankingByLang(ranking_by=ranking_by,master=master,language=lang)
request = self.zsql.SQL_ScenarioRankingByLang(ranking_by=ranking_by,anim_mode=anim_mode,language=lang)
except:
return 'ScenarioRanking Update Failed'
if len(request) > limit:
Expand All @@ -185,7 +192,7 @@ def update(self,limit=10):

##update for other's language
try:
request = self.zsql.SQL_ScenarioRankingByOtherLang(ranking_by=ranking_by,master=master)
request = self.zsql.SQL_ScenarioRankingByOtherLang(ranking_by=ranking_by,anim_mode=anim_mode)
except:
return 'ScenarioRanking Update Failed'
if len(request) > limit:
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -47,11 +47,11 @@ function changeLang(url,limit){

<div id="ringranking_banner">
<img src="" alt=""
tal:condition="here/getMasterless"
i18n:attributes="src RingRanking_am_autonomous_banner;alt RingRanking_title_am_autonomous" />
tal:condition="here/getMasterless"
i18n:attributes="src RingRanking_am_autonomous_banner;alt RingRanking_title_am_autonomous" />
<img src="" alt=""
tal:condition="not:here/getMasterless"
i18n:attributes="src RingRanking_am_dm_banner;alt RingRanking_title_am_dm" />
tal:condition="here/getMastered"
i18n:attributes="src RingRanking_am_dm_banner;alt RingRanking_title_am_dm" />
</div>

<form action="" id="selectLang">
Expand Down
Original file line number Diff line number Diff line change
@@ -1,11 +1,11 @@
<dtml-comment>
arguments: ranking_by master
arguments: ranking_by anim_mode
connection_id:r2linux03
title:Session: get scenario ranking
</dtml-comment>

select distinct title,description,author,rrp_total,anim_mode,language,orientation,level,id
from scenario
where anim_mode = <dtml-sqlvar master type="string">
where <dtml-sqltest anim_mode type="string" multiple >
order by <dtml-sqlvar ranking_by type="string">, rrp_total desc

Original file line number Diff line number Diff line change
@@ -1,11 +1,11 @@
<dtml-comment>
arguments: ranking_by master language
arguments: ranking_by anim_mode language
connection_id:r2linux03
title:Session: get scenario ranking
</dtml-comment>

select distinct title,description,author,rrp_total,anim_mode,language,orientation,level,id
from scenario
where anim_mode = <dtml-sqlvar master type="string">
where <dtml-sqltest anim_mode type="string" multiple >
and language = <dtml-sqlvar language type="string">
order by <dtml-sqlvar ranking_by type="string">, rrp_total desc
Original file line number Diff line number Diff line change
@@ -1,12 +1,12 @@
<dtml-comment>
arguments: ranking_by master
arguments: ranking_by anim_mode
connection_id:r2linux03
title:Session: get scenario ranking
</dtml-comment>

select distinct title,description,author,rrp_total,anim_mode,language,orientation,level,id
from scenario
where anim_mode = <dtml-sqlvar master type="string">
where <dtml-sqltest anim_mode type="string" multiple >
and language != 'fr'
and language != 'en'
and language != 'de'
Expand Down

0 comments on commit 796a75a

Please sign in to comment.