Affiliated Business
Home Building Hosting Promotion Make Money Advanced Tools Homebusiness Resources
Web Programming | CGI & JavaScript | Homebusiness Tools | Payment Processing | Articles On Web Programming   Bookmark |  Tell A Friend  
ONLINE BUSINESS RESOURCES
  Affiliated Buisness Blog
  Affiliate Program      Directory
  Affiliate Marketing      Web2.0 Directory
  e-Commerce Software
  Google AdSence
  Graphic Editors
  InfoProduct MallInfoProduct Mall
  Internet Marketing
  Merchant Account
  Newsletter & e-Zine
  Offshore Incorporation
  Online Site Builder
  Online Store Builder
  Payment Processing
  Search Engines
  Site Templates
  Success Stories
  Web Programming
  Web Directories
  Web Design
  Web Design Software
  Web Marketing Guides &     Tools
  Web Promotion     Strategies
  Webmaster Tools


Designing Your Website For Success

Optimizing your HTML

By David Saharkhiz

Optimizing your HTML documents is a must for professional webmasters, and it has many potential benefits. With a little effort and know-how, you can clean up your HTML files and reap the benefits today.

There are three steps to cleaning up your HTML files while you are coding in HTML.

  • 1) Validate your HTML using the free w3C validation service . Validating your HTML provides cleaner HTML code and prevents search engine bots from innacurately reading your pages. Validated code also eliminates useless tags, and can decrease your document's filesize, eliminating wasted bandwidth.
  • 2) Ensure Compatibility - Try to make your HTML code compatible with as many internet browsers as possible. Right now, the Big Two are Microsoft Internet Explorer (MSIE) and Mozilla Firefox, but it is useful to optimize for older versions of these browsers (many new HTML tags are incompatible with these browsers), as well as other browsers like Opera and Netscape.
  • 3) Eliminate Excessive Whitespace Excessive whitespace is unnessary and keeps your content lower on the page than is necessary. Eliminating excessive whitespace is therefore marginally useful to Search Engine Optimization.

About the Author
David Saharkhiz writes HTML coding tutorials for novice webmasters.

Choosing Conservatory Blinds

By Matthew Anthony

Since conservatories have so many windows, choosing conservatory blinds is extremely important. The blinds are a major part of the room's decor and can really help create a strong, beautiful design. Luckily, there are many wonderful blind styles to choose from.

People choose to use blinds in their conservatories for several reasons. First, even with e-glass, windows let in some heat and sunlight. Since a conservatory is almost all windows, even a small amount of heat coming in each window can really increase the room's temperature to an uncomfortable level. In addition, the sun's rays can damage furniture and fade upholstery over time. People also buy blinds for the conservatory to provide privacy from prying eyes. This is especially important for conservatories facing a busy street, as the feeling of being watched will often cause homeowners to end up spending very little time in the room. Additionally, many homeowners use blinds as design elements to help give the room a finished look.

Before you shop for conservatory blinds, you may want to find out if your windows come in standard sizes. Often, conservatory windows are custom windows, designed to fit perfectly together. Each window needs to be measured and blinds need to be custom made.

Roman blinds are a classic design that is popular for any room in the house. These blinds come in a variety of colors and fabrics and can really help enhance the room's design. However, they do occasionally have problems with pleats not falling back into the original position.

Pleated blinds are made of cloth or special materials that hold the shape of the original pleats. These blinds are a good choice for the conservatory because they are usually neutral in color and go well with any dйcor.

For a rich look that goes well with Rattan furniture, you may want to look at wooden blinds. These blinds are available in a wide range of wood finishes or can be purchased with a painted finish. They are very durable and fall into their original position when drawn up and down.

When you think of roller blinds for the conservatory, you may be thinking of the unattractive white vinyl roller blinds that were common several years ago. However, modern roller blinds are available in a wide range of colors and can have attractive decorative trims. These blinds are popular because you can raise and lower them with a quick tug.

When they are choosing blinds for the conservatory, many home owners forget to look at roof blinds. However, a conservatory with a glass roof can turn into an oven by mid-afternoon without blinds. These blinds are specially designed to be installed across the roof area of the conservatory. Be sure you look for blinds with an automated control system, so you do not have to manually open and close them.

About the Author
Matthew Anthony has contributed to many home improvement sites such as conservatories and conservatory blinds.

The meta tag and the art of redirection

By Ben Gordon

There are many occasions when you wish to display your URL in the form yourdomain/display.html but would like, instead, to direct visitors to another URL, say some-other-domain/best-mouse-trap.html.

For example, you are promoting an affiliate program with URL your-merchant-URL/sales-page/your-affiliate-code, and you think that the URL is too long, or you want to hide the fact that it is an affiliate link, or you want to prevent people from stealing your affiliate commission, you could use this technique. You could even check how many people have clicked on your affiliate link, by checking the number of clicks of the displayed URL before it is redirected, from your Web site log.

