Thanks for this good module.
But each time when I use this module, the display of recently read item is rendered by theme_table. this is quite simple sometimes.

If it support views, it should be excited.

I would like to request as a maintainer to work on this. Thank you for your attention.

Comments

pyxio’s picture

Hi zterry95,

This is very awesome. I am so thrilled you have volunteered to work on this! I hope your request is swiftly approved! Many many many thanks! Cheers, Kevin

pgorecki’s picture

You are welcome to contribute to this project. Don't hesitate to contact me in case of any questions related to this module.

zterry95’s picture

Version: 7.x-1.x-dev » 7.x-2.0-alpha1

Hi @talengix

Glad to let you know that the recently read with views support is released. version 7.x-2.x-alpha1

Currently this support for login user. and for anomynous user, we are sting on working and testing.

If you can try and test, it will be appreciated.

to use this, you need to create a views depend on content. and in the relationship, add "recently read", make sure to check "Require this relationship".

later on, we will consider to supply a default view for this.

Any problems, you can feedback to this ticket, thank you.

rogical’s picture

Tested, works, good work!

pyxio’s picture

Hi zterry95,

I just tested it and it appears to be working great. I tested it as a block on Drupal Commerce products page. At first glance, this looks to be perfect. For anybody else interested in the best solution IMO for recently viewed products, here are the steps...

1. install recently read module version 7.x-2.x-alpha1
2. create a "content" view and set relationship to "recently read"
3. set another relationship to "product reference"
4. choose number of items to show (I used 5)
5. choose a grid view format, prefereably responive grid so the the recently read items will stack at smaller screen sizes.
6. choose "recently_read" in sort view and choose your sort options
7. in context place the block on your product display page.

Works perfect! Thanks so much for the awesome work zterry85! Cheers Kevin

pyxio’s picture

Hi zterry95,

I discovered a bug. If I visit the site from another browser as an anonymous user the recently read content of the admin user is displayed. Furthermore, if I browse content as anonymous user, no new recently read content is collected. All that is visible is what the administrator viewed from a different browswer. If I switch back to the other browser where admin is logged in and then log out... admin's products are still there. This may be OK since it is the same user. However, if i log in as a different user, admin's viewed content is still there and now so is new logged in user.

So it seems to me as though anonymous does not work at all. and content history is not refreshed per logged in user.

Hope this helps. Thanks for great job!

zterry95’s picture

Hi talengix

Thanks for your tutorial, test and feedback.
The problem for login user, I have considered this point.

So in the filter, pls check carefully, there is a filter named "current user" or something like this. add this filter. then there won't be problems for different user.

For anomynous user, it is a little different. We are still considering how to handle this.

Any further problems, feel free let me know. thank you.

pyxio’s picture

hi zterry95,

thanks for the feedback. i used filter "recently read - current user" and that solved unique history per user issue. i will watch for the anonymous user solution as that is important of course. thanks for the awesome work. cheers, Kevin

zterry95’s picture

Hi talengix

views support for anomynous user is avaliable now. version 7.x-2.0-alpha2.

You can download and try it.

If you find any problem, pls feel free to let me know.

Thanks.

pyxio’s picture

Hi zterry95,

I tested alpha2 and can't seem to get it to work for anonymous users. The recently viewed block does not display. I'm not sure if that is a view configuration problem on my part or a bug. I have the view set to restrict item history to current user and content type 'product'. Otherwise, I think it is a pretty generic view.

Cheers
Kevin

zterry95’s picture

1: clean cache
2: make sure in the views filter, include the "recently read current".
If you still have problem, pls feel free to let me know, thanks.

pyxio’s picture

On the view I have the filter recently read: current there is a boolean choice "is the logged in user" what should the selection be. now I have 'yes' selected. i don't what to choose as it seems one choice will negate the other.

zterry95’s picture

choose "yes" pls.

pyxio’s picture

so works for logged in user only for me right now. for anonoymous user i see no block like on logged in user pages.

zterry95’s picture

I think you have confused now.
actually, the login user and anomynous user use the same block.

So pls logout, and brower some pages and check the views block again.

You really don't need to create extra block for the anomynous user.

pyxio’s picture

Hi

I am not using a different block. It is the same one. It only displays for logged in users. When I logout and browse, nothing appears in the same block that displays perfectly for logged in users.

zterry95’s picture

Hi talengix

Thanks for your test always.

