extends ../layout block content mixin formatAccessLevel(accessLevel) -if (accessLevel == "owner") span Owner -else if (accessLevel == "readWrite") span Read and Write -else if (accessLevel == "readOnly") span Read Only -else span Unknown? mixin tag(project_id, tagName, showDeleteIcon) span.label.label-info.tag-label(data-project-id=project_id, data-tag=tagName) span.text #{tagName} - if (showDeleteIcon) i.icon-remove.icon-white.delete-tag(data-project-id=project_id, data-tag=tagName) mixin projectList(projects) -each project in projects - project_id = project._id.toString() .project_entry(id=project_id) .btn-group.project-actions a.btn.dropdown-toggle(data-toggle="dropdown", href="#") Actions span.caret ul.dropdown-menu.pull-right(role="menu") li a(href='/project/'+project_id+'/clone', data-csrf=csrfToken).cloneProject Clone li a(href='/project/'+project._id+'/download/zip').downloadZip Download Zip -if (project.accessLevel == "owner") li a(href='/project/'+project_id+'/rename', data-name=project.name, data-id=project_id, data-csrf=csrfToken).renameProject Rename li a(href='/project/'+project_id, data-name=project.name, data-id=project_id, data-csrf=csrfToken).archiveProject Delete -else li a(href='/project/'+project_id+'/leave', data-name=project.name, data-id=project_id, data-csrf=csrfToken).leaveProject Leave a.projectName(href="/project/#{project._id}") #{project.name} .projectDetails span Last modified on span.isoDate #{project.lastUpdated.toISOString()} span   -   span #{formatProjectPublicAccessLevel(project.publicAccesLevel)} span   -   mixin formatAccessLevel(project.accessLevel) .project-tags(data-project-id=project_id) - each tag in project.tags mixin tag(project_id, tag.name, true) span.new-tags span.newTagLocation span.label.addTagButton(data-project-id=project_id) Add Tag i.icon-plus.icon-white div input(placeholder='Tag Name', name='tags', style="display: none;", data-project-id=project_id).tags-input include ../general/sidebar .content-with-navigation-sidebar .box#projectListArea .row-fluid .span12 .page-header .btn-group.pull-right#newProject a.btn.btn-success.dropdown-toggle(data-toggle="dropdown", href="#") New Project span.caret ul.dropdown-menu.pull-right(role="menu") li a.normalText#blankNewProject(href="#", data-csrf=csrfToken) Blank Project li a.normalText#newProjectExample(href="#", data-csrf=csrfToken) Example Project li a.normalText#uploadNewProject(href="#", data-csrf=csrfToken) Upload Zipped Project li.divider li .normalText.menu-header From Template li a.normalText.menu-indent(href="/templates/cv") CV or Resume li a.normalText.menu-indent(href="/templates/cover-letters") Cover Letter li a.normalText.menu-indent(href="/templates/journals") Journal Article li a.normalText.menu-indent(href="/templates/presentations") Presentation li a.normalText.menu-indent(href="/templates/thesis") Thesis li a.normalText.menu-indent(href="/templates/bibliographies") Bibliographies a(href="/project/archived").pull-right.archived-projects Archived Projects h1 Projects - if (projects.length > 0) .row-fluid .span9 form.search input#projectFilter(placeholder='Search Projects', autofocus='autofocus').span6.projectSearch.search-query i.icon-search i.icon-remove ul#projectList mixin projectList(projects) .span3#userProfileInformation(ng-app="userProfileInformationApp") div(ng-controller="UpdateForm").userProfileInformationArea div(ng-hide="hidePersonalInfoSection").alert.alert-info div(ng-show="percentComplete >= 100") h4 100% complete, well done! div(ng-hide="percentComplete >= 100") h4 Your account is strong {{percentComplete}}% | complete .progress .bar.bar-success(ng-style="{'width' : (percentComplete+'%')}") button#completeUserProfileInformation.btn.btn-primary(ng-hide="formVisable", ng-click="formVisable = true") Complete now div(ng-show="formVisable") form(enctype='multipart/form-data', method='post') .input input(type='text', name='first_name', ng-model="userInfoForm.first_name", ng-blur="sendUpdate()") .input input(type='text', name='last_name', ng-model="userInfoForm.last_name", ng-blur="sendUpdate()", placeholder='Last Name') .input input(type='text', name='institution', ng-model="userInfoForm.institution", placeholder='Institution', ng-blur="sendUpdate()") .input input(type='text', name='role', ng-model="userInfoForm.role", placeholder='Role', ng-blur="sendUpdate()") .span3 .tag-list h2 Tags #allProjectTagsArea ul - each tag in tags -if (tag.project_ids.length > 0) li mixin tag("", tag.name, false) span.number x #{tag.project_ids.length} - else .row-fluid .span12 .sharelatex-intro .create-project-arrow Create your first project .welcome h2 Welcome to ShareLaTeX! p New to LaTeX? Then have a look at our a(href="/templates") templates | or a(href="/learn") help guides | . include ../general/small-footer script(type="text/template")#tagTemplate mixin tag('{{ project_id }}', '{{ tagName }}', true) - locals.supressDefaultJs = true script window.requirejs = { "paths" : { "moment": "libs/moment" } }; script( data-main=jsPath+'list.js?fingerprint='+fingerprint(jsPath + 'list.js'), baseurl=jsPath, src=jsPath+'libs/require.js?fingerprint='+fingerprint(jsPath + 'libs/require.js') ) script(src="https://cdnjs.cloudflare.com/ajax/libs/underscore.js/1.5.2/underscore-min.js") script(src="https://ajax.googleapis.com/ajax/libs/angularjs/1.2.17/angular.js") script(src=jsPath+"/UserDetailsUpdater.js")