<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en">
	<id>https://docs.moodle.org/21/en/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=Vf</id>
	<title>MoodleDocs - User contributions [en]</title>
	<link rel="self" type="application/atom+xml" href="https://docs.moodle.org/21/en/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=Vf"/>
	<link rel="alternate" type="text/html" href="https://docs.moodle.org/21/en/Special:Contributions/Vf"/>
	<updated>2026-04-11T07:06:59Z</updated>
	<subtitle>User contributions</subtitle>
	<generator>MediaWiki 1.43.5</generator>
	<entry>
		<id>https://docs.moodle.org/21/en/index.php?title=Course_Publishing_block_(publishflow)&amp;diff=81226</id>
		<title>Course Publishing block (publishflow)</title>
		<link rel="alternate" type="text/html" href="https://docs.moodle.org/21/en/index.php?title=Course_Publishing_block_(publishflow)&amp;diff=81226"/>
		<updated>2011-02-10T21:25:43Z</updated>

		<summary type="html">&lt;p&gt;Vf: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Category:Contributed code]]&lt;br /&gt;
&lt;br /&gt;
The Publishflow block implements a complete course tranport and publishing architecture over the Moodle Network. The block provides a mean to publish, deploy or retrofit course archives from inside the course space itself. Publishing, deploying or retrofitting a course to a working platform use the same course transport infrastructure that operates through the network or via the local filesystem.&lt;br /&gt;
&lt;br /&gt;
[[Image:course_life_cycle.jpg|center]]&lt;br /&gt;
&lt;br /&gt;
==Moodle site types (regarding publishing concerns)==&lt;br /&gt;
&lt;br /&gt;
The course publishing architecture conceptually introduces three typical assignation to a Moodle application : &lt;br /&gt;
&lt;br /&gt;
* &#039;&#039;&#039;The Course Factory concept:&#039;&#039;&#039; A Course Factory is a Moodle instance where courses are designed and tested, but where non real training is performed. Courses can be set visible so promoting a cooperative work of the whole pedagogic operators. Courses can be exposed even if not complete or still in work, without depreciating the global e-Learing system apparent value.&lt;br /&gt;
* &#039;&#039;&#039;The Course Catalog concept:&#039;&#039;&#039; A Course Catalog is a Moodle instance that stores and exposes full features course volumes, as the result of a production process. A Course Catalog &#039;&#039;&#039;should not&#039;&#039;&#039; be the place where to perform real training, although nothing forbids really real use of courses there.&lt;br /&gt;
* &#039;&#039;&#039;The Training Instance concept:&#039;&#039;&#039; More commonly assignable to a &amp;quot;standard Moodle&amp;quot; concept, but being able to be fed with course volumes got from a Course Catalog. The Training Instances are targets for course deployment.&lt;br /&gt;
&lt;br /&gt;
Each of this general Moodle site role in the publishing network can be quickly setup by a site level preference of the Publishflow bloc. (See Global Settings)&lt;br /&gt;
&lt;br /&gt;
Assembling these three concepts may allow to constitute complex Moodle based architectures answering a publishing metaphoric model.&lt;br /&gt;
&lt;br /&gt;
[[Topology notes|Read more about topologic discussion and possibilities]]&lt;br /&gt;
&lt;br /&gt;
==Publication use cases==&lt;br /&gt;
&lt;br /&gt;
* &#039;&#039;&#039;Course publishing:&#039;&#039;&#039; Publishing a course is making the course volume available for use by the Traning Centers. &lt;br /&gt;
* &#039;&#039;&#039;Course deployment:&#039;&#039;&#039; Deploying a course is copying an instance of a course to get a workable course session with students. &lt;br /&gt;
* &#039;&#039;&#039;Course retrofitting:&#039;&#039;&#039; Retrofitting a course brings back a copy of an updated course volume to a factory for starting a new design and publishing process.&lt;br /&gt;
&lt;br /&gt;
==Course transportation principles==&lt;br /&gt;
&lt;br /&gt;
Course archives are being transported from a Moodle to another Moodle using the bublishflow simple publishing use cases. There are three transporting modes that a publishflow can operate:&lt;br /&gt;
===Using the local file system===&lt;br /&gt;
This is the fastest one. The course archive is picked up from one Moodle within the moodledata container of the source Moodle. This allows quite big size transportation in a very fast way, but of course needs the filesystem to be the same (or network mounted) between both Moodle instances. This is fully operable on a [[VMoodle|Virtualized Moodle]] installation.&lt;br /&gt;
===Using MNET back call===&lt;br /&gt;
Using MNET back call will transport the material through a Moodle MNET XMLRPC operation. This allows transporting Moodle archives between distinct physical servers an filesystems, but has a size limitation of about 40Mo due to XMLRPC encoding library breakdown.&lt;br /&gt;
===Using simple HTTP back call===&lt;br /&gt;
If the course archive does not need to be so protected during transport, the publishflow bloc envisages using a simple HTTP call to get the archive. &lt;br /&gt;
&lt;br /&gt;
this is still to be implemented.&lt;br /&gt;
&lt;br /&gt;
==Bloc Features==&lt;br /&gt;
&lt;br /&gt;
===Within a Course Factory Moodle===&lt;br /&gt;
&lt;br /&gt;
* &#039;&#039;Indexing:&#039;&#039; The course needs to be indexed (ie : having a non empty IDNumber to track published copies).&lt;br /&gt;
* &#039;&#039;Making a transportable archive:&#039;&#039; The course needs to be backup WITHOUT ANYTHING RELATIVE TO USERS to be tranportable. The bloc provides a control to make such an archive in &amp;quot;two clicks&amp;quot; process.&lt;br /&gt;
* &#039;&#039;Publish:&#039;&#039; Publishing a course to a remote Course Catalog chossing the target Moodle within the list of available targets.&lt;br /&gt;
&lt;br /&gt;
===Within a Course Catalog Moodle===&lt;br /&gt;
&lt;br /&gt;
* &#039;&#039;Deploy:&#039;&#039; The course can be deployed to any Training Center known in the MoodleNetwork neighborhood by people having capabilities to do it.&lt;br /&gt;
* &#039;&#039;Deploy with key:&#039;&#039; The course can be deployed to any Training Center known in the MoodleNetwork neighborhood by people having capabilities to do it AND having a preset deployment key.&lt;br /&gt;
&lt;br /&gt;
Deploying will make a remote copy of the course, landing in : &lt;br /&gt;
* a category choosen when setting up the deployement&lt;br /&gt;
* a predefined category for incoming courses, setup in the remote Moodle.&lt;br /&gt;
&lt;br /&gt;
===Within a Training Center Moodle===&lt;br /&gt;
&lt;br /&gt;
* &#039;&#039;Open/Reopen:&#039;&#039; The course is set available for use, or reopen if it is in a closed state.&lt;br /&gt;
* &#039;&#039;Close:&#039;&#039; The course is closed.&lt;br /&gt;
* &#039;&#039;Retrofit:&#039;&#039; The course can be retrofit to any Factory in the network neighbourhood.&lt;br /&gt;
&lt;br /&gt;
When a course is coming from deployment, it is set to a non visible state and can be attached to a predefined category.&lt;br /&gt;
&lt;br /&gt;
====Opening course options====&lt;br /&gt;
&lt;br /&gt;
When opening a course, the course may be moved to a predefined category (See Global Settings) and is set to &lt;br /&gt;
a visible state (enroll mode unchanged). &lt;br /&gt;
&lt;br /&gt;
* Opening with notification: All user that have role assigned within the course will be notified of opening.&lt;br /&gt;
* Opening without notification: No one will be notified. The course opens silently.&lt;br /&gt;
&lt;br /&gt;
====Closing course options====&lt;br /&gt;
&lt;br /&gt;
When closing a course, the course might be moved to a predefined category (See Global Settings). Closing a course might result in three distinct final states:&lt;br /&gt;
&lt;br /&gt;
* Private closing: the course is set to &#039;&#039;&#039;not visible&#039;&#039;&#039; state and no one else than teachers can go in.&lt;br /&gt;
* Protected closing: the course does&#039;nt changes its enroll settigns and student users are shifted to a &#039;&#039;Disabled Student&#039;&#039; additional custom role. Enrolled Students may thus continue to access to the course content and production whithout any interaction being possible any more. &lt;br /&gt;
* Public closing: the course is allowed to guest entry and open to guests. All users are shifted to a &#039;&#039;Disabled Student&#039;&#039; additional custom role so they get disabled.&lt;br /&gt;
&lt;br /&gt;
==Block Operations and implementation documentation==&lt;br /&gt;
&lt;br /&gt;
===Implementation Documentation===&lt;br /&gt;
* [[Publishflow Block : Requirements|Requirements]]&lt;br /&gt;
* [[Publishflow Block : Installation|Installation]]&lt;br /&gt;
* [[Publishflow Block : Initialization|Initialization : getting everyone to know about possible targets]]&lt;br /&gt;
* [[Publishflow Block : Global Settings|Global Settings]]&lt;br /&gt;
* [[Publishflow Block : Capabilities|Capabilities]]&lt;br /&gt;
* [[Publishflow Block : Additional Roles|Additional Roles]]&lt;br /&gt;
* [[Publishflow Block : MNET Services|MNET Services ( Developper)]]&lt;br /&gt;
&lt;br /&gt;
===Screens===&lt;br /&gt;
&lt;br /&gt;
*[[Publishflow Block: Publishing view|Publishing view]]&lt;br /&gt;
*[[Publishflow Block: Deploy view|Deploy view]]&lt;br /&gt;
*[[Publishflow Block: Retrofit|Retrofit and course life-cycle management view]]&lt;br /&gt;
&lt;br /&gt;
===Operations===&lt;br /&gt;
&lt;br /&gt;
====Making a course publishable====&lt;br /&gt;
&lt;br /&gt;
A course is publishable if :&lt;br /&gt;
* MNET is activated.&lt;br /&gt;
* MNET Services for publishing architecture are enables :&lt;br /&gt;
** Coursedelivery_admin service needs to be published by targets of a deployement&lt;br /&gt;
** Coursedelivery_admin service needs to be subscribed by sources of a deployement&lt;br /&gt;
** Coursedelivery_data service needs to be published by sources of a deployement&lt;br /&gt;
** Coursedelivery_data service needs to be subscribed by targets of a deployement&lt;br /&gt;
* The network has been scanned for publishing structure recognition&lt;br /&gt;
* A publishflow block is added to the course&lt;br /&gt;
* The course has been indexed (using the publishflow block in a Factory node)&lt;br /&gt;
* The course has got a transportable backup stored in &#039;&#039;backupdata&#039;&#039; (course files).&lt;br /&gt;
&lt;br /&gt;
==Credits==&lt;br /&gt;
&lt;br /&gt;
This module is developped and maintained by the French Team Val&#039;EISTI (valery@valeisti.fr)&lt;br /&gt;
&lt;br /&gt;
[[fr:Publication de cours]]&lt;/div&gt;</summary>
		<author><name>Vf</name></author>
	</entry>
	<entry>
		<id>https://docs.moodle.org/21/en/index.php?title=File:Vmoodle_added.jpg&amp;diff=79889</id>
		<title>File:Vmoodle added.jpg</title>
		<link rel="alternate" type="text/html" href="https://docs.moodle.org/21/en/index.php?title=File:Vmoodle_added.jpg&amp;diff=79889"/>
		<updated>2010-12-30T17:35:56Z</updated>

		<summary type="html">&lt;p&gt;Vf: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;/div&gt;</summary>
		<author><name>Vf</name></author>
	</entry>
	<entry>
		<id>https://docs.moodle.org/21/en/index.php?title=File:Vmoodle_config_p4.jpg&amp;diff=79887</id>
		<title>File:Vmoodle config p4.jpg</title>
		<link rel="alternate" type="text/html" href="https://docs.moodle.org/21/en/index.php?title=File:Vmoodle_config_p4.jpg&amp;diff=79887"/>
		<updated>2010-12-30T17:32:43Z</updated>

		<summary type="html">&lt;p&gt;Vf: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;/div&gt;</summary>
		<author><name>Vf</name></author>
	</entry>
	<entry>
		<id>https://docs.moodle.org/21/en/index.php?title=File:Vmoodle_config_p2.jpg&amp;diff=79886</id>
		<title>File:Vmoodle config p2.jpg</title>
		<link rel="alternate" type="text/html" href="https://docs.moodle.org/21/en/index.php?title=File:Vmoodle_config_p2.jpg&amp;diff=79886"/>
		<updated>2010-12-30T17:32:22Z</updated>

		<summary type="html">&lt;p&gt;Vf: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;/div&gt;</summary>
		<author><name>Vf</name></author>
	</entry>
	<entry>
		<id>https://docs.moodle.org/21/en/index.php?title=File:Vmoodle_config_p3.jpg&amp;diff=79885</id>
		<title>File:Vmoodle config p3.jpg</title>
		<link rel="alternate" type="text/html" href="https://docs.moodle.org/21/en/index.php?title=File:Vmoodle_config_p3.jpg&amp;diff=79885"/>
		<updated>2010-12-30T17:29:24Z</updated>

		<summary type="html">&lt;p&gt;Vf: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;/div&gt;</summary>
		<author><name>Vf</name></author>
	</entry>
	<entry>
		<id>https://docs.moodle.org/21/en/index.php?title=File:Vmoodle_config_p1.jpg&amp;diff=79883</id>
		<title>File:Vmoodle config p1.jpg</title>
		<link rel="alternate" type="text/html" href="https://docs.moodle.org/21/en/index.php?title=File:Vmoodle_config_p1.jpg&amp;diff=79883"/>
		<updated>2010-12-30T17:26:43Z</updated>

		<summary type="html">&lt;p&gt;Vf: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;/div&gt;</summary>
		<author><name>Vf</name></author>
	</entry>
	<entry>
		<id>https://docs.moodle.org/21/en/index.php?title=File:Vmoodle_start_point.jpg&amp;diff=79881</id>
		<title>File:Vmoodle start point.jpg</title>
		<link rel="alternate" type="text/html" href="https://docs.moodle.org/21/en/index.php?title=File:Vmoodle_start_point.jpg&amp;diff=79881"/>
		<updated>2010-12-30T17:23:49Z</updated>

		<summary type="html">&lt;p&gt;Vf: uploaded a new version of &amp;quot;Image:Vmoodle start point.jpg&amp;quot;&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;/div&gt;</summary>
		<author><name>Vf</name></author>
	</entry>
	<entry>
		<id>https://docs.moodle.org/21/en/index.php?title=File:Vmoodle_start_point.jpg&amp;diff=79878</id>
		<title>File:Vmoodle start point.jpg</title>
		<link rel="alternate" type="text/html" href="https://docs.moodle.org/21/en/index.php?title=File:Vmoodle_start_point.jpg&amp;diff=79878"/>
		<updated>2010-12-30T17:07:25Z</updated>

		<summary type="html">&lt;p&gt;Vf: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;/div&gt;</summary>
		<author><name>Vf</name></author>
	</entry>
	<entry>
		<id>https://docs.moodle.org/21/en/index.php?title=File:Vmoodle_architecture.jpg&amp;diff=79876</id>
		<title>File:Vmoodle architecture.jpg</title>
		<link rel="alternate" type="text/html" href="https://docs.moodle.org/21/en/index.php?title=File:Vmoodle_architecture.jpg&amp;diff=79876"/>
		<updated>2010-12-30T17:05:39Z</updated>

		<summary type="html">&lt;p&gt;Vf: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;/div&gt;</summary>
		<author><name>Vf</name></author>
	</entry>
	<entry>
		<id>https://docs.moodle.org/21/en/index.php?title=Publishflow_Block:_Retrofit&amp;diff=79824</id>
		<title>Publishflow Block: Retrofit</title>
		<link rel="alternate" type="text/html" href="https://docs.moodle.org/21/en/index.php?title=Publishflow_Block:_Retrofit&amp;diff=79824"/>
		<updated>2010-12-28T21:38:06Z</updated>

		<summary type="html">&lt;p&gt;Vf: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Course Publishing block (publishflow)|Back to index]]&lt;br /&gt;
&lt;br /&gt;
Retrofitting is an operation that consists in taking back a course content to the Course Factory from a Training Center.&lt;/div&gt;</summary>
		<author><name>Vf</name></author>
	</entry>
	<entry>
		<id>https://docs.moodle.org/21/en/index.php?title=Course_Publishing_block_(publishflow)&amp;diff=79823</id>
		<title>Course Publishing block (publishflow)</title>
		<link rel="alternate" type="text/html" href="https://docs.moodle.org/21/en/index.php?title=Course_Publishing_block_(publishflow)&amp;diff=79823"/>
		<updated>2010-12-28T21:37:25Z</updated>

		<summary type="html">&lt;p&gt;Vf: /* Screens */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Category:Contributed code]]&lt;br /&gt;