I tested it again myself and everything works perfectly.

If you can post some screenshot or your views export file for me to check, it will be better.

even more, you can leave me a private message to advise your online site for checking, it will be good.

pyxio’s picture

Hi,

Here is my view export. The site is not live it is on my development box. Anyway, I hope this helps.

$view = new view();
$view->name = 'recently_read';
$view->description = '';
$view->tag = 'default';
$view->base_table = 'node';
$view->human_name = 'Recently Read';
$view->core = 7;
$view->api_version = '3.0';
$view->disabled = FALSE; /* Edit this to true to make a default view disabled initially */

/* Display: Master */
$handler = $view->new_display('default', 'Master', 'default');
$handler->display->display_options['title'] = 'Recently Viewed';
$handler->display->display_options['use_more_always'] = FALSE;
$handler->display->display_options['access']['type'] = 'perm';
$handler->display->display_options['cache']['type'] = 'none';
$handler->display->display_options['query']['type'] = 'views_query';
$handler->display->display_options['exposed_form']['type'] = 'basic';
$handler->display->display_options['pager']['type'] = 'some';
$handler->display->display_options['pager']['options']['items_per_page'] = '4';
$handler->display->display_options['pager']['options']['offset'] = '0';
$handler->display->display_options['style_plugin'] = 'default';
$handler->display->display_options['row_plugin'] = 'fields';
/* Relationship: Recently Read: Recently Read */
$handler->display->display_options['relationships']['rid']['id'] = 'rid';
$handler->display->display_options['relationships']['rid']['table'] = 'node';
$handler->display->display_options['relationships']['rid']['field'] = 'rid';
$handler->display->display_options['relationships']['rid']['required'] = TRUE;
/* Relationship: Content: Referenced product */
$handler->display->display_options['relationships']['field_product_product_id']['id'] = 'field_product_product_id';
$handler->display->display_options['relationships']['field_product_product_id']['table'] = 'field_data_field_product';
$handler->display->display_options['relationships']['field_product_product_id']['field'] = 'field_product_product_id';
/* Field: Content: Title */
$handler->display->display_options['fields']['title']['id'] = 'title';
$handler->display->display_options['fields']['title']['table'] = 'node';
$handler->display->display_options['fields']['title']['field'] = 'title';
$handler->display->display_options['fields']['title']['label'] = '';
$handler->display->display_options['fields']['title']['alter']['word_boundary'] = FALSE;
$handler->display->display_options['fields']['title']['alter']['ellipsis'] = FALSE;
/* Field: Commerce Product: Images */
$handler->display->display_options['fields']['field_images']['id'] = 'field_images';
$handler->display->display_options['fields']['field_images']['table'] = 'field_data_field_images';
$handler->display->display_options['fields']['field_images']['field'] = 'field_images';
$handler->display->display_options['fields']['field_images']['relationship'] = 'field_product_product_id';
$handler->display->display_options['fields']['field_images']['label'] = '';
$handler->display->display_options['fields']['field_images']['element_type'] = '0';
$handler->display->display_options['fields']['field_images']['element_label_colon'] = FALSE;
$handler->display->display_options['fields']['field_images']['element_wrapper_type'] = '0';
$handler->display->display_options['fields']['field_images']['element_default_classes'] = FALSE;
$handler->display->display_options['fields']['field_images']['click_sort_column'] = 'fid';
$handler->display->display_options['fields']['field_images']['settings'] = array(
'image_style' => 'product_thumbnail',
'image_link' => '',
);
$handler->display->display_options['fields']['field_images']['delta_limit'] = '1';
$handler->display->display_options['fields']['field_images']['delta_offset'] = '0';
$handler->display->display_options['fields']['field_images']['field_api_classes'] = TRUE;
/* Sort criterion: Recently Read: Recently Read Date */
$handler->display->display_options['sorts']['timestamp']['id'] = 'timestamp';
$handler->display->display_options['sorts']['timestamp']['table'] = 'recently_read_nodes';
$handler->display->display_options['sorts']['timestamp']['field'] = 'timestamp';
$handler->display->display_options['sorts']['timestamp']['relationship'] = 'rid';
$handler->display->display_options['sorts']['timestamp']['order'] = 'DESC';
/* Filter criterion: Content: Published */
$handler->display->display_options['filters']['status']['id'] = 'status';
$handler->display->display_options['filters']['status']['table'] = 'node';
$handler->display->display_options['filters']['status']['field'] = 'status';
$handler->display->display_options['filters']['status']['value'] = 1;
$handler->display->display_options['filters']['status']['group'] = 1;
$handler->display->display_options['filters']['status']['expose']['operator'] = FALSE;

