Diff for MozdevDocs

Fri, 05/15/2009 - 14:30 by silfreedWed, 07/08/2009 - 13:36 by mozdev

Adding link to edit-in-place

updating edit-in-place link

Changes to Body
Line 1Line 1
-
This documentation will help you get started using your project on mozdev. These instructions are kept in a wiki, so please feel free to update, correct or add any information that will be helpful to other users. For reference the [http://www.mozdev.org/source/browse/www/www/docs/ original docs] are still available, but they are also very out-of-date.
+
<p>This documentation will help you get started using your project on mozdev. These instructions are kept in a wiki, so please feel free to update, correct or add any information that will be helpful to other users. For reference the <a href="http://www.mozdev.org/source/browse/www/www/docs/">original docs</a> are still available, but they are also very out-of-date.</p>
-
+
 
-
[[toc]]
+
<!--tableofcontents-->
-
+
 
-
++++ Adding, Editing and Deleting Content
+
 
-
+
<h4> Adding, Editing and Deleting Content</h4>
-
[http://en.wikipedia.org/wiki/Concurrent_Versions_System CVS] is used to edit, update and add all source and content on mozdev.org, including a project's web pages. Web pages are contained in the www/ directory for each project, so to start making changes to your pages you first need to check out your project from CVS.
+
<p><a href="http://en.wikipedia.org/wiki/Concurrent_Versions_System">CVS</a> is used to edit, update and add all source and content on mozdev.org, including a project's web pages. Web pages are contained in the www/ directory for each project, so to start making changes to your pages you first need to check out your project from CVS.</p>
-
+
 
-
CVS is also used to take down a page from your site. Files removed in CVS are moved into an area called the Attic and are not deleted from the repository. This is done because CVS needs to keep a full history of all versions of all files in case an earlier version of a file needs to be brought back at some point. Removed pages may not be linked to from your site anymore, but they will still be available online by browsing through your project's Attic using [http://www.mozdev.org/source/browse/ CVSweb]. This means that a file removed from your site can still be found through a Google search, for instance.
+
<p>CVS is also used to take down a page from your site. Files removed in CVS are moved into an area called the Attic and are not deleted from the repository. This is done because CVS needs to keep a full history of all versions of all files in case an earlier version of a file needs to be brought back at some point. Removed pages may not be linked to from your site anymore, but they will still be available online by browsing through your project's Attic using <a href="http://www.mozdev.org/source/browse/">CVSweb</a>. This means that a file removed from your site can still be found through a Google search, for instance.</p>
-
+
 
-
+++++ Command-line Client
+
 
-
+
<h5> Command-line Client</h5>
-
Using a command line CVS client, you would do the following:
+
<p>Using a command line CVS client, you would do the following:</p>
-
+
 
-
> cvs -d :pserver:USERNAME@mozdev.org:/cvs login
+
<blockquote>cvs -d :pserver:USERNAME@mozdev.org:/cvs login<br />
-
> cvs -d :pserver:USERNAME@mozdev.org:/cvs co PROJECTNAME
+
cvs -d :pserver:USERNAME@mozdev.org:/cvs co PROJECTNAME </blockquote>
-
+
<p><em>Note: The CVS commands above are for use with command line CVS clients. There are Windows and Macintosh CVS programs (such as <a href="http://www.wincvs.org/">WinCVS</a> and <a href="http://tortoisecvs.sourceforge.net/">TortoiseCVS</a> for Windows and <a href="http://www.maccvs.org/">MacCVS</a> and <a href="http://www.heilancoo.net/MacCVSClient/">MacCVSClient</a> for the Mac) that provide a graphical front end for CVS. For more information about using CVS on mozdev, please see John Haller's <a href="http://www.johnhaller.com/jh/mozilla/mozdev_wincvs/">CVS Setup</a> guide.</em></p>
-
//Note: The CVS commands above are for use with command line CVS clients. There are Windows and Macintosh CVS programs (such as [http://www.wincvs.org/ WinCVS] and [http://tortoisecvs.sourceforge.net/ TortoiseCVS] for Windows and [http://www.maccvs.org/ MacCVS] and [http://www.heilancoo.net/MacCVSClient/ MacCVSClient] for the Mac) that provide a graphical front end for CVS. For more information about using CVS on mozdev, please see John Haller's [http://www.johnhaller.com/jh/mozilla/mozdev_wincvs/ CVS Setup] guide.//
+
 
-
+
 
-
+++++ Tortoise CVS
+
<h5> Tortoise CVS</h5>
-
+
<p>Here is a screenshot showing how to configure <a href="http://tortoisecvs.sourceforge.net/">TortoiseCVS</a> 1.10.4 to retrieve a project from mozdev:</p>
-
Here is a screenshot showing how to configure [http://tortoisecvs.sourceforge.net/ TortoiseCVS] 1.10.4 to retrieve a project from mozdev:
+
 
-
+
<p><img src="http://www.mozdev.org/drupal/files/www/mozdev-tortoise-cvs-checkout.jpg" alt="1" title="1" /></p>
-
[http://www.mozdev.org/drupal/files/www/mozdev-tortoise-cvs-checkout.jpg]
+
 
-
+
<p>When the checkout is complete all of the project's contents will be on your computer and the web pages can be found at PROJECTNAME/www/. For all new projects there are already some Template Start Pages that have been included in this directory, although you are free to add whatever files or directories you want. After modifying files locally, you can commit these changes back to your project and they will show up on the site.</p>
-
When the checkout is complete all of the project's contents will be on your computer and the web pages can be found at PROJECTNAME/www/. For all new projects there are already some Template Start Pages that have been included in this directory, although you are free to add whatever files or directories you want. After modifying files locally, you can commit these changes back to your project and they will show up on the site.
+
 
-
+
 
-
+++++ Eclipse IDE
+
<h5> Eclipse IDE</h5>
-
+
<p>Here are instructions on how to configure <a href="http://www.eclipse.org">Eclipse IDE</a> 3.4.1 to retrieve a project from mozdev:</p>
-
Here are instructions on how to configure [http://www.eclipse.org Eclipse IDE] 3.4.1 to retrieve a project from mozdev:
+
 
-
+
<p>Create a new project by pressing ctrl+N or File-&gt;New Project-&gt;Projects from CVS:</p>
-
Create a new project by pressing ctrl+N or File->New Project->Projects from CVS:
+
 
-
+
<p><img src="http://www.mozdev.org/drupal/files/www/eclipse-co-1.png" alt="2" title="2" /></p>
-
[http://www.mozdev.org/drupal/files/www/eclipse-co-1.png]
+
 
-
+
<p>Enter the following information into the next dialog, substituting your name and password with the one in the screenshot:</p>
-
Enter the following information into the next dialog, substituting your name and password with the one in the screenshot:
+
 
-
+
<p><img src="http://www.mozdev.org/drupal/files/www/eclipse-co-2.PNG" alt="3" title="3" /></p>
-
[http://www.mozdev.org/drupal/files/www/eclipse-co-2.PNG]
+
 
-
+
<p>In the next dialog, enter your PROJECTNAME:</p>
-
In the next dialog, enter your PROJECTNAME:
+
 
-
+
<p><img src="http://www.mozdev.org/drupal/files/www/eclipse-co-3.png" alt="4" title="4" /></p>
-
[http://www.mozdev.org/drupal/files/www/eclipse-co-3.png]
+
 
-
+
<p>Finally, select a name for the local Eclipse project. This name can be the same as the mozdev project name or something else, if you prefer:</p>
-
Finally, select a name for the local Eclipse project. This name can be the same as the mozdev project name or something else, if you prefer:
+
 
-
+
<p><img src="http://www.mozdev.org/drupal/files/www/eclipse-co-4.png" alt="5" title="5" /></p>
-
[http://www.mozdev.org/drupal/files/www/eclipse-co-4.png]
+
 
-
+
<p>Click the &quot;finish&quot; button to continue.</p>
-
Click the "finish" button to continue.
+
 
-
+
<p>When the checkout is complete all of the project's contents will be on your computer and the web pages can be found at PROJECTNAME/www/. For all new projects there are already some Template Start Pages that have been included in this directory, although you are free to add whatever files or directories you want. After modifying files locally, you can commit these changes back to your project and they will show up on the site.</p>
-
When the checkout is complete all of the project's contents will be on your computer and the web pages can be found at PROJECTNAME/www/. For all new projects there are already some Template Start Pages that have been included in this directory, although you are free to add whatever files or directories you want. After modifying files locally, you can commit these changes back to your project and they will show up on the site.
+
 
-
+
 
-
++++ Changing CVS Password
+
<h4> Changing CVS Password</h4>
-
+
<p>You may change your CVS password by going to the <a href="https://www.mozdev.org/profile/change_password.html">Password Change</a> form.</p>
-
You may change your CVS password by going to the [https://www.mozdev.org/profile/change_password.html Password Change] form.
+
 
-
+
<p><em>Note: This form only updates your CVS password. To update your password for one of the mailing lists, please go to <a href="http://www.mozdev.org/mailman/listinfo/LIST_NAME">http://www.mozdev.org/mailman/listinfo/LIST_NAME</a> or contact us at feedback at mozdev dot org. To update your Bugzilla password, log in to <a href="https://www.mozdev.org/bugs/">Bugzilla</a> and go to user preferences.</em></p>
-
//Note: This form only updates your CVS password. To update your password for one of the mailing lists, please go to http://www.mozdev.org/mailman/listinfo/LIST_NAME or contact us at feedback at mozdev dot org. To update your Bugzilla password, log in to [https://www.mozdev.org/bugs/ Bugzilla] and go to user preferences.//
+
 
-
+
 
-
++++ Default Template Pages
+
<h4> Default Template Pages</h4>
-
+
<p>All new projects come with some default template pages that you can edit to get your project started quickly. These templates are designed to use valid HTML and CSS and have been optimized to display best in standards-compliant browsers. HTML and CSS compliance is optional though and you are free to replace any of these files or edit them however you want.</p>
-
All new projects come with some default template pages that you can edit to get your project started quickly. These templates are designed to use valid HTML and CSS and have been optimized to display best in standards-compliant browsers. HTML and CSS compliance is optional though and you are free to replace any of these files or edit them however you want.
+
 
-
+
<p>The default templates include:</p>
-
The default templates include:
+
 
-
+
<ul>
-
* project_nav.html: This file contains the project navigation that will be included on all pages for your project.
+
<li>project_nav.html: This file contains the project navigation that will be included on all pages for your project.</li>
-
+
</ul>
-
* head.txt: This file will allow you to make additions to the <head> tag that is included by default in the site branding code.
+
 
-
+
<ul>
-
* local.conf: This file allows you to set a number of different variables that will allow you to configure your project. Any $local_conf_ variable changes should be inside <?php and ?>
+
<li>head.txt: This file will allow you to make additions to the tag that is included by default in the site branding code.</li>
-
+
</ul>
-
* bugs.html: This file adds a dynamically updated 'Latest bugs filed' list to the bottom of the page.
+
 
-
+
<ul>
-
* source.html: This file adds a dynamically updated 'Today's CVS commits' list to the bottom of the page.
+
<li>local.conf: This file allows you to set a number of different variables that will allow you to configure your project. Any $local_conf_ variable changes should be inside &lt;?php and ?&gt;</li>
-
+
</ul>
-
* members.html: This file lists each person who has CVS access to a project and what role they have been assigned.
+
 
-
+
<ul>
-
++++ Posting Files to the Download Mirrors
+
<li>bugs.html: This file adds a dynamically updated 'Latest bugs filed' list to the bottom of the page.</li>
-
+
</ul>
-
When you are ready to post a version of your project for download or installation, you will need to copy the release file to your downloads directory. All download files (xpi, zip, gzip, tar, etc.) should live only in the downloads directory. Newly checked in (or changed) release files are scheduled for copying to the mirror servers. It can be as quick as the top of the next hour, yet with some servers you may see a delay of up to 8 hours.
+
 
-
+
<ul>
-
Once your files are copied over they will be available at http://downloads.mozdev.org/PROJECTNAME/. In other words, if you project were called gil, and you placed a copy of release.xpi in your downloads directory, it would be available at http://downloads.mozdev.org/gil/release.xpi.
+
<li>source.html: This file adds a dynamically updated 'Today's CVS commits' list to the bottom of the page.</li>
-
+
</ul>
-
To most effectively use the download mirrors, we ask that you post your download file several hours (at least 4 hours) before your announce your new file or post an updated //updates.rdf// file. This will ensure that your new file has a chance to be distributed to as many mirrors as possible.
+
 
-
+
<ul>
-
For more information about how to provide secure updates to their users, see [http://developer.mozilla.org/en/docs/McCoy this documentation]. For more information about the download mirrors or about how to become a mozdev.org mirror, visit the [http://mirrors.mozdev.org mirrors project].
+
<li>members.html: This file lists each person who has CVS access to a project and what role they have been assigned.</li>
-
+
</ul>
-
++++ Announcing Your Project
+
 
-
+
 
-
Once you've built out your project, there are a several ways for people to find out about what you've been working on. Your project is automatically publicized on the site in a number of places:
+
<h4> Posting Files to the Download Mirrors</h4>
-
+
<p>When you are ready to post a version of your project for download or installation, you will need to copy the release file to your downloads directory. All download files (xpi, zip, gzip, tar, etc.) should live only in the downloads directory. Newly checked in (or changed) release files are scheduled for copying to the mirror servers. It can be as quick as the top of the next hour, yet with some servers you may see a delay of up to 8 hours.</p>
-
* The [http://www.mozdev.org/projects/active.html Active Project] list shows all projects that have had some activity within the last 180 days. Before you update your project it will show up on the [http://www.mozdev.org/projects/unstarted.html Unstarted Projects] list and if you stop working on a project it will show up on the [http://www.mozdev.org/projects/inactive.html Inactive Projects] list.
+
 
-
+
<p>Once your files are copied over they will be available at <a href="http://downloads.mozdev.org/PROJECTNAME/">http://downloads.mozdev.org/PROJECTNAME/</a>. In other words, if you project were called gil, and you placed a copy of release.xpi in your downloads directory, it would be available at <a href="http://downloads.mozdev.org/gil/release.xpi">http://downloads.mozdev.org/gil/release.xpi</a>.</p>
-
* The 5 most recent additions to the Active Projects list will show up on the mozdev hom page in the New Projects section and the 5 projects that have had CVS activity will show up on the home page in the Last Updated section.
+
 
-
+
<p>To most effectively use the download mirrors, we ask that you post your download file several hours (at least 4 hours) before your announce your new file or post an updated <em>updates.rdf</em> file. This will ensure that your new file has a chance to be distributed to as many mirrors as possible.</p>
-
* The [http://www.mozdev.org/projects/top50.html Top 50 Projects] list shows the most the most viewed projects on the site.
+
 
-
+
<p>For more information about how to provide secure updates to their users, see <a href="http://developer.mozilla.org/en/docs/McCoy">this documentation</a>. For more information about the download mirrors or about how to become a mozdev.org mirror, visit the <a href="http://mirrors.mozdev.org">mirrors project</a>.</p>
-
++++ Granting New Project Roles
+
 
-
+
 
-
If you are a project owner and would like to grant commit access to someone who wants to help out with your project, send email to //feedback at mozdev dot org// with the name of your project and the name and email address of the person to give access to. When submitting a request for access also include the role you would like to grant. There are two roles that allow commit access -- Committer and Project Owner. The only difference between these two roles is administrative. Someone with commit access will not be allowed to request changes to the project, but anyone listed as a project owner will be.
+
<h4> Announcing Your Project</h4>
-
+
<p>Once you've built out your project, there are a several ways for people to find out about what you've been working on. Your project is automatically publicized on the site in a number of places:</p>
-
++++ Configuration Options for local.conf
+
 
-
+
<ul>
-
The local.conf file is a configuration file for customising how your project content is presented. Please see the full [http://www.mozdev.org/docs/localconf.html list of configuration options] for all of the details.
+
<li>The <a href="http://www.mozdev.org/projects/active.html">Active Project</a> list shows all projects that have had some activity within the last 180 days. Before you update your project it will show up on the <a href="http://www.mozdev.org/projects/unstarted.html">Unstarted Projects</a> list and if you stop working on a project it will show up on the <a href="http://www.mozdev.org/projects/inactive.html">Inactive Projects</a> list.</li>
-
+
</ul>
-
++++ Branding Options
+
 
-
+
<ul>
-
The pages you create for your project are wrapped with mozdev's branding and navigation by default. This means that there will be HTML that is added to the files in your www/ directory when they are displayed on the site. The wrappers include both beginning and ending ``<``html``>``, ``<``head``>``, ``<``title``>`` and ``<``body``>`` tags. To avoid causing any conflicts it is recommended that you don't include these tags in the web pages you add to your project.
+
<li>The 5 most recent additions to the Active Projects list will show up on the mozdev hom page in the New Projects section and the 5 projects that have had CVS activity will show up on the home page in the Last Updated section.</li>
-
+
</ul>
-
There are a number of ways to alter the branding that is wrapped around your project pages by default. To display any page without any of the branding, the simplest way to do this is to include no_wrap in the URL for that page. For example, to see the Roadmap page without the branding use this URL:
+
 
-
+
<ul>
-
http://www.mozdev.org/no_wrap/resources/roadmap.html
+
<li>The <a href="http://www.mozdev.org/projects/top50.html">Top 50 Projects</a> list shows the most the most viewed projects on the site.</li>
-
+
</ul>
-
You can also edit the local.conf file to toggle different branding options. To turn the branding off you can modify the $local_conf_no_wrap variable by making the following change in local.conf:
+
 
-
+
 
-
> ``//`` site branding
+
<h4> Granting New Project Roles</h4>
-
> $local_conf_no_wrap=ON;
+
<p>If you are a project owner and would like to grant commit access to someone who wants to help out with your project, send email to <em>feedback at mozdev dot org</em> with the name of your project and the name and email address of the person to give access to. When submitting a request for access also include the role you would like to grant. There are two roles that allow commit access -- Committer and Project Owner. The only difference between these two roles is administrative. Someone with commit access will not be allowed to request changes to the project, but anyone listed as a project owner will be.</p>
-
+
 
-
Turning site branding off with this method only turns off the mozdev look and feel, but your pages are still being served with some additional wrapping. To completely turn off all wrapping and have your page content stand alone, you can add this switch to local.conf:
+
 
-
+
<h4> Configuration Options for local.conf</h4>
-
> ``//`` serve it as it is
+
<p>The local.conf file is a configuration file for customising how your project content is presented. Please see the full <a href="http://www.mozdev.org/docs/localconf.html">list of configuration options</a> for all of the details.</p>
-
> $local_conf_serve_as_is=ON;
+
 
-
+
 
-
If you choose to turn off the default branding on your project, please include a [http://www.mozdev.org/community/logos.html logo] somewhere on your site with a link to www.mozdev.org.
+
<h4> Branding Options</h4>
-
+
<p>The pages you create for your project are wrapped with mozdev's branding and navigation by default. This means that there will be HTML that is added to the files in your www/ directory when they are displayed on the site. The wrappers include both beginning and ending &lt;html&gt;, &lt;head&gt;, &lt;title&gt; and &lt;body&gt; tags. To avoid causing any conflicts it is recommended that you don't include these tags in the web pages you add to your project.</p>
-
++++ Header Insert
+
 
-
+
<p>There are a number of ways to alter the branding that is wrapped around your project pages by default. To display any page without any of the branding, the simplest way to do this is to include no_wrap in the URL for that page. For example, to see the Roadmap page without the branding use this URL:</p>
-
It is not possible to directly edit the contents of the <head> tag in your project's HTML. It is possible to include custom header content though by using the head.txt file that will be added to the default header content. New projects have a basic file in the main www directory that includes a reference to a default stylesheet:
+
 
-
+
<p><a href="http://www.mozdev.org/no_wrap/resources/roadmap.html">http://www.mozdev.org/no_wrap/resources/roadmap.html</a></p>
-
> ``<``link rel="stylesheet" href="project.css"``>``
+
 
-
+
<p>You can also edit the local.conf file to toggle different branding options. To turn the branding off you can modify the $local_conf_no_wrap variable by making the following change in local.conf:</p>
-
This file can be edited however you like. Some examples of things to add include:
+
 
-
+
<blockquote>// site branding<br />
-
* Meta tags
+
$local_conf_no_wrap=ON; </blockquote>
-
> ``<``meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"``>``
+
<p>Turning site branding off with this method only turns off the mozdev look and feel, but your pages are still being served with some additional wrapping. To completely turn off all wrapping and have your page content stand alone, you can add this switch to local.conf:</p>
-
* Links to custom stylesheets and javascript code
+
 
-
* Favicon image to your URL
+
<blockquote>// serve it as it is<br />
-
> ``<``link rel="icon" href=``"http://www.mozdev.org/sharedimages/mozdev-icon.png"`` type="image/png"``>``
+
$local_conf_serve_as_is=ON; </blockquote>
-
* Change the title of your pages
+
<p>If you choose to turn off the default branding on your project, please include a <a href="http://www.mozdev.org/community/logos.html">logo</a> somewhere on your site with a link to www.mozdev.org.</p>
-
> ``<``title``>``My Great Project``<``/title``>``
+
 
-
+
 
-
You can add a number of different head.txt files in your project's directories. If you include this file in a subdirectory it will be used instead of any files used in higher level directories. If you leave this file out of any subdirectories the file in the top level www directory will be used.
+
<h4> Header Insert</h4>
-
+
<p>It is not possible to directly edit the contents of the tag in your project's HTML. It is possible to include custom header content though by using the head.txt file that will be added to the default header content. New projects have a basic file in the main www directory that includes a reference to a default stylesheet:</p>
-
Should you have sub-subdirectories [project/www/subdir/subsubdir/] , and there is a head.txt for their parent directory, and the sub-subdirectories themselves lack a head.txt, that head.txt [project/www/subdir/head.txt], if it exists, will be used before the top-level head.txt [project/www/head.txt].
+
 
-
+
<blockquote>&lt;link rel=&quot;stylesheet&quot; href=&quot;project.css&quot;&gt; </blockquote>
-
++++ PHP Usage
+
<p>This file can be edited however you like. Some examples of things to add include:</p>
-
+
 
-
Certain web pages served from Mozdev.org are parsed through PHP. Pages parsed by PHP include:
+
<ul>
-
* ending in {{.html}} are included in Mozdev's template system
+
<li>Meta tags</li>
-
* ending in {{.php}} are not passed through Mozdev's template system
+
</ul>
-
* {{head.txt}} modifies content in the ``<``head/``>`` tag for {{.html}} pages
+
 
-
* {{local.conf}} modifies configuration and is parsed before {{.html}} pages
+
<blockquote>&lt;meta http-equiv=&quot;Content-Type&quot; content=&quot;text/html; charset=iso-8859-1&quot;&gt; </blockquote>
-
+
<ul>
-
Exceptions: all files under the /protected/ directory are passed through Mozdev's template system, regardless of extension, due to how we perform authentication. {{$local_conf}} variables are still usable here to alter the layout.
+
<li>Links to custom stylesheets and javascript code</li>
-
+
<li>Favicon image to your URL</li>
-
++++ Serving XUL Pages
+
</ul>
-
+
 
-
It is possible to serve up XUL files from your project's site. We are passing XUL files through PHP so you can do server side parsing. PHP by default sends a text/html header to the browser, so for your XUL to work add this line right above the XML tag at the top of your XUL files:
+
<blockquote>&lt;link rel=&quot;icon&quot; href=&quot;http://www.mozdev.org/sharedimages/mozdev-icon.png&quot; type=&quot;image/png&quot;&gt; </blockquote>
-
+
<ul>
-
> ``<``?php header( "Content-type: application/vnd.mozilla.xul+xml" ); ?``>``
+
<li>Change the title of your pages</li>
-
> ``<``?xml version="1.0"?``>``
+
</ul>
-
+
 
-
//Note: Make sure there is no space between the two lines since the XML tag needs to be the on the first line of the file.//
+
<blockquote>&lt;title&gt;My Great Project&lt;/title&gt; </blockquote>
-
+
<p>You can add a number of different head.txt files in your project's directories. If you include this file in a subdirectory it will be used instead of any files used in higher level directories. If you leave this file out of any subdirectories the file in the top level www directory will be used.</p>
-
If you don't want to use php header(), you can edit local.conf to set the correct MIME type for serving XUL from your project. To do this, just add the following line to your local.conf file:
+
 
-
+
<p>Should you have sub-subdirectories [[project/www/subdir/subsubdir/]] , and there is a head.txt for their parent directory, and the sub-subdirectories themselves lack a head.txt, that head.txt [[project/www/subdir/head.txt]], if it exists, will be used before the top-level head.txt [[project/www/head.txt]].</p>
-
> $local_conf_mime_types = ON;
+
 
-
+
 
-
++++ [MozdevDownloadCounters Download Counters]
+
<h4> PHP Usage</h4>
-
+
<p>Certain web pages served from Mozdev.org are parsed through PHP. Pages parsed by PHP include:</p>
-
++++ [MozdevDrupalSetup Using Drupal For Blogs, Forums and Wikis]
+
 
-
+
<ul>
-
++++ Mail/News Gateway
+
<li>ending in <tt>.html</tt> are included in Mozdev's template system</li>
-
+
<li>ending in <tt>.php</tt> are not passed through Mozdev's template system</li>
-
To set up a gateway to keep your project's mailing list and newsgroups in sync, you just need to follow these steps:
+
<li><tt>head.txt</tt> modifies content in the &lt;head/&gt; tag for <tt>.html</tt> pages</li>
-
+
<li><tt>local.conf</tt> modifies configuration and is parsed before <tt>.html</tt> pages</li>
-
* Log into the admin section for your project's list. The link to the admin page should be on your project's list.html page.
+
</ul>
-
* Go to the Mail<->News gateways configuration page.
+
 
-
* Set the "The Internet address of the machine your News server is running on" option to news
+
<p>Exceptions: all files under the /protected/ directory are passed through Mozdev's template system, regardless of extension, due to how we perform authentication. <tt>$local_conf</tt> variables are still usable here to alter the layout.</p>
-
* Set the "The name of the Usenet group to gateway to and/or from" option to public.mozdev.YOUR_PROJECT_NAME
+
 
-
* Set the "Should new posts to the mailing list be sent to the newsgroup?" option to Yes
+
 
-
* Set the "Should new posts to the newsgroup be sent to the mailing list?" option to Yes
+
<h4> Serving XUL Pages</h4>
-
* Set the "The moderation policy of the newsgroup" option to either None or Moderated
+
<p>It is possible to serve up XUL files from your project's site. We are passing XUL files through PHP so you can do server side parsing. PHP by default sends a text/html header to the browser, so for your XUL to work add this line right above the XML tag at the top of your XUL files:</p>
-
+
 
-
//Note: In order to access newsgroups on mozdev, you will need to provide a global userrname and password -- mozdev/maduser. This authentication applies to every public mozdev newsgroup. This is an effort to help reduce spam and is not intended to keep out any users interested in discussing projects hosted on the site.//
+
<blockquote>&lt;?php header( &quot;Content-type: application/vnd.mozilla.xul+xml&quot; ); ?&gt;<br />
-
+
&lt;?xml version=&quot;1.0&quot;?&gt; </blockquote>
-
++++ Setting Up Bugzilla
+
<p><em>Note: Make sure there is no space between the two lines since the XML tag needs to be the on the first line of the file.</em></p>
-
+
 
-
Bugzilla is only set up for project owners that request it. If you didn't request Bugzilla at the time your project was created, you may still send us a request at //feedback at mozdev dot org//. Just send us a list of components that you'd like to use (if you're unsure what components to use we'll set you up with a General option and you can add more later). Also feel free to contact us to add new version information to your Bugzilla product.
+
<p>If you don't want to use php header(), you can edit local.conf to set the correct MIME type for serving XUL from your project. To do this, just add the following line to your local.conf file:</p>
-
+
 
-
++++ Managing your Bugzilla product
+
<blockquote>$local_conf_mime_types = ON; </blockquote>
-
+
 
-
If you would like to manage your product in Bugzilla (change components or edit bugs), [https://www.mozdev.org/bugs/enter_bug.cgi?format=mozdev&comment=Project%20Name%3A%0D%0ABugzilla%20Login%3A&component=bugzilla&product=mozdev&short_desc=Setup%20admin%20permissions%20in%20Bugzilla%20for%20PROJECT file a bug] and we will setup the appropriate access for you.
+
<h4> [[MozdevDownloadCounters|Download Counters]]</h4>
-
+
 
-
Once you have been granted permission to manage your product in Bugzilla, the //Edit// menu item will become available in the footer with two options; //Users// and //Products//.
+
<h4> [[MozdevDrupalSetup|Using Drupal For Blogs, Forums and Wikis]]</h4>
-
+
 
-
Under //Users// you can search for users in order to give them permissions to edit your product and bugs.
+
<h4> Mail/News Gateway</h4>
-
+
<p>To set up a gateway to keep your project's mailing list and newsgroups in sync, you just need to follow these steps:</p>
-
Under //Products// you will find your product for you to administer. Click on the name and you will be able to change various configuration values for your product (such as description, number of votes per user, components, versions, or milestones).
+
 
-
+
<ul>
-
++++ RSS Feeds available for use
+
<li>Log into the admin section for your project's list. The link to the admin page should be on your project's list.html page.</li>
-
+
<li>Go to the Mail&lt;-&gt;News gateways configuration page.</li>
-
The following two feeds are available for use by project owners:
+
<li>Set the &quot;The Internet address of the machine your News server is running on&quot; option to news</li>
-
* http://PROJECT.mozdev.org/feed/vcslog
+
<li>Set the &quot;The name of the Usenet group to gateway to and/or from&quot; option to public.mozdev.YOUR_PROJECT_NAME</li>
-
* http://PROJECT.mozdev.org/feed/download_file
+
<li>Set the &quot;Should new posts to the mailing list be sent to the newsgroup?&quot; option to Yes</li>
-
+
<li>Set the &quot;Should new posts to the newsgroup be sent to the mailing list?&quot; option to Yes</li>
-
The VCS log RSS feed shows recent commits, the log message, and files changed for all currently active VCSes (such as CVS, Mercurial, or SVN).
+
<li>Set the &quot;The moderation policy of the newsgroup&quot; option to either None or Moderated</li>
-
+
</ul>
-
The download files RSS feed shows recently updated downloads. There is a four-hour delay on new files showing up by default to allow them time to be propagated to mirrors.
+
 
-
+
<p><em>Note: In order to access newsgroups on mozdev, you will need to provide a global userrname and password -- mozdev/maduser. This authentication applies to every public mozdev newsgroup. This is an effort to help reduce spam and is not intended to keep out any users interested in discussing projects hosted on the site.</em></p>
-
Links to these RSS feeds are enabled by default for your project.
+
 
-
+
 
-
Whether the feeds are enabled or the links are shown is configured via several $local_conf variables. Please see the [http://www.mozdev.org/docs/localconf.html full list of configuration options] for details.
+
<h4> Setting Up Bugzilla</h4>
-
+
<p>Bugzilla is only set up for project owners that request it. If you didn't request Bugzilla at the time your project was created, you may still send us a request at <em>feedback at mozdev dot org</em>. Just send us a list of components that you'd like to use (if you're unsure what components to use we'll set you up with a General option and you can add more later). Also feel free to contact us to add new version information to your Bugzilla product.</p>
-
++++ [MozdevProjectTagging Project Tags]
+
 
-
+
 
-
++++ [MozdevListAdminTips List Administration Tips]
+
<h4> Managing your Bugzilla product</h4>
-
+
<p>If you would like to manage your product in Bugzilla (change components or edit bugs), <a href="https://www.mozdev.org/bugs/enter_bug.cgi?format=mozdev&amp;comment=Project%20Name%3A%0D%0ABugzilla%20Login%3A&amp;component=bugzilla&amp;product=mozdev&amp;short_desc=Setup%20admin%20permissions%20in%20Bugzilla%20for%20PROJECT">file a bug</a> and we will setup the appropriate access for you.</p>
-
++++ [MozdevDownloadReleases Releasing Files on Mozdev.org (secure installation and update information)]
+
 
-
+
<p>Once you have been granted permission to manage your product in Bugzilla, the <em>Edit</em> menu item will become available in the footer with two options; <em>Users</em> and <em>Products</em>.</p>
-
++++ [MozdevCVSTipsTroubleshooting CVS Tips Troubleshooting]
+
 
-
+
<p>Under <em>Users</em> you can search for users in order to give them permissions to edit your product and bugs.</p>
-
++++ [MozdevMercurial Mercurial at Mozdev]
+
 
-
+
<p>Under <em>Products</em> you will find your product for you to administer. Click on the name and you will be able to change various configuration values for your product (such as description, number of votes per user, components, versions, or milestones).</p>
-
++++ Notification of Outages
+
 
-
+
 
-
Any outage experienced by Mozdev.org will be broadcast on [http://planet.mozilla.org Planet Mozilla] by Mozdev.org's staff. Planet Mozilla has syndication feeds in several formats that you can subscribe to in order to be updated as events occur.
+
<h4> RSS Feeds available for use</h4>
-
+
<p>The following two feeds are available for use by project owners:</p>
-
++++ [MozdevDatabaseAccess Database Access]
+
 
-
+
<ul>
-
++++ EditInPlace
+
<li><a href="http://PROJECT.mozdev.org/feed/vcslog">http://PROJECT.mozdev.org/feed/vcslog</a></li>
-
+
<li><a href="http://PROJECT.mozdev.org/feed/download_file">http://PROJECT.mozdev.org/feed/download_file</a></li>
-
++++ Documentation Needed
+
</ul>
-
+
 
-
These docs don't cover all issues relevant to users of mozdev.org. Please feel free to add or expand a section in the documentation above or add a note about other topics that should be included in the documentation. The following topics should be added to the docs:
+
<p>The VCS log RSS feed shows recent commits, the log message, and files changed for all currently active VCSes (such as CVS, Mercurial, or SVN).</p>
-
+
 
-
* Original Notes system ([http://www.mozdev.org/docs/notes.html old docs])
+
<p>The download files RSS feed shows recently updated downloads. There is a four-hour delay on new files showing up by default to allow them time to be propagated to mirrors.</p>
-
* Including Bugs on a page ([http://www.mozdev.org/docs/bugs.html old docs])
+
 
-
+
<p>Links to these RSS feeds are enabled by default for your project.</p>
  +
 
  +
<p>Whether the feeds are enabled or the links are shown is configured via several $local_conf variables. Please see the <a href="http://www.mozdev.org/docs/localconf.html">full list of configuration options</a> for details.</p>
  +
 
  +
 
  +
<h4> [[MozdevProjectTagging|Project Tags]]</h4>
  +
 
  +
<h4> [[MozdevListAdminTips|List Administration Tips]]</h4>
  +
 
  +
<h4> [[MozdevDownloadReleases|Releasing Files on Mozdev.org (secure installation and update information)]]</h4>
  +
 
  +
<h4> [[MozdevCVSTipsTroubleshooting|CVS Tips Troubleshooting]]</h4>
  +
 
  +
<h4> [[MozdevMercurial|Mercurial at Mozdev]]</h4>
  +
 
  +
<h4> Notification of Outages</h4>
  +
<p>Any outage experienced by Mozdev.org will be broadcast on <a href="http://planet.mozilla.org">Planet Mozilla</a> by Mozdev.org's staff. Planet Mozilla has syndication feeds in several formats that you can subscribe to in order to be updated as events occur.</p>
  +
 
  +
 
  +
<h4> [[MozdevDatabaseAccess|Database Access]]</h4>
  +
 
  +
<h4> [[EditInPlace|Edit in Place]]</h4>
  +
<p>This feature allows you to edit your web page directly from the browser.</p>
  +
 
  +
 
  +
<h4> Documentation Needed</h4>
  +
<p>These docs don't cover all issues relevant to users of mozdev.org. Please feel free to add or expand a section in the documentation above or add a note about other topics that should be included in the documentation. The following topics should be added to the docs:</p>
  +
 
  +
<ul>
  +
<li>Original Notes system (<a href="http://www.mozdev.org/docs/notes.html">old docs</a>)</li>
  +
<li>Including Bugs on a page (<a href="http://www.mozdev.org/docs/bugs.html">old docs</a>)</li>
  +
</ul>
  +
 
 
 
Revision of Wed, 07/08/2009 - 13:36:

MozdevDocs

This documentation will help you get started using your project on mozdev. These instructions are kept in a wiki, so please feel free to update, correct or add any information that will be helpful to other users. For reference the original docs are still available, but they are also very out-of-date.

Table of Contents [hide]

Adding, Editing and Deleting Content

CVS is used to edit, update and add all source and content on mozdev.org, including a project's web pages. Web pages are contained in the www/ directory for each project, so to start making changes to your pages you first need to check out your project from CVS.

CVS is also used to take down a page from your site. Files removed in CVS are moved into an area called the Attic and are not deleted from the repository. This is done because CVS needs to keep a full history of all versions of all files in case an earlier version of a file needs to be brought back at some point. Removed pages may not be linked to from your site anymore, but they will still be available online by browsing through your project's Attic using CVSweb. This means that a file removed from your site can still be found through a Google search, for instance.

Command-line Client

Using a command line CVS client, you would do the following:

cvs -d :pserver:USERNAME@mozdev.org:/cvs login
cvs -d :pserver:USERNAME@mozdev.org:/cvs co PROJECTNAME

Note: The CVS commands above are for use with command line CVS clients. There are Windows and Macintosh CVS programs (such as WinCVS and TortoiseCVS for Windows and MacCVS and MacCVSClient for the Mac) that provide a graphical front end for CVS. For more information about using CVS on mozdev, please see John Haller's CVS Setup guide.

Tortoise CVS

Here is a screenshot showing how to configure TortoiseCVS 1.10.4 to retrieve a project from mozdev:

1

When the checkout is complete all of the project's contents will be on your computer and the web pages can be found at PROJECTNAME/www/. For all new projects there are already some Template Start Pages that have been included in this directory, although you are free to add whatever files or directories you want. After modifying files locally, you can commit these changes back to your project and they will show up on the site.

Eclipse IDE

Here are instructions on how to configure Eclipse IDE 3.4.1 to retrieve a project from mozdev:

Create a new project by pressing ctrl+N or File->New Project->Projects from CVS:

2

Enter the following information into the next dialog, substituting your name and password with the one in the screenshot:

3

In the next dialog, enter your PROJECTNAME:

4

Finally, select a name for the local Eclipse project. This name can be the same as the mozdev project name or something else, if you prefer:

5

Click the "finish" button to continue.

When the checkout is complete all of the project's contents will be on your computer and the web pages can be found at PROJECTNAME/www/. For all new projects there are already some Template Start Pages that have been included in this directory, although you are free to add whatever files or directories you want. After modifying files locally, you can commit these changes back to your project and they will show up on the site.

Changing CVS Password

You may change your CVS password by going to the Password Change form.

Note: This form only updates your CVS password. To update your password for one of the mailing lists, please go to http://www.mozdev.org/mailman/listinfo/LIST_NAME or contact us at feedback at mozdev dot org. To update your Bugzilla password, log in to Bugzilla and go to user preferences.

Default Template Pages

All new projects come with some default template pages that you can edit to get your project started quickly. These templates are designed to use valid HTML and CSS and have been optimized to display best in standards-compliant browsers. HTML and CSS compliance is optional though and you are free to replace any of these files or edit them however you want.

The default templates include:

  • project_nav.html: This file contains the project navigation that will be included on all pages for your project.
  • head.txt: This file will allow you to make additions to the tag that is included by default in the site branding code.
  • local.conf: This file allows you to set a number of different variables that will allow you to configure your project. Any $local_conf_ variable changes should be inside <?php and ?>
  • bugs.html: This file adds a dynamically updated 'Latest bugs filed' list to the bottom of the page.
  • source.html: This file adds a dynamically updated 'Today's CVS commits' list to the bottom of the page.
  • members.html: This file lists each person who has CVS access to a project and what role they have been assigned.

Posting Files to the Download Mirrors

When you are ready to post a version of your project for download or installation, you will need to copy the release file to your downloads directory. All download files (xpi, zip, gzip, tar, etc.) should live only in the downloads directory. Newly checked in (or changed) release files are scheduled for copying to the mirror servers. It can be as quick as the top of the next hour, yet with some servers you may see a delay of up to 8 hours.

Once your files are copied over they will be available at http://downloads.mozdev.org/PROJECTNAME/. In other words, if you project were called gil, and you placed a copy of release.xpi in your downloads directory, it would be available at http://downloads.mozdev.org/gil/release.xpi.

To most effectively use the download mirrors, we ask that you post your download file several hours (at least 4 hours) before your announce your new file or post an updated updates.rdf file. This will ensure that your new file has a chance to be distributed to as many mirrors as possible.

For more information about how to provide secure updates to their users, see this documentation. For more information about the download mirrors or about how to become a mozdev.org mirror, visit the mirrors project.

Announcing Your Project

Once you've built out your project, there are a several ways for people to find out about what you've been working on. Your project is automatically publicized on the site in a number of places:

  • The Active Project list shows all projects that have had some activity within the last 180 days. Before you update your project it will show up on the Unstarted Projects list and if you stop working on a project it will show up on the Inactive Projects list.
  • The 5 most recent additions to the Active Projects list will show up on the mozdev hom page in the New Projects section and the 5 projects that have had CVS activity will show up on the home page in the Last Updated section.
  • The Top 50 Projects list shows the most the most viewed projects on the site.

Granting New Project Roles

If you are a project owner and would like to grant commit access to someone who wants to help out with your project, send email to feedback at mozdev dot org with the name of your project and the name and email address of the person to give access to. When submitting a request for access also include the role you would like to grant. There are two roles that allow commit access -- Committer and Project Owner. The only difference between these two roles is administrative. Someone with commit access will not be allowed to request changes to the project, but anyone listed as a project owner will be.

Configuration Options for local.conf

The local.conf file is a configuration file for customising how your project content is presented. Please see the full list of configuration options for all of the details.

Branding Options

The pages you create for your project are wrapped with mozdev's branding and navigation by default. This means that there will be HTML that is added to the files in your www/ directory when they are displayed on the site. The wrappers include both beginning and ending <html>, <head>, <title> and <body> tags. To avoid causing any conflicts it is recommended that you don't include these tags in the web pages you add to your project.

There are a number of ways to alter the branding that is wrapped around your project pages by default. To display any page without any of the branding, the simplest way to do this is to include no_wrap in the URL for that page. For example, to see the Roadmap page without the branding use this URL:

http://www.mozdev.org/no_wrap/resources/roadmap.html

You can also edit the local.conf file to toggle different branding options. To turn the branding off you can modify the $local_conf_no_wrap variable by making the following change in local.conf:

// site branding
$local_conf_no_wrap=ON;

Turning site branding off with this method only turns off the mozdev look and feel, but your pages are still being served with some additional wrapping. To completely turn off all wrapping and have your page content stand alone, you can add this switch to local.conf:

// serve it as it is
$local_conf_serve_as_is=ON;

If you choose to turn off the default branding on your project, please include a logo somewhere on your site with a link to www.mozdev.org.

Header Insert

It is not possible to directly edit the contents of the tag in your project's HTML. It is possible to include custom header content though by using the head.txt file that will be added to the default header content. New projects have a basic file in the main www directory that includes a reference to a default stylesheet:

<link rel="stylesheet" href="project.css">

This file can be edited however you like. Some examples of things to add include:

  • Meta tags

<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">

  • Links to custom stylesheets and javascript code
  • Favicon image to your URL

<link rel="icon" href="http://www.mozdev.org/sharedimages/mozdev-icon.png" type="image/png">

  • Change the title of your pages

<title>My Great Project</title>

You can add a number of different head.txt files in your project's directories. If you include this file in a subdirectory it will be used instead of any files used in higher level directories. If you leave this file out of any subdirectories the file in the top level www directory will be used.

Should you have sub-subdirectories project/www/subdir/subsubdir/ , and there is a head.txt for their parent directory, and the sub-subdirectories themselves lack a head.txt, that head.txt project/www/subdir/head.txt, if it exists, will be used before the top-level head.txt project/www/head.txt.

PHP Usage

Certain web pages served from Mozdev.org are parsed through PHP. Pages parsed by PHP include:

  • ending in .html are included in Mozdev's template system
  • ending in .php are not passed through Mozdev's template system
  • head.txt modifies content in the <head/> tag for .html pages
  • local.conf modifies configuration and is parsed before .html pages

Exceptions: all files under the /protected/ directory are passed through Mozdev's template system, regardless of extension, due to how we perform authentication. $local_conf variables are still usable here to alter the layout.

Serving XUL Pages

It is possible to serve up XUL files from your project's site. We are passing XUL files through PHP so you can do server side parsing. PHP by default sends a text/html header to the browser, so for your XUL to work add this line right above the XML tag at the top of your XUL files:

<?php header( "Content-type: application/vnd.mozilla.xul+xml" ); ?>
<?xml version="1.0"?>

Note: Make sure there is no space between the two lines since the XML tag needs to be the on the first line of the file.

If you don't want to use php header(), you can edit local.conf to set the correct MIME type for serving XUL from your project. To do this, just add the following line to your local.conf file:

$local_conf_mime_types = ON;

Download Counters

Using Drupal For Blogs, Forums and Wikis

Mail/News Gateway

To set up a gateway to keep your project's mailing list and newsgroups in sync, you just need to follow these steps:

  • Log into the admin section for your project's list. The link to the admin page should be on your project's list.html page.
  • Go to the Mail<->News gateways configuration page.
  • Set the "The Internet address of the machine your News server is running on" option to news
  • Set the "The name of the Usenet group to gateway to and/or from" option to public.mozdev.YOUR_PROJECT_NAME
  • Set the "Should new posts to the mailing list be sent to the newsgroup?" option to Yes
  • Set the "Should new posts to the newsgroup be sent to the mailing list?" option to Yes
  • Set the "The moderation policy of the newsgroup" option to either None or Moderated

Note: In order to access newsgroups on mozdev, you will need to provide a global userrname and password -- mozdev/maduser. This authentication applies to every public mozdev newsgroup. This is an effort to help reduce spam and is not intended to keep out any users interested in discussing projects hosted on the site.

Setting Up Bugzilla

Bugzilla is only set up for project owners that request it. If you didn't request Bugzilla at the time your project was created, you may still send us a request at feedback at mozdev dot org. Just send us a list of components that you'd like to use (if you're unsure what components to use we'll set you up with a General option and you can add more later). Also feel free to contact us to add new version information to your Bugzilla product.

Managing your Bugzilla product

If you would like to manage your product in Bugzilla (change components or edit bugs), file a bug and we will setup the appropriate access for you.

Once you have been granted permission to manage your product in Bugzilla, the Edit menu item will become available in the footer with two options; Users and Products.

Under Users you can search for users in order to give them permissions to edit your product and bugs.

Under Products you will find your product for you to administer. Click on the name and you will be able to change various configuration values for your product (such as description, number of votes per user, components, versions, or milestones).

RSS Feeds available for use

The following two feeds are available for use by project owners:

The VCS log RSS feed shows recent commits, the log message, and files changed for all currently active VCSes (such as CVS, Mercurial, or SVN).

The download files RSS feed shows recently updated downloads. There is a four-hour delay on new files showing up by default to allow them time to be propagated to mirrors.

Links to these RSS feeds are enabled by default for your project.

Whether the feeds are enabled or the links are shown is configured via several $local_conf variables. Please see the full list of configuration options for details.

Project Tags

List Administration Tips

Releasing Files on Mozdev.org (secure installation and update information)

CVS Tips Troubleshooting

Mercurial at Mozdev

Notification of Outages

Any outage experienced by Mozdev.org will be broadcast on Planet Mozilla by Mozdev.org's staff. Planet Mozilla has syndication feeds in several formats that you can subscribe to in order to be updated as events occur.

Database Access

Edit in Place

This feature allows you to edit your web page directly from the browser.

Documentation Needed

These docs don't cover all issues relevant to users of mozdev.org. Please feel free to add or expand a section in the documentation above or add a note about other topics that should be included in the documentation. The following topics should be added to the docs:

AttachmentSize
eclipse-co-1.png45.26 KB
eclipse-co-2.PNG44.05 KB
eclipse-co-3.png37.95 KB
eclipse-co-4.png43.17 KB