|  | @@ -113,16 +113,33 @@
 | 
	
		
			
			| 113 | 113 |          </div>
 | 
	
		
			
			| 114 | 114 |      % endif
 | 
	
		
			
			| 115 | 115 |  
 | 
	
		
			
			| 116 |  | -        <p>
 | 
	
		
			
			| 117 |  | -            ${_('This workspace is {a_open}accessible with webdav{a_close}').format(a_open='<a data-toggle="collapse" href="#webdavConfig" aria-expanded="false" aria-controls="webdavConfig">', a_close='</a>')|n}
 | 
	
		
			
			| 118 |  | -        </p>
 | 
	
		
			
			| 119 |  | -        <div class="collapse" id="webdavConfig">
 | 
	
		
			
			| 120 |  | -            <p>${_('Adress to connect to webdav with:')}</p>
 | 
	
		
			
			| 121 |  | -            <p>Linux : </p>
 | 
	
		
			
			| 122 |  | -            <p class="form-control">dav://${webdav_url}</p>
 | 
	
		
			
			| 123 |  | -            <p>Windows : </p>
 | 
	
		
			
			| 124 |  | -            <p class="form-control">http://${webdav_url}</p>
 | 
	
		
			
			|  | 116 | +    <p>
 | 
	
		
			
			|  | 117 | +        ${_('You can browse the content of this workspace {a_open}in your file explorer (webdav){a_close}').format(a_open='<a data-toggle="collapse" href="#webdavConfig" aria-expanded="false" aria-controls="webdavConfig">', a_close='</a>')|n}
 | 
	
		
			
			|  | 118 | +    </p>
 | 
	
		
			
			|  | 119 | +    <div class="collapse" id="webdavConfig">
 | 
	
		
			
			|  | 120 | +        <div class="row">
 | 
	
		
			
			|  | 121 | +            <div class="col-md-6">
 | 
	
		
			
			|  | 122 | +                <div class="input-group">
 | 
	
		
			
			|  | 123 | +                    <span class="input-group-addon" style="width: 8em;"><i class="fa fa-fw fa-windows"></i> Windows</span>
 | 
	
		
			
			|  | 124 | +                    <p class="form-control">http://${webdav_url}</p>
 | 
	
		
			
			|  | 125 | +                </div>
 | 
	
		
			
			|  | 126 | +                <p></p>
 | 
	
		
			
			|  | 127 | +                <div class="input-group">
 | 
	
		
			
			|  | 128 | +                    <span class="input-group-addon" style="width: 8em;"><i class="fa fa-fw fa-linux"></i> Linux</span>
 | 
	
		
			
			|  | 129 | +                    <p class="form-control">dav://${webdav_url}</p>
 | 
	
		
			
			|  | 130 | +                </div>
 | 
	
		
			
			|  | 131 | +            </div>
 | 
	
		
			
			|  | 132 | +            <div class="col-md-6">
 | 
	
		
			
			|  | 133 | +                <div class="alert alert-warning">
 | 
	
		
			
			|  | 134 | +                    <p>
 | 
	
		
			
			|  | 135 | +                        <i class="fa fa-fw fa-info"></i>
 | 
	
		
			
			|  | 136 | +                        ${_('Tracim implements a <a href="https://fr.wikipedia.org/wiki/WebDAV">webdav interface</a>.')|n}
 | 
	
		
			
			|  | 137 | +                    </p>
 | 
	
		
			
			|  | 138 | +                    <p>${_('You can configure your file explorer to use this interface and browse tracim content through it.')}</p>
 | 
	
		
			
			|  | 139 | +                </div>
 | 
	
		
			
			|  | 140 | +            </div>
 | 
	
		
			
			| 125 | 141 |          </div>
 | 
	
		
			
			|  | 142 | +    </div>
 | 
	
		
			
			| 126 | 143 |  
 | 
	
		
			
			| 127 | 144 |      <div class="t-half-spacer-above t-less-visible"></div>
 | 
	
		
			
			| 128 | 145 |  
 | 
	
	
		
			
			|  | @@ -131,59 +148,63 @@
 | 
	
		
			
			| 131 | 148 |              <% user_role = h.user_role(fake_api.current_user, result.workspace) %>
 | 
	
		
			
			| 132 | 149 |  
 | 
	
		
			
			| 133 | 150 |              ${TITLE.H3(_('Content'), 'fa-copy', 'workspace-content')}
 | 
	
		
			
			| 134 |  | -
 | 
	
		
			
			| 135 |  | -            % if user_role > 1:
 | 
	
		
			
			| 136 |  | -                <div class="btn-group" role="group">
 | 
	
		
			
			| 137 |  | -                    <button type="button" class="btn btn-success dropdown-toggle" data-toggle="dropdown" aria-expanded="false">
 | 
	
		
			
			| 138 |  | -                        <i class="fa fa-plus"></i> ${_('New ...')}
 | 
	
		
			
			| 139 |  | -                        <span class="caret"></span>
 | 
	
		
			
			| 140 |  | -                    </button>
 | 
	
		
			
			| 141 |  | -                    <ul class="dropdown-menu" role="menu">
 | 
	
		
			
			| 142 |  | -                        % for content_type in result.workspace.allowed_content_types:
 | 
	
		
			
			| 143 |  | -                            % if content_type.id == 'folder' and user_role > 2:
 | 
	
		
			
			| 144 |  | -                                ## Only show 'new folder' to content managers
 | 
	
		
			
			| 145 |  | -                                <%
 | 
	
		
			
			| 146 |  | -                                    new_form_content_url = tg.url('/workspaces/{}/folders/new'.format(result.workspace.id), params={'workspace_id': result.workspace.id, 'parent_id': None})
 | 
	
		
			
			| 147 |  | -                                    modal_dialog_id = '{content_type}-new-modal-dialog'.format(content_type=content_type.id)
 | 
	
		
			
			| 148 |  | -                                    icon_classes = content_type.icon+' '+content_type.color
 | 
	
		
			
			| 149 |  | -                                %>
 | 
	
		
			
			| 150 |  | -                                <li>${BUTTON.DATA_TARGET_AS_TEXT_AND_ICON_MODAL_WITH_REMOTE_CONTENT(modal_dialog_id, content_type.label, new_form_content_url, icon_classes)}</li>
 | 
	
		
			
			| 151 |  | -                            % else:
 | 
	
		
			
			| 152 |  | -                                <li>${BUTTON.DATA_TARGET_AS_TEXT_AND_ICON_MODAL_WITH_REMOTE_CONTENT('', _('You are not allowed to create content'), '', 't-less-visible fa fa-ban')}</li>
 | 
	
		
			
			| 153 |  | -    ## Show new content entries in the menu is currently not available at root of a workspace
 | 
	
		
			
			| 154 |  | -    ## TODO - D.A. - 2015-08-20 - Allow to put content at root (and show related entry in the menu
 | 
	
		
			
			| 155 |  | -    ##                             % if user_role == 2:
 | 
	
		
			
			| 156 |  | -    ##                                 ## Only show 'new folder' to content managers
 | 
	
		
			
			| 157 |  | -    ##                                 <%
 | 
	
		
			
			| 158 |  | -    ##                                     new_form_content_url = tg.url('/workspaces/{}/folders/{}/{}s/new'.format(result.folder.workspace.id, result.folder.id, content_type.id), params={'workspace_id': result.folder.workspace.id, 'parent_id': result.folder.id})
 | 
	
		
			
			| 159 |  | -    ##                                     modal_dialog_id = '{content_type}-new-modal-dialog'.format(content_type=content_type.id)
 | 
	
		
			
			| 160 |  | -    ##                                     icon_classes = content_type.icon+' '+content_type.color
 | 
	
		
			
			| 161 |  | -    ##                                 %>
 | 
	
		
			
			| 162 |  | -    ##                                 <li>${BUTTON.DATA_TARGET_AS_TEXT_AND_ICON_MODAL_WITH_REMOTE_CONTENT(modal_dialog_id, content_type.label, new_form_content_url, icon_classes)}</li>
 | 
	
		
			
			| 163 |  | -    ##                             % endif
 | 
	
		
			
			| 164 |  | -                            % endif
 | 
	
		
			
			| 165 |  | -                        % endfor
 | 
	
		
			
			| 166 |  | -                    </ul>
 | 
	
		
			
			|  | 151 | +                <div class="col-md-4 col-sx-12">
 | 
	
		
			
			|  | 152 | +                    % if user_role > 1:
 | 
	
		
			
			|  | 153 | +                        <div class="btn-group" role="group">
 | 
	
		
			
			|  | 154 | +                            <button type="button" class="btn btn-success dropdown-toggle" data-toggle="dropdown" aria-expanded="false">
 | 
	
		
			
			|  | 155 | +                                <i class="fa fa-plus"></i> ${_('New ...')}
 | 
	
		
			
			|  | 156 | +                                <span class="caret"></span>
 | 
	
		
			
			|  | 157 | +                            </button>
 | 
	
		
			
			|  | 158 | +                            <ul class="dropdown-menu" role="menu">
 | 
	
		
			
			|  | 159 | +                                % for content_type in result.workspace.allowed_content_types:
 | 
	
		
			
			|  | 160 | +                                    % if content_type.id == 'folder' and user_role > 2:
 | 
	
		
			
			|  | 161 | +                                        ## Only show 'new folder' to content managers
 | 
	
		
			
			|  | 162 | +                                        <%
 | 
	
		
			
			|  | 163 | +                                            new_form_content_url = tg.url('/workspaces/{}/folders/new'.format(result.workspace.id), params={'workspace_id': result.workspace.id, 'parent_id': None})
 | 
	
		
			
			|  | 164 | +                                            modal_dialog_id = '{content_type}-new-modal-dialog'.format(content_type=content_type.id)
 | 
	
		
			
			|  | 165 | +                                            icon_classes = content_type.icon+' '+content_type.color
 | 
	
		
			
			|  | 166 | +                                        %>
 | 
	
		
			
			|  | 167 | +                                        <li>${BUTTON.DATA_TARGET_AS_TEXT_AND_ICON_MODAL_WITH_REMOTE_CONTENT(modal_dialog_id, content_type.label, new_form_content_url, icon_classes)}</li>
 | 
	
		
			
			|  | 168 | +                                    % else:
 | 
	
		
			
			|  | 169 | +                                        <li>${BUTTON.DATA_TARGET_AS_TEXT_AND_ICON_MODAL_WITH_REMOTE_CONTENT('', _('You are not allowed to create content'), '', 't-less-visible fa fa-ban')}</li>
 | 
	
		
			
			|  | 170 | +            ## Show new content entries in the menu is currently not available at root of a workspace
 | 
	
		
			
			|  | 171 | +            ## TODO - D.A. - 2015-08-20 - Allow to put content at root (and show related entry in the menu
 | 
	
		
			
			|  | 172 | +            ##                             % if user_role == 2:
 | 
	
		
			
			|  | 173 | +            ##                                 ## Only show 'new folder' to content managers
 | 
	
		
			
			|  | 174 | +            ##                                 <%
 | 
	
		
			
			|  | 175 | +            ##                                     new_form_content_url = tg.url('/workspaces/{}/folders/{}/{}s/new'.format(result.folder.workspace.id, result.folder.id, content_type.id), params={'workspace_id': result.folder.workspace.id, 'parent_id': result.folder.id})
 | 
	
		
			
			|  | 176 | +            ##                                     modal_dialog_id = '{content_type}-new-modal-dialog'.format(content_type=content_type.id)
 | 
	
		
			
			|  | 177 | +            ##                                     icon_classes = content_type.icon+' '+content_type.color
 | 
	
		
			
			|  | 178 | +            ##                                 %>
 | 
	
		
			
			|  | 179 | +            ##                                 <li>${BUTTON.DATA_TARGET_AS_TEXT_AND_ICON_MODAL_WITH_REMOTE_CONTENT(modal_dialog_id, content_type.label, new_form_content_url, icon_classes)}</li>
 | 
	
		
			
			|  | 180 | +            ##                             % endif
 | 
	
		
			
			|  | 181 | +                                    % endif
 | 
	
		
			
			|  | 182 | +                                % endfor
 | 
	
		
			
			|  | 183 | +                            </ul>
 | 
	
		
			
			|  | 184 | +                        </div>
 | 
	
		
			
			|  | 185 | +                    % endif
 | 
	
		
			
			| 167 | 186 |                  </div>
 | 
	
		
			
			| 168 |  | -            % endif
 | 
	
		
			
			| 169 |  | -
 | 
	
		
			
			| 170 |  | -            % if len(fake_api.sub_items) > 0:
 | 
	
		
			
			| 171 |  | -                ## INFO - D.A. - 2015-05-25
 | 
	
		
			
			| 172 |  | -                ## We hide filtering/search buttons if no content yet.
 | 
	
		
			
			| 173 |  | -                ## This make the interface more easy to use
 | 
	
		
			
			| 174 |  | -                <div class="btn-group" role="group" aria-label="...">
 | 
	
		
			
			| 175 |  | -                    ${BUTTON.TEXT('', 'btn btn-default disabled', _('hide...'))}
 | 
	
		
			
			| 176 |  | -                    % for content_type in result.workspace.allowed_content_types:
 | 
	
		
			
			| 177 |  | -                        ${BUTTON.TEXT('toggle-{type}-visibility'.format(type=content_type.id), 'btn btn-default t-active-color disabled-has-priority', content_type.label)}
 | 
	
		
			
			| 178 |  | -                    % endfor
 | 
	
		
			
			|  | 187 | +                <div class="col-md-8 text-right">
 | 
	
		
			
			|  | 188 | +                    % if len(fake_api.sub_items) > 0:
 | 
	
		
			
			|  | 189 | +                        ## INFO - D.A. - 2015-05-25
 | 
	
		
			
			|  | 190 | +                        ## We hide filtering/search buttons if no content yet.
 | 
	
		
			
			|  | 191 | +                        ## This make the interface more easy to use
 | 
	
		
			
			|  | 192 | +                        <div class="btn-group" role="group" aria-label="...">
 | 
	
		
			
			|  | 193 | +                            ${BUTTON.TEXT('', 'btn btn-default disabled', _('hide...'))}
 | 
	
		
			
			|  | 194 | +                            % for content_type in result.workspace.allowed_content_types:
 | 
	
		
			
			|  | 195 | +                                ${BUTTON.TEXT('toggle-{type}-visibility'.format(type=content_type.id), 'btn btn-default t-active-color disabled-has-priority', content_type.label)}
 | 
	
		
			
			|  | 196 | +                            % endfor
 | 
	
		
			
			|  | 197 | +                        </div>
 | 
	
		
			
			|  | 198 | +                        <p></p>
 | 
	
		
			
			|  | 199 | +                        ${UI.GENERIC_DISPLAY_VIEW_BUTTONS_CONTAINER(tg.url('/workspaces/{}'.format(result.workspace.id)))}
 | 
	
		
			
			|  | 200 | +                        <p></p>
 | 
	
		
			
			|  | 201 | +                        <div class="btn-group pull-right" role="group" aria-label="...">
 | 
	
		
			
			|  | 202 | +                            <input id="filtering"  type="text" class="form-control t-bg-grey" placeholder="${_('filter...')}" aria-describedby="basic-addon1">
 | 
	
		
			
			|  | 203 | +                        </div>
 | 
	
		
			
			|  | 204 | +                    % endif
 | 
	
		
			
			| 179 | 205 |                  </div>
 | 
	
		
			
			| 180 | 206 |  
 | 
	
		
			
			| 181 |  | -                <div class="btn-group pull-right" role="group" aria-label="...">
 | 
	
		
			
			| 182 |  | -                    <input id="filtering"  type="text" class="form-control t-bg-grey" placeholder="${_('search...')}" aria-describedby="basic-addon1">
 | 
	
		
			
			| 183 |  | -                </div>
 | 
	
		
			
			| 184 |  | -            % endif
 | 
	
		
			
			| 185 | 207 |  
 | 
	
		
			
			| 186 |  | -            ${UI.GENERIC_DISPLAY_VIEW_BUTTONS_CONTAINER(tg.url('/workspaces/{}'.format(result.workspace.id)))}
 | 
	
		
			
			| 187 | 208 |  
 | 
	
		
			
			| 188 | 209 |          </div>
 | 
	
		
			
			| 189 | 210 |          <div class="t-spacer-above">
 |