MTrackWeb/Wiki.php
[web.mtrack] / MTrackWeb.php
index cf1891d..e7366c6 100644 (file)
@@ -75,6 +75,15 @@ class MTrackWeb extends HTML_FlexyFramework_Page
         return true;
          
     }
+    /**
+     * currentProject:
+     *
+     * @param {int} $val set the current project (optional)
+     * @return {int} The current project id.
+     * 
+     * 
+     *
+     */
     
     
     function currentProject($val = false)
@@ -148,7 +157,7 @@ class MTrackWeb extends HTML_FlexyFramework_Page
             $ar = $p->fetchAll('id', 'name');
         } else {
             //DB_DAtaObject::debugLevel(1);
-            $p->applyFilters(array(), $this->authUser);
+            $p->applyFilters(array(), $this->authUser, $this);
             if (!$this->authUser->hasPerm('Core.Projects_All', 'S')) { 
                 $p->whereAdd("Projects.id in (SELECT ProjectDirectory.project_id FROM ProjectDirectory WHERE
                         person_id = ". $this->authUser->id . " and role != '')");
@@ -214,9 +223,17 @@ class MTrackWeb extends HTML_FlexyFramework_Page
         
         $this->loadProjectList();
         
+        
+        $p = DB_DataObject::factory('Projects');
+        $p->get($this->currentProject());
+        $this->currentProject = $p; /// mix up?
+        
+        
+        
         if (!$this->authUser) {
             return true; // we do allow people in this far..
         }
+        // very public??
         $this->authUserArray = $this->authUser->toArray();
         unset($this->authUserArray['passwd']);
          
@@ -226,8 +243,7 @@ class MTrackWeb extends HTML_FlexyFramework_Page
             date_default_timezone_set($this->authUser->timezone);
         }
         
-        
-        
+         
          
         /// fixme...
         //$this->authUser = 
@@ -236,12 +252,23 @@ class MTrackWeb extends HTML_FlexyFramework_Page
     function get($loc='')
     {
         // 
+        
+        
+        HTML_FlexyFramework::get()->generateDataobjectsCache();
+
+        
         if (!empty($loc)) {
             die ("invalid location". htmlspecialchars($loc));
         }
+        
+        
+        
         if (!$this->authUser) {
              return HTML_FlexyFramework::run('Wiki'); 
         }
+        
+        
+        
         return HTML_FlexyFramework::run('Wiki/Today'); 
  
     }
@@ -271,50 +298,14 @@ class MTrackWeb extends HTML_FlexyFramework_Page
     
     function registerClasses()
     {
-        require_once 'MTrack/Wiki.php';
-        require_once 'MTrack/Wiki/Item.php';
-      //  require_once 'MTrack/Milestone.php';
-  
-        
+        // wiki rendering is done client side...
+        // require_once 'MTrack/Wiki/HTMLFormatter.php';
         require_once 'MTrackWeb/LinkHandler.php';
-        require_once 'MTrack/Wiki/HTMLFormatter.php';
-        
         $this->link = new MTrackWeb_LinkHandler();
-        MTrack_Wiki_HTMLFormatter::registerLinkHandler($this->link);
+        //MTrack_Wiki_HTMLFormatter::registerLinkHandler($this->link);
  
-
-        $r = DB_DataObject::factory('mtrack_repos');
-        $r->loadFromPath('default/wiki');
-        MTrack_Wiki_Item::$repo = $r->impl();
-        
-        
-        
-        //MTrack_Wiki::register_macro('MilestoneSummary', array('MTrack_Milestone', 'macro_MilestoneSummary'));
-       // MTrack_Wiki::register_macro('BurnDown', array('MTrack_Milestone', 'macro_BurnDown'));
-        //MTrack_Wiki::register_macro('RunReport', array('MTrack_Report', 'macro_RunReport')); << fixme how are we to hanlde this..
-        //MTrack_Wiki::register_macro('TicketQuery', array('MTrack_Report', 'macro_TicketQuery'));
-        MTrack_Wiki::register_macro('IncludeWikiPage', array('MTrack_Wiki', 'macro_IncludeWiki'));
-        MTrack_Wiki::register_macro('IncludeHelpPage', array('MTrack_Wiki', 'macro_IncludeHelp'));
-        MTrack_Wiki::register_macro('Comment', array('MTrack_Wiki', 'macro_comment'));
-        MTrack_Wiki::register_processor('comment', array('MTrack_Wiki', 'processor_comment'));
-        MTrack_Wiki::register_processor('html', array('MTrack_Wiki', 'processor_html'));
-        MTrack_Wiki::register_processor('dataset', array('MTrack_Wiki', 'processor_dataset'));
-
+        return;
  
-        //MTrackSearchDB::register_indexer('ticket', array('MTrackIssue', 'index_issue'));
-        //MTrackSearchDB::register_indexer('wiki', array('MTrack_Wiki_Item', 'index_item'));
-
-
-
-        //MTrackWatch::registerEventTypes('ticket', array( 'ticket' => 'Tickets' ));
-        //MTrackWatch::registerEventTypes('milestone', array( 'ticket' => 'Tickets', 'changeset' => 'Code changes' ));
-        //MTrackWatch::registerEventTypes('repo', array( 'ticket' => 'Tickets', 'changeset' => 'Code changes' ));
-
-        // should this get registered here??
-        //MTrackCommitChecker::addCheck('Wiki');
-        
-        
-        
    }
     
     function favicon()
@@ -512,6 +503,23 @@ class MTrackWeb extends HTML_FlexyFramework_Page
         
     }
 
+     function packJS($dir)
+    {
+       
+        // target has to be 'aliased'
+        // target filename can be an md5..
+        
+        require_once 'Pman/Core/JsCompile.php';
+        $x = new Pman_Core_JsCompile();
+        $x->packScript(dirname(__FILE__).'/MTrackWeb/templates/images',
+                       array($dir),
+                       $this->rootURL . '/MTrackWeb/templates/images',
+                       false // do not compile
+                       );
+                        //);
+        
+        
+    }