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-cloak) 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="showForm()") 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()", placeholder="First Name") .input input(type='text', name='last_name', ng-model="userInfoForm.last_name", ng-blur="sendUpdate()", placeholder='Last Name') .input#institution_auto_complete autocomplete(ng-model="userInfoForm.institution", data="institutions", ng-blur="sendUpdate()", on-type="updateInstitutionsList", attr-placeholder="Institution") .input input(type='text', name='role', ng-model="userInfoForm.role", placeholder='Role', ng-blur="sendUpdate()", list="_roles") datalist#_roles option(ng-repeat='role in roles') {{role}} .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", "angular":"libs/angular" }, shim: { 'angular' : {'exports' : 'angular'} }, priority: [ "angular" ] }; script( data-main=jsPath+'list.js?fingerprint='+fingerprint(jsPath + 'list.js'), baseurl=jsPath, src=jsPath+'libs/require.js?fingerprint='+fingerprint(jsPath + 'libs/require.js') )