&lt;br /&gt;
The Publishflow block implements a complete course tranport and publishing architecture over the Moodle Network. The block provides a mean to publish, deploy or retrofit course archives from inside the course space itself. Publishing, deploying or retrofitting a course to a working platform use the same course transport infrastructure that operates through the network or via the local filesystem.&lt;br /&gt;
&lt;br /&gt;
[[Image:course_life_cycle.jpg|center]]&lt;br /&gt;
&lt;br /&gt;
==Moodle site types (regarding publishing concerns)==&lt;br /&gt;
&lt;br /&gt;
The course publishing architecture conceptually introduces three typical assignation to a Moodle application : &lt;br /&gt;
&lt;br /&gt;
* &#039;&#039;&#039;The Course Factory concept:&#039;&#039;&#039; A Course Factory is a Moodle instance where courses are designed and tested, but where non real training is performed. Courses can be set visible so promoting a cooperative work of the whole pedagogic operators. Courses can be exposed even if not complete or still in work, without depreciating the global e-Learing system apparent value.&lt;br /&gt;
* &#039;&#039;&#039;The Course Catalog concept:&#039;&#039;&#039; A Course Catalog is a Moodle instance that stores and exposes full features course volumes, as the result of a production process. A Course Catalog &#039;&#039;&#039;should not&#039;&#039;&#039; be the place where to perform real training, although nothing forbids really real use of courses there.&lt;br /&gt;
* &#039;&#039;&#039;The Training Instance concept:&#039;&#039;&#039; More commonly assignable to a &amp;quot;standard Moodle&amp;quot; concept, but being able to be fed with course volumes got from a Course Catalog. The Training Instances are targets for course deployment.&lt;br /&gt;
&lt;br /&gt;
Each of this general Moodle site role in the publishing network can be quickly setup by a site level preference of the Publishflow bloc. (See Global Settings)&lt;br /&gt;
&lt;br /&gt;
Assembling these three concepts may allow to constitute complex Moodle based architectures answering a publishing metaphoric model.&lt;br /&gt;
&lt;br /&gt;
[[Topology notes|Read more about topologic discussion and possibilities]]&lt;br /&gt;
&lt;br /&gt;
==Publication use cases==&lt;br /&gt;
&lt;br /&gt;
* &#039;&#039;&#039;Course publishing:&#039;&#039;&#039; Publishing a course is making the course volume available for use by the Traning Centers. &lt;br /&gt;
* &#039;&#039;&#039;Course deployment:&#039;&#039;&#039; Deploying a course is copying an instance of a course to get a workable course session with students. &lt;br /&gt;
* &#039;&#039;&#039;Course retrofitting:&#039;&#039;&#039; Retrofitting a course brings back a copy of an updated course volume to a factory for starting a new design and publishing process.&lt;br /&gt;
&lt;br /&gt;
==Course transportation principles==&lt;br /&gt;
&lt;br /&gt;
Course archives are being transported from a Moodle to another Moodle using the bublishflow simple publishing use cases. There are three transporting modes that a publishflow can operate:&lt;br /&gt;
===Using the local file system===&lt;br /&gt;
This is the fastest one. The course archive is picked up from one Moodle within the moodledata container of the source Moodle. This allows quite big size transportation in a very fast way, but of course needs the filesystem to be the same (or network mounted) between both Moodle instances. This is fully operable on a [[VMoodle|Virtualized Moodle]] installation.&lt;br /&gt;
===Using MNET back call===&lt;br /&gt;
Using MNET back call will transport the material through a Moodle MNET XMLRPC operation. This allows transporting Moodle archives between distinct physical servers an filesystems, but has a size limitation of about 40Mo due to XMLRPC encoding library breakdown.&lt;br /&gt;
===Using simple HTTP back call===&lt;br /&gt;
If the course archive does not need to be so protected during transport, the publishflow bloc envisages using a simple HTTP call to get the archive. &lt;br /&gt;
&lt;br /&gt;
this is still to be implemented.&lt;br /&gt;
&lt;br /&gt;
==Bloc Features==&lt;br /&gt;
&lt;br /&gt;
===Within a Course Factory Moodle===&lt;br /&gt;
&lt;br /&gt;
* &#039;&#039;Indexing:&#039;&#039; The course needs to be indexed (ie : having a non empty IDNumber to track published copies).&lt;br /&gt;
* &#039;&#039;Making a transportable archive:&#039;&#039; The course needs to be backup WITHOUT ANYTHING RELATIVE TO USERS to be tranportable. The bloc provides a control to make such an archive in &amp;quot;two clicks&amp;quot; process.&lt;br /&gt;
* &#039;&#039;Publish:&#039;&#039; Publishing a course to a remote Course Catalog chossing the target Moodle within the list of available targets.&lt;br /&gt;
&lt;br /&gt;
===Within a Course Catalog Moodle===&lt;br /&gt;
&lt;br /&gt;
* &#039;&#039;Deploy:&#039;&#039; The course can be deployed to any Training Center known in the MoodleNetwork neighborhood by people having capabilities to do it.&lt;br /&gt;
* &#039;&#039;Deploy with key:&#039;&#039; The course can be deployed to any Training Center known in the MoodleNetwork neighborhood by people having capabilities to do it AND having a preset deployment key.&lt;br /&gt;
&lt;br /&gt;
Deploying will make a remote copy of the course, landing in : &lt;br /&gt;
* a category choosen when setting up the deployement&lt;br /&gt;
* a predefined category for incoming courses, setup in the remote Moodle.&lt;br /&gt;
&lt;br /&gt;
===Within a Training Center Moodle===&lt;br /&gt;
&lt;br /&gt;
* &#039;&#039;Open/Reopen:&#039;&#039; The course is set available for use, or reopen if it is in a closed state.&lt;br /&gt;
* &#039;&#039;Close:&#039;&#039; The course is closed.&lt;br /&gt;
* &#039;&#039;Retrofit:&#039;&#039; The course can be retrofit to any Factory in the network neighbourhood.&lt;br /&gt;
&lt;br /&gt;
When a course is coming from deployment, it is set to a non visible state and can be attached to a predefined category.&lt;br /&gt;
&lt;br /&gt;
====Opening course options====&lt;br /&gt;
&lt;br /&gt;
When opening a course, the course may be moved to a predefined category (See Global Settings) and is set to &lt;br /&gt;
a visible state (enroll mode unchanged). &lt;br /&gt;
&lt;br /&gt;
* Opening with notification: All user that have role assigned within the course will be notified of opening.&lt;br /&gt;
* Opening without notification: No one will be notified. The course opens silently.&lt;br /&gt;
&lt;br /&gt;
====Closing course options====&lt;br /&gt;
&lt;br /&gt;
When closing a course, the course might be moved to a predefined category (See Global Settings). Closing a course might result in three distinct final states:&lt;br /&gt;
&lt;br /&gt;
* Private closing: the course is set to &#039;&#039;&#039;not visible&#039;&#039;&#039; state and no one else than teachers can go in.&lt;br /&gt;
* Protected closing: the course does&#039;nt changes its enroll settigns and student users are shifted to a &#039;&#039;Disabled Student&#039;&#039; additional custom role. Enrolled Students may thus continue to access to the course content and production whithout any interaction being possible any more. &lt;br /&gt;
* Public closing: the course is allowed to guest entry and open to guests. All users are shifted to a &#039;&#039;Disabled Student&#039;&#039; additional custom role so they get disabled.&lt;br /&gt;
&lt;br /&gt;
==Block Operations and implementation documentation==&lt;br /&gt;
&lt;br /&gt;
===Implementation Documentation===&lt;br /&gt;
* [[Publishflow Block : Requirements|Requirements]]&lt;br /&gt;
* [[Publishflow Block : Installation|Installation]]&lt;br /&gt;
* [[Publishflow Block : Initialization|Initialization : getting everyone to know about possible targets]]&lt;br /&gt;
* [[Publishflow Block : Global Settings|Global Settings]]&lt;br /&gt;
* [[Publishflow Block : Capabilities|Capabilities]]&lt;br /&gt;
* [[Publishflow Block : Additional Roles|Additional Roles]]&lt;br /&gt;
* [[Publishflow Block : MNET Services|MNET Services ( Developper)]]&lt;br /&gt;
&lt;br /&gt;
===Screens===&lt;br /&gt;
&lt;br /&gt;
*[[Publishflow Block: Publishing view|Publishing view]]&lt;br /&gt;
*[[Publishflow Block: Deploy view|Deploy view]]&lt;br /&gt;
*[[Publishflow Block: Retrofit|Retrofit and course life-cycle management view]]&lt;br /&gt;
&lt;br /&gt;
===Operations===&lt;br /&gt;
&lt;br /&gt;
====Making a course publishable====&lt;br /&gt;
&lt;br /&gt;
A course is publishable if :&lt;br /&gt;
* MNET is activated.&lt;br /&gt;
* MNET Services for publishing architecture are enables :&lt;br /&gt;
** Coursedelivery_admin service needs to be published by targets of a deployement&lt;br /&gt;
** Coursedelivery_admin service needs to be subscribed by sources of a deployement&lt;br /&gt;
** Coursedelivery_data service needs to be published by sources of a deployement&lt;br /&gt;
** Coursedelivery_data service needs to be subscribed by targets of a deployement&lt;br /&gt;
* The network has been scanned for publishing structure recognition&lt;br /&gt;
* A publishflow block is added to the course&lt;br /&gt;
* The course has been indexed (using the publishflow block in a Factory node)&lt;br /&gt;
* The course has got a transportable backup stored in &#039;&#039;backupdata&#039;&#039; (course files).&lt;br /&gt;
&lt;br /&gt;
==Credits==&lt;br /&gt;
&lt;br /&gt;
This module is developped and maintained by the French Team Val&#039;EISTI (valery@valeisti.fr)&lt;/div&gt;</summary>
		<author><name>Vf</name></author>
	</entry>
	<entry>
		<id>https://docs.moodle.org/21/en/index.php?title=Publishflow_Block:_Retrofit&amp;diff=79822</id>
		<title>Publishflow Block: Retrofit</title>
		<link rel="alternate" type="text/html" href="https://docs.moodle.org/21/en/index.php?title=Publishflow_Block:_Retrofit&amp;diff=79822"/>
		<updated>2010-12-28T21:35:26Z</updated>

		<summary type="html">&lt;p&gt;Vf: New page: Retrofitting is an operation that consists in taking back a course content to the Course Factory from a Training Center.&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Retrofitting is an operation that consists in taking back a course content to the Course Factory from a Training Center.&lt;/div&gt;</summary>
		<author><name>Vf</name></author>
	</entry>
	<entry>
		<id>https://docs.moodle.org/21/en/index.php?title=Publishflow_Block:_Retrofit_%26_manage_view&amp;diff=79821</id>
		<title>Publishflow Block: Retrofit &amp; manage view</title>
		<link rel="alternate" type="text/html" href="https://docs.moodle.org/21/en/index.php?title=Publishflow_Block:_Retrofit_%26_manage_view&amp;diff=79821"/>
		<updated>2010-12-28T21:34:21Z</updated>

		<summary type="html">&lt;p&gt;Vf: New page: Retrofit and course life-cycle management features occur in a Traning Center.  Retrofitting is an action of deploying back a course to a Course Factory for initiating a new workflow path a...&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Retrofit and course life-cycle management features occur in a Traning Center.&lt;br /&gt;
&lt;br /&gt;
Retrofitting is an action of deploying back a course to a Course Factory for initiating&lt;br /&gt;
a new workflow path again. This can be usefull when a local instance of a course has been&lt;br /&gt;
significantly updated by local teachers.&lt;br /&gt;
&lt;br /&gt;
Retrofit uses the same process than deploying a course, but restricted to a default category&lt;br /&gt;
as target setup in the Course Factory settings for publishflow.&lt;br /&gt;
&lt;br /&gt;
Again, to be able to retrofit a course from a Traning Center to a Course Factory, you will need:&lt;br /&gt;
&lt;br /&gt;
*having all network prerequisites as all other publishflow operations requires&lt;br /&gt;
*be in a Traning Center (choosed in global settings of publishflow as first parameter)&lt;br /&gt;
*having Retrofitting enabled in global settings of a Training Center&lt;br /&gt;
*having the block/publishflow:retrofit capability enabled in the Training Center&lt;br /&gt;
*having the block/publishflow:deploy capability in your remote profile in the Course Factory&lt;/div&gt;</summary>
		<author><name>Vf</name></author>
	</entry>
	<entry>
		<id>https://docs.moodle.org/21/en/index.php?title=Course_Publishing_block_(publishflow)&amp;diff=79820</id>
		<title>Course Publishing block (publishflow)</title>
		<link rel="alternate" type="text/html" href="https://docs.moodle.org/21/en/index.php?title=Course_Publishing_block_(publishflow)&amp;diff=79820"/>
		<updated>2010-12-28T21:27:57Z</updated>

		<summary type="html">&lt;p&gt;Vf: /* Screens */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Category:Contributed code]]&lt;br /&gt;
&lt;br /&gt;
The Publishflow block implements a complete course tranport and publishing architecture over the Moodle Network. The block provides a mean to publish, deploy or retrofit course archives from inside the course space itself. Publishing, deploying or retrofitting a course to a working platform use the same course transport infrastructure that operates through the network or via the local filesystem.&lt;br /&gt;
&lt;br /&gt;
[[Image:course_life_cycle.jpg|center]]&lt;br /&gt;
&lt;br /&gt;
==Moodle site types (regarding publishing concerns)==&lt;br /&gt;
&lt;br /&gt;
The course publishing architecture conceptually introduces three typical assignation to a Moodle application : &lt;br /&gt;
&lt;br /&gt;
* &#039;&#039;&#039;The Course Factory concept:&#039;&#039;&#039; A Course Factory is a Moodle instance where courses are designed and tested, but where non real training is performed. Courses can be set visible so promoting a cooperative work of the whole pedagogic operators. Courses can be exposed even if not complete or still in work, without depreciating the global e-Learing system apparent value.&lt;br /&gt;
* &#039;&#039;&#039;The Course Catalog concept:&#039;&#039;&#039; A Course Catalog is a Moodle instance that stores and exposes full features course volumes, as the result of a production process. A Course Catalog &#039;&#039;&#039;should not&#039;&#039;&#039; be the place where to perform real training, although nothing forbids really real use of courses there.&lt;br /&gt;
* &#039;&#039;&#039;The Training Instance concept:&#039;&#039;&#039; More commonly assignable to a &amp;quot;standard Moodle&amp;quot; concept, but being able to be fed with course volumes got from a Course Catalog. The Training Instances are targets for course deployment.&lt;br /&gt;
&lt;br /&gt;
Each of this general Moodle site role in the publishing network can be quickly setup by a site level preference of the Publishflow bloc. (See Global Settings)&lt;br /&gt;
&lt;br /&gt;
Assembling these three concepts may allow to constitute complex Moodle based architectures answering a publishing metaphoric model.&lt;br /&gt;
&lt;br /&gt;
[[Topology notes|Read more about topologic discussion and possibilities]]&lt;br /&gt;
&lt;br /&gt;
==Publication use cases==&lt;br /&gt;
&lt;br /&gt;
* &#039;&#039;&#039;Course publishing:&#039;&#039;&#039; Publishing a course is making the course volume available for use by the Traning Centers. &lt;br /&gt;
* &#039;&#039;&#039;Course deployment:&#039;&#039;&#039; Deploying a course is copying an instance of a course to get a workable course session with students. &lt;br /&gt;
* &#039;&#039;&#039;Course retrofitting:&#039;&#039;&#039; Retrofitting a course brings back a copy of an updated course volume to a factory for starting a new design and publishing process.&lt;br /&gt;
&lt;br /&gt;
==Course transportation principles==&lt;br /&gt;
&lt;br /&gt;
Course archives are being transported from a Moodle to another Moodle using the bublishflow simple publishing use cases. There are three transporting modes that a publishflow can operate:&lt;br /&gt;
===Using the local file system===&lt;br /&gt;
This is the fastest one. The course archive is picked up from one Moodle within the moodledata container of the source Moodle. This allows quite big size transportation in a very fast way, but of course needs the filesystem to be the same (or network mounted) between both Moodle instances. This is fully operable on a [[VMoodle|Virtualized Moodle]] installation.&lt;br /&gt;
===Using MNET back call===&lt;br /&gt;
Using MNET back call will transport the material through a Moodle MNET XMLRPC operation. This allows transporting Moodle archives between distinct physical servers an filesystems, but has a size limitation of about 40Mo due to XMLRPC encoding library breakdown.&lt;br /&gt;
===Using simple HTTP back call===&lt;br /&gt;
If the course archive does not need to be so protected during transport, the publishflow bloc envisages using a simple HTTP call to get the archive. &lt;br /&gt;
&lt;br /&gt;
this is still to be implemented.&lt;br /&gt;
&lt;br /&gt;
==Bloc Features==&lt;br /&gt;
&lt;br /&gt;
===Within a Course Factory Moodle===&lt;br /&gt;
&lt;br /&gt;
* &#039;&#039;Indexing:&#039;&#039; The course needs to be indexed (ie : having a non empty IDNumber to track published copies).&lt;br /&gt;
* &#039;&#039;Making a transportable archive:&#039;&#039; The course needs to be backup WITHOUT ANYTHING RELATIVE TO USERS to be tranportable. The bloc provides a control to make such an archive in &amp;quot;two clicks&amp;quot; process.&lt;br /&gt;
* &#039;&#039;Publish:&#039;&#039; Publishing a course to a remote Course Catalog chossing the target Moodle within the list of available targets.&lt;br /&gt;
&lt;br /&gt;
===Within a Course Catalog Moodle===&lt;br /&gt;
&lt;br /&gt;
* &#039;&#039;Deploy:&#039;&#039; The course can be deployed to any Training Center known in the MoodleNetwork neighborhood by people having capabilities to do it.&lt;br /&gt;
* &#039;&#039;Deploy with key:&#039;&#039; The course can be deployed to any Training Center known in the MoodleNetwork neighborhood by people having capabilities to do it AND having a preset deployment key.&lt;br /&gt;
&lt;br /&gt;
Deploying will make a remote copy of the course, landing in : &lt;br /&gt;
* a category choosen when setting up the deployement&lt;br /&gt;
* a predefined category for incoming courses, setup in the remote Moodle.&lt;br /&gt;
&lt;br /&gt;
===Within a Training Center Moodle===&lt;br /&gt;
&lt;br /&gt;
* &#039;&#039;Open/Reopen:&#039;&#039; The course is set available for use, or reopen if it is in a closed state.&lt;br /&gt;
* &#039;&#039;Close:&#039;&#039; The course is closed.&lt;br /&gt;
* &#039;&#039;Retrofit:&#039;&#039; The course can be retrofit to any Factory in the network neighbourhood.&lt;br /&gt;
&lt;br /&gt;
When a course is coming from deployment, it is set to a non visible state and can be attached to a predefined category.&lt;br /&gt;
&lt;br /&gt;
====Opening course options====&lt;br /&gt;
&lt;br /&gt;
When opening a course, the course may be moved to a predefined category (See Global Settings) and is set to &lt;br /&gt;
a visible state (enroll mode unchanged). &lt;br /&gt;
&lt;br /&gt;
* Opening with notification: All user that have role assigned within the course will be notified of opening.&lt;br /&gt;
* Opening without notification: No one will be notified. The course opens silently.&lt;br /&gt;
&lt;br /&gt;
====Closing course options====&lt;br /&gt;
&lt;br /&gt;
When closing a course, the course might be moved to a predefined category (See Global Settings). Closing a course might result in three distinct final states:&lt;br /&gt;
&lt;br /&gt;
* Private closing: the course is set to &#039;&#039;&#039;not visible&#039;&#039;&#039; state and no one else than teachers can go in.&lt;br /&gt;
* Protected closing: the course does&#039;nt changes its enroll settigns and student users are shifted to a &#039;&#039;Disabled Student&#039;&#039; additional custom role. Enrolled Students may thus continue to access to the course content and production whithout any interaction being possible any more. &lt;br /&gt;
* Public closing: the course is allowed to guest entry and open to guests. All users are shifted to a &#039;&#039;Disabled Student&#039;&#039; additional custom role so they get disabled.&lt;br /&gt;
&lt;br /&gt;
==Block Operations and implementation documentation==&lt;br /&gt;
&lt;br /&gt;
===Implementation Documentation===&lt;br /&gt;
* [[Publishflow Block : Requirements|Requirements]]&lt;br /&gt;
* [[Publishflow Block : Installation|Installation]]&lt;br /&gt;
* [[Publishflow Block : Initialization|Initialization : getting everyone to know about possible targets]]&lt;br /&gt;
* [[Publishflow Block : Global Settings|Global Settings]]&lt;br /&gt;
* [[Publishflow Block : Capabilities|Capabilities]]&lt;br /&gt;
* [[Publishflow Block : Additional Roles|Additional Roles]]&lt;br /&gt;
* [[Publishflow Block : MNET Services|MNET Services ( Developper)]]&lt;br /&gt;
&lt;br /&gt;
===Screens===&lt;br /&gt;
&lt;br /&gt;
*[[Publishflow Block: Publishing view|Publishing view]]&lt;br /&gt;
*[[Publishflow Block: Deploy view|Deploy view]]&lt;br /&gt;
*[[Publishflow Block: Retrofit &amp;amp; manage view|Retrofit and course life-cycle management view]]&lt;br /&gt;
&lt;br /&gt;
===Operations===&lt;br /&gt;
&lt;br /&gt;
====Making a course publishable====&lt;br /&gt;
&lt;br /&gt;
A course is publishable if :&lt;br /&gt;
* MNET is activated.&lt;br /&gt;
* MNET Services for publishing architecture are enables :&lt;br /&gt;
** Coursedelivery_admin service needs to be published by targets of a deployement&lt;br /&gt;
** Coursedelivery_admin service needs to be subscribed by sources of a deployement&lt;br /&gt;
** Coursedelivery_data service needs to be published by sources of a deployement&lt;br /&gt;
** Coursedelivery_data service needs to be subscribed by targets of a deployement&lt;br /&gt;
* The network has been scanned for publishing structure recognition&lt;br /&gt;
* A publishflow block is added to the course&lt;br /&gt;
* The course has been indexed (using the publishflow block in a Factory node)&lt;br /&gt;
* The course has got a transportable backup stored in &#039;&#039;backupdata&#039;&#039; (course files).&lt;br /&gt;
&lt;br /&gt;
==Credits==&lt;br /&gt;
&lt;br /&gt;
This module is developped and maintained by the French Team Val&#039;EISTI (valery@valeisti.fr)&lt;/div&gt;</summary>
		<author><name>Vf</name></author>
	</entry>
	<entry>
		<id>https://docs.moodle.org/21/en/index.php?title=Publishflow_Block:_Deploy_view&amp;diff=79819</id>
		<title>Publishflow Block: Deploy view</title>
		<link rel="alternate" type="text/html" href="https://docs.moodle.org/21/en/index.php?title=Publishflow_Block:_Deploy_view&amp;diff=79819"/>
		<updated>2010-12-28T21:27:07Z</updated>

		<summary type="html">&lt;p&gt;Vf: /* To deploy a course */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Course Publishing block (publishflow)|Back to index]]&lt;br /&gt;
&lt;br /&gt;
This view is available on in a Course Factory mode. It will propose the possibility to publish the course to any of the proposed remote category.&lt;br /&gt;
&lt;br /&gt;
Deploying is possible : &lt;br /&gt;
&lt;br /&gt;
* Only from a Catalog or a combined Factory+Catalog.&lt;br /&gt;
* If MNET is enabled (obvious).&lt;br /&gt;
* If publishing services are setup between the Catalog and a Training node.&lt;br /&gt;
* If the user has a peer User record in the remote Training node (i.e. he must be a known user matching his current identity regarding the MNET operations).&lt;br /&gt;
* If the user has the &#039;block/publishflow:deploy&#039; capability in his current profile resolution and comes from this node (considering his mnethostid).&lt;br /&gt;
* Or if the user has the &#039;block/publishflow:deployeverywhere&#039; capability.&lt;br /&gt;
* If the course to publish has at least one backup in &#039;backupdata&#039;. (Usually, the course backup that was published has been relocated in &#039;backupdata&#039;, so there is no special operation to get one available).&lt;br /&gt;
&lt;br /&gt;
==To deploy a course==&lt;br /&gt;
&lt;br /&gt;
===Deploying to &amp;quot;local&amp;quot;===&lt;br /&gt;
&lt;br /&gt;
You might be proposed to deploy to local, if you have capabilities for. Deploying to local is a siple way to &lt;br /&gt;
duplicate a course in &amp;quot;one click&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
===Deploy in targetted remote category===&lt;br /&gt;
&lt;br /&gt;
[[Image:deploy_in_a_category.jpg]]&lt;br /&gt;
&lt;br /&gt;
* choose one of the targets for deployement&lt;br /&gt;
* choose a remote category to deploy the course&lt;br /&gt;
* Just click the &amp;quot;deploy&amp;quot; link&lt;br /&gt;
&lt;br /&gt;
After the deployement you may be invited to browse back to the original course template, or jump to the deployed instance.&lt;br /&gt;
&lt;br /&gt;
===Deploy in a default preset category===&lt;br /&gt;
&lt;br /&gt;
[[Image:deploy_in_default_cat.jpg]]&lt;br /&gt;
&lt;br /&gt;
This is the same as above excepted that the user cannot choose the destination category. The landing category is present in the remote Moodle by the remote administrator.&lt;br /&gt;
&lt;br /&gt;
You just have to : &lt;br /&gt;
&lt;br /&gt;
* Choose a target in the proposed list (you may not have all locations you may know about in your network, it will depend on capabilities you may have or not have in each).&lt;br /&gt;
* Press the &#039;&#039;Deploy&#039;&#039; button.&lt;br /&gt;
&lt;br /&gt;
===Deploy with a key===&lt;br /&gt;
&lt;br /&gt;
[[Image:deploy_w_key.jpg]]&lt;br /&gt;
&lt;br /&gt;
Here the course author has choosed to initialize a deployement key. You MUST have been given this key&lt;br /&gt;
to be able to deploy.&lt;br /&gt;
&lt;br /&gt;
the &amp;quot;Key for deployment&amp;quot; feature is independant from the &amp;quot;Free category choice&amp;quot; feature. you may combine the first given screen with this feature either.&lt;/div&gt;</summary>
		<author><name>Vf</name></author>
	</entry>
	<entry>
		<id>https://docs.moodle.org/21/en/index.php?title=Publishflow_Block:_Deploy_view&amp;diff=79818</id>
		<title>Publishflow Block: Deploy view</title>
		<link rel="alternate" type="text/html" href="https://docs.moodle.org/21/en/index.php?title=Publishflow_Block:_Deploy_view&amp;diff=79818"/>
		<updated>2010-12-28T21:25:28Z</updated>

		<summary type="html">&lt;p&gt;Vf: /* Deploy with a key */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Course Publishing block (publishflow)|Back to index]]&lt;br /&gt;
