text: // (C) Copyright 2015 Martin Dougiamas
  //
  // Licensed under the Apache License, Version 2.0 (the "License");
  // you may not use this file except in compliance with the License.
  // You may obtain a copy of the License at
  //
  //     http://www.apache.org/licenses/LICENSE-2.0
  //
  // Unless required by applicable law or agreed to in writing, software
  // distributed under the License is distributed on an "AS IS" BASIS,
  // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
  // See the License for the specific language governing permissions and
  // limitations under the License.
  
  angular.module('mm.addons.mod_wiki', [])
  
  .constant('mmaModWikiSubwikiPagesLoaded', 'mma_mod_wiki_subwiki_pages_loaded')
  
  .constant('mmaModWikiComponent', 'mmaModWiki')
  
  .config(function($stateProvider) {
  
      $stateProvider
  
      .state('site.mod_wiki', {
          url: '/mod_wiki',
          params: {
              module: null,
              moduleid: null, // Redundant parameter to fix a problem passing object as parameters. To be fixed in MOBILE-1370.
              courseid: null,
              pageid: null,
              pagetitle: null,
              wikiid: null,
              subwikiid: null,
              action: null
          },
          views: {
              'site': {
                  controller: 'mmaModWikiIndexCtrl',
                  templateUrl: 'addons/mod_wiki/templates/index.html'
              }
          }
      });
  
  })
  
  .config(function($mmCourseDelegateProvider, $mmContentLinksDelegateProvider, $mmCoursePrefetchDelegateProvider) {
      $mmCourseDelegateProvider.registerContentHandler('mmaModWiki', 'wiki', '$mmaModWikiHandlers.courseContent');
      $mmContentLinksDelegateProvider.registerLinkHandler('mmaModWiki', '$mmaModWikiHandlers.linksHandler');
      $mmCoursePrefetchDelegateProvider.registerPrefetchHandler('mmaModWiki', 'wiki', '$mmaModWikiPrefetchHandler');
  })
  
  .run(function($mmEvents, mmCoreEventLogout, $mmaModWiki) {
      // Clear cache for SubwikiLists
      $mmEvents.on(mmCoreEventLogout, $mmaModWiki.clearSubwikiList);
  });