/* Display: Block - Recently Read */
$handler = $view->new_display('block', 'Block - Recently Read', 'block');
$handler->display->display_options['defaults']['hide_admin_links'] = FALSE;
$handler->display->display_options['defaults']['style_plugin'] = FALSE;
$handler->display->display_options['style_plugin'] = 'responsive_grid';
$handler->display->display_options['style_options']['column_classes'] = 'col span_1_of_4';
$handler->display->display_options['style_options']['row_classes'] = 'section group';
$handler->display->display_options['defaults']['style_options'] = FALSE;
$handler->display->display_options['defaults']['row_plugin'] = FALSE;
$handler->display->display_options['row_plugin'] = 'fields';
$handler->display->display_options['defaults']['row_options'] = FALSE;
$handler->display->display_options['defaults']['filter_groups'] = FALSE;
$handler->display->display_options['defaults']['filters'] = FALSE;
/* Filter criterion: Content: Published */
$handler->display->display_options['filters']['status']['id'] = 'status';
$handler->display->display_options['filters']['status']['table'] = 'node';
$handler->display->display_options['filters']['status']['field'] = 'status';
$handler->display->display_options['filters']['status']['value'] = 1;
$handler->display->display_options['filters']['status']['group'] = 1;
$handler->display->display_options['filters']['status']['expose']['operator'] = FALSE;
/* Filter criterion: Recently Read: Current */
$handler->display->display_options['filters']['current_user']['id'] = 'current_user';
$handler->display->display_options['filters']['current_user']['table'] = 'recently_read_nodes';
$handler->display->display_options['filters']['current_user']['field'] = 'current_user';
$handler->display->display_options['filters']['current_user']['value'] = '1';
/* Filter criterion: Content: Product (field_product:delta) */
$handler->display->display_options['filters']['delta']['id'] = 'delta';
$handler->display->display_options['filters']['delta']['table'] = 'field_data_field_product';
$handler->display->display_options['filters']['delta']['field'] = 'delta';
$handler->display->display_options['filters']['delta']['value']['value'] = '0';
$translatables['recently_read'] = array(
t('Master'),
t('Recently Viewed'),
t('more'),
t('Apply'),
t('Reset'),
t('Sort by'),
t('Asc'),
t('Desc'),
t('Recently Read'),
t('Product'),
t('Block - Recently Read'),
);

zterry95’s picture

Thanks.

I have create a similar views like yours, and there is a problem too.

Solution is simple at this stage, remove all the relationship in views and display only the field in node. there won't be any problem.

For problem problem with relationship, I will fix it as soon as I can.

Thanks again for your wonderful test.

pyxio’s picture

Hi

But problem is I need product relationship to display recently viewed products. it is whole point of using recently read module. If I turn off relationships how will I be able to display fields from product entity?

zterry95’s picture

yes, I will fix this problem this weekend.

pyxio’s picture

no hurry zterry95. your excellent work and effort is much appreciated. i am sure you need to pay the bills first! have a perfect day. K

zterry95’s picture

Hi talengix

Once you got the 7.x-2.0-alpha3 released. pls download it.
1: clean cache
2: check permission for your product.
3: disable or remove your views.
4: there is a default views called "recently read", check it and add your relationship.

Hope this time everything is works well for you.

thanks for your support always .

pyxio’s picture

Hi

There is no alpha3 release yet available. Thanks, Kevin

zterry95’s picture

You can try 7.x-2.x-dev.

pyxio’s picture

I don't see any new view in my views list so I assume this is not the correct version.

zterry95’s picture

alpha3 has released.

Maybe you need to try this in a clean envirement. I guess the views is overrided by your views.

gregag’s picture

Hi zterry95,
thank you for great module!