&lt;br /&gt;
This view is available on in a Course Factory mode. It will propose the possibility to publish the course to any of the proposed remote category.&lt;br /&gt;
&lt;br /&gt;
Deploying is possible : &lt;br /&gt;
&lt;br /&gt;
* Only from a Catalog or a combined Factory+Catalog.&lt;br /&gt;
* If MNET is enabled (obvious).&lt;br /&gt;
* If publishing services are setup between the Catalog and a Training node.&lt;br /&gt;
* If the user has a peer User record in the remote Training node (i.e. he must be a known user matching his current identity regarding the MNET operations).&lt;br /&gt;
* If the user has the &#039;block/publishflow:deploy&#039; capability in his current profile resolution and comes from this node (considering his mnethostid).&lt;br /&gt;
* Or if the user has the &#039;block/publishflow:deployeverywhere&#039; capability.&lt;br /&gt;
* If the course to publish has at least one backup in &#039;backupdata&#039;. (Usually, the course backup that was published has been relocated in &#039;backupdata&#039;, so there is no special operation to get one available).&lt;br /&gt;
&lt;br /&gt;
==To deploy a course==&lt;br /&gt;
&lt;br /&gt;
===Deploy in targetted remote category===&lt;br /&gt;
&lt;br /&gt;
[[Image:deploy_in_a_category.jpg]]&lt;br /&gt;
&lt;br /&gt;
* choose one of the targets for deployement&lt;br /&gt;
* choose a remote category to deploy the course&lt;br /&gt;
* Just click the &amp;quot;deploy&amp;quot; link&lt;br /&gt;
&lt;br /&gt;
After the deployement you may be invited to browse back to the original course template, or jump to the deployed instance.&lt;br /&gt;
&lt;br /&gt;
===Deploy in a default preset category===&lt;br /&gt;
&lt;br /&gt;
[[Image:deploy_in_default_cat.jpg]]&lt;br /&gt;
&lt;br /&gt;
This is the same as above excepted that the user cannot choose the destination category. The landing category is present in the remote Moodle by the remote administrator.&lt;br /&gt;
&lt;br /&gt;
You just have to : &lt;br /&gt;
&lt;br /&gt;
* Choose a target in the proposed list (you may not have all locations you may know about in your network, it will depend on capabilities you may have or not have in each).&lt;br /&gt;
* Press the &#039;&#039;Deploy&#039;&#039; button.&lt;br /&gt;
&lt;br /&gt;
===Deploy with a key===&lt;br /&gt;
&lt;br /&gt;
[[Image:deploy_w_key.jpg]]&lt;br /&gt;
&lt;br /&gt;
Here the course author has choosed to initialize a deployement key. You MUST have been given this key&lt;br /&gt;
to be able to deploy.&lt;br /&gt;
&lt;br /&gt;
the &amp;quot;Key for deployment&amp;quot; feature is independant from the &amp;quot;Free category choice&amp;quot; feature. you may combine the first given screen with this feature either.&lt;/div&gt;</summary>
		<author><name>Vf</name></author>
	</entry>
	<entry>
		<id>https://docs.moodle.org/21/en/index.php?title=Publishflow_Block:_Deploy_view&amp;diff=79817</id>
		<title>Publishflow Block: Deploy view</title>
		<link rel="alternate" type="text/html" href="https://docs.moodle.org/21/en/index.php?title=Publishflow_Block:_Deploy_view&amp;diff=79817"/>
		<updated>2010-12-28T21:23:41Z</updated>

		<summary type="html">&lt;p&gt;Vf: /* Deploy in a default preset category */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Course Publishing block (publishflow)|Back to index]]&lt;br /&gt;
&lt;br /&gt;
This view is available on in a Course Factory mode. It will propose the possibility to publish the course to any of the proposed remote category.&lt;br /&gt;
&lt;br /&gt;
Deploying is possible : &lt;br /&gt;
&lt;br /&gt;
* Only from a Catalog or a combined Factory+Catalog.&lt;br /&gt;
* If MNET is enabled (obvious).&lt;br /&gt;
* If publishing services are setup between the Catalog and a Training node.&lt;br /&gt;
* If the user has a peer User record in the remote Training node (i.e. he must be a known user matching his current identity regarding the MNET operations).&lt;br /&gt;
* If the user has the &#039;block/publishflow:deploy&#039; capability in his current profile resolution and comes from this node (considering his mnethostid).&lt;br /&gt;
* Or if the user has the &#039;block/publishflow:deployeverywhere&#039; capability.&lt;br /&gt;
* If the course to publish has at least one backup in &#039;backupdata&#039;. (Usually, the course backup that was published has been relocated in &#039;backupdata&#039;, so there is no special operation to get one available).&lt;br /&gt;
&lt;br /&gt;
==To deploy a course==&lt;br /&gt;
&lt;br /&gt;
===Deploy in targetted remote category===&lt;br /&gt;
&lt;br /&gt;
[[Image:deploy_in_a_category.jpg]]&lt;br /&gt;
&lt;br /&gt;
* choose one of the targets for deployement&lt;br /&gt;
* choose a remote category to deploy the course&lt;br /&gt;
* Just click the &amp;quot;deploy&amp;quot; link&lt;br /&gt;
&lt;br /&gt;
After the deployement you may be invited to browse back to the original course template, or jump to the deployed instance.&lt;br /&gt;
&lt;br /&gt;
===Deploy in a default preset category===&lt;br /&gt;
&lt;br /&gt;
[[Image:deploy_in_default_cat.jpg]]&lt;br /&gt;
&lt;br /&gt;
This is the same as above excepted that the user cannot choose the destination category. The landing category is present in the remote Moodle by the remote administrator.&lt;br /&gt;
&lt;br /&gt;
You just have to : &lt;br /&gt;
&lt;br /&gt;
* Choose a target in the proposed list (you may not have all locations you may know about in your network, it will depend on capabilities you may have or not have in each).&lt;br /&gt;
* Press the &#039;&#039;Deploy&#039;&#039; button.&lt;br /&gt;
&lt;br /&gt;
===Deploy with a key===&lt;br /&gt;
&lt;br /&gt;
[[Image:deploy_w_key.jpg]]&lt;/div&gt;</summary>
		<author><name>Vf</name></author>
	</entry>
	<entry>
		<id>https://docs.moodle.org/21/en/index.php?title=File:deploy_w_key.jpg&amp;diff=79816</id>
		<title>File:deploy w key.jpg</title>
		<link rel="alternate" type="text/html" href="https://docs.moodle.org/21/en/index.php?title=File:deploy_w_key.jpg&amp;diff=79816"/>
		<updated>2010-12-28T21:21:39Z</updated>

		<summary type="html">&lt;p&gt;Vf: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;/div&gt;</summary>
		<author><name>Vf</name></author>
	</entry>
	<entry>
		<id>https://docs.moodle.org/21/en/index.php?title=File:deploy_in_default_cat.jpg&amp;diff=79815</id>
		<title>File:deploy in default cat.jpg</title>
		<link rel="alternate" type="text/html" href="https://docs.moodle.org/21/en/index.php?title=File:deploy_in_default_cat.jpg&amp;diff=79815"/>
		<updated>2010-12-28T21:21:20Z</updated>

		<summary type="html">&lt;p&gt;Vf: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;/div&gt;</summary>
		<author><name>Vf</name></author>
	</entry>
	<entry>
		<id>https://docs.moodle.org/21/en/index.php?title=File:deploy_in_a_category.jpg&amp;diff=79814</id>
		<title>File:deploy in a category.jpg</title>
		<link rel="alternate" type="text/html" href="https://docs.moodle.org/21/en/index.php?title=File:deploy_in_a_category.jpg&amp;diff=79814"/>
		<updated>2010-12-28T21:20:56Z</updated>

		<summary type="html">&lt;p&gt;Vf: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;/div&gt;</summary>
		<author><name>Vf</name></author>
	</entry>
	<entry>
		<id>https://docs.moodle.org/21/en/index.php?title=Publishflow_Block:_Deploy_view&amp;diff=79813</id>
		<title>Publishflow Block: Deploy view</title>
		<link rel="alternate" type="text/html" href="https://docs.moodle.org/21/en/index.php?title=Publishflow_Block:_Deploy_view&amp;diff=79813"/>
		<updated>2010-12-28T21:20:36Z</updated>

		<summary type="html">&lt;p&gt;Vf: /* Deploy in targetted remote category */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Course Publishing block (publishflow)|Back to index]]&lt;br /&gt;
&lt;br /&gt;
This view is available on in a Course Factory mode. It will propose the possibility to publish the course to any of the proposed remote category.&lt;br /&gt;
&lt;br /&gt;
Deploying is possible : &lt;br /&gt;
&lt;br /&gt;
* Only from a Catalog or a combined Factory+Catalog.&lt;br /&gt;
* If MNET is enabled (obvious).&lt;br /&gt;
* If publishing services are setup between the Catalog and a Training node.&lt;br /&gt;
* If the user has a peer User record in the remote Training node (i.e. he must be a known user matching his current identity regarding the MNET operations).&lt;br /&gt;
* If the user has the &#039;block/publishflow:deploy&#039; capability in his current profile resolution and comes from this node (considering his mnethostid).&lt;br /&gt;
* Or if the user has the &#039;block/publishflow:deployeverywhere&#039; capability.&lt;br /&gt;
* If the course to publish has at least one backup in &#039;backupdata&#039;. (Usually, the course backup that was published has been relocated in &#039;backupdata&#039;, so there is no special operation to get one available).&lt;br /&gt;
&lt;br /&gt;
==To deploy a course==&lt;br /&gt;
&lt;br /&gt;
===Deploy in targetted remote category===&lt;br /&gt;
&lt;br /&gt;
[[Image:deploy_in_a_category.jpg]]&lt;br /&gt;
&lt;br /&gt;
* choose one of the targets for deployement&lt;br /&gt;
* choose a remote category to deploy the course&lt;br /&gt;
* Just click the &amp;quot;deploy&amp;quot; link&lt;br /&gt;
&lt;br /&gt;
After the deployement you may be invited to browse back to the original course template, or jump to the deployed instance.&lt;br /&gt;
&lt;br /&gt;
===Deploy in a default preset category===&lt;br /&gt;
&lt;br /&gt;
[[Image:deploy_in_default_cat.jpg]]&lt;br /&gt;
&lt;br /&gt;
===Deploy with a key===&lt;br /&gt;
&lt;br /&gt;
[[Image:deploy_w_key.jpg]]&lt;/div&gt;</summary>
		<author><name>Vf</name></author>
	</entry>
	<entry>
		<id>https://docs.moodle.org/21/en/index.php?title=Publishflow_Block:_Deploy_view&amp;diff=79812</id>
		<title>Publishflow Block: Deploy view</title>
		<link rel="alternate" type="text/html" href="https://docs.moodle.org/21/en/index.php?title=Publishflow_Block:_Deploy_view&amp;diff=79812"/>
		<updated>2010-12-28T21:20:16Z</updated>

		<summary type="html">&lt;p&gt;Vf: /* Deploy with a key */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Course Publishing block (publishflow)|Back to index]]&lt;br /&gt;
&lt;br /&gt;
This view is available on in a Course Factory mode. It will propose the possibility to publish the course to any of the proposed remote category.&lt;br /&gt;
&lt;br /&gt;
Deploying is possible : &lt;br /&gt;
&lt;br /&gt;
* Only from a Catalog or a combined Factory+Catalog.&lt;br /&gt;
* If MNET is enabled (obvious).&lt;br /&gt;
* If publishing services are setup between the Catalog and a Training node.&lt;br /&gt;
* If the user has a peer User record in the remote Training node (i.e. he must be a known user matching his current identity regarding the MNET operations).&lt;br /&gt;
* If the user has the &#039;block/publishflow:deploy&#039; capability in his current profile resolution and comes from this node (considering his mnethostid).&lt;br /&gt;
* Or if the user has the &#039;block/publishflow:deployeverywhere&#039; capability.&lt;br /&gt;
* If the course to publish has at least one backup in &#039;backupdata&#039;. (Usually, the course backup that was published has been relocated in &#039;backupdata&#039;, so there is no special operation to get one available).&lt;br /&gt;
&lt;br /&gt;
==To deploy a course==&lt;br /&gt;
&lt;br /&gt;
===Deploy in targetted remote category===&lt;br /&gt;
&lt;br /&gt;
[[Image:deploy_in_a_category.jpd]]&lt;br /&gt;
&lt;br /&gt;
* choose one of the targets for deployement&lt;br /&gt;
* choose a remote category to deploy the course&lt;br /&gt;
* Just click the &amp;quot;deploy&amp;quot; link&lt;br /&gt;
&lt;br /&gt;
After the deployement you may be invited to browse back to the original course template, or jump to the deployed instance.&lt;br /&gt;
&lt;br /&gt;
===Deploy in a default preset category===&lt;br /&gt;
&lt;br /&gt;
[[Image:deploy_in_default_cat.jpg]]&lt;br /&gt;
&lt;br /&gt;
===Deploy with a key===&lt;br /&gt;
&lt;br /&gt;
[[Image:deploy_w_key.jpg]]&lt;/div&gt;</summary>
		<author><name>Vf</name></author>
	</entry>
	<entry>
		<id>https://docs.moodle.org/21/en/index.php?title=Publishflow_Block:_Deploy_view&amp;diff=79811</id>
		<title>Publishflow Block: Deploy view</title>
		<link rel="alternate" type="text/html" href="https://docs.moodle.org/21/en/index.php?title=Publishflow_Block:_Deploy_view&amp;diff=79811"/>
		<updated>2010-12-28T21:20:01Z</updated>

		<summary type="html">&lt;p&gt;Vf: /* Deploy in a default preset category */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Course Publishing block (publishflow)|Back to index]]&lt;br /&gt;
&lt;br /&gt;
This view is available on in a Course Factory mode. It will propose the possibility to publish the course to any of the proposed remote category.&lt;br /&gt;
&lt;br /&gt;
Deploying is possible : &lt;br /&gt;
&lt;br /&gt;
* Only from a Catalog or a combined Factory+Catalog.&lt;br /&gt;
* If MNET is enabled (obvious).&lt;br /&gt;
* If publishing services are setup between the Catalog and a Training node.&lt;br /&gt;
* If the user has a peer User record in the remote Training node (i.e. he must be a known user matching his current identity regarding the MNET operations).&lt;br /&gt;
* If the user has the &#039;block/publishflow:deploy&#039; capability in his current profile resolution and comes from this node (considering his mnethostid).&lt;br /&gt;
* Or if the user has the &#039;block/publishflow:deployeverywhere&#039; capability.&lt;br /&gt;
* If the course to publish has at least one backup in &#039;backupdata&#039;. (Usually, the course backup that was published has been relocated in &#039;backupdata&#039;, so there is no special operation to get one available).&lt;br /&gt;
&lt;br /&gt;
==To deploy a course==&lt;br /&gt;
&lt;br /&gt;
===Deploy in targetted remote category===&lt;br /&gt;
&lt;br /&gt;
[[Image:deploy_in_a_category.jpd]]&lt;br /&gt;
&lt;br /&gt;
* choose one of the targets for deployement&lt;br /&gt;
* choose a remote category to deploy the course&lt;br /&gt;
* Just click the &amp;quot;deploy&amp;quot; link&lt;br /&gt;
&lt;br /&gt;
After the deployement you may be invited to browse back to the original course template, or jump to the deployed instance.&lt;br /&gt;
&lt;br /&gt;
===Deploy in a default preset category===&lt;br /&gt;
&lt;br /&gt;
[[Image:deploy_in_default_cat.jpg]]&lt;br /&gt;
&lt;br /&gt;
===Deploy with a key===&lt;br /&gt;
&lt;br /&gt;
[image:deploy_w_key.jpg]&lt;/div&gt;</summary>
		<author><name>Vf</name></author>
	</entry>
	<entry>
		<id>https://docs.moodle.org/21/en/index.php?title=Publishflow_Block:_Deploy_view&amp;diff=79810</id>
		<title>Publishflow Block: Deploy view</title>
		<link rel="alternate" type="text/html" href="https://docs.moodle.org/21/en/index.php?title=Publishflow_Block:_Deploy_view&amp;diff=79810"/>
		<updated>2010-12-28T21:19:42Z</updated>

		<summary type="html">&lt;p&gt;Vf: /* Deploy in targetted remote category */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Course Publishing block (publishflow)|Back to index]]&lt;br /&gt;
&lt;br /&gt;
This view is available on in a Course Factory mode. It will propose the possibility to publish the course to any of the proposed remote category.&lt;br /&gt;
&lt;br /&gt;
Deploying is possible : &lt;br /&gt;
&lt;br /&gt;
* Only from a Catalog or a combined Factory+Catalog.&lt;br /&gt;
* If MNET is enabled (obvious).&lt;br /&gt;
* If publishing services are setup between the Catalog and a Training node.&lt;br /&gt;
* If the user has a peer User record in the remote Training node (i.e. he must be a known user matching his current identity regarding the MNET operations).&lt;br /&gt;
* If the user has the &#039;block/publishflow:deploy&#039; capability in his current profile resolution and comes from this node (considering his mnethostid).&lt;br /&gt;
* Or if the user has the &#039;block/publishflow:deployeverywhere&#039; capability.&lt;br /&gt;
* If the course to publish has at least one backup in &#039;backupdata&#039;. (Usually, the course backup that was published has been relocated in &#039;backupdata&#039;, so there is no special operation to get one available).&lt;br /&gt;
&lt;br /&gt;
==To deploy a course==&lt;br /&gt;
&lt;br /&gt;
===Deploy in targetted remote category===&lt;br /&gt;
&lt;br /&gt;
[[Image:deploy_in_a_category.jpd]]&lt;br /&gt;
&lt;br /&gt;
* choose one of the targets for deployement&lt;br /&gt;
* choose a remote category to deploy the course&lt;br /&gt;
* Just click the &amp;quot;deploy&amp;quot; link&lt;br /&gt;
&lt;br /&gt;
After the deployement you may be invited to browse back to the original course template, or jump to the deployed instance.&lt;br /&gt;
&lt;br /&gt;
===Deploy in a default preset category===&lt;br /&gt;
&lt;br /&gt;
[image:deploy_in_default_cat.jpg]&lt;br /&gt;
&lt;br /&gt;
===Deploy with a key===&lt;br /&gt;
&lt;br /&gt;
[image:deploy_w_key.jpg]&lt;/div&gt;</summary>
		<author><name>Vf</name></author>
	</entry>
	<entry>
		<id>https://docs.moodle.org/21/en/index.php?title=Publishflow_Block:_Deploy_view&amp;diff=79809</id>
		<title>Publishflow Block: Deploy view</title>
		<link rel="alternate" type="text/html" href="https://docs.moodle.org/21/en/index.php?title=Publishflow_Block:_Deploy_view&amp;diff=79809"/>
		<updated>2010-12-28T21:18:46Z</updated>

		<summary type="html">&lt;p&gt;Vf: /* To deploy a course */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Course Publishing block (publishflow)|Back to index]]&lt;br /&gt;
&lt;br /&gt;
This view is available on in a Course Factory mode. It will propose the possibility to publish the course to any of the proposed remote category.&lt;br /&gt;
&lt;br /&gt;
Deploying is possible : &lt;br /&gt;
&lt;br /&gt;
* Only from a Catalog or a combined Factory+Catalog.&lt;br /&gt;
* If MNET is enabled (obvious).&lt;br /&gt;
* If publishing services are setup between the Catalog and a Training node.&lt;br /&gt;
* If the user has a peer User record in the remote Training node (i.e. he must be a known user matching his current identity regarding the MNET operations).&lt;br /&gt;
* If the user has the &#039;block/publishflow:deploy&#039; capability in his current profile resolution and comes from this node (considering his mnethostid).&lt;br /&gt;
* Or if the user has the &#039;block/publishflow:deployeverywhere&#039; capability.&lt;br /&gt;
* If the course to publish has at least one backup in &#039;backupdata&#039;. (Usually, the course backup that was published has been relocated in &#039;backupdata&#039;, so there is no special operation to get one available).&lt;br /&gt;
&lt;br /&gt;
==To deploy a course==&lt;br /&gt;
&lt;br /&gt;
===Deploy in targetted remote category===&lt;br /&gt;
&lt;br /&gt;
[image:deploy_in_a_category.jpd]&lt;br /&gt;
&lt;br /&gt;
* choose one of the targets for deployement&lt;br /&gt;
* choose a remote category to deploy the course&lt;br /&gt;
* Just click the &amp;quot;deploy&amp;quot; link&lt;br /&gt;
&lt;br /&gt;
After the deployement you may be invited to browse back to the original course template, or jump to the deployed instance.&lt;br /&gt;
&lt;br /&gt;
===Deploy in a default preset category===&lt;br /&gt;
&lt;br /&gt;
[image:deploy_in_default_cat.jpg]&lt;br /&gt;
&lt;br /&gt;
===Deploy with a key===&lt;br /&gt;
&lt;br /&gt;
[image:deploy_w_key.jpg]&lt;/div&gt;</summary>
		<author><name>Vf</name></author>
	</entry>
	<entry>
		<id>https://docs.moodle.org/21/en/index.php?title=Publishflow_Block_:_Global_Settings&amp;diff=79808</id>
		<title>Publishflow Block : Global Settings</title>
		<link rel="alternate" type="text/html" href="https://docs.moodle.org/21/en/index.php?title=Publishflow_Block_:_Global_Settings&amp;diff=79808"/>
		<updated>2010-12-28T21:06:25Z</updated>

		<summary type="html">&lt;p&gt;Vf: /* Default Category for deployment */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Course Publishing block (publishflow)|Back to index]]&lt;br /&gt;
