<feed xmlns='http://www.w3.org/2005/Atom'>
<title>97dev.git, branch master</title>
<subtitle>97suifang website development
</subtitle>
<link rel='alternate' type='text/html' href='https://git.liwt.net/97dev.git/'/>
<entry>
<title>* merged commits from 'maxwell lou' by time '20131028_09:52';</title>
<updated>2013-10-30T02:16:21+00:00</updated>
<author>
<name>Alvin Li</name>
<email>liweitianux@gmail.com</email>
</author>
<published>2013-10-30T02:16:21+00:00</published>
<link rel='alternate' type='text/html' href='https://git.liwt.net/97dev.git/commit/?id=1e4a9c0565c3d2f52ec205ae7627ebfc84278735'/>
<id>1e4a9c0565c3d2f52ec205ae7627ebfc84278735</id>
<content type='text'>
* moved 'ValueKind' model from 'recommend/models' to 'indicator/models'
* added field 'type' for 'indicator.models.Indicator'
* added field 'kind' for 'indicator.models.IndicatorRecord',
  'InnateConfine'
* updated methods for models 'Indicator', 'IndicatorRecord',
  'InnateConfine'
* updated views and templates for 'apps/indicator'
* added 'INDICATOR_RECOMMEND_PERIOD' into 'settings.py'
* added 'type' field for 'indicator.models.Indicator' in
  'search_indexes.py'
* added a confirm step for 'EditHistoryData' page when delete a record

* removed dir 'backupdata'; 'queries.txt' moved to 'backup' dir
* moved *.json to 'backup' dir
* removed 'apps/managers*.py'
* updated 'indicator/popup/IndexDesc.html'
* created dir 'apps/indicator/obsolete';
* moved 'indicator/forms.py' to dir 'obsolete';
* splitted views related forms.py from 'views.py', and placed in
  'obsolete/views_forms.py'

* loadded newest data into database
* cleaned pervious data files in 'backup' dir
* updated 'README.txt'; added a solution to a redis problem

* added field 'type' of 'indicator.models.Indicator';
  for filtering search results and only returning 'NORMAL_TYPE'
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
* moved 'ValueKind' model from 'recommend/models' to 'indicator/models'
* added field 'type' for 'indicator.models.Indicator'
* added field 'kind' for 'indicator.models.IndicatorRecord',
  'InnateConfine'
* updated methods for models 'Indicator', 'IndicatorRecord',
  'InnateConfine'
* updated views and templates for 'apps/indicator'
* added 'INDICATOR_RECOMMEND_PERIOD' into 'settings.py'
* added 'type' field for 'indicator.models.Indicator' in
  'search_indexes.py'
* added a confirm step for 'EditHistoryData' page when delete a record

* removed dir 'backupdata'; 'queries.txt' moved to 'backup' dir
* moved *.json to 'backup' dir
* removed 'apps/managers*.py'
* updated 'indicator/popup/IndexDesc.html'
* created dir 'apps/indicator/obsolete';
* moved 'indicator/forms.py' to dir 'obsolete';
* splitted views related forms.py from 'views.py', and placed in
  'obsolete/views_forms.py'

* loadded newest data into database
* cleaned pervious data files in 'backup' dir
* updated 'README.txt'; added a solution to a redis problem

* added field 'type' of 'indicator.models.Indicator';
  for filtering search results and only returning 'NORMAL_TYPE'
</pre>
</div>
</content>
</entry>
<entry>
<title>* treat 'apps/utils' as regular django app; which used to store</title>
<updated>2013-10-09T07:52:53+00:00</updated>
<author>
<name>Alvin Li</name>
<email>liweitianux@gmail.com</email>
</author>
<published>2013-10-09T07:52:53+00:00</published>
<link rel='alternate' type='text/html' href='https://git.liwt.net/97dev.git/commit/?id=02afd8a32edb13ea7fc2266ac80092ea15c0930c'/>
<id>02afd8a32edb13ea7fc2266ac80092ea15c0930c</id>
<content type='text'>
  general tools for used in other apps
* moved 'templatetags' from 'apps/indicator' to 'apps/utils'
* '.gitignore' to ignore 'fixtures_bak'
* moved js plugins from 'apps/indicator/static/plugins' to
  'staticfiles/plugins'

apps/recommend:
* updated 'recommend.models';
    o commented 'recommend.models.ResearchCombination' (not used)
* implemented views 'add_edit_blog_info' and 'ajax_add_edit_configs';
* added pages 'templates/recommend/add_edit_blog_info.html',
    'add_edit_blog_info_error.html';
    o related css and javascripts files
* added 'tools.py';

* added 'utils/tools.py' for placing generic functions;
* deleted 'initial_data.json' (mv 'fixtures' to 'fixtures_bak');
* small fixes to 'indicator.models', 'sciblog.models' and
  'sfaccount.views'

