/** * BreadCrumb * Copyright 2011 Benjamin Vauchel * * BreadCrumb is free software; you can redistribute it and/or modify it * under the terms of the GNU General Public License as published by the Free * Software Foundation; either version 2 of the License, or (at your option) any * later version. * * BreadCrumb is distributed in the hope that it will be useful, but WITHOUT ANY * WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR * A PARTICULAR PURPOSE. See the GNU General Public License for more details. * * You should have received a copy of the GNU General Public License along with * BreadCrumb; if not, write to the Free Software Foundation, Inc., 59 Temple Place, * Suite 330, Boston, MA 02111-1307 USA * * @package breadcrumb * @author Benjamin Vauchel * * @version Version 1.4.3 pl * 07/03/15 * * Breadcrumb is a snippet for MODx Revolution, inspired by the Jared's BreadCrumbs snippet. * It will create a breadcrumb navigation for the current resource or a specific resource. * * Optional properties: * * @property from - (int) Resource ID of the first crumb; [Default value : 0]. * @property to - (int) Resource ID of the last crumb; [Default value : current resource id]. * @property exclude - (string) Comma separated list of resources IDs not shown in breadcrumb. [Default value : []] * @property maxCrumbs - (int) Max crumbs shown in breadcrumb. Max delimiter template can be customize with property maxCrumbTpl ; [Default value : 100]. * @property showHidden - (bool) Show hidden resources in breadcrumb; [Default value : true]. * @property showContainer - (bool) Show container resources in breadcrumb; [Default value : true]. * @property showUnPub - (bool) Show unpublished resources in breadcrumb; [Default value : true]. * @property showCurrentCrumb - (bool) Show current resource as a crumb; [Default value : true]. * @property showBreadCrumbAtHome - (bool) Show BreadCrumb on the home page; [Default value : true]. * @property showHomeCrumb - (bool) Add the home page crumb at the start of the breadcrumb; [Default value : true]. * @property useWebLinkUrl - (bool) Use the weblink url instead of the url to the weblink; [Default value : true]. * @property direction - (string) Direction or breadcrumb : Left To Right (ltr) or Right To Left (rtl) for Arabic language for example; [Default value : ltr]. * @property scheme - (string) URL Generation Scheme; [Default value : -1]. * * Templates : * * @property containerTpl - (string) Container template for BreadCrumb; [Default value : BreadCrumbContainerTpl]. * @property currentCrumbTpl - (string) Current crumb template for BreadCrumb; [Default value : BreadCrumbCurrentCrumbTpl]. * @property linkCrumbTpl - (string) Default crumb template for BreadCrumb; [Default value : BreadCrumbLinkCrumbTpl]. * @property categoryCrumbTpl - (string) Default category crumb template for BreadCrumb; [Default value : BreadCrumbCategoryCrumbTpl]. * @property maxCrumbTpl - (string) Max delimiter crumb template for BreadCrumb; [Default value : BreadCrumbMaxCrumbTpl]. */ // Script Properties $from = !empty($from) ? $from : $modx->getOption('from', $scriptProperties, 0, true, true); $to = $currentResourceId = !empty($to) ? $to : $modx->getOption('to', $scriptProperties, $modx->resource->get('id'), true); $exclude = !empty($exclude) ? explode(',', $exclude) : array(); $maxCrumbs = !empty($maxCrumbs) ? abs(intval($maxCrumbs)) : $modx->getOption('maxCrumbs', $scriptProperties, 100, true); $showHidden = isset($showHidden) ? (bool)$showHidden : (bool)$modx->getOption('showHidden', $scriptProperties, true, true); $showContainer = isset($showContainer) ? (bool)$showContainer : (bool)$modx->getOption('showContainer', $scriptProperties, true, true); $showUnPub = isset($showUnPub) ? (bool)$showUnPub : (bool)$modx->getOption('showUnPub', $scriptProperties, true, true); $showCurrentCrumb = isset($showCurrentCrumb) ? (bool)$showCurrentCrumb : (bool)$modx->getOption('showCurrentCrumb', $scriptProperties, true, true); $showBreadCrumbAtHome = isset($showBreadCrumbAtHome) ? (bool)$showBreadCrumbAtHome : (bool)$modx->getOption('showBreadCrumbAtHome', $scriptProperties, true, true); $showHomeCrumb = isset($showHomeCrumb) ? (bool)$showHomeCrumb : (bool)$modx->getOption('showHomeCrumb', $scriptProperties, true, true); $useWebLinkUrl = isset($useWebLinkUrl) ? (bool)$useWebLinkUrl : (bool)$modx->getOption('useWebLinkUrl', $scriptProperties, true, true); $direction = !empty($direction) ? $direction : $modx->getOption('direction', $scriptProperties, 'ltr', true); $scheme = !empty($scheme) ? $scheme : $modx->getOption('scheme', $scriptProperties, $modx->getOption('link_tag_scheme'), true); $containerTpl = !empty($containerTpl) ? $containerTpl : $modx->getOption('containerTpl', $scriptProperties, '@INLINE '); $homeCrumbTpl = !empty($homeCrumbTpl) ? $homeCrumbTpl : $modx->getOption('homeCrumbTpl', $scriptProperties, '@INLINE
  • '); $currentCrumbTpl = !empty($currentCrumbTpl) ? $currentCrumbTpl : $modx->getOption('currentCrumbTpl', $scriptProperties, '@INLINE
  • '); $linkCrumbTpl = !empty($linkCrumbTpl) ? $linkCrumbTpl : $modx->getOption('linkCrumbTpl', $scriptProperties, '@INLINE
  • '); $categoryCrumbTpl = !empty($categoryCrumbTpl) ? $categoryCrumbTpl : $modx->getOption('categoryCrumbTpl', $scriptProperties, '@INLINE
  • '); $maxCrumbTpl = !empty($maxCrumbTpl) ? $maxCrumbTpl : $modx->getOption('maxCrumbTpl', $scriptProperties, '@INLINE
  • ...
  • '); // include parseTpl include_once $modx->getOption('breadcrumb.core_path',null,$modx->getOption('core_path').'components/breadcrumb/includes/').'include.parsetpl.php'; // Output variable $output = ''; // We check if current resource is the homepage and if breadcrumb is shown for the homepage if (!$showBreadCrumbAtHome && $modx->resource->get('id') == $modx->getOption('site_start')) { return ''; } // We get all the other crumbs $crumbs = array(); $crumbsCount = 0; $resourceId = $to; while ($resourceId != $from && $crumbsCount < $maxCrumbs) { if (!$resource = $modx->getObject('modResource', $resourceId)) { break; } // We check the conditions to show crumb if ( $resourceId != $modx->getOption('site_start') // ShowHomeCrumb && (($resource->get('hidemenu') && $showHidden) || !$resource->get('hidemenu')) // ShowHidden && (($resource->get('isfolder') && $showContainer) || !$resource->get('isfolder')) // ShowContainer && ((!$resource->get('published') && $showUnPub) || $resource->get('published')) // UnPub && (($resourceId == $currentResourceId && $showCurrentCrumb) || $resourceId != $currentResourceId) // ShowCurrent && !in_array($resourceId, $exclude) // Excluded resources ) { // If is LTR direction, we push resource at the beginning of the array if ($direction == 'ltr') { array_unshift($crumbs, $resource); } // Else we push it at the end else { $crumbs[] = $resource; } $crumbsCount++; } $resourceId = $resource->get('parent'); } // Add home crumb if ($showHomeCrumb && $resource = $modx->getObject('modResource', $modx->getOption('site_start'))) { if ($direction == 'ltr') { array_unshift($crumbs, $resource); } else { $crumbs[] = $resource; } } // We build the output of crumbs foreach($crumbs as $key => $resource) { // Home crumb tpl ? if ($resource->get('id') == $modx->getOption('site_start')) { $tpl = $homeCrumbTpl; } // Current crumb tpl ? elseif ($showCurrentCrumb && ($resource->get('id') == $currentResourceId)) { $tpl = $currentCrumbTpl; } // resource is a container only, calculated in a similar manner to Wayfinder elseif ($resource->get('isfolder') && ( $resource->get('template') == 0 || strpos($resource->get('link_attributes'), 'rel="category"') !== false ) ) { $tpl = $categoryCrumbTpl; } // or default crumb tpl ? else { $tpl = $linkCrumbTpl; } // Placeholders $placeholders = $resource->toArray(); if ($resource->get('class_key') == 'modWebLink' && $useWebLinkUrl) { if (is_numeric($resource->get('content'))) { $link = $modx->makeUrl($resource->get('content'), '', '', $scheme); } else { $link = $resource->get('content'); } } else { $link = $modx->makeUrl($resource->get('id'), '', '', $scheme); } $placeholders = array_merge($resource->toArray(), array('link' => $link)); // Output $output .= parseTpl($tpl, $placeholders); } // We add the max delimiter to the crumbs output, if the max limit was reached if ($crumbsCount == $maxCrumbs) { // If is LTR direction, we push the max delimiter at the beginning of the crumbs if ($direction == 'ltr') { $output = parseTpl($maxCrumbTpl).$output; } // Else we push it at the end else { $output .= parseTpl($maxCrumbTpl); } } // We build the breadcrumb output $output = parseTpl($containerTpl, array( 'crumbs' => $output, )); return $output; return; 1

    Offres d'emploi

    • Senior Scientist or Advanced Clinician Scientist (100%)

      The position is open at Division of Endocrinology of the Section of Medicine of the University of Fribourg, Switzerland, to study the molecular mechanisms of sex development in humans (https://www.unifr.ch/med/de/research/groups/lauber/)


      Beginning : April, 01, 2022
      Duration : 3-4 years
      Location: Université de Fribourg
      Working time: 100%

       

      Objective

      The main objective of our work is the elucidation of the molecular basis of human sex development to better define phenotypes and therapies of its complex defects.

      Goals

      1. Gain new insights in sex differentiation in humans.
      2. Create new models for understanding mechanism of disease.

      Technically, the focus of the work will be to

      a) create human male and female gonadal cells from inducible pluripotent stem cells directly from patients affected by differences of sex development to study the mechanisms that lead to disease.

      b) use the fruit fly drosophila melanogaster as an animal model to study the functional consequences of unknown variants found in patients with differences of sex development.

      We will also employ standard cell and molecular biology, genetics, biochemistry, exome and RNA-sequencing, CRISP-Cas9 gene editing and mass spectrometry techniques. Bioinformatic analysis of next generation sequencing data and 3D-modeling is also one of our expertise.

      Your profile

      • A PhD, MD or equivalent degree(s) are required.
      • Knowledge and experience in molecular and cell biology are mandatory. Knowledge and/or prior experience in stem cells, cell therapy and/or gene engineering are a plus.
      • Knowledge and/or prior experience in Drosophila melanogaster handling is desirable.
      • Knowledge of the German or the French language is of advantage
      • Successful candidates will be independent, creative and enthusiastic researchers, capable of working efficiently in an international team of other postdoctoral fellows and PhD students. Outstanding laboratory capabilities and strong organizational skills to support Bachelor, Master and PhD students as well as Post Docs are expected.
      • Candidates have to present a successful academic track record

      We look forward to receiving your application with the following documents

      • Cover letter with statement of interest
      • CV
      • If applicable: brief summary on the envisioned independent research
      • Diplomas and course transcripts
      • Contact details of three referees

      Contact

      Anna Lauber-Biason, M.D.
      Chair of Endocrinology
      University of Fribourg
      Section of Medicine, Faculty of Science and Medicine
      Chemin du Musée 5
      1700 Fribourg
      E-mail. anna.lauber@unifr.ch

       

      The University of Fribourg is Switzerland’s only bilingual university, offering a full academic curriculum both in French and German. A number of Master programmes are taught in English and the University offers a wide range of opportunities for PhD and doctoral studies as well as international Exchange and Summer School Programmes.

      The University of Fribourg places scientific research that is closely linked to academic teaching at the heart of its activities. With an array of centres of scientific excellence as well as research programmes across the entire disciplinary spectrum, we aim to extend the frontiers of scientific knowledge to help solve mankind’s current and future challenges. https://www.unifr.ch/home/en/

       
    • Collaborateur/trice technique supérieur/e (90-100%)

      Domaine d’activité

      • Préparation, exécution et analyse de tests comportementaux et d'expériences électrophysiologiques sur des modèles animaux (rongeurs ou PNH) et chez l'homme.
      • Soutenir les postdoctorants, les doctorants et les étudiants dans la planification, l'exécution et l'analyse des expériences.
      • Préparation des demandes d'expérimentation animale auprès de l'office vétérinaire cantonal
      • Préparation des demandes d'expérimentation sur l'homme
      • Préparation des demandes de financement de la recherche
      • Organisation des travaux pratiques
      • Organisation et supervision de la gestion des données (data management)
      • Collaboration à l'organisation de réunions de laboratoire, Journal Club, conférences scientifiques, relations publiques et présence sur Internet.

      Exigences du poste:

      • Diplôme fédéral ou brevet fédéral ou diplôme ES avec plusieurs années d'expérience professionnelle. 
      • Plusieurs années d'expérience de travail avec des primates non humains (PNH) ou des rongeurs (souris ou rats) ou des humains dans le domaine des neurosciences.
      • Plusieurs années d'expérience dans la réalisation ou l'analyse d'expériences électrophysiologiques (enregistrements de cellules individuelles, EEG).
      • Expérience de l'utilisation de logiciels informatiques utilisés pour l'entraînement comportemental des animaux de laboratoire ou des humains (mworks ou similaire).
      • Solide connaissance de Matlab.
        Expérience de l'enseignement universitaire pratique.
      • Volonté de travailler au sein d'une équipe pour apporter un soutien pratique et contribuer à la réussite des travaux des étudiants de premier cycle, des doctorants et des postdoctorants.

      Langue:
      Maîtrise d'au moins deux des langues suivantes : français, allemand, anglais

      Entrée en fonction:
      01.01.2022 ou date à convenir

      Délai de postulation:
      27.08.2021

      Votre dossier complet est attendu de préférence par e-mail : karine.schneuwly@unifr.ch 
      ou par poste :
      Université de Fribourg
      Secrétariat Physiologie PER09
      Madame Karine Schneuwly
      Chemin du Musée 5
      1700 Fribourg

      De plus amples informations peuvent être obtenues auprès de:
      Professeur Michael Schmid
      Tél. +41 26 300 86 09
      michael.schmid@unifr.ch
      www.unifr.ch/med 

    • Postdoc in Drosophila Behavioral Circuit Neuroscience (100%)

      The positions are open in the Philipsborn group: philipsborn-lab.org

      The lab will move to the University of Fribourg, Switzerland, in February 2022, (Department for Neuro- and Movement Science), where we will continue to work on Drosophila Circuit Neuroscience and Behavioral Genetics. We are interested in motor control and the neurobiology of reproduction, with a focus on chemical and acoustic communication during sexual interactions. We are employing behavioral assays, audio recordings, genetic manipulation and optogenetics, bioimaging and neuronal reconstructions to understand how circuit motifs shape behavior.

      Working area and tasks
      You are expected either to join a current project of the laboratory (addressing the communication of nervous system and reproductive organs and copulatory behavior) or to propose and develop your own project ideas (within the general interest and expertise of the lab). Involvement in academic teaching is possible, but no requirement. You are capable of training and fostering the scientific development of Bachelor and Master students. The position is fully funded, but efforts to acquire your own funding and work toward independence will be strongly supported.

      Your profile
      The ideal candidate has a PhD in Natural Sciences and a good academic track-record of original research, project management and problem-solving. Previous experience in any of the following areas is of advantage: neuroscience, Drosophila biology, connectomics or genetics, advanced microscopy or electrophysiology, mass spectrometry, behavioral experiments and their analysis and scientific programming.

      Beginning: February 2022, or later
      Duration: 3-4 years
      Location: University of Fribourg
      Working time: 100%
      How to apply/Contact
      Please direct further questions and/or send your application (including a cover letter, CV, key records, references or reference contacts) in a single PDF file to Anne von Philipsborn: avp@dandrite.au.dk.
      Deadline: October 10, 2021

    • PhD student in Drosophila Behavioral Circuit Neuroscience (100%)

      The positions are open in the Philipsborn group: philipsborn-lab.org

      The lab will move to the University of Fribourg, Switzerland, in February 2022, (Department for Neuro- and Movement Science), where we will continue to work on Drosophila Circuit Neuroscience and Behavioral Genetics. We are interested in motor control and the neurobiology of reproduction, with a focus on chemical and acoustic communication during sexual interactions. We are employing behavioral assays, audio recordings, genetic manipulation and optogenetics, bioimaging and neuronal reconstructions to understand how circuit motifs shape behavior.

      Working area and tasks
      You will enroll at Fribourg Graduate School of Life Sciences (FGLS) for doctoral education. Possible scientific projects address: 1) the role of seminal fluid in male and female reproductive behavior, 2) neuronal mechanisms of state- dependent action control during reproduction or 3) development and function of sexual dimorphisms in motor patterning circuits.

      Your profile
      The ideal candidate has a Master Degree in Natural Sciences, interest in animal behavior and neuroscience, proficiency in English and the ability to work independently, creatively and efficiently. Good computer literacy, programming experience and knowledge of methods in neuroscience, microscopy, genetics and molecular biology is of advantage.

      Beginning: February 2022, or later
      Duration: 3-4 years
      Location: University of Fribourg
      Working time: 100%
      How to apply/Contact
      Please direct further questions and/or send your application (including a cover letter, CV, key records, references or reference contacts) in a single PDF file to Anne von Philipsborn: avp@dandrite.au.dk.
      Deadline: October 10, 2021