&lt;br /&gt;
=== Moodle Node Type ===&lt;br /&gt;
&lt;br /&gt;
Chooses the publishing node type that this Moodle will adopt.&lt;br /&gt;
&lt;br /&gt;
====Options:====&lt;br /&gt;
&lt;br /&gt;
* Standard: This Moodle acts as a Standard Moodle and will not be recorgnised as part of the publishing subnetwork. &lt;br /&gt;
* Moodle Factory&lt;br /&gt;
* Catalog &lt;br /&gt;
* Combined Type (factory + catalog)&lt;br /&gt;
* Learning Area&lt;br /&gt;
&lt;br /&gt;
  Scope: All&lt;br /&gt;
  Default: Standard&lt;br /&gt;
&lt;br /&gt;
===Enable retrofeed of courses===&lt;br /&gt;
&lt;br /&gt;
Enables or disables the possibility to retrofit a course to a Course Factory in a Traning Center. This is a global switch that will entirely disable this feature even if your role has the capability of performing the action.&lt;br /&gt;
&lt;br /&gt;
  Scope: Training Center&lt;br /&gt;
  Default: Yes&lt;br /&gt;
&lt;br /&gt;
===Local Data Storage===&lt;br /&gt;
&lt;br /&gt;
Files won&#039;t be distributed by network transfers but through the local file system. This option only works for moodles sharing the same storage area.&lt;br /&gt;
&lt;br /&gt;
  Scope: Both sides of a course transfer must use the same storage protocol.&lt;br /&gt;
  Default: No&lt;br /&gt;
&lt;br /&gt;
===Allow Public Sessions===&lt;br /&gt;
&lt;br /&gt;
This parameter sets some accessibility option to the optional block Active Sessions that shows how many copies in activity exist in Training Nodes for a Catalog entry.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;STATUS: This block is not yet published and needs some rework and optimisation.&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
====Options:====&lt;br /&gt;
*Private sessions&lt;br /&gt;
*Public sessions. User identity checked.&lt;br /&gt;
*Public sessions. User unchecked.&lt;br /&gt;
&lt;br /&gt;
  Scope: Training Center, effect in Course Catalog&lt;br /&gt;
  Default: Private sessions.&lt;br /&gt;
&lt;br /&gt;
===Receiving Course===&lt;br /&gt;
&lt;br /&gt;
Course for receiving course archive downloads. When tranfering a course archive, the publishing network needs to identify a physical location where to store the published archive. You may decide in which course file cabinet the archive will be stored.&lt;br /&gt;
&lt;br /&gt;
On a Training Center platform, the deployed courses from a Catalog will be stored here. On a Course Catalog platform, published course archives will be stored there. On a Course Factory, retrofitted archives will be stored there.&lt;br /&gt;
&lt;br /&gt;
Advice: You should not allow this course to be widely visible to users.&lt;br /&gt;
&lt;br /&gt;
  Scope : Training Center, Course Catalog, Course Factory&lt;br /&gt;
&lt;br /&gt;
===Default Category for deployment===&lt;br /&gt;
&lt;br /&gt;
On a Training Center, deployed courses will not be yet given to use for users. The course needs to be opened after having being deployed. This prevents unpreprared settings to be accessible to users after deployment. You may designate a category in your target platform to which incoming courses are attached. It will also be used on Course Factory to determine in which category a retrofitted course should land. &lt;br /&gt;
&lt;br /&gt;
  Scope : Training Center, Course Factory&lt;br /&gt;
&lt;br /&gt;
===Active Category===&lt;br /&gt;
&lt;br /&gt;
Using the Publishflow built in Course Life Cycle control, you may open a course once properly setup. This setting allows you to define a catagory to move the course in when it is open.&lt;br /&gt;
&lt;br /&gt;
  Scope : Training Center&lt;br /&gt;
&lt;br /&gt;
===Closing Category===&lt;br /&gt;
&lt;br /&gt;
Category for archived course sessions. When using the Publishflow built in Course Life Cycle controls and closing a course session, the course might be moved to a special archive category you can define here.&lt;br /&gt;
&lt;br /&gt;
===Main host prefix===&lt;br /&gt;
&lt;br /&gt;
Prefix of the Course Catalog platform. This is used by the Publishflow to recognize a Course Catalog within the Moodle network. This setting can be ignored if a network scan has been performed and a Course Catalog has been identified in the network.&lt;br /&gt;
&lt;br /&gt;
  Scope: Course Factory&lt;br /&gt;
  Default: Empty&lt;br /&gt;
&lt;br /&gt;
===Factory prefix===&lt;br /&gt;
&lt;br /&gt;
Prefix pattern for finding course factory platforms in the Moodle network. This setting can be ignored if a network scan has been performed and a Course Factory has been identified in the network.&lt;br /&gt;
&lt;br /&gt;
  Scope: Training Center&lt;br /&gt;
  Default: Empty&lt;br /&gt;
&lt;br /&gt;
===Default role in incoming courses===&lt;br /&gt;
&lt;br /&gt;
This is the role that will be assigned to the user who initiates the course material transportation in the&lt;br /&gt;
newly created course instance. This role is setup for incoming courses, that is, courses that are deployed in&lt;br /&gt;
the current node. It will NOT affect the role you may be assigned to in remote platforms where you deploy&lt;br /&gt;
from here.&lt;br /&gt;
&lt;br /&gt;
  Scope: All nodes&lt;br /&gt;
  Default: No assignation&lt;/div&gt;</summary>
		<author><name>Vf</name></author>
	</entry>
	<entry>
		<id>https://docs.moodle.org/21/en/index.php?title=Publishflow_Block_:_Global_Settings&amp;diff=79807</id>
		<title>Publishflow Block : Global Settings</title>
		<link rel="alternate" type="text/html" href="https://docs.moodle.org/21/en/index.php?title=Publishflow_Block_:_Global_Settings&amp;diff=79807"/>
		<updated>2010-12-28T21:04:48Z</updated>

		<summary type="html">&lt;p&gt;Vf: /* Factory prefix */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Course Publishing block (publishflow)|Back to index]]&lt;br /&gt;
&lt;br /&gt;
=== Moodle Node Type ===&lt;br /&gt;
&lt;br /&gt;
Chooses the publishing node type that this Moodle will adopt.&lt;br /&gt;
&lt;br /&gt;
====Options:====&lt;br /&gt;
&lt;br /&gt;
* Standard: This Moodle acts as a Standard Moodle and will not be recorgnised as part of the publishing subnetwork. &lt;br /&gt;
* Moodle Factory&lt;br /&gt;
* Catalog &lt;br /&gt;
* Combined Type (factory + catalog)&lt;br /&gt;
* Learning Area&lt;br /&gt;
&lt;br /&gt;
  Scope: All&lt;br /&gt;
  Default: Standard&lt;br /&gt;
&lt;br /&gt;
===Enable retrofeed of courses===&lt;br /&gt;
&lt;br /&gt;
Enables or disables the possibility to retrofit a course to a Course Factory in a Traning Center. This is a global switch that will entirely disable this feature even if your role has the capability of performing the action.&lt;br /&gt;
&lt;br /&gt;
  Scope: Training Center&lt;br /&gt;
  Default: Yes&lt;br /&gt;
&lt;br /&gt;
===Local Data Storage===&lt;br /&gt;
&lt;br /&gt;
Files won&#039;t be distributed by network transfers but through the local file system. This option only works for moodles sharing the same storage area.&lt;br /&gt;
&lt;br /&gt;
  Scope: Both sides of a course transfer must use the same storage protocol.&lt;br /&gt;
  Default: No&lt;br /&gt;
&lt;br /&gt;
===Allow Public Sessions===&lt;br /&gt;
&lt;br /&gt;
This parameter sets some accessibility option to the optional block Active Sessions that shows how many copies in activity exist in Training Nodes for a Catalog entry.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;STATUS: This block is not yet published and needs some rework and optimisation.&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
====Options:====&lt;br /&gt;
*Private sessions&lt;br /&gt;
*Public sessions. User identity checked.&lt;br /&gt;
*Public sessions. User unchecked.&lt;br /&gt;
&lt;br /&gt;
  Scope: Training Center, effect in Course Catalog&lt;br /&gt;
  Default: Private sessions.&lt;br /&gt;
&lt;br /&gt;
===Receiving Course===&lt;br /&gt;
&lt;br /&gt;
Course for receiving course archive downloads. When tranfering a course archive, the publishing network needs to identify a physical location where to store the published archive. You may decide in which course file cabinet the archive will be stored.&lt;br /&gt;
&lt;br /&gt;
On a Training Center platform, the deployed courses from a Catalog will be stored here. On a Course Catalog platform, published course archives will be stored there. On a Course Factory, retrofitted archives will be stored there.&lt;br /&gt;
&lt;br /&gt;
Advice: You should not allow this course to be widely visible to users.&lt;br /&gt;
&lt;br /&gt;
  Scope : Training Center, Course Catalog, Course Factory&lt;br /&gt;
&lt;br /&gt;
===Default Category for deployment===&lt;br /&gt;
&lt;br /&gt;
On a Training Center, deployed courses will not be yet given to use for users. The course needs to be opened after having being deployed. This prevents unpreprared settings to be accessible to users after deployment. You may designate a category in your target platform to which incoming courses are attached.&lt;br /&gt;
&lt;br /&gt;
  Scope : Training Center&lt;br /&gt;
&lt;br /&gt;
===Active Category===&lt;br /&gt;
&lt;br /&gt;
Using the Publishflow built in Course Life Cycle control, you may open a course once properly setup. This setting allows you to define a catagory to move the course in when it is open.&lt;br /&gt;
&lt;br /&gt;
  Scope : Training Center&lt;br /&gt;
&lt;br /&gt;
===Closing Category===&lt;br /&gt;
&lt;br /&gt;
Category for archived course sessions. When using the Publishflow built in Course Life Cycle controls and closing a course session, the course might be moved to a special archive category you can define here.&lt;br /&gt;
&lt;br /&gt;
===Main host prefix===&lt;br /&gt;
&lt;br /&gt;
Prefix of the Course Catalog platform. This is used by the Publishflow to recognize a Course Catalog within the Moodle network. This setting can be ignored if a network scan has been performed and a Course Catalog has been identified in the network.&lt;br /&gt;
&lt;br /&gt;
  Scope: Course Factory&lt;br /&gt;
  Default: Empty&lt;br /&gt;
&lt;br /&gt;
===Factory prefix===&lt;br /&gt;
&lt;br /&gt;
Prefix pattern for finding course factory platforms in the Moodle network. This setting can be ignored if a network scan has been performed and a Course Factory has been identified in the network.&lt;br /&gt;
&lt;br /&gt;
  Scope: Training Center&lt;br /&gt;
  Default: Empty&lt;br /&gt;
&lt;br /&gt;
===Default role in incoming courses===&lt;br /&gt;
&lt;br /&gt;
This is the role that will be assigned to the user who initiates the course material transportation in the&lt;br /&gt;
newly created course instance. This role is setup for incoming courses, that is, courses that are deployed in&lt;br /&gt;
the current node. It will NOT affect the role you may be assigned to in remote platforms where you deploy&lt;br /&gt;
from here.&lt;br /&gt;
&lt;br /&gt;
  Scope: All nodes&lt;br /&gt;
  Default: No assignation&lt;/div&gt;</summary>
		<author><name>Vf</name></author>
	</entry>
	<entry>
		<id>https://docs.moodle.org/21/en/index.php?title=Publishflow_Block_:_Global_Settings&amp;diff=79806</id>
		<title>Publishflow Block : Global Settings</title>
		<link rel="alternate" type="text/html" href="https://docs.moodle.org/21/en/index.php?title=Publishflow_Block_:_Global_Settings&amp;diff=79806"/>
		<updated>2010-12-28T21:04:20Z</updated>

		<summary type="html">&lt;p&gt;Vf: /* Main host prefix */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Course Publishing block (publishflow)|Back to index]]&lt;br /&gt;
&lt;br /&gt;
=== Moodle Node Type ===&lt;br /&gt;
&lt;br /&gt;
Chooses the publishing node type that this Moodle will adopt.&lt;br /&gt;
&lt;br /&gt;
====Options:====&lt;br /&gt;
&lt;br /&gt;
* Standard: This Moodle acts as a Standard Moodle and will not be recorgnised as part of the publishing subnetwork. &lt;br /&gt;
* Moodle Factory&lt;br /&gt;
* Catalog &lt;br /&gt;
* Combined Type (factory + catalog)&lt;br /&gt;
* Learning Area&lt;br /&gt;
&lt;br /&gt;
  Scope: All&lt;br /&gt;
  Default: Standard&lt;br /&gt;
&lt;br /&gt;
===Enable retrofeed of courses===&lt;br /&gt;
&lt;br /&gt;
Enables or disables the possibility to retrofit a course to a Course Factory in a Traning Center. This is a global switch that will entirely disable this feature even if your role has the capability of performing the action.&lt;br /&gt;
&lt;br /&gt;
  Scope: Training Center&lt;br /&gt;
  Default: Yes&lt;br /&gt;
&lt;br /&gt;
===Local Data Storage===&lt;br /&gt;
&lt;br /&gt;
Files won&#039;t be distributed by network transfers but through the local file system. This option only works for moodles sharing the same storage area.&lt;br /&gt;
&lt;br /&gt;
  Scope: Both sides of a course transfer must use the same storage protocol.&lt;br /&gt;
  Default: No&lt;br /&gt;
&lt;br /&gt;
===Allow Public Sessions===&lt;br /&gt;
&lt;br /&gt;
This parameter sets some accessibility option to the optional block Active Sessions that shows how many copies in activity exist in Training Nodes for a Catalog entry.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;STATUS: This block is not yet published and needs some rework and optimisation.&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
====Options:====&lt;br /&gt;
*Private sessions&lt;br /&gt;
*Public sessions. User identity checked.&lt;br /&gt;
*Public sessions. User unchecked.&lt;br /&gt;
&lt;br /&gt;
  Scope: Training Center, effect in Course Catalog&lt;br /&gt;
  Default: Private sessions.&lt;br /&gt;
&lt;br /&gt;
===Receiving Course===&lt;br /&gt;
&lt;br /&gt;
Course for receiving course archive downloads. When tranfering a course archive, the publishing network needs to identify a physical location where to store the published archive. You may decide in which course file cabinet the archive will be stored.&lt;br /&gt;
&lt;br /&gt;
On a Training Center platform, the deployed courses from a Catalog will be stored here. On a Course Catalog platform, published course archives will be stored there. On a Course Factory, retrofitted archives will be stored there.&lt;br /&gt;
&lt;br /&gt;
Advice: You should not allow this course to be widely visible to users.&lt;br /&gt;
&lt;br /&gt;
  Scope : Training Center, Course Catalog, Course Factory&lt;br /&gt;
&lt;br /&gt;
===Default Category for deployment===&lt;br /&gt;
&lt;br /&gt;
On a Training Center, deployed courses will not be yet given to use for users. The course needs to be opened after having being deployed. This prevents unpreprared settings to be accessible to users after deployment. You may designate a category in your target platform to which incoming courses are attached.&lt;br /&gt;
&lt;br /&gt;
  Scope : Training Center&lt;br /&gt;
&lt;br /&gt;
===Active Category===&lt;br /&gt;
&lt;br /&gt;
Using the Publishflow built in Course Life Cycle control, you may open a course once properly setup. This setting allows you to define a catagory to move the course in when it is open.&lt;br /&gt;
&lt;br /&gt;
  Scope : Training Center&lt;br /&gt;
&lt;br /&gt;
===Closing Category===&lt;br /&gt;
&lt;br /&gt;
Category for archived course sessions. When using the Publishflow built in Course Life Cycle controls and closing a course session, the course might be moved to a special archive category you can define here.&lt;br /&gt;
&lt;br /&gt;
===Main host prefix===&lt;br /&gt;
&lt;br /&gt;
Prefix of the Course Catalog platform. This is used by the Publishflow to recognize a Course Catalog within the Moodle network. This setting can be ignored if a network scan has been performed and a Course Catalog has been identified in the network.&lt;br /&gt;
&lt;br /&gt;
  Scope: Course Factory&lt;br /&gt;
  Default: Empty&lt;br /&gt;
&lt;br /&gt;
===Factory prefix===&lt;br /&gt;
&lt;br /&gt;
Prefix pattern for finding course factory platforms in the Moodle network. This setting can be ignored.&lt;br /&gt;
&lt;br /&gt;
  Scope: Training Center&lt;br /&gt;
  Default: Empty&lt;br /&gt;
&lt;br /&gt;
===Default role in incoming courses===&lt;br /&gt;
&lt;br /&gt;
This is the role that will be assigned to the user who initiates the course material transportation in the&lt;br /&gt;
newly created course instance. This role is setup for incoming courses, that is, courses that are deployed in&lt;br /&gt;
the current node. It will NOT affect the role you may be assigned to in remote platforms where you deploy&lt;br /&gt;
from here.&lt;br /&gt;
&lt;br /&gt;
  Scope: All nodes&lt;br /&gt;
  Default: No assignation&lt;/div&gt;</summary>
		<author><name>Vf</name></author>
	</entry>
	<entry>
		<id>https://docs.moodle.org/21/en/index.php?title=Publishflow_Block_:_Global_Settings&amp;diff=79805</id>
		<title>Publishflow Block : Global Settings</title>
		<link rel="alternate" type="text/html" href="https://docs.moodle.org/21/en/index.php?title=Publishflow_Block_:_Global_Settings&amp;diff=79805"/>
		<updated>2010-12-28T21:03:54Z</updated>

		<summary type="html">&lt;p&gt;Vf: /* Factory prefix */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Course Publishing block (publishflow)|Back to index]]&lt;br /&gt;
&lt;br /&gt;
=== Moodle Node Type ===&lt;br /&gt;
&lt;br /&gt;
Chooses the publishing node type that this Moodle will adopt.&lt;br /&gt;
&lt;br /&gt;
====Options:====&lt;br /&gt;
&lt;br /&gt;
* Standard: This Moodle acts as a Standard Moodle and will not be recorgnised as part of the publishing subnetwork. &lt;br /&gt;
* Moodle Factory&lt;br /&gt;
* Catalog &lt;br /&gt;
* Combined Type (factory + catalog)&lt;br /&gt;
* Learning Area&lt;br /&gt;
&lt;br /&gt;
  Scope: All&lt;br /&gt;
  Default: Standard&lt;br /&gt;
&lt;br /&gt;
===Enable retrofeed of courses===&lt;br /&gt;
&lt;br /&gt;
Enables or disables the possibility to retrofit a course to a Course Factory in a Traning Center. This is a global switch that will entirely disable this feature even if your role has the capability of performing the action.&lt;br /&gt;
&lt;br /&gt;
  Scope: Training Center&lt;br /&gt;
  Default: Yes&lt;br /&gt;
&lt;br /&gt;
===Local Data Storage===&lt;br /&gt;
&lt;br /&gt;
Files won&#039;t be distributed by network transfers but through the local file system. This option only works for moodles sharing the same storage area.&lt;br /&gt;
&lt;br /&gt;
  Scope: Both sides of a course transfer must use the same storage protocol.&lt;br /&gt;
  Default: No&lt;br /&gt;
&lt;br /&gt;
===Allow Public Sessions===&lt;br /&gt;
&lt;br /&gt;
This parameter sets some accessibility option to the optional block Active Sessions that shows how many copies in activity exist in Training Nodes for a Catalog entry.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;STATUS: This block is not yet published and needs some rework and optimisation.&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
====Options:====&lt;br /&gt;
*Private sessions&lt;br /&gt;
*Public sessions. User identity checked.&lt;br /&gt;
*Public sessions. User unchecked.&lt;br /&gt;
&lt;br /&gt;
  Scope: Training Center, effect in Course Catalog&lt;br /&gt;
  Default: Private sessions.&lt;br /&gt;
&lt;br /&gt;
===Receiving Course===&lt;br /&gt;
&lt;br /&gt;
Course for receiving course archive downloads. When tranfering a course archive, the publishing network needs to identify a physical location where to store the published archive. You may decide in which course file cabinet the archive will be stored.&lt;br /&gt;
&lt;br /&gt;
On a Training Center platform, the deployed courses from a Catalog will be stored here. On a Course Catalog platform, published course archives will be stored there. On a Course Factory, retrofitted archives will be stored there.&lt;br /&gt;
&lt;br /&gt;
Advice: You should not allow this course to be widely visible to users.&lt;br /&gt;
&lt;br /&gt;
  Scope : Training Center, Course Catalog, Course Factory&lt;br /&gt;
&lt;br /&gt;
===Default Category for deployment===&lt;br /&gt;
&lt;br /&gt;
On a Training Center, deployed courses will not be yet given to use for users. The course needs to be opened after having being deployed. This prevents unpreprared settings to be accessible to users after deployment. You may designate a category in your target platform to which incoming courses are attached.&lt;br /&gt;
&lt;br /&gt;
  Scope : Training Center&lt;br /&gt;
&lt;br /&gt;
===Active Category===&lt;br /&gt;
&lt;br /&gt;
Using the Publishflow built in Course Life Cycle control, you may open a course once properly setup. This setting allows you to define a catagory to move the course in when it is open.&lt;br /&gt;
&lt;br /&gt;
  Scope : Training Center&lt;br /&gt;
&lt;br /&gt;
===Closing Category===&lt;br /&gt;
&lt;br /&gt;
Category for archived course sessions. When using the Publishflow built in Course Life Cycle controls and closing a course session, the course might be moved to a special archive category you can define here.&lt;br /&gt;
&lt;br /&gt;
===Main host prefix===&lt;br /&gt;
&lt;br /&gt;
Prefix of the Course Catalog platform. This is used by the Publishflow to recognize a Course Catalog within the Moodle network. this setting can be ignored if a network scanning has been performed and a Course Catalog has been identified in the network.&lt;br /&gt;
&lt;br /&gt;
  Scope: Course Factory&lt;br /&gt;
  Default: Empty&lt;br /&gt;
