Contributors: A-Z Index

A

Name Photograph Title / Role Contributions / Notes
Allen Ellis Image Founder

Original designer for ocPortal

Also conceived and coded the Theme Wizard and Point Store

Son of one of the early inventors of Internet protocols (Usenet, aka Internet newsgroups)

Token non-brit

View

C

Name Photograph Title / Role Contributions / Notes
Chris Graham Image Founder

Original developer of ocPortal, former lead developer of Composr CMS

Masters degree in Computer Science from The University Of Sheffield

Undertaken work for over 15 FTSE-100 companies, as well as many small and mid-sized organisations. Includes a number of banks and major brands.

View
Chris Warburton developer for ocProducts

Made some key contributions to ocPortal

View

H

Name Photograph Title / Role Contributions / Notes
Haydn Maidment project manager for ocProducts

None available

View

J

Name Photograph Title / Role Contributions / Notes
Jim Davidson contributor

written many tutorials via Arvixe

View

P

Name Photograph Title / Role Contributions / Notes
Patrick Schmalstig Image Lead Developer

Joined Chris Graham behind the scenes in the development of Composr CMS in 2016.

Took on the lead developer role in 2023 when Chris Graham stepped back to attend to his new lifestyle changes.

Spearheaded the development of Composr CMS v11 and the new website, Composr.app.

Formed the company PDStig, LLC to take on professional support and development for Composr CMS users especially after the discontinuation of ocProducts, Ltd.

View
Philip Withnall Early Developer

Coded the chatroom, blogging support, the analytics system, and OcCLE (now Commandr)

Masters Degree in Computer Science degree from The University Of Cambridge

Other work has included helping out with Firefox, and ongoing work on GNOME

View

R

Name Photograph Title / Role Contributions / Notes
Robert Goacher Image Founder

Ran some of the early websites where ocPortal came from

Technically the original developer of ocPortal, in that he wrote the first few lines of code

Heavily involved in the feature design process

Hosted some of our early meet-ups

View

S

Name Photograph Title / Role Contributions / Notes
Steve Jarvis project manager for ocProducts

Wrote many tutorials via Arvixe

View

Newest 10 Entries

Question How does scoring work for quizzes with different question types?
Answer
  • Multiple-choice and short answer questions: These are automatically marked based on your defined correct answers.
  • Long answer questions: These require manual marking, resulting in a percentage range being displayed to the user until you assess their response.
  • Unmarked questions: These questions are collected but don't contribute to the overall score, allowing you to include optional or non-scored elements.
Question Can I reward users for completing quizzes?
Answer Yes, you can reward users with points for successfully passing a test. This incentivizes participation and encourages users to engage with your content.
Question How can I implement security measures for my quizzes?
Answer Composr provides several features to enhance quiz security and prevent cheating:
  • Restrict access: Limit quiz participation to specific usergroups or newsletter subscribers.
  • Shuffle content: Randomize question and answer order to make it harder to copy answers.
  • Set time limits: Enforce quiz completion within a specified timeframe.
  • Define open time ranges: Control when the quiz is accessible to participants.
Question How do I create and manage quizzes in Composr?
Answer You can create, edit, and delete quizzes from the Composr Admin Zone:
  • Navigate to Admin Zone (or CMS Zone) > Content > Quizzes.
  • Use the provided interface to define your quiz questions, answer options, and settings.
  • You can manage quiz results and view participant responses under Admin Zone > Audit > Quizzes.
Question What types of quizzes can I create in Composr?
Answer Composr supports three main types of quizzes:
  • Surveys: These quizzes gather information from participants without right or wrong answers, making them ideal for collecting opinions and feedback.
  • Tests: Tests assess knowledge with right and wrong answers and provide immediate feedback to participants, including pass/fail results. They're suitable for evaluating understanding of a topic.
  • Competitions: These quizzes rank participants based on their scores, allowing you to select winners. Competitions are great for engaging users and promoting specific content or events.
Question How does rank work in Conversr?
Answer Conversr utilizes a rank system based on your accumulated rank points. As you earn points, you progress through different usergroups, unlocking new privileges and benefits. Your rank is a status symbol within the community and often grants access to exclusive features or content.

This is subject to your configuration. To make a rank ladder based on points, go to Admin Zone > Security > Usergroups. You are given options regarding ranks when adding or editing a usergroup.

Members can see their rank and progress on their member profile rank tab. They can also see all the rank-based benefits they unlocked and ones yet to unlock in future ranks.
Question What is points escrow and when would I use it?
Answer Points escrow is a system that holds points securely during transactions involving a written agreement, often for a product or service. This ensures trust and provides a resolution mechanism in case of disputes.
  • Creating an Escrow: You initiate an escrow on the member's profile points tab, specifying the amount, reason, and any agreement details.
  • Points Held: The points are deducted from your balance and held by the system.
  • Agreement Fulfillment: Both parties must mark the escrow as satisfied upon fulfilling the agreement.
  • Points Release: Once both parties are satisfied, the recipient receives the points.
  • Disputes: If either party has a dispute, they can dispute the escrow, which then locks it down and notifies a staff member to review and take a resolution action.
