projects (version 1.1.1)

reordering: Reordering authors and affiliations

Description

These functions allow the user to reorder a project's authors or an author's affiliations.

Usage

reorder_authors(project, ..., after = 0L, reprint_header = TRUE,
  archived = FALSE)

reorder_affiliations(author, ..., after = 0L)

Arguments

project, author

The id or unambiguous names of a project/author whose authors/affiliations you want to reorder.

...

The ids or names of authors/affiliations you want to reorder, optionally with their new ranks explicitly stated. See Details.

after

If not specifying explicit ranks in ..., the position you want the elements to come after. Works like the after argument in append or forcats::fct_relevel.

Ignored if ranks are explicitly provided in ....

reprint_header

Should the project's header be printed to the console? TRUE by default.

archived

Logical indicating whether or not the function should consider archived projects when determining which project the user is referring to in the project argument. FALSE by default.

See the Details section of archive_project() for more information on the "archived" status of a project.

Details

The order of authors and affiliations affects the order in which these items appear in project headers.

When specifying explicit ranks, enter ... as name-value pairs (e.g., Johnson = 2, "Baron Cohen" = 4). You can even enumerate authors/affiliations by their corresponding (quoted) id numbers (e.g., `7` = 2, ACME = 4, `22` = 6). If entering an integer greater than the total number of authors/affiliations, the element will be put at the end. The after argument will be ignored in this case.

When not specifying explicit ranks, simply enter author/affiliations ids or names in the order you want them, and the ones you entered will be inserted after the position specified by the after argument. By default (after = 0), the authors/affiliations in ... will be moved to the front. This behavior corresponds to that of append() or forcats::fct_relevel().

Examples

Run this code
# NOT RUN {
# SETUP
old_path <- Sys.getenv("PROJECTS_FOLDER_PATH")
setup_projects(path = tempdir(), .Renviron_path = fs::path_temp(".Renviron"))
new_affiliation(department_name = "Math Dept.",
                institution_name = "Springfield College",
                address = "123 College St, Springfield, AB")
new_affiliation(department_name = "Art Department",
                institution_name = "Springfield College",
                address = "321 University Boulevard, Springfield, AB",
                id = 42)
new_affiliation(department_name = "Central Intelligence Agency",
                institution_name = "United States Government",
                address = "888 Classified Dr, Washington DC")
new_affiliation(department_name = "Pyrotechnics",
                institution_name = "ACME")
new_author(given_names = "Rosetta", last_name = "Stone",
           affiliations = c(42, "Math"), degree = "PhD",
           email = "slab@rock.net", phone = "867-555-5309", id = 8888)
new_author(given_names = "Spiro", last_name = "Agnew", degree = "LLB",
           affiliations = "Art D", id = 13)
new_author(given_names = "Plato", id = 303)
new_author(given_names = "Condoleezza", last_name = "Rice", degree = "PhD",
           affiliations = c(1, 42, "Agency", "ACME"), phone = "555-555-5555",
           email = "condoleeza@ri.ce")
new_author(given_names = "Jane", last_name = "Goodall", degree = "PhD",
           affiliations = 3, id = 5)
new_project(title = "Understanding the Construction of the United States",
            short_title = "USA",
            authors = c(13, "Stone", "zz", "303", "Jane Goodall"),
            stage = 4, deadline = "2055-02-28", deadline_type = "submission",
            path = "famous_studied/philosophers/rocks",
            corresp_auth = "Stone", current_owner = "agnew",
            make_directories = TRUE, use_bib = TRUE,
            status = "waiting on IRB")
#############################################################################

# Reordering with unnamed arguments
reorder_affiliations(author = "RICE", "ACME", 42, after = 1)

# Reordering with named arguments
reorder_authors(project = 1, "Rosetta" = 99, `303` = 2, "5" = 1)

#############################################################################
# CLEANUP
Sys.setenv(PROJECTS_FOLDER_PATH = old_path)
fs::file_delete(c(fs::path_temp("projects"), fs::path_temp(".Renviron")))
# }

Run the code above in your browser using DataLab