&lt;br /&gt;
===Factory prefix===&lt;br /&gt;
&lt;br /&gt;
Prefix pattern for finding course factory platforms in the Moodle network. This setting can be ignored.&lt;br /&gt;
&lt;br /&gt;
  Scope: Training Center&lt;br /&gt;
  Default: Empty&lt;br /&gt;
&lt;br /&gt;
===Default role in incoming courses===&lt;br /&gt;
&lt;br /&gt;
This is the role that will be assigned to the user who initiates the course material transportation in the&lt;br /&gt;
newly created course instance. This role is setup for incoming courses, that is, courses that are deployed in&lt;br /&gt;
the current node. It will NOT affect the role you may be assigned to in remote platforms where you deploy&lt;br /&gt;
from here.&lt;br /&gt;
&lt;br /&gt;
  Scope: All nodes&lt;br /&gt;
  Default: No assignation&lt;/div&gt;</summary>
		<author><name>Vf</name></author>
	</entry>
	<entry>
		<id>https://docs.moodle.org/21/en/index.php?title=Publishflow_Block_:_Global_Settings&amp;diff=79804</id>
		<title>Publishflow Block : Global Settings</title>
		<link rel="alternate" type="text/html" href="https://docs.moodle.org/21/en/index.php?title=Publishflow_Block_:_Global_Settings&amp;diff=79804"/>
		<updated>2010-12-28T21:01:18Z</updated>

		<summary type="html">&lt;p&gt;Vf: /* Main host prefix */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Course Publishing block (publishflow)|Back to index]]&lt;br /&gt;
&lt;br /&gt;
=== Moodle Node Type ===&lt;br /&gt;
&lt;br /&gt;
Chooses the publishing node type that this Moodle will adopt.&lt;br /&gt;
&lt;br /&gt;
====Options:====&lt;br /&gt;
&lt;br /&gt;
* Standard: This Moodle acts as a Standard Moodle and will not be recorgnised as part of the publishing subnetwork. &lt;br /&gt;
* Moodle Factory&lt;br /&gt;
* Catalog &lt;br /&gt;
* Combined Type (factory + catalog)&lt;br /&gt;
* Learning Area&lt;br /&gt;
&lt;br /&gt;
  Scope: All&lt;br /&gt;
  Default: Standard&lt;br /&gt;
&lt;br /&gt;
===Enable retrofeed of courses===&lt;br /&gt;
&lt;br /&gt;
Enables or disables the possibility to retrofit a course to a Course Factory in a Traning Center. This is a global switch that will entirely disable this feature even if your role has the capability of performing the action.&lt;br /&gt;
&lt;br /&gt;
  Scope: Training Center&lt;br /&gt;
  Default: Yes&lt;br /&gt;
&lt;br /&gt;
===Local Data Storage===&lt;br /&gt;
&lt;br /&gt;
Files won&#039;t be distributed by network transfers but through the local file system. This option only works for moodles sharing the same storage area.&lt;br /&gt;
&lt;br /&gt;
  Scope: Both sides of a course transfer must use the same storage protocol.&lt;br /&gt;
  Default: No&lt;br /&gt;
&lt;br /&gt;
===Allow Public Sessions===&lt;br /&gt;
&lt;br /&gt;
This parameter sets some accessibility option to the optional block Active Sessions that shows how many copies in activity exist in Training Nodes for a Catalog entry.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;STATUS: This block is not yet published and needs some rework and optimisation.&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
====Options:====&lt;br /&gt;
*Private sessions&lt;br /&gt;
*Public sessions. User identity checked.&lt;br /&gt;
*Public sessions. User unchecked.&lt;br /&gt;
&lt;br /&gt;
  Scope: Training Center, effect in Course Catalog&lt;br /&gt;
  Default: Private sessions.&lt;br /&gt;
&lt;br /&gt;
===Receiving Course===&lt;br /&gt;
&lt;br /&gt;
Course for receiving course archive downloads. When tranfering a course archive, the publishing network needs to identify a physical location where to store the published archive. You may decide in which course file cabinet the archive will be stored.&lt;br /&gt;
&lt;br /&gt;
On a Training Center platform, the deployed courses from a Catalog will be stored here. On a Course Catalog platform, published course archives will be stored there. On a Course Factory, retrofitted archives will be stored there.&lt;br /&gt;
&lt;br /&gt;
Advice: You should not allow this course to be widely visible to users.&lt;br /&gt;
&lt;br /&gt;
  Scope : Training Center, Course Catalog, Course Factory&lt;br /&gt;
&lt;br /&gt;
===Default Category for deployment===&lt;br /&gt;
&lt;br /&gt;
On a Training Center, deployed courses will not be yet given to use for users. The course needs to be opened after having being deployed. This prevents unpreprared settings to be accessible to users after deployment. You may designate a category in your target platform to which incoming courses are attached.&lt;br /&gt;
&lt;br /&gt;
  Scope : Training Center&lt;br /&gt;
&lt;br /&gt;
===Active Category===&lt;br /&gt;
&lt;br /&gt;
Using the Publishflow built in Course Life Cycle control, you may open a course once properly setup. This setting allows you to define a catagory to move the course in when it is open.&lt;br /&gt;
&lt;br /&gt;
  Scope : Training Center&lt;br /&gt;
&lt;br /&gt;
===Closing Category===&lt;br /&gt;
&lt;br /&gt;
Category for archived course sessions. When using the Publishflow built in Course Life Cycle controls and closing a course session, the course might be moved to a special archive category you can define here.&lt;br /&gt;
&lt;br /&gt;
===Main host prefix===&lt;br /&gt;
&lt;br /&gt;
Prefix of the Course Catalog platform. This is used by the Publishflow to recognize a Course Catalog within the Moodle network. this setting can be ignored if a network scanning has been performed and a Course Catalog has been identified in the network.&lt;br /&gt;
&lt;br /&gt;
  Scope: Course Factory&lt;br /&gt;
  Default: Empty&lt;br /&gt;
&lt;br /&gt;
===Factory prefix===&lt;br /&gt;
&lt;br /&gt;
Prefix pattern for finding course factory platforms in the Moodle network.&lt;br /&gt;
&lt;br /&gt;
  Scope: Training Center&lt;br /&gt;
  Default: Empty&lt;/div&gt;</summary>
		<author><name>Vf</name></author>
	</entry>
	<entry>
		<id>https://docs.moodle.org/21/en/index.php?title=Course_Publishing_block_(publishflow)&amp;diff=79803</id>
		<title>Course Publishing block (publishflow)</title>
		<link rel="alternate" type="text/html" href="https://docs.moodle.org/21/en/index.php?title=Course_Publishing_block_(publishflow)&amp;diff=79803"/>
		<updated>2010-12-28T20:59:03Z</updated>

		<summary type="html">&lt;p&gt;Vf: /* Within a Course Catalog Moodle */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Category:Contributed code]]&lt;br /&gt;
&lt;br /&gt;
The Publishflow block implements a complete course tranport and publishing architecture over the Moodle Network. The block provides a mean to publish, deploy or retrofit course archives from inside the course space itself. Publishing, deploying or retrofitting a course to a working platform use the same course transport infrastructure that operates through the network or via the local filesystem.&lt;br /&gt;
&lt;br /&gt;
[[Image:course_life_cycle.jpg|center]]&lt;br /&gt;
&lt;br /&gt;
==Moodle site types (regarding publishing concerns)==&lt;br /&gt;
&lt;br /&gt;
The course publishing architecture conceptually introduces three typical assignation to a Moodle application : &lt;br /&gt;
&lt;br /&gt;
* &#039;&#039;&#039;The Course Factory concept:&#039;&#039;&#039; A Course Factory is a Moodle instance where courses are designed and tested, but where non real training is performed. Courses can be set visible so promoting a cooperative work of the whole pedagogic operators. Courses can be exposed even if not complete or still in work, without depreciating the global e-Learing system apparent value.&lt;br /&gt;
* &#039;&#039;&#039;The Course Catalog concept:&#039;&#039;&#039; A Course Catalog is a Moodle instance that stores and exposes full features course volumes, as the result of a production process. A Course Catalog &#039;&#039;&#039;should not&#039;&#039;&#039; be the place where to perform real training, although nothing forbids really real use of courses there.&lt;br /&gt;
* &#039;&#039;&#039;The Training Instance concept:&#039;&#039;&#039; More commonly assignable to a &amp;quot;standard Moodle&amp;quot; concept, but being able to be fed with course volumes got from a Course Catalog. The Training Instances are targets for course deployment.&lt;br /&gt;
&lt;br /&gt;
Each of this general Moodle site role in the publishing network can be quickly setup by a site level preference of the Publishflow bloc. (See Global Settings)&lt;br /&gt;
&lt;br /&gt;
Assembling these three concepts may allow to constitute complex Moodle based architectures answering a publishing metaphoric model.&lt;br /&gt;
&lt;br /&gt;
[[Topology notes|Read more about topologic discussion and possibilities]]&lt;br /&gt;
&lt;br /&gt;
==Publication use cases==&lt;br /&gt;
&lt;br /&gt;
* &#039;&#039;&#039;Course publishing:&#039;&#039;&#039; Publishing a course is making the course volume available for use by the Traning Centers. &lt;br /&gt;
* &#039;&#039;&#039;Course deployment:&#039;&#039;&#039; Deploying a course is copying an instance of a course to get a workable course session with students. &lt;br /&gt;
* &#039;&#039;&#039;Course retrofitting:&#039;&#039;&#039; Retrofitting a course brings back a copy of an updated course volume to a factory for starting a new design and publishing process.&lt;br /&gt;
&lt;br /&gt;
==Course transportation principles==&lt;br /&gt;
&lt;br /&gt;
Course archives are being transported from a Moodle to another Moodle using the bublishflow simple publishing use cases. There are three transporting modes that a publishflow can operate:&lt;br /&gt;
===Using the local file system===&lt;br /&gt;
This is the fastest one. The course archive is picked up from one Moodle within the moodledata container of the source Moodle. This allows quite big size transportation in a very fast way, but of course needs the filesystem to be the same (or network mounted) between both Moodle instances. This is fully operable on a [[VMoodle|Virtualized Moodle]] installation.&lt;br /&gt;
===Using MNET back call===&lt;br /&gt;
Using MNET back call will transport the material through a Moodle MNET XMLRPC operation. This allows transporting Moodle archives between distinct physical servers an filesystems, but has a size limitation of about 40Mo due to XMLRPC encoding library breakdown.&lt;br /&gt;
===Using simple HTTP back call===&lt;br /&gt;
If the course archive does not need to be so protected during transport, the publishflow bloc envisages using a simple HTTP call to get the archive. &lt;br /&gt;
&lt;br /&gt;
this is still to be implemented.&lt;br /&gt;
&lt;br /&gt;
==Bloc Features==&lt;br /&gt;
&lt;br /&gt;
===Within a Course Factory Moodle===&lt;br /&gt;
&lt;br /&gt;
* &#039;&#039;Indexing:&#039;&#039; The course needs to be indexed (ie : having a non empty IDNumber to track published copies).&lt;br /&gt;
* &#039;&#039;Making a transportable archive:&#039;&#039; The course needs to be backup WITHOUT ANYTHING RELATIVE TO USERS to be tranportable. The bloc provides a control to make such an archive in &amp;quot;two clicks&amp;quot; process.&lt;br /&gt;
* &#039;&#039;Publish:&#039;&#039; Publishing a course to a remote Course Catalog chossing the target Moodle within the list of available targets.&lt;br /&gt;
&lt;br /&gt;
===Within a Course Catalog Moodle===&lt;br /&gt;
&lt;br /&gt;
* &#039;&#039;Deploy:&#039;&#039; The course can be deployed to any Training Center known in the MoodleNetwork neighborhood by people having capabilities to do it.&lt;br /&gt;
* &#039;&#039;Deploy with key:&#039;&#039; The course can be deployed to any Training Center known in the MoodleNetwork neighborhood by people having capabilities to do it AND having a preset deployment key.&lt;br /&gt;
&lt;br /&gt;
Deploying will make a remote copy of the course, landing in : &lt;br /&gt;
* a category choosen when setting up the deployement&lt;br /&gt;
* a predefined category for incoming courses, setup in the remote Moodle.&lt;br /&gt;
&lt;br /&gt;
===Within a Training Center Moodle===&lt;br /&gt;
&lt;br /&gt;
* &#039;&#039;Open/Reopen:&#039;&#039; The course is set available for use, or reopen if it is in a closed state.&lt;br /&gt;
* &#039;&#039;Close:&#039;&#039; The course is closed.&lt;br /&gt;
* &#039;&#039;Retrofit:&#039;&#039; The course can be retrofit to any Factory in the network neighbourhood.&lt;br /&gt;
&lt;br /&gt;
When a course is coming from deployment, it is set to a non visible state and can be attached to a predefined category.&lt;br /&gt;
&lt;br /&gt;
====Opening course options====&lt;br /&gt;
&lt;br /&gt;
When opening a course, the course may be moved to a predefined category (See Global Settings) and is set to &lt;br /&gt;
a visible state (enroll mode unchanged). &lt;br /&gt;
&lt;br /&gt;
* Opening with notification: All user that have role assigned within the course will be notified of opening.&lt;br /&gt;
* Opening without notification: No one will be notified. The course opens silently.&lt;br /&gt;
&lt;br /&gt;
====Closing course options====&lt;br /&gt;
&lt;br /&gt;
When closing a course, the course might be moved to a predefined category (See Global Settings). Closing a course might result in three distinct final states:&lt;br /&gt;
&lt;br /&gt;
* Private closing: the course is set to &#039;&#039;&#039;not visible&#039;&#039;&#039; state and no one else than teachers can go in.&lt;br /&gt;
* Protected closing: the course does&#039;nt changes its enroll settigns and student users are shifted to a &#039;&#039;Disabled Student&#039;&#039; additional custom role. Enrolled Students may thus continue to access to the course content and production whithout any interaction being possible any more. &lt;br /&gt;
* Public closing: the course is allowed to guest entry and open to guests. All users are shifted to a &#039;&#039;Disabled Student&#039;&#039; additional custom role so they get disabled.&lt;br /&gt;
&lt;br /&gt;
==Block Operations and implementation documentation==&lt;br /&gt;
&lt;br /&gt;
===Implementation Documentation===&lt;br /&gt;
* [[Publishflow Block : Requirements|Requirements]]&lt;br /&gt;
* [[Publishflow Block : Installation|Installation]]&lt;br /&gt;
* [[Publishflow Block : Initialization|Initialization : getting everyone to know about possible targets]]&lt;br /&gt;
* [[Publishflow Block : Global Settings|Global Settings]]&lt;br /&gt;
* [[Publishflow Block : Capabilities|Capabilities]]&lt;br /&gt;
* [[Publishflow Block : Additional Roles|Additional Roles]]&lt;br /&gt;
* [[Publishflow Block : MNET Services|MNET Services ( Developper)]]&lt;br /&gt;
&lt;br /&gt;
===Screens===&lt;br /&gt;
&lt;br /&gt;
*[[Publishflow Block: Publishing view|Publishing view]]&lt;br /&gt;
*[[Publishflow Block: Deploy view|Deploy view]]&lt;br /&gt;
*[[Publishflow Block: Retrofit &amp;amp; manage view|Retrofit and manage view]]&lt;br /&gt;
&lt;br /&gt;
===Operations===&lt;br /&gt;
&lt;br /&gt;
====Making a course publishable====&lt;br /&gt;
&lt;br /&gt;
A course is publishable if :&lt;br /&gt;
* MNET is activated.&lt;br /&gt;
* MNET Services for publishing architecture are enables :&lt;br /&gt;
** Coursedelivery_admin service needs to be published by targets of a deployement&lt;br /&gt;
** Coursedelivery_admin service needs to be subscribed by sources of a deployement&lt;br /&gt;
** Coursedelivery_data service needs to be published by sources of a deployement&lt;br /&gt;
** Coursedelivery_data service needs to be subscribed by targets of a deployement&lt;br /&gt;
* The network has been scanned for publishing structure recognition&lt;br /&gt;
* A publishflow block is added to the course&lt;br /&gt;
* The course has been indexed (using the publishflow block in a Factory node)&lt;br /&gt;
* The course has got a transportable backup stored in &#039;&#039;backupdata&#039;&#039; (course files).&lt;br /&gt;
&lt;br /&gt;
==Credits==&lt;br /&gt;
&lt;br /&gt;
This module is developped and maintained by the French Team Val&#039;EISTI (valery@valeisti.fr)&lt;/div&gt;</summary>
		<author><name>Vf</name></author>
	</entry>
	<entry>
		<id>https://docs.moodle.org/21/en/index.php?title=Course_Publishing_block_(publishflow)&amp;diff=79802</id>
		<title>Course Publishing block (publishflow)</title>
		<link rel="alternate" type="text/html" href="https://docs.moodle.org/21/en/index.php?title=Course_Publishing_block_(publishflow)&amp;diff=79802"/>
		<updated>2010-12-28T20:55:03Z</updated>

		<summary type="html">&lt;p&gt;Vf: /* Implementation Documentation */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Category:Contributed code]]&lt;br /&gt;