* fixed automatically show 'proper_nouns' annotation in blog:
  recovered the line 'import signals' in 'sciblog.models'
* added 'is_ok()' method for 'recommend.models.ResearchConfig';
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
  general tools for used in other apps
* moved 'templatetags' from 'apps/indicator' to 'apps/utils'
* '.gitignore' to ignore 'fixtures_bak'
* moved js plugins from 'apps/indicator/static/plugins' to
  'staticfiles/plugins'

apps/recommend:
* updated 'recommend.models';
    o commented 'recommend.models.ResearchCombination' (not used)
* implemented views 'add_edit_blog_info' and 'ajax_add_edit_configs';
* added pages 'templates/recommend/add_edit_blog_info.html',
    'add_edit_blog_info_error.html';
    o related css and javascripts files
* added 'tools.py';

* added 'utils/tools.py' for placing generic functions;
* deleted 'initial_data.json' (mv 'fixtures' to 'fixtures_bak');
* small fixes to 'indicator.models', 'sciblog.models' and
  'sfaccount.views'

* fixed automatically show 'proper_nouns' annotation in blog:
  recovered the line 'import signals' in 'sciblog.models'
* added 'is_ok()' method for 'recommend.models.ResearchConfig';
</pre>
</div>
</content>
</entry>
<entry>
<title>* added settings 'ASYNC_SEND_MAIL'</title>
<updated>2013-10-06T05:51:17+00:00</updated>
<author>
<name>Alvin Li</name>
<email>liweitianux@gmail.com</email>
</author>
<published>2013-10-06T05:51:17+00:00</published>
<link rel='alternate' type='text/html' href='https://git.liwt.net/97dev.git/commit/?id=fafce2cfc72f4e1cd14ff6cb693c8ec7854159c5'/>
<id>fafce2cfc72f4e1cd14ff6cb693c8ec7854159c5</id>
<content type='text'>
* added parameter 'async' to 'Account.send_activation_email()' method
* improved views 'sfaccount.views.activate_view'
* adjusted urls 'activate_key'
* added view 'sfaccount.views.activate_done_view'
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
* added parameter 'async' to 'Account.send_activation_email()' method
* improved views 'sfaccount.views.activate_view'
* adjusted urls 'activate_key'
* added view 'sfaccount.views.activate_done_view'
</pre>
</div>
</content>
</entry>
<entry>
<title>* improved 'signup' function for sfaccount</title>
<updated>2013-10-04T18:12:28+00:00</updated>
<author>
<name>Alvin Li</name>
<email>liweitianux@gmail.com</email>
</author>
<published>2013-10-04T18:12:28+00:00</published>
<link rel='alternate' type='text/html' href='https://git.liwt.net/97dev.git/commit/?id=46b4f8407f40cfcc0abf6c6e4fbc8fcbee00151d'/>
<id>46b4f8407f40cfcc0abf6c6e4fbc8fcbee00151d</id>
<content type='text'>
* changed 'redirect url' for 'sfaccount.views.signup_view'
* improved 'sfaccount.models.Account', added 'delete_account()' method;
  added 'html' type email templates for activation email
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
* changed 'redirect url' for 'sfaccount.views.signup_view'
* improved 'sfaccount.models.Account', added 'delete_account()' method;
  added 'html' type email templates for activation email
</pre>
</div>
</content>
</entry>
<entry>
<title>* indicator/static/javascripts/card_chart.js:</title>
<updated>2013-10-04T15:56:35+00:00</updated>
<author>
<name>Alvin Li</name>
<email>liweitianux@gmail.com</email>
</author>
<published>2013-10-04T15:56:35+00:00</published>
<link rel='alternate' type='text/html' href='https://git.liwt.net/97dev.git/commit/?id=f552b41f4b337e6844f71c29ff177915abbfa417'/>
<id>f552b41f4b337e6844f71c29ff177915abbfa417</id>
<content type='text'>
  improved the display position of 'detail_card_info'
* indicator/templates/indicator/SheetDefault.html:
  destroy 'qtip' when close card

* added new app 'apps/sfaccount'
* implemented 'signup' and 'activate' functions
* implemented async sending activation mail
  (using 'django-celery' and 'redis')
* moved 'registration/*' templates to 'sfaccount/templates'

* implemented 'password_change' function:
  o password_change
  o password_change_done
* implemented 'password_reset' function
  o password_reset
  o password_reset_done
  o password_reset_confirm
  o password_reset_complete
  o re-write 'sfaccount.fomrs.SFPasswordResetForm'
  o re-write 'sfaccount.views.password_reset_view'
* improved 'sfaccount.functional' send mail functions
  o to send 'multipart' mail

