backbone.js load different html - codeigniter

i've been posting alot questions lately on stackoverflow due to my issues i'm facing recently and you guyz have realy helped me alot.
MY Question:
I'm working on backbone.js and i've worked on codeignitor on my project. Now my question is in ci, i can load views directly from ci view and can display dynamic html easily ( working fine for me). problem is i've to shift my js code and functions and ajax calls to backbone.js and i'm pretty much at the start of this project. i'm not clear on how can i show entirely new page html on some events in backbone.
my question Not clear? let me explain further.
Explanation:
i mean i've some an index page and all of things load in this page ( sliders , footers etc etc ). whenever any item is clicked to see the details, ci calls the appropriate methods and gives me the html which displays that product in an entirely new page ( without loading ) with only image of that product and some other options for the product. it's pretty easy with ci, but how can i do this with backbone.js to show up different pages or entirely different html from index page and not showing other stuff of index page.
i can work out how to move and design the logic behind it but i'm not getting the picture of how can i load these different html for different events ( like about button should show about us page, featured category should show featured products all in that main index file.)
I'm really desperate to get some directions.
thnx guyz

I think you were meant to say you want to make single page application.
Yes, backbone best idea to do so. You will required following :
template ( should be inside <script type="text/template"> and </script>)
backbone view
backbone model
backbone router

Related

Does using AJAX on your website drop your page views while ranking?

Since its related to AJAX technology so I thought this is the best place to ask.
I am displaying 5 articles at a time to the user on my website and when he clicks 'Next' I load the next 5 articles using AJAX without loading the entire page.The result is that he always stays at the same page .
One of my friend told me that website ranking depends on number of page views and I think this obviously reduce my page views.
Should I not use AJAX then?
(This might be a stupid question but I seriously have no idea about ranking and SEO so please help)
By loading your content dynamically Google will not see the entire page. Only the part that is loaded. So, if Google rank is important for you it's better to not use an infinity loader.
Actually it is not a good idea to navigate page using AJAX. Consider a scenario,
display 5 articles first then by clicking Next button, next 5 items will load and so on... by using this the page will not become Search engine friendly.
in this case search engine can't locate your contents exactly and will crawl only initial contents.
but with some efforts you can make ajax navigation search engine friendly.. see example here.
Currently the scheme of loading content of page dynamically is not a good idea for SEO friendly web page but try considering other ajax page navigation schemes that might help the page to make dynamic as well as search engine friendly.
some suggested ajax navigation schemes are listed below,
http://nickjohnson.com/b/how-to-make-ajax-search-engine-friendly-seo
http://ajax.rswebanalytics.com/
http://www.symatix.co.uk/articles/ajax/search-engine-friendly-ajax-navigation

Differences between MVC and View First approach in web development

Today when I searched on the internet I saw the View first approach in web development of Lift framework. Can somebody tell me the differences between view first and MVC approach ?
Thank you very much
View first is based not on a model and a controller, but mostly interested in the view. Many problem domains do not neatly compose in controllers and models. Think about a ecommerce site, the shopping cart exists on all pages, but should every controller control it? Personally in MVC too much of my time is spent thinking about how to logically make the problem fit into MVC than just coding. View first takes away this controller / view / model and instead just has a view which in Lift can call "snippets". It is almost a superset of MVC since if you wanted you could only have a single snippet per page, but Lift allows you to do much more. Snippets can be cross cutting concerns or very page specfic logic.
From the lift website..
Lift is different [from MVC]. For HTML requests, Lift loads the view first and builds your page from the view. Lift also supports REST style requests for non-HTML data. (See 11 on page 1↑) “Why?” Because complex HTML pages rarely contain a dominant piece of logic... a single controller... but contain many different components. Some of those components interact and some do not. In Lift, you define the collection of components to be rendered in the resulting HTML page in the view.
When your using lift, you basically have a view(page) and from this you could incorporate any snippet(app) that you have without much of the antics you'd normally have to do in an MVC framework/environment.
Basically you don't have to choose what the most important thing on the page is just what you want to add to a page and then add it.