&lt;br /&gt;
The Publishflow block implements a complete course tranport and publishing architecture over the Moodle Network. The block provides a mean to publish, deploy or retrofit course archives from inside the course space itself. Publishing, deploying or retrofitting a course to a working platform use the same course transport infrastructure that operates through the network or via the local filesystem.&lt;br /&gt;
&lt;br /&gt;
[[Image:course_life_cycle.jpg|center]]&lt;br /&gt;
&lt;br /&gt;
==Moodle site types (regarding publishing concerns)==&lt;br /&gt;
&lt;br /&gt;
The course publishing architecture conceptually introduces three typical assignation to a Moodle application : &lt;br /&gt;
&lt;br /&gt;
* &#039;&#039;&#039;The Course Factory concept:&#039;&#039;&#039; A Course Factory is a Moodle instance where courses are designed and tested, but where non real training is performed. Courses can be set visible so promoting a cooperative work of the whole pedagogic operators. Courses can be exposed even if not complete or still in work, without depreciating the global e-Learing system apparent value.&lt;br /&gt;
* &#039;&#039;&#039;The Course Catalog concept:&#039;&#039;&#039; A Course Catalog is a Moodle instance that stores and exposes full features course volumes, as the result of a production process. A Course Catalog &#039;&#039;&#039;should not&#039;&#039;&#039; be the place where to perform real training, although nothing forbids really real use of courses there.&lt;br /&gt;
* &#039;&#039;&#039;The Training Instance concept:&#039;&#039;&#039; More commonly assignable to a &amp;quot;standard Moodle&amp;quot; concept, but being able to be fed with course volumes got from a Course Catalog. The Training Instances are targets for course deployment.&lt;br /&gt;
&lt;br /&gt;
Each of this general Moodle site role in the publishing network can be quickly setup by a site level preference of the Publishflow bloc. (See Global Settings)&lt;br /&gt;
&lt;br /&gt;
Assembling these three concepts may allow to constitute complex Moodle based architectures answering a publishing metaphoric model.&lt;br /&gt;
&lt;br /&gt;
[[Topology notes|Read more about topologic discussion and possibilities]]&lt;br /&gt;
&lt;br /&gt;
==Publication use cases==&lt;br /&gt;
&lt;br /&gt;
* &#039;&#039;&#039;Course publishing:&#039;&#039;&#039; Publishing a course is making the course volume available for use by the Traning Centers. &lt;br /&gt;
* &#039;&#039;&#039;Course deployment:&#039;&#039;&#039; Deploying a course is copying an instance of a course to get a workable course session with students. &lt;br /&gt;
* &#039;&#039;&#039;Course retrofitting:&#039;&#039;&#039; Retrofitting a course brings back a copy of an updated course volume to a factory for starting a new design and publishing process.&lt;br /&gt;
&lt;br /&gt;
==Course transportation principles==&lt;br /&gt;
&lt;br /&gt;
Course archives are being transported from a Moodle to another Moodle using the bublishflow simple publishing use cases. There are three transporting modes that a publishflow can operate:&lt;br /&gt;
===Using the local file system===&lt;br /&gt;
This is the fastest one. The course archive is picked up from one Moodle within the moodledata container of the source Moodle. This allows quite big size transportation in a very fast way, but of course needs the filesystem to be the same (or network mounted) between both Moodle instances. This is fully operable on a [[VMoodle|Virtualized Moodle]] installation.&lt;br /&gt;
===Using MNET back call===&lt;br /&gt;
Using MNET back call will transport the material through a Moodle MNET XMLRPC operation. This allows transporting Moodle archives between distinct physical servers an filesystems, but has a size limitation of about 40Mo due to XMLRPC encoding library breakdown.&lt;br /&gt;
===Using simple HTTP back call===&lt;br /&gt;
If the course archive does not need to be so protected during transport, the publishflow bloc envisages using a simple HTTP call to get the archive. &lt;br /&gt;
&lt;br /&gt;
this is still to be implemented.&lt;br /&gt;
&lt;br /&gt;
==Bloc Features==&lt;br /&gt;
&lt;br /&gt;
===Within a Course Factory Moodle===&lt;br /&gt;
&lt;br /&gt;
* &#039;&#039;Indexing:&#039;&#039; The course needs to be indexed (ie : having a non empty IDNumber to track published copies).&lt;br /&gt;
* &#039;&#039;Making a transportable archive:&#039;&#039; The course needs to be backup WITHOUT ANYTHING RELATIVE TO USERS to be tranportable. The bloc provides a control to make such an archive in &amp;quot;two clicks&amp;quot; process.&lt;br /&gt;
* &#039;&#039;Publish:&#039;&#039; Publishing a course to a remote Course Catalog chossing the target Moodle within the list of available targets.&lt;br /&gt;
&lt;br /&gt;
===Within a Course Catalog Moodle===&lt;br /&gt;
&lt;br /&gt;
* &#039;&#039;Deploy:&#039;&#039; The course can be deployed to any Training Center known in the MoodleNetwork neighbourhood.&lt;br /&gt;
&lt;br /&gt;
===Within a Training Center Moodle===&lt;br /&gt;
&lt;br /&gt;
* &#039;&#039;Open/Reopen:&#039;&#039; The course is set available for use, or reopen if it is in a closed state.&lt;br /&gt;
* &#039;&#039;Close:&#039;&#039; The course is closed.&lt;br /&gt;
* &#039;&#039;Retrofit:&#039;&#039; The course can be retrofit to any Factory in the network neighbourhood.&lt;br /&gt;
&lt;br /&gt;
When a course is coming from deployment, it is set to a non visible state and can be attached to a predefined category.&lt;br /&gt;
&lt;br /&gt;
====Opening course options====&lt;br /&gt;
&lt;br /&gt;
When opening a course, the course may be moved to a predefined category (See Global Settings) and is set to &lt;br /&gt;
a visible state (enroll mode unchanged). &lt;br /&gt;
&lt;br /&gt;
* Opening with notification: All user that have role assigned within the course will be notified of opening.&lt;br /&gt;
* Opening without notification: No one will be notified. The course opens silently.&lt;br /&gt;
&lt;br /&gt;
====Closing course options====&lt;br /&gt;
&lt;br /&gt;
When closing a course, the course might be moved to a predefined category (See Global Settings). Closing a course might result in three distinct final states:&lt;br /&gt;
&lt;br /&gt;
* Private closing: the course is set to &#039;&#039;&#039;not visible&#039;&#039;&#039; state and no one else than teachers can go in.&lt;br /&gt;
* Protected closing: the course does&#039;nt changes its enroll settigns and student users are shifted to a &#039;&#039;Disabled Student&#039;&#039; additional custom role. Enrolled Students may thus continue to access to the course content and production whithout any interaction being possible any more. &lt;br /&gt;
* Public closing: the course is allowed to guest entry and open to guests. All users are shifted to a &#039;&#039;Disabled Student&#039;&#039; additional custom role so they get disabled.&lt;br /&gt;
&lt;br /&gt;
==Block Operations and implementation documentation==&lt;br /&gt;
&lt;br /&gt;
===Implementation Documentation===&lt;br /&gt;
* [[Publishflow Block : Requirements|Requirements]]&lt;br /&gt;
* [[Publishflow Block : Installation|Installation]]&lt;br /&gt;
* [[Publishflow Block : Initialization|Initialization : getting everyone to know about possible targets]]&lt;br /&gt;
* [[Publishflow Block : Global Settings|Global Settings]]&lt;br /&gt;
* [[Publishflow Block : Capabilities|Capabilities]]&lt;br /&gt;
* [[Publishflow Block : Additional Roles|Additional Roles]]&lt;br /&gt;
* [[Publishflow Block : MNET Services|MNET Services ( Developper)]]&lt;br /&gt;
&lt;br /&gt;
===Screens===&lt;br /&gt;
&lt;br /&gt;
*[[Publishflow Block: Publishing view|Publishing view]]&lt;br /&gt;
*[[Publishflow Block: Deploy view|Deploy view]]&lt;br /&gt;
*[[Publishflow Block: Retrofit &amp;amp; manage view|Retrofit and manage view]]&lt;br /&gt;
&lt;br /&gt;
===Operations===&lt;br /&gt;
&lt;br /&gt;
====Making a course publishable====&lt;br /&gt;
&lt;br /&gt;
A course is publishable if :&lt;br /&gt;
* MNET is activated.&lt;br /&gt;
* MNET Services for publishing architecture are enables :&lt;br /&gt;
** Coursedelivery_admin service needs to be published by targets of a deployement&lt;br /&gt;
** Coursedelivery_admin service needs to be subscribed by sources of a deployement&lt;br /&gt;
** Coursedelivery_data service needs to be published by sources of a deployement&lt;br /&gt;
** Coursedelivery_data service needs to be subscribed by targets of a deployement&lt;br /&gt;
* The network has been scanned for publishing structure recognition&lt;br /&gt;
* A publishflow block is added to the course&lt;br /&gt;
* The course has been indexed (using the publishflow block in a Factory node)&lt;br /&gt;
* The course has got a transportable backup stored in &#039;&#039;backupdata&#039;&#039; (course files).&lt;br /&gt;
&lt;br /&gt;
==Credits==&lt;br /&gt;
&lt;br /&gt;
This module is developped and maintained by the French Team Val&#039;EISTI (valery@valeisti.fr)&lt;/div&gt;</summary>
		<author><name>Vf</name></author>
	</entry>
	<entry>
		<id>https://docs.moodle.org/21/en/index.php?title=Publishflow_Block_:_MNET_Services&amp;diff=79801</id>
		<title>Publishflow Block : MNET Services</title>
		<link rel="alternate" type="text/html" href="https://docs.moodle.org/21/en/index.php?title=Publishflow_Block_:_MNET_Services&amp;diff=79801"/>
		<updated>2010-12-28T20:54:20Z</updated>

		<summary type="html">&lt;p&gt;Vf: r&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Publishflow implements a set of MNET services in order to perform proper across MNET operations.&lt;br /&gt;
&lt;br /&gt;
Here comes the list of MNET XML-RPC functions that are provided by the blocks XML-RPC API.&lt;br /&gt;
&lt;br /&gt;
Please note that the XML-RPC API applied to blocks need using a published patch adding XML-RPC support to blocks in Moodle 1.9. This support is now fully available in Moodle 2.0, although this block is not yet ported forth.&lt;br /&gt;
&lt;br /&gt;
==Service : coursedelivery_data==&lt;br /&gt;
&lt;br /&gt;
===Description===&lt;br /&gt;
&lt;br /&gt;
This service is used to transport information about courses between platforms. NOT FINALIZED.&lt;br /&gt;
&lt;br /&gt;
===Functions===&lt;br /&gt;
&lt;br /&gt;
delivery_get_sessions() : get information about remotely deployed instances of a course template. Till now, we have feared to interfer too much wich core database model and use the IDNumber of the course to identify similarity between distinct course volumes. i.e. all courses sharing the same value of IDNumber are considered as being instances of an originating course in a factory node. &lt;br /&gt;
&lt;br /&gt;
==Service : coursedelivery_admin==&lt;br /&gt;
&lt;br /&gt;
This service is used to register course delivery commands.&lt;br /&gt;
&lt;br /&gt;
==Functions==&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;delivery_deliver()&#039;&#039;&#039;: get a course backup from a remote platform. If data transfer is done using local file system, will only give information about the physical location of a course archive.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;delivery_deploy()&#039;&#039;&#039;: deploys a course archive where called. This function has to be called remotely from the archive originator that will drive the deployement process (i.e. the deployment IS NOT initiated from the platform you want the course coming in, but where it goes out).&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;delivery_publish()&#039;&#039;&#039;: similar to the deployment function, but there are some particularities when dealing between a Course Factory and a Course Catalog Moodle instances.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;publishflow_updateplatforms()&#039;&#039;&#039;: This function is called by other hosts in a MNET to explore the network and determine which instances are in the MNET neighborhood.&lt;br /&gt;
&lt;br /&gt;
==Other Unregistered XML-RPC Calls==&lt;br /&gt;
&lt;br /&gt;
The following functions entries are XML-RPC functions that were setup for external control of the deployement. They are not registered into MNET services.&lt;br /&gt;
&lt;br /&gt;
Function name: &#039;&#039;publishflow_rpc_deploy&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;purpose:&#039;&#039;&#039;&lt;br /&gt;
Asking from an external system to deploy a course somwhere in the network.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;parameters:&#039;&#039;&#039; &lt;br /&gt;
*callinguser: a common authentication structure having fields &#039;username&#039;, &#039;remoteuserhostroot&#039; and &#039;remotehostroot&#039; information.&lt;br /&gt;
*idfield: one of (id,shortname,idnumber). Designates which attribute will identify the course template to be deployed.&lt;br /&gt;
*courseidentifier: The value that identifies the course backup, regarding what was choosen as &#039;&#039;idfield&#039;&#039;.&lt;br /&gt;
*wherewwwroot: the HTTP root identifying the MNET host where to deploy.&lt;br /&gt;
*parmsoverride: a structure that can override any value of the Moodle &amp;quot;course&amp;quot; record thus deployed instance can have its name, shortname or starting date changed. OPTIONAL.&lt;br /&gt;
*json_response: if true, the response is JSONed for convenience with remote XML-RPC implementation.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Function name: &#039;&#039;publishflow_rpc_close_course&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Purpose:&#039;&#039;&#039;&lt;br /&gt;
Asks a remote node to close a course (regarding the course life-cycle handling by the publishflow block)&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Parameters:&#039;&#039;&#039;&lt;br /&gt;
*callinguser: a common authentication structure having fields &#039;username&#039;, &#039;remoteuserhostroot&#039; and &#039;remotehostroot&#039; information.&lt;br /&gt;
*idfield: one of (id,shortname,idnumber). Designates which attribute will identify the course template to be deployed.&lt;br /&gt;
*courseidentifier : the value that identifies the course to be closed, regarding what was choosen as &#039;&#039;idfield&#039;&#039;.&lt;br /&gt;
*wherewwwroot: the HTTP root identifying the node where the course needs to be closed&lt;br /&gt;
*mode: The closing mode (see publishflow Course life-Cycle in Training Nodes)&lt;br /&gt;
*json_response: (see above).&lt;br /&gt;
&lt;br /&gt;
==Alternate form of the external RPC calls==&lt;br /&gt;
&lt;br /&gt;
Some external applications (ERPs) do not provide support for shooting RPC calls with separate parameters (OfBiz). the two functions above are also available in a wrapped alternate form : &lt;br /&gt;
&lt;br /&gt;
publishflow_rpc_deploy_wrapped($wrap)&lt;br /&gt;
publishflow_rpc_close_course_wrapped($wrap)&lt;br /&gt;
&lt;br /&gt;
the wrap is an associative array grouping all required parameters in to a single parameter data bundle. these functions are given as &#039;adaptors&#039; for that special situations.&lt;/div&gt;</summary>
		<author><name>Vf</name></author>
	</entry>
	<entry>
		<id>https://docs.moodle.org/21/en/index.php?title=Publishflow_Block_:_MNET_Services&amp;diff=79800</id>
		<title>Publishflow Block : MNET Services</title>
		<link rel="alternate" type="text/html" href="https://docs.moodle.org/21/en/index.php?title=Publishflow_Block_:_MNET_Services&amp;diff=79800"/>
		<updated>2010-12-28T20:49:45Z</updated>

		<summary type="html">&lt;p&gt;Vf: /* Other Unregistered XML-RPC Calls */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Publishflow implements a set of MNET services in order to perform proper across MNET operations.&lt;br /&gt;
&lt;br /&gt;
Here comes the list of MNET XML-RPC functions that are provided by the blocks XML-RPC API.&lt;br /&gt;
&lt;br /&gt;
Please note that the XML-RPC API applied to blocks need using a published patch adding XML-RPC support to blocks in Moodle 1.9. This support is now fully available in Moodle 2.0, although this block is not yet ported forth.&lt;br /&gt;
&lt;br /&gt;
==Service : coursedelivery_data==&lt;br /&gt;
&lt;br /&gt;
===Description===&lt;br /&gt;
&lt;br /&gt;
This service is used to transport information about courses between platforms. NOT FINALIZED.&lt;br /&gt;
&lt;br /&gt;
===Functions===&lt;br /&gt;
&lt;br /&gt;
delivery_get_sessions() : get information about remotely deployed instances of a course template. Till now, we have feared to interfer too much wich core database model and use the IDNumber of the course to identify similarity between distinct course volumes. i.e. all courses sharing the same value of IDNumber are considered as being instances of an originating course in a factory node. &lt;br /&gt;
&lt;br /&gt;
==Service : coursedelivery_admin==&lt;br /&gt;
&lt;br /&gt;
This service is used to register course delivery commands.&lt;br /&gt;
&lt;br /&gt;
==Functions==&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;delivery_deliver()&#039;&#039;&#039;: get a course backup from a remote platform. If data transfer is done using local file system, will only give information about the physical location of a course archive.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;delivery_deploy()&#039;&#039;&#039;: deploys a course archive where called. This function has to be called remotely from the archive originator that will drive the deployement process (i.e. the deployment IS NOT initiated from the platform you want the course coming in, but where it goes out).&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;delivery_publish()&#039;&#039;&#039;: similar to the deployment function, but there are some particularities when dealing between a Course Factory and a Course Catalog Moodle instances.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;publishflow_updateplatforms()&#039;&#039;&#039;: This function is called by other hosts in a MNET to explore the network and determine which instances are in the MNET neighborhood.&lt;br /&gt;
&lt;br /&gt;
==Other Unregistered XML-RPC Calls==&lt;br /&gt;
&lt;br /&gt;
The following functions entries are XML-RPC functions that were setup for external control of the deployement. They are not registered into MNET services.&lt;br /&gt;
&lt;br /&gt;
Function name: &#039;&#039;publishflow_rpc_deploy&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;purpose:&#039;&#039;&#039;&lt;br /&gt;
Asking from an external system to deploy a course somwhere in the network.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;parameters:&#039;&#039;&#039; &lt;br /&gt;
*callinguser: a common authentication structure having fields &#039;username&#039;, &#039;remoteuserhostroot&#039; and &#039;remotehostroot&#039; information.&lt;br /&gt;
*idfield: one of (id,shortname,idnumber). Designates which attribute will identify the course template to be deployed.&lt;br /&gt;
*courseidentifier: The value that identifies the course backup, regarding what was choosen as &#039;&#039;idfield&#039;&#039;.&lt;br /&gt;
*wherewwwroot: the HTTP root identifying the MNET host where to deploy.&lt;br /&gt;
*parmsoverride: a structure that can override any value of the Moodle &amp;quot;course&amp;quot; record thus deployed instance can have its name, shortname or starting date changed. OPTIONAL.&lt;br /&gt;
*json_response: if true, the response is JSONed for convenience with remote XML-RPC implementation.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Function name: &#039;&#039;publishflow_rpc_close_course&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Purpose:&#039;&#039;&#039;&lt;br /&gt;
Asks a remote node to close a course (regarding the course life-cycle handling by the publishflow block)&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Parameters:&#039;&#039;&#039;&lt;br /&gt;
*callinguser: a common authentication structure having fields &#039;username&#039;, &#039;remoteuserhostroot&#039; and &#039;remotehostroot&#039; information.&lt;br /&gt;
*idfield: one of (id,shortname,idnumber). Designates which attribute will identify the course template to be deployed.&lt;br /&gt;
*courseidentifier : the value that identifies the course to be closed, regarding what was choosen as &#039;&#039;idfield&#039;&#039;.&lt;br /&gt;
*wherewwwroot: the HTTP root identifying the node where the course needs to be closed&lt;br /&gt;
*mode: The closing mode (see publishflow Course life-Cycle in Training Nodes)&lt;br /&gt;
*json_response: (see above).&lt;/div&gt;</summary>
		<author><name>Vf</name></author>
	</entry>
	<entry>
		<id>https://docs.moodle.org/21/en/index.php?title=Publishflow_Block_:_MNET_Services&amp;diff=79799</id>
		<title>Publishflow Block : MNET Services</title>
		<link rel="alternate" type="text/html" href="https://docs.moodle.org/21/en/index.php?title=Publishflow_Block_:_MNET_Services&amp;diff=79799"/>
		<updated>2010-12-28T20:45:12Z</updated>

		<summary type="html">&lt;p&gt;Vf: /* Other Unregistered XML-RPC Calls */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Publishflow implements a set of MNET services in order to perform proper across MNET operations.&lt;br /&gt;
&lt;br /&gt;
Here comes the list of MNET XML-RPC functions that are provided by the blocks XML-RPC API.&lt;br /&gt;
&lt;br /&gt;
Please note that the XML-RPC API applied to blocks need using a published patch adding XML-RPC support to blocks in Moodle 1.9. This support is now fully available in Moodle 2.0, although this block is not yet ported forth.&lt;br /&gt;
&lt;br /&gt;
==Service : coursedelivery_data==&lt;br /&gt;
&lt;br /&gt;
===Description===&lt;br /&gt;
&lt;br /&gt;
This service is used to transport information about courses between platforms. NOT FINALIZED.&lt;br /&gt;
&lt;br /&gt;
===Functions===&lt;br /&gt;
&lt;br /&gt;
delivery_get_sessions() : get information about remotely deployed instances of a course template. Till now, we have feared to interfer too much wich core database model and use the IDNumber of the course to identify similarity between distinct course volumes. i.e. all courses sharing the same value of IDNumber are considered as being instances of an originating course in a factory node. &lt;br /&gt;
&lt;br /&gt;
==Service : coursedelivery_admin==&lt;br /&gt;
&lt;br /&gt;
This service is used to register course delivery commands.&lt;br /&gt;
&lt;br /&gt;
==Functions==&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;delivery_deliver()&#039;&#039;&#039;: get a course backup from a remote platform. If data transfer is done using local file system, will only give information about the physical location of a course archive.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;delivery_deploy()&#039;&#039;&#039;: deploys a course archive where called. This function has to be called remotely from the archive originator that will drive the deployement process (i.e. the deployment IS NOT initiated from the platform you want the course coming in, but where it goes out).&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;delivery_publish()&#039;&#039;&#039;: similar to the deployment function, but there are some particularities when dealing between a Course Factory and a Course Catalog Moodle instances.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;publishflow_updateplatforms()&#039;&#039;&#039;: This function is called by other hosts in a MNET to explore the network and determine which instances are in the MNET neighborhood.&lt;br /&gt;
&lt;br /&gt;
==Other Unregistered XML-RPC Calls==&lt;br /&gt;
&lt;br /&gt;
The following functions entries are XML-RPC functions that were setup for external control of the deployement. They are not registered into MNET services.&lt;br /&gt;
&lt;br /&gt;
Function name : &#039;&#039;publishflow_rpc_deploy&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;purpose:&#039;&#039;&#039;&lt;br /&gt;
Asking from an external system to deploy a course somwhere in the network.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;parameters:&#039;&#039;&#039; &lt;br /&gt;
*callinguser: a common authentication structure having fields &#039;username&#039;, &#039;remoteuserhostroot&#039; and &#039;remotehostroot&#039; information.&lt;br /&gt;
*idfield: one of (id,shortname,idnumber). Designates which attribute will identify the course template to be deployed.&lt;br /&gt;
*courseidentifier: The value that identifies the course backup, regarding what was choosen as &#039;&#039;idfield&#039;&#039;.&lt;br /&gt;
*wherewwwroot: the HTTP root identifying the MNET host where to deploy.&lt;br /&gt;
*parmsoverride: a structure that can override any value of the Moodle &amp;quot;course&amp;quot; record thus deployed instance can have its name, shortname or starting date changed. OPTIONAL.&lt;br /&gt;
*json_response: if true, the response is JSONed for convenience with remote XML-RPC implementation.&lt;/div&gt;</summary>
		<author><name>Vf</name></author>
	</entry>
	<entry>
		<id>https://docs.moodle.org/21/en/index.php?title=Publishflow_Block_:_MNET_Services&amp;diff=79798</id>
		<title>Publishflow Block : MNET Services</title>
		<link rel="alternate" type="text/html" href="https://docs.moodle.org/21/en/index.php?title=Publishflow_Block_:_MNET_Services&amp;diff=79798"/>
		<updated>2010-12-28T20:44:38Z</updated>

		<summary type="html">&lt;p&gt;Vf: /* Functions */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Publishflow implements a set of MNET services in order to perform proper across MNET operations.&lt;br /&gt;
&lt;br /&gt;
Here comes the list of MNET XML-RPC functions that are provided by the blocks XML-RPC API.&lt;br /&gt;
&lt;br /&gt;
Please note that the XML-RPC API applied to blocks need using a published patch adding XML-RPC support to blocks in Moodle 1.9. This support is now fully available in Moodle 2.0, although this block is not yet ported forth.&lt;br /&gt;
&lt;br /&gt;
==Service : coursedelivery_data==&lt;br /&gt;
&lt;br /&gt;
===Description===&lt;br /&gt;
&lt;br /&gt;
This service is used to transport information about courses between platforms. NOT FINALIZED.&lt;br /&gt;
&lt;br /&gt;
===Functions===&lt;br /&gt;
&lt;br /&gt;
delivery_get_sessions() : get information about remotely deployed instances of a course template. Till now, we have feared to interfer too much wich core database model and use the IDNumber of the course to identify similarity between distinct course volumes. i.e. all courses sharing the same value of IDNumber are considered as being instances of an originating course in a factory node. &lt;br /&gt;
&lt;br /&gt;
==Service : coursedelivery_admin==&lt;br /&gt;
&lt;br /&gt;
This service is used to register course delivery commands.&lt;br /&gt;
&lt;br /&gt;
==Functions==&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;delivery_deliver()&#039;&#039;&#039;: get a course backup from a remote platform. If data transfer is done using local file system, will only give information about the physical location of a course archive.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;delivery_deploy()&#039;&#039;&#039;: deploys a course archive where called. This function has to be called remotely from the archive originator that will drive the deployement process (i.e. the deployment IS NOT initiated from the platform you want the course coming in, but where it goes out).&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;delivery_publish()&#039;&#039;&#039;: similar to the deployment function, but there are some particularities when dealing between a Course Factory and a Course Catalog Moodle instances.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;publishflow_updateplatforms()&#039;&#039;&#039;: This function is called by other hosts in a MNET to explore the network and determine which instances are in the MNET neighborhood.&lt;br /&gt;
&lt;br /&gt;
==Other Unregistered XML-RPC Calls==&lt;br /&gt;
&lt;br /&gt;
The following functions entries are XML-RPC functions that were setup for external control of the deployement. They are not registered into MNET services.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;publishflow_rpc_deploy&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
purpose:&lt;br /&gt;
Asking from an external system to deploy a course somwhere in the network.&lt;br /&gt;
&lt;br /&gt;
parameters : &lt;br /&gt;
*callinguser: a common authentication structure having fields &#039;username&#039;, &#039;remoteuserhostroot&#039; and &#039;remotehostroot&#039; information.&lt;br /&gt;
*idfield: one of (id,shortname,idnumber). Designates which attribute will identify the course template to be deployed.&lt;br /&gt;
*courseidentifier: The value that identifies the course backup, regarding what was choosen as &#039;&#039;idfield&#039;&#039;.&lt;br /&gt;
*wherewwwroot: the HTTP root identifying the MNET host where to deploy.&lt;br /&gt;
*parmsoverride: a structure that can override any value of the Moodle &amp;quot;course&amp;quot; record thus deployed instance can have its name, shortname or starting date changed. OPTIONAL.&lt;br /&gt;
*json_response: if true, the response is JSONed for convenience with remote XML-RPC implementation.&lt;/div&gt;</summary>
		<author><name>Vf</name></author>
	</entry>
	<entry>
		<id>https://docs.moodle.org/21/en/index.php?title=Publishflow_Block_:_MNET_Services&amp;diff=79797</id>
		<title>Publishflow Block : MNET Services</title>
		<link rel="alternate" type="text/html" href="https://docs.moodle.org/21/en/index.php?title=Publishflow_Block_:_MNET_Services&amp;diff=79797"/>
		<updated>2010-12-28T20:32:41Z</updated>

		<summary type="html">&lt;p&gt;Vf: /* Functions */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Publishflow implements a set of MNET services in order to perform proper across MNET operations.&lt;br /&gt;