Here is another example. You are using a tracking software, or a tracking company, to track your advertisement. Usually, the tracking URL will be of the form your-tracking-URL/.../tracking-?blah-blah or tracking-company-URL/.../tracking-?blah-blah. You want to use your own domain name or you do not want others know that you are tracking the ad. You could use the URL your-URL/your-sales-description which redirects visitors to the tracking URL.

Knowledge of technique of redirecting URL will give you a lot of, among other benefits, flexibility. Here is how to do it with META tag...

Create the page, "display.html," with the following META tag between the HEAD and /HEAD tags in the HTML codes...

< meta http-equiv = "refresh" content = "0; URL = some-other-URL/best-mouse-trap.html"> without any other content (if you wish, you could include the title "World's Best Mouse Trap" between the < title> and < /title> tags, to show that this page is about mouse trap).

Note: please remove the space between the < and the rest of the tag contents it is place here only so the code would appear correct regardless of how or where this story was printed.

Upload the page "display.html" to the root directory of your Web site. With that, when visitors click on the link your-URL/display.html, they will be redirected to some-other-URL/best-mouse-trap.html.

Please note that for the URL some-other-URL/best-mouse-trap.html in the above META tag, and other URLs through out the rest of the article, you should include the "http" protocol which have been omitted.

The following variation of the above method will give you a neater way of displaying your URL, namely, without using the".html" extension in your displayed URL...

First create a sub-directory, say "best-mouse-trap" in the root directory at your Web site. Instead of naming the Web page created above as display.html, name it as index.html. Upload this"index.html" file into the sub-directory "best-mouse-trap". Then, when your visitors click on the URL your-URL/best-mouse-trap they will be redirected to some-other-URL/best-mouse-trap.html.


About the Author
Ben Gordon currently writes at several web coding/development forums and lists, including one he co-owns with other members of a web development team at http://webxpertz.net/forums . He is presently promoting a new reprint article directory http://articles.webxpertz.net/content/ to assist webmasters with the difficult task of finding fresh content for their websites.

Microsoft CRM Customization programming email activity attachment

By Boris Makushkin

Microsoft CRM is now on the scene and it is increasing its market share, due to Microsoft Business Solutions muscles and marketing strategy. It is tightly integrated with other Microsoft Business Solutions products such as Microsoft Great Plains, Solomon, Navision. Being relatively inexpensive in comparison to competitors, like Siebel, Oracle - Microsoft CRM opens you the door for worldwide operations automation. In this small article we would like to give you, software developer, some hints on Microsoft CRM customization.
Today's topic is Activity of email type programming - you usually deal with these customizations when you improve Microsoft Exchange CRM connector. How do you create email attachment - this is the main discussion topic. We'll use C#.Net.

In Exchange handler/event sink you create Activity of email type in MS CRM and one of the tasks is transfer the attachment(s) from the body of the incoming email to the attachment(s) in the Activity. You can realize it through direct access to Microsoft CRM DB. Let's see C# code:
1. First we are getting access to the letter via ExOLEDB:

CDO.Message iMessage = new CDO.MessageClass();
CDO.IBodyPart iPrt;

iMessage.DataSource.Open(bstrURLItem, null, ADODB.ConnectModeEnum.adModeRead,

ADODB.RecordCreateOptionsEnum.adFailIfNotExists, ADODB.RecordOpenOptionsEnum.adOpenSource, "", "");

2. Next we come through the attachment list, get their names and save their bodies into temporary catalogue:

for(int i = 1; i <= aNum; i++) {
string fName = iMessage.Attachments[i].FileName;
string eName = fName.Substring(fName.Length-3, 3).ToUpper();

log.Debug("Attachment: " + fName);

iPrt = iMessage.Attachments[i];
string attName = Path.GetTempPath() + fName;
iPrt.SaveToFile(attName);

attachments.Add(Guid.NewGuid(), attName);

iPrt = null;
}

3. Then we cycle through the cache, containing attachments info and add them to the Activity created:

if (attachments != null) {
ICollection keys = attachments.Keys;
int attCounter = 0;

foreach (Guid o in keys) {
string attName = (string)(attachments[o]);

crmConnector.AddAttachmentToActivity(emailId, attName, (new FileInfo(attName)).Length, attCounter);

File.Delete(attName);
attCounter++;
}
}

4. Here is the method of adding attachment to Activity:

