Tutorials/Tips

How to change password in roundcube?

Change Password RoundCube Mail

There is no change password option in roundcube mail. But you can change password outside your roundcube. Select change password option on the same screen you are given the option to select the them, that is gives the option of “Horde”, “RoundCube” and “SquirrelMail”.

 

In some versions of RoundCube, the option of changing password might be available inside the theme itself but you can also change it outside if it is not there.

 

How to troubleshoot PHP critical code using die()

If you are complex issue in PHP and you do not have debugger install or do not want to use debugger, there is an easy way to troubleshoot your code.

Place die(); function right at the point where you want to troublesheet/example values. The program will stop at that point and you see your values.

Example of Using Die

You have a query that is returning unsuspected result. There is no way you can debug the code directly or you can’t output the content because the page redirects. In this case use die();

The execution will stop at this point and you can examine your query.

connection string to local aspnetdb.mdf

This is connection string to your local database in visual studio

Note that this .mdf file does not have a database inside. It is simply data inside the mdf file. Copy the above connection as it is in web.config file.

Install Ajax in Visual Studio 2008

Visual Studio 2008 still rocks which comes bundled with Crystal Reports and Site Configuration if you really want to build an application with roles. Visual Studio 2015 is out and Visual Studio 2013 is commonly used every but both do not have Crystal Reports and they do not come with site configuration.

It is hard to find AjaxToolKit for Visual Studio 2008 so I will provide the links here and provide a quick tutorial so it goes smoothly for you.

  1. Download Ajax for Visual studio 2008 from Codeplex. This will download AjaxControlToolkit-Framework3.5
  2. Unzip it. I had to build this locally to create AjaxControlToolkit.DLL. You can download this DLL AjaxControlToolkitif it works for you. All you need is this DLL.
  3. Create a folder in the project “Ajax”, copy this DLL there
  4. Right click “Standar Toolbox” header and click “Add Tab”. Name this Ajax Controls.
  5. Right click on the new tab, click “Choose items” then Click browse button, and point to your local Ajax folder. Select the AjaxControlToolkit.DLL. Click OK. All controls should be added!

To test your code, create default.asp page and copy and past the following. This should popup the following Ajax Calender dialog.

Hope this tutorial helps someone.

How to remove horizontal separator in MailChimp Template

If you added horizontal separator in your template and then saved it, it might be trouble removing or deleting it. The backspace will not remove the horizontal separator (HR line). The trick is

  1. Insert a line before the HR line if no prior line exists
  2. Similarly insert a line after the HR line
  3. Select the first line and the second line so that it encompasses the HR line. Then delete.

This is just not intuitive and can give trouble to some users, hence documenting here.

Quartz.Net JobListener Example

Download Code – > Quartz_Net_Example

JobListeners in Quartz.NET are kind of event listeners but in t his case they listen to the JOB. They are executed when the job is about to be executed or when the JOB has executed. The following is a simple C# Console Application that demonstrates the concept. The main JOB simply prints a msg that says “Hello, this message is from the JOB”. The listeners also print messages to the console when the job is about to be executed and when the JOB has finished executing.

Note that you will need to download Quartz.NET library to run this example. Simply right click on project, select NUGET Packages, type Quartz and download the very first entry Quartz.NET.

Links: Job Listeners in Quartz.NET

Login timeout expired LinkedServer SQL

I had a database crash, after restoring it my linked queries which were working perfectly fine started to give this error

Login timeout expired

An error has occurred while establishing a connection to the server. When connecting to SQL Server 2005, this failure may be caused by the fact that under the default settings SQL Server does not allow remote connections.

I spent quite a bit of time on it but couldn’t find the cure. Eventually found this stackexchange post  which sort of put me in right direction. The answer says

SQL Agent will use Shared Memory to connect to the local server. The Instances will attempt to use named pipes to talk to each other. You can adjust this by creating an alias in the SQL Server Client Network Utility (cliconfg.exe) and setting the alias to use TCP.

What I did here is run cliconfg.exe, added a server alias and set it to use TCP, I then went to SQL Server Configuration Manager and enabled TCP (which was disabled) and the query ran flawlessly!

No exactly sure if adding alias was required but the issue is not resolved. This is for SQL Server 2005.

How to setup WAMP virtual hosts

In this tutorial, I will be showing how to install WAMP or port 8080 (default port is 80) and how to setup WAMP. For me basically everything went fine. The problem I encountered was when setting up the virtual hosts. Download WAMP here and Install. Use a good text editor such as Sublime Text

1. Navigate to C:\wamp\bin\apache\apache2.4.9\conf\httpd.conf and edit lined no 513, simply remove # sign in front of the line. This will enable virtual hosts

Include conf/extra/httpd-vhosts.conf

2. Navigate to line 240 and change the code as follows (change denied to granted). This will fix the issues you might encounter later when setting up virtual sites.

<Directory />
AllowOverride none
Require all granted
</Directory>

3. Edit Line 62 and 63, change ports to 8080 (default is 80)

Listen 0.0.0.0:8080
Listen [::0]:8080

4.  Now goto C:\wamp\bin\apache\apache2.4.9\conf\extra\httpd-vhosts.conf and edit/copy the following code. Make this file minimal as possible to avoid errors. Remove log files and other dummy email address.

<VirtualHost *:8080>
DocumentRoot “D:/Projects/website”
ServerName localsite
ServerAlias www.localsite
</VirtualHost>

<VirtualHost *:8080>
DocumentRoot “C:/wamp/www”
ServerName localhost
</VirtualHost>

5. Now start WAMP. You can do it from command prompt

net start wampapache

6. Access the site localsite:8080 (do NOT forget the port)

7. Make sure you have made an entry in Windows host file (location: C:\Windows\System32\drivers\etc\host) as such

127.0.0.1       localhost
127.0.0.1         localsite

If you get any error, reply in the comment below