&lt;br /&gt;
Here comes the list of MNET XML-RPC functions that are provided by the blocks XML-RPC API.&lt;br /&gt;
&lt;br /&gt;
Please note that the XML-RPC API applied to blocks need using a published patch adding XML-RPC support to blocks in Moodle 1.9. This support is now fully available in Moodle 2.0, although this block is not yet ported forth.&lt;br /&gt;
&lt;br /&gt;
==Service : coursedelivery_data==&lt;br /&gt;
&lt;br /&gt;
===Description===&lt;br /&gt;
&lt;br /&gt;
This service is used to transport information about courses between platforms. NOT FINALIZED.&lt;br /&gt;
&lt;br /&gt;
===Functions===&lt;br /&gt;
&lt;br /&gt;
delivery_get_sessions() : get information about remotely deployed instances of a course template. Till now, we have feared to interfer too much wich core database model and use the IDNumber of the course to identify similarity between distinct course volumes. i.e. all courses sharing the same value of IDNumber are considered as being instances of an originating course in a factory node. &lt;br /&gt;
&lt;br /&gt;
==Service : coursedelivery_admin==&lt;br /&gt;
&lt;br /&gt;
This service is used to register course delivery commands.&lt;br /&gt;
&lt;br /&gt;
==Functions==&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;delivery_deliver()&#039;&#039;&#039;: get a course backup from a remote platform. If data transfer is done using local file system, will only give information about the physical location of a course archive.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;delivery_deploy()&#039;&#039;&#039;: deploys a course archive where called. This function has to be called remotely from the archive originator that will drive the deployement process (i.e. the deployment IS NOT initiated from the platform you want the course coming in, but where it goes out).&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;delivery_publish()&#039;&#039;&#039;: similar to the deployment function, but there are some particularities when dealing between a Course Factory and a Course Catalog Moodle instances.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;publishflow_updateplatforms()&#039;&#039;&#039;: This function is called by other hosts in a MNET to explore the network and determine which instances are in the MNET neighborhood.&lt;/div&gt;</summary>
		<author><name>Vf</name></author>
	</entry>
	<entry>
		<id>https://docs.moodle.org/21/en/index.php?title=Publishflow_Block_:_MNET_Services&amp;diff=79796</id>
		<title>Publishflow Block : MNET Services</title>
		<link rel="alternate" type="text/html" href="https://docs.moodle.org/21/en/index.php?title=Publishflow_Block_:_MNET_Services&amp;diff=79796"/>
		<updated>2010-12-28T20:32:01Z</updated>

		<summary type="html">&lt;p&gt;Vf: /* Functions */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Publishflow implements a set of MNET services in order to perform proper across MNET operations.&lt;br /&gt;
&lt;br /&gt;
Here comes the list of MNET XML-RPC functions that are provided by the blocks XML-RPC API.&lt;br /&gt;
&lt;br /&gt;
Please note that the XML-RPC API applied to blocks need using a published patch adding XML-RPC support to blocks in Moodle 1.9. This support is now fully available in Moodle 2.0, although this block is not yet ported forth.&lt;br /&gt;
&lt;br /&gt;
==Service : coursedelivery_data==&lt;br /&gt;
&lt;br /&gt;
===Description===&lt;br /&gt;
&lt;br /&gt;
This service is used to transport information about courses between platforms. NOT FINALIZED.&lt;br /&gt;
&lt;br /&gt;
===Functions===&lt;br /&gt;
&lt;br /&gt;
delivery_get_sessions() : get information about remotely deployed instances of a course template. Till now, we have feared to interfer too much wich core database model and use the IDNumber of the course to identify similarity between distinct course volumes. i.e. all courses sharing the same value of IDNumber are considered as being instances of an originating course in a factory node. &lt;br /&gt;
&lt;br /&gt;
==Service : coursedelivery_admin==&lt;br /&gt;
&lt;br /&gt;
This service is used to register course delivery commands.&lt;br /&gt;
&lt;br /&gt;
==Functions==&lt;br /&gt;
&lt;br /&gt;
delivery_deliver() : get a course backup from a remote platform. If data transfer is done using local file system, will only give information about the physical location of a course archive.&lt;br /&gt;
&lt;br /&gt;
delivery_deploy() : deploys a course archive where called. This function has to be called remotely from the archive originator that will drive the deployement process (i.e. the deployment IS NOT initiated from the platform you want the course coming in, but where it goes out).&lt;br /&gt;
&lt;br /&gt;
delivery_publish() : similar to the deployment function, but there are some particularities when dealing between a Course Factory and a Course Catalog Moodle instances.&lt;br /&gt;
&lt;br /&gt;
publishflow_updateplatforms() : This function is called by other hosts in a MNET to explore the network and determine which instances are in the MNET neighborhood.&lt;/div&gt;</summary>
		<author><name>Vf</name></author>
	</entry>
	<entry>
		<id>https://docs.moodle.org/21/en/index.php?title=Publishflow_Block_:_MNET_Services&amp;diff=79795</id>
		<title>Publishflow Block : MNET Services</title>
		<link rel="alternate" type="text/html" href="https://docs.moodle.org/21/en/index.php?title=Publishflow_Block_:_MNET_Services&amp;diff=79795"/>
		<updated>2010-12-28T20:27:45Z</updated>

		<summary type="html">&lt;p&gt;Vf: New page: Publishflow implements a set of MNET services in order to perform proper across MNET operations.  Here comes the list of MNET XML-RPC functions that are provided by the blocks XML-RPC API....&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Publishflow implements a set of MNET services in order to perform proper across MNET operations.&lt;br /&gt;
&lt;br /&gt;
Here comes the list of MNET XML-RPC functions that are provided by the blocks XML-RPC API.&lt;br /&gt;
&lt;br /&gt;
Please note that the XML-RPC API applied to blocks need using a published patch adding XML-RPC support to blocks in Moodle 1.9. This support is now fully available in Moodle 2.0, although this block is not yet ported forth.&lt;br /&gt;
&lt;br /&gt;
==Service : coursedelivery_data==&lt;br /&gt;
&lt;br /&gt;
===Description===&lt;br /&gt;
&lt;br /&gt;
This service is used to transport information about courses between platforms. NOT FINALIZED.&lt;br /&gt;
&lt;br /&gt;
===Functions===&lt;br /&gt;
&lt;br /&gt;
delivery_get_sessions() : get information about remotely deployed instances of a course template. Till now, we have feared to interfer too much wich core database model and use the IDNumber of the course to identify similarity between distinct course volumes. i.e. all courses sharing the same value of IDNumber are considered as being instances of an originating course in a factory node. &lt;br /&gt;
&lt;br /&gt;
==Service : coursedelivery_admin==&lt;br /&gt;
&lt;br /&gt;
This service is used to register course delivery commands.&lt;br /&gt;
&lt;br /&gt;
==Functions==&lt;br /&gt;
&lt;br /&gt;
delivery_deliver() : get a course backup from a remote platform. If data transfer is done using local file system, will only give information about the physical location of a course archive.&lt;br /&gt;
&lt;br /&gt;
delivery_deploy() : deploys a course archive where called. This function has to be called remotely from the archive originator that will drive the deployement process ().&lt;/div&gt;</summary>
		<author><name>Vf</name></author>
	</entry>
	<entry>
		<id>https://docs.moodle.org/21/en/index.php?title=Course_Publishing_block_(publishflow)&amp;diff=78018</id>
		<title>Course Publishing block (publishflow)</title>
		<link rel="alternate" type="text/html" href="https://docs.moodle.org/21/en/index.php?title=Course_Publishing_block_(publishflow)&amp;diff=78018"/>
		<updated>2010-11-21T23:43:02Z</updated>

		<summary type="html">&lt;p&gt;Vf: /* Making a course publishable */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Category:Contributed code]]&lt;br /&gt;
&lt;br /&gt;
The Publishflow block implements a complete course tranport and publishing architecture over the Moodle Network. The block provides a mean to publish, deploy or retrofit course archives from inside the course space itself. Publishing, deploying or retrofitting a course to a working platform use the same course transport infrastructure that operates through the network or via the local filesystem.&lt;br /&gt;
&lt;br /&gt;
[[Image:course_life_cycle.jpg|center]]&lt;br /&gt;
&lt;br /&gt;
==Moodle site types (regarding publishing concerns)==&lt;br /&gt;
&lt;br /&gt;
The course publishing architecture conceptually introduces three typical assignation to a Moodle application : &lt;br /&gt;
&lt;br /&gt;
* &#039;&#039;&#039;The Course Factory concept:&#039;&#039;&#039; A Course Factory is a Moodle instance where courses are designed and tested, but where non real training is performed. Courses can be set visible so promoting a cooperative work of the whole pedagogic operators. Courses can be exposed even if not complete or still in work, without depreciating the global e-Learing system apparent value.&lt;br /&gt;
* &#039;&#039;&#039;The Course Catalog concept:&#039;&#039;&#039; A Course Catalog is a Moodle instance that stores and exposes full features course volumes, as the result of a production process. A Course Catalog &#039;&#039;&#039;should not&#039;&#039;&#039; be the place where to perform real training, although nothing forbids really real use of courses there.&lt;br /&gt;
* &#039;&#039;&#039;The Training Instance concept:&#039;&#039;&#039; More commonly assignable to a &amp;quot;standard Moodle&amp;quot; concept, but being able to be fed with course volumes got from a Course Catalog. The Training Instances are targets for course deployment.&lt;br /&gt;
&lt;br /&gt;
Each of this general Moodle site role in the publishing network can be quickly setup by a site level preference of the Publishflow bloc. (See Global Settings)&lt;br /&gt;
&lt;br /&gt;
Assembling these three concepts may allow to constitute complex Moodle based architectures answering a publishing metaphoric model.&lt;br /&gt;
&lt;br /&gt;
[[Topology notes|Read more about topologic discussion and possibilities]]&lt;br /&gt;
&lt;br /&gt;
==Publication use cases==&lt;br /&gt;
&lt;br /&gt;
* &#039;&#039;&#039;Course publishing:&#039;&#039;&#039; Publishing a course is making the course volume available for use by the Traning Centers. &lt;br /&gt;
* &#039;&#039;&#039;Course deployment:&#039;&#039;&#039; Deploying a course is copying an instance of a course to get a workable course session with students. &lt;br /&gt;
* &#039;&#039;&#039;Course retrofitting:&#039;&#039;&#039; Retrofitting a course brings back a copy of an updated course volume to a factory for starting a new design and publishing process.&lt;br /&gt;
&lt;br /&gt;
==Course transportation principles==&lt;br /&gt;
&lt;br /&gt;
Course archives are being transported from a Moodle to another Moodle using the bublishflow simple publishing use cases. There are three transporting modes that a publishflow can operate:&lt;br /&gt;
===Using the local file system===&lt;br /&gt;
This is the fastest one. The course archive is picked up from one Moodle within the moodledata container of the source Moodle. This allows quite big size transportation in a very fast way, but of course needs the filesystem to be the same (or network mounted) between both Moodle instances. This is fully operable on a [[VMoodle|Virtualized Moodle]] installation.&lt;br /&gt;
===Using MNET back call===&lt;br /&gt;
Using MNET back call will transport the material through a Moodle MNET XMLRPC operation. This allows transporting Moodle archives between distinct physical servers an filesystems, but has a size limitation of about 40Mo due to XMLRPC encoding library breakdown.&lt;br /&gt;
===Using simple HTTP back call===&lt;br /&gt;
If the course archive does not need to be so protected during transport, the publishflow bloc envisages using a simple HTTP call to get the archive. &lt;br /&gt;
&lt;br /&gt;
this is still to be implemented.&lt;br /&gt;
&lt;br /&gt;
==Bloc Features==&lt;br /&gt;
&lt;br /&gt;
===Within a Course Factory Moodle===&lt;br /&gt;
&lt;br /&gt;
* &#039;&#039;Indexing:&#039;&#039; The course needs to be indexed (ie : having a non empty IDNumber to track published copies).&lt;br /&gt;
* &#039;&#039;Making a transportable archive:&#039;&#039; The course needs to be backup WITHOUT ANYTHING RELATIVE TO USERS to be tranportable. The bloc provides a control to make such an archive in &amp;quot;two clicks&amp;quot; process.&lt;br /&gt;
* &#039;&#039;Publish:&#039;&#039; Publishing a course to a remote Course Catalog chossing the target Moodle within the list of available targets.&lt;br /&gt;
&lt;br /&gt;
===Within a Course Catalog Moodle===&lt;br /&gt;
&lt;br /&gt;
* &#039;&#039;Deploy:&#039;&#039; The course can be deployed to any Training Center known in the MoodleNetwork neighbourhood.&lt;br /&gt;
&lt;br /&gt;
===Within a Training Center Moodle===&lt;br /&gt;
&lt;br /&gt;
* &#039;&#039;Open/Reopen:&#039;&#039; The course is set available for use, or reopen if it is in a closed state.&lt;br /&gt;
* &#039;&#039;Close:&#039;&#039; The course is closed.&lt;br /&gt;
* &#039;&#039;Retrofit:&#039;&#039; The course can be retrofit to any Factory in the network neighbourhood.&lt;br /&gt;
&lt;br /&gt;
When a course is coming from deployment, it is set to a non visible state and can be attached to a predefined category.&lt;br /&gt;
&lt;br /&gt;
====Opening course options====&lt;br /&gt;
&lt;br /&gt;
When opening a course, the course may be moved to a predefined category (See Global Settings) and is set to &lt;br /&gt;
a visible state (enroll mode unchanged). &lt;br /&gt;
&lt;br /&gt;
* Opening with notification: All user that have role assigned within the course will be notified of opening.&lt;br /&gt;
* Opening without notification: No one will be notified. The course opens silently.&lt;br /&gt;
&lt;br /&gt;
====Closing course options====&lt;br /&gt;
&lt;br /&gt;
When closing a course, the course might be moved to a predefined category (See Global Settings). Closing a course might result in three distinct final states:&lt;br /&gt;
&lt;br /&gt;
* Private closing: the course is set to &#039;&#039;&#039;not visible&#039;&#039;&#039; state and no one else than teachers can go in.&lt;br /&gt;
* Protected closing: the course does&#039;nt changes its enroll settigns and student users are shifted to a &#039;&#039;Disabled Student&#039;&#039; additional custom role. Enrolled Students may thus continue to access to the course content and production whithout any interaction being possible any more. &lt;br /&gt;
* Public closing: the course is allowed to guest entry and open to guests. All users are shifted to a &#039;&#039;Disabled Student&#039;&#039; additional custom role so they get disabled.&lt;br /&gt;
&lt;br /&gt;
==Block Operations and implementation documentation==&lt;br /&gt;
&lt;br /&gt;
===Implementation Documentation===&lt;br /&gt;
* [[Publishflow Block : Requirements|Requirements]]&lt;br /&gt;
* [[Publishflow Block : Installation|Installation]]&lt;br /&gt;
* [[Publishflow Block : Initialization|Initialization : getting everyone to know about possible targets]]&lt;br /&gt;
* [[Publishflow Block : Global Settings|Global Settings]]&lt;br /&gt;
* [[Publishflow Block : Capabilities|Capabilities]]&lt;br /&gt;
* [[Publishflow Block : Additional Roles|Additional Roles]]&lt;br /&gt;
* [[Publishflow Block : MNET Services|MNET Services]]&lt;br /&gt;
&lt;br /&gt;
===Screens===&lt;br /&gt;
&lt;br /&gt;
*[[Publishflow Block: Publishing view|Publishing view]]&lt;br /&gt;
*[[Publishflow Block: Deploy view|Deploy view]]&lt;br /&gt;
*[[Publishflow Block: Retrofit &amp;amp; manage view|Retrofit and manage view]]&lt;br /&gt;
&lt;br /&gt;
===Operations===&lt;br /&gt;
&lt;br /&gt;
====Making a course publishable====&lt;br /&gt;
&lt;br /&gt;
A course is publishable if :&lt;br /&gt;
* MNET is activated.&lt;br /&gt;
* MNET Services for publishing architecture are enables :&lt;br /&gt;
** Coursedelivery_admin service needs to be published by targets of a deployement&lt;br /&gt;
** Coursedelivery_admin service needs to be subscribed by sources of a deployement&lt;br /&gt;
** Coursedelivery_data service needs to be published by sources of a deployement&lt;br /&gt;
** Coursedelivery_data service needs to be subscribed by targets of a deployement&lt;br /&gt;
* The network has been scanned for publishing structure recognition&lt;br /&gt;
* A publishflow block is added to the course&lt;br /&gt;
* The course has been indexed (using the publishflow block in a Factory node)&lt;br /&gt;
* The course has got a transportable backup stored in &#039;&#039;backupdata&#039;&#039; (course files).&lt;br /&gt;
&lt;br /&gt;
==Credits==&lt;br /&gt;
&lt;br /&gt;
This module is developped and maintained by the French Team Val&#039;EISTI (valery@valeisti.fr)&lt;/div&gt;</summary>
		<author><name>Vf</name></author>
	</entry>
	<entry>
		<id>https://docs.moodle.org/21/en/index.php?title=Publishflow_Block:_Publishing_view&amp;diff=78017</id>
		<title>Publishflow Block: Publishing view</title>
		<link rel="alternate" type="text/html" href="https://docs.moodle.org/21/en/index.php?title=Publishflow_Block:_Publishing_view&amp;diff=78017"/>
		<updated>2010-11-21T23:41:56Z</updated>

		<summary type="html">&lt;p&gt;Vf: /* Course without usable archive */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Course Publishing block (publishflow)|Back to index]]&lt;br /&gt;
&lt;br /&gt;
This view is available on in a Course Factory mode. It will propose the possibility to publish the course to any of the proposed remote category.&lt;br /&gt;
&lt;br /&gt;
Publishing is possible : &lt;br /&gt;
&lt;br /&gt;
* Only from a Factory to a Catalog.&lt;br /&gt;
* On a combined (Factory/Catalog) node, only deployement is possible.&lt;br /&gt;
* If MNET is enabled (obvious).&lt;br /&gt;
* If publishing services are setup between the Factory and a Catalog node.&lt;br /&gt;
* If the user has a peer User record in the remote Catalog (i.e. he must be a known user matching his current identity regarding the MNET operations).&lt;br /&gt;
* If the user has the &#039;block/publishflow:publish&#039; capability in his current profile resolution.&lt;br /&gt;
* If the course has been assigned an IDNumber (can help tracking course copies across the system). &lt;br /&gt;
* If the course to publish has at least one backup in &#039;backupdata&#039;.&lt;br /&gt;
&lt;br /&gt;
==Typical error situations==&lt;br /&gt;
&lt;br /&gt;
===Network misconfigured===&lt;br /&gt;
&lt;br /&gt;
[[Image:factorymisconfigured.jpg]]&lt;br /&gt;
&lt;br /&gt;
This interface is shown on a factory when no catalog could be found in the neighborhood. A link is provided to the Moodle administrator to browse to the network discovery back-office. This back-office allows scanning the accessible Moodle Network to get information about peers participating to a course delivery network.&lt;br /&gt;
&lt;br /&gt;
===Course without reference===&lt;br /&gt;
&lt;br /&gt;
[[Image:unreferenced.jpg]]&lt;br /&gt;
&lt;br /&gt;
For the publishing network to identify which courses may be published or deployed copy from a source template, we are using the IDNumber as identifying reference. The IDNumber could be obtained manually, when editing the parameters of a course, generated by an ID generator (default), or obtained from a remote indexer developping an adequate plugin.&lt;br /&gt;
&lt;br /&gt;
Note that using the IDNumber as course template identifier could give some trouble to integrators or administrators that already use this external ID for other purpose. A study is in progress to propose a solution that could not impact the core code of Moodle.&lt;br /&gt;
&lt;br /&gt;
===Course without usable archive===&lt;br /&gt;
&lt;br /&gt;
[[Image:unstored.jpg]]&lt;br /&gt;
&lt;br /&gt;
Any deployment use case assume there is a deployable backup of the course. The deployment and publishing processes will consider the last generated backup as candidate.&lt;br /&gt;
&lt;br /&gt;
Note that the backup IS NOT a full backup procedure such in standard backup operation. The course is backup WITHOUT users not user data, with course files but WITHOUT site files. This is to ensure a full portabilility of the archive between two distinct Moodles. &lt;br /&gt;
&lt;br /&gt;
By the way, for the archive to be deplyable, both sides should have the same plugins installed to avoid unknown features being discarded when deploying back.&lt;br /&gt;
&lt;br /&gt;
==To publish a course==&lt;br /&gt;
&lt;br /&gt;
* Just click the &amp;quot;publish&amp;quot; link&lt;br /&gt;
&lt;br /&gt;
==Retiring a course==&lt;br /&gt;
&lt;br /&gt;
* You may want to unpublish a course that has been exposed within the Course Catalog. This is posible by unpublishing the course. The remote course WILL NOT be destroyed, but only hidden. &lt;br /&gt;
&lt;br /&gt;
==Republish a course==&lt;br /&gt;
&lt;br /&gt;
A course being republished is just set to visible state in remote Catalog.&lt;br /&gt;
&lt;br /&gt;
==More error situations==&lt;br /&gt;
&lt;br /&gt;
These situations can happen at start of the setup.&lt;br /&gt;
&lt;br /&gt;
===User has no remote account===&lt;br /&gt;
&lt;br /&gt;
[[Image:factorynoremiteaccount_en.jpg]]&lt;br /&gt;
&lt;br /&gt;
This message comes from the remote end, so &amp;quot;local acocunt&amp;quot; designates a proper user acocunt within the remote &amp;quot;catalog&amp;quot; node. this can be fixed by browsing once to the catalog with your user acocunt (MNET enabled) so your remote user record is available. &lt;br /&gt;
&lt;br /&gt;
This message is only available in debugging mode. Normal operation will NOT show the block to the user in case this situation happens.&lt;/div&gt;</summary>
		<author><name>Vf</name></author>
	</entry>
	<entry>
		<id>https://docs.moodle.org/21/en/index.php?title=Publishflow_Block:_Publishing_view&amp;diff=78016</id>
		<title>Publishflow Block: Publishing view</title>
		<link rel="alternate" type="text/html" href="https://docs.moodle.org/21/en/index.php?title=Publishflow_Block:_Publishing_view&amp;diff=78016"/>
		<updated>2010-11-21T23:39:34Z</updated>

		<summary type="html">&lt;p&gt;Vf: /* User has no remote acocunt */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Course Publishing block (publishflow)|Back to index]]&lt;br /&gt;
