<?xml version="1.0" encoding="UTF-8"?>
<commit>
  <added type="array"/>
  <modified type="array">
    <modified>
      <diff>@@ -18,10 +18,125 @@
 # You should have received a copy of the GNU General Public License
 # along with this program; if not, see &lt;http://www.gnu.org/licenses/&gt;.
 
-from pootle_app.views.util import render_jtoolkit
-from pootle_app.views      import indexpage
+import locale
+
+from django.utils.translation import ugettext as _
+from django.utils.translation import ungettext
+
+from pootle_app.models.profile import get_profile
+from pootle_app.models import Project, Directory, Suggestion, Submission, TranslationProject, Language
+from pootle_app.models.permissions import get_matching_permissions
+from pootle_app.views.util import render_jtoolkit, render_to_kid, KidRequestContext
+from pootle_app.views import indexpage
+from pootle_app.views import pagelayout
+from pootle_app.views.indexpage import shortdescription, gentopstats
+from pootle.i18n.jtoolkit_i18n import nlocalize, tr_lang
+from pootle_app.models import metadata
+
+
+
+def limit(query):
+    return query[:5]
+
+def get_items(request, model, latest_changes, item_index, name_func, permission_set):
+
+    def get_percentages(trans, fuzzy):
+        try:
+            transper = int((100.0 * trans) / total)
+            fuzzyper = int((100.0 * fuzzy) / total)
+            untransper = (100 - transper) - fuzzyper
+        except ZeroDivisionError:
+            transper = 100
+            fuzzyper = 0
+            untransper = 0
+        return (transper, fuzzyper, untransper)
+
+    def get_last_action(item, latest_changes):
+        if item.code in latest_changes and latest_changes[item.code]\
+               is not None:
+            return latest_changes[item.code]
+        else:
+            return ''
+
+    items = []
+    if 'view' not in permission_set:
+        return items
+    latest_changes = latest_changes()
+    for item in [item for item in model.objects.all() if item.code in item_index]:
+        trans = 0
+        fuzzy = 0
+        total = 0
+        for translation_project in item_index[item.code]:
+            stats = metadata.quick_stats(translation_project.directory, translation_project.checker)
+            trans += stats['translatedsourcewords']
+            fuzzy += stats['fuzzysourcewords']
+            total += stats['totalsourcewords']
+        untrans = (total - trans) - fuzzy
+        (transper, fuzzyper, untransper) = get_percentages(trans, fuzzy)
+        lastact = get_last_action(item, latest_changes)
+        items.append({
+            'code': item.code,
+            'name': name_func(item.fullname),
+            'lastactivity': lastact,
+            'trans': trans,
+            'fuzzy': fuzzy,
+            'untrans': untrans,
+            'total': total,
+            'transper': transper,
+            'fuzzyper': fuzzyper,
+            'untransper': untransper,
+            })
+    items.sort(lambda x, y: locale.strcoll(x['name'], y['name']))
+    return items
+
+def getlanguages(request, language_index, permission_set):
+    return get_items(request, Language, Submission.objects.get_latest_language_changes,
+                          language_index, tr_lang, permission_set)
+
+def getprojects(request, project_index, permission_set):
+    return get_items(request, Project, Submission.objects.get_latest_project_changes,
+                          project_index, lambda x: x, permission_set)
+
+def getprojectnames():
+    return [proj.fullname for proj in Project.objects.all()]
+
 
 def view(request, *path_vars):