* added 'README.txt'

* added app 'apps/recommend':
  for comparing with the SCI papers and then recommending
  most related papers for user.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
  improved the display position of 'detail_card_info'
* indicator/templates/indicator/SheetDefault.html:
  destroy 'qtip' when close card

* added new app 'apps/sfaccount'
* implemented 'signup' and 'activate' functions
* implemented async sending activation mail
  (using 'django-celery' and 'redis')
* moved 'registration/*' templates to 'sfaccount/templates'

* implemented 'password_change' function:
  o password_change
  o password_change_done
* implemented 'password_reset' function
  o password_reset
  o password_reset_done
  o password_reset_confirm
  o password_reset_complete
  o re-write 'sfaccount.fomrs.SFPasswordResetForm'
  o re-write 'sfaccount.views.password_reset_view'
* improved 'sfaccount.functional' send mail functions
  o to send 'multipart' mail

* added 'README.txt'

* added app 'apps/recommend':
  for comparing with the SCI papers and then recommending
  most related papers for user.
</pre>
</div>
</content>
</entry>
<entry>
<title>auto redraw chart when:</title>
<updated>2013-09-21T16:03:36+00:00</updated>
<author>
<name>Alvin Li</name>
<email>liweitianux@gmail.com</email>
</author>
<published>2013-09-21T16:03:36+00:00</published>
<link rel='alternate' type='text/html' href='https://git.liwt.net/97dev.git/commit/?id=816730ff659e1338ab3e37a1d45ea337e337b3dd'/>
<id>816730ff659e1338ab3e37a1d45ea337e337b3dd</id>
<content type='text'>
* added new record
* modified record data/date
* deleted record