public Guid AddAttachmentToActivity(Guid emailId, string filename, long filesize, int attachmentNumber) {
try {
log.Debug("Prepare for Mail Activity Attachment Creating");

// BizUser proxy object
Microsoft.Crm.Platform.Proxy.BizUser bizUser = new Microsoft.Crm.Platform.Proxy.BizUser();

ICredentials credentials = new NetworkCredential(sysUserId, sysPassword, sysDomain);

bizUser.Url = crmDir + "BizUser.srf";
bizUser.Credentials = credentials;
Microsoft.Crm.Platform.Proxy.CUserAuth userAuth = bizUser.WhoAmI();

// CRMActivityAttachment proxy object
Microsoft.Crm.Platform.Proxy.CRMActivityAttachment activityAttachment = new Microsoft.Crm.Platform.Proxy.CRMActivityAttachment();
activityAttachment.Credentials = credentials;
activityAttachment.Url = crmDir + "CRMActivityAttachment.srf";

// Set up the XML string for the activity attachment
string strXml = "<activitymimeattachment>";
strXml += "<subject>Activity 1</subject>";
strXml += "<attachmentnumber>" + attachmentNumber + "</attachmentnumber>";
strXml += "<activityid>" + emailId.ToString("B") + "</activityid>";
strXml += "</activitymimeattachment>";

// Create the activity attachment
Guid attachmentId = new Guid(activityAttachment.Create(userAuth, strXml));
log.Debug("Create Attachemnt ID: " + attachmentId.ToString("B"));

UploadFileToDB(attachmentId, filename, filesize);

return attachmentId;
}
catch (System.Web.Services.Protocols.SoapException e) {
log.Debug("ErrorMessage: " + e.Message + " " + e.Detail.OuterXml + " Source: " + e.Source);
}
catch (Exception e) {
log.Debug(e.Message + "\r\n" + e.StackTrace);
}

return new Guid();
}

5. Main problem, however is attachment body adding to MS CRM database. Main requirement is attachment must be encoded as BASE64 stream and its length must be specified correctly together with Nine Type and file name of the file it will be knows as an attachment in activity. Let's look at the C# code:

public void UploadFileToDB(Guid attachmentId, string filename, long filesize) {
string contentType = "application/octet-stream";

try {
Hashtable mimes = LoadMimeDB(Environment.SystemDirectory + "/Albaspectrum/ContentType.txt");

if (mimes != null) {
string tmpContentType = GetMimeType(mimes, filename);

if (tmpContentType != null && !tmpContentType.Equals(""))
contentType = tmpContentType;
}

byte[] memoryData = new byte[filesize];

FileStream fs = new FileStream(filename, FileMode.Open, FileAccess.Read);
BinaryReader reader = new BinaryReader(fs);

reader.Read(memoryData, 0, (int)filesize);

reader.Close();
fs.Close();

OleDbCommand command = conn.CreateCommand();

command.CommandText = "UPDATE ActivityMimeAttachment SET FileSize = (?), MimeType = (?), FileName = (?), Body = (?) WHERE ActivityMimeAttachmentId = (?)";
command.Prepare();
command.Parameters.Add(new OleDbParameter("FileSize", filesize));
command.Parameters.Add(new OleDbParameter("MimeType", contentType));
command.Parameters.Add(new OleDbParameter("FileName", new FileInfo(filename).Name));
command.Parameters.Add(new OleDbParameter("Body", Convert.ToBase64String(memoryData, 0, (int)filesize)));
command.Parameters.Add(new OleDbParameter("ActivityMimeAttachmentId", attachmentId));

log.Debug("Prepare to upload attachemnt " + attachmentId.ToString("B") + " in ActivityMimeAttachment");

command.ExecuteNonQuery();

memoryData = null;
}
catch (Exception e) {
log.Debug(e.Message + "\r\n" + e.StackTrace);
}
}

6. File ContectType.txt is matching list of the files extensions and their mime-type in the following format:

asc application/pgp-encrypted Armored Encrypted file (PGP)
asd application/astound Autosave file (Word for Windows)
asm PC ASM File
asn application/astound

etc.

Happy customizing, implementing and modifying! If you want us to do the job - give us a call 1-866-528-0577! [email protected]

About the Author
Boris Makushkin is Lead Software Developer in Alba Spectrum Technologies USA nationwide Microsoft CRM, Microsoft Great Plains customization company, based in Chicago, Boston, San Francisco, San Diego, Los Angeles, Houston, Dallas, Atlanta, Miami, Montreal, Toronto, Vancouver, Moscow and Europe and internationally ( http://www.albaspectrum.com ), he is Microsoft CRM SDK, C#, VB.Net, SQL, Oracle, Unix developer.

 

AddThis Social Bookmark Button


 
INTERNET MARKETING TOOLS

Web site Top Affiliated-Business.com: The art of making money online... Web site Top
Home | Building | Hosting | Promotion | Make Money | Tools | Homebusiness | Resources | Tell A Friend | Add To Favorities | Link To Us | Partner With Us | Site Map |
About Affiliated-Business.com  |  Privacy Policy  |  Disclaimer  |  Copyright  |  Terms of Service  |  Collection Of Links  |
© 2004-2015 Affiliated-Business.com ® - All rights reserved.