&lt;br /&gt;
This view is available on in a Course Factory mode. It will propose the possibility to publish the course to any of the proposed remote category.&lt;br /&gt;
&lt;br /&gt;
Publishing is possible : &lt;br /&gt;
&lt;br /&gt;
* Only from a Factory to a Catalog.&lt;br /&gt;
* On a combined (Factory/Catalog) node, only deployement is possible.&lt;br /&gt;
* If MNET is enabled (obvious).&lt;br /&gt;
* If publishing services are setup between the Factory and a Catalog node.&lt;br /&gt;
* If the user has a peer User record in the remote Catalog (i.e. he must be a known user matching his current identity regarding the MNET operations).&lt;br /&gt;
* If the user has the &#039;block/publishflow:publish&#039; capability in his current profile resolution.&lt;br /&gt;
* If the course has been assigned an IDNumber (can help tracking course copies across the system). &lt;br /&gt;
* If the course to publish has at least one backup in &#039;backupdata&#039;.&lt;br /&gt;
&lt;br /&gt;
==Typical error situations==&lt;br /&gt;
&lt;br /&gt;
===Network misconfigured===&lt;br /&gt;
&lt;br /&gt;
[[Image:factorymisconfigured.jpg]]&lt;br /&gt;
&lt;br /&gt;
This interface is shown on a factory when no catalog could be found in the neighborhood. A link is provided to the Moodle administrator to browse to the network discovery back-office. This back-office allows scanning the accessible Moodle Network to get information about peers participating to a course delivery network.&lt;br /&gt;
&lt;br /&gt;
===Course without reference===&lt;br /&gt;
&lt;br /&gt;
[[Image:unreferenced.jpg]]&lt;br /&gt;
&lt;br /&gt;
For the publishing network to identify which courses may be published or deployed copy from a source template, we are using the IDNumber as identifying reference. The IDNumber could be obtained manually, when editing the parameters of a course, generated by an ID generator (default), or obtained from a remote indexer developping an adequate plugin.&lt;br /&gt;
&lt;br /&gt;
Note that using the IDNumber as course template identifier could give some trouble to integrators or administrators that already use this external ID for other purpose. A study is in progress to propose a solution that could not impact the core code of Moodle.&lt;br /&gt;
&lt;br /&gt;
===Course without usable archive===&lt;br /&gt;
&lt;br /&gt;
[[Image:unstored.jpg]]&lt;br /&gt;
&lt;br /&gt;
Any deployment use case assume there is a deployable backup of the course. The deployment and publishing processes will consider the last generated backup as candidate.&lt;br /&gt;
&lt;br /&gt;
==To publish a course==&lt;br /&gt;
&lt;br /&gt;
* Just click the &amp;quot;publish&amp;quot; link&lt;br /&gt;
&lt;br /&gt;
==Retiring a course==&lt;br /&gt;
&lt;br /&gt;
* You may want to unpublish a course that has been exposed within the Course Catalog. This is posible by unpublishing the course. The remote course WILL NOT be destroyed, but only hidden. &lt;br /&gt;
&lt;br /&gt;
==Republish a course==&lt;br /&gt;
&lt;br /&gt;
A course being republished is just set to visible state in remote Catalog.&lt;br /&gt;
&lt;br /&gt;
==More error situations==&lt;br /&gt;
&lt;br /&gt;
These situations can happen at start of the setup.&lt;br /&gt;
&lt;br /&gt;
===User has no remote account===&lt;br /&gt;
&lt;br /&gt;
[[Image:factorynoremiteaccount_en.jpg]]&lt;br /&gt;
&lt;br /&gt;
This message comes from the remote end, so &amp;quot;local acocunt&amp;quot; designates a proper user acocunt within the remote &amp;quot;catalog&amp;quot; node. this can be fixed by browsing once to the catalog with your user acocunt (MNET enabled) so your remote user record is available. &lt;br /&gt;
&lt;br /&gt;
This message is only available in debugging mode. Normal operation will NOT show the block to the user in case this situation happens.&lt;/div&gt;</summary>
		<author><name>Vf</name></author>
	</entry>
	<entry>
		<id>https://docs.moodle.org/21/en/index.php?title=File:factorynoremiteaccount_en.jpg&amp;diff=78015</id>
		<title>File:factorynoremiteaccount en.jpg</title>
		<link rel="alternate" type="text/html" href="https://docs.moodle.org/21/en/index.php?title=File:factorynoremiteaccount_en.jpg&amp;diff=78015"/>
		<updated>2010-11-21T23:37:00Z</updated>

		<summary type="html">&lt;p&gt;Vf: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;/div&gt;</summary>
		<author><name>Vf</name></author>
	</entry>
	<entry>
		<id>https://docs.moodle.org/21/en/index.php?title=Publishflow_Block:_Publishing_view&amp;diff=78014</id>
		<title>Publishflow Block: Publishing view</title>
		<link rel="alternate" type="text/html" href="https://docs.moodle.org/21/en/index.php?title=Publishflow_Block:_Publishing_view&amp;diff=78014"/>
		<updated>2010-11-21T23:36:37Z</updated>

		<summary type="html">&lt;p&gt;Vf: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Course Publishing block (publishflow)|Back to index]]&lt;br /&gt;
&lt;br /&gt;
This view is available on in a Course Factory mode. It will propose the possibility to publish the course to any of the proposed remote category.&lt;br /&gt;
&lt;br /&gt;
Publishing is possible : &lt;br /&gt;
&lt;br /&gt;
* Only from a Factory to a Catalog.&lt;br /&gt;
* On a combined (Factory/Catalog) node, only deployement is possible.&lt;br /&gt;
* If MNET is enabled (obvious).&lt;br /&gt;
* If publishing services are setup between the Factory and a Catalog node.&lt;br /&gt;
* If the user has a peer User record in the remote Catalog (i.e. he must be a known user matching his current identity regarding the MNET operations).&lt;br /&gt;
* If the user has the &#039;block/publishflow:publish&#039; capability in his current profile resolution.&lt;br /&gt;
* If the course has been assigned an IDNumber (can help tracking course copies across the system). &lt;br /&gt;
* If the course to publish has at least one backup in &#039;backupdata&#039;.&lt;br /&gt;
&lt;br /&gt;
==Typical error situations==&lt;br /&gt;
&lt;br /&gt;
===Network misconfigured===&lt;br /&gt;
&lt;br /&gt;
[[Image:factorymisconfigured.jpg]]&lt;br /&gt;
&lt;br /&gt;
This interface is shown on a factory when no catalog could be found in the neighborhood. A link is provided to the Moodle administrator to browse to the network discovery back-office. This back-office allows scanning the accessible Moodle Network to get information about peers participating to a course delivery network.&lt;br /&gt;
&lt;br /&gt;
===Course without reference===&lt;br /&gt;
&lt;br /&gt;
[[Image:unreferenced.jpg]]&lt;br /&gt;
&lt;br /&gt;
For the publishing network to identify which courses may be published or deployed copy from a source template, we are using the IDNumber as identifying reference. The IDNumber could be obtained manually, when editing the parameters of a course, generated by an ID generator (default), or obtained from a remote indexer developping an adequate plugin.&lt;br /&gt;
&lt;br /&gt;
Note that using the IDNumber as course template identifier could give some trouble to integrators or administrators that already use this external ID for other purpose. A study is in progress to propose a solution that could not impact the core code of Moodle.&lt;br /&gt;
&lt;br /&gt;
===Course without usable archive===&lt;br /&gt;
&lt;br /&gt;
[[Image:unstored.jpg]]&lt;br /&gt;
&lt;br /&gt;
Any deployment use case assume there is a deployable backup of the course. The deployment and publishing processes will consider the last generated backup as candidate.&lt;br /&gt;
&lt;br /&gt;
==To publish a course==&lt;br /&gt;
&lt;br /&gt;
* Just click the &amp;quot;publish&amp;quot; link&lt;br /&gt;
&lt;br /&gt;
==Retiring a course==&lt;br /&gt;
&lt;br /&gt;
* You may want to unpublish a course that has been exposed within the Course Catalog. This is posible by unpublishing the course. The remote course WILL NOT be destroyed, but only hidden. &lt;br /&gt;
&lt;br /&gt;
==Republish a course==&lt;br /&gt;
&lt;br /&gt;
A course being republished is just set to visible state in remote Catalog.&lt;br /&gt;
&lt;br /&gt;
==More error situations==&lt;br /&gt;
&lt;br /&gt;
These situations can happen at start of the setup.&lt;br /&gt;
&lt;br /&gt;
===User has no remote acocunt===&lt;br /&gt;
&lt;br /&gt;
[[Image:factorynoremiteaccount_en.jpg]]&lt;/div&gt;</summary>
		<author><name>Vf</name></author>
	</entry>
	<entry>
		<id>https://docs.moodle.org/21/en/index.php?title=File:unstored.jpg&amp;diff=78013</id>
		<title>File:unstored.jpg</title>
		<link rel="alternate" type="text/html" href="https://docs.moodle.org/21/en/index.php?title=File:unstored.jpg&amp;diff=78013"/>
		<updated>2010-11-21T23:16:27Z</updated>

		<summary type="html">&lt;p&gt;Vf: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;/div&gt;</summary>
		<author><name>Vf</name></author>
	</entry>
	<entry>
		<id>https://docs.moodle.org/21/en/index.php?title=File:unreferenced.jpg&amp;diff=78012</id>
		<title>File:unreferenced.jpg</title>
		<link rel="alternate" type="text/html" href="https://docs.moodle.org/21/en/index.php?title=File:unreferenced.jpg&amp;diff=78012"/>
		<updated>2010-11-21T22:50:33Z</updated>

		<summary type="html">&lt;p&gt;Vf: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;/div&gt;</summary>
		<author><name>Vf</name></author>
	</entry>
	<entry>
		<id>https://docs.moodle.org/21/en/index.php?title=Publishflow_Block:_Publishing_view&amp;diff=78011</id>
		<title>Publishflow Block: Publishing view</title>
		<link rel="alternate" type="text/html" href="https://docs.moodle.org/21/en/index.php?title=Publishflow_Block:_Publishing_view&amp;diff=78011"/>
		<updated>2010-11-21T22:49:14Z</updated>

		<summary type="html">&lt;p&gt;Vf: /* Network misconfigured */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Course Publishing block (publishflow)|Back to index]]&lt;br /&gt;
&lt;br /&gt;
This view is available on in a Course Factory mode. It will propose the possibility to publish the course to any of the proposed remote category.&lt;br /&gt;
&lt;br /&gt;
Publishing is possible : &lt;br /&gt;
&lt;br /&gt;
* Only from a Factory to a Catalog.&lt;br /&gt;
* On a combined (Factory/Catalog) node, only deployement is possible.&lt;br /&gt;
* If MNET is enabled (obvious).&lt;br /&gt;
* If publishing services are setup between the Factory and a Catalog node.&lt;br /&gt;
* If the user has a peer User record in the remote Catalog (i.e. he must be a known user matching his current identity regarding the MNET operations).&lt;br /&gt;
* If the user has the &#039;block/publishflow:publish&#039; capability in his current profile resolution.&lt;br /&gt;
* If the course has been assigned an IDNumber (can help tracking course copies across the system). &lt;br /&gt;
* If the course to publish has at least one backup in &#039;backupdata&#039;.&lt;br /&gt;
&lt;br /&gt;
==Typical error situations==&lt;br /&gt;
&lt;br /&gt;
===Network misconfigured===&lt;br /&gt;
&lt;br /&gt;
[[Image:factorymisconfigured.jpg]]&lt;br /&gt;
&lt;br /&gt;
This interface is shown on a factory when no catalog could be found in the neighborhood. A link is provided to the Moodle administrator to browse to the network discovery back-office. This back-office allows scanning the accessible Moodle Network to get information about peers participating to a course delivery network.&lt;br /&gt;
&lt;br /&gt;
===Course without reference===&lt;br /&gt;
&lt;br /&gt;
[[Image:unreferenced.jpg]]&lt;br /&gt;
&lt;br /&gt;
For the publishing network to identify which courses may be published or deployed copy from a source template, we are using the IDNumber as identifying reference. The IDNumber could be obtained manually, when editing the parameters of a course, generated by an ID generator (default), or obtained from a remote indexer developping an adequate plugin.&lt;br /&gt;
&lt;br /&gt;
Note that using the IDNumber as course template identifier could give some trouble to integrators or administrators that already use this external ID for other purpose. A study is in progress to propose a solution that could not impact the core code of Moodle.&lt;br /&gt;
&lt;br /&gt;
===Course without usable archive===&lt;br /&gt;
&lt;br /&gt;
[[Image:unstored.jpg]]&lt;br /&gt;
&lt;br /&gt;
Any deployment use case assume there is a deployable backup of the course. The deployment and publishing processes will consider the last generated backup as candidate.&lt;br /&gt;
&lt;br /&gt;
==To publish a course==&lt;br /&gt;
&lt;br /&gt;
* Just click the &amp;quot;publish&amp;quot; link&lt;br /&gt;
&lt;br /&gt;
==Retiring a course==&lt;br /&gt;
&lt;br /&gt;
* You may want to unpublish a course that has been exposed within the Course Catalog. This is posible by unpublishing the course. The remote course WILL NOT be destroyed, but only hidden. &lt;br /&gt;
&lt;br /&gt;
==Republish a course==&lt;br /&gt;
&lt;br /&gt;
A course being republished is just set to visible state in remote Catalog.&lt;/div&gt;</summary>
		<author><name>Vf</name></author>
	</entry>
	<entry>
		<id>https://docs.moodle.org/21/en/index.php?title=Publishflow_Block:_Publishing_view&amp;diff=78010</id>
		<title>Publishflow Block: Publishing view</title>
		<link rel="alternate" type="text/html" href="https://docs.moodle.org/21/en/index.php?title=Publishflow_Block:_Publishing_view&amp;diff=78010"/>
		<updated>2010-11-21T22:43:10Z</updated>

		<summary type="html">&lt;p&gt;Vf: /* Network misconfigured */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Course Publishing block (publishflow)|Back to index]]&lt;br /&gt;
&lt;br /&gt;
This view is available on in a Course Factory mode. It will propose the possibility to publish the course to any of the proposed remote category.&lt;br /&gt;
&lt;br /&gt;
Publishing is possible : &lt;br /&gt;
&lt;br /&gt;
* Only from a Factory to a Catalog.&lt;br /&gt;
* On a combined (Factory/Catalog) node, only deployement is possible.&lt;br /&gt;
* If MNET is enabled (obvious).&lt;br /&gt;
* If publishing services are setup between the Factory and a Catalog node.&lt;br /&gt;
* If the user has a peer User record in the remote Catalog (i.e. he must be a known user matching his current identity regarding the MNET operations).&lt;br /&gt;
* If the user has the &#039;block/publishflow:publish&#039; capability in his current profile resolution.&lt;br /&gt;
* If the course has been assigned an IDNumber (can help tracking course copies across the system). &lt;br /&gt;
* If the course to publish has at least one backup in &#039;backupdata&#039;.&lt;br /&gt;
&lt;br /&gt;
==Typical error situations==&lt;br /&gt;
&lt;br /&gt;
===Network misconfigured===&lt;br /&gt;
&lt;br /&gt;
[[Image:factorymisconfigured.jpg]]&lt;br /&gt;
&lt;br /&gt;
This interface is shown on a factory when no catalog could be found in the neighborhood. A link is provided to the Moodle administrator to browse to the network discovery back-office. This back-office allows scanning the accessible Moodle Network to get information about peers participating to a course delivery network.&lt;br /&gt;
&lt;br /&gt;
==To publish a course==&lt;br /&gt;
&lt;br /&gt;
* Just click the &amp;quot;publish&amp;quot; link&lt;br /&gt;
&lt;br /&gt;
==Retiring a course==&lt;br /&gt;
&lt;br /&gt;
* You may want to unpublish a course that has been exposed within the Course Catalog. This is posible by unpublishing the course. The remote course WILL NOT be destroyed, but only hidden. &lt;br /&gt;
&lt;br /&gt;
==Republish a course==&lt;br /&gt;
&lt;br /&gt;
A course being republished is just set to visible state in remote Catalog.&lt;/div&gt;</summary>
		<author><name>Vf</name></author>
	</entry>
	<entry>
		<id>https://docs.moodle.org/21/en/index.php?title=File:factorymisconfigured.jpg&amp;diff=78009</id>
		<title>File:factorymisconfigured.jpg</title>
		<link rel="alternate" type="text/html" href="https://docs.moodle.org/21/en/index.php?title=File:factorymisconfigured.jpg&amp;diff=78009"/>
		<updated>2010-11-21T22:41:59Z</updated>

		<summary type="html">&lt;p&gt;Vf: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;/div&gt;</summary>
		<author><name>Vf</name></author>
	</entry>
	<entry>
		<id>https://docs.moodle.org/21/en/index.php?title=Publishflow_Block:_Publishing_view&amp;diff=78008</id>
		<title>Publishflow Block: Publishing view</title>
		<link rel="alternate" type="text/html" href="https://docs.moodle.org/21/en/index.php?title=Publishflow_Block:_Publishing_view&amp;diff=78008"/>
		<updated>2010-11-21T22:41:16Z</updated>

		<summary type="html">&lt;p&gt;Vf: /* Network misconfigured */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Course Publishing block (publishflow)|Back to index]]&lt;br /&gt;
&lt;br /&gt;
This view is available on in a Course Factory mode. It will propose the possibility to publish the course to any of the proposed remote category.&lt;br /&gt;
&lt;br /&gt;
Publishing is possible : &lt;br /&gt;
&lt;br /&gt;
* Only from a Factory to a Catalog.&lt;br /&gt;
* On a combined (Factory/Catalog) node, only deployement is possible.&lt;br /&gt;
* If MNET is enabled (obvious).&lt;br /&gt;
* If publishing services are setup between the Factory and a Catalog node.&lt;br /&gt;
* If the user has a peer User record in the remote Catalog (i.e. he must be a known user matching his current identity regarding the MNET operations).&lt;br /&gt;
* If the user has the &#039;block/publishflow:publish&#039; capability in his current profile resolution.&lt;br /&gt;
* If the course has been assigned an IDNumber (can help tracking course copies across the system). &lt;br /&gt;
* If the course to publish has at least one backup in &#039;backupdata&#039;.&lt;br /&gt;
&lt;br /&gt;
==Typical error situations==&lt;br /&gt;
&lt;br /&gt;
==Network misconfigured==&lt;br /&gt;
&lt;br /&gt;
[[Image:misconfigured.jpg]]&lt;br /&gt;
&lt;br /&gt;
This interface is shown on a factory when no catalog could be found in the neighborhood. A link is provided to the Moodle administrator to browse to the network discovery back-office. This back-office allows scanning the accessible Moodle Network to get information about peers participating to a course delivery network.&lt;br /&gt;
&lt;br /&gt;
==To publish a course==&lt;br /&gt;
&lt;br /&gt;
* Just click the &amp;quot;publish&amp;quot; link&lt;br /&gt;
&lt;br /&gt;
==Retiring a course==&lt;br /&gt;
&lt;br /&gt;
* You may want to unpublish a course that has been exposed within the Course Catalog. This is posible by unpublishing the course. The remote course WILL NOT be destroyed, but only hidden. &lt;br /&gt;
&lt;br /&gt;
==Republish a course==&lt;br /&gt;
&lt;br /&gt;
A course being republished is just set to visible state in remote Catalog.&lt;/div&gt;</summary>
		<author><name>Vf</name></author>
	</entry>
</feed>