{% extends "_layouts/cp" %} {% import "_includes/forms" as forms %} {% set crumbs = [ { label: "Dashboard"|t, url: url('dashboard') }, { label: "Settings"|t, url: url('dashboard/settings') }, { label: "My Widgets"|t, url: url('dashboard/settings') } ] %} {% if widget is not defined and widgetId is defined %} {% set widget = craft.dashboard.getUserWidgetById(widgetId) %} {% if not widget %}{% exit 404 %}{% endif %} {% endif %} {% if widget is defined %} {% set widgetType = craft.dashboard.populateWidgetType(widget) %} {% set isWidgetTypeMissing = not widgetType %} {% else %} {% set isWidgetTypeMissing = false %} {% endif %} {% if widgetType is not defined or isWidgetTypeMissing %} {% set widgetType = craft.dashboard.getWidgetType('Feed') %} {% endif %} {% set isNewWidget = (widget is not defined or not widget.id) %} {% if isNewWidget %} {% set title = "Add a new widget"|t %} {% else %} {% set title = widgetType.title %} {% endif %} {% set content %}
{% if not isNewWidget %}{% endif %} {% set widgetTypes = craft.dashboard.getAllWidgetTypes() %} {% if not widgetType.isSelectable() %} {% set widgetTypes = [widgetType]|merge(widgetTypes) %} {% endif %} {{ forms.selectField({ first: true, label: "Type", instructions: "What type of widget is this?"|t, id: 'type', name: 'type', options: widgetTypes, value: widgetType.getClassHandle(), errors: (isWidgetTypeMissing ? ["The widget class “{class}” could not be found."|t({ class: widget.type })] : null), autofocus: true, toggle: true }) }} {% for _widgetType in widgetTypes %} {% set isCurrent = (_widgetType.getClassHandle() == widgetType.getClassHandle()) %} {% endfor %}
{% endset %}