Here is a boilerplate for Drupal 7, for the admin configuration feature of 'mymodule', accessible by the user having the 'administer mymodule' rights, and shows the use of functions variable_get() and system_settings_form()

First, add the admin page entry in the HOOK_menu in your module.php file. This will create a menu item to the administration page we set to "admin/config/system/mymodule". The actual code for the admin page will be in a separated file called mymodule.admin.php. That way, the php for the admin page is only loaded when actually accessing the page, saving ressources on the webserver.

We system_settings_form function takes care or the submit, and the action button, meaning we are done here. We can now use "variable_get('mymodule_something','default value')" in our mymodule module and get what evere value the user set.

On last thing is to delete our variable when uninstalling mymodule with the HOOK_uninstall() in your mymodule.install file

In Drupal 6 and 7, user using the password recovery, or "verify your email" registration process, will receive a mail with a one time login link. Cliking the link will bring them to a one time login form they have to submit.

But a problem appears when you want to plug this with Drupal views , using the Views Datasource module to output the json. Because the Sencha Touch pager will request the next page using a 1 based index, when Views use a 0 based index.

Silvio Gutierrez explains why the default views pager is really bad ( run the query once for data, and an other time to count ..) but also how to very easyli fix this problem with the lite pager module.

Add two tips on how to fix left joins when you do not need it, and avoid distinct in queries, and you are set.