コード例 #1
0
def menu():
    """
    Return global menu composed from all modules menu.

    This method will compose the global menu by calling menu() function for
    module, it should be located under module_path.menu module
    """
    root = MenuItem('')

    for mod in droplet.modules():
        if mod.installed:
            module_path = mod.__class__.__module__.rsplit('.', 1)[0]
            menu = import_module(module_path + '.menu')
            if menu:
                menu.menu(root)

    return root
コード例 #2
0
ファイル: urls.py プロジェクト: exekias/droplet
#  This program is distributed in the hope that it will be useful,
#  but WITHOUT ANY WARRANTY; without even the implied warranty of
#  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
#  GNU Affero General Public License for more details.
#
#  You should have received a copy of the GNU Affero General Public License
#  along with this program.  If not, see <http://www.gnu.org/licenses/>.

import pkg_resources

from droplet.util import import_module
from django.conf.urls import patterns, include, url
from .views import Home


urlpatterns = patterns(
    '',
    url(r'^$', Home.as_view(), name='home'),
    url(r'^wizard/(?P<block>.*)/$', Home.as_view(), name='wizard'),
    url(r'^achilles/', include('achilles.urls')),
    url(r'^core/', include('droplet.core.urls', namespace='core')),
)

# Add droplet.web modules urls
for app in pkg_resources.iter_entry_points('droplet.app'):
    regex = r'^%s/' % app.name
    path = '%s.urls' % app.module_name
    if import_module(path):
        urlpatterns += patterns('', url(regex, include(path,
                                                       namespace=app.name)))