I have problem with views to display for anonymous users. It show up for anonymous user, but it shows logged in user last viewed products (for logged user it's working great).

I created my own view, couldn't find new view.

I have relationships Recently Read: Recently Read, and filter criteria Recently Read: Current (Ne). Strange is that it didn't allow me to put in filter criteria Recently Read Relationship - PROBLEM :The handler for this item is broken or missing and cannot be used. If a module provided the handler and was disabled, re-enabling the module may restore it. Otherwise, you should probably delete this item.

Thanks again,
Grega

zterry95’s picture

Hi gregag

Thanks for your test and feedback.

Pls look into the config of the default views. I have tested many times for this default views and it should work for both logged in user and anomynous user.

If you have to make your own views, pls follow the same config for filter and contextual filter, orelse, it won't works properly.

Also the contextual default handler "reacently Read" is in recently_read module. And no validate for this, as it is not necessary.

Any further problems, feel free to let me know, thanks.

pyxio’s picture

zterry95,

I can't find the view either. I guess for some reason it is not showing up in the views list. Cheers, Kevin

zterry95’s picture

pls try it in a clean envirement, thanks.

I think the views by this module is overrided by your own views.

pyxio’s picture

Hi,

Can you please send the view export so I can manually import it? Many thanks! Also, I would like to add functionality to the view where the user can click a "REMOVE" button and remove an item from the history list. That way they have a smarter and more useful list because often a user views a piece of content they did not find interesting and quickly leave. But this content is stuck in history and this is not useful. Do you have any idea how to implement this? Or, if I do it myself (i assume using flags) will it mess up the view and recently read functionality? let me know. thanks. Kevin

gregag’s picture

Hey I tried also in clean environment but can't find any new view :(
Now trying to theme block...

gregag’s picture

Hi zterry95, I think problem is that FILTER CRITERIA - Recently Read show error: Configure filter criterion: Broken/missing handler

The handler for this item is broken or missing and cannot be used. If a module provided the handler and was disabled, re-enabling the module may restore it. Otherwise, you should probably delete this item.

My exported view:
$view = new view();
$view->name = 'zadnji_ogledani_izdelki';
$view->description = '';
$view->tag = 'default';
$view->base_table = 'node';
$view->human_name = 'Zadnji ogledani izdelki';
$view->core = 7;
$view->api_version = '3.0';
$view->disabled = FALSE; /* Edit this to true to make a default view disabled initially */

/* Display: Master */
$handler = $view->new_display('default', 'Master', 'default');
$handler->display->display_options['title'] = 'Zadnji ogledani izdelki';
$handler->display->display_options['css_class'] = 'sorodni_izdelki';
$handler->display->display_options['use_more_always'] = FALSE;
$handler->display->display_options['access']['type'] = 'perm';
$handler->display->display_options['cache']['type'] = 'none';
$handler->display->display_options['query']['type'] = 'views_query';
$handler->display->display_options['exposed_form']['type'] = 'basic';
$handler->display->display_options['exposed_form']['options']['reset_button_label'] = 'Ponastavi';
$handler->display->display_options['pager']['type'] = 'some';
$handler->display->display_options['pager']['options']['items_per_page'] = '5';
$handler->display->display_options['pager']['options']['offset'] = '0';
$handler->display->display_options['style_plugin'] = 'default';
$handler->display->display_options['row_plugin'] = 'fields';
/* Relationship: Recently Read: Recently Read */
$handler->display->display_options['relationships']['rid']['id'] = 'rid';
$handler->display->display_options['relationships']['rid']['table'] = 'node';
$handler->display->display_options['relationships']['rid']['field'] = 'rid';
/* Relationship: Recently Read: Relationship uid */
$handler->display->display_options['relationships']['uid']['id'] = 'uid';
$handler->display->display_options['relationships']['uid']['table'] = 'recently_read_nodes';
$handler->display->display_options['relationships']['uid']['field'] = 'uid';
$handler->display->display_options['relationships']['uid']['relationship'] = 'rid';
/* Polje: Vsebine: Image */
$handler->display->display_options['fields']['uc_product_image']['id'] = 'uc_product_image';
$handler->display->display_options['fields']['uc_product_image']['table'] = 'field_data_uc_product_image';
$handler->display->display_options['fields']['uc_product_image']['field'] = 'uc_product_image';
$handler->display->display_options['fields']['uc_product_image']['label'] = '';
$handler->display->display_options['fields']['uc_product_image']['element_label_colon'] = FALSE;
$handler->display->display_options['fields']['uc_product_image']['click_sort_column'] = 'fid';
$handler->display->display_options['fields']['uc_product_image']['settings'] = array(
'image_style' => 'sorodni_izdelki',
'image_link' => 'content',
);
$handler->display->display_options['fields']['uc_product_image']['delta_offset'] = '0';
/* Polje: Vsebine: Naslov */
$handler->display->display_options['fields']['title']['id'] = 'title';
$handler->display->display_options['fields']['title']['table'] = 'node';
$handler->display->display_options['fields']['title']['field'] = 'title';
$handler->display->display_options['fields']['title']['label'] = '';
$handler->display->display_options['fields']['title']['alter']['word_boundary'] = FALSE;
$handler->display->display_options['fields']['title']['alter']['ellipsis'] = FALSE;
$handler->display->display_options['fields']['title']['element_class'] = 'sorodni_inner';
$handler->display->display_options['fields']['title']['element_label_colon'] = FALSE;
/* Polje: Vsebine: Oznaka */
$handler->display->display_options['fields']['field_oznaka']['id'] = 'field_oznaka';
$handler->display->display_options['fields']['field_oznaka']['table'] = 'field_data_field_oznaka';
$handler->display->display_options['fields']['field_oznaka']['field'] = 'field_oznaka';
$handler->display->display_options['fields']['field_oznaka']['label'] = '';
$handler->display->display_options['fields']['field_oznaka']['element_label_colon'] = FALSE;
$handler->display->display_options['fields']['field_oznaka']['type'] = 'taxonomy_term_reference_plain';
$handler->display->display_options['fields']['field_oznaka']['delta_offset'] = '0';
/* Polje: Vsebine: Čas gorenja */
$handler->display->display_options['fields']['field__as_gorenja']['id'] = 'field__as_gorenja';
$handler->display->display_options['fields']['field__as_gorenja']['table'] = 'field_data_field__as_gorenja';
$handler->display->display_options['fields']['field__as_gorenja']['field'] = 'field__as_gorenja';
$handler->display->display_options['fields']['field__as_gorenja']['label'] = '';
$handler->display->display_options['fields']['field__as_gorenja']['element_class'] = 'sorodni_inner';
$handler->display->display_options['fields']['field__as_gorenja']['element_label_colon'] = FALSE;
/* Polje: Vsebine: Akcijska cena */
$handler->display->display_options['fields']['field_akcijska_cena']['id'] = 'field_akcijska_cena';
$handler->display->display_options['fields']['field_akcijska_cena']['table'] = 'field_data_field_akcijska_cena';
$handler->display->display_options['fields']['field_akcijska_cena']['field'] = 'field_akcijska_cena';
$handler->display->display_options['fields']['field_akcijska_cena']['label'] = '';
$handler->display->display_options['fields']['field_akcijska_cena']['element_class'] = 'sorodni_inner';
$handler->display->display_options['fields']['field_akcijska_cena']['element_label_colon'] = FALSE;
$handler->display->display_options['fields']['field_akcijska_cena']['settings'] = array(
'thousand_separator' => ',',
'decimal_separator' => '.',
'scale' => '2',
'prefix_suffix' => 1,
);
/* Polje: Produkt: Prodajna cena */
$handler->display->display_options['fields']['sell_price']['id'] = 'sell_price';
$handler->display->display_options['fields']['sell_price']['table'] = 'uc_products';
$handler->display->display_options['fields']['sell_price']['field'] = 'sell_price';
$handler->display->display_options['fields']['sell_price']['label'] = '';
$handler->display->display_options['fields']['sell_price']['element_label_colon'] = FALSE;
$handler->display->display_options['fields']['sell_price']['set_precision'] = TRUE;
$handler->display->display_options['fields']['sell_price']['precision'] = '2';
$handler->display->display_options['fields']['sell_price']['decimal'] = ',';
$handler->display->display_options['fields']['sell_price']['separator'] = '';
$handler->display->display_options['fields']['sell_price']['format'] = 'numeric';
/* Polje: Produkt: Display price */
$handler->display->display_options['fields']['display_price']['id'] = 'display_price';
$handler->display->display_options['fields']['display_price']['table'] = 'uc_products';
$handler->display->display_options['fields']['display_price']['field'] = 'display_price';
$handler->display->display_options['fields']['display_price']['label'] = '';
$handler->display->display_options['fields']['display_price']['element_label_colon'] = FALSE;
$handler->display->display_options['fields']['display_price']['separator'] = '';
$handler->display->display_options['fields']['display_price']['format'] = 'numeric';
/* Polje: Recently Read: Recently Read uid */
$handler->display->display_options['fields']['uid']['id'] = 'uid';
$handler->display->display_options['fields']['uid']['table'] = 'recently_read_nodes';
$handler->display->display_options['fields']['uid']['field'] = 'uid';
/* Contextual filter: Uporabnik: Uid */
$handler->display->display_options['arguments']['uid']['id'] = 'uid';
$handler->display->display_options['arguments']['uid']['table'] = 'users';
$handler->display->display_options['arguments']['uid']['field'] = 'uid';
$handler->display->display_options['arguments']['uid']['relationship'] = 'uid';
$handler->display->display_options['arguments']['uid']['default_action'] = 'default';
$handler->display->display_options['arguments']['uid']['exception']['title'] = 'Vsi';
$handler->display->display_options['arguments']['uid']['default_argument_type'] = 'rr';
$handler->display->display_options['arguments']['uid']['summary']['number_of_records'] = '0';
$handler->display->display_options['arguments']['uid']['summary']['format'] = 'default_summary';
$handler->display->display_options['arguments']['uid']['summary_options']['items_per_page'] = '25';
$handler->display->display_options['arguments']['uid']['specify_validation'] = TRUE;
$handler->display->display_options['arguments']['uid']['validate']['type'] = 'node';
$handler->display->display_options['arguments']['uid']['validate_options']['types'] = array(
'product' => 'product',
);
/* Filter criterion: Vsebine: Tip */
$handler->display->display_options['filters']['type']['id'] = 'type';
$handler->display->display_options['filters']['type']['table'] = 'node';
$handler->display->display_options['filters']['type']['field'] = 'type';
$handler->display->display_options['filters']['type']['value'] = array(
'product' => 'product',
);
$handler->display->display_options['filters']['type']['group'] = 1;

/* Display: Block */
$handler = $view->new_display('block', 'Block', 'block');
$handler->display->display_options['defaults']['hide_admin_links'] = FALSE;
$translatables['zadnji_ogledani_izdelki'] = array(
t('Master'),
t('Zadnji ogledani izdelki'),
t('more'),
t('Apply'),
t('Ponastavi'),
t('Sort by'),
t('Asc'),
t('Desc'),
t('Recently Read'),
t('Recently Read User'),
t(','),
t('.'),
t('Recently Read uid'),
t('Vsi'),
t('Block'),
);

pgorecki’s picture

It looks like you have the wrong version. Download and install 7.x-2.0-alpha3

gregag’s picture

pgorecki I have 7.x-2.0-alpha3 :/

pgorecki’s picture

can you reproduce this bug with a fresh install?

gregag’s picture

This is from fresh instal on lc3_clean theme

I have no NEW VIEW (recently read). In my view show me on FILTER CRITERIA error: Broken/missing handler
For
The handler for this item is broken or missing and cannot be used. If a module provided the handler and was disabled, re-enabling the module may restore it. Otherwise, you should probably delete this item.

my view:

$view = new view();
$view->name = 'recently_read';
$view->description = '';
$view->tag = 'default';
$view->base_table = 'node';
$view->human_name = 'recently_read';
$view->core = 7;
$view->api_version = '3.0';
$view->disabled = FALSE; /* Edit this to true to make a default view disabled initially */

/* Display: Master */
$handler = $view->new_display('default', 'Master', 'default');
$handler->display->display_options['title'] = 'recently_read';
$handler->display->display_options['use_more_always'] = FALSE;
$handler->display->display_options['access']['type'] = 'perm';
$handler->display->display_options['cache']['type'] = 'none';
$handler->display->display_options['query']['type'] = 'views_query';
$handler->display->display_options['exposed_form']['type'] = 'basic';
$handler->display->display_options['pager']['type'] = 'some';
$handler->display->display_options['pager']['options']['items_per_page'] = '5';
$handler->display->display_options['style_plugin'] = 'default';
$handler->display->display_options['row_plugin'] = 'fields';
/* Relationship: Recently Read: Recently Read */
$handler->display->display_options['relationships']['rid']['id'] = 'rid';
$handler->display->display_options['relationships']['rid']['table'] = 'node';
$handler->display->display_options['relationships']['rid']['field'] = 'rid';
$handler->display->display_options['relationships']['rid']['required'] = TRUE;
/* Relationship: Recently Read: Relationship uid */
$handler->display->display_options['relationships']['uid']['id'] = 'uid';
$handler->display->display_options['relationships']['uid']['table'] = 'recently_read_nodes';
$handler->display->display_options['relationships']['uid']['field'] = 'uid';
$handler->display->display_options['relationships']['uid']['relationship'] = 'rid';
$handler->display->display_options['relationships']['uid']['required'] = TRUE;
/* Field: Content: Title */
$handler->display->display_options['fields']['title']['id'] = 'title';
$handler->display->display_options['fields']['title']['table'] = 'node';
$handler->display->display_options['fields']['title']['field'] = 'title';
$handler->display->display_options['fields']['title']['label'] = '';
$handler->display->display_options['fields']['title']['alter']['word_boundary'] = FALSE;
$handler->display->display_options['fields']['title']['alter']['ellipsis'] = FALSE;
/* Field: Content: cena */
$handler->display->display_options['fields']['field_cena']['id'] = 'field_cena';
$handler->display->display_options['fields']['field_cena']['table'] = 'field_data_field_cena';
$handler->display->display_options['fields']['field_cena']['field'] = 'field_cena';
/* Field: Content: Image */
$handler->display->display_options['fields']['field_image']['id'] = 'field_image';
$handler->display->display_options['fields']['field_image']['table'] = 'field_data_field_image';
$handler->display->display_options['fields']['field_image']['field'] = 'field_image';
$handler->display->display_options['fields']['field_image']['click_sort_column'] = 'fid';
$handler->display->display_options['fields']['field_image']['settings'] = array(
'image_style' => '',
'image_link' => '',
);
/* Sort criterion: Content: Post date */
$handler->display->display_options['sorts']['created']['id'] = 'created';
$handler->display->display_options['sorts']['created']['table'] = 'node';
$handler->display->display_options['sorts']['created']['field'] = 'created';
$handler->display->display_options['sorts']['created']['order'] = 'DESC';
/* Filter criterion: Content: Published */
$handler->display->display_options['filters']['status']['id'] = 'status';
$handler->display->display_options['filters']['status']['table'] = 'node';
$handler->display->display_options['filters']['status']['field'] = 'status';
$handler->display->display_options['filters']['status']['value'] = 1;
$handler->display->display_options['filters']['status']['group'] = 1;
$handler->display->display_options['filters']['status']['expose']['operator'] = FALSE;
/* Filter criterion: Broken/missing handler */
$handler->display->display_options['filters']['rid']['id'] = 'rid';
$handler->display->display_options['filters']['rid']['table'] = 'node';
$handler->display->display_options['filters']['rid']['field'] = 'rid';

/* Display: Block */
$handler = $view->new_display('block', 'Block', 'block');
$handler->display->display_options['defaults']['hide_admin_links'] = FALSE;

marcusx’s picture

I needed some time to get my custom recently read view working. I created some documentation. Maybe this helps someone.

Attached as PDF and zipped HTML version.

@maintainers: feel free to upload it somewhere to avoid getting this lost in the issue queue.

dydave’s picture

Thanks very much marcux for your documentations efforts.

However, personally, I'm still not completely satisfied with this implementation and would like to suggest a different version.

I have already discussed with zterry95 about it and he seemed to agree that we could probably come up with a slightly improved version.
However, I'm going to need a bit more time, about a week or two before I'm able to submit a patch for your review.
Therefore, I think any documentation at this stage might be a little too early, since it might still change.

I'm still focusing on trying to improve other aspects of the module, in particular the tracking for anon or authenticated users, especially the implementation of hook_exit.

I'll get back to you guys on this feature request very soon.
Thanks again to all for your comments, feedback, testing and documentation.
Cheers!

marcusx’s picture

I am happy to test and review. Please post the issue number here if you put the patch under an other number so I get noticed.

dydave’s picture

Great! thanks a lot marcusx, will surely do!

Thanks again so much for your reporting, testing and efforts with documentation, it is certainly highly appreciated.
Cheers!

pyxio’s picture

Count me in too. Cheers, Kevin

zterry95’s picture

I would like to know any inssue for this ticket? thanks.

zterry95’s picture

new brach will be released recently, with entity support:), based on session_api module.

zterry95’s picture

Status: Active » Closed (fixed)

I would like to mark this ticket as fixed.

also recommend the 7.x-3.x branch for entity support and better views support.

Any problems, you can continue here, or open a new ticket.