Drupal 7 - Views, loaded by Ajax

Two years ago I made a website to learn Flash, but these days Flash is loosing it's popularity. (the website never went online, was just for testing) Now I want to try making this test website with Drupal + Ajax...
Take a look at the Flash website
I have a collection of handbags, with different types and sizes. So I use taxonomy for that. (content type: handbag, with taxonomy terms "type" and "size" - small, medium and large)
The visitor should choose a type in the navigation. (Silver Medallion or Silver Jewel) Then he sees a page (made with views) that shows all available sizes. (The type 'Jewel' doesn't have sizes, so this type should show all bags.)
After the visitor clicks a size, he sees all available items of that type and size. With views, this is quite simple... But now I want to do this with Ajax, so the page doesn't have to reload... I also want the path to change, so people can add a page to the favortites.
I found an answer that helped me a bit further, but I have no idea where to put the code...
Code that helped me out... a bit
I think you need to create a custom module to create the view and add the configuration in setting file, then create a js file and add to drupal project.
Take a look at this. It seems to provide what you want: http://drupal.org/project/quicktabs/

CodeIgniter - big site best practices

CodeIgniter + Template howto design a portal like behavior.
I'm not getting the concept of how to design bigger sites with CodeIgniter and Templates.
The templates I'm using is Template Library for CodeIgniter. I'm having problems solving the following.
What I can see I need is some MasterTemplate that provides "MainRegion" for ProductCatalogue browsing and Account management etc. Then I would like to have a concept of "Widgets" loaded from the MasterTemplate that the user does not interact directly with instead it is simply informative. Ex: ShoppingCartWidget, TopNews etc...
Example of problems:
A) Widget - A shopping cart widget exposes a minimalistic resume of what user has added when browsing the the product catalog in the "MainRegion".
B) Hierachival view structure - When navigating to the "Account section" of the site the site renders a sub-view of the account system in the "MainRegion". My problem is that the state of the AccountSection is lost when I for example leave the "AccountSection" in to "ProductCatalogue" and the back to "Accountsection". I want to be able to render each subsection independtly smothly insterted into the "MainRegion" in the master template.
I really don't get the architecture. I need help to bring real modularity into the design.
I would like to achive the following:
1) View fragments should render from a its own model. Ex: ShoppingCartWidget always reads its state from ShoppingCartModel.
3) View fragments should have a display[on/off] in some MasterTemplate concept. So that I can Ex: Start showing the ShoppingCartWidget when there is something in the ShoppingCart. (I don't want to render '').
4) Stateful views. Ex: UserLoggedIn/UserNotLoggedIn
I'm missing the complex design principles for bigger sites or best practices for CI.
Very greatful for any help!
Thanks
Niclas
HMVC for Codeigniter does what you want: https://bitbucket.org/wiredesignz/codeigniter-modular-extensions-hmvc/wiki/Home

Ajax driven timeline-style blog (in Drupal)

I have created a blog in drupal using CCK and taxonomy.
I wish to display my posts in a timeline, according to the posted date (using views).
So far I have created a listing of the post titles on a timeline.
I now want to display the posts using ajax, wherein clicking on a post title will load the content of that node on the same page. Going ahead I'll add each fetched node into a ul tag and thus create a carousel kind of display of all fetched posts so far.
Whats the best way of achieving this, considering that I have enough knowledge to create a custom module.
Here's where I got my idea from.
http://www.jvm-neckar.de
Try the aptly named http://drupal.org/project/timeline project. I used it long time ago... its a nifty module and you can visualize your various posts on a scrollable timeline. Posts that are frequent will be together and posts that are apart (in time) will be apart -- its all scaled accurately. It has integration with views, of course.
I'm not sure about whether it will meet your exact requirements. Check out an example here:
http://simile.mit.edu/timeline/examples/jfk/jfk.html

Resources