Question Can I create a leaderboard to showcase top point earners?
Answer Yes, Composr offers a leaderboard block and module to display top point holders. You can customize the leaderboard to show weekly, monthly, or yearly rankings, filter by usergroups, and exclude staff members if desired. This can encourage healthy competition and motivate members to earn points.

Go to Admin Zone > Setup > Leader-boards to create a leader-board.
Question How can I modify points for members?
Answer Staff members with the "Moderate members' points" privilege can directly credit or debit points from members' accounts. This can be used to reward exceptional contributions, refund purchases, or penalize rule violations.
Question What is the purpose of the points ledger?
Answer The ledger provides a transparent and immutable record of every point transaction on the website. It ensures accountability and allows members to track their point activity. Members can view their own ledger, and with the appropriate privilege, they can also see the ledgers of others.

Top 10 Entries

Question How can I ensure my website complies with email marketing laws?
Answer Email marketing laws like CAN-SPAM protect recipients' rights to unsubscribe. Your website must include a clear 'List-Unsubscribe' header in every email, offer an easy unsubscribe process, and respect unsubscribe requests promptly. Composr provides built-in mechanisms, including an unsubscribe endpoint and support for the List-Unsubscribe header, to facilitate compliance.
Question What are my responsibilities regarding user privacy?
Answer You must have a comprehensive privacy policy that details the personal data you collect, its usage, and if it's shared with third parties. Laws like GDPR have strict requirements, including logging data access, data purging, and security measures. California law mandates specific elements in your policy, like handling "Do Not Track" requests and a clear process for communicating changes.

Composr has an automatic Privacy Policy generator block to help you get started. This is used by default.
Question How can I create effective website rules?
Answer A well-defined rules page is crucial for setting expectations for user behavior and outlining consequences for violations. It should cover a range of offenses with appropriate punishments, reference relevant laws, and assign legal responsibility to users. Composr provides default rules pages that can be customized, and this page is displayed to users upon joining the site.
Question What are the key legal considerations for running a website?
Answer Several legal aspects need careful attention when operating a website, especially for large or corporate sites. These include establishing clear rules and terms of service, adhering to privacy laws like GDPR and California's regulations, managing personal data responsibly, complying with email marketing regulations like CAN-SPAM, ensuring website accessibility, addressing eCommerce regulations, and understanding liability for content and user actions.
Question How do data-tpl and data-view behaviors work in Composr's JavaScript?
Answer Composr uses data-tpl and data-view behaviors for associating HTML templates and JavaScript views, respectively. This facilitates clean separation of presentation and logic:
  • data-tpl: Used with the $cms.behaviors.initializeTemplates function and PARAMS_JSON tempcode directive to bind JavaScript logic to HTML templates.
  • data-view: Used with the $cms.behaviors.initializeViews function to associate JavaScript view classes (inheriting from $cms.View) with specific HTML elements.
Question What are the advantages of using Composr's JavaScript libraries?
Answer Composr's JavaScript libraries like $cms, $util, and $dom offer several advantages:
  • Organization: They provide a structured way to access Composr-specific functionalities, avoiding global namespace pollution.
  • Abstraction: They encapsulate common tasks, simplifying DOM manipulation, form handling, and interaction with Composr's UI.
  • Consistency: They offer a consistent API across different parts of Composr.
Question How does Composr implement the Model-View-Controller (MVC) pattern?
Answer
  • Model/API: The sources directory primarily houses scripts forming the Model/API, handling data logic and business rules.
  • View: Templates in themes/default/templates represent the View, responsible for presenting data to the user. Comcode pages can also be considered part of the View.
  • Controller: Entry scripts like index.php and site/dload.php act as front controllers, directing requests. Modules and blocks, residing in */pages/modules and sources/[mini]blocks, respectively, serve as controllers, managing user interactions and determining which View to render.
Question Can I translate my content into multiple languages?
Answer Yes, Composr supports multi-language content. You can enable this feature by:
  • Installing multiple language packs: Make sure you have at least two language packs installed.
  • Enabling the Conversr multi-language option: Go to Admin Zone > Setup > Configuration > Site options > Internationalisation.
  • Running a Commandr command: Execute the necessary command to set up the database structure for multi-language content (unless you already enabled Support content translations when installing).
Once enabled, you can translate your content into different languages and allow visitors to choose their preferred language.
Question My language uses gendered descriptors. How can I handle this in Composr?
Answer Composr offers solutions for languages with gendered descriptors:
  • Template editing: You can modify templates to use different language strings based on user gender. This involves adding Tempcode logic to dynamically select the appropriate string.
  • Custom Profile Fields: Create a Custom Profile Field for "Gender" and use it to conditionally display gendered language strings in templates.
These methods allow for flexible handling of gendered language variations.
Question What are language strings, and how are they used?
Answer Language strings are phrases or pieces of text used throughout Composr. They're identified by unique codenames, like WELCOME_MESSAGE. These strings are stored in .ini language files and used to display text in the user interface.

By translating language strings, you change the text displayed on your website without modifying the underlying code.