-    return render_jtoolkit(indexpage.PootleIndex(request))
+    permission_set = get_matching_permissions(get_profile(request.user), Directory.objects.root)
+    (language_index, project_index) =  TranslationProject.get_language_and_project_indices()
+    topsugg = limit(Suggestion.objects.get_top_suggesters())
+    topreview = limit(Suggestion.objects.get_top_reviewers())
+    topsub = limit(Submission.objects.get_top_submitters())
+    topstats = gentopstats(topsugg, topreview, topsub)
+
+    templatevars = {
+        'pagetitle': pagelayout.get_title(),
+        'description': pagelayout.get_description(),
+        'meta_description': shortdescription(pagelayout.get_description()),
+        'keywords': [
+            'Pootle',
+            'translate',
+            'translation',
+            'localisation',
+            'localization',
+            'l10n',
+            'traduction',
+            'traduire',
+            ] + getprojectnames(),
+        'languagelink': _('Languages'),
+        'languages': getlanguages(request, language_index,
+                                       permission_set),
+        'projectlink': _('Projects'),
+        'projects': getprojects(request, project_index,
+                                     permission_set),
+        'topstats': topstats,
+        'topstatsheading': _('Top Contributors'),
+        'instancetitle': pagelayout.get_title(),
+        'translationlegend': {'translated': _('Translations are complete'),
+                    'fuzzy': _('Translations need to be checked (they are marked fuzzy)'
+                    ), 'untranslated': _('Untranslated')},
+        }
+
+    return render_to_kid('index/index.html', KidRequestContext(request, templatevars))
 
 </diff>
      <filename>local_apps/pootle_app/views/index/index.py</filename>
    </modified>
    <modified>
      <diff>@@ -87,121 +87,6 @@ def limit(query):
     return query[:5]
 
 
-class PootleIndex(pagelayout.PootlePage):
-
-    &quot;&quot;&quot;The main page listing projects and languages. It is also reused
-    for LanguagesIndex and ProjectsIndex&quot;&quot;&quot;
-
-    def __init__(self, request):
-        templatename = 'index/index.html'
-        description = pagelayout.get_description()
-        meta_description = shortdescription(description)
-        keywords = [
-            'Pootle',
-            'translate',
-            'translation',
-            'localisation',
-            'localization',
-            'l10n',
-            'traduction',
-            'traduire',
-            ] + self.getprojectnames()
-        languagelink = _('Languages')
-        projectlink = _('Projects')
-        instancetitle = pagelayout.get_title()
-        pagetitle = instancetitle
-        topsugg = limit(Suggestion.objects.get_top_suggesters())
-        topreview = limit(Suggestion.objects.get_top_reviewers())
-        topsub = limit(Submission.objects.get_top_submitters())
-        topstats = gentopstats(topsugg, topreview, topsub)
-        (language_index, project_index) = \
-            TranslationProject.get_language_and_project_indices()
-        permission_set = get_matching_permissions(get_profile(request.user),
-                Directory.objects.root)
-        templatevars = {
-            'pagetitle': pagetitle,
-            'description': description,
-            'meta_description': meta_description,
-            'keywords': keywords,
-            'languagelink': languagelink,
-            'languages': self.getlanguages(request, language_index,
-                    permission_set),
-            'projectlink': projectlink,
-            'projects': self.getprojects(request, project_index,
-                    permission_set),
-            'topstats': topstats,
-            'topstatsheading': _('Top Contributors'),
-            'instancetitle': instancetitle,
-            'translationlegend': self.gettranslationsummarylegendl10n(),
-            }
-        pagelayout.PootlePage.__init__(self, templatename, templatevars,
-                                       request)
-
-    def get_items(self, request, model, latest_changes, item_index, name_func, permission_set):
-
-        def get_percentages(trans, fuzzy):
-            try:
-                transper = int((100.0 * trans) / total)
-                fuzzyper = int((100.0 * fuzzy) / total)
-                untransper = (100 - transper) - fuzzyper
-            except ZeroDivisionError:
-                transper = 100
-                fuzzyper = 0
-                untransper = 0
-            return (transper, fuzzyper, untransper)
-
-        def get_last_action(item, latest_changes):
-            if item.code in latest_changes and latest_changes[item.code]\
-                 is not None:
-                return latest_changes[item.code]
-            else:
-                return ''
-
-        items = []
-        if 'view' not in permission_set:
-            return items
-        latest_changes = latest_changes()
-        for item in [item for item in model.objects.all()
-                     if item.code in item_index]:
-            trans = 0
-            fuzzy = 0
-            total = 0
-            for translation_project in item_index[item.code]:
-                stats = \
-                    metadata.quick_stats(translation_project.directory, translation_project.checker)
-                trans += stats['translatedsourcewords']
-                fuzzy += stats['fuzzysourcewords']
-                total += stats['totalsourcewords']
-            untrans = (total - trans) - fuzzy
-            (transper, fuzzyper, untransper) = get_percentages(trans, fuzzy)
-            lastact = get_last_action(item, latest_changes)
-            items.append({
-                'code': item.code,
-                'name': name_func(item.fullname),
-                'lastactivity': lastact,
-                'trans': trans,
-                'fuzzy': fuzzy,
-                'untrans': untrans,
-                'total': total,
-                'transper': transper,
-                'fuzzyper': fuzzyper,
-                'untransper': untransper,
-                })
-        items.sort(lambda x, y: locale.strcoll(x['name'], y['name']))
-        return items
-
-    def getlanguages(self, request, language_index, permission_set):
-        return self.get_items(request, Language, Submission.objects.get_latest_language_changes,
-                              language_index, tr_lang, permission_set)
-
-    def getprojects(self, request, project_index, permission_set):
-        return self.get_items(request, Project, Submission.objects.get_latest_project_changes,
-                              project_index, lambda x: x, permission_set)
-
-    def getprojectnames(self):
-        return [proj.fullname for proj in Project.objects.all()]
-
-
 class UserIndex(pagelayout.PootlePage):
     &quot;&quot;&quot;home page for a given user&quot;&quot;&quot;
 
