Features: A-Z Index

A

Administration Zone

Administration Zone

B

Banners

Banners

C

Calendar

Calendar

Catalogues

Catalogues

Chatrooms and IM

Chatrooms and IM

Community features

Community features

Content Sharing

Content Sharing

Conversr Forums

Conversr Forums

Conversr Topic Polls

Conversr Topic Polls

D

Design without barriers

Design without barriers

Downloads

Downloads

E

Ease of Use

Ease of Use

eCommerce and Subscriptions

eCommerce and Subscriptions

Extendable

Extendable

F

Featured Content

Featured Content

G

Galleries

Galleries

I

Installation

Installation

Integration

Integration

L

Localisation

Localisation

M

Membership

Membership

N

News and Blogs

News and Blogs

Newsletters

Newsletters

P

Parental Controls

Parental Controls

Performance

Performance

Points

Points

Privacy Tools

Privacy Tools

Q

Quizzes and Surveys

Quizzes and Surveys

R

Rich Media

Rich Media

S

Search Engine Optimisation

Search Engine Optimisation

Searching

Searching

Security

Security

Spam Protection

Spam Protection

Stay on Top

Stay on Top

Structure / Navigation

Structure / Navigation

Support Tickets

Support Tickets

T

Template Programming Language

Template Programming Language

Testing tools

Testing tools

Themeing tools

Themeing tools

Third party integration

Third party integration

W

Warnings / Moderation

Warnings / Moderation

Web Pages

Web Pages

Web standards

Web standards

Website Polls

Website Polls

White-labeling (Debranding)

White-labeling (Debranding)

Wiki+

Wiki+

Newest 10 Entries

Question What are the key classes and utilities provided by Composr Mobile SDK?
Answer CMS SDK provides several classes with utility functions mirroring PHP and Composr APIs, including:
  • CMS_Arrays: Array operations (e.g., implode, explode, list_to_map).
  • CMS_Strings: String manipulation (e.g., strip_tags, html_entity_decode, strpos).
  • CMS_Langs: Localization functions (e.g., do_lang).
  • CMS_Preferences: User preference management.
  • CMS_Timestamps: Timestamp functions (e.g., get_timezoned_date_time, time).
  • CMS_HTTP: Web service interactions (e.g., rawurlencode, json_decode, http_get_contents).
  • CMS_Users: User data and permission checks (e.g., has_page_access, is_staff).
  • CMS_Flow: App flow control (e.g., access_denied, attach_message).
  • CMS_Forms: Form building and management.
  • CMS_Database: SQLite database access and manipulation.
  • CMS_Notification: Push notification handling.
  • CMSNetworkManager: Network request execution and response handling.
Question How do I set up Composr Mobile SDK in my iOS and Android projects?
Answer iOS (Xcode):
  • Create a new project or open an existing one.
  • Add a Prefix Header file (.pch) if you don't have one, following the provided instructions.
  • Add required frameworks to your project's Build Phases.
  • Add the CMS SDK to your project, then remove references to unwanted files.
  • Set the header search path to the CMS SDK folder in build settings.
  • Add a compiler option for the JsonKit library.
  • Import CMS_SDK.h in your .pch file.

Android (Eclipse):
  • Create a new project or open an existing one.
  • Import CMS SDK into your workspace as an Android project.
  • Ensure "Is Library" is checked in the CMS SDK's "Android" properties tab.
  • Add CMS SDK as a dependent library in your project's properties.
  • Clean and rebuild your project.
Question What are some key concepts related to mobile app development with Composr?
Answer Essential concepts include:
  • SDK (Software Development Kit): An API implementation, typically as a library.
  • API (Application Programming Interface): A set of rules for software interaction.
  • JSON (JavaScript Object Notation): A common language for structured data transfer over REST.
  • REST (Representational State Transfer): An architectural style for web services.
  • Push notification: A notification sent to a mobile device.
Question What other approaches exist for mobile integration with Composr?
Answer Other approaches, in various stages of development, include:
  • Tapatalk: A third-party forum app with an official Composr addon, offering a high-quality "out-of-the-box" Composr app experience.
  • Further Composr Mobile SDK development: Plans and issues relating to the SDK's evolution can be found on the Composr tracker, driven by commercial projects and feature sponsorship.
Question What are some of the default endpoints available in the server-side API?
Answer Default endpoints cover various functionalities, including:
  • Account: join, login, lost_password, setup_push_notifications
  • Misc: contact_us
  • Content: commandr_fs

Specific details on parameters and response data for each endpoint can be found in the documentation.
Question How does authentication work with the server-side API?
Answer Authentication is handled automatically using cookies, similar to regular website requests. If cookies are not feasible, the response parameters device_auth_member_id_cn/device_auth_pass_hashed_cn/device_auth_member_id_vl/device_auth_pass_hashed_vl from the login endpoint can be resent as POST parameters in subsequent requests.
Question How do I access the server-side API for my mobile app?
Answer The server-side API can be accessed via HTTP calls to http://yourbaseurl/data/endpoint.php. Results are returned in JSON format. The API utilizes endpoints with a 'hook' name and a 'hook type' categorization. Both REST-style and GET-parameter style requests are supported, with the latter recommended for simplicity.
Question What is the purpose of the Composr Mobile SDK Toolkit?
Answer The Toolkit, part of the composr_mobile_sdk addon, aids in mirroring Composr website resources into a mobile app. It includes tools for generating iOS/Android string resources from language files and exporting theme images in a directory structure suitable for iOS/Android app image assets.
Question How can I obtain Composr Mobile SDK?
Answer The iOS/Android SDK can be found on GitLab at: Composr ecosystem / Composr Mobile SDK · GitLab.

To connect to a Composr site, you will need to install the composr_mobile_sdk addon, which is not bundled. This addon provides scripting to generate app assets from the Composr site.
Question What is Composr Mobile SDK?
Answer Composr Mobile SDK (CMS SDK) is a toolkit designed for experienced iOS and Android developers to build mobile apps that integrate with a Composr-powered website. It offers both Composr-specific integrations and a collection of standalone utilities for building apps, providing a common base between iOS and Android akin to the PHP and Composr APIs, enabling easier code porting while maintaining a native experience.

Top 10 Entries

Question What resources are available to help me navigate these legal and social challenges?
Answer Composr offers various resources, including tutorials on accessibility, staff management, and general website dos and don'ts. You can also consult external resources like the COPPA website and Wikipedia for more in-depth information on specific laws and regulations. Remember that seeking legal counsel may be necessary for complex situations.
Question What are some social considerations for running a website with community features?
Answer Managing a community involves addressing social issues like child protection, free speech, discrimination, and abuse. Establish clear policies on these matters, including content moderation guidelines and procedures for handling feedback. Consider the diverse personalities and potential vulnerabilities of your users.
Question What are my legal responsibilities regarding illegal content posted by users?
Answer While "safe harbor" laws offer some protection, you are still obligated to take down illegal content upon becoming aware of it. Implement measures like content checks, clear rules prohibiting illegal uploads, and liability disclaimers. The level of responsibility varies depending on the severity of the content, from copyright infringement to more serious criminal content.
Question What steps should I take to make my website accessible?
Answer Website accessibility is essential for inclusivity and may be legally required under anti-discrimination laws. Composr is designed to meet high accessibility standards, but you need to maintain this when creating content or modifying templates. Following WCAG guidelines is crucial, and you can find more information in the accessibility tutorial.
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.