Author: reebalazs
Date: Fri Dec  7 16:31:42 2007
New Revision: 49518

Modified:
   kukit/kss.zope/trunk/kss/zope/browser/develui.css
   kukit/kss.zope/trunk/kss/zope/browser/develui.pt
   kukit/kss.zope/trunk/kss/zope/browser/develview.py
Log:
Merge up from -r48536:48557 of kss.core trunk, pluginregistry/browser directory

Modified: kukit/kss.zope/trunk/kss/zope/browser/develui.css
==============================================================================
--- kukit/kss.zope/trunk/kss/zope/browser/develui.css   (original)
+++ kukit/kss.zope/trunk/kss/zope/browser/develui.css   Fri Dec  7 16:31:42 2007
@@ -55,13 +55,13 @@
   background-color: #880000;
 }
 
-a.button,
-input[type="submit"] {
+a.button, .clickable {
   width: auto;
   padding: 0.2em;
   border: 1px solid #FF8888;
   color: #CC0000;
   text-decoration: none;
+  font-size: 80%;
 }
 
 fieldset {
@@ -89,11 +89,22 @@
   padding : 1em;
 }
 
-.red {
-    color: red;
+.production, .error {
+  color: red;
+}
+
+.production, .development {
+  font-weight: bold;
 }
 
-.green {
-    color: green;
+.warning {
+  color: orange;
 }
 
+.development, .info {
+  color: green;
+}
+
+.debug {
+  color: blue;
+}

Modified: kukit/kss.zope/trunk/kss/zope/browser/develui.pt
==============================================================================
--- kukit/kss.zope/trunk/kss/zope/browser/develui.pt    (original)
+++ kukit/kss.zope/trunk/kss/zope/browser/develui.pt    Fri Dec  7 16:31:42 2007
@@ -54,46 +54,103 @@
 
 </head>
   <body tal:define="devel_mode python: options.get('devel_mode', view.ison());
-                   referer request/referer|request/HTTP_REFERER|nothing">
+                    loglevel python: options.get('loglevel', 
view.getLogLevel());
+                    referer request/referer|request/HTTP_REFERER|nothing">
 
-    <h2>Kss mode setup</h2>
+    <h2>KSS mode setup</h2>
     
     <p>
-      Current KSS mode is<b>
-      <span class="green"
+      KSS is in <span class="development"
             tal:condition="devel_mode">development</span><span
-            class="red" tal:condition="not: devel_mode">production</span></b>.
+            class="production" tal:condition="not: 
devel_mode">production</span> mode.
     </p>
 
-    <p>
+    <p class="help">
+        The mode is stored in a cookie that is global to the site.
+    </p>
+    <p class="help">
+        It can be overridden by a local utility (eg. ResourceRegistries, in 
Plone).
+    </p>
+    
+    <p class="help">
        If you call <code>@@kss_devel_mode/ison</code> on the current context,
-        you get <code>True</code> if in development mode, <code>False</code> 
in in production mode.
+        you will get <code>True</code> in development mode, <code>False</code> 
in production mode.
     </p>
 
-    <h3>
-       Set KSS mode cookie
-    </h3>
     <form name="edit">
-    <div class="help">
-        Click the button to toggle mode.
-    </div>
-
-    <div>
-      <input type="hidden" name="referer" 
-             tal:attributes="value referer" />
-      <input type="submit" name="prod" id="button_prod" class="clickable"
-             tal:condition="devel_mode"
-            value="Switch to production mode." />
-      <input type="submit" name="devel" id="button_devel" class="clickable"
-             tal:condition="not:devel_mode"
-            value="Switch to development mode."  />
-       </div>
-    <p class="help">The cookie is global to the site and may be overridden by a
-    local utility (eg. ResourceRegistries, in Plone)</p>
+      <fieldset>
+        <h3>
+          Set KSS mode cookie
+        </h3>
+        <p class="help">
+            Click the button to toggle mode.
+        </p>
+
+        <div>
+          <input type="hidden" name="referer" 
+                 tal:attributes="value referer" />
+          <input type="submit" name="prod" id="button_prod" class="clickable 
production"
+               value="Switch to production mode." />
+          <input type="submit" name="devel" id="button_devel" class="clickable 
development"
+               value="Switch to development mode."  />
+        </div>
+
+      </fieldset>
+    </form>
+    
+    <p tal:condition="referer">
+      <a class="button" tal:attributes="href referer">Back to the referer 
page.</a>
+    </p>
+
+    <h2>KSS log level setup</h2>
+    
+    <p>
+      Current KSS log level is<b>
+      <span tal:attributes="class python:loglevel.lower()"
+            tal:content="loglevel">DEBUG</span></b>.
+    </p>
 
+    <p class="help">
+        The log level is stored in a cookie that is global to the site.
+    </p>
+    
+    <p class="help">
+        Logging is effective only in <span 
class="development">development</span> mode.
+    </p>
+
+    <form name="loglevel">
+      <fieldset>
+        <h3>
+          Set KSS log level
+        </h3>
+        <p class="help">
+            Click the button to set log level.
+        </p>
+        
+
+        <div>
+          <input type="hidden" name="referer" 
+                 tal:attributes="value referer" />
+          <tal:levels repeat="level python:['DEBUG', 'INFO', 'WARNING', 
'ERROR']">
+            <label tal:attributes="class python:level.lower()">
+              <input type="radio" name="loglevel"
+                     tal:attributes="value level;
+                                     checked python: level==loglevel and 1 or 
None;
+                                     " />
+              <tal:block replace="level">DEBUG</tal:block>
+            </label>
+            <br />
+          </tal:levels>
+          <input type="submit" name="loglevel_submit" id="button_loglevel" 
class="clickable"
+           value="Set"  />
+        </div>
+
+      </fieldset>
     </form>
 
-    <p tal:condition="referer"><a tal:attributes="href referer">Back</a></p>
+    <p tal:condition="referer">
+      <a class="button" tal:attributes="href referer">Back to the referer 
page.</a>
+    </p>
 
   </body>
 </html>

Modified: kukit/kss.zope/trunk/kss/zope/browser/develview.py
==============================================================================
--- kukit/kss.zope/trunk/kss/zope/browser/develview.py  (original)
+++ kukit/kss.zope/trunk/kss/zope/browser/develview.py  Fri Dec  7 16:31:42 2007
@@ -11,7 +11,8 @@
 from zope.traversing.interfaces import ITraverser
 from zope.publisher.interfaces import NotFound
 
-COOKIE_NAME = '__kss_devel'
+COOKIE_DEVELMODE = '__kss_devel'
+COOKIE_LOGLEVEL = '__kss_loglevel'
 
 class DevelView(BrowserView):
     implements(IDevelView)
@@ -37,7 +38,7 @@
         return self, ('ui', )
 
     # --
-    # Accessable methods
+    # Methods for handling development/production mode
     # --
 
     def ison(self):
@@ -51,7 +52,7 @@
           select development mode without the cookie
 
         '''
-        ison = COOKIE_NAME in self.request.cookies
+        ison = COOKIE_DEVELMODE in self.request.cookies
 
         if not ison:
             # Check from javascript tool
@@ -76,26 +77,51 @@
 
     def set(self):
         'Sets development mode cookie'
-        self.request.response.setCookie(COOKIE_NAME, '1', path='/')
+        self.request.response.setCookie(COOKIE_DEVELMODE, '1', path='/')
 
     def unset(self):
         'Unsets development mode cookie'
-        self.request.response.expireCookie(COOKIE_NAME, path='/')
+        self.request.response.expireCookie(COOKIE_DEVELMODE, path='/')
+
+    # --
+    # Methods for handling loglevel
+    # --
+
+    def getLogLevel(self, REQUEST=None):
+        'Gets current log level'
+        loglevel = self.request.cookies.get(COOKIE_LOGLEVEL, 'DEBUG').upper()
+        return loglevel
+
+    def setLogLevel(self, loglevel):
+        'Sets loglevel cookie'
+        self.request.response.setCookie(COOKIE_LOGLEVEL, loglevel, path='/')
+
+    # --
+    # User interface
+    # --
 
     _ui = ViewPageTemplateFile('develui.pt', 
content_type='text/html;charset=utf-8')
 
     def ui(self):
         'User interface for interactive switching'
         options = {}
+        # Handle development/production mode
         if 'devel' in self.request.form:
             self.set()
             # setting it also to have immediate effect in the page
             options['devel_mode'] = True
         if 'prod' in self.request.form:
             self.unset()
-            if COOKIE_NAME in self.request.cookies:
+            if COOKIE_DEVELMODE in self.request.cookies:
                 # setting it also to have immediate effect in the page
                 options['devel_mode'] = False
+        # Handle loglevel
+        if 'loglevel' in self.request.form:
+            loglevel =  self.request.form['loglevel']
+            self.setLogLevel(loglevel)
+            # setting it also to have immediate effect in the page
+            options['loglevel'] = loglevel
+        # Return the rendered template
         return self._ui(**options)
 
     def ui_js(self):
_______________________________________________
Kukit-checkins mailing list
[email protected]
http://codespeak.net/mailman/listinfo/kukit-checkins

Reply via email to