@@ -285,20 +170,20 @@ class UserIndex(pagelayout.PootlePage):
         return quicklinks
 
 
-class ProjectsIndex(PootleIndex):
-    &quot;&quot;&quot;the list of languages&quot;&quot;&quot;
-
-    def __init__(self, request):
-        PootleIndex.__init__(self, request)
-        self.templatename = 'project/projects.html'
-
-
-class LanguagesIndex(PootleIndex):
-    &quot;&quot;&quot;the list of languages&quot;&quot;&quot;
-
-    def __init__(self, request):
-        PootleIndex.__init__(self, request)
-        self.templatename = 'language/languages.html'
+#class ProjectsIndex(PootleIndex):
+#    &quot;&quot;&quot;the list of languages&quot;&quot;&quot;
+#
+#    def __init__(self, request):
+#        PootleIndex.__init__(self, request)
+#        self.templatename = 'project/projects.html'
+#
+#
+#class LanguagesIndex(PootleIndex):
+#    &quot;&quot;&quot;the list of languages&quot;&quot;&quot;
+#
+#    def __init__(self, request):
+#        PootleIndex.__init__(self, request)
+#        self.templatename = 'language/languages.html'
 
 
 def get_bool(dict_obj, name):</diff>
      <filename>local_apps/pootle_app/views/indexpage.py</filename>
    </modified>
  </modified>
  <removed type="array"/>
  <parents type="array">
    <parent>
      <id>8e3b7233c7074f1d6b06557e8aa953c4d51c8ba8</id>
    </parent>
  </parents>
  <author>
    <name>alaaosh</name>
    <email>alaaosh@54714841-351b-0410-a198-e36a94b762f5</email>
  </author>
  <url>http://github.com/translateorgza/pootle/commit/7d6e8ae4265ab5cea9a8b71c790dd99c6780a787</url>
  <id>7d6e8ae4265ab5cea9a8b71c790dd99c6780a787</id>
  <committed-date>2009-06-08T19:29:20-07:00</committed-date>
  <authored-date>2009-06-08T19:29:20-07:00</authored-date>
  <message>refactor front page view in preparation for porting to django templates

git-svn-id: https://translate.svn.sourceforge.net/svnroot/translate/src/trunk/Pootle@11408 54714841-351b-0410-a198-e36a94b762f5</message>
  <tree>bae38a233a4e496e8d2c0dd04a8e61b6341ed99f</tree>
  <committer>
    <name>alaaosh</name>
    <email>alaaosh@54714841-351b-0410-a198-e36a94b762f5</email>
  </committer>
</commit>