EditHistoryData page:
* added 'delete button' (#delete_btn)
* added 'indicator.views.ajax_delete_record()'
* updated css style for delete button
* updated css style for record 'state'

* added check for 'unit' when save 'IndicatorRecord'
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
* added new record
* modified record data/date
* deleted record

EditHistoryData page:
* added 'delete button' (#delete_btn)
* added 'indicator.views.ajax_delete_record()'
* updated css style for delete button
* updated css style for record 'state'

* added check for 'unit' when save 'IndicatorRecord'
</pre>
</div>
</content>
</entry>
<entry>
<title>*** merged changes of front pages ***</title>
<updated>2013-09-20T15:52:59+00:00</updated>
<author>
<name>Alvin Li</name>
<email>liweitianux@gmail.com</email>
</author>
<published>2013-09-20T15:52:59+00:00</published>
<link rel='alternate' type='text/html' href='https://git.liwt.net/97dev.git/commit/?id=c9da4168874296cf4f5ba71b9a432ceae3c26130'/>
<id>c9da4168874296cf4f5ba71b9a432ceae3c26130</id>
<content type='text'>
* merged changes from '97suifang-front' by mjymjydark;
    and modified to work with django
* finished 'editing_data' div of 'SheetDefault' for add new record
* added 'indicator.views.ajax_add_record()'

*** search ***
* improved 'search' function of 'NewDeleteIndex' page;
    employ AJAX to load search results;
* added 'indicator.views.search_indicators()'

*** recommend indicator ***
* improved the functions of 'recommend_indicator'
* added 'sciblog.models.UserCollection' to record the collection
    information for each user
* improved 'sciblog.views.add_user_to_m2m()' to work with
    'UserCollection'
* added field 'lastRecommendTime' in 'indicator.models.UserIndicator'
* updated 'indicator.views.indicator_status' against 'recommend_indicator'

*** qtip2 for recommended indicator ***
* added 'qtip2' tooltip for recommended indicator card
* added '97suifang' qtip css (qtip-sf)

* added tooltip for 'add record' when return error (SheetDefault page);
* improved the style of 'collection_btn' and 'go_library_btn' of
    IndexDesc page;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
* merged changes from '97suifang-front' by mjymjydark;
    and modified to work with django
* finished 'editing_data' div of 'SheetDefault' for add new record
* added 'indicator.views.ajax_add_record()'

*** search ***
* improved 'search' function of 'NewDeleteIndex' page;
    employ AJAX to load search results;
* added 'indicator.views.search_indicators()'

*** recommend indicator ***
* improved the functions of 'recommend_indicator'
* added 'sciblog.models.UserCollection' to record the collection
    information for each user
* improved 'sciblog.views.add_user_to_m2m()' to work with
    'UserCollection'
* added field 'lastRecommendTime' in 'indicator.models.UserIndicator'
* updated 'indicator.views.indicator_status' against 'recommend_indicator'

*** qtip2 for recommended indicator ***
* added 'qtip2' tooltip for recommended indicator card
* added '97suifang' qtip css (qtip-sf)

* added tooltip for 'add record' when return error (SheetDefault page);
* improved the style of 'collection_btn' and 'go_library_btn' of
    IndexDesc page;
</pre>
</div>
</content>
</entry>
<entry>
<title> * finished modifying 'PM_TYPE' record for 'EditHistoryData' page</title>
<updated>2013-09-09T02:10:17+00:00</updated>
<author>
<name>Alvin Li</name>
<email>liweitianux@gmail.com</email>
</author>
<published>2013-09-09T02:10:17+00:00</published>
<link rel='alternate' type='text/html' href='https://git.liwt.net/97dev.git/commit/?id=62efe8809e2cdfc84666dbd5e987a4ce473a047a'/>
<id>62efe8809e2cdfc84666dbd5e987a4ce473a047a</id>
<content type='text'>
 * synced '97suifang-front'

 TODO:
 * to merge changes of '97suifang-front'
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
 * synced '97suifang-front'

 TODO:
 * to merge changes of '97suifang-front'
</pre>
</div>
</content>
</entry>
<entry>
<title>* added plugin 'qtip2' to provide 'tooltips';</title>
<updated>2013-08-26T23:29:36+00:00</updated>
<author>
<name>Alvin Li</name>
<email>liweitianux@gmail.com</email>
</author>
<published>2013-08-26T23:29:36+00:00</published>
<link rel='alternate' type='text/html' href='https://git.liwt.net/97dev.git/commit/?id=52eebfa317cdc80739a19485880c2308c36eed91'/>
<id>52eebfa317cdc80739a19485880c2308c36eed91</id>
<content type='text'>
  employed in adding/modifying record data to provide validation info;
* added 'ajax_modify_record' url; removed 'ajax_edit_history_data' url;
* added 'indicator.views.ajax_modify_record()' for 'EditHistoryData.html';
* renamed 'indicator.views.add_recordhistory()' to 'add_recordhistory_view()';
* added 'indicator.tools.add_recordhistory()';
* added 'pytz' to 'env/requirements.pip';
  'pytz' to handle timezone in python &amp; django (recommended)
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
  employed in adding/modifying record data to provide validation info;
* added 'ajax_modify_record' url; removed 'ajax_edit_history_data' url;
* added 'indicator.views.ajax_modify_record()' for 'EditHistoryData.html';
* renamed 'indicator.views.add_recordhistory()' to 'add_recordhistory_view()';
* added 'indicator.tools.add_recordhistory()';
* added 'pytz' to 'env/requirements.pip';
  'pytz' to handle timezone in python &amp; django (recommended)
</pre>
</div>
</content>
</entry>
<entry>
<title>* improved the popup page 'EditHistoryData.html':</title>
<updated>2013-08-24T17:25:27+00:00</updated>
<author>
<name>Alvin Li</name>
<email>liweitianux@gmail.com</email>
</author>
<published>2013-08-24T17:25:27+00:00</published>
<link rel='alternate' type='text/html' href='https://git.liwt.net/97dev.git/commit/?id=58b77885308c944a029caf5c2d8b5d3263b6f64d'/>
<id>58b77885308c944a029caf5c2d8b5d3263b6f64d</id>
<content type='text'>
  o improvd page styles;
  o updated related view: 'indicator.views.indicator_edithistorydata()';
  o updated related css styles;
  o added styles 'valid' and 'invalid';
  o added 'jquery-ui: datepicker' to select date;
  o added 'reason_input' field to get the reason for modification;
  o implemented validation for 'date' and 'reason' field;

* added testing record data for testing 'detail_card';
* added 'cursor: pointer' for 'ui-datepicker-trigger';
* small style change to the 'see_more_button' of SheetDefault.html;
* added umcompressed 'jquery-1.9.1.js' for backup;
* added param 'type' for 'indicator.tools.format_data()';

TODO:
EditHistoryData.html:
  o to show original record data properly;
  o to add validation for data field
  o to implement ajax POST data and related view
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
  o improvd page styles;
  o updated related view: 'indicator.views.indicator_edithistorydata()';
  o updated related css styles;
  o added styles 'valid' and 'invalid';
  o added 'jquery-ui: datepicker' to select date;
  o added 'reason_input' field to get the reason for modification;
  o implemented validation for 'date' and 'reason' field;

* added testing record data for testing 'detail_card';
* added 'cursor: pointer' for 'ui-datepicker-trigger';
* small style change to the 'see_more_button' of SheetDefault.html;
* added umcompressed 'jquery-1.9.1.js' for backup;
* added param 'type' for 'indicator.tools.format_data()';

TODO:
EditHistoryData.html:
  o to show original record data properly;
  o to add validation for data field
  o to implement ajax POST data and related view
</pre>
</div>
</content>
</entry>
</feed>
